【物联网设备端开发】使用QEMU模拟ESP硬件运行ESP-IDF

2024-08-09 12:39:13 浏览数 (1)

一,开发环境搭建

1.1 安装ESP-IDF

进入乐鑫 ESP-IDF Windows Installer Download 下载页面,选择ESP-IDF v4.4.8离线安装包,然后进行安装。

1.2 安装vscode插件

在 Visual Studio Code 上安装ESP-IDF插件和Dev Containers插件

1.3 在ESP-IDF插件配置ESP-IDF开发配置

选择系统上已有ESP-IDF

1.4 下载IOTDeviceSDK 设备端开发代码
代码语言:javascript复制
git clone https://gitee.com/zhuangpengli/IOTDeviceSDK.git
cd IOTDeviceSDK/platform-fastbee/ESP-IDF
# 目前该sdk只适配ESP-IDFv4.4.x版本,
1.5 通过ESP-IDF插件编译好镜像
1.6 构建QEMU docker镜像
1.7 使用QEMU容器运行镜像

二,搭建QEMU环境步骤

当您创建项目时,有一个Dockerfile可以与 Microsoft Dev Containers Extension一起使用。您可以使用vscode命令在容器内打开任何项目: Dev Containers: Open Folder in Container.。除了包含已配置的ESP-IDF和工具设置(基于ESP-IDF docker镜像)外,还包括用于Espressif设备的QEMU分支,可用于模拟开发。

注意 : ESP-IDF: Add Docker Container Configuration 命令可用于将这些文件添加到当前项目目录。

  1. 基于代码模板创建.devcontainer 目录. 如下:
    • 在VScode上创建项目,使用 New Project, ESP-IDF: Show Examples Projects or ESP-IDF: Create Project from Extension Template 命令
    • 在VScode上,使用Shift Ctrl P,然后输入 ESP-IDF: Add Docker Container Configuration 命令,添加 .devcontainer 文件添加到当前打开的项目目录中。
  2. 在VScode上,使用Shift Ctrl P,然后输入 Dev Containers: Open Folder in Container.. 命令打开容器中的文件夹。
  3. Dev Containers 将从Dockerfile构建容器(如果以前没有创建过),并在容器上安装此扩展。
  4. 扩展应自行配置,否则请运行安装向导。
  5. 编写代码并使用 Build your Project 命令构建项目。
  6. 点击ESP-IDF: Launch QEMU Server 或活动栏中的[QEMU Server] 按钮,使用构建目录中的二进制文件来启动QEMU。
  7. 使用 ESP-IDF: Monitor QEMU Device命令启动在QEMU上运行IDF Monitor的终端。此扩展使用QEMU中串行监视器的 idf.qemuTcpPort 配置设置
  8. 如果要启动QEMU调试会话,请使用 ESP-IDF: Launch QEMU Debug Session 命令,该命令将停止任何现有的QEMU服务器并启动一个新的QEMU server进行调试。

注意 : 使用QEMU不限于docker容器, 基本上 该扩展假设在 ESP-IDF: Launch QEMU Server 命令的环境变量PATH中可以使用 qemu-system-xtensa,并且QEMU服务器正在为 ESP-IDF: Monitor QEMU DeviceESP-IDF: Launch QEMU Debug Session运行。

0 人点赞