概述
T2CON----定时器2控制寄存器
t2con.7---t2ps:时钟的选择
0:定时器2的clocked是1/12的振荡器频率
1:定时器2的clocked是1/24的振荡器频率
t2con.6---3fr :外部中断int3的活跃选择(也用来比较和获取信号)
0 :falling edge
1 :rising edget2con.5---i2fr:外部中断int2的活跃选择(也用来比较和获取信号)
0 :falling edge
1 :rising edget2con.4---t2r1:定时器2的加载模式选择
t2con.3---t2r0:定时器2的加载模式选择
0X – reload disabled
10 – Mode 0
11 – Mode 1t2con.2---t2cm:定时器2的比较模式选择
0 – Mode 0
1 – Mode 1t2con.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溢出时产生中断,并自动填充 */
转载于:https://www.cnblogs.com/yuqilihualuo/p/3331749.html
最后
以上就是称心睫毛为你收集整理的r8051xc2定时器2的用法的全部内容,希望文章能够帮你解决r8051xc2定时器2的用法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复