打印
[开发工具]

香水请进,又出毛病了

[复制链接]
2126|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
colaring|  楼主 | 2008-7-2 12:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这次真让人吐血。。。本来IAR跟ST Link用的挺好的,但是我出去一趟回来就出怪事了,我用IAR打开一个工程,烧进FLASH中开始仿真,(一切正常)可是实际硬件运行的竟然是我上次的程序,而仿真器上运行的是我新开的程序!。。。。
也就是说我电脑和板子的程序不同,但是IAR竟然还在仿真(运行后绿箭头没有了只有反汇编上有箭头),我是这样得出这个结果的 

1 我把板子上液晶的显示部分代码全部删掉,编译下载都ok,按全速运行液晶竟然显示的还是我原来的画面(液晶的initialize都去掉了,液晶不可能显示的,唯一可能就是FLASH里的代码根本没动)
2 我干脆换了一个继电器测试工程,编译下载都ok,按下全速运行。。问题相同

我出去了一趟,不知道有没有人动我电脑,现在这情况一直半会实在找不出哪里的问题,可是有一个很奇怪的细节:我回来时继续调我的项目,发现编译时发现下面的代码               
if(((0x8000-Ua_AD_After)%(Ua_AD-Ua_AD_After))>((Ua_AD-Ua_AD_After)/2))
中有个  (   变成小方块了,就是出现乱码时的空心方块,很奇怪我走之前程序没有问题的,经常编好了程序一放放半天不动都没事的。

ST Link和Jlink都试过了 问题相同 请问是不是IAR有什么配置的地方被人家搞乱了
沙发
香水城| | 2008-7-2 13:44 | 只看该作者

试试把BOOT跳线放到RAM启动,然后通过IAR在Flash中调试

IAR软件不管BOOT的配置如何都可以在Flash中调试。

这样设置可以排除运行Flash中原有程序的可能。

使用特权

评论回复
板凳
beetles| | 2008-7-2 16:22 | 只看该作者

再作一点补充

1、程序中有空心框可能是因为按住Alt键敲数字20,也就是说有过非法输入
2、烧写flash不成功,请你看看项目设置中Debuuger-〉Download钩选Use flash loader项

使用特权

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

本版积分规则

44

主题

156

帖子

1

粉丝