步驟1:獲取插座
部分,即。對適配器板進行編程和設計,您需要找到一種將鍵盤連接到PCB的方法。
大多數經典的ThinkPad鍵盤都使用板對板連接器。根據eBay的說法,如果您搜索T60鍵盤,則會發現ThinkPad T60,T60p,Z61p,Z61t,Z60,T61,R400,R500,T400,T500,X41 。..共享相同的鍵盤,并且它們的鍵盤矩陣也可能
從互聯網上浮動的ThinkPad T60的示意圖中(參見圖片),我發現T60使用JAE AA01B-S040VA1-R3000。由于這些產品是專有產品,因此沒有多少供應商出售它們。多數確實出售這些產品的人,其最低訂購量為100。每件產品的價格約為4.90美元,加上運費,價格非常昂貴。因此,如果您有興趣獲得這些信息,請給我發消息。
有關ThinkPad T60插座的更多信息,請查看Felix的照片和尺寸:http://electronics.stackexchange.com/questions/64112/how找到用于鍵盤連接器的插座
步驟2:使用鍵盤示意圖
從上一步的示意圖中可以看出,T60鍵盤矩陣使用8行16列,其中1個用于熱鍵(FN),TrackPoint使用時鐘線,數據線和復位線。總共需要28個數字引腳,而Arduino Micro/Leonardo只有20個數字引腳。
使用CD4017這樣的十進制計數器在行中循環,并使用MCP23S17等SPI 16位輸入IC進行讀取。輸入為16列,Arduino端的引腳總數減少到10行。
通常,鍵盤矩陣是被動的-它們不指定行或列必須是輸入還是輸出。但是,對于該項目,16列輸出將需要更多的外部IC,無源元件,并使設計復雜化。因此,我選擇了8個輸出和16個輸入。
到目前為止,零件清單已經到了:
Arduino Micro:官方模塊?32美元,13美元用于克隆(在eBay上克隆)
CD4017
MCP23S17
16 x 10k電阻作為MCP23S17
的上拉電阻Arduino安裝板和插座板(接下來的幾個步驟)
AA01B-S040VA1插座
在https://www.tindie.com/products/rampadc/arduino-thinkpad獲取該套件-usb-keyboard-adapter/
步驟3:設計原理圖和PCB
由于T60的插座是間距為0.5mm的表面安裝組件,因此我決定將SMD用于其他組件。
在此項目中,我決定將該板分成兩塊板:
Arduino Micro安裝板
帶有電阻和支持IC的插座板。
這可以使將來的主板修訂版更具模塊化,并且從長遠來看可能會更便宜。例如,如果我決定添加藍牙連接,則不再需要使用Arduino Micro的USB功能。我可以改用Arduino Nano,而只需要在Arduino一側設計PCB,就可以清楚地知道我的插座板將以相同的方式工作,無論我決定使用哪種微控制器。
我提供了以下示例我的Elecrow的PCB布局,原理圖和預制板。板子是雙面的,適合50x50mm。
第4步:編寫代碼!
該項目非常簡單,足以與Arduino龐大的社區進行編碼。我寫了一個簡短的草圖。該代碼可在GitHub上找到:https://github.com/rampadc/arduino-thinkpadkb-usb。
該代碼可以使用一些優化來加速矩陣掃描。從代碼中刪除了FN + NumLock功能,鍵盤鍵和自定義鍵盤組合功能,因為它顯著降低了掃描速度。
步驟5:結果和結論
Arduino平臺使構建USB適配器非常容易。但是,它有一些嚴重的缺點:
?有限的鍵碼支持:沒有鍵盤鍵,打印屏幕,滾動鎖定,暫停,中斷等的定義。?Keyboard.press()和Keyboard.release()的笨拙實現。 )。 Arduino API不會接受和發送未經修改的鍵碼,而是強制用戶發送可打印的字符。
?無遠程喚醒:如果計算機進入待機狀態,則按鍵盤上的某個鍵或移動鼠標都不會將其喚醒。
?引腳數少
?慢。可以進行代碼優化和改進,但是使用Arduino從直接端口操縱中提取的東西會大大增加延遲,增加低引腳數,迫使用戶使用擴展IC進一步降低了速度。
出于測試目的,我使用跨接電纜將兩塊板連接在一起。對于最終產品,我將使用一些細得多的電線直接焊接到板上并在鍵盤下方運行。
這是操作鍵盤的視頻:http://youtu.be/gDHS0D_EtOc
設計建議改進和代碼優化!
-
適配器
+關注
關注
9文章
2054瀏覽量
69719 -
鍵盤
+關注
關注
4文章
866瀏覽量
40681 -
Arduino
+關注
關注
190文章
6498瀏覽量
192127
發布評論請先 登錄
電源適配器做什么的
適配器的電壓與功率選擇
對比不同類型適配器的優缺點
藍牙適配器連接技巧
適配器與轉接頭的區別
電源適配器怎么使用?
TYPE-C多口適配器方案

光纖跳線是否帶適配器
使用UCC28704EVM-724 10W USB適配器

評論