找回密码
 注册
关于网站域名变更的通知
查看: 346|回复: 1
打印 上一主题 下一主题

单片机定时器的应用与误差纠正

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-3-11 09:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
单片机定时器的应用与误差纠正
6 W, q" R3 s8 _: O. J4 \* A1 N+ M2 T, ~" o' j7 F/ _
3 Z3 I2 z7 y1 I! Q' }

定时器是MCS -51单片机非常重要的组成部分,由于其应用与单片机的其他硬件相关,存在着一定的复杂性[1]。而定时器是单片机应用中解决某类复杂问题的最有为效的方法,应用非常广泛。随着定时要求的提高,在定时处理过程中所带来的误差需要校正[2],本文就MCS-51单片机的使用方法与误差校正方法进行了讨论,并给出通用算法与程序。

2定时器工作方式与方式设置

MCS-51单片机有两路独立的定时器,每路定时器有4种工作方式(0~3),方式0是13位计数结构,计数器由TH全部8位与TL的低5位构成;方式 1是16位计数结构,计数器由TH与TL全部8位共16位组成;方式2是8位计数结构方式,计数器由TL8位组成,与其他方式不同的是,当定时溢出时,硬件自动将TH的值装入TL中,有自动加载功能。前三种工作方式,两路定时器的设置与使用完全相同,但在工作方式3下,两路定时器有很大差别,只有0路定时器可以工作在方式3下,1路定时器只能工作在方式0~2下,在工作方式3下,0路定时器被拆分成两个独立的8位计数器TL0与TH1,其中0路定时器的各控制位和引脚信号全归TL0使用,因此TH0只能做简单的定时器使用,其控制位占用了1路定时器的控制位,如果0路定时器工作在方式3下,1路定时器由于让出了所属控制位,通常作为串行口波特率发生器[3]。

定时器的工作方式选择主要依靠设置TMOD寄存器的值,其各位定义如下: 位序 B7 B6 B5 B4 B3 B2 B1 B0

位符号 GATE C/T M1 M0 GATE C/T M1 M0

其中,B0~B3用来控制0路定时器,B4~B7用来控制1路定时器。

GATE位为门控位,主要确定定时器启动的方式,如果GATE=0,则用TR0(TR1)位启动/关闭定时器,如果GATE=1,则以外中断请求信号(INT0或INT1)启动定时器。

C/T位为定时与计数选择位,C/T=0为定时方式,C/T=1为计数方式。

M0、M1为工作方式选择位

M1M0=00方式0M1M0=10方式2

M1M0=01方式1M1M0=11方式3

选择定时器工作方式,应根据上述规定向寄存器TMOD中写入相应数,如设置0路定时器工作在定时方式0下,1路定时器工作在方式1下,则应用下列指令设置:

MOVTMOD,#10H

游客,如果您要查看本帖隐藏内容请回复


  W. h( G4 t) R

该用户从未签到

2#
发表于 2019-3-11 22:06 | 只看该作者
学习一下,谢谢楼主分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-30 19:55 , Processed in 0.078125 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表