|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
大家?guī)臀铱纯催@段程序 |
| 作者:GUORUI985 欄目:單片機(jī) |
我想用RB1-RB4口接4路按鍵 ,當(dāng)按鍵按下時(shí)置1,判斷總共有幾路按鍵按下,不知道我寫的有沒有問題,大家?guī)臀铱纯矗?br>程序如下: BSF STATUS,RP0 ;選體1 MOVLW 01EH MOVWF TRISB ;設(shè)RB1-RB4為輸入 BCF STATUS,RP0 CHECK ;判斷幾個1,然后累加到COUNT0 BTFSC PORTB,1 ;RB1為1則COUNT0加1,否則不加 INCF COUNT0,F BTFSC PORTB,2 ;RB2為1則COUNT0加1,否則不加 INCF COUNT0,F BTFSC PORTB,3 ;RB3為1則COUNT0加1,否則不加 INCF COUNT0,F BTFSC PORTB,4 ;RB4為1則COUNT0加1,否則不加 INCF COUNT0,F NOP P0 DECFSZ COUNT0,F ;根據(jù)COUNT0值,判斷幾路 GOTO P1 GOTO LU1 ;為1路 P1 DECFSZ COUNT0,F GOTO P2 GOTO LU2 ;為2路 P2 DECFSZ COUNT0,F GOTO P3 GOTO LU3 ;為3路 P3 DECFSZ COUNT0,F NOP GOTO LU4 ;為4路 LU1 、、、 ;任務(wù)處理 CLRF COUNT0 ;計(jì)數(shù)清零 GOTO CHECK LU2 、、、 ;任務(wù)處理 CLRF COUNT0 ;計(jì)數(shù)清零 GOTO CHECK LU3 、、、 ;任務(wù)處理 CLRF COUNT0 ;計(jì)數(shù)清零 GOTO CHECK LU4 、、、 ;任務(wù)處理 CLRF COUNT0 ;計(jì)數(shù)清零 GOTO CHECK ;循環(huán)掃描 |
| 2樓: | >>參與討論 |
| 作者: fxmxh 于 2006/6/1 15:36:00 發(fā)布:
沒細(xì)看,能用就行 一千個人寫同樣的任務(wù),會有一千個樣式. |
|
| 3樓: | >>參與討論 |
| 作者: systemchip 于 2006/6/2 17:11:00 發(fā)布:
最好加入消抖措施。 |
|
| 4樓: | >>參與討論 |
| 作者: guorui985 于 2006/6/3 8:22:00 發(fā)布:
謝謝! |
|
| 5樓: | >>參與討論 |
| 作者: xieyuanbin 于 2006/6/3 17:40:00 發(fā)布:
為什么不燒到片子里試試? 即使程序“沒毛病”,多按幾次,也會出毛病。 |
|
| 6樓: | >>參與討論 |
| 作者: GUORUI985 于 2006/6/5 9:46:00 發(fā)布:
除了消抖,還有其他問題的 消抖以后會加的。現(xiàn)在我的按鍵是沒有操作的,例如有兩路通,就是兩路, 但現(xiàn)在這個程序也不通,還沒查出原因,還在查 |
|
|
|
| 免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |