volatile 修饰的变量,编译器不会去优化。每次调用时都需要直接从内存读取到寄存器,在赋值给变量。
突然想起来之前用树莓派去读一个传感器的高低电平并做后续算法运算。当时遇到的问题是传感器的值运行一会就读的不对了,现在想应该是在读取寄存器缓存的值,所以一直是混乱不对的。
但是当时用的是python,不知道python是否有相同的问题。
C volatile
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 一、介绍 众所周知,虽然液晶显示器和其他显示器大大的丰富了人机交互,但他们有一个共同的弱点。当它们连接到控制...
- 一、介绍 现在有很多流行的串行时钟芯片,如DS1302,DS1307,PCF8485等,由于简单的接口,低成本...
- 首先必须强调volatile无法用来保证线程安全。 volatile的功能是阻止编译器优化,从而直接从内存中读写变...
- SPI通信实验 SPI简介 串行外设接口(Serial Peripheral Interface Bus,SPI)...