為什麼每個實驗都拆成好幾階
使用者回報「不會動」幾乎沒有資訊。回報「我停在第 2 階」則直接指向一小段東西。
所以每個實驗都拆成幾個階段,每一階都有一個肉眼看得見的結果。 你不必猜哪裡壞掉,只要說出自己停在第幾階。
這個做法是從除錯經驗來的:把一個籠統的失敗,拆成幾個可以分別確認的事實。
實驗一 · 把板子變成一支 USB 鍵盤
需要:板子 + 一條 USB 線(要能傳資料,不是只能充電的那種)
插上電腦,作業系統會把它當成一支鍵盤,不需要安裝任何驅動程式。 按板子上的 4×4 按鍵,字元就打進記事本。
四階驗收
| 階 | 你會看到 | 這證明了 |
|---|---|---|
| 0 | 螢幕出現 USB Keypad / wait host... | 板子有電、螢幕正常、程式在跑 |
| 1 | 第二行變成 key:- n:0000 | 電腦認到這支鍵盤了 |
| 2 | 按鍵時 key: 會變、n: 會加 | 按鍵有被收到、訊號已經送出去 |
| 3 | 記事本出現字元 | 整條鏈都通 |
第 1 階是刻意獨立出來的。它把「USB 沒接通」和「按鍵沒送出去」分成兩件 可以分別確認的事——少了它,這兩種問題長得一模一樣。
卡住了看這裡
| 停在 | 最可能的原因 |
|---|---|
| 第 0 階(螢幕沒字) | 沒電;或螢幕對比轉太暗(板上有一顆小電位器,慢慢轉,字會浮出來) |
第 1 階(一直 wait host...) | USB 線只能充電、不能傳資料——這是最常見的一種。換一條試試 |
第 2 階(n 不會加) | 鍵盤排線沒整排插到底,或插歪一格 |
第 3 階(n 會加但沒字) | 游標沒點進輸入框;或輸入法在中文模式 |
「n 會加但記事本沒字」是最有價值的一種失敗:
它已經自動排除了按鍵和 USB 兩段,剩下的範圍很小。
實驗二 · 用手遮一下,數字和燈都會變
需要:板子 + 光照感測模組(插在板上的插座,不用接線)+ 任何供電方式
感測器每 0.2 秒量一次環境亮度,數值顯示在螢幕上,旁邊的三色 LED 跟著變色。
三階驗收
| 階 | 你會看到 | 這證明了 |
|---|---|---|
| 0 | 螢幕出現 Light BH1750 | 板子、螢幕、程式都正常 |
| 1 | 出現數字,例如 lux: 123 | 感測器在回話了 |
| 2 | 遮住手數字會掉、照燈會衝高 | 數字是真的在量測,不是固定值 |
第 2 階不能省。「有數字」不等於「數字是對的」—— 一顆壞掉但會回傳固定值的感測器,在第 1 階看起來完全正常。
顏色的意思
| 亮度(lux) | 顏色 |
|---|---|
| 小於 50 | 藍 |
| 50 – 500 | 綠 |
| 500 以上 | 紅 |
出現 ERR 的話
螢幕會顯示 ERR Ex,那個數字是卡在第幾步:
| 代碼 | 意思 | 先查 |
|---|---|---|
E1 E3 E5 | 等不到回應 | 模組有插好嗎?插座有沒有歪一排? |
E2 E4 E6 | 有回應,但不是預期的 | 模組的位址設定(有兩種可能) |
奇數是線的問題,偶數是設定的問題。 只顯示「錯誤」的話,你只能兩個都試。
老實說的限制
- 要改程式的話,需要專用的燒錄器。 板子目前沒有自己的開機載入程式, 所以借出去的人沒辦法自己重燒。這是已知的缺口,還沒補。
- 換一種 4×4 鍵盤,按鍵標示可能會錯位。 薄膜鍵盤和按鍵板都是「裸矩陣」,
程式不在乎你插哪一種,但列與行的排列順序不一定相同。
如果按
1出現3,就是這個原因。 - 三色 LED 只有三段顏色,沒有漸變。 那幾支腳跟另一組排針共用, 用漸變會互相干擾,所以這裡只用開關。
- 感測器模組只有一個,要在板子之間換著用。