快速解答
若要將 4x4 矩陣鍵盤與 Arduino 搭配使用,請將 I2C 介面連接到 SDA 和 SCL 腳位,然後使用 Wire 函式庫讀取 ASCII 按鍵值。mLink 4x4 矩陣鍵盤會自動處理防彈跳和掃描,簡化您的程式碼。
為什麼選擇 I2C 矩陣鍵盤而非原始矩陣鍵盤
原始 4x4 矩陣鍵盤需要八個數位 I/O 腳位,並需在程式碼中手動處理防彈跳。mLink 4x4 矩陣鍵盤整合了一個專用掃描模組,透過 I2C 通訊,僅使用兩個腳位(SDA 和 SCL),並提供預先防彈跳的 ASCII 輸出。這能減少接線複雜度,並釋放 I/O 腳位供其他感測器或顯示器使用。
其代價是成本:mLink 版本比裸鍵盤稍貴。然而,對於重視可靠性和簡潔性的專案而言,額外的花費能節省除錯時間。
逐步接線與程式碼指南
- 將鍵盤連接到 Arduino: 將 mLink 鍵盤的 VCC 連接到 Arduino 的 5V,GND 連接到 GND,SDA 連接到 A4(或 Uno R3 及更新版本的 SDA 腳位),SCL 連接到 A5(或 SCL 腳位)。對於其他 Arduino 板,請查閱 I2C 腳位定義。 常見錯誤:接反 SDA 和 SCL。如果鍵盤無回應,請交換兩條資料線。
- 安裝所需的函式庫: 開啟 Arduino IDE,前往「草稿碼」>「匯入函式庫」>「管理函式庫」,並安裝由板卡供應商提供的「mLink」函式庫。此函式庫提供透過 I2C 讀取鍵盤的功能。 如果找不到該函式庫,請從產品頁面下載,並透過「草稿碼」>「匯入函式庫」>「加入 .ZIP 函式庫」手動安裝。
- 撰寫掃描程式碼: 在草稿碼中加入 mLink 函式庫。在 setup() 中呼叫 mLink.begin()。在 loop() 中使用 mLink.getKey() 讀取最後按下按鍵的 ASCII 值。如果該值不為 0,則將其輸出到序列埠監控視窗,或用於您的專案邏輯中。 檢查點:當沒有按下任何按鍵時,鍵盤會回傳 0。在處理按鍵按下動作前,務必檢查數值是否為非零,以避免誤觸發。
- 測試並驗證按鍵對應: 上傳草稿碼,並以 9600 鮑率開啟序列埠監控視窗。按下每個按鍵,確認顯示正確的 ASCII 字元。mLink 鍵盤會輸出與按鍵帽相符的大寫字母和數字。 如果某個按鍵回傳不同的字元,請檢查接線是否鬆脫或鍵盤是否故障。由於模組已處理對應,因此無需對應表。
- 整合到您的專案中: 將 Serial.print() 這行程式碼替換為您自己的邏輯:例如,將按鍵儲存到字串中、與密碼進行比對,或用於在 LCD 顯示器上導覽選單。 請記住,鍵盤是輪詢式而非中斷驅動。您的 loop() 必須足夠頻繁地呼叫 getKey(),才能捕捉到快速的按鍵動作。
產品參考
-
mLink 4x4 矩陣鍵盤: mLink 4x4 矩陣鍵盤是一款可面板安裝的序列(I2C)16 按鍵觸覺式鍵盤,其模組會持續掃描並防彈跳處理按鍵按下動作,將每個按鍵儲存為 8 位元的 ASCII 值。您無需在 Arduino 草稿碼中撰寫防彈跳或掃描常式,這能簡化程式碼並減少誤觸發。
mLink 4x4 矩陣鍵盤



