Zephyr是近些年来兴起的一款开源、可扩展RTOS (Zephyr不仅仅是一个内核,还包含了强大的中间件),专为资源受限的嵌入式设备设计,支持多种CPU架构,提供完整的开发工具链和丰富的生态系统,越来越多MCU厂商积极拥抱Zephyr。
本文主要介绍如何使用IAR Arm工具链开发和调试Zephyr RTOS。
01准备工作
Zephyr SDK: 建议参考Getting Started Guide — Zephyr Project Documentation1
IAR Embedded Workbench for Arm (9.70.1版本开始支持Zephyr)
02使用IAR Arm工具链开发和调试Zephyr RTOS
按照Getting Started Guide — Zephyr Project Documentation安装好对应Zephyr SDK之后,Zephyr构建默认会使用GCC工具链:


使用IAR Arm工具链构建需要配置对应的环境变量ZEPHYR_TOOLCHAIN_VARIANT为iar,环境变量IAR_TOOLCHAIN_PATH为对应IAR Arm工具链安装路径:


这样Zephyr构建会使用对应的IAR Arm工具链:


在IAR Embedded Workbench for Arm新建对应的调试工程,选择Externally built executable工程类型:

按照readme_external_binary.txt里面的步骤配置对应的调试工程:
添加对应的elf文件
配置对应的芯片(Options > General Options > Target > Device)
配置对应的调试器选项(Options > Debugger > Setup > Driver), 建议勾选Options > Debugger > Plugins里面Zephyr感知调试选项(需要在构建的时候使能CONFIG_DEBUG_THREAD_INFO选项):

然后就可以进行下载调试了,点击菜单栏中Zephyr的下拉列表可以查看对应Zephyr相关信息:

当然也可以将对应Zephyr工程导入到IAR Embedded Workbench for Arm中进行构建和下载调试:


更多信息,可以参考zephyr-board-samples/docs/compiling-debugging.md at main · iarsystems/zephyr-board-samples · GitHub2
另外IAR Arm工具链集成的静态代码分析工具C-STAT也支持Zephyr静态代码分析:

更多信息,可以参考IAR C-STAT support — Zephyr Project Documentation3
03总结
本文主要以NXP FRDM-MCXA153开发板为例介绍了如何使用IAR Arm工具链开发和调试Zephyr,更多信息,可以参考对应链接或联系IAR中国。
-
ARM
+关注
关注
135文章
9613浏览量
394383 -
嵌入式
+关注
关注
5212文章
20768浏览量
338819 -
内核
+关注
关注
4文章
1482浏览量
43142 -
IAR
+关注
关注
5文章
423浏览量
38725 -
Zephyr
+关注
关注
1文章
63浏览量
6643
原文标题:使用IAR Arm工具链开发和调试Zephyr RTOS
文章出处:【微信号:IAR爱亚系统,微信公众号:IAR爱亚系统】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
恩智浦分享Zephyr调试技巧
在IAR Arm开发工具链中--function_sections编译选项的使用
IAR EWARM安装、使用说明
Zephyr如何在第三方工具链下开启TLS
KeilMDK和IAR两款ARM开发工具哪个比较好
使用IAR Arm工具链开发和调试Zephyr RTOS
评论