Basic Thread Example¶
Overview¶
This example demonstrates spawning of multiple threads using K_THREAD_DEFINE.
The example works by spawning three threads. The first two threads control a separate LED. Both of these LEDs (USR1 and USR2) have their individual loop control and timing logic defined by separate functions.
The third thread, uart_out(), sends out messages on the UART using printk().
- blink1() controls the USR1 LED that has a 100ms sleep cycle
- blink2() controls the USR2 LED that has a 1000ms sleep cycle
Each thread is then defined at compile time using K_THREAD_DEFINE.
Building¶
$ cd $ZEPHYR_BASE/samples/basic/threads
$ mkdir build && cd build
$ cmake -DBOARD=96b_carbon ..
$ make
$ make flash