Part Number:MSP430FR2433
Hi JD and community member,
I have additional consultation.
When my customer put MSP430 on their custom board and debugged in a low temperature environment, it seems that the following phenomenon occurred.
<phenomenon>
When the MSP430 is reset around -35°C,DCOFFG will be set when initializing DCO.
The software uses "cs_ex1_DCO1MHzSWTrim" as fDCO = 4.9152 MHz.
And software trim uses the CS_initFLLCalculateTrim () function.
<Question>
1. Is it possible for the DCO tap to reach the maximum value even when CS_initFLLCalculateTrim () is executed?
2. Are there any workaround for software?
<Contents>
When debugging, the program counter was stuck in the following loop processing in CS_initFLLCalculateTrim ().
// Poll the FLLUNLOCK bits and DCOFFG bit until FLL is locked or DCO fault
while((HWREG16(CS_BASE + OFS_CSCTL7) & (FLLUNLOCK0 | FLLUNLOCK1)) &&
((HWREG16(CS_BASE + OFS_CSCTL7) & DCOFFG) == 0));
At this time, if the temperature was raised while holding onto the DCOFFG loop, the DCO tap will not be 1FF around -25°C, and DCOFFG was reset.
Then the MSP430 got out of the loop.
The following capture screen is the CS register when the temperature is changed.
![]()
![]()
![]()
We consider the cause and the solution , but no concrete idea has come up.
Could you give me some advice.
Best regards.
Cruijff