打印

PIC 实验中的一个怪现象:如图

[复制链接]
1890|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hsw_21|  楼主 | 2009-9-29 15:57 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hsw_21 于 2009-9-29 16:03 编辑


调试工具: ICD2 LE

点了右上角复位按钮后, 程序指针不回到第一条语句?
这是什么问题呢。。。
沙发
yewuyi| | 2009-9-29 16:16 | 只看该作者
软复位,只是回到你的代码的第一条罢了,但因为在你的代码之前还有C语言的启动代码库,所以,它的地址肯定不是0X0000了。

没什么奇怪。

使用特权

评论回复
板凳
hsw_21|  楼主 | 2009-9-29 16:59 | 只看该作者
谢谢,听叶公讲,我现在不奇怪了。:)
但是我前面还有 初始化程序,在线仿真的时候就执行不到了,
能把软复位 设置返回到 0X0000 地址 吗?

使用特权

评论回复
地板
XIEYUANBIN| | 2009-9-29 20:25 | 只看该作者

本帖最后由 XIEYUANBIN 于 2009-9-29 20:27 编辑

ICD2,DEBUG时在程序开头需要加一个NOP,否则你看不到复位后指针指向第一句,但实际上这一句应该是已经执行了的.这是因为ICD2每次停止总是停在你指定的地址下一句.这个是ICD2的局限.

使用特权

评论回复
5
hsw_21|  楼主 | 2009-9-30 08:38 | 只看该作者
噢,谢谢两位大侠指点,我再实验试试。。。
同时 :initial() 是一个整个系统初始化函数功能块;不只是一条语句。

使用特权

评论回复
6
hsw_21|  楼主 | 2009-9-30 20:17 | 只看该作者
试验了,加了一个 NOP ,暂时解决问题。

谢谢!:)

使用特权

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

本版积分规则

418

主题

2675

帖子

1

粉丝