em78p447 r-option_demo.dt

来自「EM78p447技术资料EM78p447技术资EM78p447技术资料」· DT 代码 · 共 56 行

DT
56
字号
;========================================================
;TITLE:EM78P447 R-OPTION FUNCTION 

;----------------------------------------------------------------------;
; Define MCU RAM or Variable Value
;----------------------------------------------------------------------;
STATUS      ==      0x03
PORT7       ==      0x07        ; PORT5端口
IOCE        ==      0x0E        ; WDT控制寄存器
Reg_acc     ==      0x20        ; 保存PORT7.0、PORT7.1状态寄存器
;----------------------------------------------------------------------
Z           ==      0x02
;------------------------------Demo Code------------------------------;
        MOV     A,@0BXXXXXX11
        IOW     PORT7              ;设置PORT7.0、PORT7.1为输入状态
        MOV     A,@0BXXXX1XXX
        IOW     IOCE               ;启用R-option功能
        MOV     A,PORT7           ;读出PORT7以取得PORT7.0、PORT7.1的R-option引脚状态
        AND     A,@0B00000011
        MOV     Reg_acc,A         ;保留PORT7.0、PORT7.1电平状态
        MOV     A,@0BXXXX0XXX
        IOW     IOCE               ;禁止R-option功能
        MOV     A,@0BXXXXXX00
        IOW     PORT7              ;设置PORT7.0、PORT7.1为输出状态
                                   ;在此之后PORT7可做为普通I/O口使用
                                   ;分支检测程序
        MOV     A, Reg_acc
        XOR     A, @0x00           ;判断是否满足条件1,满足则跳到分支程序1
        JBC     STATUS, Z          ;不满足条件1则继续判断
        JMP     Case1

        MOV     A, Reg_acc
        XOR     A, @0x01           ;判断是否满足条件2,满足则跳到分支程序2
        JBC     STATUS, Z          ;不满足条件2则继续判断
        JMP     Case2

        MOV     A, Reg_acc
        XOR     A, @0x02           ;判断是否满足条件3,满足则跳到分支程序3
        JBC     STATUS, Z          ;不满足条件3则继续判断
        JMP     Case3
        JMP     Case4              ;除以上三种条件外的第四种情况则跳至分支程序4

Case1:
                ; 用户程序
                
Case2:
                ; 用户程序
               
Case3:
                ; 用户程序
               
Case4:
                ; 用户程序

         END

⌨️ 快捷键说明

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