查看: 13395|回复: 24

清风徐来——Zephyr实战篇(1)

[复制链接]
  • TA的每日心情
    开心
    2025-7-11 08:53
  • 签到天数: 301 天

    连续签到: 2 天

    [LV.8]以坛为家I

    3916

    主题

    7534

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    39873
    最后登录
    2025-8-15
    发表于 2021-7-30 12:51:57 | 显示全部楼层 |阅读模式
    清风徐来——Zephyr实战篇(1)

    上一期小编给大家简单介绍了Zephyr的身世,从哪来,能够干什么;相信大家看了之后,已经跃跃欲试想要上手体验了。
    11.png
    从本期开始,小编将逐步为大家介绍Zephyr实战的方方面面,今天将着重给介绍如何搭建ZephyrOS开发环境,并且编译一个Zephyr专属的HelloWorld,向世界问好,详细介绍可参考Zephyr官网
    首先最重要的一点,高手过招前,往往要事先约好论剑的场所,那么我们在和Zephyr过招前,当然也要找到属于我们的华山。
    现在,摆在我们面前有三座“华山”可以当作候选,Windows,Linux以及MacOX,yes,都是我们耳熟能详的几个绝佳决斗圣地。
    那么如何挑选呢?为了解决我们的烦恼,Zephyr首先发言了,我都行!看你了!
    没错,我们知道Zephyr是基于CMake和Python进行项目开发和维护的,那么也就是说,只要是兼容这两款工具的OS,都可以作为我们的主战场。换句话说我们的Zephyr,可以同时支持在Windows、Linux和MacOS上进行应用开发,极大的免去了我们对于开发环境的选择困难。可以各取所好,挑选对于我们的地利场所,再去挑战我们的武林盟主:Zephyr。
    开发Zephyr时,我们会用到的主要模块包括:
    ·Python3:脚本解释器和包管理
    ·CMake/Ninjia/Make:构建系统,这里要说明的是,Zephyr同时支持基于Ninja和Make的构建系统,在调用CMake命令行时可以通过-G指令指定使用的构建工具
    ·Device Tree Compiler:负责编译设备树文件
    ·ToolChain:这个无需多言,必不可少的交叉工具链,编译程序必备,包括gcc forarm,Risc-V,x86等,为了更加方便开发,·Zephyr提供了一个叫做Zephyr SDK的软件包,其中提供了我们所需要的工具链和一些debug/flash工具,但是需要注意的是,仅限于Linux下使用
    ·Debug/Flash Tools:J-Link,pyOCD,OpenOCD等
    ·West:定制化的工具,负责Zephyr代码库管理,协助build/flash/debug等,强烈建议使用这个工具来辅助我们开发Zephyr,拥有它,就会有一种,买它,买它,买不了吃亏和上当。小编之后也会单独写一篇文章来介绍这个工具。
    ·Zephyr的Git仓库:当然,这是压箱底的宝物,里面是ZephyrOS的源代码。


    分析完对手,我们开始进入正题,考虑到大家一般用到的都是Windows操作系统,今天小编就给大家介绍下如何在Windows下搭建开发环境。目前,Windows下支持3种开发方式:


    ·Windows命令行:上手简单,需要手动安装工具链,但是可以使用jlink/pyOCD进行代码的调试和烧写
    ·Windows子系统(WSL):能够使用ZephyrSDK,但是不支持jlink/pyOCD进行代码调试
    ·Linux虚拟机:能够使用Zephyr SDK,同时支持jlink/pyOCD进行代码调试和烧写,只不过需要用户熟悉使用Linux以及安装Linux虚拟机,比较适合老手使用

    小编接下来会以在Windows下使用Linux虚拟机这种方式,为大家介绍。


    1、打开一个Linux控制台
    2、安装West:pip3 install -U west
    3、使用West工具下载Zephyr代码:
    a) cd %userprofile%
    b) west init --mr v2.6.0zephyrproject // 通过--mr指令指定下载的Zephyr版本
    c) cd zephyrproject
    d) west update
    这样,Zephyr的源码以及所依赖的其他代码包就会被自动下载到zephyrproject文件夹中
    4、安装依赖:pip3 install -rzephyr/scripts/requirements.txt
    5、下载Zephyr SDK并安装:
    a) cd ~
    b) wget https://github.com/zephyrproject ... _64-linux-setup.run
    c) chmod +x zephyr-sdk-0.12.4-x86_64-linux-setup.run
    d) ./zephyr-sdk-0.12.4-x86_64-linux-setup.run-- -d ~/zephyr-sdk-0.12.4


    至此,全部准备工作就已就绪。让我们向世界问好吧!借助于West工具,我们会发现,一切都是那么的简单。
    1、cd zephyrproject/zephyr
    2、west build -b mimxrt1060_evksamples/hello_world
    a) -b 指定我们的目标平台
    b) samples/xx 指定想要编译的工程名称
    3、west debug/flash进行代码调试和烧写
    4、连接板子和我们的PC,打开某串口调试助手,让我们和这个世界大声的说:
    12.png
    是不是觉得很简单,只需要几条west指令,我们就完成了工程的编译和下载,最后通过将板子连接到PC端,将结果显示在串口控制台上。


    相信我,这只是west工具的冰山一脚,Zephyr OS的“瑞士军刀”岂是浪得虚名!


    今天小编给大家介绍了搭建一个ZephyrOS的开发环境都需要什么,以及如何编译下载属于我们自己的第一个Zephyr程序,在接下来的文章里,小编还会和大家一起探索ZephyrOS,挖掘她更多的功能。

    qiandao qiandao
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    3 天前
  • 签到天数: 1800 天

    连续签到: 5 天

    [LV.Master]伴坛终老

    54

    主题

    4431

    帖子

    21

    金牌会员

    Rank: 6Rank: 6

    积分
    9290
    最后登录
    2025-8-15
    发表于 2021-7-30 14:05:12 | 显示全部楼层
    尝试安装 eclipse 插件,编译一直失败,有毒
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    4 天前
  • 签到天数: 579 天

    连续签到: 1 天

    [LV.9]以坛为家II

    41

    主题

    2万

    帖子

    2

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    6988
    最后登录
    2025-8-15
    发表于 2021-7-30 16:04:11 | 显示全部楼层
    按部就班,手把手的教学,支持
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    昨天 10:21
  • 签到天数: 1621 天

    连续签到: 2 天

    [LV.Master]伴坛终老

    25

    主题

    1万

    帖子

    0

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    10897

    活跃会员

    最后登录
    2025-8-17
    发表于 2021-7-30 16:41:54 | 显示全部楼层
    学习一下,有机会试试
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2 小时前
  • 签到天数: 2400 天

    连续签到: 109 天

    [LV.Master]伴坛终老

    84

    主题

    2万

    帖子

    3

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    22292
    最后登录
    2025-8-18
    发表于 2021-7-30 16:50:49 | 显示全部楼层
    老板,来个实战篇手把手教程
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-5-15 09:29
  • 签到天数: 178 天

    连续签到: 1 天

    [LV.7]常住居民III

    11

    主题

    423

    帖子

    1

    金牌会员

    Rank: 6Rank: 6

    积分
    1392
    最后登录
    2025-5-15
    发表于 2021-8-1 10:09:01 | 显示全部楼层
    Zephyr是个好东东。。。。
    加油加油
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    昨天 14:57
  • 签到天数: 3050 天

    连续签到: 149 天

    [LV.Master]伴坛终老

    8

    主题

    7913

    帖子

    2

    金牌会员

    Rank: 6Rank: 6

    积分
    15275
    最后登录
    2025-8-17
    发表于 2021-8-11 13:47:11 | 显示全部楼层
    学习一下
    哎...今天够累的,签到来了~
    回复

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 1772 天

    连续签到: 188 天

    [LV.Master]伴坛终老

    15

    主题

    1万

    帖子

    1

    金牌会员

    Rank: 6Rank: 6

    积分
    21365
    最后登录
    2025-8-17
    发表于 2021-8-11 21:21:48 | 显示全部楼层

    学习一下
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    3 小时前
  • 签到天数: 1750 天

    连续签到: 5 天

    [LV.Master]伴坛终老

    11

    主题

    1万

    帖子

    1

    金牌会员

    Rank: 6Rank: 6

    积分
    20554
    最后登录
    2025-8-17
    发表于 2021-8-11 23:54:10 | 显示全部楼层
    学习学习
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 19:14
  • 签到天数: 2479 天

    连续签到: 104 天

    [LV.Master]伴坛终老

    25

    主题

    7725

    帖子

    21

    金牌会员

    Rank: 6Rank: 6

    积分
    14918
    最后登录
    2025-8-17
    发表于 2021-8-12 09:36:51 | 显示全部楼层
    参考参考,Zephyr技术有实用价值。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-8-18 03:05 , Processed in 0.097120 second(s), 28 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表