硬汉嵌入式论坛

 找回密码
 立即注册
查看: 406|回复: 4
收起左侧

[技术讨论] 结构体变量值乱跳

[复制链接]

9

主题

5

回帖

32

积分

新手上路

积分
32
发表于 2023-6-6 14:06:43 | 显示全部楼层 |阅读模式
定义的结构体变量用来存放年月日时分秒这些东西,在定时器里面定时1S加1,但是不知道为什么,开调试模式看变量值一直更新的很奇怪,程序里面也没有其他更新这个变量的东西了,自己又定义了两个全局变量sec和min,这个更新就很正常。求解

DGF}WV}$F}ET)8Z1BUK`_HA.png

这是写的更新代码,自己又定义了两个全局变量,sec和min更新就很正常

这是写的更新代码,自己又定义了两个全局变量,sec和min更新就很正常
ET~8[XQ6KH07B88$F2Q]HJW.png S}`[G9TS]DV)QO7@JN]X.png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106959
QQ
发表于 2023-6-6 15:15:18 | 显示全部楼层
如果中断里面和中断外都有调用这个变量,那就变量定义加__IO,  防止编译器优化,保证每次都从变量原始地址读取。
回复

使用道具 举报

8

主题

19

回帖

43

积分

新手上路

积分
43
发表于 2023-6-6 20:26:07 | 显示全部楼层
这是什么意思,加__IO的作用是什么
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2023-6-6 23:25:55 | 显示全部楼层
妖娆的大叔 发表于 2023-6-6 20:26
这是什么意思,加__IO的作用是什么

可以搜一下 C语言语法”volatile“的语法,功能大致是强制每次从内存里读这个数
回复

使用道具 举报

8

主题

19

回帖

43

积分

新手上路

积分
43
发表于 2023-6-7 08:34:58 | 显示全部楼层
好的,谢谢大佬
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-11 15:32 , Processed in 0.202189 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表