pin_change.dt

来自「台湾义隆(EM78P222N),DATASHEET.」· DT 代码 · 共 49 行

DT
49
字号
;Defined registers
IOC6      == 0X6
PDCR      == 0XB
PHCR      == 0XD
WDTCR     == 0XE
IMR       == 0XF
;
PORT6     == 0X6
WUCR      == 0XE
ISR       == 0XF          
          ORG       0X0
          NOP
          JMP       RESET              ;power on reset
          ;
          ORG       0X8
          NOP
          JMP       PIN_INT            ;interrupt vector
          ;
PIN_INT:
          BANK      0
          BC        ISR, 1             ;clear ICIF 
          RETI          
RESET:
          NOP
          CALL      INIT_222_DEVICE    ;Initial 222
          NOP
MAIN:
          NOP
          JMP        $
          ;
INIT_222_DEVICE:          
          MOV        A, @0B00011000
          BANK       1
          MOV        WDTCR, A          ;Select WDT prescaler,Disable WDT
          ;MOV        A, @0X0F
          ;MOV        PHCR, A           ;Set PORT6.4~7pull high
          CLR        PDCR              ;Set PORT6.0~7 pull down
          MOV        A, @0XFF
          MOV        IOC6, A           ;Set PORT6 as input
          WDTC                         ;Clear WDT and prescaler
          BANK       0
          MOV        PORT6, PORT6      ;read PORT6
          ENI                          ;Enable interrupt
          MOV        A, @0B00000010
          BANK       1
          MOV        IMR, A            ;Enable PORT6 input change interupt 
          RET
          ;
          END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?