简介
简单的记录下wsl
下搭建zephyr
编译环境的过程
配置环境
编译zephyr
需要得到最小版本分别为
Tool | Min.Version |
---|---|
cmake | 3.20.5 |
python | 3.10 |
dtc | 1.4.6 |
而我们的系统除了dtc
其他的都需要升级
先更新一下
升级cmake
详情见之前的文章
升级python3
详情见之前的文章
增加kitware源
我的版本是20.04
,而官方提到如果不是22.04
版本的还需要单独加kitware
的apt
源
安装过程如下
wget https://apt.kitware.com/kitware-archive.sh
sudo bash kitware-archive.sh
安装依赖
sudo apt install --no-install-recommends git cmake ninja-build gperf \
ccache dfu-util device-tree-compiler wget \
python3-dev python3-pip python3-setuptools python3-tk python3-wheel xz-utils file \
make gcc gcc-multilib g++-multilib libsdl2-dev libmagic1
sudo apt install python3-venv
sudo apt-get install python3.10-venv
获取zephyr代码
创建python
的虚拟环境并激活,在虚拟环境中安装west
工具
python3 -m venv ~/raspi_zephyr/.venv
source ~/raspi_zephyr/.venv/bin/activate
pip install west
获取zephyr
的源码,注意路景观
west init ~/raspi_zephyr
cd ~/raspi_zephyr
west update
update
结束
导出cmake
的包,这样cmake
就可以自动加载构建zephyr
应用程序所需的样板代码
west zephyr-export
更新python
需要的包
west packages pip --install
安装zephyr sdk
进入zephyr
文件夹下,使用west
安装sdk
cd zephyr
west sdk install
mcxa156 demo
打算用zephyr
的mcxa156
的demo
,不过因为我是wsl
的环境,所以在烧录flash
的操作那一步没进行下去,这个等后面有时间回头看看怎么操作,这里先记录过程。
zephyr
提供了一些类似于hello world
之类的简单demo
,可以点开下面的链接,查看哪些支持的板子
https://docs.zephyrproject.org/latest/boards/index.html#boards=
按照下图的关键词来搜索
搜索后可以看到具体的版子都显示出来了,点击进去,有简单的使用提示
编译代码,生成镜像
west build -b frdm_mcxa156 samples/hello_world
根据zephyr
官方的提示,我们的mcxa156
板子用的是MCU-Link
,所以烧录的话,直接使用下列命令
west flash
不过因为我们是在wsl
里面开发,所以得指定设备节点,不然是没法使用的
参考了一个esp32的文档,按道理应该就是用/dev/ttyACM0
节点的,不过好像mcxa156
使用都是失败的,反正就先记录到这里,等后面有空回头来解决这个问题
west flash --frdm_mcxa156-device /dev/ttyACM0
west flash --mcxa156-device /dev/ttyACM0
raspi 4b
接下来记录树莓派4B
板子的demo
使用过程
找到我们的boardname
,这里是rpi_4b
rm -rf build
west build -b rpi_4b samples/hello_world
拷贝我们的bin
文件出来
cp build/zephyr/zephyr.bin /d/ubuntu_swap/
放到树莓派的SD
卡,如下,zephyr demo
启动成功
参考链接
待办事项
-
写一个简单的
zephyr demo
-
配置
zephyr
,使其拥有shell
界面,如同linux
的命令行一样 -
上述
zephyr
的下载过程实在是太繁琐了,而且编译还依赖zephyr
的SDK
,感觉就跟用MDK
软件之类的没啥区别,所以看看有没有简单的配置流程