timer2.asm

来自「Small RTOS51是为51系列单片机而编写的。它是完全免费的、源代码公开的」· 汇编 代码 · 共 39 行

ASM
39
字号
;**************************************************
;    平凡单片机工作室
;  http://www.mcustudio.com
;   (c) Copyright 2003 Pingfan's McuStudio
;    All rights Reserved
;timer2.asm
;作者:周坚   
;功能描述:中断方式实现的定时时间为60毫秒的定时器
;本例可用DSB-1A型单片机实验板验证
;本例可用实验仿真板验证,但不能保证时间准确
;**************************************************

    ORG     0000H
    AJMP    START
    ORG     000BH           ;定时器0的中断向量地址
    AJMP    TIME0           ;跳转到真正的定时器程序处
    ORG     30H
START:
    MOV     P1,#0FFH        ;关所灯
    MOV     TMOD,#00000001B ;定时/计数器0工作于方式1
    MOV     TH0,#15H 
    MOV     TL0,#0A0H       ;即数5536
    SETB    EA              ;开总中断允许
    SETB    ET0             ;开定时/计数器0允许
    SETB    TR0             ;定时/计数器0开始运行
LOOP:   
    AJMP    LOOP            ;真正工作时,这里可写任意程序
TIME0:                      ;定时器0的中断处理程序
    PUSH    ACC
    PUSH    PSW             ;将PSW和ACC推入堆栈保护
    CPL     P1.0 
    MOV     TH0,#15H
    MOV     TL0,#0A0H       ;重置定时常数
    POP     PSW
    POP     ACC
    RETI
END

⌨️ 快捷键说明

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