鍵盤接收主機命令和參數(shù)
主機首先將時鐘線置為低電平,隨后將數(shù)據(jù)線置為低電平,延時大約200μs后,將時鐘線置為高電平。當鍵盤檢測到這一狀態(tài)后,開始接收主機命令,接收數(shù)據(jù)格式與發(fā)送的一樣。鍵盤依次接收1個起始位、8個數(shù)據(jù)位、1個校驗位、1個停止位。特別值得注意的是,在接收鍵盤命令或參數(shù)時,雖然數(shù)據(jù)是由主機發(fā)向鍵盤的,但是時鐘脈沖是由鍵盤產(chǎn)生的。主機在時鐘線上每接收一個脈沖的下降沿,就在數(shù)據(jù)線上輸出一位數(shù)據(jù)。如果接收正確,在時鐘線和數(shù)據(jù)線都成為高電平后,鍵盤將向主機發(fā)一個應答信號(0FAH),否則向主機發(fā)一個0FEH信號,要求重發(fā)。主機收到0FEH信號后,把剛才輸出過的數(shù)據(jù)重新發(fā)送一次。如果這一過程持續(xù)三次后,鍵盤仍然不能正確接收,主機就放棄傳送這個數(shù)據(jù),轉(zhuǎn)去執(zhí)行下面的程序或顯示錯誤信息。主機命令和參數(shù)也采用奇校驗方式。
系統(tǒng)硬件電路設計
本系統(tǒng)采用89C51單片機與PC鍵盤接口相連,圖2給出了系統(tǒng)硬件電路原理。其中P3.0和P3.1分別與主機鍵盤接口的時鐘線CLK和數(shù)據(jù)線 DATA相連,P2口與4×4鍵盤矩陣相連,P0口經(jīng)過驅(qū)動后與輸入輸出報警設備相連接。為保證鍵盤可靠工作,系統(tǒng)配置了看門狗電路MAX813L,另外,系統(tǒng)還配置了蜂鳴器,每次按鍵均有聲音提示。
圖 系統(tǒng)硬件電路原理