本文將採用《超圖解Python物聯網實作入門:使用ESP8266與MicroPython》書本裡的範例,介紹Raspberry Pi Pico RP2040(以下簡稱Pico)、ESP8266和ESP32的MicroPython程式,在讀取類比輸入以及輸出PWM訊號的異同。Pico麵包板示範接線如下:
使用Thonny Python IDE編寫MicroPython程式(二):上傳程式與管理開發板的快閃記憶體內容
在Thonny IDE的互動環境(Shell)操作MicroPython開發板的方式,跟使用其他序列埠通訊軟體(如:PuTTY)不太一樣。使用序列埠通訊軟體連線,貼入程式碼之前,需要先按一下Ctrl+E鍵,互動環境(Shell)不支援Ctrl+E鍵,直接在其中按Ctrl+V鍵貼入程式碼即可:
使用Thonny Python IDE編寫MicroPython程式(一):連接開發板以及燒錄MicroPython韌體
Thonny最初由愛沙尼亞塔爾圖大學(University of Tartu)的計算機科學研究所開發,後來陸續收到許多在電子Maker圈赫赫有名的機構和公司的支援,包括樹莓派基金會(Raspberry Pi Foundation)、Micro:bit教育基金會、Adafruit、M5Stack…等等。
Arduino IDE 2.0:讓程式開發更得心應手
Arduino官方正式發布了Arduino IDE 2.0測試版,有別於1.x版編輯器是基於一個偏向互動藝術領域的“Processing”程式語言編輯器並且採用Java語言開發,2.x版全面改寫,基於一款開放原始碼的Eclipse Theia IDE並採用JavaScript語言和Electron框架開發、包裝成跨平台可執行檔,並整合Arduino的另一個開放原始碼專案“Arduino CLI”(命令行操作介面),提供開發板與程式庫管理員、開發板偵測、編譯與上傳程式碼等功能。
ESP32 MicroPython與Python的pySerial模組進行UART序列通訊
「使用ESP32控制板(一):WEMOS LOLIN32簡介」提到控制板的UART埠可透過軟體指定任意接腳,相當於Arduino程式的SoftwareSerial。用軟體設定時,UART腳可以是任意GPIO腳,但ESP32的34, 35, 36和39不支援數位輸出,所以不能用於TX。
《超圖解ESP32深度實作》新書預告
ESP32這本書的重點主題如下:
- Wi-Fi無線物聯網應用
- 低功耗藍牙(BLE)
- I2S序列音效傳輸介面
- FreeRTOS即時作業系統
- HTTPS安全加密連線
VL53L0X飛時測距(ToF)感應器模組(二):Arduino與MicroPython測距程式
選擇Arduino IDE主功能表的「草稿碼→匯入程式庫→程式庫管理員」,在「程式庫管理員」中搜尋“VL53L0X ”關鍵字,即可找到相關程式庫,常見的兩個程式庫分別是Adafruit和Polohu公司開發的版本,這兩家公司都是美國的電子零組件供應商;本文採用Polohu的VL53L0X程式庫 ,因為Adafruit的版本佔用的快閃記憶體以及主記憶體都比較多。
使用ESP32控制板(三):MicroPython的類比輸入、UART序列埠以及觸控開關
ESP8266只有1.5個博士學位UART序列埠,所以《超圖解Python物聯網實作入門:使用ESP8266與MicroPython》第七章的GPS模組連接實驗,需要搭配WebREPL操作。ESP32也可以透過WebREPL操作,設定方式和ESP8266板相同;LOLIN32控制板有兩個UART硬體介面,把GPS模組接在第2個UART序列埠的示範如下:
使用ESP32控制板(二):燒錄MicroPython韌體
MicroPython的ESP32韌體分成支援Wi-Fi(但不支援藍牙)以及支援藍牙(但不支援Wi-Fi)兩大版本,每個版本各有三個系列:
- 通用(GENERIC):適合所有一般ESP32系列控制板。
- 通用外部RAM(GENERIC-SPIRAM):適合內建外部RAM(PSRAM)的ESP32控制板。
- TinyPICO:用於世界最小(18x32mm)的ESP32微控制板TinyPICO。
使用ESP32控制板(一):WEMOS LOLIN32簡介
ESP32是結合Wi-Fi和藍牙的32位元系統單晶片(S0C)與外接快閃記憶體的模組,有許多廠商生產採用ESP32模組的控制板,它們的多半大同小異,最基本的ESP控制板就是ESP32模組加上直流電壓轉換器以及USB序列通訊介面IC。這是一款稱為WEMOS LOLIN32的ESP32控制板,具備3.7V鋰電池插座:
使用微軟Visual Studio Code編寫Arduino程式(四):Mac版的設置
macOS版的VS Code Arduino編輯環境設置步驟,和Windows版一樣,僅程式庫路徑不同。以編輯Arduino Uno控制板程式來說,開啟空白的專案資料夾(此例為“blink”),按F1功能鍵,執行“Arduino: Initialize”命令後,VS Code將產生如下的c_cpp_propertise.json內容。
使用微軟Visual Studio Code編寫Arduino程式(三):ESP8266和ESP32控制板
本文將介紹在VS Code中編輯ESP8266和ESP32控制板的方法,在此之前,Arduino IDE必須先安裝好對應的開發工具軟體。