mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-07 05:22:43 +00:00
The nRF52840 DK board target, so far known as nrf52840_pca10056, is renamed to nrf52840dk_nrf52840. Its documentation and all references to its name in the tree are updated accordingly. Overlay and configuration files specific to this board are also renamed, to match the new board name. Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
102 lines
2.7 KiB
ReStructuredText
102 lines
2.7 KiB
ReStructuredText
.. _settings_subsys_sample:
|
|
|
|
Settings sample
|
|
###############
|
|
|
|
Overview
|
|
********
|
|
|
|
This is a simple application demonstrating use of the settings runtime
|
|
configuration module. In this application some configuration values are loaded
|
|
form persistient storage and exported to persistent storage using different
|
|
settings method. The example shows how to implement module handlers, how to
|
|
register them.
|
|
|
|
Requirements
|
|
************
|
|
|
|
* A board with settings support, for instance: nrf52840dk_nrf52840
|
|
* Or qemu_x86 target
|
|
|
|
Building and Running
|
|
********************
|
|
|
|
This sample can be found under :zephyr_file:`samples/subsys/settings` in
|
|
the Zephyr tree.
|
|
|
|
The sample can be build for several platforms, the following commands build the
|
|
application for the qemu_x86.
|
|
|
|
.. zephyr-app-commands::
|
|
:zephyr-app: samples/subsys/settings
|
|
:host-os: unix
|
|
:board: qemu_x86
|
|
:goals: run
|
|
:compact:
|
|
|
|
After running the image to the board the output on the console shows the
|
|
settings manipulation messages.
|
|
|
|
Sample Output
|
|
=============
|
|
|
|
.. code-block:: console
|
|
|
|
***** Booting Zephyr OS build v2.1.0-rc1-123-g41091eb1d5e0 *****
|
|
|
|
*** Settings usage example ***
|
|
|
|
settings subsys initialization: OK.
|
|
subtree <alpha> handler registered: OK
|
|
subtree <alpha/beta> has static handler
|
|
|
|
##############
|
|
# iteration 0
|
|
##############
|
|
|
|
=================================================
|
|
basic load and save using registered handlers
|
|
|
|
load all key-value pairs using registered handlers
|
|
loading all settings under <beta> handler is done
|
|
loading all settings under <alpha> handler is done
|
|
|
|
save <alpha/beta/voltage> key directly: OK.
|
|
|
|
load <alpha/beta> key-value pairs using registered handlers
|
|
<alpha/beta/voltage> = -3025
|
|
loading all settings under <beta> handler is done
|
|
|
|
save all key-value pairs using registered handlers
|
|
export keys under <beta> handler
|
|
export keys under <alpha> handler
|
|
|
|
load all key-value pairs using registered handlers
|
|
export keys under <beta> handler
|
|
export keys under <alpha> handler
|
|
|
|
=================================================
|
|
loading subtree to destination provided by the caller
|
|
|
|
direct load: <alpha/length/2>
|
|
direct load: <alpha/length/1>
|
|
direct load: <alpha/length>
|
|
direct.length = 100
|
|
direct.length_1 = 41
|
|
direct.length_2 = 59
|
|
|
|
=================================================
|
|
Delete a key-value pair
|
|
|
|
immediate load: OK.
|
|
<alpha/length> value exist in the storage
|
|
delete <alpha/length>: OK.
|
|
Can't to load the <alpha/length> value as expected
|
|
|
|
=================================================
|
|
Service a key-value pair without dedicated handlers
|
|
|
|
<gamma> = 0 (default)
|
|
save <gamma> key directly: OK.
|
|
...
|