80C51单片机的定时计数器

合集下载

第四章-80C51单片机的功能单元

第四章-80C51单片机的功能单元

第四章80C51单片机的功能单元4·1 80C51的四个I/O口在使用上有哪些分工和特点?试比较各分工的特点? 试比较各口的特点?何谓分时复用总线?P3口的第二变异功能有哪些?答:(1)80C51的四个I/O口在使用上的分工和特点①P0口: 可作通用I/O口用,也可作地址/数据线用。

作通用I/O口用时,输出级为开漏极电路,在驱动外部电路时应接上拉电阻;在接有外部存储器时,P0口作地址/数据线用,先输出低8位地址到外部地址锁存器,后输人指令代码或输人/输出数据。

②Pl口: 是一个8位准双向口,作通用I/O口用。

③P2口: 是一个8位准双向口,作通用I/O口用。

当外部接有存储器时,可用于输出高8位地址。

④P3口: 是一个多功能端口。

其基本功能仍然是通用I/O口,使用时与Pl、P2口类似。

其第二功能则是串行口、外部中断线、定时器/计数器的输入及外部数据存储器的选通信号等。

(2)分时复用总线分时复用总线是:在一组总线上,在不同的时间,有时输出地址,有时输人代码或输出/输人数据。

例如,P0口和P2口就组成了一组地址/数据复用总线。

(3)P3口的第二变异功能第一功能第二变异功能串行口:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)中断:P3.2 INT0外部中断0P3.3 INT1外部中断1定时器/计数器(T0、T1):P3.4 T0(定时器/计数器0的外部输入)P3.5 T1(定时器/计数器1的外部输入)数据存储器选通:P3.6 WR(外部存储器写选通,低电平有效,输出)P3.7 RD(外部存储器读选通,低电平有效,输出)4·2 80C51端口P0~P3作通用I/O 口时,在输入引脚数据时,应注意什么?答:p0~p3作通用I/O口在输入引脚数据时,应先用软件向口的输出锁存器写1。

4·3 "读一改一写"指令有何特点? 请至少列出五条不同操作的"读—改一写"指令。

80c51单片机定时器计数器工作原理

80c51单片机定时器计数器工作原理

80c51单片机定时器计数器工作原理80C51单片机是一种常用的微控制器,其定时器/计数器(Timer/Counter)是实现定时和计数功能的重要组件。

以下简要介绍80C51单片机定时器/计数器的工作原理:1. 结构:定时器/计数器由一个16位的加法器构成,可以自动加0xFFFF(即65535)。

定时器/计数器的输入时钟可以来自系统时钟或外部时钟源。

2. 工作模式:定时模式:当定时器/计数器的输入时钟源驱动加法器不断计数时,可以在达到一定时间后产生中断或产生其他操作。

计数模式:当外部事件(如电平变化)发生时,定时器/计数器的输入引脚可以接收信号,使加法器产生一个增量,从而计数外部事件发生的次数。

3. 定时常数:在定时模式下,定时常数(即定时时间)由预分频器和定时器/计数器的初值共同决定。

例如,如果预分频器设置为1,定时器/计数器的初值为X,那么实际的定时时间 = (65535 - X) 预分频系数输入时钟周期。

在计数模式下,定时常数由外部事件发生的时间间隔决定。

4. 溢出和中断:当加法器达到65535(即0xFFFF)时,会产生溢出,并触发中断或其他操作。

中断处理程序可以用于执行特定的任务或重置定时器/计数器的值。

5. 控制寄存器:定时器/计数器的操作可以通过设置相关的控制寄存器来控制,如启动/停止定时器、设置预分频系数等。

6. 应用:定时器/计数器在许多应用中都很有用,如时间延迟、频率测量、事件计数等。

为了充分利用80C51单片机的定时器/计数器功能,通常需要根据实际应用需求配置和控制相应的寄存器,并编写适当的软件来处理定时器和计数器的操作。

80C51单片机的定时计数器

80C51单片机的定时计数器

80C51单片机的定时计数器定时计数器的控制寄存器<>定时器/计数器的工作方式1.定时器/计数器的工作方式0<1)电路逻辑结构当图6-7中的计数器=13位<TH的8位与TL低5位)即得方式0的逻辑电路图。

<2)工作方式0的特点①两个定时器/计数器T0、T1均可在方式0下工作;②是13位的计数结构,其计数器由TH全部8位和TL的低5位构成<高3位不用);③当产生计数溢出时,由硬件自动给计数溢出标志位TF0<TF1)置1,由软件给TH,TL重新置计数初值。

应说明的是,方式0采用13位计数器是为了与早期的产品兼容,计数初值的高8位和低5位的确定比较麻烦,所以在实际应用中常由16位的方式1取代。

2.定时器/计数器的工作方式1<1)电路逻辑结构方式1是16位计数结构的工作方式,计数器由TH全部8位和TL全部8位构成。

其逻辑电路如图6-11所示。

<2)工作方式1的特点①两个定时器/计数器均可在方式1下工作;②是16位的计数结构,其计数器由TH的全部8位和TL的全部8位构成;③当产生计数溢出时,由硬件自动给计数溢出标志位TF0<TF1)置1,由软件给TH,TL重新置计数初值。

<3)计数/定时的范围在方式1下,当为计数工作方式时,由于是16位的计数结构,所以计数范围是:1~65536。

当为定时工作时,其定时时间=<216-计数初值)×机器周期,例如:设单片机的晶振频率f=12MHz,则机器周期为1μs,从而定时范围:1μs~65536μs。

因为80C51单片机的定时计数器是可编程的。

因此,在利用定时/计数器进行定时计数之前,先要通过软件对他进行初始化,初始化一般应进行如下工作:①设置工作方式,即设置TMOD中的各位GATE、C/T、M1M0。

②计算加1计数器的计数初值COUNT,并将计数初值COUNT 送入TH、TL中。

计数方式:计数值 = 2n – COUNT ,计数初值:COUNT= 2n –计数值。

定时器计数器答案

定时器计数器答案

定时器/计数器6·1 80C51单片机内部有几个定时器/计数器?它们就是由哪些专用寄存器组成? 答:80C51单片机内部设有两个16位的可编程定时器/计数器,简称为定时器0(T0)与定时器l(Tl)。

在定时器/计数器中的两个16位的计数器就是由两个8位专用寄存器TH0、TL0, THl、TLl组成。

6·2 80C51单片机的定时器/计数器有哪几种工作方式?各有什么特点?答:80C51单片机的定时器/计数器有4种工作方式。

下面介绍4种工作方式的特点。

方式0就是一个13位的定时器/计数器。

当TL0的低5位溢出时向TH0进位,而TH0溢出时向中断标志TF0进位(称硬件置位TF0),并申请中断。

定时器0计数溢出与否,可通过查询TF0就是否置位或产生定时器0中断。

在方式1中,定时器/计数器的结构与操作几乎与方式0完全相同,惟一的差别就是:定时器就是以全16位二进制数参与操作。

方式2就是能重置初值的8位定时器/计数器。

其具有自动恢复初值(初值自动再装人)功;能,非常适合用做较精确的定时脉冲信号发生器。

方式3 只适用于定时器T0。

定时器T0在方式3T被拆成两个独立的8位计数器TL0: 与TH0。

其中TL0用原T0的控制位、引脚与中断源,即:C/T、GATE、TR0、TF0与T0 (P3、4)引脚、INTO(P3、2)引脚。

除了仅用8位寄存器TL0外,其功能与操作与方式0、方式1完全相同,可定时亦可计数。

此时TH0只可用做简单的内部定时功能。

它占用原定时器Tl 的控制位TRl与TFl,同时占用Tl的中断源,其启动与关闭仅受TRl置1与清0控制。

6·3 定时器/计数器用做定时方式时,其定时时间与哪些因素有关?作计数时,对外界计数频率有何限制?答: 定时器/计数器用做定时方式时,其定时时间与时钟周期、计数器的长度(如8位、13位、16位等)、定时初值等因素有关。

作计数时,外部事件的最高计数频率为振荡频率(即时钟周期)的1/24。

定时计数器详解

定时计数器详解

mcs-51单片机计数器定时器详解【1】80C51单片机内部设有两个16位的可编程定时器/计数器。

可编程的意思是指其功能(如工作方式、定时时间、量程、启动方式等)均可由指令来确定和改变。

在定时器/计数器中除了有两个16位的计数器之外,还有两个特殊功能寄存器(控制寄存器和方式寄存器)。

:从上面定时器/计数器的结构图中我们可以看出,16位的定时/计数器分别由两个8位专用寄存器组成,即:T0由TH0和TL0构成;T1由TH1和TL1构成。

其访问地址依次为8AH-8DH。

每个寄存器均可单独访问。

这些寄存器是用于存放定时或计数初值的。

此外,其内部还有一个8位的定时器方式寄存器TMOD和一个8位的定时控制寄存器TCON。

这些寄存器之间是通过内部总线和控制逻辑电路连接起来的。

TMOD主要是用于选定定时器的工作方式;TCON主要是用于控制定时器的启动停止,此外TCON还可以保存T0、T1的溢出和中断标志。

当定时器工作在计数方式时,外部事件通过引脚T0(P3.4)和T1(P3.5)输入。

定时计数器的原理:16位的定时器/计数器实质上就是一个加1计数器,其控制电路受软件控制、切换。

当定时器/计数器为定时工作方式时,计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计满溢出为止。

显然,定时器的定时时间与系统的振荡频率有关。

因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。

如果晶振为12MHz,则计数周期为:T=1/(12×106)Hz×1/12=1μs这是最短的定时周期。

若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如8位、13位、16位等)。

当定时器/计数器为计数工作方式时,通过引脚T0和T1对外部信号计数,外部脉冲的下降沿将触发计数。

计数器在每个机器周期的S5P2期间采样引脚输入电平。

若一个机器周期采样值为1,下一个机器周期采样值为0,则计数器加1。

单片机原理及应用 第四章 80C51单片机的功能单元

单片机原理及应用 第四章 80C51单片机的功能单元

Vcc
R (上拉电阻)
P1·X 引脚
1
读引脚
输入缓冲器
驱动能力:P1、P2、P3可驱动4个LSTTL负载 P0可驱动8个LSTTL负载
2、用作输入口 两种工作方式:
读锁存器 读引脚
1)读锁存器
将端口锁存器的内容读入内部总线,经过运算和变换,再 写回到端口锁存器。
称为 读—修改—写指令
例:ANL P1,#0FH
1、用作输出口 可直接与外设相连,不必外加字锁节存寻器址
输出指令:
MOV P1,A MOV P1,#data
;MOV P1,Rn ;MOV P1,@Ri
MOV P1,direct 位操作
MOV P1.X , C
P1·0位
读锁存器
内部总线 1
写锁存器
例: MOV P1,#0FH
输入缓冲器
1 D P1·X Q CL 锁存器 Q 0
4、作为双向口使用 准双向口
80C51的4个I/O口在进行数据的输入输出操作时, 均可作为双向口使用。即,同一口线既作为输入 口,又用作输出口。
操作方法:以P1口为例 MOV P1, A
;直接使用输出指令
··· ··· MOV P1,#0FFH MOV A,P1
;锁存器置1 ;输入指令
80C51的P1由输出口转为输入口时,需先将锁 存器置1,然后使用输入指令。
P1、P2、P3口: 4个TTL负载
五、80C51的外部总线
4.2 定时/计数器
单片微机系统特点:面向测控系统
要求单片微机能够提供实时功能,以实现定时、 延时或实时时钟;也常要求计数功能,以实现 对外部事件计数
80C51系列单片微机提供2个(8051型)或3个 (8052型)16位的定时/计数器,可程控为4种 工作方式

51单片机定时计数器的工作原理

51单片机定时计数器的工作原理

51单片机定时计数器的工作原理
51单片机是一种常用的微控制器,它具有多个定时计数器,其中包括定时器0和定时器1。

这些定时计数器是通过内部时
钟源提供的脉冲进行计数的。

定时器0和定时器1是独立的计数器,它们可以用于不同
的应用。

这里我们将主要关注定时器0的工作原理。

定时器0
由一个八位计数器和一个控制寄存器组成。

当定时器0启动时,它会根据时钟源提供的脉冲进行计数,每个脉冲会使计数器的值增加1。

定时器0的计数范围为0-255,即八位二进制数。

通过控制寄存器,我们可以设置定时器0的工作模式、计
数器的初始值以及时钟源的频率。

定时器0可以以不同的方式工作,包括定时模式和计数模式。

在定时模式下,我们可以设置一个初始值,并在每次计数
器增加到该值时产生一个中断。

这样就可以实现精确的定时功能。

定时器0的中断服务程序可以完成各种操作,例如控制其他外设、延时等。

在计数模式下,定时器0将简单地计数外部触发信号的脉
冲次数。

这可以用于测量外部事件的时间间隔或频率。

需要注意的是,定时器0的工作需要通过编程来完成。


们可以使用汇编语言或C语言来配置定时器0的寄存器,并
设计相应的中断服务程序。

51单片机定时器的工作原理是通过定时器0和定时器1实
现计数功能。

定时器0可以在定时模式或计数模式下工作,通过设置计数值和时钟源频率,实现精确的定时功能或测量外部
事件的时间间隔或频率。

编程则是必不可少的,通过配置寄存器和编写中断服务程序来实现定时器的工作。

c51单片机计数器触发机制

c51单片机计数器触发机制

C51单片机的计数器是通过触发机制来工作的。

在C51单片机中,有两种常见的计数器类型:定时器和计数器/计时器。

1. 定时器(Timer):
定时器用于生成一定时间间隔的定时事件。

C51单片机中的定时器是基于内部或外部时钟源进行计数的。

当定时器达到设定的计数值时,会触发定时器中断,并执行相应的中断服务程序(ISR)。

可以使用定时器来生成精确的时间延迟、控制周期性任务等。

2. 计数器/计时器(Counter/Timer):
计数器/计时器可以用来计数外部事件的脉冲数量或测量时间间隔。

它可以根据外部事件的触发边沿(上升沿或下降沿)来触发计数动作。

当计数器达到设定的计数值时,也可以触发计数器中断,并执行相应的中断服务程序(ISR)。

计数器还可以被配置为计时器模式,用于测量时间间隔。

在C51单片机中,计数器的触发机制通常是通过设置相关的寄存器来实现的。

这些寄存器包括计数器的初始值、计数模式、计数触发边沿等。

通过配置这些寄存器,可以灵活地控制计数器的工作方式和触发条件。

需要注意的是,具体的计数器触发机制可能会因不同的单片机型号而有所差异。

因此,在编程时应参考相关的芯片手册或数据表,以了解具体的计数器触发机制及其相应的寄存器设置。

1。

80c51单片机习题与解答

80c51单片机习题与解答

80c51单片机习题与解答单片机作为一种嵌入式计算机芯片,具有体积小、功耗低、性能高的特点,被广泛应用于各个领域。

本文将针对80C51单片机进行一些常见的习题及其解答,旨在帮助读者更好地理解和掌握该单片机的应用。

1. 习题一:如何将80C51的IO口设为输入模式?解答:在80C51的寄存器中,P1是一个8位的数据口,可以通过以下操作将其设为输入模式:```assemblyMOV P1, #0FFH ;将P1口设置为输入模式```2. 习题二:如何用80C51实现定时器功能?解答:80C51具有一个可编程的定时器/计数器,可以通过以下步骤实现定时器功能:- 配置定时器的控制寄存器,选择定时器模式和工作方式;- 设置定时器的初始值;- 启动定时器;- 在定时器溢出时中断或轮询检测。

3. 习题三:如何使用80C51的串口通信功能?解答:80C51具有一个串行通信口(UART),可以通过以下步骤使用串口通信功能:- 配置串口控制寄存器,设置通信参数,如波特率、数据位数、停止位等;- 发送数据时,将要发送的数据写入SBUF寄存器;- 接收数据时,通过中断或轮询的方式读取SBUF寄存器中的数据。

4. 习题四:80C51的中断优先级如何设置?解答:80C51的中断有两级优先级:高优先级和低优先级。

优先级高的中断在发生时会立即被响应,而优先级低的中断则需要等待高优先级中断完成后才能响应。

中断优先级可通过设置中断控制寄存器来实现。

5. 习题五:如何通过80C51实现脉冲宽度调制(PWM)输出?解答:通过80C51的定时器功能和IO控制,可以实现脉冲宽度调制输出。

具体步骤如下:- 配置定时器为PWM模式;- 设置定时器的初始值和占空比;- 配置IO口,将其设为输出模式;- 当定时器计数值超过设定的脉冲宽度时,将IO口置1,否则置0。

6. 习题六:如何在80C51上实现ADC功能?解答:80C51本身没有ADC模块,但可以通过外部ADC芯片来实现模数转换功能。

单片机原理及应用第四版林立第六章选择题答案

单片机原理及应用第四版林立第六章选择题答案

第六章选择题(1)使80C51定时/计数器T0停止计数的C51命令为______。

A.IT0=0;B.TF0=0;C.IE0=0;D.TR0=0;(2)80C51单片机的定时器T1用作定时方式时是______。

A.由内部时钟频率定时,一个时钟周期加1 B.由内部时钟频率定时,一个机器周期加1C.由外部时钟频率定时,一个时钟周期加1 D.由外部时钟频率定时,一个机器周期加1(3)80C51单片机的定时器T0用作计数方式时是______。

A.由内部时钟频率定时,一个时钟周期加1 B.由内部时钟频率定时,一个机器周期加1C.由外部计数脉冲计数,一个脉冲加1D.由外部计数脉冲计数,一个机器周期加1(4)80C51的定时器T1用作计数方式时,______。

A.外部计数脉冲由T1(P3.5引脚)输入B.外部计数脉冲由内部时钟频率提供C.外部计数脉冲由T0(P3.4引脚)输入D.外部计数脉冲由P0口任意引脚输入(5)80C51的定时器T0用作定时方式时是______。

A.由内部时钟频率定时,一个时钟周期加1B.由外部计数脉冲计数,一个机器周期加1C.外部计数脉冲由T0(P3.4)输入定时D.由内部时钟频率定时,一个机器周期加1(6)设80C51晶振频率为12MHz,若用定时器T0的工作方式1产生1ms定时,则T0计数初值应为______。

A.0xfc18B.0xf830C.0xf448D.0xf060(7)80C51的定时器T1用作定时方式且选择模式1时,工作方式控制字为______。

A.TCON=0x01;B.TCON=0x0H;C.TMOD=0x10;D.TMOD=0x50; (8)80C51的定时器T1用作定时方式且选择模式2时,工作方式控制字为______。

A.TCON=0x60; B.TCON=0x02; C.TMOD=0x06; D.TMOD=0x20; (9)80C51的定时器T0用作定时方式且选择模式0时,C51初始化编程为______。

单片机 第四章答案

单片机  第四章答案

LP1: JBC TF0 ,LP2
JB P3.2 , LP1
INC R0
;低电平到,停止定时器1,存储单元地址加1
SJMP LP0
;低电平到,停止定时器1 宽度
LP2: INC @R0
;存储溢出次数加1ms
MOV TH0,#0FCH ;定时1ms
MOV TL0,#18H SJMP LP1
INT1
INT1 为高时T1 开始计数
中断程序结构框架
20.利用定时/计数器T0从P1.0输出周期为1s,脉宽为20ms的正 脉冲信号,晶振频率为12MHz。试设计程序。参照【例4-6】
解:因方式2是8位计数器,其最大定时时间为:256×1 s = 256 s,为实现1 s延时,
可选择定时时间为200 s,再循环5000次。定时时间选定后,可确定计数值为200,则定
时器0的初值为:X = M 计数值=256 200 = 56 。采用定时器0,方式2工作,因此,
TMOD =02H。
ORG 0000H
MOV TMOD,#02H ;置定时器0为方式2
MOV TH1,#56
;置定时器初值
MOV TL1,#56
CLR P1.0 MAIN: MOV R5,#50
;置20 ms计数循环初值 1s
②计算定时500us初值:方式0:X = 213 - 500 = 7692 = 1E0CH
ORG START:MOV
CLR CLR MOV MOV MOV SETB LOOP: JNB CLR MOV MOV INC CJNE MOV CPL JNB CPL SJMP END
0000H TMOD, #00H
ORG 0000H
START:MOV TMOD, #02H;定时器T0工作方式2

80C51单片机的引脚功能

80C51单片机的引脚功能

1.1 80C51单片机的引脚功能80C51系列中,用CHMOS工艺制造的单片机都采用双列直插式(DIP)40脚封装,引脚信号完全相同。

图2—9为引脚图,这40根引脚大致可分为:电源(V CC、V SS、V PP、V PD)、时钟(XTAL1、XTAL2)、I/O口(P0~P3)、地址总线(P0口、P2口)和控制总线(ALE、RST、、、)等几部分。

它们的功能简述如下:1.电源Vcc(引脚号40),芯片电源,接+5V;Vss(引脚号20),电源接地端.2.时钟XTAL1(引脚号18)内部振荡电路反相放大器的输入端,是外接晶振的一个引脚。

当采用外部振荡器时,此引脚接地。

XTAL2(引脚号19)内部振荡器的反相放大器输出端,是外接晶振的另一端。

当采用外部振荡器时,此引脚接外部振荡源。

3.控制总线(1)ALE/(引脚号30):正常操作时为ALE功能(允许地址锁存),用来把地址的低字节锁存到外部锁存器。

ALE引脚以不变的频率(振荡器频率的1/6)周期性地发出正脉冲信号。

因此,它可用作对外输出的时钟信号或用于定时。

但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲.ALE端可以驱动(吸收或输出电流)8个LSTTL电路。

在8751单片机EPROM编程期间,此引脚接编程脉冲(功能).(2)(引脚号29):外部程序存储器读选通信号.在从外部程序存储器取指令(或数据)期间,在每个机器周期内两次有效。

可以驱动8个LSTTL电路.(3)RST/VPD(引脚号9):复位信号输入端.振荡器工作时,该引脚上持续2个机器周期的高电平可实现复位操作。

此引脚还可接上备用电源。

在Vcc掉电期间,由向内部RAM提供电源,以保持内部RAM中的数据.(4)/Vpp(引脚号31):为内部程序存储器和外部程序存储器的选择端。

当为高电平时,访问内部程序存储器(PC值小于4K);当为低电平时,访问外部程序存储器。

对于87C51单片机,在EPROM编程期间,此端为21V编程电源输入端。

微机原理及单片机应用技术第8章 80C51的中断与定时计数器

微机原理及单片机应用技术第8章 80C51的中断与定时计数器

定时/计数器的结构
T1引脚
TH1
TL1
TH0
T0引脚
TL0
机器周 期脉冲
TH1、TL1
内部总线
TH0、TL0
TF1 TR1 TF0 TR0 GATE C/T M1 M0 GATE C/T M1 M0
TCON
TMOD
TCON
外部中断相关位
T1方式
T0方式
TMOD
2020/10/27
21
计数脉冲源
定时/计数器的工作原理
76543210
TCON TF1 TR1 TF0 TR0
字节地址:88H
TFx:Tx溢出标志位。响应中断后TFx有硬件自动清0。 用软件设置TFx可产生同硬件置1或清0同样的效果。
TRx:Tx运行控制位。置1时开始工作;清0时停止工作。 TRx要由软件置1或清0(即启动与停止要由软件控制)。
2020/10/27
2020/10/27
24
定时/计数器的控制示意图
M1M0 工作方式


00 方式0 13位定时/计数器
01 方式1 16位定时/计数器
10 方式2 8位自动重装定时/计数器
11
方式3
T0分成两个独立的8位定时/计数器; T1此方式停止计数
注意:TMOD不能进行位寻址
2020/10/27
26
控制寄存器TCON
第八章 80C51的中断系统与定时计数器
8.1 80C51单片机的中断系统 8.2 80C51中断处理过程 8.3 80C51单片机的串行口
8.1 80C51单片机的中断系统
5.1.1 80C51中断系统的结构
中断的概念
与子程序调用相似 但有本质的区别

单片机80C51考试题目及答案

单片机80C51考试题目及答案

单片机80C51考试题目及答案一、选择题(每题2分,共20分)1. 单片机80C51的内部RAM地址空间为多少字节?A. 128B. 256C. 512D. 1024答案:B2. 80C51单片机中,哪组寄存器用于存储当前正在执行的指令地址?A. B寄存器B. DPTRC. SPD. PC答案:D3. 下列哪个指令用于将累加器的内容与外部数据存储器中的数据进行交换?A. MOV A, @R0B. MOVX A, @DPTRC. MOV A, #dataD. MOV A, direct答案:B4. 80C51单片机的定时器/计数器有几个?A. 1B. 2C. 3D. 4答案:B5. 80C51单片机的中断向量表起始地址是多少?A. 0000HB. 0003HC. 0030HD. 0100H答案:C二、填空题(每题2分,共20分)1. 80C51单片机的______位定时器/计数器可以工作在______模式。

答案:16;32. 80C51单片机的______位定时器/计数器可以工作在______模式。

答案:8;23. 80C51单片机的______位定时器/计数器可以工作在______模式。

答案:8;34. 80C51单片机的中断系统包含______个中断源。

答案:55. 80C51单片机的I/O端口P1的地址是______。

答案:90H三、简答题(每题10分,共30分)1. 请简述80C51单片机的中断优先级是如何确定的?答案:在80C51单片机中,中断优先级由中断向量表中的地址决定,地址越小,优先级越高。

此外,还可以通过设置IP寄存器中的优先级位来调整不同中断源的优先级。

2. 80C51单片机的定时器/计数器有哪些工作模式?答案:80C51单片机的定时器/计数器有三种工作模式:模式0(13位定时器/计数器)、模式1(16位定时器/计数器)、模式2(8位自动重装载定时器/计数器)。

3. 80C51单片机的I/O端口具有哪些特性?答案:80C51单片机的I/O端口具有推挽输出、开漏输出、高阻态输入等特性,并且可以通过软件设置端口的模式。

80C51的定时、计数器

80C51的定时、计数器

工作方式3将 分成为两个独立的 位计数器TL0和TH0 。 分成为两个独立的8位计数器 工作方式 将T0分成为两个独立的 位计数器 和
5.3.4 定时 计数器用于外部中断扩展 定时/计数器用于外部中断扩展
扩展方法是,将定时 计数器设置为计数器方式 计数器设置为计数器方式, 扩展方法是,将定时/计数器设置为计数器方式,计数初值 设定为满程,将待扩展的外部中断源接到定时/计数器的外部 设定为满程,将待扩展的外部中断源接到定时 计数器的外部 计数引脚。从该引脚输入一个下降沿信号,计数器加1后便产 计数引脚。从该引脚输入一个下降沿信号,计数器加 后便产 生定时/计数器溢出中断 计数器溢出中断。 生定时 计数器溢出中断。 例如,利用 扩展一个外部中断源 扩展一个外部中断源。 例如,利用T0扩展一个外部中断源。将T0设置为计数器方 设置为计数器方 按方式2工作 工作, 的初值均为0FFH,T0允许中 式,按方式 工作,TH0、TL0的初值均为 、 的初值均为 , 允许中 开放中断。 断,CPU开放中断。其初始化程序如下: 开放中断 其初始化程序如下: MOV TMOD,#06H 为计数器方式2 , ;置T0为计数器方式 为计数器方式 MOV TL0,#0FFH , ;置计数初值 MOV TH0,#0FFH , SETB TR0 启动T0工作 ;启动 工作 SETB EA ;CPU开中断 开中断 SETB ET0 允许T0中断 ;允许 中断
GATE:门控位。GATE=0时,只要用软件使 :门控位。 = 时 只要用软件使TCON中的 中的 TR0或TR1为1,就可以启动定时 计数器工作;GATA=1时, 计数器工作; 或 为 ,就可以启动定时/计数器工作 = 时 要用软件使TR0或TR1为1,同时外部中断引脚或也为高电 要用软件使 或 为 , 平时,才能启动定时/计数器工作 计数器工作。 平时,才能启动定时 计数器工作。即此时定时器的启动条 加上了或引脚为高电平这一条件。 件,加上了或引脚为高电平这一条件。 :定时 计数模式选择位。 定时/计数模式选择位 为定时模式; 定时 计数模式选择位。 =0为定时模式; =1 为定时模式 C/T C /T C /T 为计数模式。 为计数模式。 M1M0:工作方式设置位。定时 计数器有四种工作方式, 计数器有四种工作方式, :工作方式设置位。定时/计数器有四种工作方式 进行设置。 由M1M0进行设置。 进行设置

单片机毕业设计80c51

单片机毕业设计80c51

单片机毕业设计80c51本文的毕业设计主要涉及到80C51单片机的应用。

本篇文章将介绍单片机的基本原理、在数字电子钟的设计中的具体应用、硬件设计和软件编程,并给出程序设计流程与详细实现过程。

一、 80C51单片机的基本原理只要有些基础的理解,学习单片机并不难。

单片机是包含CPU、ROM、RAM和其他外设的一种集成电路(IC)芯片。

单片机因其体积小、功耗低、成本低而在实际应用中广泛使用。

具有代表性的是80C51单片机系列。

80C51单片机有多种不同的型号,每个型号内置指令集在某种程度上都有所不同。

最简单的80C51型号内置的指令集只有40多种指令。

可以想象,由于指令集非常简化、结构紧凑,这样设计出来的芯片具有性能非常稳定的特点。

二、数字电子钟的设计数字电子钟是指采用数字电路或数字电子技术设计的显示时间的钟。

数字电子钟广泛应用于生活中的种种需要,能够比较稳定地显示时间,其他功能还包括定时、闹钟、备忘等选项。

三、数字电子钟的硬件设计数字电子钟的硬件设计涵盖了三个方面:1. 显示电路的设计数字电子钟的显视屏幕通常是7片LED,其中6片是数字显示屏,第7片为冒号显示屏。

这个设计采用COS-8886电路,典型的应用范围是数码电子表、温度计等。

2. 时基方案的设计时基方案是指数字电子钟中的总体控制方案。

这里我们采用的是74HC4060的集成电路。

使用74HC4060,可以非常方便地进行时钟频率的分频设计。

3. 蓝牙通信模块的设计蓝牙通信模块的设计中,我们使用了常见的蓝牙串口传输模块,如HC-06,其工作电压在3.3V ~ 5V之间,具备良好的兼容性。

四、数字电子钟的软件编程数字电子钟的软件编程主要涉及以下两个方面:1. 定时计数器的设计采用80C51单片机设计定时计数器时,需要考虑到时钟频率、计时器精度、转换精度等问题。

借助于8051单片机提供的Timer/Counter模块,可以很方便地实现这个功能。

2. 蓝牙通信程序设计程序设计中需要考虑到串口通信协议,包括蓝牙模块的波特率,校验位和数据位等问题。

单片机原理及应用-第四章80C51单片机的功能

单片机原理及应用-第四章80C51单片机的功能
XOR
对两个操作数执行逻辑异或操作, 并将结果存放在目标地址中。
03
02
OR
对两个操作数执行逻辑或操作,并 将结果存放在目标地址中。
NOT
对操作数执行逻辑非操作,并将结 果存放在目标地址中。
04
控制转移指令
JMP
无条件跳转到指定地址。
JC/JNC
当进位标志位为1或0时,跳转 到指定地址。
JZ/JE
06
80C51单片机的串行通信 接口
串行通信的基本概念
串行通信
通过一条数据线,按照位顺序传输数据,实现数 据的发送和接收。
异步通信
数据传输速率不固定,发送器和接收器使用各自 的时钟。
同步通信
数据传输速率固定,发送器和接收器使用同一时 钟源。
80C51单片机的串行口结构及控制寄存器
要点一
串行口结构
算术运算指令
ADD
将两个操作数相加,并将结果存放在 目标地址中。
SUB
从源地址中减去目标地址中的值,并 将结果存放在源地址中。
MUL
将两个操作数相乘,并将结果存放在 目标地址中。
DIV
将源地址中的值除以目标地址中的值, 并将商存放在源地址中,余数存放在 累加器中。
逻辑运算指令
01
AND
对两个操作数执行逻辑与操作,并 将结果存放在目标地址中。
80C51单片机的应用领域
工业控制
80C51单片机在工业控制领域应用广泛, 如电机控制、自动化生产线控制等。
通信设备
80C51单片机在通信设备领域应用广 泛,如调制解调器、路由器、交换机
等。
智能仪表
80C51单片机可以用于各种智能仪表 的控制系统,如温度、压力、流量等 传感器采集和处理。

C51单片机的定时计数器(陆周整理)

C51单片机的定时计数器(陆周整理)

捕捉或常数重装 入方式选择位
1
0
T2 工 作 于
捕捉方式。


EXEN2=1
时,T2EX 端
(P1.1)的
负跳变引发
捕捉动作。
T2 工 作 于
常数自动重
装入方式。


EXEN2=1
时,T2EX 端
(P1.1)的
负跳变引发
常数重装入
动作。
当 TCLK=1 或 RCLK=1 时, 此位无效,T2 被强制工作 于自动重装入方式,定时 器溢出时引发常数自动重 装。
M=28 = 256 M=28 = 256
初值计算方法
初值 = 最大计数值 – 计数值 即: X = M - N
举例说明
若 80C51 时钟频率为 12MHz,要求产生 1ms 的定时,初值计算过程如下:时钟频率为 12MHz 时,计数器每次加 1 所需时间为 1μs,如果要产生 1ms 的定时时间,则需要“加 1”1000 次,1000 即为计数初值,如果在工作方式 1 下,则初值 X=M-N=65536-1000=64536=FC18H。
T0 功能选 择
10
T0 T0 为为 计定 数时 器器 方方 式式
T0 工作方式选择
M1 M0
00
01
10
11
方式 0 方式 1 方式 2 方式 3
13 位 计数 器
16 位 计数 器
溢出后 自动重 装入初 值的 8 位 计数器
定时器 T0 分成 2 个 8 位计 数器
1、TMOD 定时器不能进行位寻址,只能用字节传送指令设置定时器工作方式。 2、复位时 TMOD 定时器所有位均为 0,定时器处于停止工作状态。

51单片机定时时钟工作原理

51单片机定时时钟工作原理

51单片机定时时钟工作原理51单片机(也被称为8051微控制器)的定时器/计数器是一个非常有用的功能,它允许用户在特定的时间间隔内执行任务。

下面是其基本工作原理:1. 结构:8051单片机通常包含两个定时器/计数器,称为Timer0和Timer1。

每个定时器都有一个16位的计数器,可以用来跟踪经过的时间或事件。

2. 时钟源:定时器的核心是一个振荡器或外部时钟源,为计数器提供脉冲。

通常,这个时钟源可以是内部的,也可以是外部的。

内部时钟源通常基于系统时钟,而外部时钟源则直接从外部硬件输入。

3. 计数过程:每当振荡器产生一个脉冲,计数器就会增加(对于向上计数的定时器)或减少(对于向下计数的定时器)一个单位。

这取决于定时器的模式。

4. 溢出:当计数器达到其最大值(对于向上计数的定时器)或达到0(对于向下计数的定时器)时,会发生溢出事件。

这会导致一个中断,可以用来执行特定的任务或操作。

5. 分频:在某些模式下,计数器的输出可以用来分频系统时钟,从而产生更精确的定时器时钟。

6. 预分频器:预分频器允许用户设置一个值,该值决定了振荡器的输入脉冲被分频的次数。

这有助于控制计数器的速度,从而控制定时器的精度。

7. 工作模式:8051微控制器支持多种定时器模式,包括正常模式、自动重装载模式和比较模式。

每种模式都有其特定的应用和行为。

8. 中断:当定时器溢出时,可以产生一个中断。

这意味着微控制器可以暂时停止当前的任务,转而处理与定时器相关的特定任务。

通过合理配置和使用这些定时器/计数器,开发人员可以在8051单片机上实现精确的时间控制和事件调度。

这对于实现诸如延时、精确计时和脉冲生成等功能非常有用。

定时计数器实验-单片机

定时计数器实验-单片机

单片机实验报告G A T EC /TM 1M 0G A T EC /TM 1M 0TH1TL1TH0TL0T1方式T1引脚T0引脚机器周期脉冲内部总线TMODTCON 外部中断相关位T F 1T R 1T F 0T R 0实验五 定时/计数器实验一、实验目的1.学习8051内部定时/计数器的工作原理及编程方法; 2.掌握定时/计数器外扩中断的方法。

二、实验原理8051单片机有2个16位的定时/计数器:定时器0(T0)和定时器1(T1)。

它们都有定时器或事件计数的功能,可用于定时控制、延时、对外部事件计数和检测等场合。

T0由2个特殊功能寄存器TH0和TL0构成,T1则由TH1和TL1构成。

作计数器时,通过引脚T0(P3.4)和T1(P3.5)对外部脉冲信号计数,当输入脉冲信号从1到0的负跳变时,计数器就自动加1。

计数的最高频率一般为振荡频率的1/24。

定时/计数器的结构:定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。

TMOD 是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON 是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。

计数器初值的计算:设计数器的最大计数值为M(根据不同工作方式,M 可以是213、216或28),则计算初值X的公式如下:X=M-要求的计数值(十六进制数)定时器初值的计算:在定时器模式下,计数器由单片机主脉冲fosc经12分频后计数。

因此,定时器定时初值计算公式:X=M-(要求的定时值)/(12/fosc)80C51单片机定时/计数器的工作由两个特殊功能寄存器控制。

TMOD用于设置其工作方式;TCON用于控制其启动和中断申请。

❖工作方式寄存器TMOD:工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。

其格式如下:GATE:门控位。

GATE=0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;GATA=1时,要用软件使TR0或TR1为1,同时外部中断引脚或也为高电平时,才能启动定时/计数器工作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

27
2 产生方波信号(查询方式)
设置TMOD 设置计数器初值 启动计数
NO
TF=1? YES
TF=0 重装计数器初值 口线求反
查询方式参考程序:
MOV MOV MOV TMOD,#01H ;设置T0为方式1 TH0,#0FEH TL0,# 0CH ;启动T0计数 ;查TF0, ;若TF0 =1, 清除TF0,转NEXT SJMP LOOP CPL MOV MOV P1.0 TH0,#0FEH TL0,# 0CH ;若TF0 =0, 循环等待 ;P1.0的状态求反 ;T0置初值 ;T0置初值
返回结构图
TH0,TL0和T1三个计数器
返回
定时/计数器4种模式定时长度比较
模 式 模式0 模式1 模式2,3 模 式 计数模M 13位 16位 8位
返回
最大计数长度(单位:机器周期) T max=213=8192 T max=216=65536 T max=28=256 (fosc=12MHz)
M1 、M0 模式选择:确定四种工作模式。
M1、M0 0 0 0 1 1 0 1 1 工作模式 模式0(13位) 模式1(16位) 模式2(8位自动重装) 模式3(8位)
2 运行控制寄存器TCON (SFR地址:88H)
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
TF0 定时器T0的溢出标志: 当计数器发生溢出时硬件自动置位,TF0=1。
参考程序如下:
ORG 0000H ;主程序入口 ;转真正主程序入口 ;T0中断入口 ;转T0中断处理程序IT0P ;真正主程序入口 ;设堆栈指针 ;调用初始化子程序PT0M0
RESET: AJMP MAIN ORG 000BH
AJMP IT0P ORG 0100H MAIN: MOV SP,#60H ACALL PT0M0
80C51单片机定时/计数器逻辑模型
返回
6.1 定时/计数器的控制和状态寄存器
1 方式控制寄存器TMOD (SFR的地址:89H)
GATE
C/T
M1
M0
GATE
C/T
M1
M0
定时/计数器1
定时/计数器0
结构图 返回
GATE 门控位
GATE=0:TR=1,计数器开始工作。 内部启动模式/软件启动模式; GATE=1:/INT=TR=1时,计数器开始工作。 外部控制启动模式/ 硬件启动 可用于测量 /INT脚上的信号高电平脉冲的宽度。
累计,计满10次,即得秒计时。而计数10次可用循环程序 的方法实现。
片内RAM规定3个单元为秒、分、时单元: 42H:“秒”单元;41H:“分”单元;40H:“时”单 元 从秒到分,从分到时是通过软件累加并比较来实现: 每满1秒,则“秒”单元42H中的内容加1;“秒”单元满 60 ,则“分”单元 41H 中的内容加 1 ;“分”单元满 60 ,则 “时”单元40H中的内容加1;“时”单元满24,则将42H、 41H、40H的内容全部清“0”。
典型应用:产生一个符合某一要求的脉冲方波。
输出波形 80C51
20mS 40mS
P x.y
2 计数:
对外部的事件(脉冲)进行统计。
外部事件的发生是随机的,单片机可以进行统计。
当达到所要求的计数值时,单片机进行相应的操作。
80C51 T0 ( T1) 端口 外部脉冲 外部 设备
3. 定时/计数器的逻辑结构及工作原理:
IT0P: MOV TL0,#0CH ;中断子程序,T0重装初值
MOV TH0,#0FEH CPL P1.0 ;P1.0的状态取反
RETI
26
程序说明:
当单片机复位时,从程序入口0000H跳向主程序MAIN 处执行。其中调用了T0初始化子程序PT0M0。 PT0M0子 程序返回后,程序执行“AJMP HERE”指令,则循环等 待。 当T0定时溢出时,则跳向T0中断入口,再从T0中断入 口跳向IT0P标号处执行T0中断服务子程序。 当执行完中断返回的指令“RETI”后,又返回断点处继 续执行循环指令“AJMP HERE”。
C/T=0 C/T=1
控制 TL0 TF0 中断
T0 引脚
TR0
GATE
INT0 Fosc/12 TR1 控制 TH0 TF1
中断
模式3定时器T0的结构图
模式3时T0(TH0,TL0)及T1的各自特点:
1 TH0计数脉冲来自内部fosc,所以它只能处于”定时”方式;
2 TH0分别借用了定时器T1的TR1和TF1为自己服务,使TH0能象 TL0那样用TR1启动定时,并用TF1来作为TH0的溢出标志; 3 由于T1缺少了启动控制信号TR1和溢出中断标志TF1,那么在 模式3时,T1是如何启动和工作? 没有溢出标志TF1,则T1就不用中断方式工作(连查询也不行); 没有启动控制信号TR1,可以让它在模式3之前就开始工作,并 且让它事先设定为自动重装模式.
T1事先设定为模式2(串行口的波特率发生器)并启动起来。
返回结构图 返回
在模式3时T0,T1的电路结构图
TL0八位定时/计数器
TH0八位定时器
TF0
TF1
T0分解为两个计数器 TL0和TH0,其中TH0借 用了T1的TR1和TF1
T1(TL1,TH1)自动重装模式
T1已无TR1,TF1功能, 建议T1做波特率发生器
返回
2,模式1 :16位计数器模式(以T1为例).
启动控制 C/T=0
震荡器
1/12
16位加1计数器
TL1 C/T=1
T1 引脚 TR1 GATE
(8位)
TH1
(8位)
TF1
中断
INT1
注:计数器在每个机器周期采样一次从T1引脚进入的外部计数脉冲,由于检 测到一次从高到低的负跳变需要两个机器周期,所以外部计数脉冲的频率应 小于fosc/24
(1):如何控制实现定时功能或计数功能?
(2):何时控制启动计数器? (3):如何控制定时/计数的长短?
系统内部 震荡器fosc/12 C/T=0 定时/计数 控制C/T 外部脉冲 T0或T1引脚 C/T=1 启动控制 TR
计数脉冲 CP N位增量计数器
TF
计数器溢出 (置位溢出标志)
N位初值寄存器
MOV MOV LOOP0: JB
TL1,#00H TH1,#00H P3.3,LOOP0 ;等待 INT1 低 ;如 INT1 为低,启动T1
SETB TR1
32
LOOP1:JNB P3.3,LOOP1;等待 INT1 升高
LOOP2:JB P3.3,LOOP2 ; INT1 为高, 此时计数器计数, ;等待 INT1 降低 CLR MOV MOV …… END TR1 A,TL1 B,TH1 ;停止T1计数 ;T1计数值送A ;
计数模M 最大定时时间 TMAX 13位 16位
模式0 模式1
T max=213*1μЅ =8.192ms T max=216*1μЅ=65.536ms
模式2、3
8位
T max=28*1μЅ=0.256ms
6.3
定时器/计数器的编程和应用
【例6-1】假设系统时钟频率采用6MHz,在P1.0引脚上输出 一个周期为2ms的方波,如图6-13所示。
模式3 :拆分/组合扩展8位模式
震荡器 1/12
启动控制 C/T=0
C/T=1
13位加1计数器 TH1 TL1 (低5 GATE
INT1
1 模式0:13位计数器模式。
高三位弃用
13位计数器。在初值的基础上加1计数,溢出时,使TF1=1。
GATE=0时,TR1=1开始定时/计数; GATE=1时(门控方式), TR=1且/INT1=1时,开始工作。 此种方式主要用于测量加在/INT1脚上正脉冲的脉宽.
80C51单片机的定时/计数器
6.1 80C51定时/计数器的逻辑结构与控制寄存器
6.2 定时/计数器的四种工作模式
定时/计数器初始化
6.3 定时/计数器的应用
定时/计数器工作方式与原理
定时/计数器是一种应用非常广泛的硬
件逻辑电路, 本质是“计数器”。
1 定时:
产生一个标准的时间间隔:如20mS,100mS,1000mS。
执行以上程序,测得 INT1 引脚上出现的正脉冲宽度以
机器周期为单位。
33
日时钟的设计--定时器应用
1.实现日时钟的基本思想
最小计时单位是秒,如何获得1s的定时时间?
从定时/计数器4种模式定时长度比较知,时钟频率采用
6MHz,定时器方式1,最大定时时间也只能131ms。可将
定时器的定时时间定为100ms,中断方式进行溢出次数的
20
产生方波信号(中断方式)
设置TMOD 设置计数器初值
重装计数器初值
开中断
口线求反
启动计数
RETI
主程序流程图
中断处理子程序流程图
(1)主程序设计 初始化指令段
采用定时器中断方式工作。包括定时器初始化和中断系统初
始化,主要是对寄存器 IP、 IE、 TCON、 TMOD 的相应位进行 正确的设置,并将计数初值送入定时器中。
对外部输入信号的要求,图中,Tcy为机器周期。
对外部计数输入信号的要求
13
3,模式2 : 8位自动重装初值模式
由TL1做计数器,TH1做初值寄存器, 工作前TL1,TH1分别预置相同的初值
TL1计数时, 当产生溢出置位TF1的同时, 将TH1中的初值自动重装入TL1。 TL1继续计数,此模式主要用于做串行口波特率发生器。
上正脉冲的宽度。
P3.3 80C51
30
利用GATE位测量正脉冲的宽度
参考程序:
ORG 0000H ;复位入口转主程序
相关文档
最新文档