注:大部分內容為B站視頻:https://www.bilibili.com/video/BV1tv411w74d?p=1
一.硬件
1.ESP32板子
(1)淘寶上可購買,二十多塊
(2)樂鑫科技官網
- https://www.espressif.com/zh-hans/products/socs
2.代碼燒錄
(1)USB轉串口CH340(G)連接板子
板子的引腳 | USB轉串口引腳 |
GND | GND |
TX0 | RXD |
RX0 | TXD |
3V3 | 3V3 |
(2)實物連接圖(需要PC上安裝CH340的驅動)
3.USB邏輯分析儀(用於分析引腳輸出信號)
(1)實物圖
(2)軟件安裝
- 店家給的網盤中先安裝驅動,再安裝邏輯分析軟件
(3)測試功能是否正常使用
- 測試8個通道是否正常(先usb接電腦,跳線一端接通道CH0一端不接)如圖1
- 打開軟件配置速度,看到通道為高電平線
- 跳線另一側連接GND,軟件點擊Capture Once,軟件檢測到1到0變化
二.軟件使用
注:主要參考:https://homepea.top/2020/31.ESP32-Introduce/
1.開發環境VSCode+PlatformIO
- PlatformIO插件安裝
- 進入PlatformIO主頁HOME
- 創建項目工程,選擇Board等等
- 等待下載必要的文件,完成后即可編寫程序
2.點燈程序編寫
(1)查看手冊:安信可科技的NodeMCU-32第15頁原理圖中(好像淘寶的板子用的就是這個原理圖)
- 小燈使用IO2端口輸出的
(2)代碼(好像還要熟悉Arduino的一些API,鏈接:https://wiki.arduino.cn/?file=home-%E9%A6%96%E9%A1%B5)
1 #include <Arduino.h> 2 3 void setup() { 4 // put your setup code here, to run once: 5 pinMode(2, OUTPUT); 6 } 7 8 void loop() { 9 // put your main code here, to run repeatedly: 10 digitalWrite(2, HIGH); // turn the LED on (HIGH is the voltage level) 11 delay(1000); // wait for a second 12 digitalWrite(2, LOW); // turn the LED off by making the voltage LOW 13 delay(1000); 14 }
3.程序燒入過程
(1)配置燒錄串口和波特率,程序編譯以及編譯結果
(2)按照之前燒錄連接方式連接好
- 注意:我的板子點擊燒錄之后需要按住BOOT按鍵不放,再按一下EN按鍵松開后就直接燒錄了,我估計是這樣才在啟動時BOOT為低電平燒錄模式
- 下圖來自官方手冊:https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/hw-reference/esp32/get-started-devkitc.html
(3)燒錄模式查看樂鑫科技的技術規格文檔第五頁
- GPIO0置0為下載啟動模式
(4)實驗現象
- 按一下EN按鍵,啟動運行后藍色小燈間隔一秒亮一下
- 使用邏輯分析儀查看,跳線連接CH0和板子的D2引腳,自己調節恰當的速度,查看周期為2秒,1秒為高電平,1秒為低電平,實驗成功。