I was running The Low Power FreeRTOS example on a STM32F446 Eval board. The operation of the example is to (Cortex M4) :
This example creates two threads.
+ A Rx thread that blocks on a queue to wait for data, blinking LED each time data is received (turning it on and then off again) before returning to block on the queue once more.
+ A Tx thread that repeatedly enters the Blocked state for 500ms. On exiting the blocked state the Tx thread sends a value through the queue to the Rx thread (causing the Rx thread to exit the blocked state and blink the LED).
Blocking for a finite period allows the kernel to stop the tick interrupt and place the STM32 into sleep mode.
In this example, not used GPIO's are configured to analog, this help to reduce the power consumption of the device
However after I started the program. I get SWD communication failure on the ULINK2.
How can I recover from this? Thanks
I do not know of your situation, but, for some, low power setting 'kills' the debugger
Thanks for the information. I was methodically trying out the examples that ST Microelectronics provide for the Eval Board.
on the Options for Target-> debug tab, are you including a debug initialization file? a *.ini.
the ini file configures the debug control register of the device.
one of the options is to keep the debug circuitry powered in low power mode.
Thanks for all of the help.
There is no debug.ini file that comes with the project. But the Debug Settings :
Connect: Under Reset
Reset: Autodetect
Checked Reset after connect
did work without any problem.