一、安装ESP32编译工具链
下载网址:https://dl.espressif.com/dl/esp-idf/
最新的ESP_IDF版本为4.4.2,安装程序分在线安装和离线安装,这里强烈建议使用离线安装方式,因为涉及到在线下载一些外链镜像失败的情况。
单击下载离线版本600MB左右,文件虽然很大,但后期会省很多事情!!~
下载成功后,在安装程序上单击右键选择 <以管理员身份运行>打开程序。
打开安装程序后选择简体中文安装
勾选我同意协议,单击下一步按钮。
如果是第一次安装,会出现如下提示。
安装程序会检查你当前系统有没有打开"长路径支持",因为GNU编译器产生的编译文件会有非常深的目录结构,如果不支持长路径,编译可能出现文件不存在,目录不存在等奇怪的错误。这里单击应用修复按钮,可以修复这个问题。
单击应用修复按钮后,在确定对话框单击是,开始修复。
安装程序会提示修复成功。单击下一步。(注意:如果修复不成功,可以手动修改注册表来支持长路径:打开注册表HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\LongPathsEnabled 设置为 1。该操作需要管理员权限。)
修复成功。单击下一步
选择环境安装目录,最好不要安装在C盘,安装在与源码工程同盘符,目录中不要存在中文,空格,特殊字符。下面是我手动在F盘创建了一个ESP32的文件夹,就安装在这里。单击下一步。
选择需要安装的组件,这里选择完全安装。单击下一步。
这一步确认一下安装的组件及目录,如果没问题,单击安装开始安装。
安装程序开始解压并安装环境。
安装一些组件和驱动。这里会提示联网,会安装一些更新。断网也可以安装。只是没更新。
安装完成。三个全部勾选,12用于测试环境安装是否成功,3是将IDF工具链加入杀毒工具排除项,以加快编译速度。
二、测试安装环境
单击完成后出现如下两个窗口,一个是PowerShell命令行,一个是传统的cmd命令行窗口。显示如下内容,说明可以进行工程编译了。
随便找个ESP32的项目工程编译测试一下,使用cd命令进入工程目录,编译工程测试一下环境是否安装成功。
输入idf.py build命令编译项目,然后就是等待编译完成,当出现
run 'idf.py -p (PORT) flash'字样时说明,编译成功,说明编译环境搭建成功了。
三、ESP_IDF_TOOLS常用命令
打开ESP-IDF 4.4 CMD
默认是进入ESP_IDF框架库的目录中的,使用cd 命令进入代码目录
例:cd F:\ESP32_DevBoard_File\0_hello_bug
如果你的idf库目录不是和源码同目录,还要先切换目录,这也是前面安装环境我建议的,ESP_IDF最好和源码同盘符的原因。
idf.py build或idf.py all来编译当前目录下的工程
idf.py clean清除编译
idf.py menuconfig配置环境
idf.py -p PORT flash下载固件到芯片
idf.py erase_flash擦除整片flash
idf.py -p PORT erase_flash flash 擦除flash并下载
示例:idf.py -p COM9 flash monitor从串口9下载并运行打开口显示设备调试信息
可以直接在命令行窗口内看到设备的调试信息输出
四、Visual Studio Code配置
下载地址:Visual Studio Code - Code Editing. Redefined
Visual Studio Code编辑器在Windows上安装比较简单,直接setup.exe。一路下一步,安装好后首次启动配置插件,插件配置必须联网,从网上下载
设置中文
同时按Ctrl + Shift + X 快捷键
在左侧“扩展”视图文本框中输入“Language Packs”,点击你所需要的语言,这里我们安装的是中文简体,安装完成右下角弹出一个重启按钮,点击重启,语言自动切换
安装C/C++扩展
打开工程文件
文件菜单选择打开文件夹,选择一个源码目录打开
五、集成cmd/powershell命令行到VSCode内部进行编译下载
经过以上操作我们可以编辑工程和下载了,但要用到两个窗口,一个cmd命令行负责编译下载,一个code负责编辑代码。这节我们将cmd或powershell集成到code中。这里注意一下,1.5版本以下的code是支持cmd的,1.5以上只能集成powershell
重要的一步,检查你的系统环境变量,在用户变量中检查是否有 IDF_PATH和IDF_TOOLS_PATH这两个环境变量,如果没有的话,创建一下,注意你自己的目录
打开你的vscode,单击左下角的齿轮按钮,里面选择设置菜单,打开code的设置
打开设置页后,单击右上角以JSON打开按钮
覆盖输入如下内容,根据你自己的code版本来注释掉对应部分,注意代码中你的目录
// 注意修改下面配置中的ESP_IDF和ESP_IDF_Tools的路径
{
"idf.showOnboardingOnInit": true,
"idf.espIdfPathWin": "F:/ESP32/Espressif/frameworks/esp-idf-v4.4.2/",
"editor.fontSize": 18, // 代码字体大小
"editor.fontFamily": "Monaco, 'Courier New', monospace", // 代码字体
"update.mode": "manual", // 设置不自动更新
"terminal.integrated.defaultProfile.windows": "C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe (migrated)",
"terminal.integrated.cwd": "F:/ESP32/Espressif/frameworks/esp-idf-v4.4.2/",// 起始目录
"terminal.integrated.profiles.windows": {
"C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe (migrated)": {
"path": "C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"args": [
"-ExecutionPolicy",
"Bypass",
"-NoExit",
"-File",
"F:/ESP32/Espressif/Initialize-Idf.ps1",
]
}
},
"cmake.configureOnOpen": false,
"window.dialogStyle": "custom",
}
修改后图示
单击文件菜单,选择打开文件夹,打开一个工程目录,再单击菜单终端,选择新终端,在code下方会显示终端并已经运行IDF环境,我code版本是1.6,只能使用powershell,cmd的话会自动切换到工程目录,直接输idf命令即可,powershell终端的话要用cd 命令手动来切换到你的当前源码目录,你可以在code左侧的文件结构空白处单击右键选择复制目录,然后再cd 粘贴到命令行来切换目录