SLAZ620AA August   2014  – August 2021 MSP430FR6977

 

  1.   1
  2.   2
  3.   3
  4.   4
  5.   5
    1.     6
    2.     7
      1.      8
      2.      9
    3.     10
  6.   11
    1.     12
    2.     13
    3.     14
    4.     15
    5.     16
    6.     17
    7.     18
    8.     19
    9.     20
    10.     21
    11.     22
    12.     23
    13.     24
    14.     25
    15.     26
    16.     27
    17.     28
    18.     29
    19.     30
    20.     31
    21.     32
    22.     33
    23.     34
    24.     35
    25.     36
    26.     37
    27.     38
    28.     39
    29.     40
    30.     41
    31.     42
    32.     43
    33.     44
    34.     45
    35.     46
    36.     47
    37.     48
    38.     49
    39.     50
    40.     51
    41.     52
    42.     53
    43.     54
    44.     55
    45.     56
    46.     57
    47.     58
  7.   59

PMM29

PMM Module

Category

Functional

Function

Device may enter lockup state during wake-up from LPM2, LPM3, and LPM4

Description

In rare cases, the device may enter lockup state during wake up from LPM2, LPM3, or LPM4. The device will remain in lockup state, unable to respond to interrupts or continue application execution, until a BOR reset occurs.

LPM0, LPM1, LPM3.5 and LPM4.5 are not affected by this behavior.

Workaround

1) Use LPM0 or LPM1. See device datasheet for details on wake up time and power consumption.

OR

2) Use LPM3.5 or LPM4.5 Note that only RTC or GPIO can wake from LPM3.5/4.5 and see device datasheet for details on wake up time and power consumption. When using LPM3.5/4.5 the Compute Through Power Loss (CTPL) Utility APIs, found in the FRAM Utilities download, can be used to configure device behavior prior to LPM entry and on wake-up.

OR

3) At the beginning of code, clear the FRLPMPWR bit in the GCCTL0 register, as shown below:


// PMM29 workaround. 
FRCTL0 = FRCTLPW;
GCCTL0 = FRPWR; //clear FRLPMPWR while keeping FRPWR set
FRCTL0_H = 0; //re-lock FRCTL
// End PMM29 workaround


This adds additional latency when waking from LPM to enter the ISR. To calculate the new wake up time with FRLPMPWR bit cleared, take the wake-up time for the low power mode used and add the twake-up FRAM value specified in the datasheet.
E.g. twake-up workaround = twake-up LPM3 + twake-up FRAM

Note: For workaround (3), if the WDT triggers a PUC reset during LPM2, 3 or 4 the FRLPMPWR bit will be re-set before the wake-up occurs, meaning the workaround will not be effective and the part could still enter lock-up state. In this case it is recommended to configure the WDT to interval timer mode and trigger a PUC reset via WDT PW violation.