使用 ESP-IDF 5.3 或更高版本编译的应用程序在运行时可能会出现以下消息而失败: 问题是由于不兼容的 BSP (板级支持包) 使用了旧版本的 I2C 驱动程序引起的。 解决方案是在 idf_component.yaml 中添加以下依赖项: 重新构建应用程序,问题应得到解决。
Author: georgik
Windows Terminal 是一个非常多功能的 Windows 终端,它允许运行 CMD、PowerShell 或在 WSL2 中运行 Linux。终端还支持选项卡。 要在选项卡之间切换,您可以使用: CTRL+Tab – 切换到下一个选项卡 CTRL+Shift+Tab – 切换到上一个选项卡 如果您想使用自己的键盘快捷键,例如 CTRL+PgUp 和 CTRL+PgDown,只需按 CTRL+, 打开设置,然后从左侧面板中选择操作。 找到 下一个选项卡 […] Read More
Rust 是一种非常适合开发资源有限的MCU等嵌入式设备的编程语言。尤其是Bare Metal(也称为no_std)带来了许多优势,可以完全用Rust创建整个应用程序。 以下步骤描述了如何为ESP32-S3创建、构建、烧录和模拟应用程序,该芯片包含在许多开发套件中,例如ESP32-S3-BOX-3或M5Stack CoreS3。 需要安装几种工具。 首先,我们需要安装Rust本身。我们将使用rustup。 我们还需要几个额外的工具。我们可以使用`cargo install`从源代码进行安装。更快的方法是使用cargo-binstall,它部署工具的二进制文件,节省了从源代码安装的时间。 现在我们可以安装其他工具: espup – 用于安装和维护Espressif Rust生态系统的工具。 cargo-generate – 用于从模板创建Rust项目的工具。 espflash – 用于Espressif SoC和模块的串行烧录工具。Rust替代Python基础的esptool.py。 由于我们目标是基于Xtensa架构的ESP32-S3,我们需要单独安装Rust Xtensa工具链。注意:对于ESP32-S3之后推出的基于RISC-V架构的芯片(如ESP32-C3),不需要这个依赖项。 现在我们可以使用cargo-generate从esp-rs/esp-template生成Bare Metal模板项目。该工具将提出几个问题。推荐设置如下: […] Read More
在为 ESP32-S3 编译 Rust 项目时,您可能会遇到以下错误: 尽管 Rust 对错误消息非常有帮助,但很难确定出了什么问题。 基本上,当您为 ESP32-S3 构建使用 Xtensa 目标的项目时,如果项目缺少以下文件,则会出现此问题:.cargo/config.toml