项目简介
本项目是华盛顿大学“物联网嵌入式系统”课程的作业仓库。基于Zephyr RTOS构建嵌入式系统,逐步实现完整的物联网应用。每个作业可独立构建和运行,带有IOTEMBSYS#
标签(#
为作业编号)。
项目的主要特性和功能
- 作业2:实现按钮按下事件处理和Shell命令交互。
- 作业3:启动调制解调器并连接网络。
- 作业4:创建TCP连接并使用套接字API。
- 作业5:发送HTTP请求。
- 作业7:实现协议缓冲区的编码与解码,以及内部数据存储。
- 作业8:使用MCUboot引导加载程序并进行分区管理。
- 作业9:实现OTA(空中下载)更新。
- 作业11:向服务器发送内部遥测信息。
安装使用步骤
初始化Zephyr开发环境
- 按Zephyr官方入门指南设置开发环境。
- 安装必要依赖项(Python3, CMake, Devicetree编译器)。
- 安装
west
工具:shell pip3 install --user -U west
- 初始化工作区:
shell cd firmware_workspace west update west zephyr-export pip3 install -r zephyr/scripts/requirements.txt
初始化每个新作业
- 进入工作区目录:
shell cd firmware_workspace
- 复制作业仓库到新目录。
- 手动更新
.west/config
文件,将manifest路径指向新作业。 - 更新工作区:
shell west update
常用命令
west update
:更新所有Zephyr工具和源码。west build -b stm32l496_cell app
:构建应用程序。west flash
:将应用程序烧录到MCU。west debug
:烧录应用程序并开始调试。west build -p -s ../bootloader/mcuboot/boot/zephyr -d build-mcuboot -b stm32l496_cell -- -DCONF_FILE="<path to bootloader.conf>"
:构建引导加载程序。west build -b stm32l496_cell app -p -d build -- -DCONFIG_MCUBOOT_SIGNATURE_KEY_FILE=\"embsys-firmware/conf/root-rsa-2048.pem\" -DEXTRA_CONF_FILE=mcumgr.conf
:构建可通过引导加载程序启动的应用程序。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】