这一周在广州粤嵌进入stm32的学习了,终于要学习硬件部分了,这下可以提高自己的优势了,不再是单方面的知识层面。需要学习的硬件很多,刚学比较吃力,但相信自己能勤能补拙,每隔一段时间就整理一下这周学的知识点,尽量表达出来,到时候和面试官交流更自信有把握点。
volatile关键字应用场景:
1、多线程编程共享全局变量的时候,该全局变量要加上 volatile 进行修饰,让编译器不要省略该变量的访问。
2、裸机编程的时候,某函数与中断服务函数共享全局变量的时候,该全局变量要加上 volatile 进行修饰,让编译器不要省略该变量的访问。
3、ARM定义寄存器的时候,寄存器是指向一个地址,要加上 volatile 进行修饰,让编译器不要省略对该变量的访问。
含义:volatile 修饰字段告诉编译器不要对该类型的数据做优化处理,对它的访问都是内存的访问。所以会增加编译代码的数量,运行速度会有所下降。


volatile关键字应用场景:
1、多线程编程共享全局变量的时候,该全局变量要加上 volatile 进行修饰,让编译器不要省略该变量的访问。
2、裸机编程的时候,某函数与中断服务函数共享全局变量的时候,该全局变量要加上 volatile 进行修饰,让编译器不要省略该变量的访问。
3、ARM定义寄存器的时候,寄存器是指向一个地址,要加上 volatile 进行修饰,让编译器不要省略对该变量的访问。
含义:volatile 修饰字段告诉编译器不要对该类型的数据做优化处理,对它的访问都是内存的访问。所以会增加编译代码的数量,运行速度会有所下降。

