nRF51 SDK - S130 SoftDevice
|
The RAM Retention Example shows RAM retention mode usage and verification. It configures the system for RAM retention and then triggers System OFF. Button 1 wakes up the system. The application then checks if the RAM state is conserved by verifying that the value written before going to System OFF is the same.
-------------- | RESET | -------------- | --------------- | Configure | | BSP | --------------- | READ GPREGRET Register | --------------------- NO <--| SYSTEM_OFF_RESET? |--> YES | --------------------- | | | ------------------------- --------------------- | Write to GPREGRET | | Read loop count/ | | test word + loop_count |<- ---| MAX reached? |--->NO ------------------------- | | --------------------- | | | | ------------------------ ---------------- ------------------------ | YES | Verify RAM retention? |-->FAILURE-->| Loop forever | | Enable RAM RETENTION | | | ------------------------ ---------------- ------------------------ | STOP | ^ | | SUCCESS | ------------------------ | ------------- | | | WRITE_TEST_BYTE_TO_RAM | --True---| ++Loop < 6? |<-------- | ------------------------ ------------- | | | | -------------------- False | | Trigger System OFF | | | -------------------- ----------------------------------------------------
The name of the example is ram_retention_pca10028. If you are not using the Keil Pack Installer, you can find the source code and project file of the example in the following folder: <InstallFolder>\examples\peripheral\ram_retention
Button assignments:
Test the RAM Retention Example application by performing the following steps: