[开发工具] 香水请进,又出毛病了

[复制链接]
3096|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

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