环境搭建
- 安装Visual Studio Code(下面简称vscode)
- 安装python3.7.8(添加环境变量)、Git工具、CMake
- vscode安装ESP-IDF Explorer插件,一键安装idf工具(国内速度慢)
- 通过这个插件安装esp-idf可能会失败,我当初用手机流量+梯子装的很快
使用idf
Windows开发建议在vscode中使用esp-idf explorer插件
vscode还支持macOS和Linxu,未试过在其他操作系统使用该插件
直接使用esp-idf
%USERPROFILE%\esp\esp-idf
目录下examples文件夹内有例程每次用idf工具,需要执行
%USERPROFILE%\esp\esp-idf
目录下的export添加环境变量,我是Windows,需要执行export.ps1,使用export.bat无效,ps1是Windows Power Shell脚本,需要电脑开启运行脚本权限,在管理员模式下Shell输入set-executionpolicy remotesigned
开启权限,然后就可以运行export.ps1在工程文件夹内使用
idf.py menuconfig
来配置工程使用
idf.py build
来编译程序(首次编译或更改SDK后的速度慢)idf.py -p PORT flash monitor
来下载程序
使用esp-idf explorer插件
这个工具非常好用,有GUI配SDK,在vscode用插件指令可以编译下载等
vscode cmd
>ESP-IDF:Show Examples Projects
基于例程新建工程编译,下载,调试,设置sdk等功能点点左下角图标就可以
我的esp项目
需求
通过esp32把红外热像Demo板的温度信号用TCP发到电脑上
ESP和Demo板Uart通信
- 参考esp例程:uart_events
ESP和电脑TCP通信
- 参考esp例程:tcp_client
遇到的问题
- uart通信波特率设成921600时,接收会hw fifo overflow,esp没有DMA例程,通过降波特率解决
- socket通信电脑端接收的时候不断更改
recv(new_fd, buff, BUFSIZ, 0)
buff指针会程序中断,未查出原因,通过把每次接收到的数据包写入文件解决