×
单片机 > 单片机程序设计 > 详情

r8051xc2定时器2的用法

发布时间:2021-06-02 发布时间:
|

T2CON----定时器2控制寄存器


t2con.7---t2ps:时钟的选择


0:定时器2的clocked是1/12的振荡器频率


1:定时器2的clocked是1/24的振荡器频率


t2con.6---3fr :外部中断int3的活跃选择(也用来比较和获取信号)


0 :falling edge

1 :rising edge


t2con.5---i2fr:外部中断int2的活跃选择(也用来比较和获取信号)


0 :falling edge

1 :rising edge


t2con.4---t2r1:定时器2的加载模式选择


t2con.3---t2r0:定时器2的加载模式选择


0X – reload disabled

10 – Mode 0

11 – Mode 1


t2con.2---t2cm:定时器2的比较模式选择


0 – Mode 0

1 – Mode 1


t2con.1 ---t2i1:timer2的输入选择


t2con.0---t2i0:timer2的输入选择


t2i1:t2i0


0:0 timer 2 stopped


0:1 输入频率f/12或者f/24


1:0 通过检测T2口的下降沿来增加定时器2


1:1 由外部脚t2输入频率f/12或者f/24


/*

程序用途:timer2自动填装控制

版本号: V1

创建日期:2013.9.22

创建者:

*/

$NOMOD51

#include"REG8F301.INC"


dseg at 30h

iseg at 80h

cseg at 00h

org 0000H

jmp start

org 002bh

jmp Timer2_Isr

start:

mov ckcon,#50h

mov r0,#0x7f

ClrRam:

mov @r0,#0

djnz r0,ClrRam

mov dptr,#0x00

ClrOutRam:

mov a,#0x00

movx @dptr,a

inc dpl

mov a,dpl

cjne a,#0,ClrOutRam

inc dph

mov a,dph

cjne a,#3,ClrOutRam

SetTimer2:

mov tl2,#00h

mov th2,#00h

mov crch,th2

mov crcl,tl2

mov T2con,#11h //选择模式0自动加载,选择f/12分频

setb ET2

setb EA

main:

ljmp main

Timer2_Isr:

push acc

push psw

nop

nop

pop psw

pop acc


END

/*


总结:

1.将crch,crcl里的值自动填充到tl2与th2

2.crcl加到0xFF时crch加1,crch溢出时产生中断,并自动填充

*/



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
stm32 总线矩阵介绍