This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/MSP430FR5969: MSP430FR5959 strange behavior at 16 MHz connected to debugger

Part Number: MSP430FR5969

Tool/software: Code Composer Studio

See also: 

CCS/MSP430FR5969: Continually breaking at SW breakpoint when no Breakpoints specified - MSP low-power...

e2e.ti.com
Part Number: MSP430FR5969 Tool/software: Code Composer Studio Device: MSP430FR5969 Compiler: TI v18.1.2.LTS CCS Version: Version: 8.1.0.00011 Symptoms

I am seeing the exact same behavior as described in 

MSP430FR5959 strange behavior at 16 MHz connected to debugger - MSP low-power microcontroller forum ...

e2e.ti.com
Other Parts Discussed in Thread: MSP430FR5959 , MSP430FR5949 I have some very odd behavior while trying to debug my program on an MSP430FR5959. I'm using the MSP430FR595x

The MSP430FR5969 shows unexpected behavior when operating off of a 16Mhz HFXT. The original replies to the question before obviously did not understand this point. If you read carefully, the original poster was operating at 16MHz. As the thread has been locked, I cannot reply there, so I'm creating a related question to bring attention to what I am now suspecting is an ERRATA (or a compiler bug).

 As far as I can tell, we are operating within maximums. When MCLK is operating off of a 16MHz HFXT, the debugger breaks at random locations.

  • The behavior appears to only be present on one of our targets, but not the other. The launchpad for this unit also appears to be operating correctly. Voltage levels all appear to be nominal with no abnormal transients.
  • Hello Quinn,

    Thanks for your post.
    So you are saying the behavior is device depended which you only observe the behavior on one of the target. Is there nay HW differences between the targets? And can you also share with us the code that you configure the clock?

    Regards,
    Yiding
  • There are no discernible hardware differences between the logic portions of the target boards. My company considers all software and code snippets developed here as IP. The clock software source we have is rather complex and, as such, I suspect it would not contribute to your understanding of this issue in any meaningful way. I can give the register states before and after clock configuration.

    Before:

    6012.msp430_all_registers_main.txt
    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    521177 89
    R PC 0x00000011 0x00AED6
    R SP 0x00000011 0x0023FC
    R SR 0x0000000B 0x0003
    R R3 0x00000011 0x000000
    R R4 0x00000011 0x00FFFF
    R R5 0x00000011 0x001800
    R R6 0x00000011 0x000200
    R R7 0x00000011 0x00A55A
    R R8 0x00000011 0x000000
    R R9 0x00000011 0x000112
    R R10 0x00000011 0x001AF8
    R R11 0x00000011 0x000000
    R R12 0x00000011 0x000000
    R R13 0x00000011 0x000000
    R R14 0x00000011 0x001FA0
    R R15 0x00000011 0x000000
    R ADC12_ADC12CTL0 0x0000000B 0x0092
    R ADC12_ADC12CTL1 0x0000000B 0x0203
    R ADC12_ADC12CTL2 0x0000000B 0x0020
    R ADC12_ADC12CTL3 0x0000000B 0x0080
    R ADC12_ADC12LO 0x0000000B 0x0000
    R ADC12_ADC12HI 0x0000000B 0x0FFF
    R ADC12_ADC12IFGR0 0x0000000B 0xFFFF
    R ADC12_ADC12IFGR1 0x0000000B 0xFFFF
    R ADC12_ADC12IFGR2 0x0000000B 0x0010
    R ADC12_ADC12IER0 0x0000000B 0x0000
    R ADC12_ADC12IER1 0x0000000B 0x0000
    R ADC12_ADC12IER2 0x0000000B 0x0000
    R ADC12_ADC12IV 0x0000000B 0x0000
    R ADC12_ADC12MCTL0 0x0000000B 0x0000
    R ADC12_ADC12MCTL1 0x0000000B 0x0001
    R ADC12_ADC12MCTL2 0x0000000B 0x0000
    R ADC12_ADC12MCTL3 0x0000000B 0x0000
    R ADC12_ADC12MCTL4 0x0000000B 0x0000
    R ADC12_ADC12MCTL5 0x0000000B 0x0000
    R ADC12_ADC12MCTL6 0x0000000B 0x0000
    R ADC12_ADC12MCTL7 0x0000000B 0x0000
    R ADC12_ADC12MCTL8 0x0000000B 0x0000
    R ADC12_ADC12MCTL9 0x0000000B 0x0000
    R ADC12_ADC12MCTL10 0x0000000B 0x0000
    R ADC12_ADC12MCTL11 0x0000000B 0x0000
    R ADC12_ADC12MCTL12 0x0000000B 0x0000
    R ADC12_ADC12MCTL13 0x0000000B 0x0000
    R ADC12_ADC12MCTL14 0x0000000B 0x0000
    R ADC12_ADC12MCTL15 0x0000000B 0x0000
    R ADC12_ADC12MCTL16 0x0000000B 0x0000
    R ADC12_ADC12MCTL17 0x0000000B 0x0000
    R ADC12_ADC12MCTL18 0x0000000B 0x0000
    R ADC12_ADC12MCTL19 0x0000000B 0x0000
    R ADC12_ADC12MCTL20 0x0000000B 0x0000
    R ADC12_ADC12MCTL21 0x0000000B 0x0000
    R ADC12_ADC12MCTL22 0x0000000B 0x0000
    R ADC12_ADC12MCTL23 0x0000000B 0x0000
    R ADC12_ADC12MCTL24 0x0000000B 0x0000
    R ADC12_ADC12MCTL25 0x0000000B 0x0000
    R ADC12_ADC12MCTL26 0x0000000B 0x0000
    R ADC12_ADC12MCTL27 0x0000000B 0x0000
    R ADC12_ADC12MCTL28 0x0000000B 0x0000
    R ADC12_ADC12MCTL29 0x0000000B 0x0000
    R ADC12_ADC12MCTL30 0x0000000B 0x0000
    R ADC12_ADC12MCTL31 0x0000000B 0x0000
    R ADC12_ADC12MEM0 0x0000000B 0x0FE0
    R ADC12_ADC12MEM1 0x0000000B 0x0FEF
    R ADC12_ADC12MEM2 0x0000000B 0x0FE3
    R ADC12_ADC12MEM3 0x0000000B 0x0FF8
    R ADC12_ADC12MEM4 0x0000000B 0x0FE0
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    After (at "phantom breakpoint"):

    4454.msp430_all_registers_phantom_breakpoint.txt
    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    521177 89
    R PC 0x00000011 0x00AEE8
    R SP 0x00000011 0x005D06
    R SR 0x0000000B 0x000C
    R R3 0x00000011 0x000000
    R R4 0x00000011 0x05A5A5
    R R5 0x00000011 0x05A5A5
    R R6 0x00000011 0x05A5A5
    R R7 0x00000011 0x05A5A5
    R R8 0x00000011 0x05A5A5
    R R9 0x00000011 0x05A5A5
    R R10 0x00000011 0x05A5A5
    R R11 0x00000011 0x05A5A5
    R R12 0x00000011 0x000000
    R R13 0x00000011 0x05A5A5
    R R14 0x00000011 0x05A5A5
    R R15 0x00000011 0x05A5A5
    R ADC12_ADC12CTL0 0x0000000B 0x0092
    R ADC12_ADC12CTL1 0x0000000B 0x0203
    R ADC12_ADC12CTL2 0x0000000B 0x0020
    R ADC12_ADC12CTL3 0x0000000B 0x0080
    R ADC12_ADC12LO 0x0000000B 0x0000
    R ADC12_ADC12HI 0x0000000B 0x0FFF
    R ADC12_ADC12IFGR0 0x0000000B 0xFFFF
    R ADC12_ADC12IFGR1 0x0000000B 0xFFFF
    R ADC12_ADC12IFGR2 0x0000000B 0x0010
    R ADC12_ADC12IER0 0x0000000B 0x0000
    R ADC12_ADC12IER1 0x0000000B 0x0000
    R ADC12_ADC12IER2 0x0000000B 0x0000
    R ADC12_ADC12IV 0x0000000B 0x0000
    R ADC12_ADC12MCTL0 0x0000000B 0x0000
    R ADC12_ADC12MCTL1 0x0000000B 0x0001
    R ADC12_ADC12MCTL2 0x0000000B 0x0000
    R ADC12_ADC12MCTL3 0x0000000B 0x0000
    R ADC12_ADC12MCTL4 0x0000000B 0x0000
    R ADC12_ADC12MCTL5 0x0000000B 0x0000
    R ADC12_ADC12MCTL6 0x0000000B 0x0000
    R ADC12_ADC12MCTL7 0x0000000B 0x0000
    R ADC12_ADC12MCTL8 0x0000000B 0x0000
    R ADC12_ADC12MCTL9 0x0000000B 0x0000
    R ADC12_ADC12MCTL10 0x0000000B 0x0000
    R ADC12_ADC12MCTL11 0x0000000B 0x0000
    R ADC12_ADC12MCTL12 0x0000000B 0x0000
    R ADC12_ADC12MCTL13 0x0000000B 0x0000
    R ADC12_ADC12MCTL14 0x0000000B 0x0000
    R ADC12_ADC12MCTL15 0x0000000B 0x0000
    R ADC12_ADC12MCTL16 0x0000000B 0x0000
    R ADC12_ADC12MCTL17 0x0000000B 0x0000
    R ADC12_ADC12MCTL18 0x0000000B 0x0000
    R ADC12_ADC12MCTL19 0x0000000B 0x0000
    R ADC12_ADC12MCTL20 0x0000000B 0x0000
    R ADC12_ADC12MCTL21 0x0000000B 0x0000
    R ADC12_ADC12MCTL22 0x0000000B 0x0000
    R ADC12_ADC12MCTL23 0x0000000B 0x0000
    R ADC12_ADC12MCTL24 0x0000000B 0x0000
    R ADC12_ADC12MCTL25 0x0000000B 0x0000
    R ADC12_ADC12MCTL26 0x0000000B 0x0000
    R ADC12_ADC12MCTL27 0x0000000B 0x0000
    R ADC12_ADC12MCTL28 0x0000000B 0x0000
    R ADC12_ADC12MCTL29 0x0000000B 0x0000
    R ADC12_ADC12MCTL30 0x0000000B 0x0000
    R ADC12_ADC12MCTL31 0x0000000B 0x0000
    R ADC12_ADC12MEM0 0x0000000B 0x0FB1
    R ADC12_ADC12MEM1 0x0000000B 0x0FFF
    R ADC12_ADC12MEM2 0x0000000B 0x0FBE
    R ADC12_ADC12MEM3 0x0000000B 0x0FEE
    R ADC12_ADC12MEM4 0x0000000B 0x0FD2
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

  • We believe the behavior to be consistent with one, or a combination of, ERRATA JTAG27, EEM31, EEM30, EEM23, EEM19, or DMA7. Is there a way for us to coordinate professional correspondence on this issue. We have over one hundred unique scheduled MSP430FR targets and we would like to be confident in our debugging tools.

  • Hello Quinn,

    I think you are correct that the issue could be caused by one or a combination of these erratas. For JTAG27, EEM31, EEM30, EEM23, EEM19 errata, they apply to debug mode only and will not affect your application code. For the DMA7 errarta, could you please provide more information on your application since this errarta should not cause this strange behavior you are seeing with the debugger.

    Meanwhile, I am working with our system team to better understand your issue and identify the root cause of it.

    Thanks,
    Yiding
  • Hello Quinn,

    I am still not able to reproduce the strange behavior you are seeing here. I am planing to try on more units and keep you updated. But like I mentioned in the previous post, JTAG27, EEM31, EEM30, EEM23, EEM19 erratas apply to debug mode only and will not affect your application code. Do you have any additional concerns that I can help you with?

    Thanks,
    Yiding

**Attention** This is a public forum