zephyr — 特定于 Zephyr 适配端的功能

zephyr 模块包含特定于 Zephyr 适配端的函数和类。

函数

zephyr.is_preempt_thread()

如果当前线程是可抢占线程,则返回 true 。

Zephyr 可抢占线程是那些具有非负优先级值(低优先级)的线程,因此,一旦更高或相等优先级的线程准备就绪,就可以将其替换。

zephyr.current_tid()

返回当前线程的线程 id,用于引用线程。

zephyr.thread_analyze()

在当前线程上运行 Zephyr 调试线程分析器并以以下格式打印堆栈大小统计信息:

thread_name-20s: STACK: unused available_stack_space usage stack_space_used / stack_size (percent_stack_space_used %); CPU: cpu_utilization %”

  • 仅当启用 CONFIG_THREAD_RUNTIME_STATS kconfig 配置运行时统计信息时才会打印 CPU 利用率

此功能只有在 zephyr/prj.conf 中配置了 CONFIG_THREAD_ANALYZER 后才能访问 。有关更多信息,请参阅 Zephyr 线程分析器 的文档。

zephyr.shell_exec(cmd_in)

在 UART 后端执行给定的命令。此功能只有在 zephyr/prj.conf 中配置了 CONFIG_SHELL_BACKEND_SERIAL 后才能访问。

可以在 Zephyr shell 命令 的文档中找到可用的命令列表。

附加模块