51单片机定时器原理及相关器件

注:大部分图片来自B站:江科大自化协

目录

定时器

定时器作用

定时器的常用模式

中断系统

中断号

寄存器

 寄存器详解


定时器

定时器作用

(1)用于计时系统,可实现软件计时,或者使程序每隔一固定时间完成一项操作

(2)替代长时间的Delay,提高CPU的运行效率和处理速度

注:Delay是单片机程序中常用的延迟函数。

·  定时器会根据时钟的输出信号,每隔一段时间使计数单元的数值加一,当计数单元的数值达到我们所定的数值是,就会触发中断系统。

定时器的常用模式

16位

 TL和TH:表示计数系统能计两个字节,高字节是TH,低字节是TL, 0表示定时器0。

总共可以存65535这么大的数。

Q:那么计数系统如何工作呢?

A:时钟每隔一段时间会给计数单元一个脉冲,这16计数器的值就会+1。

Q:如果加满了,即计数单元数值达到65535会产生什么?

A:数值溢出,计数器回到0的位置,即又回到最初的起点~。数值满的时候,由TF0(中断系统处)向中断系统申请中断。

时钟: SYSclk:系统时钟,即晶振周期,本开发板上的晶振为12MHz。

            T0 Pin:是单片机一个外部接口(在原理图CPU处可见)。

常用的是SYSclk,定时器会将12M进行分频,看一下上面的图,如果是12T分频就是将12M进行12分频,则输出的频率就是1MHz,1MHz对应的时间周期就是1微秒。即计数单元每1微秒就要计一次数。

中断系统

中断系统是为使CPU具有对外界紧急事件的实时处理能力而设置的。

比如说你明天早上八点开会,你定一个八点的闹钟,等闹钟响了你就知道要去开会了,这时候你就要放下手中的事情去开会,开完会回来你就会继续干刚才的事情。

Q:如果同时有好几件事情需要你放下手中的工作呢?

A:那就要自己划分轻重缓急将这几件事情进行排队,单片机的CPU总是先响应优先级最高的中断请求。

Q:如果CPU在执行一个中断请求时,突然出现另一个比它优先级要高的中断请求怎么办?

A:这么说吧,比如你在喝茶视为一个中断,这时你的老板让你帮忙买东西,你肯定要觉得老板的这个中断请求要比你这个喝茶的中断优先级要高,所以你肯定要先去处理老板的要求,返回来再继续工作。   在CPU中这叫做中断嵌套。   优先级中断可以打断优先级中断。

中断执行顺序如下:

注:一般现在的51单片机把优先级分为四个等级,中断源可以有8个。

中断号

寄存器

单片机通过配置寄存器来控制内部线路的连接,通过内部线路不同连接方式来实现不同电路,不同电路完成不同的功能。   

因此我们写关于定时器的代码主要关注寄存器

下面是一些主要的寄存器:

 寄存器详解

接下来就是从单片机手册中截取的寄存器解释以及用法

 注:因为我们通常使用16位定时器,所以要把M1、M0设置为0  1

 

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
C51单片机是一种被广泛应用于嵌入式系统中的单片机,它拥有强大的定时器功能和控制能力。定时器的作用是为系统提供准确的时间基准,而数码管则是一种常见的显示器件,可以用来显示数字或其他字符。 在C51单片机上使用定时器驱动数码管的过程分为以下几个步骤: 1. 配置定时器:首先需要配置定时器的工作模式和计数器的初始值。C51单片机通常会提供相关的寄存器用于设置定时器的参数。 2. 中断设置:为了控制定时器的运行以及定时器溢出时数码管的刷新,通常需要使用中断机制。需要设置相关的中断向量、使能中断以及编写中断服务函数。 3. 时钟源选择:C51单片机通常提供多个时钟源,可以选择不同的时钟源作为定时器的输入信号。根据具体情况选择合适的时钟源,以及设置频率分频系数。 4. 数码管驱动:在定时器中断服务函数中,可以通过控制数码管的引脚电平来实现数码管的刷新。根据需要,可以使用四位数码管、七段数码管或其他类型的数码管。 5. 数字显示:通过在定时器中断服务函数中编写相应的逻辑代码,可以将要显示的数字或其他字符通过设置数码管引脚电平实现。 最后,进行编译、烧录等操作,使程序在C51单片机上运行,实现定时器驱动数码管显示功能。这样,就可以根据定时器的计时精度和频率要求,实现数码管的准确显示。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Perfectkn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值