You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
1 year ago | |
---|---|---|
.. | ||
boards | 1 year ago | |
src | 2 years ago | |
CMakeLists.txt | 4 years ago | |
README.rst | 2 years ago | |
prj.conf | 3 years ago | |
sample.yaml | 1 year ago |
README.rst
.. zephyr:code-sample:: watchdog
:name: Watchdog
:relevant-api: watchdog_interface
Use the watchdog driver API to reset the board when it gets stuck in an infinite loop.
Overview
********
This sample demonstrates how to use the watchdog driver API.
A typical use case for a watchdog is that the board is restarted in case some piece of code
is kept in an infinite loop.
Building and Running
********************
In this sample, a watchdog callback is used to handle a timeout event once. This functionality is used to request an action before the board
restarts due to a timeout event in the watchdog driver.
The watchdog peripheral is configured in the board's ``.dts`` file. Make sure that the watchdog is enabled
using the configuration file in ``boards`` folder.
Building and Running for ST Nucleo F091RC
=========================================
The sample can be built and executed for the
:ref:`nucleo_f091rc_board` as follows:
.. zephyr-app-commands::
:zephyr-app: samples/drivers/watchdog
:board: nucleo_f091rc
:goals: build flash
:compact:
To build for another board, change "nucleo_f091rc" to the name of that board and provide a corresponding devicetree overlay.
Sample output
=============
You should get a similar output as below:
.. code-block:: console
Watchdog sample application
Attempting to test pre-reset callback
Feeding watchdog 5 times
Feeding watchdog...
Feeding watchdog...
Feeding watchdog...
Feeding watchdog...
Feeding watchdog...
Waiting for reset...
Handled things..ready to reset
.. note:: After the last message, the board will reset and the sequence will start again