USB人機介面裝置(HID)和主機之間傳送的訊息,稱作「報告(report)」,每當使用者操作控制器,例如,按下A鍵,控制器就會發送所有按鍵和搖桿的狀態報告給主機。本文將說明Switch Pro遊戲手把(Gamepad)的HID報告描述器的內容格式。
自製Switch Pro相容遊戲控制器(一):支援任天堂Switch遊戲機的USB手把
本文示範兩個解決Switch遊戲機Joy-Con控制器類比搖桿漂移的辦法:更換類比搖桿模組,以及用Arduino Leonardo板搭配現成的遊戲控制器(Wii Classic Controller)自製一個Switch Pro相容USB遊戲控制器。
更換JBL Creature II 2.1揚聲器的喇叭單體、加裝無線藍牙立體聲接收器
10多年前購買的JBL Creature II 2.1揚聲器,左右喇叭的紙盆在N年前破損了,我將它們換上新的40mm 4歐姆 5W的喇叭單體,並且加入無線藍牙立體聲接收器和直流電源降壓板,簡單步驟變成無線藍牙音箱。
WiFi Manager(三):在WiFi管理員程式中加入自訂的網站伺服器
如果只是在WiFi管理員的程式中加入自訂的網站伺服器,切換到Wi-Fi設置入口時,它將顯示自訂的頁面,而非Wi-Fi設置頁面,本文將介紹兩種解決辦法。
WiFi Manager(二):無線網路設置入口的基本程式碼以及WiFiManager類別物件的方法
設定ESP開發板Wi-Fi連線的網頁,叫做「設置入口(Configure Portal)」,由「WiFi管理員」程式庫的“WiFiManager”類別物件建立的HTTP伺服器提供服務,本文將介紹它的基本程式以及WiFiManager物件的方法。
Wi-Fi Manager:ESP8266和ESP32開發板的無線網路管理設置介面(一)
Tzapu寫了一個WiFiManager(WiFi管理員),從2.x版開始同時支援ESP8266和ESP32開發板(以下合稱ESP開發板),提供ESP開發板一個方便實用的設置Wi-Fi網路連線的操作介面。本文將介紹Wi-Fi管理員的操作介面,以及中文化的Arduino範例程式。
《超圖解ESP32深度實作》零件清單
ESP32晶片本身也持續推陳出新,例如:
- ESP32-PICO-D4:32位元雙核心Tensilica Xtensa LX6處理器,支援Wi-Fi 4和藍牙4.2,內建 4MB 快閃記憶體。
- ESP32-S3:32位元雙核心Tensilica Xtensa LX7處理器,支援Wi-Fi 4和藍牙 5.0、AI加速運算。
- ESP32-C6:32位元單核心RISC-V架構處理器,支援藍牙5.0和Wi-Fi 6(802.11ax)並向下兼容Wi-Fi 4(802.11 b/g/n)。
在玩客雲「挖礦機」上安裝Armbian Linux系統
玩客雲的硬體規格如下:
- CPU:Amlogic(晶晨)S805,ARM Cortex-A5四核心架構,單核主頻標稱1.5GHz。
- GPU:ARM Mali-450,硬體支援1080P H.265解碼。
- 主記憶體:海力士的DDR3 512MB × 2,共1GB。
- eMMC快閃記憶體:三星的8GB。
- 乙太網路晶片:Realtek(瑞昱)RTL6211F 1Gbps螃蟹卡。
- HDMI輸出 × 1
- USB 2.0 × 2
編譯ESP32 MicroPython韌體
編譯ESP32 MicroPython韌體需要安裝下列工具軟體:
- 編譯與建立ESP32韌體的ESP-IDF(物聯網開發框架)
- Python 3和virtualenv套件
- 建置編譯環境的CMake
超圖解ESP32深度實作
處理器晶片的功能升級了,程式設計的能力也要跟著提昇,才能發揮與靈活運用ESP32的機能。所以本書從第三章開始介紹程式設計師慣用的「模組化」程式設計手法:物件導向程式設計(OOP),並且應用在後續數個章節。此外,依照開發ESP32程式的需要,書中也以一貫的圖解風格,說明類別繼承、虛擬(virtual)函式、多載(overload)、堆疊(stack)與遞迴、記憶體管理、回呼函式、指標存取結構、解析2進位檔…等C++程式設計技術。
Raspberry Pi Pico微控制板(三):編譯MicroPython韌體以及Picotool工具軟體
MicroPython官網提供了預先編譯好的韌體,但有些時候你可能想要自行編譯韌體:
- 新功能嘗鮮
- 調整晶片或開發板的設置。例如,Pico板的第2個UART序列埠預設未啟用Python的互動介面(REPL),可以透過自行編譯韌體啟用。
- 加入已編譯的Python程式模組,節省主記憶體(RAM)的用量。
Raspberry Pi Pico微控制板(二):MicroPython類比輸入與PWM輸出伺服馬達控制
本文將採用《超圖解Python物聯網實作入門:使用ESP8266與MicroPython》書本裡的範例,介紹Raspberry Pi Pico RP2040(以下簡稱Pico)、ESP8266和ESP32的MicroPython程式,在讀取類比輸入以及輸出PWM訊號的異同。Pico麵包板示範接線如下: