12983|25

70

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

stm32运行出错,多次烧写程序后居然好了 [复制链接]

                                 利用stm32这个平台,在iar环境下,做了一个项目,现已批量上市,前几天去国家质检那里测试的8台机器回来后,有三台不能运行,我使用仿真器烧写程序正常,但是仿真时,出现死机,停止运行时,现象是回到汇编模式,并在某个区域死循环。我也不理解为什么这样,就利用仿真器仿真烧写后,单步运行,结果发现利用step over到某个地方就死机,而利用step into就能顺利通过死机区域,我也不理解为什么,多烧写了几次以后,死机的问题居然没有了,和正常运行的程序一致了,同样在其他两台机器上,也是这种现象,最后也正常运行了,考虑到已经上市的产品,我非常担心返修率太高,请教大家给个说法,如何改进
此帖出自stm32/stm8论坛

最新回复

                                 还没碰到  详情 回复 发表于 2010-9-13 17:16
点赞 关注
 

回复
举报

66

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
                                 这问题得重视。
此帖出自stm32/stm8论坛
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
                                 的确有点奇怪
此帖出自stm32/stm8论坛
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

4
 
的确有点奇怪
dfsa 发表于 2010-9-6 21:49
此帖出自stm32/stm8论坛
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

5
 
我也遇到过奇怪的问题,用STM32F103ZET6的时候,把程序烧进去,刚开始能正常运行,等过几个星期再上电,发现起不来了,不管重启几次.然后用仿真器再烧写一遍就又好了。
似乎时间长了,FLASH有丢数据的嫌疑。
此帖出自stm32/stm8论坛
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

6
 
我也遇到过奇怪的问题,用STM32F103ZET6的时候,把程序烧进去,刚开始能正常运行,等过几个星期再上电,发现起不来了,不管重启几次.然后用仿真器再烧写一遍就又好了。
似乎时间长了,FLASH有丢数据的嫌疑。 ...
正常情况下,你说的这种情况是不可能出现的。
此帖出自stm32/stm8论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

7
 
今天忙别的,刚回来。。

请问版主,"正常情况下,你说的这种情况是不可能出现的。"对这个我也是这么认为的,正常情况没有问题,因为出货快半年了,问题是我在质检实验室里做完实验回来后才发现的,内容包括高低温老化,震荡,emc,emi等各项电子实验,说实话,如果不是有特殊的办法,这次实验就砸了,钱也就白交了。

“确实奇怪,但奇怪的不是有问题,而是楼主没说是什么程序造成的,”-------怎么说那,不是一个程序,虽然是8台机器,可是机型不一致,程序也不一样,但是现象是一样的。就是楼主位描述的那样。

我非常担心低温问题,现在北方冬天温度都到-40,由于设备不在室内,会不会低温导致问题。如果那样,我那就比较被动了。原先用的时avr的,还是蛮正常的,由于别的原因,才更换成stm32的。不是替avr打广告。
另外,我还忘记一个地方,有一台机器,就是用仿真器正常烧写程序以后,开始仿真运行时,不运行。我烧写多次以后,才开始运行,然后才发生中途死机问题,就是楼主位描述的
此帖出自stm32/stm8论坛
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

8
 
re:tsx1983
请问兄弟,你量产多少了,一台,两台不怕。我现在就是后怕批量出现这个问题
此帖出自stm32/stm8论坛
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

9
 
                                 “会不会低温导致问题”------你在常温下做一次相同的实验,就知道是不是低温造成的了
此帖出自stm32/stm8论坛
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

10
 
                                 看来,以后做产品,一定要做足够的测试才行了。
此帖出自stm32/stm8论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

11
 
回7楼:

1)楼主位说“在某个区域死循环”,请问这个区域是哪里?是否每片芯片都一样的区域,还是不一样的区域。

2)“发现利用step over到某个地方就死机,而利用step into就能顺利通过死机区域”,这里的“某个地方”与上述的某个区域有什么关联?什么程序?这种现象是只与地址有关,还是与指令有关,还是与操作有关?

3)高低温测试,高温是多少,低温是多少?
关于这个高低温测试问题,再请问你选择的芯片的工作温度范围是多少?


说实话,如果你希望大家帮你分析问题,就应该多给出一些具体的,甚至是量化的信息,这样分析才能有的放矢,如果只是“某个”“某种”,我们就只好瞎猜了,
此帖出自stm32/stm8论坛
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

12
 
                                 版主分析的很精辟,希望解决问题的,就是需要多给些量化信息,这样才能对症下药
此帖出自stm32/stm8论坛
 
 
 

回复

101

帖子

0

TA的资源

一粒金砂(中级)

13
 
                                 从两个方面一个考虑~~一个是你烧写的次数~~一个是开机的时间~~若果机子都是烧写一定次数以后机子好用,那是程序问题,这个问题不可能出现;如果机子都是开机后的某个时间点烧写~~哇~好了~~那就是硬件的问题~~就是有某个物理因素在影响机子~~
此帖出自stm32/stm8论坛
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

14
 
                                 可能是硬件上有点小毛病吧
此帖出自stm32/stm8论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

15
 
                                 一定会再出现
此帖出自stm32/stm8论坛
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

16
 
我遇到过的现象:
程序版本a:可正常运行
程序版本b:可正常运行,在a的基础上,比a复杂
程序版本c:在b的基础上,增加某功能,但执行此功能后程序死掉(后来发现是程序的问题)

然后,出现了奇怪的事

重复烧写几次c后(当时考虑可能是烧写错误导致死机),单片机上电后未运行后加入的功能也死机,是初始化等程序正常执行,lcd显示界面后死机;

于是烧入b程序,发现与上面同样的现象,显示出界面后死机

烧入a程序,程序正常运行

将改好的c程序烧入,程序正常运行

我想是原来的不正常的c程序由于bug而导致程序乱飞,“碰巧”修改了某处寄存器或是存储器,但是重新烧写程序却不能覆盖它,所以无法修改回来。
而原来的a恰好可以覆盖到被“碰巧”修改的地方,于是又正常了
此帖出自stm32/stm8论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

17
 
                                 关注,是不是flash部分数据丢失
此帖出自stm32/stm8论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

18
 
                                 说明你的系统不稳定,还得多次调试
此帖出自stm32/stm8论坛
 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

19
 
                                 楼主给的量化信息还是太少了
此帖出自stm32/stm8论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

20
 
我怀疑20楼的问题与程序的时序有关,可能程序中的某个地方的时序太紧凑,指令的位置移动后,造成在Flash中与地址的对齐错位,使得取指的时序发生变化而导致指令执行的时间变化。

这个问题说起来比较复杂,但与流水线和Flash的加速机制有关。
此帖出自stm32/stm8论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表