发新帖我要提问
123
返回列表
打印
[STM8]

STM8调试问题

[复制链接]
楼主: LSLDAY
手机看帖
扫描二维码
随时随地手机跟帖
41
LSLDAY 发表于 2017-8-15 17:17
老哥  你说的是这个吗   p=((~(PD_IDR|0x03)) || (~(PI_IDR|0x3f)) || (~(PE_IDR|0xfe)));      全都贴出 ...

楼主,
(1)你可以把这句话 p=((~(PD_IDR|0x03)) || (~(PI_IDR|0x3f)) || (~(PE_IDR|0xfe))); 屏蔽了,再看下,
(2)P的定义不用Volatile修饰看下

使用特权

评论回复
42
LSLDAY|  楼主 | 2017-8-30 09:51 | 只看该作者
zzjj44 发表于 2017-8-16 14:32
在编译器VC6中,执行结果也相同。先看看分别给p和q赋值的汇编代码及其单步执行顺序:

一直忙,好久没登录来看看了 ,看了你写的,虽然有点不太懂(对汇编不熟悉),但感觉解释的很合理,谢谢,老哥耐心指教,你这段话 我得研究研究

使用特权

评论回复
43
LSLDAY|  楼主 | 2017-8-30 09:53 | 只看该作者
lin_strong 发表于 2017-8-23 18:41
楼主,
(1)你可以把这句话 p=((~(PD_IDR|0x03)) || (~(PI_IDR|0x3f)) || (~(PE_IDR|0xfe))); 屏蔽了, ...

额 好久没登陆了,屏蔽了 p=((~(PD_IDR|0x03)) || (~(PI_IDR|0x3f)) || (~(PE_IDR|0xfe)));  这句话,需要观察哪里验证?

使用特权

评论回复
44
LSLDAY|  楼主 | 2017-8-30 09:58 | 只看该作者
zzjj44 发表于 2017-8-16 14:32
在编译器VC6中,执行结果也相同。先看看分别给p和q赋值的汇编代码及其单步执行顺序:

还有,您能帮我看下  截图中,调用函数后 执行  return  (Dis_Status);  后就死机了  ,应该是返回不去了 ,这是为什么呢

1.png (378.95 KB )

1.png

使用特权

评论回复
45
Bjorn| | 2017-8-31 17:44 | 只看该作者
编译器很不讲理地直接把p赋值了1

这是为什么,编译器坏了?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则