原创 分析问题的能力

2009-10-7 21:08 1993 6 7 分类: MCU/ 嵌入式

      本来调好的程序,怎么就不好用了呢,用原来编译后生成的二进制文件下到片子里是好用的,说明了两个问题,显示板是好用的,通讯板是好用的,可为什么用仿真器就不好用呢,顺着问题一点儿往上找吧,485芯片有点儿发热,换了一个也不行,再说用下到片子里的都没问题,肯定不是这儿的问题了。


    那就怀疑仿真软件吧,上次调CAN的时候升级了软件,难道和这个有关系,现在找来找去就这个和原来的不一样,乱七八糟的安了一下午,还是不成,有一段甚至放错误里都编译不出来,真是疯了,越调越问题越多,后来整整又能编译出错误了,把主程序中放一个一直向上位机发送数据的语句,几次重新设置了仿真器,还是不行,软件先到这儿吧,应该没问题。


      那还有什么呢,对就是连接仿真和通讯板的仿真器了,琢磨一下,程序运行着,向上一样,主程序一直发送数据,惊现问题所在:在调CAN的时候,晶振的跳线改变了,这一弄发的数据就对了,就这样一步步的排查,通过分析错误的可能存在点,找出问题所在。

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

朱玉龙 2009-10-8 09:57

这个属于调试步骤和习惯使然
相关推荐阅读
dmu_xw 2010-05-18 10:15
双重while中利用break跳出循环的问题
while(SlaveState ==0)         {<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:...
dmu_xw 2010-05-18 10:05
运算符和结合顺序问题
temp4 = (ReciveBuf[0]&0x80 == 0x80)&&(ReciveBuf[1]&0xe0 == 0xe0)&&(ReciveBuf...
dmu_xw 2010-05-12 10:18
while中利用break跳出循环
void Check_MACID() {           unsigned char data CheckCount = 0;       //MAC ID检查次数           unsig...
dmu_xw 2010-05-07 19:49
SJA1000中断的一点理解
SJA1000中断的一点理解SJA1000可提供中断方式和查询方式接收和发送数据。先说发送中断,若不做特殊要求不必利用发送中断,只要将数据写入发送缓冲区,启动发送命令就可以了,完全可以实现数据的发送,...
dmu_xw 2010-05-04 10:26
报警板调试记录
(1)发送数据函数,其中第15行为延时,不加时收到数据只为FE,加延时后才可收到7个数据.void sendKeynum(char mu,char n)               //向上位机发送连...
dmu_xw 2010-01-16 20:56
设备驱动加载到linux内核流程及两种加载方式
1.将设备驱动加载到linux内核中,第一步是配置Makefile文件,<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:of...
EE直播间
更多
我要评论
1
6
关闭 站长推荐上一条 /3 下一条