在编写串口上位机过程,使用了状态机,但是状态值添加修饰符volatile与没有添加修饰符volatile是非常影响的。以往在单片机方面编写总是习惯性添加,但是上位机没有添加。接下来看看添加与不添加的效果。
未添加的代码
定义变量
变量打印
使用后修改状态机值
功能调用代码
观察实际输出效果 8,3,3,也就是说第一次使用的时候,直接读取的是中间缓存的值。
如果添加了修饰符
在编写串口上位机过程,使用了状态机,但是状态值添加修饰符volatile与没有添加修饰符volatile是非常影响的。以往在单片机方面编写总是习惯性添加,但是上位机没有添加。接下来看看添加与不添加的效果。
未添加的代码
定义变量
变量打印
使用后修改状态机值
功能调用代码
观察实际输出效果 8,3,3,也就是说第一次使用的时候,直接读取的是中间缓存的值。
如果添加了修饰符