用51單片機(jī)實(shí)現(xiàn)PS/2鍵盤的控制
隨著單片機(jī)的不斷發(fā)展,PS/2鍵盤在單片機(jī)系統(tǒng)中的應(yīng)用越來越廣泛。PS/2鍵盤其實(shí)只有4個(gè)引腳有意義,它們分別是CLOCk(時(shí)鐘腳)、DATA(數(shù)據(jù)腳)、+5V(電源腳)和Ground(電源地)。在PS/2鍵盤與PC機(jī)的物理連接上只要保證這4根線一一對(duì)應(yīng)就可以了。PS/2鍵盤靠PC的PS/2端口提供+5V電源,另外兩個(gè)腳Clock(時(shí)鐘腳)和DATA(數(shù)據(jù)腳)都是集電極開路的,所以必須接大阻值的上拉電阻。它們平時(shí)保持高電平,有輸出時(shí)才被拉到低電平,之后自動(dòng)上浮到高電平。
1、硬件設(shè)計(jì)
本電路原理圖如下圖所示,PS2接口的1腳接P3.4,用來接收串行的鍵碼信號(hào),5腳接P3.3(INTl),是時(shí)鐘信號(hào),每當(dāng)5腳從高電平變成低電平時(shí),都會(huì)引起單片機(jī)產(chǎn)生一次中斷,在中斷程序中讀取1腳的信號(hào)。連續(xù)中斷11次即可獲得一個(gè)字節(jié)的鍵碼值。
2、程序設(shè)計(jì)
本程序采用電平中斷方式接收PS2鍵盤傳來的按鍵信息,通過判斷shift鍵是否按下,查詢不同的鍵碼表,實(shí)現(xiàn)大小寫按鍵的識(shí)別。具體程序如下: