原创 产品要稳定,超频须谨慎

2014-2-7 15:09 1842 23 24 分类: MCU/ 嵌入式 文集: MCU篇

最近发现公司生产部一批某型号产品经过高温老化后,很多机子都出现问题,某项功能有时能工作,有时不能工作,导致这批机子只能暂停生产。问题是由机子里一块当数据中继的电路板引起的,这块板子负责收集各个模块采集的数据,然后通过SPI发给主机。出现问题的时候,各个模块的数据无法送达主机。

由于最近由我来维护同一系列的机型,于是就被派去调查和跟进。在生产部拿了一台问题表现最严重的机子,出问题的电路板一直无法工作,板子用的MCU是NXP的LPC2364,用示波器测量,IO口没有了正常的输出,外部复位也无效,而晶振起振正常。因为程序以前使用很正常,初步排除了程序问题。难道是芯片坏了?
进一步检查,发现整机刚开始上电的几秒内,那片MCU是可以工作的,然后就没有任何输出了。试了外部复位,也没有任何作用。以往生产部门遇到这种情况的时候就直接更换芯片,就可以用了,但是出现这个问题的概率是比较小的。现在90%的机子都出现问题,难道NXP的某一批次的片子出现问题?这样的怀疑也站不住脚,人家NXP不可能把不合格的芯片卖给客户,否则不是那石头砸自己的脚吗?
一切还是得从硬件的角度出发,根据自己玩FPGA的经验,整个芯片的都停止工作,很可能是时钟模块出现问题,比如内部时钟太快就会导致时序紊乱,从而导致内部逻辑的错乱,这时候如果复位信号也是同步复位的话,恐怕连外部复位也无效了。
由于程序是别人写的,MCU主频确实是有一点超频了。外部晶振是18.432MHz,内部PLL经过了16倍频,然后4分频,得到73.728MHz的CPU主频,确实比芯片手册上标的72MHz的主频上限要高1.728MHz。我们可不能小看超出的这一点频率,如果NXP公司把72MHz当做是规定工作温度范围内的最高频率Fmax,那么在72MHz之内系统能达到时序要求,超出之后就不一定达到时序要求了,在这种情况下工作是很危险的。这个跟我们在设计FPGA的时候就要保留一定的时序余量是一样的道理的。
抱着这样的假设,我把PLL调整为18倍频,5分频,得到66.3552MHz主频,不影响程序的其他功能。重新烧写之后,果不其然,板子可以正常工作了。拿到老化箱做45°C的老化之后仍然正常工作。这就验证了之前的假设,超频导致MCU工作不稳定甚至死机。
经过这一次的DEBUG之后,要在这方面多加注意了。产品要稳定,超频需谨慎啊!

文章评论1条评论)

登录后参与讨论

用户1543914 2014-2-14 13:59

楼主比较仔细 赞一个!
相关推荐阅读
用户224096 2014-03-29 10:57
[博客大赛]PCB设计后期检查
当一块PCB板完成了布局布线,又检查连通性和间距都没有报错的情况下,一块PCB是不是就完成了呢?答案当然是否定。很多初学者也包括一些有经验的工程师,由于时间紧或者不耐烦亦或者过于自信,往往草...
用户224096 2014-03-29 10:22
基于CYUSB3014 USB3.0总线开发技术
1.引言 USB(Universal Serial Bus,通用串行总线)以其无需配置、即插即用等特性获得了广泛的应用。2004年提出的USB2.0标准,传输速度最大能够达到480Mbps。但在 ...
用户224096 2014-01-14 22:10
运放使用注意事项
运放是作为最通用的模拟器件,广泛用于信号变换调理、ADC采样前端、电源电路等场合中。虽然运放外围电路简单,不过在使用过程中还是有很多需要注意的地方。 1、注意输入电压是否超限 图1是ADI的OP0...
用户224096 2013-12-26 17:06
怎样把可调DC-DC变身为数控稳压电源
图1DC-DC开关稳压电路由于其高效率、大电流的优点被广泛使用。可调DC-DC可以通过调节反馈分压电阻来调节输出电压。图1是常用DC-DC降压稳压芯片LM2596-Adj的典型应用电路,通过调节R1和...
用户224096 2013-12-24 19:19
MCU篇之慎用“假”OD门
除了传统51单片机之外,一般的MCU都有较强的IO功能,可以设置为几种常见的配置方式:推挽输出、OD输出、浮空输入、上下拉输入等。有时候,我们需要把IO设置为OD输出方式,写“0”时由下拉管主动把电压...
我要评论
1
23
关闭 站长推荐上一条 /2 下一条