鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    手动构建Arduino框架源码,为ESP32-IDF添加Arduino库

    已定时 已固定 已锁定 已移动
    文档资料
    esp32 arduino noreplay
    1
    1
    504
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 小鱼小
      小鱼 技术大佬
      最后由 编辑

      3423118b-8653-4ca6-8ae0-5adc7aebcbc7-image.png

      前言

      大家好,我是爱折腾的小鱼。最近忙于一个项目时遇到了一些问题,某个单片机偶尔会重启,这种情况发生的几率很小,运气好的话一天都不会遇到一次。由于问题发生在设备运行过程中,很难捕捉到日志,所以我想把日志存储到Flash里。但在使用ESP-IDF开发框架构建Arduino库时,没有打开相关的开关。于是,我决定写这篇文章,介绍如何手动构建Arduino源码,以解决这个问题。

      构建步骤

      1. 克隆ESP32 Arduino库构建工具

      首先,我们需要从GitHub克隆ESP32 Arduino库的构建工具仓库。打开终端并执行以下命令:

      git clone https://github.com/espressif/esp32-arduino-lib-builder
      

      这会将仓库克隆到本地。接着,进入克隆的目录:

      cd esp32-arduino-lib-builder
      

      2. 修改配置文件

      接下来,我们需要修改配置文件以启用将核心转储(coredump)存储到Flash的功能。使用你喜欢的文本编辑器打开configs/defconfig.esp32文件:

      vi configs/defconfig.esp32
      

      在文件的末尾添加以下配置项:

      CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH=y
      

      保存并关闭文件。

      3. 构建Arduino库

      现在,我们可以开始构建Arduino库。执行以下命令:

      ./build.sh -t esp32
      

      这个脚本会自动下载所需的依赖项,并构建Arduino库。构建过程可能需要一些时间,请耐心等待。

      4. 找到构建的库

      构建完成后,生成的库文件将位于tools目录下。你可以通过以下命令查看构建的库文件:

      ls tools
      

      在这个目录下,你应该能看到生成的库文件,这些文件可以在你的ESP32项目中使用。

      总结

      通过以上步骤,我们成功地手动构建了Arduino框架源码,并为ESP32-IDF添加了将核心转储存储到Flash的功能。希望这篇文章能对你有所帮助。如果在操作过程中遇到任何问题,欢迎在评论区留言,我们一起探讨解决。

      祝大家开发顺利!

      新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

      1 条回复 最后回复 回复 引用 0
      • 第一个帖子
        最后一个帖子
      皖ICP备16016415号-7
      Powered by NodeBB | 鱼香ROS