请大侠帮忙看下,在多个文件中定义全局变量的问题

[复制链接]
2098|4
 楼主| gurong60 发表于 2011-8-17 10:28 | 显示全部楼层 |阅读模式
本帖最后由 gurong60 于 2011-8-17 10:30 编辑

这俩天写了小程序,多个c文件合起来的那种

在一个头文件里面定义了extern volatile uint16 count;
在主函数main前定义uint16 count;
上述定时中断在按键程序中给定count=800;
结果在定时程序中but加到溢出,很显然count的值不对
后来在定义参数里加了一个extern volatile idata uint16 count;
在主函数main前定义uint16 idata count;
结果程序正常,不知道什么原因?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
mohanwei 发表于 2011-8-17 10:42 | 显示全部楼层
去搜一下“volatile ”,认识一下它对多线程、中断的重要意义……
福州观沧海 发表于 2011-8-17 11:32 | 显示全部楼层
很多教科书把volatile直译为 “易变” 的了,就像union一样直译为 “联合体”。意思不够贴切
xiaotann 发表于 2011-8-17 11:44 | 显示全部楼层
 楼主| gurong60 发表于 2011-8-17 23:50 | 显示全部楼层
书看了,不是很明白,请大侠指点一二
您需要登录后才可以回帖 登录 | 注册

本版积分规则

179

主题

1308

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部