|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
PS2鍵盤問題 |
| 作者:水淼 欄目:通信技術(shù) |
鍵盤的clk信號(hào)接在單片機(jī)的p3.3上,用的是sst的單片機(jī), 按鍵按下后進(jìn)入中斷,但這句話 while (!Key_CLK); //等待PS/2CLK拉高 始終過不去,大家?guī)兔Ψ治鲆幌略颉?br>謝謝! void Keyboard_out(void) interrupt 2 { if ((IntNum > 0) && (IntNum < 9)) { KeyV = KeyV >> 1; //因鍵盤數(shù)據(jù)是低>>高,結(jié)合上一句所以右移一位 if (Key_Data) KeyV = KeyV | 0x80; //當(dāng)鍵盤數(shù)據(jù)線為1時(shí)為1到最高位 } IntNum++; while (!Key_CLK); //等待PS/2CLK拉高 if (IntNum > 10) { IntNum = 0; //當(dāng)中斷11次后表示一幀數(shù)據(jù)收完,清變量準(zhǔn)備下一次接收 BF = 1; //標(biāo)識(shí)有字符輸入完了 EA = 0; //關(guān)中斷等顯示完后再開中斷 (注:如這里不用BF和關(guān)中斷直接調(diào)Decode()則所Decode中所調(diào)用的所有函數(shù)要聲明為再入函數(shù)) } } |
| 2樓: | >>參與討論 |
| 作者: chunyang 于 2006/12/6 17:08:00 發(fā)布:
拉高由主機(jī)側(cè)進(jìn)行 |
|
| 免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |