前言
ESP8266玩了很久了打洼,一直都聽說(shuō)出了ESP32仇轻。最近就買了兩塊該開發(fā)板。要玩ESP32荠呐,首先就要搭建好開發(fā)環(huán)境。
那么這篇文章就是主要講解如何在Windows下搭建ESP32的開發(fā)環(huán)境砂客。
開發(fā)平臺(tái)和工具
- Windows 10 x64
-
AiThinkerIDE_V0.5
- cygwin
- eclipse
- esp-idf
- Flash 下載工具 V3.4.8
IDE環(huán)境使用安信可的IDE泥张,目前最新版本是AiThinkerIDE_V0.5
環(huán)境下載和安裝
首先需要下載AiThinkerIDE_V0.5。解壓后主目錄有一份說(shuō)明文件:
1 打開 ConfigTool.exe鞭盟,點(diǎn)擊 Default 可以檢測(cè)當(dāng)前所在路徑圾结,或手動(dòng)進(jìn)行路徑配置;
2 配置后點(diǎn)擊 Save 進(jìn)行保存齿诉;
3 打開 AiThinker_IDE.exe筝野,可以直接進(jìn)行固件的編譯晌姚;
4 點(diǎn)擊 OpenWorkSpace.bat 可以快速打開默認(rèn)的 project 目錄;
5 點(diǎn)擊 Register 可注冊(cè) Cygwin Here 快捷方式到鼠標(biāo)右鍵歇竟,可實(shí)現(xiàn)在當(dāng)前目錄打開終端挥唠。
在主目錄下找到 cygwin 文件夾和 eclipse 文件夾,進(jìn)行配置即可焕议。
注意宝磨!cygwin 文件夾所在路徑不可以有空格或中文!V寻病唤锉!
配置好后打開 AiThinker_IDE.exe 即可。
如果打不開 ConfigTool.exe 别瞭,打開 DotNetFx40 Framework 快捷方式下載安裝 dotNetFx40_Full_x86_x64.exe窿祥。
IDE 默認(rèn)配置保存在同目錄下的 config 文件夾內(nèi)。
ESP-IDF 下載
esp-idf 和 esp-idf-template可以到github下載蝙寨,由于git下載可能比較慢晒衩,可以到這里下載:http://pan.baidu.com/s/1jIRotBg
下載后請(qǐng)執(zhí)行 git pull
進(jìn)行更新。
另外墙歪,如果是從 github 下載的 idf 似乎會(huì)編譯報(bào)錯(cuò)听系,不知道是什么原因,所以 idf 用安信可提供的即可虹菲。
導(dǎo)入項(xiàng)目
打開IDE后可能需要導(dǎo)入下載好的 IDF靠胜。那么就要進(jìn)行工程導(dǎo)入。下面步驟是參考安信可官網(wǎng)舊版IDE的導(dǎo)入教程届惋。
- 選擇 File→Import
- 點(diǎn)開C/C++分支髓帽,并選中Existing Code as Makefile Project
- 去除 C++ 支持,選中 Cygwin GCC
點(diǎn)擊Browser脑豹,選中 esp-idf 所在的目錄
- 點(diǎn)擊 Finish 完成 esp-idf 的導(dǎo)入
配置項(xiàng)目
因?yàn)?make 只能從 app 目錄啟動(dòng)郑藏,故我們需要修改整個(gè)項(xiàng)目 build 的位置
右鍵項(xiàng)目→Properties ,單擊 C/C++ Build
,修改如下圖
此時(shí)瘩欺,已經(jīng)具備了編譯的基礎(chǔ)必盖。
下面我們配置 make menuconfig
和 make flash
兩條指令
首先新建target,右鍵項(xiàng)目名稱→Make targets ,選擇 Creat
給該 Target 新建一個(gè)名稱:MenuConfig
俱饿,
在彈出的頁(yè)面中取消勾選 Use builder setting 歌粥,取消勾選 Same as the target name 并清空 Make target 的內(nèi)容。
在下面 command 中輸入 mintty.exe -e make menuconfig
拍埠。
點(diǎn)擊 OK 保存
重復(fù)上一步驟失驶,新建一個(gè)Download
的 Target 。
在彈出的頁(yè)面中取消勾選 Use builder setting 枣购,取消勾選 Same as the target name 并清空 Make target 的內(nèi)容嬉探。
在下面command 中輸入 make flash
擦耀。
點(diǎn)擊 OK 保存
選中項(xiàng)目,按下快捷鍵 Shift + F9涩堤,彈出剛才新建的兩個(gè) Target
鼠標(biāo)選中需要編譯的 Target眷蜓, 點(diǎn)擊 Build 即可實(shí)現(xiàn)在 Eclipse 中下載和配置 idf
編譯項(xiàng)目
首次使用請(qǐng)先執(zhí)行 make menuconfig
鼠標(biāo)選中項(xiàng)目名稱,點(diǎn)擊右鍵出現(xiàn)菜單:
- Build Project :編譯項(xiàng)目
- Clean Project:清理項(xiàng)目
之后到esp-idf\examples\get-started
目錄下把 hello_world 文件夾拷貝到 esp-idf 主目錄胎围,同時(shí)修改名稱為 app 吁系。與前面 C/C++ Build 的配置相對(duì)應(yīng)。
編譯之前clean一下白魂,然后編譯汽纤,
當(dāng)控制臺(tái)最后輸出如下信息即編譯成功。(這里為了閱讀方便手動(dòng)換行了一下)
python /cygdrive/f/ESP32/esp-idf/esp-idf_20170410/components/esptool_py/esptool/esptool.py --chip esp32 --port /dev/ttyUSB0
--baud 115200 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 40m --flash_size detect
0x1000 /cygdrive/f/ESP32/esp-idf/esp-idf_20170410/app/build/bootloader/bootloader.bin
0x10000 /cygdrive/f/ESP32/esp-idf/esp-idf_20170410/app/build/hello-world.bin
0x8000 /cygdrive/f/ESP32/esp-idf/esp-idf_20170410/app/build/partitions_singleapp.bin
Build Project 是執(zhí)行 make all
命令碧聪。其實(shí)冒版,bootloader.bin
編譯燒寫一次即可,所以只需要編譯用戶程序逞姿,編譯命令:
make app
按照上一小結(jié)配置 make menuconfig
命令的方法添加進(jìn)去即可。
燒寫固件
編譯后由控制臺(tái)輸出信息可知各個(gè)燒錄bin文件的地址捆等。
文件 | 地址 | 所在路徑 | 說(shuō)明 |
---|---|---|---|
bootloader.bin | 0x1000 | app/build/bootloader | 二級(jí)boot程序滞造,由 SDK 代碼編譯生成 |
partitions_singleapp.bin | 0x8000 | app/build | 分區(qū)信息,由代碼自動(dòng)生成 |
app-template.bin | 0x10000 | app/build | 用戶主程序栋烤,由代碼編譯生成 |
到官網(wǎng)的工具欄目那里下載Flash下載工具谒养,目前最新版本是V3.4.8,支持ESP32明郭。啟動(dòng)后根據(jù)提示選擇 ESP32 即可买窟。
之后打開串口,波特率115200薯定,復(fù)位ESP32始绍,可以看到下面信息。
……
Hello world!
Restarting in 10 seconds...
Restarting in 9 seconds...
Restarting in 8 seconds...
Restarting in 7 seconds...
Restarting in 6 seconds...
Restarting in 5 seconds...
Restarting in 4 seconds...
Restarting in 3 seconds...
Restarting in 2 seconds...
Restarting in 1 seconds...
Restarting in 0 seconds...
Restarting now.
如果看到上面的信息說(shuō)明我們的 hello_world 工程燒錄成功话侄。
如果沒有看到上面的信息亏推,說(shuō)明沒有進(jìn)入 hello_world 代碼,可能原因是 bin 文件燒寫的路徑不對(duì)年堆。舊版本的partitions_singleapp.bin是燒寫在0x4000的(輸出信息也是說(shuō)明燒錄在0x4000吞杭,很坑人),這一點(diǎn)必須要注意变丧。
其他
本教程所使用的工具可以到這里下載:
鏈接: https://pan.baidu.com/s/1b63FuI 密碼: dqbh
參考資料
本文首發(fā)于CSDN:http://blog.csdn.net/yannanxiu/article/details/74537550