volatile使用方法
编译优化。使用等级3的话,可能将优化了一些变量。
这为什么会开启等第三呢?这是关于单片机的内存容量比较小,所以开启优化的话,可以可以省一些空间,但是如果。会出现些变量的问题,需要通过volatile进行修饰。
volatile在什么场景使用?
1.程序使用rtos,多线程中都会读写的全局变量需要使用volatile定义;
2.中断和主函数中都要读写的全局变量,需要使用volatile定义;
3.单片机的寄存器定义,当然这些变量已经由芯片厂商在库函数中完成了定义。