用MCU讀ps/2介面,鍵盤送出的脈波 |
答題得分者是:avr
|
ghoustchieh
一般會員 ![]() ![]() 發表:16 回覆:12 積分:5 註冊:2007-11-30 發送簡訊給我 |
|
addn
高階會員 ![]() ![]() ![]() ![]() 發表:64 回覆:221 積分:202 註冊:2005-03-21 發送簡訊給我 |
|
avr
初階會員 ![]() ![]() 發表:7 回覆:21 積分:45 註冊:2007-04-04 發送簡訊給我 |
很久很久以前,寫過接收紅外線遙控器,轉換成pc鍵盤訊號輸入的界面
xtal是11.0592mhz,以下是摩擬鍵盤訊號輸入pc的程式 知道如何發出訊號,應該就知道如何接收了 ! 暫存器a輸入21h,等於發出 c 的鍵盤碼, 輸入3dh,等於發出 7 的鍵盤碼 ![]() K_DATA REG P1.4 K_CLK REG P1.2 ;----------------------------------------------------------------------------- KEYOUT: MOV R1,A CPL A SETB K_DATA CALL K_DELAY SETB K_CLK CALL K_DELAY CLR K_CLK MOV R7,#08 OTB1: RRC A MOV K_DATA,C CALL K_DELAY SETB K_CLK CALL K_DELAY CLR K_CLK DJNZ R7,OTB1 MOV A,R1 MOV C,PSW.0 MOV K_DATA,C CALL K_DELAY SETB K_CLK CALL K_DELAY CLR K_CLK CLR K_DATA CALL K_DELAY SETB K_CLK CALL K_DELAY CLR K_CLK RET ;----------------------------------------------------------------------------- K_DELAY: MOV R4,#10H DJNZ R4,$ RET ;------------------------------------------------------------------------------; ;----------------------------------------------------------------------------- KEYCODE: DB 21H ;c DB 4BH ;l DB 32H ;b DB 16H ;1 DB 1EH ;2 DB 26H ;3 DB 25H ;4 DB 2EH ;5 DB 36H ;6 DB 3DH ;7 DB 3EH ;8 DB 46H ;9 DB 76H ;ESC DB 45H ;0 DB 5AH ;ENTER DB 1CH ;a DB 24H ;e DB 31H ;n DB 2BH ;f DB 23H ;d DB 3AH ;m DB 33H ;h DB 44H ;o DB 42H ;k DB 43H ;i DB 4DH ;p DB 3BH ;j DB 34H ;g |
david69
一般會員 ![]() ![]() 發表:1 回覆:19 積分:19 註冊:2003-06-11 發送簡訊給我 |
你得先了瞭解ps/2的protocol及keyboard的scan code。ps/2的protocol可參閱http://www.computer-engineering.org/ps2protocol/ 。而keyboard的scan code可參閱microsoft的specification http://download.microsoft.com/download/1/6/1/161ba512-40e2-4cc9-843a-923143f3456c/scancode.doc。看完這些資料你就知道該怎麼做了!
|
grandfa
一般會員 ![]() ![]() 發表:2 回覆:7 積分:11 註冊:2008-01-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |