50元製作PS2鍵盤無線監控裝置

2021-09-20 14:16:23 字數 2825 閱讀 1000

0×00    什麼是arduino

arduino實際上就是一種開發板,將微控制器和必需的元件整合在一塊電路板上,擴充套件出完善的介面和針腳,就可以接上各種各樣的感測器,完成你心中的設計,你也可以把它理解成一種電子積木,因為它不需要焊接,也不需要高深的無線電知識,只需要程式設計基礎和基本的電路知識即可。

0×01    模組

1.arduino nano/micro/mini乙個    30元左右

2.藍芽模組乙個 20元左右

3.若干導線 一坨3元左右

用山寨的nano(實戰的話得把排針拔掉,焊上導線)也可,**10元左右。mini也不錯,**也是10元左右,但是需要乙個usb ttl來燒寫程式。micro山寨的30元左右,這個比nano小點,跟mini差不多,這個板子可以模擬鍵盤和滑鼠實現hid攻擊,相當於teensy。指甲大小的lilypad興許可以,我這裡沒有這個板子,不太清楚這個板子的情況。

而實戰時,把arduino的排針拔掉,直接把這兩個模組焊起來,大小就跟下面的差不多了,由於導線會比下面的略大一點。

0×02 思路

最初的思路是,利用micro板子接收ps2鍵盤然後在再有micro模擬成鍵盤**出去。但是因為由於不能完全解碼ps2鍵盤的按鍵資訊,所以我就換了個思路。直接用板子併聯在連線線上面,這樣鍵盤發出按鍵資訊後會沿著線路到達兩個地方,乙個是計算機,乙個就是我們的記錄器了。

0×03 原理

ps2口一共有6個針腳: clock時鐘、gnd接地、data資料和5v的供電,剩餘的兩個是沒有使用的保留口,排列順序如下圖所示:

其中clock和data用於截獲按鍵資訊,剩餘兩個用於給鍵盤和裝置供電。

接線圖:

看起來連線有些眼花繚亂,事實上很簡單的幾下。鍵盤正常連線計算機不變,只需要在鍵盤連線計算機的線路中的這四根線引出導線連線在板子上即可。

藍芽模組也同樣需要連四根線

0×04    連線硬體

上圖是裝置的全部分,實戰時把線路焊接起來而不用杜邦線和排針就可以壓縮到u盤大小,而且供電直接取自鍵盤。可以把此裝置塞到鍵盤當中實現隱秘監控,由於使用的不是**的方法,即使電路故障(只要焊接好,可能性很低)也不會影響鍵盤的正常使用。焊好後大小就如同文章開頭提到的。

0×05    燒寫程式

#include const

int datapin = 3

;const

int irqpin = 2

;ps2keyboard keyboard;

void

setup()

void

loop()

else

if (c ==ps2_tab)

else

if (c ==ps2_esc)

else

if (c ==ps2_pagedown)

else

if (c ==ps2_pageup)

else

if (c ==ps2_leftarrow)

else

if (c ==ps2_rightarrow)

else

if (c ==ps2_uparrow)

else

if (c ==ps2_downarrow)

else

if (c ==ps2_delete)

else

}}

手機上面使用bluetooth spp連線藍芽串列埠,就可以看到鍵盤的實時按鍵資訊了。

0×06    其他問題

有些地方還需要完善:

1

.功能鍵部分無法識別(但不影響鍵盤使用)

2.按鍵資訊還可以通過更便宜、更小、傳輸距離更遠的nrf24l01+,**有點複雜(為我還沒有研究明白)

3.arduino自身提供了eeprom儲存器,但是容量僅僅只有1k,所以沒有往上面儲存按鍵資訊,如果加入關鍵字觸發,才寫入儲存,興許有點用。也可以用micro sd卡模組,將按鍵資訊儲存在儲存卡中,等到有人連線裝置後通過無線傳送出去。我沒買這個模組,所以這塊沒有做。

另外還可以做得更小更廉價!歡迎指教!

PS 2鍵盤原理

11.4 鍵盤原理 早期的鍵盤實際上是一種5pin的鍵盤,稱作at鍵盤,是1984年ibm pc的標準鍵盤。在1987年ibm進行了改進,從而變成了現在的ps 2鍵盤。當按下乙個鍵或釋放乙個鍵,鍵盤都會傳送鍵盤掃瞄碼到主機。比如按下a,鍵盤就會傳送0x1c到主機。如果持續按a,當經過乙個給定時間後,...

FPGA 實現PS 2鍵盤控制LED

module ps2 系統訊號 input clk,input rst n,ps2訊號 input data in,input clk in,測試訊號 output reg done flag,output reg 3 0 led reg r1,r2 reg 7 0 ps2 data reg 4 0...

PS2鍵盤第二套鍵盤掃瞄碼學習發現

ps2鍵盤中第二套鍵盤掃瞄碼使用最廣泛。但是每個按鍵的鍵值,大多數是乙個位元組。有少量的兩個位元組 小鍵盤enter 鍵 e0 5a 右ctrl e0 14 右gui e0 27 左gui e0 1f 右alt e0 11 fn e0 2f 小鍵盤 e0 4a 這些按鍵一般在鍵盤上能找到另乙個相同功...