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

📄 thso1.asm

📁 MCS96的源程序。用来给96单片机使用
💻 ASM
字号:
CL EQU 22H
CH EQU 23H
FLAG    EQU     30H
        ORG     2006H           ;HSO中断向量地址
        DW      HSO_INT
        ORG     2080H
        LD      SP,#60H
        DI                      ;关中断
        CLRB    INTPEN          ;清中断挂号寄存器
        ORB     INTMAS,#08H     ;允许HSO中断
        LDB     IOC0,#05H
        LDB     HSOCOM,#30H     ;允许HSO.0触发负电平
                                ;中断方式,启动HSO.0
        ADD     HSOTIM,TIMER1,#0030H
        NOP
        NOP
        LDB     HSOCOM,#31H     ;允许HSO.1触发负电平
                                ;中断方式,启动HSO.1
        ADD     HSOTIM,TIMER1,#0100H
        NOP
        NOP
        LDB     FLAG,IOS0       ;保存HSO当前状态
        EI                      ;开中断
        SJMP    $
HSO_INT:PUSHF                   ;HSO中断子程序
        LDB     CL,IOS0         ;读当前HSO状态
        LDB     CH,CL
        XORB    CL,FLAG         ;与原状态比较
        LDB     FLAG,CH
        JBC     CL,0,HSO1       ;HSO.0无跳变转HSO.1
        JBS     FLAG,0,LOW0
        LDB     HSOCOM,#30H     ;允许HSO.0触发正电平
                                ;中断方式
        ADD     HSOTIM,TIMER1,#800H
        NOP
        NOP
        SJMP    HSO1
LOW0:
        LDB     HSOCOM,#10H     ;允许HSO.0触发负电平
                                ;中断方式
        ADD     HSOTIM,TIMER1,#800H
        NOP
        NOP
HSO1:   JBC     CL,1,EXIT       ;HSO.1无跳变转EXIT
        JBS     FLAG,1,LOW1
        LDB     HSOCOM,#31H     ;允许HSO.1触发正电平
                                ;中断方式
        ADD     HSOTIM,TIMER1,#800H
        NOP
        NOP
        SJMP    EXIT
LOW1:
        LDB     HSOCOM,#11H     ;允许HSO.1触发负电平
                                ;中断方式
        ADD     HSOTIM,TIMER1,#400H
        NOP
        NOP
EXIT:   POPF
        RET
        END

⌨️ 快捷键说明

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