请教LM3S系列芯片复位电路问题



我公司使用LM3S系列芯片已经很久,量产化的芯片是617和1608。

量化后,遇到一个问题:芯片程序没有上电立即启动。详细的说:不管是617还是1608,以LM3S为主芯片的PCB板子,在上电后,片内程序没有立即启动,有的等待几秒中之后就恢复正常,有的必须人为做芯片复位才能恢复正常。(我说的正常是指片内程序正确运行)而出现这种情况的概率是千分之一左右。

我仔细分析和研究过自己的PCB电路,板子上电0~3.3V(稳定)的时间为8ms,远小于LM3S系列芯片100ms的上电时间要求;另外,我的复位电路是手册提到的上电延时复位电路,如下图: 其中,Rpu为5.1K,C1为4.7uF的钽电容

我测过复位上电延时,0~3.3V,约为100ms,也远大于芯片内部复位电路POR的10ms。

 

现在的问题是,我不知道是为什么会出现上述芯片片内程序不能正常启动的现象,难道是芯片本身的BUG?

求解

 

  • 这个问题原因可不好查。

    楼主是每块板子都有千分之一的几率发生这样的事情,还是千分之一的板子发生这种情况。

    如果是前者,我认为和你的供电有关系,可能是上电的一刹那,供电并不像你说的那样稳定的那么快。

    你用的是什么供电芯片?我建议在RST引脚到RC延时电路之间加一个二极管,增加上电复位延时电路的延时时间,这两款芯片的RST都有一个小的非致命BUG,会导致RC延时电路无法正常工作。

    如果是后者,那可以做交叉试验看看是什么原因。

     

    Standard R-C network cannot be used on RST to extend POR timing
    Description:
    The standard R-C network on RST does not work to extend POR timing beyond the 10 ms on-chip
    POR. Instead of following the standard capacitor charging curve, RST jumps straight to 3 V at power
    on. The capacitor is fully charged by current out of the RST pin and does not extend or filter the
    power-on condition. As a result, the reset input is not extended beyond the POR.
    Workaround:
    Add a diode to block the output current from RST. This helps to extend the RST pulse, but also
    means that the R-C is not as effective as a noise filter.

  • 楼上分析得好,如果是每块板子千分之一的概率,有可能是电源上电后可能会出现抖动,导致问题。另外建议查查RST管脚上电时候电平上升的时间。

    如果千分之一的板子有问题,楼主也可以查查晶振什么的,看看有没有问题。

  • 谢谢两位,我没有说清楚,是千分之一的板子出了这个现象。

    一楼所说的二极管我原本就是有的,不然RST延时时间也不会有100ms那么久。

    这个问题被发现已经两天了,我一直把重点放在复位电路和供电电路上,却没有任何突破。

    刚看了二楼的建议,尝试调整程序,以观察晶振的工作情况,结果还真找到了,的确是这几个板子的外部晶振在我切换PLL时钟时,尚未稳定。

    在程序中,切换PLL前做一定时间延时或直接更换晶振都可以解决这个问题。

    谢谢!