访问手机版页面
你的位置:老古开发网 > 51单片机定时器 > 正文  
mcs51单片机计数器工作方式1 计数初值计算与定时编程举例
内容导读:
方式1是16位计数结构的工作方式,计数器由TH0全部8位和TL0全部8位构成。与工作方式0基本相同,区别仅在于工作方式1的计数器TL1和TH1组成16位计数器,从而比工作方式0有更宽的定时/计数范围。当为计数工作方式时,计数

方式1是16位计数结构的工作方式,计数器由TH0全部8位和TL0全部8位构成。与工作方式0基本相同,区别仅在于工作方式1的计数器TL1和TH1组成16位计数器,从而比工作方式0有更宽的定时/计数范围。


当为计数工作方式时,计数值的范围是:


1~65536(216)


当为定时工作方式时,定时时间计算公式为:

(216-计数初值)×晶振周期×12


或(216-计数初值)×机器周期


例题1:当某单片机系统的外部晶振频率为6MHz,则最小定时时间为:


[216-(216-1)]×1/6×10-6×12=2×10-6=2(ms)


最大定时时间为:

(216-0)×1/6×10-6×12=131072×10-6(s)=131072(ms)≈131(ms)


例题2:某单片机系统外接晶振频率为6MHz,使用定时器1以工作方式1产生周期为500ms的等宽连续正方波脉冲,并在P1.0端输出,但以中断方式完成。


⑴计算计数初值


TH1=FFHTL1=83H


⑵TMOD寄存器初始化

TMOD=10H

⑶程序设计

主程序:


MOV TMOD,#10H;定时器1工作方式1

MOV TH1,#0FFH;设置计数初值


MOV TL1,#0A1H

SETB EA;开中断


SETB ET1;定时器1允许中断


LOOP:SETB TR1;定时开始

HERE:SJMP$;等待中断


中断服务程序:


MOV TH1,#0FFH;重新设置计数初值

MOV TL1,#0A1H


CPL P1.0;输出取反


RETI;中断返回


标签: mcs51,单片机,工作方式,计数器,
来源:互联网 作者:karen 时间:2019/1/7 15:40:01
相关阅读
推荐阅读
阅读排行
最近更新
商品推荐