同一套串口 LCD(SLCM19264)測試程式,在 Ubuntu 10.04 (x86) 上正常,交叉編譯到 ARM (XM31, arm-none-linux-gnueabi-gcc) 後,write 成功但 read 返回 0,無任何資料回傳。
原 LCD 內部控制器故障:指令發送後延遲數秒才回應,且回傳 0x00。這在工控機上因時序寬鬆勉強能跑,但在 ARM 板嚴格時序下完全失效。
「最不可能的地方,也許就是那個結果。」—— 當軟體、驅動、線材、電壓全排查無誤時,別忘了懷疑「必定正常」的外設硬體本身。