MSP430FR2155: 使用一段时间后死机

Part Number: MSP430FR2155

我们现在有个项目使用MSP430FR2155,3.7V的锂电池供电,我们程序开了开门狗,平时会休眠,但是现在有不少机器用了一段时间之后死机,看门狗无法正常复位,外部中断也无法唤醒,除非拔电或者RST复位,请问可能是什么问题,麻烦帮忙分析,样机我这里有

每2ms进行一次喂狗

 WDTCTL = WDT_ARST_16;         //更新看门狗

  • 您好,

         根据设计手册“Figure 1-5. Operation Modes”,请问芯片工作在哪种低功耗模式?

       

         MSP430FR4xx and MSP430FR2xx family user's guide (Rev. I)

        MSP430WARE中的驱动代码Driver Library

  • LPM4

    _BIS_SR(LPM4_bits + GIE);              // Enter LPM4 

  • 您好,

         LPM4模式下所有的时钟都停止(1.4.2 Entering and Exiting Low-Power Modes LPM0 Through LPM40。

         由于看门狗开启,且具有“12.2.5 Clock Fail-Safe Feature”功能,VLOCLK作为时钟源。

         对于您的问题,建议检查电源是否存在噪声干扰,导致的内部时钟停止。

  • 你的意思是LPM4可能导致内部时钟停止?时钟停止了外部中断也会失效吗?那LPM3有没有这种可能?比如我使用LPM3模式

  • 您好,

        MSP430 器件都具有自动时钟请求功能。这意味着,如果设置为使用特定 clock,它将请求 clock。

        只要 request 处于活动状态,无论 device 进入 LPMx 模式,此 clock 及其 source 都将保持活动状态(Table 1-3. Requested vs Actual LPM)。

        如果想在LPM4模式下使用 watchdog mode,时钟源需要使用VLOCLK(12.2.5 Clock Fail-Safe Feature)。

        建议检查电源是否存在噪声干扰(2.2.2 Supply Voltage Supervisor),导致VLOCLK时钟停止。

        另外,链接中的勘误表中CS13  PMM32列出了芯片可能出现死机的情况,请参考。

        MSP430FR2155 Device Erratasheet (Rev. H)

  • 1.有个问题我需要说明一下,MCU进入休眠前,我们把看门狗关掉了,也就是休眠时看门狗是不功能的

    2.我看勘误表中的CS13说MCLK高于2Mhz就有可能出现死机的情况,那这种风险很高啊,这种情况是很容易出现的,出现问题的这个项目,我们休眠时钟使用了4MHz,正常模式我们是用的16MHz,我们2155用了非常多,其他项目我们目前没发现这个问题,那意味着出问题的风险也很大啊

    3.勘误表中的PMM32提到的DODCLK我看规格书目前好像就是ADC使用是吧?我们进入LPM4之前是吧ADC关掉了,所有这种情况应该不是吧

    4.所以大概率是不是应该CS13所说的进入LPM4休眠MCLK4MHz高于2MHz的频率,在进入休眠的时候有GPIO中断发生,所以可能导致死机吗

  • 您好,

         CS13说明的情况在模式切换和中断同时发生时,出现死机的概率很大。您现在的应用是这样吗?

         

  • 你好,对的,我们的应用是有5个GPIO外部中断,从正常模式到休眠模式切换时,很有可能出现GPIO中断,不过我们在进入休眠之前把总中断关掉了,设置好中断口后开总中断,然后马上进入休眠,是不是休眠需要一定的时间,然后这个时候如果触发了GPIO中断就有可以死机?下图是源代码

  • 您好,

          理论上是存在这个可能的,但由于时间窗口很小,死机的概率是很低的。

          如果有大量的死机情况存在,建议从系统设计角度检查,如前面回复中的电源是否存在噪声干扰等。

  • 你好,我们目前不完全统计,不良大概千分之几,我们模拟测试,就是在休眠的时候触发GPIO中断,很容易出现死机现象,但是我们降低休眠频率到2Mhz或者1MHz也还是会出现,而且我们设置到LPM0模式也同样会死机,这要怎么解决?

  • 您好,

         如果芯片是从TI官网购买的,可联系客户支持中心 | TI.com.cn 申请失效性分析,以确定根本原因。