定时器0工作模式3

image

此时低8位和高八位溢出时有分别的中断

tl0占用T0

th0占用T1

两个计数器是独立的

/*
   程序功能:timer0 的验证程序
   版本:v1
   创建日期:2013.9.18
    创建者:
 */
$NOMOD51                //取消使用51内部默认SFR
#include "REG8F301.INC"
dseg    at      30h          //通用RAM字节段从30H开始

iseg    at      80h     //0-ffh地址的RAM段     80h-ffh段RAM只能用间接寻址进行操作

cseg    at      0
        org        0000h
        jmp        Start
        org        000bh
        jmp        Timer0_Isr
        org        001bh
        jmp        Timer_Isr    //TH0此时占用定时器1
        org        0030h
start:
        mov        r0,#0x7f
ClrRam:                              //清内部256Byte RAM
        mov        @r0,#0
        djnz        r0,ClrRam    
        mov        dptr,#0x00      //清外部768Byte RAM
ClrOutRam:
        mov        a,#0x00         //给外部RAM全部写0x00
        movx        @dptr,a
        inc        dpl
        mov        a,dpl
        cjne        a,#0,ClrOutRam
        inc        dph
        mov        a,dph
        cjne        a,#3,ClrOutRam 
SetTimer0:                                         
        mov        tmod,#03h            //定时器1工作于模式1
        mov        th0,#HIGH(256-100)
        mov        tl0,#LOW(256-100)
        setb        tr0                      //开启定时器0计数
        setb        et0                    //允许定时器1中断
        setb        tr1                      //开启定时器1计数
        setb        et1                    //允许定时器1中断
        setb        ea
main:    
        ljmp        main

Timer0_Isr:
    push        acc
    push        psw
    mov        tl0,#LOW(256-100)
    nop
    nop
    pop        psw
    pop        acc
    reti
Timer_Isr:
    push        acc
    push        psw
    mov        th0,#LOW(256-100)
    nop
    nop
    pop        psw
    pop        acc
    reti
    end

转载于:https://www.cnblogs.com/yuqilihualuo/p/3330590.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值