Other Parts Discussed in Thread: CC2650
I am having trouble controlling the power constraints (setting and releasing)
I have a PWM buzzer routine that plays a tune with a number of music notes
At the beginning of the play tune I set the power constraints to keep the processor alive
void playSound(uint16_t* ptr_Sound, uint8 repeats)
{
Power_setConstraint(Power_SB_DISALLOW);
Power_setConstraint(Power_IDLE_PD_DISALLOW);
after the tune is done I shut down the buzzer and release the constraints
Power_releaseConstraint(Power_SB_DISALLOW) ; Power_releaseConstraint(Power_IDLE_PD_DISALLOW) ;
If I do this (as shown above) the CC2650 will not return to low power mode
If I set the power constraint once in the main instead of at the beginning of the tune, the release at the end of the tune works fine
I have singled setup thru the releaseConstraint code and when it fails it has a constraint count of 2
If I set the constraint in the main then the end of tune release has a count of one and it works and the device enters low power mode at the end of the tune
I just need to keep the processor working to play the tune and then go back to low power mode
The attached figure shows going into the tune with SB disallowed (2 mamp), the tune playing, then enter standby mode using the release command
Thanks
Brian Donlan