历史上的今天
返回首页

历史上的今天

今天是:2024年09月04日(星期三)

正在发生

2019年09月04日 | 51单片机系列知识8--定时器、计数器(1)

2019-09-04 来源:eefocus

几个相关的概念:


1、时钟与机器周期


时钟电路是计算机的心脏,它控制着计算机的工作节奏。时钟信号的频率称为振荡频率或时钟频率。振荡频率的倒数为振荡周期。


规定了每个机器周期包括6个状态周期(用s)表示,每个状态周期划分为两个节拍,分别对应着两个节拍时钟的有效期间。因此,一个机器周期有12个振荡周期,分别为S1P1、S1P2、S2P1…….S6P2


i. 与定时器、计数器有关的寄存器


方式寄存器TMOD

image.png?imageView2/2/w/550

定时器方式和外部事件计数方式的差别是计数脉冲源和用途的不同,C/T的实质是选择计数脉冲源。


对外部输入脉冲计数的目的通常是为了测试脉冲的周期、频率或对输入的脉冲数进行累加。


△ 计算脉冲的周期、频率是否用到了输入捕捉方式?


GATE=1时。定时器的计数受外部引脚输入电平的控制。


GATE=0时,定时器的计数不受外部引脚输入电平的控制。


INTO控制T0的计数,INT1控制T1的计数。


控制寄存器TCON

image.png?imageView2/2/w/550

特殊功能寄存器TCON的高4位为定时器的计数控制位和溢出标志位,低4位为外部中断的触发方式控制位和锁存外部中断请求源。


TR0:定时器T0的运行控制位。由软件置位和清“0”

image.png?imageView2/2/w/550

△ 加入GATE=1时,引入INTO信号的目的是什么?


TF0:T0的溢出标志:TF0可由程序查询和清“0”。 TF0也是中断请求源,当CPU响应T0中断时由硬件清“0”TF0。


TR1、TF1类是TR0、TF0


T2的状态控制寄存器


image.png?imageView2/2/w/550

ii. 工作方式


51系列单片机定时器T0有四种工作方式:方式0、方式1、方式2、方式3


定时器T1有三种工作方式:方式0、方式1、方式2


52系列单片机除拥定时器T0、T1外还有定时器T2


定时器T2有三种工作方式:捕捉方式、常数自动再装入方式和串口的波特率发生器方式。


方式0:13位的定时器/计数器


如定时器T0,方式0为13位计数器,由TL0的低5位与TH0的8位组成,TL0低5计数溢出时向TH0进位,TH0计数溢出时置“1”溢出标志TF0。定时器T0方式0的结构框图见教材P115。


定时器初值计算公式:设计数初值为a,则T=12/fosc×(213-a)us


方式1:16位的定时器/计数器


基本类同方式0


方式2:常数自动重新装入的8位定时器/计数器


方式2为自动恢复初值的8位计数器。TL0作为8位计数器,TH0作为计数初值寄存器。当TL0计数溢出时,计数器完成两项工作。①置位“1”溢出标志TF0,向CPU请求中断②将TH0内容送TL0,使TL0从初值开始重新加1计数。


T0工作于方式2定时,有点:精度比较高;缺点:定时时间小


T=12/fosc×(28-a)


分析:T0工作于方式0和方式1时,定时产生误差的原因?


T0工作于方式0、方式1,初值a是由中断服务程序恢复,而CPU响应T0溢出中断的时间随程序状态的不同而不同。


(CPU执行指令不同或者在执行其他中断程序都影响响应时间)


CPU响应中断之前T0从0开始继续计数,CPU响应中断时又从初值开始计数,这样是定时产生误差。


△ 误差来源即是T0从0开始计数到T0再次从初值开始计数这之间少计的脉冲。


方式3:仅适用于T0,两个8位计数器


T1设为方式3时,停止计数。T0分为两个独立的8位计数器TL0和TH0.


TL0使用T0的所有状态控制位GATE、TR0、INT0(P3、2)、T0(P3、4)、TF0


TH0被固定为一个8位定时器方式,使用T1的窗台控制位TR1、TF1。


一般情况下,只有当T1用于串行口的波特率发生器时,T0才在需要时选工作方式3,一增加一个计数。


此时T1的运行由方式来控制,方式3停止计数,方式0~2允许计数,计数溢出时不置“1”标志TF1。定时器T1作为波特率发生器时,应禁止T1中断。T1工作于定时方式(C/T=0),计数脉冲为振荡器的十二分频信号。也可以选择外部T1(P3-5)上的输入脉冲作为T1计数信(C/T=1).T1的溢出率又和它的工作方式有关,一般选方式2定时。


△ 其实只能选择方式2作为计数器(定时方式)的工作方式,因为方式2是自动重装初值的方法。由于计数溢出时并不置位“1”标志TF1,CPU不响应中断,方式0、方式1重赋初值一般都放在中断服务程序中,所有计数器在溢出后总是从0开始计数,由此而得到波特率便不是我们所涉及要求的(为2SMOD×fosc/32×12×256)

推荐阅读

史海拾趣

Custom Components Inc公司的发展小趣事

在电子行业快速发展的背景下,客户对电子元件的定制化需求日益增长。CCI敏锐地捕捉到了这一市场趋势,迅速调整战略方向,将业务重心转向客户定制化服务。

为了满足客户多样化的需求,CCI加强了与客户的沟通与合作,深入了解客户的具体需求和应用场景。公司不仅提供标准产品,还能根据客户的特殊需求进行定制化设计和生产。这种服务模式赢得了客户的广泛认可,CCI的市场份额也随之稳步提升。

Forge Europa Ltd公司的发展小趣事

Forge Europa Ltd公司深知可持续发展对于企业和行业的重要性。因此,公司在生产过程中始终坚持绿色、环保的理念,致力于减少能源消耗和环境污染。公司采用了先进的生产技术和设备,提高了生产效率和资源利用率,同时加强了废弃物的处理和回收工作。此外,Forge Europa还积极参与各类环保活动,倡导绿色消费和低碳生活,为行业树立了可持续发展的典范。

ABL Heatsink公司的发展小趣事

在国内市场取得一定成绩后,ABL Heatsink公司开始将目光投向国际市场。公司首先在欧洲设立了分公司,随后又在美国、亚洲等地建立了销售网络。通过不断优化产品和服务,ABL Heatsink成功打入国际市场,实现了公司的全球化发展。

这些故事虽然基于虚构,但它们反映了电子行业中散热器公司可能经历的一些典型发展轨迹。当然,每个公司的实际发展情况都会有所不同,具体的故事还需要根据公司的实际情况来撰写。

Gamewell-FCI ( Honeywell )公司的发展小趣事

ABL Heatsink公司在发展过程中,积极寻求与其他企业的合作。通过与芯片制造商、电子设备生产商等建立紧密的合作关系,ABL Heatsink成功将自己的散热器产品集成到各种高端电子设备中。这种合作模式不仅提升了公司的知名度,也带来了稳定的订单和收入。

GE Industrial Solutions公司的发展小趣事
通过输入不同幅度的信号,测量输出信号的幅度,并计算输入输出之间的线性关系。
Eclipse Magnetics公司的发展小趣事
使用噪声测试仪测量输出信号的噪声水平,确保满足应用需求。

问答坊 | AI 解惑

出路

做为技术人员,大家都觉得工资高,工作稳定,还能学到很多的东西。是大部份走出校门或性格内向,或希望过平静的人的必然选择。其实,你们有没有问过自己,这条路到底走对了吗?    一个刚毕业的大学生,从事销售和从事技术两种不同的工作,可能 ...…

查看全部问答>

FPGA的下载问题还没解决啊

fpga的下载问题 我目前在使用altera 的cyclone EP28 ,在程序下载的过程中出现一个奇怪的问题。 使用quartusII打开programmer,点击start按钮,出现以下错误: Error: Can\'t access JTAG chain Error: Operation failed 我用的是开发板啊!J ...…

查看全部问答>

可控硅控制

可控硅能够控制容性负载吗?怎么控制啊?阻性负载和感性负载都能够控制,就是控制不了容性负载啊!…

查看全部问答>

继续菜鸟问题。。Combo box 显示问题

case WM_CREATE:     CreateWindow(TEXT(\"Combo Box\"),TEXT(\"\"), WS_VSCROLL | WS_BORDER | WS_VISIBLE | WS_CHILD,                  100, 100, 205, 100, hWnd, (H ...…

查看全部问答>

evb RDA对象的pull方法使用出错

执行的代码如下: Dim strSQL As String dim strRemoteConnect as String strSQL = \"SELECT * from a\" strRemoteConnect=\"Provider=SQLOLEDB.1;data source=local;Initial Catalog=DBTest;user id=sa;password=sa\" Dim ceRDA As SSCE.Remo ...…

查看全部问答>

请教如何使点阵液晶显示图形?

我用的是320×240图形点阵液晶,现在可以在上面显示汉字了。 老板要求显示各种波形,请教高手那里可以找到这方面的资料,听说 要建立坐标系,还要研究各种图形的算法,有这么复杂吗?哪里能找 到这方面的资料? 谢谢您的关注!…

查看全部问答>

想学FPGA,求各位大师推荐一块学习板,谢谢!

我是一个学生,不要太贵的那种,差不多就行,谢谢!…

查看全部问答>

如何判断HR会录用你?

最近是找工作的高峰期,请参加过面试得朋友谈谈如何从等消息中判断自己是否有戏和谈谈自己的面霸经历为后面的应届生介绍些经验。人生最痛苦的莫过于什么也不知道就是等消息~~~~~~~~~~~~~~~~~…

查看全部问答>

电话线-偷电

       十一过完,学校就又开始讨厌的晚上11点断电了,没灯没充电器~~烦!!!        我左眼一瞄,电话线就这么断着的挂在那里,岂不是很危险,测测电压,我*!!!48V直流!!!顿时,一个邪恶的念头就 ...…

查看全部问答>