|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
這個程序能這樣寫嗎? |
| 作者:愛睡覺的貓 欄目:單片機 |
用AT89C2051 接六個開關(guān)鍵做一個小鍵盤,接口為P1.7,P1.6,P1.5,P1.1,P1.0. 這樣寫程序?qū)幔!我覺得KS 那個尋址好像有點問題,但是不知道怎么修改,希望有人幫幫忙,謝謝了。 程序為: KEY: CLR A ACALL KS ; 有鍵按下否? JS NK ; 無鍵則返回 ACALL DELAY ; 調(diào)用延時程序,消除抖動 CLP A; ACALL KS ; 再次判斷是否有鍵按下 JZ NK ; 無鍵按下返回 MOV A,#0FFH ; 行掃描信號,從最低位開始 MOV R4,#0 ; 行計數(shù)器 K1: MOV R2,A ACALL KS ; 掃描鍵盤 JNZ FIND ; 找到鍵轉(zhuǎn)移 INC R4 ; 行計數(shù)器加1,指向下一行 MOV A,R2 RL A ; 行掃描信號左移一位 CJNE A,#0AH,K1 ; 3 行掃描完? MOV A,#0 ; 沒找到鍵 SJMP NK FIND: SWAP A ADD A,R4 NK: RET KS: MOV A,R4 MOV DPTR,#PRGTBL MOVC A,@A+DPTR JMP @A+DPTR CPL A ANL A,#0FH RET PRGTBL: DB P1.7-PRGTBL DB P1.6-PRGTBL DB P1.5-PRGTBL DB P1.1-PRGTBL DB P1.0-PRGTBL |
| 2樓: | >>參與討論 |
| 作者: hotpower 于 2005/5/26 23:40:00 發(fā)布:
不測P1如何掃描??? |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |