ESP32
Last updated
Last updated
ESP32是由樂鑫資訊科技開發的為控制器,不僅內建有WiFi及低功率藍牙BLE,可用腳位也擴增到約26根,大部分腳位同時支援類比及數位,內建霍爾、溫度、觸控感測器,主頻高達260mHz的雙核心CPU,傳輸界面SPI、I2C、UART等強大的功能,且ESP32與Arduino UNO所有週邊感測元件完全相容,可以無痛直接升級ESP32,不但可以演練所有目前現有UNO課程,而且比起ESP8266多了藍牙及更多數位和類比腳位,使ESP32能完成更多的應用專題,再加上相當有競爭力的價格,讓ESP32成為IoT課程最佳的教學工具。
而ESP32有很多種版本如下: 1. NodeMCU-32S:保留完整38根腳位,且有預留外接天線 2. DOIT DEVKIT:價格便宜,但缺少5V輸出 3. TTGO ESP32:附帶18650電池座,搭配深度睡眠(deepsleep),一顆電池可用一個月以上 4. Lolin ESP32:附帶Oled顯示器,可快速開發萬年曆、微型氣象站等顯示裝置 5. ESP32-CAM:附帶相機及SD卡槽,可開發具AI影像辨識裝置 6. HaloCode光環板:附帶麥克風及光環LED燈,可開發語音辨識並透過LED互動 7. WeMos ESP32 mini:縮小尺寸至1/2左右,可開發穿戴裝置 8. HELTEC WiFi LoRa 32:擁有超大32M記憶體,內建OLED及長距離Lora通訊
18* Analog-to-Digital:可接類比或數位感測(粉紅色標示)
3* SPI interfaces(MOSI, MISO, SCK, SS):高速資料傳輸 SD card, TFT, RFID(藍色標示)
3* UART interfaces:藍芽、相機(不限腳位編號)
2* I2C interfaces(SDA,SCL) and I2S interfaces:LCD、氣壓、陀螺儀(GPIO 21,22)
16* PWM output channels:數位輸出也可類比輸出(不限定腳位編號,但需要宣告channel)
2* Digital-to-Analog Converters (DAC)
10* Capacitive sensing GPIOs:提供觸控電容(棕色標示)
GPIO
GPIO 34, 35, 36, 39:Input only(不能作為輸出腳位)
GPIO 0, 6, 7, 8, 9, 10, 11:系統用,勿使用(淺灰色標示)
GPIO 18:重開機
❖ 準備一片 ESP32 開發板 ❖ 準備一條 Micro USB Cable ❖ 準備一台電腦
需要開發環境、編譯器、連結器、開發工具鏈、燒錄程式、板子與電腦連接所需要的驅動程式、等等等等,這些通通都已經準備好、打包好了,到Arduino官方網站的下載頁面即可下載,可在Windows、Mac OS X、Linux上運行。
即可完成設定
ESP32的語法幾乎與Arduino UNO相同 ,因此這裡就先用簡單的HelloWorld當範例。
https://youyouyou.pixnet.net/blog/post/119410732 https://techexplorations.com/guides/esp32/begin/cp21xxx/ https://makerpro.cc/2020/06/esp32-review-and-why-recommend-nodemcu-32s/
將 Micro USB 端接 ESP32,另一端接電腦的 USB 插槽
❖ 開啟電腦的瀏覽器並輸入下方的 URL: https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers ❖ 依自己的作業系統來選擇相對應的安裝檔並安裝完成 (參考資料:https://techexplorations.com/guides/esp32/begin/cp21xxx/ )
❖ 檔案 ➙ 偏好設定
❖ 在額外的開發板管理員網址輸入以下 URL 再點選確定(如果有別的網址,請用’,’隔開):https://dl.espressif.com/dl/package_esp32_index.json
❖ 點選工具 ➙ 開發板 ➙ 開發板管理員
❖ 右上搜尋欄位輸入 esp32並點選安裝
❖ 點選工具 ➙ 開發板 ➙ 選擇 NodeMCU-32S
❖ 點選工具 ➙ 序列埠選擇在裝置管理員中所看到的連接埠號
按下上傳
上傳完畢
開啟序列埠監控視窗
觀看執行結果(記得要將鮑率調成115200,否則會出現亂碼)