ESP8266 Windows开发环境搭建(IDE1.5)
ESP8266 Windows开发环境搭建(IDE1.5)
官网教程:Windows环境搭建
一、下载相关资源
1、下载IDE
下载AiThinkerIDE,我这里下载的是 SDK 一体化开发环境(IDE1.5),下载链接:开发工具清单
1、SDK 一体化开发环境(IDE1.0):
下载地址:网盘链接 提取码: fzfd
更新时间:2019.07.22
更新说明:支持 ESP32/ESP8266
2、SDK 一体化开发环境(IDE1.5):
下载地址:网盘链接 提取码: shm3
更新时间:2020.10.16
更新说明:支持 ESP32 IDF和ESP-cam/ESP8266 NONOS 2.0和3.0
2、下载烧录工具
下载地址:烧录工具
3、下载串口调试助手
下载地址:串口调试助手
4、下载TCP/UDP网络调试助手
PC版下载地址:网络调试助手
Android版下载地址:Android版网络调试助手
二、安装IDE
1.5版本IDE安装清单
注意事项:
第一点:因为新版的IDE安装过程中会给电脑配置环境变量,所以,安装了0.5或1.0版本的需要在电脑环境变量删除有关的PATH变量值,包含 AiThinkerIDE_V1.0 关键字的,比如:
Ai-Thinker\AiThinkerIDE_V1.0\msys32\mingw32\bin
第二点:如果是0.5或1.0版本来开发的项目,需自行删除工程根目录的 .setting 这个文件夹,因为他里面包含一些就旧工程配置。
第三点:环境依赖的是 python2.8 环境,而且 IDE (gui 环境)自带了 python2.8的环境的,如果你电脑有 py3 的环境,建议卸载或共存处理;
1、安装AiThinkerIDE
双击AiThinkerIDE安装包进行安装,指定安装路径,IDE安装至少需要2.73GB内存,请确保安装路径有足够内存,安装路径不要带中文字符或带空格,点击Next
创建桌面快捷方式,点击Next
确定安装信息,点击Install
等待安装完成
先不要启动IDE,点击Finish
2、配置环境变量
安装IDE自动添加的环境变量可用于开发官网提供的Gitee链接clone下载的RTOS和NON-OS SDK 版本!!!
打开文件资源管理器,右键单击此电脑/我的电脑,点击属性
在属性里点击高级系统设置
点击高级里的环境变量
在系统变量里找到Path,选中Path,点击编辑
因为IDE环境依赖的是 python2.8 环境,而且 IDE (gui 环境)自带了 python2.8的环境的,如果你电脑有 py3 的环境,建议卸载或共存处理。如果Path的环境变量里有py3的环境变量建议删除!!!
可以看到环境变量在安装的时候就已经添加到系统变量里了,如果没有自动添加,需要手动添加系统变量,添加如下四个变量
IDE安装路径\msys32\mingw32\bin
IDE安装路径\msys32\opt\esp32\xtensa-esp32-elf-5.0\bin
IDE安装路径\msys32\opt\esp8266\v5.2.0_for_3.0\bin
IDE安装路径\msys32\usr\bin
添加完系统变量后点击确定,一路点击确定,关闭系统属性窗口
三、导入直接下载源码的NON-OS SDK 2.0/2.1.x/2.2.x/3.0/3.0.x工程
1、下载 NON-OS SDK 源码
ESP8266 各版本 SDK 源码下载路径(这些 SDK 源码保存在 GitHub):SDK 和演示
二次开发的 SDK 下载地址:SDK二次开发
我这里下载的是 TCPClient_SDK,这是一个TCP客户端的SDK
2、修改环境变量
直接下载源码的NON-OS SDK 2.0/2.1.x/2.2.x/3.0/3.0.x工程或更旧版本之间的代码需要修改环境变量
① 把IDE安装清单里的 plugin_cygwin.zip 还有 esp8266 windows工具链文件夹下的 v4.8.2_for_2.0.zip 解压至 AiThinkerIDE 的安装路径
② 打开环境变量窗口,编辑系统变量里的Path环境变量,先删除安装 AiThinkerIDE 自动添加的三个环境变量:
IDE安装路径\msys32\mingw32\bin
IDE安装路径\msys32\opt\esp32\xtensa-esp32-elf-5.0\bin
IDE安装路径\msys32\opt\esp8266\v5.2.0_for_3.0\bin
③ 删除以上三个环境变量,只留下以下一个环境变量
IDE安装路径\msys32\usr\bin
④ 再新增 plugin_cygwin 和 esp8266 windows工具链 的 bin 文件环境变量
IDE安装路径\plugin_cygwin\bin
IDE安装路径\v4.8.2_for_2.0\bin
⑤ 编辑好的环境变量如下图所示
3、导入工程
解压之前下载的 esp8266_nonos_sdk-2.2.0_tcpclient.zip 文件,删除 ESP8266_NONOS_SDK-2.2.0_tcpclient 文件夹下的 .settings 文件夹
从 GitHub 下载源码的工程(例如:ESP8266_NONOS_SDK v2.2.1),解压之后需要删除 driver_lib 和 third_party文件夹
同时打开 ESP8266_NONOS_SDK-2.2.1\examples 文件夹
把需要编译的 example 文件夹复制到 ESP8266_NONOS_SDK-2.2.1 文件下,例如我要编译 IoT_Demo ,就把 IoT_Demo 文件夹复制到 ESP8266_NONOS_SDK-2.2.1 文件下,如下图:
打开 AiThinkerIDE ,右键单击 Project Explorer ,选择 Import
选择 C/C++ 下的 Existing Code as Makefile Project,点击Next
Languages 去掉 C++ 的 √
Toolchain for Indexer Settings 选择 Cygwin GCC
然后点击 Browse 按键,选择上面解压的 ESP8266_NONOS_SDK-2.2.0_tcpclient 文件夹
设置 Project Name 之后,点击 Finish ,等待导入工程完成
4、编译工程
右键单击工程,选择 Properties
去掉 Use default build command 的 √
输入命令(命令 = 参数) :
make COMPILE=gcc BOOT=new APP=1 SPI_SPEED=40 SPI_MODE=DIO SPI_SIZE_MAP=6
FLASH命令设置,ESP8266根据不同的Flash容量大小是有布局的区别的,而支持FOTA与不支持FOTA的布局又不一样。下表提供 SPI_SIZE_MAP 设置参考:
FLASH容量大小(FLASH布局) | SPI_SIZE_MAP(参数) |
---|---|
4Mbit 512 KB (256 KB + 256 KB) | 0 |
2Mbit 256 KB | 1 |
8Mbit 1024 KB (512 KB + 512 KB) | 2 |
16Mbit 2048 KB (512 KB + 512 KB) | 3 |
32Mbit 4096 KB (512 KB + 512 KB) | 4 |
16Mbit-C1 2048 KB (1024 KB + 1024 KB) | 5 |
32Mbit-C1 4096 KB (1024 KB + 1024 KB) | 6 |
下表提供 SPI_MODE 设置参考:
SPI_MODE(参数) | 值 |
---|---|
QIO | 0 |
QOUT | 1 |
DIO | 2 |
DOUT | 3 |
下表提供 SPI_SPEED 设置参考:
SPI_SPEED | 参数 | 值 |
---|---|---|
20MHz | 20 | 0 |
26.7MHz | 26.7 | 1 |
40MHz | 40 | 2 |
80MHz | 80 | 3 |
下表提供 BOOT 设置参考:
BOOT VERSION | 参数 | 值 |
---|---|---|
boot_v1.1 | old | 0 |
boot_v1.2+ | new | 1 |
none | none | 2 |
下表提供 APP 设置参考:
APP(参数) | 含义 | 生成文件 |
---|---|---|
0 | 不使用远程升级FOTA | 生成eagle.flash.bin+eagle.irom0text.bin |
1 | 使用FOTA | 生成user1.bin |
2 | 使用FOTA | 生成user2.bin |
Build directory 设置 Makefile 文件所在位置,这里(二次开发SDK)用默认的就行
从 GitHub 下载源码的工程(例如:ESP8266_NONOS_SDK v2.2.1),需要修改 Build directory 设置 Makefile 文件所在位置,如下图编译 IoT_Demo 例程,则需要设置为 ESP8266_NONOS_SDK-2.2.1/IoT_Demo
展开 C/C++ Build,选择下面的 Environment ,编辑 CYGWIN_HOME 变量
在 CYGWIN_HOME 变量的 Value 输入:
IDE安装路径\plugin_cygwin
这个是之前解压的 plugin_cygwin 文件夹位置,然后点击 OK
关闭 Properties 窗口之后,右键单击工程,选择 Clean Project,然后再 Build Project
第一次导入的工程一定要先 Clean Project 再 Build Project !!!
Build Project 之后,等待编译完成,当控制台输出下图所示信息,即编译成功!
通过直接下载源码导入工程的以下几种版本(v2.0/2.1.x/2.2.x/3.0/3.0.x)的 NON-OS SDK 均可以通过上述方法成功进行编译(在IDE1.5环境下)
四、导入克隆官网提供的Gitee链接的NON-OS SDK 和 RTOS 3.0 工程
1、官网提供的Gitee克隆链接
RTOS 链接:
git clone --recursive https://gitee.com/xuhongv/AiThinkerProjectForESP.git
NON-OS 链接:
git clone https://gitee.com/xuhongv/ESP8266_NONOS_SDK
Gitee 链接来源:
1、Windows环境搭建
2、【安信可IDE 1.5模板专题1】安信可windows一体化环境IDE V1.5 版本降临,体积更小,兼容新旧版本SDK编译
2、修改环境变量
修改环境变量为安装IDE时的默认环境变量,修改完环境变量之后要重启IDE!!!
IDE安装路径\msys32\mingw32\bin
IDE安装路径\msys32\opt\esp32\xtensa-esp32-elf-5.0\bin
IDE安装路径\msys32\opt\esp8266\v5.2.0_for_3.0\bin
IDE安装路径\msys32\usr\bin
修改后的环境变量如下图
3、导入 NONOS_SDK 工程
克隆工程,在工程存放位置右键打开 Git Bash Here (已安装Git)
输入 Clone 地址,按回车
克隆完成,会在文件夹显示克隆下来的工程
从 Gitee 克隆的工程,需要删除 driver_lib 和 third_party文件夹
同时打开 ESP8266_NONOS_SDK\examples 文件夹
把需要编译的 example 文件夹复制到 ESP8266_NONOS_SDK 文件下,例如我要编译 IoT_Demo ,就把 IoT_Demo 文件夹复制到 ESP8266_NONOS_SDK 文件下,如下图:
打开 AiThinkerIDE ,右键单击 Project Explorer ,选择 Import
选择 C/C++ 下的 Existing Code as Makefile Project,点击Next
Languages 去掉 C++ 的 √
Toolchain for Indexer Settings 选择 Cross GCC
然后点击 Browse 按键,选择上面克隆的 ESP8266_NONOS_SDK 文件夹
设置 Project Name 之后,点击 Finish ,等待导入工程完成
4、编译 NONOS_SDK 工程
右键单击工程或者选择菜单栏的 Project ,选择 Properties
去掉 Use default build command 的 √
输入命令(命令 = 参数) :
make COMPILE=gcc BOOT=new APP=1 SPI_SPEED=40 SPI_MODE=DIO SPI_SIZE_MAP=6
FLASH命令设置,ESP8266根据不同的Flash容量大小是有布局的区别的,而支持FOTA与不支持FOTA的布局又不一样。下表提供 SPI_SIZE_MAP 设置参考:
FLASH容量大小(FLASH布局) | SPI_SIZE_MAP(参数) |
---|---|
4Mbit 512 KB (256 KB + 256 KB) | 0 |
2Mbit 256 KB | 1 |
8Mbit 1024 KB (512 KB + 512 KB) | 2 |
16Mbit 2048 KB (512 KB + 512 KB) | 3 |
32Mbit 4096 KB (512 KB + 512 KB) | 4 |
16Mbit-C1 2048 KB (1024 KB + 1024 KB) | 5 |
32Mbit-C1 4096 KB (1024 KB + 1024 KB) | 6 |
下表提供 SPI_MODE 设置参考:
SPI_MODE(参数) | 值 |
---|---|
QIO | 0 |
QOUT | 1 |
DIO | 2 |
DOUT | 3 |
下表提供 SPI_SPEED 设置参考:
SPI_SPEED | 参数 | 值 |
---|---|---|
20MHz | 20 | 0 |
26.7MHz | 26.7 | 1 |
40MHz | 40 | 2 |
80MHz | 80 | 3 |
下表提供 BOOT 设置参考:
BOOT VERSION | 参数 | 值 |
---|---|---|
boot_v1.1 | old | 0 |
boot_v1.2+ | new | 1 |
none | none | 2 |
下表提供 APP 设置参考:
APP(参数) | 含义 | 生成文件 |
---|---|---|
0 | 不使用远程升级FOTA | 生成eagle.flash.bin+eagle.irom0text.bin |
1 | 使用FOTA | 生成user1.bin |
2 | 使用FOTA | 生成user2.bin |
Build directory 设置 Makefile 文件所在位置,从 Gitee 克隆的工程,需要修改 Build directory 设置 Makefile 文件所在位置,如下图编译 IoT_Demo 例程,则需要设置为 ESP8266_NONOS_SDK/IoT_Demo
关闭 Properties 窗口之后,右键单击工程,选择 Clean Project,然后再 Build Project
第一次导入的工程一定要先 Clean Project 再 Build Project !!!
若 Build Project 出现下图所示错误,是因为你电脑安装了py3,因为IDE环境依赖的是 python2.8 环境,而且 IDE (gui 环境)自带了 python2.8的环境的,如果你电脑有 py3 的环境,建议卸载或共存处理
解决方法,检查 Path 环境变量是否添加以下环境变量,并且把 Path 环境变量里所有的py3环境变量都移除掉,不移除py3环境变量请把以下这条环境变量移到 Path 环境变量最上方
IDE安装路径\msys32\mingw32\bin
Build Project 之后,等待编译完成,当控制台输出下图所示信息,即编译成功!
5、导入 RTOS_SDK 工程
克隆工程,在工程存放位置右键打开 Git Bash Here (已安装Git)
存放路径不能有中文和空格
输入 Clone 地址,按回车
克隆完成,会在文件夹显示克隆下来的工程,文件夹大小178MB,下载速度有点慢,耐心等待
打开 AiThinkerIDE ,右键单击 Project Explorer ,选择 Import
选择 C/C++ 下的 Existing Code as Makefile Project,点击Next
Languages 去掉 C++ 的 √
Toolchain for Indexer Settings 选择 Cross GCC
然后点击 Browse 按键,选择上面克隆的 AiThinkerProjectForESP 文件夹
设置 Project Name 之后,点击 Finish ,等待导入工程完成
6、编译 RTOS_SDK 工程
配置环境
1、项目属性设置,鼠标选中项目名称右键点击,在右侧菜单中选择Properties
2、在 Properties --> C/C++ Build --> Build directory 选择编译的工程路径,比如 AiThinkerProjectForESP/examples/wifi/getting_started/station 工程。
3、添加 IDF 环境变量在 Properties --> C/C++ Build --> Environment 点击Add ,路径为刚刚的下载的文件夹路径(路径不能有中文和空格),变量名字为 IDF_PATH
4、然后点击 OK 保存退出!
编译步骤:
与其他版本不一样, RTOS 3.0 或以上支持面板设置参数,即通过 make menuconfig 设置,同样地,我们可以利用快捷键去快速设置;
构建menuconfig菜单,选中项目名称,在右键菜单中选择 Make Targets --> Create
在弹出的对话框中设置Target name,取消勾选Same as the target name 与 User builder settings 这2个选项,并且 在Build command 中输入mintty.exe -e make menuconfig。
选中项目名称,在右键菜单中选择 Make Targets --> Build(快捷键 shift + F9)
选择刚才新建的构建工程,点击 Build
等待配置工程完毕
出现这个界面时,如果不需要配置工程,转至 Exit ,回车确认退出,等1-3分钟,等待构建完毕,然后就可以 Build Project 了
选中项目名称,在右键菜单中选择 Build Project ,等待编译完成(大概 10 - 20 分钟),取决电脑配置,耐心等待,当控制台输出下图所示信息,即编译成功!
7、总结
克隆官网提供的Gitee链接的 NON-OS SDK 和 RTOS SDK 工程均可以通过上述方法成功进行编译(在IDE1.5环境下)
本文地址:https://blog.csdn.net/baidu_25117757/article/details/109627042
上一篇: ACCESS 调用后台存储过程的实现方法