在mdk中给变量赋值为1它却变成其他值,譬如48

[复制链接]
4924|17
 楼主| megaf 发表于 2011-7-4 11:25 | 显示全部楼层 |阅读模式
本帖最后由 megaf 于 2011-7-4 11:53 编辑

在mdk中给变量赋值为1它却变成其他值,譬如48 QQ截图20110704112640.jpg
香水城 发表于 2011-7-4 11:37 | 显示全部楼层
呵呵,赶上中国机器人发展的时代了,自动化程度很高,:lol
 楼主| megaf 发表于 2011-7-4 11:54 | 显示全部楼层
变量定义为u8  HeartSec = 0;一走到赋值为一那句,就变成48,不归一。不解。
 楼主| megaf 发表于 2011-7-4 12:45 | 显示全部楼层
2# 香水城
呵呵, 既然来了就给点解决思路吧
anqier1 发表于 2011-7-4 13:11 | 显示全部楼层
多了解下 没坏处:lol
 楼主| megaf 发表于 2011-7-4 14:13 | 显示全部楼层
顶一下
 楼主| megaf 发表于 2011-7-4 17:27 | 显示全部楼层
哎,快下班了,又一天过去,这问题还没搞定,头大
123jj 发表于 2011-7-4 17:35 | 显示全部楼层
肯定内存冲突,在其他地方将变量改写了
 楼主| megaf 发表于 2011-7-5 08:13 | 显示全部楼层
8# 123jj
内存冲突?该怎么检查,怎么改正这个错误
ploto 发表于 2011-7-5 11:14 | 显示全部楼层
最大的可能是栈溢出了。
香水城 发表于 2011-7-5 12:53 | 显示全部楼层
变量定义为u8  HeartSec = 0;一走到赋值为一那句,就变成48,不归一。不解。
megaf 发表于 2011-7-4 11:54


局部变量还是全局变量?

哪里看到结果不对?单步运行还是断点运行?
 楼主| megaf 发表于 2011-7-5 15:54 | 显示全部楼层
10# ploto
栈溢出了??那我下一步怎么处理
 楼主| megaf 发表于 2011-7-5 15:55 | 显示全部楼层
11# 香水城
全局变量,单步走的,在我截图里,可以看到,我有两次给heart变量赋值,第一次过去后还是48(watch窗口可以看到)
香水城 发表于 2011-7-5 16:03 | 显示全部楼层
广义地讲,这种现象可以是正常的:1)可能因为代码优化后,你看到的与实际运行不一致;2)可能因为新的赋值还在寄存器中,没有传到RAM中,而watch窗口只看RAM的内容。
mcu5i51 发表于 2011-7-5 16:59 | 显示全部楼层
优化问题,你截图的汇编代码没有操作地址A8
 楼主| megaf 发表于 2011-7-6 14:34 | 显示全部楼层
15# mcu5i51
什么A8 ,不明白,
figi 发表于 2011-7-6 20:50 | 显示全部楼层
我也不是很明白呢
figi 发表于 2011-7-6 20:50 | 显示全部楼层
能说具体些吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:呵呵,赶上中国机器人发展的时代,中国机器人就靠我们这代人了,任重道远。

24

主题

81

帖子

1

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