零件:上周鍵盤

我們推出了一個新版本的總線海盜通用串行接口工具。最後一個固件更新包括兩個硬件版本的鍵盤解碼器庫。

在鍵盤上有一大噸舊的舊柵欄。我們將向您展示如何作為下一個項目的輸入設備回收一個。

聯繫

公共汽車海盜
鍵盤上的PC(PIN#)

SDA.
KBD數據(3)

SCL.
KBD時鐘(1)

+ 5Volts.
VDD(5)

GND.
GND(2)

在鍵盤上通過雙向雙線接口進行通信。公共汽車是開放的收集器,但鍵盤已經有內部上拉電阻。此處描述了鍵盤協議處的PC。我們使用我們的總線海盜工具來展示鍵盤協議,但相同的基本原理適用於任何微控制器。

如表中所述,我們將總線海盜連接到鍵盤。我們認為這是鍵盤插孔的通風女性,但我們還沒有評估它。你知道新插座的來源嗎?

協議

鍵盤為所有數據傳輸提供時鐘信號; PC側類似於從設備。沒有現有的總線海盜接口庫與外部時鐘一起使用,因此我們在鍵盤解碼器庫中寫了一款簡單。庫取決於鍵盤的時鐘信號,如果鍵盤故障或未連接,則會掛起。如果在自己的項目中使用我們的庫,請考慮在Readbit()和WriteBit()函數中添加超時延遲。

PC到鍵盤命令代碼

代碼
命令

0xed.
設置狀態LED.

0笑
echo 0xee.

0xF0.
設置scancode類型

0xF3.
設置重複率

0xF4.
鍵盤使能

0xF5.
鍵盤禁用

0xFE.
重新發送最後一個字節

0xFF.
重置鍵盤

PC使用這些命令來控制鍵盤上的各種功能。鍵盤響應具有確認字節(OXFA)的命令。在我們的經驗中,如果在命令發送後不久,不久會讀取反應字節,則將重置鍵盤。

鍵盤到PC反應代碼

代碼
回复

0xFA.
承認

0xAA.
自我測試通過了

0笑
迴聲響應

0xFE.
重新發送最後一個字節

0x00或0xff
錯誤或緩衝區溢出

鍵盤有許多單個字節反應代碼。許多PC命令用0xFA確認。 0xAA在鍵盤復位後發送。

設置總線海盜

Hiz> M.
1.艾特
……
9.鍵盤上的PC
模式> 9 <-set模式 900模式集 KB解碼器準備好X02 PC 鍵盤上的電腦>

首先,我們在鍵盤模式下設置總線海盜,選項9。

鍵盤上的電腦> P <-Power供應設置 w / w切換3.3 volt電源? 否 2.是的 模式> 1 <-NO 3.3VOLT供電 w / w切換5 volt電源? 否 2.是的 模式> 2 <-USE 5VOLT電源 9xx供電配置,使用w / w切換 9xx電壓監控:5V:0.0 | 3.3V:0.0 | vpullup:0.0 | 鍵盤上的電腦> W <-Capital'W',轉動供應 9xx 5Volt供應 鍵盤上的電腦>

接下來,我們配置總線海盜的電源,為鍵盤提供5Volts。

鍵盤上的PC>鍵盤中的R <-READ BYTE X30 PCATKB讀取:無<-no數據可用 鍵盤上的電腦>

鍵盤庫遵循標準總線海盜語法。數值被發送到鍵盤為字節,“R”從鍵盤讀取一個字節。協議由鍵盤時鐘計時,因此禁用按位操作。如果沒有數據可用,則讀取將返回“無”。

設置鍵盤

鍵盤上的PC> 0xee R <-SEND 0xee,讀取一個字節 x20 pcatkb寫:0xee get ack <-write Oxee,得到了一點 x30 pcatkb閱讀:0xee <-read 0xee,Echo成功 鍵盤上的電腦>

我們可以使用echo命令0xee測試與鍵盤的連接。如果我們的連接正確,則鍵盤將響應0xee。

鍵盤響應具有協議級別的ACK位的命令,然後使用Ack字節進行響應。我們發現,如果在發送命令後沒有立即讀取ACK字節,我們的測試鍵盤會自動復位。

鍵盤上的PC> 0xee <-Echo命令 x20 pcatkb寫:0xee get ack <-wrote echo,get ack 鍵盤上的PC> R <-READ一個字節 X30 PCATKB讀取:0xAA <-READ 0xAA,重置指示燈 鍵盤上的電腦>

在這裡,我們嘗試發送echo命令,然後稍後閱讀回复。鍵盤自動復位並回复0xAA,通過進行自檢。

鍵盤上的PC> 0xFF r r <-reset命令,讀取兩個字節 x20 pcatkb寫入:0xff get ack <-write reset命令,get ack X30 PCATKB讀取:0xFA <-Command Ack字節 x30 pcatkb讀取:無< - 再次才能重置 鍵盤上的電腦>

通過編寫命令0xFF並讀取兩個字節來重置鍵盤。鍵盤不會重置,直到讀取第二個字節。

鍵盤上的PC> R <-READ一個字節 X30 PCATKB閱讀:0xAA <-RESET成功 鍵盤上的電腦>

重置後的短時間我們可以讀取自檢的電源(POST)結果,0xAA表示發布成功。

鍵盤上的電腦> 0xF5 R <-Disable鍵盤 x20 pcatkb寫入:0xf5 get ack <-wrote命令 X30 PCATKB讀取:0xFA <-read ACK字節 鍵盤上的PC> 0xF4 R <-ENABLE鍵盤 x20 pcatkb寫入:0xf4 get ack <-wrote命令 X30 PCATKB讀取:0xFA <-read ACK字節 鍵盤上的電腦>

0xF5 DisaBLES鍵盤輸入。 0xF4啟用鍵盤並清除緩衝區。

鍵盤上的PC> 0xed R 0B111 R <-SET指示燈LED X20 PCATKB寫入:0xed GOT ACK <-SET LED命令 X30 PCATKB讀取:0xFA <-Command確認 x20 pcatkb寫入:0x07 get ack <-send LED值 X30 PCATKB閱讀:0xFA <-Value確認 鍵盤上的電腦>

NUM,CAP和滾動鎖定LED由0xED命令控制。第二個字節(OB111)的最後三位指示燈指示燈。執行鍵盤超時期間的所有四個字節操作,或者將重置鍵盤是至關重要的。

鍵盤上的PC> 0xee R <-Echo測試命令 x20 pcatkb寫:0xee得到了ack X30 PCATKB閱讀:0xee PC在鍵盤> 0xFE R <-Repeat最後一個字節命令 X20 PCATKB寫入:0xFE GOT <-WRITE REPEAT命令 x30 pcatkb讀取:0xee <-Previous字節重複 鍵盤上的電腦>

最後一個有趣的鍵盤命令是重複字節命令。 0xFE使鍵盤再次發送最後一個字節。如果先前傳輸中存在錯誤,這是一個有用的命令。

閱讀基本印刷機

鍵盤緩衝按鍵,直到我們讀取它們。

鍵盤上的PC> R <-READ BYTE X30 PCATKB讀取:0x29 <-space scancode 鍵盤上的PC> R <-READ BYTE X30 PCATKB讀取:0xF0 <-Key釋放scancode 鍵盤上的PC> R <-READ BYTE X30 PCATKB讀取:0x29 <-space scancode 鍵盤上的電腦>

一個基本新聞發出掃描,代表基本印刷機的多字節序列。在該示例中,我們按下了具有Scancode 0x29的空間。當一個必不可少的釋放時,鍵盤向Essent(0x29)發送0xF0和Scancode。每個基本新聞都會產生類似的三個部分序列。

鍵盤上的PC> R:4 <-read 4字節 X31 PCATKB批量讀取,0x04字節: 0x29 0xF0 0x29 none <-space scancode 鍵盤上的電腦>

這只是前一個示例的簡化版本。我們使用批量讀命令而不是單獨閱讀三個字節。再次,我們得到了空間掃描序列。我們嘗試讀取不存在的第四個字節失敗。

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Posts

語音管理家庭自動化語音管理家庭自動化

[Brian]在他的語音管理家庭自動化系統上發送了這個寫作。 從Microsoft SAPI開始,一個語音識別系統,他編程了一些基本的家庭自動化。 在一個使這個項目明確更令人敬畏的舉動中,他決定建立他的自動化系統的物理代表。 這種個性的頭部是“斯蒂芬妮”。 她回應了她的名字,有一個鉸接式鉗口,用音節用詞移動,甚至在命令中噴射她的“大腦托盤”。 我們想要一個。 除了源代碼和視頻之外,他的網站有很多關於涉及的電路的信息。 您可以在休息後看到視頻。

READ MOREREAD MORE

Apple在Internet上使用iPhone 12洩漏的蘋果新編織的閃電線的可能圖片Apple在Internet上使用iPhone 12洩漏的蘋果新編織的閃電線的可能圖片

,蘋果公司設置了iPhone 12以及iPhone 12 Pro,在幾天之內,我們可能會逐漸看到我們看到新編織的新編織盒子裡有閃電線。但是,如果謠言正確,就不會有交流適配器。 由於Apple Watch不在盒子中包含充電器,因此缺乏適配器看起來越來越有可能,但是好消息是,我們看起來已經準備好獲得優雅的新電纜。 一條編織的閃電繩以前在互聯網上出現在圖片中,現在Twitter上經常使用的Mr-White已分享了更多圖像。 有趣的是,圖片顯示了另一端帶有USB-C連接器的閃電鏈接。蘋果公司表示,它希望蘋果享受主人已經在家裡擁有交流電適配器,如果人們希望人們已經擁有USB-C適配器,則可能不會飛。畢竟,即使是去年的iPhone 11,盒子裡也帶有USB-A AC適配器。 儘管缺乏適配器,但編織線的步驟可能足以鼓掌很多人。 蘋果的普通閃電繩具有崩潰的歷史,並且必須停止編織建築物。或者,至少使風險最小化。我們將不得不確切地看到這條線如何確定。 您可能同樣喜歡檢查: 下載iOS 14.0.1最終IPSW鏈接,OTA配置文件與iPados 14.0.1一起 下載:iOS 14.2 Beta 1 IPSW鏈接,OTA配置文件數據以及iPados 14.2 Beta 1發布 如何修復差的iOS 14電池壽命流量[指南] 下載iOS 14最終IPSW鏈接,OTA配置文件與iPados 14 越獄iOS

READ MOREREAD MORE

4個特殊的圖標包裝,適合Android值得一試4個特殊的圖標包裝,適合Android值得一試

,在今天的Icon Pack綜述中,我們有一些真正可愛的圖標包裝,外觀新鮮。嘗試下面提供的Android上的全部或至少一種特殊的圖標包。 我們可以快速選擇一年的智能手機,而不會出現問題。但是,如果只需要使用一個牆紙,庫存圖標包以及小部件,請將該小工具粘貼在一起,我們肯定會很快就會厭倦它。在這裡,個性化可以發揮作用。 現在,如果您擁有一台非根系的Android智能手機,則在壁紙,小部件和圖標包的幫助下,您獲得了限制的限制,可以完成多餘的東西來完成外觀出色的房屋屏幕配置。以下是不少於4個特殊圖標包,可以幫助您獲得特別聲明。 另請閱讀:您會喜歡[#15]的Android的4個非凡的圖標包 nou圖標包 Drumdestroyer主題的Nou Icon Pack是材料樣式圖標的一個非凡示例。好吧,進步的材料樣式圖標。這些圖標是明亮的,活潑的,也很清脆,對細節的最大興趣。圖標包的其他一些功能是 – 交替圖標,突出圖標的多色變化,對多個啟動器的支持,針對三星,HTC等突出OEM的定制設計圖標等。適用於Android的圖標包裝。 [Google Play url =“”/] Pixbit圖標包 顧名思義,Pixbit是由像素化圖標組成的包裝。這些圖標的高質量最高,並且如果您想完成像素化的UI,則可以提供令人愉悅的體驗。圖標包具有一千個圖標,大量超過10個HD壁紙,並支持Muzei在線壁紙。同樣,它適用於突出日曆應用程序的運動動態日曆圖標。而且,從Google Play頁面上的評估中可以明顯看出,設計師非常活躍,並且如果處理任何類型的問題,則可以提供全面的客戶支持。 Pixbit實際上是可以嘗試的特殊圖標包。 [Google Play url =“”/] 故障 – 圖標包 Drumdestroyer主題的Glitch是一個創新的圖標包裝,帶有故障。每個圖標均採用鮮豔的色彩以及故意的扭曲,以提供不同的外觀和特殊外觀。 Pack擁有大量的頂級圖標以及可以在設備上下載的雲上的許多高清壁紙。在房屋屏幕上使用時,圖標看起來很濃。該圖標包的其他一些功能是 – 備用圖標,多色圖標,動態日曆,對OEM圖標的支持,等等。

READ MOREREAD MORE