2728| 0
|
[讨论交流] IOT套件测评:开箱展示、主控板无限重启BUG修复 |
IOT套件测评:开箱展示、主控板无限重启BUG修复 很荣幸能够参与IOT套件的测评,感谢DFROBOT社区! 首先介绍下这次的套件: 阿里云IOT入门套件是一款基于阿里云平台和ESP32为主控的物联网套件。可通过WiFi将数据传输到阿里云平台。套件含多款Gravity黄安琪,接线方便简单,提供整套教程及代码,让你轻松搭建物联网环境。 接下来是开箱展示,以及板子无限重启BUG的成功修复过程 开箱展示 包装十分精美且具有特色。 主控板以及扩展版设计的很好,将Vcc、Gnd和信号口放在一起,十分便于接线。 USB线也十分精致,还有个扣子便于收纳。 主控板无限重启BUG修复 前天使用板子的时候,不知道写入了什么程序,之后板子就像抽风了一样,只要连接串口就会不断地重启,如下图所示: 之后原本的程序也无法正确运行,同时也无法写入新的程序,板子就像陷入了一种死循环一样。 我在论坛发现有其他人也出现了这种情况,但是没有得到解决,于是到了esp系列开发板的官方网站寻求答案。 espressif官网 在官网我发现了一种官方原生框架:ESP-IDF (Espressif IoT Development Framework)。 我们使用的Arduino等软件其实是依赖于这个框架之上搭建的应用框架,可以理解为将较底层的东西封装了起来。 所以我尝试用原生框架ESP-IDF来清除板子的数据,重刷板子。最终成功修复了这个开发板。 ESP-IDF环境搭建 1.设置工具链 首先我们需要设置工具链, 快速设置的方法是从 dl.espressif.com 下载集成在一起的工具链和 MSYS2 压缩文件: 工具链下载 将 zip 压缩文件解压到 C:\ (或其它路径,这里假设是 C:),它会使用预先准备的环境创建一个 msys32 目录。 运行 C:\msys32\mingw32.exe 打开一个 MSYS2 的终端窗口。该窗口的环境是一个 bash shell。创建一个 esp 目录作为开发 ESP32 应用的默认地址。 运行指令: mkdir -p ~/esp 输入 cd ~/esp 就进入到新创建的目录。如果没有错误信息出现则表明此步骤已完成。如下图: 2.获取ESP-IDF 设置完工具链后,我们还需要 ESP32 相关的 API/库,<br />github仓库地址:github仓库<br />我们还可以通过以下方式获得,在刚才的终端里,输入: [mw_shl_code=applescript,true]cd ~/esp git clone --recursive https://github.com/espressif/esp-idf.git[/mw_shl_code] 然后esp-idf就会被下载到esp文件夹里。 3.环境变量设置 在C:/msys32/etc/profile.d/目录中创建一个新的脚本文件。命名为:export_idf_path.sh。 找到ESP-IDF目录的路径。就是刚刚从GitHub下载的东西C:\msys32\home\user-name\esp\esp-idf 将export命令添加到脚本文件,例如: export IDF_PATH="C:/msys32/home/user-name/esp/esp-idf"(这里为正斜杠) 注意: user-name需要替换 请记住在原始Windows路径中使用正斜杠替换反斜杠。 保存脚本文件。 关闭MSYS2窗口并再次打开它。IDF_PATH通过键入以下内容检查是否已设置: [mw_shl_code=applescript,true]printenv IDF_PATH[/mw_shl_code] 输入后应打印出在脚本文件中输入的路径。如下图这样: 4.安装必要的python库ESP-IDF所需的python包位于IDF_PATH/requirements.txt。通过运行下面命令来安装它们: python -m pip install --user -r $IDF_PATH/requirements.txt 至此,环境已搭建好了。 连接开发板 将板子连接至电脑,在设备管理器里查看端口名称,比如:COM13 然后打开终端,输入 [mw_shl_code=applescript,true]cd ~/esp cp -r $IDF_PATH/examples/get-started/hello_world .[/mw_shl_code] 新建示例程序helloworld,然后输入 [mw_shl_code=applescript,true]cd ~/esp/hello_world make menuconfig[/mw_shl_code] 然后会出现下面的页面: 在菜单中,进入 Serial flasher config > Default serial port 配置串口(工程将会加载到该串口上)。输入回车确认选择,选择 < Save > 保存配置,然后选择 < Exit > 退出应用程序。 如下图,输入端口号(COM13),之后保存退出。 擦除板子原有数据 此时板子与电脑已连接成功,输入命令: [mw_shl_code=applescript,true]make erase_flash[/mw_shl_code] 输入完之后,板子中原有数据被全部清除,此时就可以重新在Arduino里重新烧录我们的IOT程序了。 最后附上官方环境搭建文档:esp32环境搭建官方文档 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed