GOGOGO高清完整国语,GOGOGO在线观看免费观看完整版高清,GOGOGO免费高清完整,GOGOGO高清在线观看免费视频,GOGOGO日本高清国语完整,GOGOGO免费高清完整版

技術熱線: 4007-888-234

PIC單片機的4*4鍵盤子程序

更新時間: 2019-03-22
閱讀量:3231

單片機開發商深圳英銳恩分享PIC單片機的4*4鍵盤子程序。

;-------4*4鍵盤程序的使用--------
PC       EQU    2
STATUS   EQU    3
RA       EQU    5
RB       EQU    6
RC       EQU    7
BIJIAO   EQU    0F
JIANZHI  EQU    8
BUFFER   EQU    9
BUFFER1  EQU    0AH
BUFFER2  EQU    0BH
COUNTER  EQU    0CH
CON1     EQU    0DH
CON2     EQU    0EH
PIC57    EQU    7FFH
Z        EQU    2
;-----------------------------
         ORG    PIC57
         GOTO   MAIN
;-----------------------------
         ORG    0
;-----------------------------

 延時子程序
;----------------------------
DELAY    MOVLW  D'100'
         MOVWF  CON1
L1       MOVLW  D'200'
         MOVWF  CON2
L2       DECFSZ CON2,1
         GOTO   L2
         DECFSZ CON1,1
         GOTO   L1
         RETLW  0        
;-----------------------------
;        4*4鍵盤掃描判斷子程序
;-----------------------------
SCANKEY
         MOVLW  B'11101111'
         MOVWF  RB
         MOVF   RB,W
         ANDLW  B'00001111'
         MOVWF  BUFFER
         MOVLW  B'00001111'

  XORWF  BUFFER,W
         SKPNZ
         GOTO   XYB1
         MOVWF  BUFFER1
         MOVLW  1
         MOVWF  JIANZHI
         MOVF   RB,W
         MOVWF  BIJIAO
         GOTO   QJZ

XYB1     MOVLW  B'11011111'
         MOVWF  RB
         MOVF   RB,W
         ANDLW  B'00001111'
         MOVWF  BUFFER
         MOVLW  B'00001111'
         XORWF  BUFFER,W
         SKPNZ
         GOTO   XYB2
         MOVWF  BUFFER1
         MOVLW  5
         MOVWF  JIANZHI
         GOTO   QJZ

XYB2     MOVLW  B'10111111'
         MOVWF  RB
         MOVF   RB,W
         ANDLW  B'00001111'
         MOVWF  BUFFER
         MOVLW  B'00001111'
         XORWF  BUFFER,W
         SKPNZ
         GOTO   XYB3
         MOVWF  BUFFER1
         MOVLW  9
         MOVWF  JIANZHI
         MOVF   RB,W
         MOVWF  BIJIAO
         GOTO   QJZ

XYB3     MOVLW  B'01111111'
         MOVWF  RB
         MOVF   RB,W
         ANDLW  B'00001111'

  MOVWF  BUFFER
         MOVLW  B'00001111'
         XORWF  BUFFER,W
         SKPNZ
         RETLW  0
         MOVWF  BUFFER1
         MOVLW  0DH
         MOVWF  JIANZHI
         MOVF   RB,W
         MOVWF  BIJIAO

QJZ      MOVLW  1
         MOVWF  BUFFER2
         MOVLW  4
         MOVWF  COUNTER

QJZ1     MOVF   BUFFER1,W
         SUBWF  BUFFER2,W

SKPNZ
         RETLW  1
         RLF    BUFFER2,1
         INCF   JIANZHI,1
         DECFSZ COUNTER,1
         GOTO   QJZ1
         RETLW  0
;-------------------------------
;    測試程序(注意用法,鍵值放在JIANZHI里)
;-------------------------------
MAIN
         MOVLW  0
         TRIS   RC
         CLRF   RC
         MOVLW  B'00001111'     ;用RB口作4*4鍵盤
         TRIS   RB
LOOP     CLRF   RC
         CALL   SCANKEY
         ANDLW  0FH
         SKPNZ                  ;根據返回值不為零,判斷有無鍵按下

GOTO   LOOP
         MOVLW  0FH
         ANDWF  JIANZHI,W
         MOVWF  RC
         CALL   DELAY

LOOP1    MOVF   BUFFER1,W
         ANDWF  RB,W
         XORWF  BIJIAO,W
         SKPNZ
         GOTO   LOOP1
         GOTO   LOOP
;--------------
;-------------------------------
         END

欢迎光临: 类乌齐县| 泽州县| 阜新市| 金秀| 邢台市| 庆安县| 介休市| 江门市| 涿州市| 长寿区| 朝阳县| 平昌县| 钟祥市| 石嘴山市| 上高县| 横山县| 兴文县| 乌兰县| 东宁县| 巴东县| 万荣县| 吉林省| 开封县| 钟山县| 葵青区| 珠海市| 武安市| 湖州市| 吐鲁番市| 内乡县| 炎陵县| 禹州市| 荃湾区| 洮南市| 大城县| 灌云县| 乾安县| 隆尧县| 申扎县| 碌曲县| 揭阳市|