ESP32开发:搭建windows开发环境--ESP-IDF工具命令提示符操作
Posted 何事误红尘
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ESP32开发:搭建windows开发环境--ESP-IDF工具命令提示符操作相关的知识,希望对你有一定的参考价值。
目录
一、概述
本文主要记录下使用ESP32的过程。这种环境搭建类笔记,都是在初次接触的时候一遍操作一遍写。所以过程中遇到的问题,也就一并写了进来。
首先是ESP32官方的参考链接:快速入门:
可以看到,从环境搭建到API使用,内容是很丰富的。这个官方文档是接下来的主要学习资料。
另外一篇非常好的博客:ESP32开发之路。
二、开发环境搭建
ESP32不像以往单片机,直接使用KEIL/IAP集成IDE进行开发。需要单独搭建开发环境,我使用的是windows 10。
2.1 获取installer
进入概述里面给出的快速入门文档,下滑进入windows:
新界面中继续下滑,进入ESP-IDF工具安装器的下载链接:
选择需要的下载方式,公司网络还不错,我选择的第一个,在线安装:
2.2 运行安装程序
下载完成得到esp-idf-tools-setup-online-2.15.exe
,双击进行安装:
选择好语言后,点击确定进入下一步:
继续下一步:
继续下一步:
继续下一步:
继续下一步:
选择要安装的版本以及路径,继续下一步:
选择安装路径,继续下一步:
点击安装后等待,正常应该一直等待安装完成就可以了。结果我这里报错:
确定后会弹出查看安装日志的对话框,
选择“是”,查看错误:
搜索下UnicodeDecodeError: ...
这个错误,基本都是在打开文件时加上encoding = ‘utf-8’。这就要修改python源文件,可能会影响电脑的python环境,所以从错误代码搜索下问题,看看能否解决。
方法一 修改virtualenv版本(未解决)
使用的第一个参考链接,是安装virtualenv-20.1.0-py2.py3-none-any_2.whl
(virtualenv介绍):
发生了错误,那就升级到最新的pip:
按照完成后,删除掉之前安装生成的.espressif,重新运行esp-idf-tools-setup-online-2.15.exe
安装程序。注意选择使用现有的ESP-IDF,避免再次下载浪费时间:
最终仍然失败,此方法不适用。
继续降级到16.7.9
搜索到另一个链接,也是降级virtualenv版本,进入到python目录使用python.exe -m pip install --upgrade virtualenv==16.7.9
:
仍然无效。
方法二 卸载已安装python(未解决)
本地搜索了下错误log中的__init___.py
文件:
在293行有一个load函数:
但这是电脑之前安装的python3.9,并不是ESP-IDF使用的嵌入式python3.8.7。所以可能是python环境有问题?
删除原本的python3.9,见另一篇:添加链接描述。
删除Anaconda3:
反正就是everything能搜到__init___.py
文件的,都删掉了。重新进行安装ESP-IDF,仍然失败,且仍然是:
File "json\\__init__.py", line 293, in load
UnicodeDecodeError: 'gbk' codec can't decode byte 0xc5 in position 28: illegal multibyte sequence
真的是张嘴tm…
方法三 离线安装(解决!!)
问了下用过的同事,使用的离线安装包4.4版本。下载获取installer一节中第二个安装程序espressif-ide-setup-espressif-ide-2.4.2-with-esp-idf-4.4.exe
,结果最后仍然安装失败–下载失败:
可能是网络不稳定,再次尝试,安装成功了:
点击完成,弹出命令提示符:
桌面也多了三个图标:
到这里,应该就是安装成功了。回到Windows 平台工具链的标准设置文档,可以看到:
下面开始创建工程,验证开发环境。
三、创建配置工程
到examples目录下拷贝一个工程出来:
切换目录、设置“目标”芯片、配置工程:
cd D:\\esp32\\workspace\\hello_world
idf.py set-target esp32c3
idf.py menuconfig
结果如下:
运行错误,看起来是环境变量有问题。在 ESP-IDF 的 examples 目录直接测试,是OK的:
在看错误的运行信息,发现是目录没有成功切换到D盘的hello_world下面。重新操作:
运行也OK了。设置“目标”芯片后,本地会多出一个build文件夹。接下来是配置工程:
弹出了图形化配置工具:
这里只是了解下环境,先不做修改,按esc键退出。
四、编译下载程序
对程序进行编译:
idf.py build
运行错误。。。看来真的是keil用习惯了,现在只感觉为什么环境都搞得那么复杂:
搜索了下,这种stray \\357 in program错误,通常是程序中出现了中文的标点符号。查看源码C文件,发现已经被笔记本的加密软件处理。这样看可能就是机密导致的,python脚本读取异常无法进行编译。
命令行放弃,到VS Code试试。
2022.6.8补充:加密环境进行配置后正常了,继续完成命令行测试。
重新idf.py build
编译:
下载程序,首先从设备管理器确认串口号:
所以:
idf.py -p COM2 flash
五、查看程序运行
监视串口:
idf.py -p COM2 monitor
可以看到打印信息:
直接使用串口助手也可以。下载程序以后就和以往单片机调试没有区别了:
以上是关于ESP32开发:搭建windows开发环境--ESP-IDF工具命令提示符操作的主要内容,如果未能解决你的问题,请参考以下文章
ESP32开发:搭建windows开发环境--ESP-IDF工具命令提示符操作
ESP32开发:搭建windows开发环境--VSCode操作
ESP32开发:搭建windows开发环境--VSCode操作
ESP32开发:搭建windows开发环境--VSCode操作