mirror of
https://github.com/Dasharo/zephyr.git
synced 2026-03-06 14:57:20 -08:00
In order to bring consistency in-tree, migrate all samples to the use
the new prefix <zephyr/...>. Note that the conversion has been scripted:
```python
from pathlib import Path
import re
EXTENSIONS = ("c", "h", "cpp", "rst")
for p in Path(".").glob("samples/**/*"):
if not p.is_file() or p.suffix and p.suffix[1:] not in EXTENSIONS:
continue
content = ""
with open(p) as f:
for line in f:
m = re.match(r"^(.*)#include <(.*)>(.*)$", line)
if (m and
not m.group(2).startswith("zephyr/") and
(Path(".") / "include" / "zephyr" / m.group(2)).exists()):
content += (
m.group(1) +
"#include <zephyr/" + m.group(2) +">" +
m.group(3) + "\n"
)
else:
content += line
with open(p, "w") as f:
f.write(content)
```
Signed-off-by: Gerard Marull-Paretas <gerard.marull@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.