⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 led-2.dt

📁 义隆单片机控制8个LED的渐明渐暗
💻 DT
字号:
;==========================================
;153IN_Tcc.dt源码(以中断方式实现内部TCC功能)
;crystal=4MHZ
;============================================
;----------------------------------------------------------------------;
; Define MCU RAM or Variable Value
;----------------------------------------------------------------------;
TCC         ==      0x01        ; TCC计数器
STATUS      ==      0x03        ; 状态寄存器
PORT5       ==      0x05        ; PORT5端口
IOCE        ==      0x0E        ; WDT控制寄存器
IOCF        ==      0x0F        ; 中断控制寄存器
ISR         ==      0x0F        ; 中断状态寄存器
TEMP_A   ==      0x20        ; 保存中断前A的值
TCC_Count   ==      0x21        ; 自定义计数器
        num     ==      6
;----------------------------MAIN PROGRAM------------------------------;
        ORG     0x00
        JMP     TCC_Start

        ORG     0x08
;----------------------------------------------------------------------;
TCC_int:
        MOV     TEMP_A, A    ; 保存A的值
        MOV     A, @0x06        ; TCC计数次数=250
        MOV     TCC, A          ; 置TCC初始
        MOV     A, @0xFE        ; 保留不需要设置的状态位
        AND     ISR, A          ; 清中断标志位

        INC     TCC_Count       ; 每中断一次TCC_Count计数器加1
        JBS     STATUS, 2       ; 判断TCC_Count是否溢出
        JMP     Int_out         ; 没有溢出
        MOV     A, @num         ; 溢出
        MOV     TCC_Count, A    ; 重新置TCC初值

        MOV     A, @0x02        ; 每半秒PORT5.1(可接LED灯)取反
        XOR     PORT5, A
Int_out:
        MOV     A, TEMP_A    ; 恢复A的值
        RETI                    ; 中断返回
;----------------------------------------------------------------------;
TCC_Start:
        MOV     A, @0x00
        IOW     IOCE            ; 关闭看门狗
        MOV     A, @0x00
        IOW     PORT5              ; Port5为输出口
        BC      PORT5, 1           ; 关闭LED灯

        CONTR
        MOV     A, @0b11010000  ; 保留不需要设置的状态位
        OR      A, @0b00000011  ; 预除数为16
        CONTW

        MOV     A, @0x01           ; 允许计数器中断
        IOW     IOCF
        ENI                     ; 开中断

        JMP     $
        END

⌨️ 快捷键说明

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