Tool/software: Code Composer Studio
Hi,
Now the circuits and procedures used are mature, and several batches have been produced without this problem.
Problem Description:
While (TRUE)
{
HalPowerClkMgmtSetMainClkSrc (CRYSTAL);//Switching Clock
Tmperature = getTemperature ();// Sampling, Calculate Temperature
SendTemp (Tmperature);//Send data
EnterPM2 (1000); //Enter PM2 to sleep for 1 second
}
Above is the rotation training part of our program, which mainly wakes up the sampling temperature regularly for sending.
Now this batch of programs send data only once and will not be sent again. The probability of this phenomenon is about 50%.
_We took out five faulty boards and five good boards and adjusted the CC1110 pairs. The faulty boards returned to normal and the normal boards broke down. Follow-up experiments on several boards, the phenomenon is the same, from then on, preliminary judgment is the problem of cc1110.
_We later test the working current, through the ammeter to see the bad board and the good board show the same current, there are also normal working and dormant working current jump, and the current value is normal, through the current jump time can be seen that the fault circuit board dormancy time is more accurate (visual measurement), but do not send. Describe the normal operation of the program.
But we're going to get rid of dormancy and change it to normal delay:
While (TRUE)
{
HalPowerClkMgmtSetMainClkSrc (CRYSTAL);//Switching Clock
Tmperature = getTemperature ();// Sampling, Calculate Temperature
SendTemp (Tmperature);//Send data
Delay (1000); // Ordinary Delay 1 second
}
Faulty circuit boards also send data once a second normally, running without problems, which in turn reflects the problem of dormancy.
Thanks.