mirror of
https://github.com/Dasharo/zephyr.git
synced 2026-03-06 14:57:20 -08:00
Move to CMake 3.20.0. At the Toolchain WG it was decided to move to CMake 3.20.0. The main reason for increasing CMake version is better toolchain support. Better toolchain support is added in the following CMake versions: - armclang, CMake 3.15 - Intel oneAPI, CMake 3.20 - IAR, CMake 3.15 and 3.20 Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
.. _96b_carbon_multi_thread_blinky: Basic Thread Example #################### Overview ******** This example demonstrates spawning multiple threads using :c:func:`K_THREAD_DEFINE`. It spawns three threads. Each thread is then defined at compile time using K_THREAD_DEFINE. The first two each control an LED. These LEDs, ``led0`` and ``led1``, have loop control and timing logic controlled by separate functions. - ``blink0()`` controls ``led0`` and has a 100ms sleep cycle - ``blink1()`` controls ``led1`` and has a 1000ms sleep cycle When either of these threads toggles its LED, it also pushes information into a :ref:`FIFO <fifos_v2>` identifying the thread/LED and how many times it has been toggled. The third thread uses :c:func:`printk` to print the information added to the FIFO to the device console. Requirements ************ The board must have two LEDs connected via GPIO pins. These are called "User LEDs" on many of Zephyr's :ref:`boards`. The LEDs must be configured using the ``led0`` and ``led1`` :ref:`devicetree <dt-guide>` aliases, usually in the :ref:`BOARD.dts file <devicetree-in-out-files>`. You will see one of these errors if you try to build this sample for an unsupported board: .. code-block:: none Unsupported board: led0 devicetree alias is not defined Unsupported board: led1 devicetree alias is not defined Building ******** For example, to build this sample for :ref:`96b_carbon_board`: .. zephyr-app-commands:: :zephyr-app: samples/basic/threads :board: 96b_carbon :goals: build flash :compact: Change ``96b_carbon`` appropriately for other supported boards.