单片机第六章 定时器计数器与串行通信口讲解
第六章单片微机的定时器计数器原理及应用
中断矢量001BH
⑴T0方式3下的T0
在方式3情况下,T0被拆成二个独立的8位计数器TH0、TL0。 ▲ TL0:8位定时/计数器,使用T0原有的控制寄存器资 源:TF0,TR0,GATE,C/T,INT0,中断矢量等; ▲ TH0:8位定时器,占用T1的中断溢出标志TF1,运行控 制开关TR1,中断矢量001BH,只能对片内机器周期脉冲计数
复位后,两个寄存器全部清零。
6.3.2 定时器/计数器T2的工作方式
T2的工作方式用控制位CP/RL2(T2CON.0)和RCLK +TCLK来选择。T2有3种工作方式,如表6-2所示:捕获方式、 自动重装载方式和波特率发生器方式。
⒈ 捕获方式
在一定条件下,自动将计数器TH2和TL2的数据读入捕获寄存器 RCAP2H和RCAP2L,亦即TH2和TL2内容的捕获是通过捕获寄 存器RCAP2H和RCAP2L来实现的。其工作原理可参见图6-7。
当CP/RL2=0时,选择自动重装载方式。 若T2的中断是被允许的,则无论发生TF2=1还是EXF2 =1,CPU都会响应中断,此中断向量的地址为002BH。响应 中断后,应用软件撤除中断申请。TF2 和EXF2都是直接可寻 址位,可采用CLR TF2和CLR EXF2指令实现撤除中断申请的 功能。
触发 方式
89H IE0
中断 标志
88H IT0
触发 方式
⒊ T0、T1 的数据寄存器——TH1、TL1,TH0、TL0 ⒋ 定时器/计数器中断
⑴ 中断允许寄存器IE
⑵ 中断矢量 ⑶ 中断优先级寄存器IP
6.2.2 定时器/计数器T0、T1 的工作方式
T0:有4种工作方式可选(方式0,1,2,3)
当CP/RL2=l时,选择捕获方式。
单片机定时器的使用
由于TL0既能作定时器也能作计数器使用,而 TH0只能作定时器使用而不能作计数器使用,因此在 方式3模式下,定时/计数器0可以构成二个定时器或 者一个定时器和一个计数器。
如果定时/计数器0工作于工作方式3,那么定时/ 计数器1的工作方式就不可避免受到一定的限制,因 为自己的一些控制位已被定时/计数器借用,只能工 作在方式0、方式1或方式2下,如果设置T1工作在方 式3,则T1停止工作,相当于其他方式时令TR1=0。
在工业检测、控制中,很多场合都要用到计数或者定 时功能。例如对外部脉冲进行计数、产生精确的定时时间、 作串行口的波特率发声器等。MCS-51单片机内部有两个 可编程的定时器/计数器,以满足这方面的需要。它们具 有 两种工作模数(计数器模式、 定时器模式)和四种工 作方式( 方式0、方式1、方式2、方式3),其控制字均 在相应的特殊功能寄存器(SFR)中,通过对它的SFR的 编程,可以方便的选择工作模数和工作方式。
C/T位:计数器模式和定时器模式的选择位。
C/T=0,为定时器模式,内部计数器对晶振脉冲12分频 后的脉冲计数,该脉冲周期等于机器周期,所以可以理 解为对机器周期进行计数。从计数值可以求得计数的时 间,所以称为定时器模式。
C/T=1,为计数器模式,计数器对外部输入引脚T0 (P3.4)或T1(P3.5)的外部脉冲(负跳变)计数,允许 的最高计数频率为晶振频率的1/24。
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
TF0、TF1分别是定时器/计数器T0、 T1 的溢出标志位, 加法计数器计满溢出时置 1, 申请中断, 在中断响应后自动复 0。TF产生的中断申请是否被接受, 还需要由中断是否开放 来决定。
TR1、TR0 分别是定时器 /计数器T1、 T0 的运行控制位, 通过软件置 1 后, 定时器 /计数器才开始工作, 在系统复位时 被清 0。
MCS-51单片机的定时器计数器
1. 定时器T0/T1 中断申请过程
(1)在已经开放T0/T1中断允许且已被启动的前提下, T0/T1加1计满溢出时 TF0/TF1标志位自动置“1” ;
(2)CPU 检测到TCON中TF0/TF1变“1”后,将产生指 令:LCALL 000BH/LCALL 001BH 执行中断服务程序;
(3)TF0/TF1标志位由硬件自动清“0”,以备下次中断申
郑州大学
docin/sundae_meng
(3)工作方式寄存器TMOD
T1
T2
GATE C / T M1 M0 GATE C / T M1 M0
M1,M0:工作方式选择位 。
=00:13位定时器/计数器; =01:16位定时器/计数器(常用); =10:可自动重装的8位定时器/计数器(常用); =11:T0 分为2个8位定时器/计数器;仅适用于T0。 C/T :定时方式/计数方式选择位。 = 1:选择计数器工作方式,对T0/T1引脚输入的外部事件 的负脉冲计数; = 0 :选择定时器工作方式,对机器周期脉冲计数定时。 如下页图所示。
CPL P1.0 MOV TH0,#15H MOV TL0,#0A0H
START:MOV SP,#60H MOV P1,#0FFH
SETB TR0 POP PSW
MOV TMOD,#01H MOV TH0,#15H MOV TL0,#0A0H
POP ACC RETI END
SETB EA
Байду номын сангаас
SETB ET0
定时器/计数器0采用工作方式1,其初值为:
21650ms/1s=6553650000=15536=3CB0H
电路图如下:
郑州大学
docin/sundae_meng
第06章-单片机串行通信系统-习题解答
第6章单片机串行通信系统习题解答一、填空题1.在串行通信中,把每秒中传送的二进制数的位数叫波特率。
2.当SCON中的M0M1=10时,表示串口工作于方式 2 ,波特率为 fosc/32或fosc/64 。
3.SCON中的REN=1表示允许接收。
4.PCON 中的SMOD=1表示波特率翻倍。
5.SCON中的TI=1表示串行口发送中断请求。
6.MCS-51单片机串行通信时,先发送低位,后发送高位。
7.MCS-51单片机方式2串行通信时,一帧信息位数为 11 位。
8.设T1工作于定时方式2,作波特率发生器,时钟频率为11.0592MHz,SMOD=0,波特率为2.4K时,T1的初值为 FAH 。
9.MCS-51单片机串行通信时,通常用指令 MOV SBUF,A 启动串行发送。
10.MCS-51单片机串行方式0通信时,数据从 P3.0 引脚发送/接收。
二、简答题1.串行口设有几个控制寄存器?它们的作用是什么?答:串行口设有2个控制寄存器,串行控制寄存器SCON和电源控制寄存器PCON。
其中PCON 中只有PCON.7的SMOD与串行口的波特率有关。
在SCON中各位的作用见下表:2.MCS-51单片机串行口有几种工作方式?各自的特点是什么?答:有4种工作方式。
各自的特点为:3.MCS-51单片机串行口各种工作方式的波特率如何设置,怎样计算定时器的初值? 答:串行口各种工作方式的波特率设置:工作方式O :波特率固定不变,它与系统的振荡频率fosc 的大小有关,其值为fosc/12。
工作方式1和方式3:波特率是可变的,波特率=(2SMOD/32)×定时器T1的溢出率 工作方式2:波特率有两种固定值。
当SM0D=1时,波特率=(2SM0D/64)×fosc=fosc/32当SM0D=0时,波特率=(2SM0D/64)×fosc=fosc/64计算定时器的初值计算:4.若fosc = 6MHz ,波特率为2400波特,设SMOD =1,则定时/计数器T1的计数初值为多少?并进行初始化编程。
单片机原理及应用串行口
单片机原理及应用串行口单片机是一种集成电路芯片,具有处理器核心、内存、定时器/计数器、输入/输出口等功能。
它采用单一芯片封装,具有体积小、功耗低、性价比高等优点,广泛应用于嵌入式系统、电子设备控制等领域。
串行口是单片机的一种重要接口,它通过串行通信协议实现与外部设备的数据交换。
串行口的主要特点是一次只能传输一个比特的数据,传输速率相对较慢,但传输距离较远,能够满足长距离数据传输的需求。
串行口的应用非常广泛,下面将从基本原理、工作方式和应用场景三个方面进行详细介绍。
1. 基本原理串行口基于串行通信协议,通过发送和接收两个引脚来实现与外部设备的数据交换。
串行口的发送和接收部分需要配合串行通信协议进行设置,包括数据位数、停止位数、奇偶校验位等。
2. 工作方式串行口的工作方式一般分为同步和异步两种模式。
同步模式中,数据传输的速率由外部计时器控制,发送和接收双方需要在同一时钟脉冲上进行数据传输;异步模式中,数据传输的速率由波特率发生器控制,发送和接收双方根据起始位和停止位进行数据传输。
3. 应用场景串行口广泛应用于各种嵌入式系统和电子设备控制中,以下是几个典型的应用场景:(1) 通信设备串行口可用于实现与计算机之间的数据交换,如通过串口与计算机进行数据通信、调试和程序下载等。
同时,串行口还可以与无线模块或蓝牙模块等外部设备配合,实现远程无线通信。
(2) 外设控制串行口可以控制各种外部设备,如继电器、数码管、液晶显示屏等。
通过串行口发送指令或数据,控制外部设备的状态和显示。
(3) 传感器数据采集串行口可以接收和解析各种传感器的数据,如温度传感器、湿度传感器、光照传感器等。
通过串行通信协议,将传感器采集到的数据发送给单片机进行处理和存储。
(4) 工业控制串行口广泛应用于工业领域的数据采集和控制系统中。
通过串行口,可以实现与各种传感器、执行器的数据交换和控制,如温湿度检测系统、智能电表系统等。
(5) 仪器仪表串行口可以连接到各种仪器仪表上,实现数据的采集和控制。
单片机教案(讲稿)
单片机教案(讲稿)第一章:单片机概述1.1 单片机的定义与发展历程介绍单片机的概念及其发展历程讲解单片机在我国的应用与发展现状1.2 单片机的组成与结构介绍单片机的组成结构,包括CPU、存储器、输入/输出接口等讲解单片机的硬件系统设计与应用1.3 单片机的特点与分类讲解单片机的主要特点,如体积小、成本低、功耗低等介绍单片机的分类及应用领域第二章:单片机编程基础2.1 计算机组成原理与数制转换讲解计算机组成原理,包括二进制、八进制、十六进制等数制转换方法介绍ASCII码、GB2312等字符编码标准2.2 单片机指令系统与编程语法讲解单片机的指令系统,包括数据传输、逻辑运算、算术运算等指令介绍单片机编程语法,如寄存器、立即寻址、间接寻址等2.3 程序设计方法与技巧讲解程序设计方法,包括顺序结构、分支结构、循环结构等介绍编程技巧,如变量命名、代码优化、模块化设计等第三章:单片机接口技术3.1 并行接口设计与应用讲解并行接口的原理与设计方法介绍并行接口在单片机中的应用案例,如键盘、LED显示等3.2 串行接口设计与应用讲解串行接口的原理与设计方法介绍串行接口在单片机中的应用案例,如串口通信、USB接口等3.3 其他接口技术介绍讲解ADC、DAC、PWM等接口技术的原理与应用介绍这些接口技术在单片机中的应用案例第四章:单片机应用系统设计4.1 系统设计流程与方法讲解单片机应用系统设计的流程,包括需求分析、硬件选型、软件设计等介绍系统设计方法,如模块化设计、层次化设计等4.2 硬件系统设计与调试讲解硬件系统设计的方法与技巧介绍硬件调试工具与方法,如示波器、逻辑分析仪等4.3 软件系统设计与调试讲解软件系统设计的方法与技巧介绍软件调试工具与方法,如调试器、仿真器等第五章:单片机项目实践5.1 项目实践概述讲解项目实践的目的与意义介绍项目实践的内容与要求5.2 项目实践案例一:温度控制系统讲解温度控制系统的原理与设计方法介绍使用单片机实现温度控制的具体步骤与技巧5.3 项目实践案例二:智能家居系统讲解智能家居系统的原理与设计方法介绍使用单片机实现智能家居的具体步骤与技巧5.4 项目实践案例三:小型讲解小型的原理与设计方法介绍使用单片机控制小型的具体步骤与技巧展望单片机技术在未来的发展趋势与应用前景第六章:单片机中断与定时器/计数器6.1 中断系统讲解单片机的中断系统概念、类型及优先级介绍中断服务程序的编写方法与中断响应过程6.2 定时器/计数器原理讲解定时器/计数器的结构、工作模式及编程方法介绍定时器/计数器在工业控制中的应用案例6.3 中断与定时器/计数器应用实例结合具体案例,讲解中断与定时器/计数器在实际项目中的应用第七章:单片机串行通信技术7.1 串行通信基础讲解串行通信的概念、分类及标准介绍串行通信的物理层、数据链路层及网络层协议7.2 单片机串行通信接口讲解单片机串行通信接口的原理与编程方法介绍单片机串行通信在各种应用场景中的案例7.3 串行通信技术应用实例结合具体案例,讲解串行通信技术在实际项目中的应用第八章:单片机接口扩展技术8.1 并行扩展技术讲解并行扩展芯片的选型及接口设计方法介绍并行扩展在存储器、IO接口等方面的应用8.2 串行扩展技术讲解串行扩展芯片的选型及接口设计方法介绍串行扩展在ADC、DAC、显示模块等方面的应用8.3 接口扩展技术应用实例结合具体案例,讲解接口扩展技术在实际项目中的应用第九章:单片机嵌入式系统设计9.1 嵌入式系统概述讲解嵌入式系统的概念、特点及分类介绍嵌入式系统的设计流程与方法9.2 嵌入式操作系统讲解嵌入式操作系统的概念、特点及分类介绍常见的嵌入式操作系统及其应用案例9.3 嵌入式系统设计实例结合具体案例,讲解嵌入式系统在实际项目中的应用第十章:单片机技术发展趋势与应用前景10.1 单片机技术发展趋势讲解单片机技术的发展趋势,如性能提升、集成度增加等介绍新兴的单片机技术,如片上系统(SoC)、物联网(IoT)等10.2 单片机应用前景探讨单片机技术在各个领域的应用前景,如工业控制、智能家居、医疗设备等分析单片机技术对我国经济社会发展的重要意义重点和难点解析重点环节一:单片机的定义与发展历程单片机作为微控制器的核心,其定义和发展历程是理解微控制器应用的基础。
单片机工作原理及相关接口技术解析
单片机工作原理及相关接口技术解析单片机(Microcontroller)是一种具有微处理器核心、内存、输入/输出设备及其他必要外设的集成电路芯片。
它广泛应用于各种电子设备和系统,如家电控制、汽车电子、医疗仪器等。
本文将从单片机的工作原理和相关接口技术两个角度对其进行解析。
一、单片机工作原理单片机的工作原理可以分为两个主要部分:微处理器核心和外设集成。
微处理器核心是单片机的核心组成部分,它包含中央处理器(CPU)、寄存器、指令集和时钟等关键元件。
通过时钟信号的驱动,中央处理器能够执行一条条指令,从而实现各种功能。
寄存器用于存储数据和指令,是中央处理器的重要组成部分。
指令集是一系列编程指令的集合,通过这些指令可以完成各种功能和操作。
外设集成包括内存、输入/输出设备和其他必要的外设。
内存主要用于存储程序代码和数据,包括存储器和数据RAM等。
输入/输出设备用于与外界进行数据交互,如键盘、显示器、通信接口等。
其他必要的外设可以根据具体应用需求进行扩展,如模拟/数字转换器(ADC/DAC)、定时器/计数器等。
单片机通过将内存中的程序代码和数据加载到寄存器中进行处理,然后再将处理结果输出到外设或存储器中,从而实现各种功能和任务。
通过对输入设备的监测和处理,单片机可以实现对外部环境的感知和控制。
通过与其他设备的通信接口,单片机可以与其他设备进行数据交换和通信。
二、单片机的相关接口技术解析1. 数字输入/输出接口(GPIO)数字输入/输出接口是单片机最常用的接口之一,它可以将单片机与外界的数字设备进行连接。
通过GPIO接口,单片机可以监听外部的输入信号,如开关状态、按钮按下等,同时也可以控制外部的输出信号,如LED灯、继电器等。
2. 通用异步收发器(UART)UART是单片机与串行设备进行通信的重要接口之一。
它可以将单片机的并行数据转换为串行数据,并通过电气线路与其他设备进行通信。
UART接口可以实现两个设备之间的双向数据传输,常用于串口通信,如与电脑进行通信、与传感器进行通信等。
单片机系统常用接口电路、功能模块和外设(一)
单片机系统常用接口电路、功能模块和外设(一)引言概述:本文将介绍单片机系统常用的接口电路、功能模块和外设。
单片机是一种集成了处理器、内存和一系列输入输出设备的微型计算机系统,它在各种电子设备中被广泛应用。
接口电路、功能模块和外设是为单片机系统提供数据输入和输出,扩展功能的重要组成部分。
本文将从以下5个方面详细介绍单片机系统中常用的接口电路、功能模块和外设。
正文:1. 并行口:- 数据线接口:用于传输数据的并行口接口,可以实现与其他设备的数据通信。
- 控制线接口:用于控制其他设备的并行口接口,可实现对其他设备的操作和控制。
- 状态线接口:用于传输设备状态信息的并行口接口,可用于监测和反馈设备状态。
2. 串行口:- USART接口:用于在单片机与外设之间进行异步和同步数据传输的串行口接口。
- SPI接口:用于在单片机与外设之间进行高速的串行数据传输的串行口接口。
- I2C接口:用于在单片机与外设之间进行低速的串行数据传输的串行口接口。
3. 定时器/计数器模块:- 定时器模块:用于生成固定时间间隔的定时信号,可用于定时任务和计时功能。
- 计数器模块:用于计数外部事件的频率或脉冲数,可用于测量和计数功能。
4. ADC/DAC模块:- ADC模块:用于将模拟信号转换为数字信号的模数转换器,可用于测量和采集模拟信号。
- DAC模块:用于将数字信号转换为模拟信号的数字模数转换器,可用于控制和输出模拟信号。
5. 中断控制器:- 外部中断:用于处理外部事件触发的中断请求,可用于实现对外设的即时响应。
- 内部中断:用于处理单片机内部事件触发的中断请求,可用于实现系统模块的即时响应。
总结:本文简要介绍了单片机系统常用的接口电路、功能模块和外设。
并行口和串行口用于数据通信和控制;定时器/计数器模块用于定时和计数功能;ADC/DAC模块用于模拟信号的输入和输出;中断控制器用于及时响应外部和内部事件。
这些接口电路、功能模块和外设为单片机系统提供了强大的扩展性和适应性,使其能够适应不同的应用领域和需求。
单片机教案(讲稿)
单片机教案(讲稿)第一章:单片机概述1.1 单片机的定义与发展历程解释单片机的概念,它是如何定义的。
介绍单片机的发展历程,从最初的4位、8位到现在的32位、64位。
1.2 单片机的特点与分类阐述单片机的主要特点,如集成度高、体积小、成本低等。
分类介绍单片机的类型,如51系列、AVR系列、PIC系列等。
1.3 单片机的应用领域列举单片机在各个领域的应用实例,如家电、工业控制、医疗设备等。
第二章:单片机的基本组成与工作原理2.1 单片机的硬件组成介绍单片机的主要硬件组成部分,如CPU、存储器、定时器/计数器、并行/串行接口等。
2.2 单片机的软件组成讲解单片机的软件系统,包括固件、编程语言、编译器等。
2.3 单片机的工作原理详细解释单片机的工作流程,包括启动、执行程序、中断处理等。
第三章:单片机的编程基础3.1 单片机的编程语言介绍单片机编程的主要语言,如C语言、汇编语言等。
3.2 单片机的编程环境与工具讲解单片机编程所需的环境与工具,如Keil、MPLAB等。
3.3 单片机的编程实例通过具体的编程实例,讲解如何编写、调试单片机程序。
第四章:单片机的接口技术4.1 并行接口技术介绍单片机的并行接口,如I/O口、数据总线、地址总线等。
4.2 串行接口技术讲解单片机的串行接口,如UART、SPI、I2C等。
4.3 单片机与其他设备的接口技术阐述单片机与显示屏、传感器、电机等设备的接口技术。
第五章:单片机的应用案例5.1 温度控制器的设计与实现通过具体案例,讲解如何使用单片机设计温度控制器。
5.2 智能家居系统的设计与实现讲解如何使用单片机设计智能家居系统,包括灯光控制、安防监控等。
5.3 控制系统的设计与实现介绍如何使用单片机控制的运动、感知等功能。
第六章:单片机的电源管理6.1 单片机电源需求与供电方式讨论单片机的电源需求,包括电压和电流规格。
介绍单片机的供电方式,如直流供电、电池供电等。
6.2 电源管理电路设计说明如何设计单片机的电源管理电路,包括稳压器、电压监测、电源去耦等。
第6章-AT89S52串行口
SCON的所有位都可进行位操作清“0”或置“1”。 6.2.2 特殊功能寄存器PCON
字节地址为87H,不能位寻址。格式如图6-8所示。
图6-8 特殊功能寄存器PCON的格式
25
2SMOD 32
下面介绍PCON中各位功能。仅最高位SMOD与串口有关, 其他各位的功能已在第2章的节电工作方式一节中作过介绍。
8
图6-2 串行通信的示意图
9
6.1.2 同步通信与异步通信 串行通信又有两种方式:异步通信与同步通信。
同步串行通信是采用一个同步时钟,通过一条同步时钟线 ,加到收发双方,使收、发双方达到完全同步,此时,传输 数据的位之间的距离均为“位间隔”的整数倍,同时传送的 字符间不留间隙,既保持位同步关系。同步通信及数据格式 见图6-3。
23
TI =1,表示一帧数据发送结束。TI的状态可供软件查询, 也可申请中断。CPU响应中断后,在中断服务程序中向 SBUF写入要发送的下一帧数据。TI必须由软件清“0”。 (7)RI—接收中断标志位
方式0时,接收完第8位数据时,RI由硬件置“1”。在其 他工作方式中,串行接收到停止位时,该位置“1”。RI = 1, 表示一帧数据接收完毕,并申请中断,要求CPU从接收 SBUF取走数据。该位的状态也可供软件查询。RI必须由软 件清“0”。
SM0、SM1所对应的4种工作方式见表6-1。
20
(2)SM2——多机通信控制位 多机通信是在方式2和方式3下进行。当串口以方式2或方式3 接收时,如果SM2=1,则只有当接收到的第9位数据(RB8)为“1” 时,才使RI置“1”,产生中断请求,并将接收到的前8位数据送 入SBUF。 当接收到的第9位数据(RB8)为“0”时,则将接收到的前8 位数据丢弃。
单片机的串行口及应用
起 始
D0
D1
D2
D3
D4
D5
D6
D7
停 止
16
第六章 8051单片机的串行口应用
与门
或门
⑴发送:方式1时,发送的工作原理图如上图所示。 D将1写入 数据写 计数器 数据为0 TXD输 D0发 移位寄存 SBUF 溢出 发送为0 出0 送 器9位 TI置 发送第9 清除发 D1发 计数器第16 位 送信号 位1 送 次溢出 17
⑴发送
8位数据写 入SBUF TI置位 撤消 发送 选通D触发 器置1 零检测 器为 0 发送启动 8位数据 移位输出
第9位向 左均为 0
14
左边补0
第六章 8051单片机的串行口应用
⑵接收
当REN=1 且RI为零
启动 接收
1111 1110 写入移位 寄存器
清除接 收信号
15
RXD引脚 接收一位 信号 移位寄存器 的内容送入 SBUF
并行输出, 最高位
清除端,低 电平输出全 为0
时钟输入
24
第六章 8051单片机的串行口应用 例6-1 在单片机的串行口外接一个串入并出8位移位寄存器 74LS164 ,实现串口到并口的转换。数据从RXD端输出,移位脉冲 从TXD端输出。执行如下程序后LED指示灯轮流点亮。
时钟输入端
串行输入端
25
第六章 8051单片机的串行口应用 6.3 串行口应用举例 6.3.1 串口/并口转换 例: 使用74LS164的并行输出接8只发光二极管,利用它的 串入并出功能,把发光二极管从左向右依次点亮,并不断循环 之。
并行输出端
串行输入端
时钟输入端
22
串行输入并行输 出的移位寄存器
单片机原理及接口技术讲解
单片机原理及接口技术讲解单片机(Microcontroller)是一种集成电路芯片,内含有中央处理器(CPU)、存储器、输入输出端口、定时器计数器、串行通信接口等核心模块,可用于控制、计算、存储和通信等多种功能。
单片机的工作原理是通过处理器执行存储在存储器中的指令来实现各种功能。
它的内部包含一个由晶体管、逻辑门等构成的微处理器,负责执行计算和控制指令。
单片机的芯片上还集成了存储器,用于存储程序指令和数据。
输入输出端口可以与外部设备进行数据交互,定时器计数器可以实现精确的定时和计数功能。
通过串行通信接口,单片机可以与其他设备进行数据传输和通信。
单片机的接口技术是指单片机与外部设备进行数据传输和通信的技术。
常见的接口技术包括并行接口、串行接口、模拟接口等。
并行接口是通过多个并行数据线同时传输数据的接口技术。
常见的并行接口有通用并行接口(GPIO)、地址总线、数据总线等。
通用并行接口(GPIO)是一组可编程的并行输入输出线,可以被程序员控制来进行数据的输入输出。
地址总线用于传输内存或外设的地址信息,数据总线用于传输数据信息。
串行接口是通过单个数据线按照一定的时间顺序传输数据的接口技术。
常见的串行接口有串行通信接口(UART)、串行外设接口(SPI)、I²C接口等。
串行通信接口(UART)是一种通用的串行数据通信接口,用于将数据转换为串行格式进行传输。
串行外设接口(SPI)是一种高速串行接口,用于在单片机与其他外设之间进行数据传输和通信。
I²C接口是一种双线制的串行接口,用于在多个设备之间进行数据传输和通信。
模拟接口是通过模拟信号进行数据传输和通信的接口技术。
模拟接口包括模数转换接口、数字模拟转换接口等。
模数转换接口用于将模拟信号转换为数字信号,数字模拟转换接口用于将数字信号转换为模拟信号。
单片机接口技术的选择取决于具体应用的需求。
并行接口适合需要大量数据同时进行传输的场景,串行接口适合需要高速传输的场景。
51单片机的结构
51单片机的结构51单片机是一种广泛应用于嵌入式系统中的微控制器,其结构十分复杂而精致。
在实际的嵌入式系统设计中,了解对于程序员和硬件工程师来说至关重要。
首先,51单片机的结构主要由CPU、存储器、I/O口、定时器/计数器和串行通信接口等几个主要部分组成。
其中,CPU是整个单片机的核心部分,负责执行各种指令和控制整个系统的运行。
51单片机采用的是哈佛结构,即指令存储器与数据存储器分开,这样可以提高指令的执行效率。
其次,51单片机的存储器方面包括ROM和RAM两部分。
ROM主要用来存储程序代码和常量数据,而RAM则用来存储运行时产生的数据和临时变量。
在实际应用中,程序员需要合理地利用ROM和RAM的空间,以保证程序的运行效率和稳定性。
此外,51单片机还具有丰富的I/O口资源,可以用来连接各种外部设备和传感器。
通过I/O口,单片机可以与外部世界进行数据交换和通信,从而实现各种功能。
在实际的嵌入式系统设计中,工程师需要根据具体的需求选择合适的I/O口配置,以实现系统的功能。
定时器/计数器是51单片机中的重要模块之一,用来产生各种定时和计数功能。
通过定时器/计数器,单片机可以实现精确的时间控制和周期性任务处理,例如PWM波形产生、脉冲计数等。
工程师可以根据具体的需求配置定时器/计数器的参数,以满足系统的要求。
最后,51单片机还包含串行通信接口,可以用来与外部设备进行数据传输和通信。
通过串行通信接口,单片机可以与PC机、传感器等设备进行数据交换,从而实现系统的功能。
在实际应用中,工程师需要根据通信协议选择合适的串行通信接口,并合理地设计通信协议,以保证数据的可靠传输。
让我们总结一下本文的重点,我们可以发现,51单片机的结构复杂而精致,包含了CPU、存储器、I/O口、定时器/计数器和串行通信接口等多个部分。
了解51单片机的结构对于嵌入式系统设计和开发至关重要,只有深入理解其结构和原理,才能更好地应用在实际项目中,实现系统的稳定运行和功能实现。
单片机串行数据通信
第n 字符帧 … D7 1 0 起 始 位 D0 D1 D2 D3 D4 8 位数据 D5 D6 D7 1 停 止 位 0
第n +1 字符帧 D0 D1 …
10位的帧格式
23
2.方式1
串行口工作于模式 1 时, 为波特率可变的 8 位异步通信接 口。数据位由 P3.0 (RXD)端接收, 由P3.1(TXD)端发送。 传送 一帧信息为 10 位: 一位起始位(0), 8 位数据位(低位在前) 和一位停止位(1)。波特率是可变的, 它取决于定时器 T1 的 溢出速率及SMOD的状态。 (1)方式1 发送过程。 用软件清除 TI后, CPU执行任何一 条以 SBUF为目标寄存器的指令, 就启动发送过程。数据由
11位的帧格式
27
方式3
方式3为波特率可变的11位UART通信方式,除了波 特率以外,方式3和方式2完全相同。
28
方式2 和方式3
串行口工作于方式2 和方式3 时, 被定义为 9 位异步通信 接口。 它们的每帧数据结构是 11 位的: 最低位是起始位 (0), 其后是 8 位数据位(低位在先), 第 10 位是用户定义
(2)方式2和方式3接收过程。 与方式1类似,方式2和方式3接收过程始于在 RXD端检测
到负跳变时,为此, CPU以波特率 16倍的采样速率对 RXD端不
断采样。一检测到负跳变, 16分频计数器就立刻复位, 同时把
1FFH写入输入移位寄存器。计数器的16个状态把一位时间等 分成16份, 在每一位的第7、8、9个状态时, 位检测器对 RXD 端的值采样。如果所接收到的起始位无效(为1),则复位接 收电路, 等待另一个负跳变的到来。 若起始位有效(为 0) 则起始位移入移位寄存器, 并开始接收这一帧的其余位。 当 起始位 0 移到最左面时, 通知接收控制器进行最后一次移位。 把 8 位数据装入接收缓冲器 SBUF, 第 9 位数据装入SCON中
第6章 MCS-51定时计数器
6.1
定时/计数器概述
在单片机应用系统中,实现定时的方法一般有以下三种: (1)软件定时 (2)硬件定时 (3)可编程定时/计数器 采用了软、硬件结合的方法,即使用专门的定时/计数 器进行定时。定时/计数器通过对系统时钟脉冲或外部脉冲 信号进行计数来实现定时功能。 在单片机应用中,定时和计数的需求比较多,为了使用 方便并增加单片机的功能,就把定时电路集成到芯片中,称 之为定时/计数器。目前,几乎所有的单片机都集成了可编 程定时/计数器,为单片机提供定时和计数功能。
2.定时/计数器控制寄存器TCON
TCON 的作用是控制定时器的启动、停止,标志定时器的溢出 和中断情况。 T1 T1 T0 T0 INT1 INT1 INT0 INT0 TCON 中断 运行 中断 运行 中断 触发 中断 触发 标志 标志 标志 标志 标志 方式 标志 方式 位名称 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
第6 章
MCS-51的定时/计数器
【学习目标】 理解单片机定时/计数器T0和T1的功能和结构; 掌握定时/计数器工作方式寄存器TMOD的用途和设置 方法; 掌握定时/计数器控制寄存器TCON的用途和设置方法; 理解定时/计数器的4种工作方式; 掌握定时/计数器T0和T1的应用方法。
6.1.1 定时/计数器的结构 MCS-51 单片机内部有两个16位的可编程定时/计数器,称为 定时器0(T0)和定时器1(T1),都具有定时和计数的功能,可 编程选择其作为定时器或作为计数器用。 TMOD:选择定时器/计数器T0、T1的工作模式和工作方式。 TCON:控制T0、T1的启动和停止计数,同时包含了T0、T1的状态。
⒈ 工作方式0 13位计数器,由TL0低5位和TH0 8位组成,TL0低5位计数 满时不向TL0第6位进位,而是向TH0进位,13位计满溢出, TF0置“1”。最大计数值213 = 8192。 ⒉ 工作方式1 16位计数器,最大计数值为216 = 65536。当fosc=12MHZ, 最大定时65536 S,而用方式0最大定时时间为8192 S. ⒊ 工作方式2 8位计数器,仅用TL0计数,最大计数值为28= 256,计满溢 出后,一方面进位TF0,使溢出标志TF0 = 1;另一方面,使 原来装在TH0中的初值装入TL0。 优点:定时初值可自动恢复,TH0中存放初值;缺点:计数 范围小。 适用于需要重复定时,而定时范围不大的应用场合。
微机原理与单片机接口技术(第2版)李精华 第6章微处理器中断及定时计数器应用设计
断的查询顺序是“外部中断0→定时/计数器T0→外部中断1→定时/计数器T1→串行口中断”。 (5)若程序正在执行读/写IE和IP指令,则CPU执行该指令结束后,需要再执行一条其他指令才可
处理中断源的程序称为中断处理程序。 CPU执行有关的中断处理程序称为中断处理 。而返回断点的过程称为中断返回,中断响应 和处理过程如图6-1所示。
图6-1 中断响应和处理过程
4
2.中断的处理过程
①接收中断请求。 ②查看本级中断屏蔽位,若该位为1,则本级中断源参与优先级排队。 ③中断优先级选择。 ④处理机执行完一条指令后或者这条指令已无法执行完,则立即中止现 行程序。接着,中断部件根据中断级去指定相应的主存单元,并把被中 断的指令地址和处理机当前的主要状态信息存放在此单元中。 ⑤中断部件根据中断级又指定另外的主存单元,从这些单元中取出处理 机新的状态信息和该级中断控制程序的起始地址。 ⑥执行中断控制程序和相应的中断服务程序。 ⑦执行完中断服务程序后,利用专用指令使处理机返回被中断的程序或 转向其他程序。
7.中断屏蔽
对各中断级设置相应的屏蔽位。只有屏蔽位为1时,该中断级才能参加 中断优先级排队。中断屏蔽位可由专用指令建立,因而可以灵活地调整中断 优先级。有些机器针对某些中断源也设置屏蔽位,只有当屏蔽位为1时,相 应的中断源才起作用。。
6.2 单片机中断系统概述
51系列不同型号单片机的中断源的数量是不同的(5~11个) ,本节以8051单片机的中断系统为例分析51系列单片机的中断系 统,其它各种51单片机的中断系统与之基本相同,8051单片机的 中断系统结构框图如图6-2所示。8051单片机有5个中断源,2个中 断优先级,可以实现二级中断服务程序嵌套,每个中断源可以编 程为高优先级或低优先级中断,允许或禁止向CPU请求中断。与中 断系统有关的特殊功能寄存器有中断允许控制寄存器IE、中断优 先级控制寄存器IP和中断源寄存器TCON、SCON。
第6章 AT89S52单片机串行口(2)
【例6-3】 若时钟频率为11.0592MHz,选用T1的方式2 定时作为波特率发生器,波特率为2 400bit/s,求初值。 设T1为方式2定时,选SMOD = 0。 将已知条件带入式(7-3)中
波特率 =
2SMOD
fosc
32 12 (256 X )
= 2400
从中解得X = 244 = F4H。
21
2分频 TR2=1
时钟信号发生器
2分频
图6-23 T2时钟输出和外部事件计数方式示意图
22
由主振频率fosc和T2定时、自动装载方式的计数初值决定时 钟信号的输出频率,其设置公式如下:
主振频率(fosc)设定后,时钟信号输出频率就取决于计数 初值的设定。 在时钟输出模式下,计数器回0溢出不会产生中断请求。这 种功能相当于T2用作波特率发生器,同时又可用作时钟发生器。
20
6.5.4 定时器/计数器T2的可编程时钟输出 定时器/计数器T2还可通过软件编程在P1.0引脚输出时钟信 号。P1.0除用作通用I/O引脚外还有两个功能可供选用: 用于定时器/计数器2的外部计数输入和频率从61Hz至4MHz的 时钟信号输出。 通过软件对T2CON.1位C/复位为0,对T2MOD.1位T2OE置1 就可将T2选定为时钟信号发生器,而T2CON.2位TR2控制时钟 信号输出开始或结束(TR2为启动/停止控制位)。
两条线上传输的信号电平,当一个表示逻辑“1”时,另一 条一定为逻辑“0”。若传输中,信号中混入干扰和噪声 (共模形式),由于差分接收器的作用,就能识别有用信号 并正确接收传输的信息,并使干扰和噪声相互抵消。
32
RS-422A能在长距离、高速率下传输数据。它的最大传输 率为10Mbit/s,电缆允许长度为12m,如果采用较低传输速 率时,最大传输距离可达1219m。 为了增加通信距离,可采用光电隔离,利用RS-422A标准 进行双机通信的接口电路如图6-27所示。
51单片机的工作原理
51单片机的工作原理
首先,我们来介绍51单片机的内部结构。
51单片机包括CPU、存储器、输入输出端口、定时器/计数器、串行通信接口等部分。
其中,CPU是单片机的核心部分,负责执行指令和控制整个系统的运行。
存储器用于存储程序和数据,输入输出端口用于与外部设备进行数据交换,定时器/计数器用于定时和计数,串行通信接口用于与其他设备进行数据通信。
这些部分共同组成了51单片机的内部结构,实现了对外部设备的控制和数据处理。
其次,我们来介绍51单片机的工作过程。
在51单片机工作时,首先需要加载程序到存储器中,然后CPU按照程序的指令逐步执行,控制各个部分的工作。
当需要与外部设备进行数据交换时,CPU通过输入输出端口与外部设备进行通信,实现数据的输入和输出。
同时,定时器/计数器可以提供精确的定时和计数功能,串行通信接口可以实现与其他设备的数据通信。
通过这些部分的协同工作,51单片机可以实现对外部设备的精确控制和数据处理。
最后,我们来介绍51单片机的应用场景。
由于其小巧、低功耗、功能强大等特点,51单片机被广泛应用于各种电子设备中,如家电控制、工业自动化、汽车电子、通信设备等领域。
在这些应用场景中,51单片机可以实现对各种外部设备的精确控制和数据处理,发挥着重要的作用。
综上所述,51单片机是一种常见的微控制器,其工作原理是通过内部的逻辑电路和控制器实现对外部设备的控制和数据处理。
通过对其内部结构、工作过程和应用场景的介绍,我们可以更加深入地了解51单片机的工作原理,为其在实际应用中的使用提供更多的参考和指导。
51单片机定时器、串口、中断
51单⽚机定时器、串⼝、中断⽂章⽬录MCS-51功能单元⼀、定时器&计数器1. 数量:两个可编程的16位的定时器/计数器T0和T1;都是16位加法计数结构;分为⾼8位和低8位;TH0、TL0,TH1、TL1;定时器/计数器T0、T1是80C51的中断源之⼀,当数据寄存器溢出,则向CPU申请中断。
数据寄存器的复位状态为0。
为使计数值或定时值满⾜⾃⼰的要求,需预先将数据寄存器赋值,称为初值设定,中断中也要重新设定初值。
2. 定时器和计数器本质:都是计数器,对下降沿进⾏计数,计数达到溢出后置为标志位或者进⼊中断;3. 两者的区别:定时器是对内部的机械周期脉冲进⾏计数,每个脉冲都是⼀个机械周期;定时时间=机器周期*(2^L-初值) (L=13,16,8)计数器则是通过外部IO⼝进⾏脉冲计数,⼀个脉冲加⼀个数;对应IO⼝:T0-P3.4,T1-P3.5;计数长度:计数长度=(2^L-初值) (L=13,16,8)两者的模式切换通过TMOD控制4. TMOD结构图:5. TMOD详解GATE:门控位GATE =1,由中断引脚INT0(P3.2)、INT1(P3.3)和TCON中的位TR0、TR1共同控制来启动定时器/计数器GATE =0,由TR0和TR1置位来启动定时器/计数器**(⼀般为0)**C/!T:模式选择位:1时,计数器模式;0时,定时器模式;M0 & M1共同控制⼯作⽅式:项⽬开发⼀般⽤01,考试⼤概率考00;6. 启动停⽌与中断控制寄存器TCONTFx:定时器或者计数器溢出时置位1,请求中断,中断程序进⼊后⾃动清零;TRx:定时器启动控制位,当其等于1时定时器/计数器启动;7. 中断允许控制寄存器:IEETx:定时器/计数器的中断允许位EA:CPU总中断的允许位8. 定时器/计数器使⽤:(重点)⼯作⽅式的设置://设置定时器0⼯作在16位模式//C语⾔TMOD=0x01; //定时器//汇编MOV TMOD, #01H;计数初值的计算+装载:伪代码://机械周期1us,设置500us中断⼀次为FE0C//C语⾔TH0=0xFE;TL0=0x0C;//汇编MOV TH0, #0FEH ;MOV TL0, #0cH ;中断允许位的设置:伪代码://CEA=1;ET0=1;//assemblySETB EA ;turn on all interruptSETB ET0 ;turn on 0 interrupt开启定时器:伪代码://cTR0=1;//assemblySETB TR0 ;turn onCLR TR0 ;turn off !9. 使⽤实例:定时器使⽤⽅式(中断⽅式):ORG 0000H;AJMP MAIN;ORG 001BH;AJMP IRQ1;MAIN:MOV TMOD, #00H ;⼯作模式0,⾼8+低5MOV TH1, #0FCHMOV TL1, #03HSETB TR1;SETB ET1;SETB EA;AJMP $;IRQ1:MOV TMOD, #00HMOV TH1, #0FCHCPL P1.0RETI ;中断返回⼀定要加!计数器使⽤⽅式(中断⽅式):ORG 0000H;AJMP MAIN;ORG 001BH;AJMP IRQ1;MAIN:MOV TMOD, #04H ;计数器模式MOV TH1, #0FCH ;⼀千个下降沿中断⼀次 MOV TL1, #03HSETB TR1;SETB ET1;SETB EA;AJMP $;MOV TMOD, #00HMOV TH1, #0FCHCPL P1.0RETI ;中断返回⼀定要加!查询⽅式则是判断TF溢出标志,变⾼后进⼊⾃定义韩式处理数据,清空标志;⼆、并⾏⼝&串⾏⼝并⾏⼝:并⾏传输数据(不常⽤)占据资源⼤,错误率⾼,但快串⾏⼝:(重要)稳定,占据IO⼝⼩,准确,稍微慢1. 串⾏⼝控制寄存器SCON:SM0和SM1:串⾏⼝⽅式选择位;00-移位寄存器⽅式01-8位UART,波特率可变10-9位UART,波特率为fosc/64或fosc/32(PCON决定)11-9位UART,波特率可变⽅式1为常⽤通信⽅式;⽅式2、3为多机通信,⽅式0为移位寄存器,不常⽤;重要标志位:TI:发送完成标志RI:接收完成标志2. 串⼝波特率与定时器1关联,公式如下:波特率=2^SMOD * fosc / [32 * 12(2^K-初值)];(fosc系统主频)波特率翻倍寄存器:PCON只有最⾼位(SMOD)有效:为1时波特率翻倍,为0时不翻倍⽅式1串⼝通信接收代码:ORG 0000HLJMP MAINORG 0023HLJMP RX_TIMAIN:MOV SCON, #50HMOV PCON, #00HMOV TMOD, #02HMOV TH1, #0FDHMOV TL1, #0FDHSETB TR1SETB EASETB ESRX_TI:PUSH ACCMOV TH1, #0FDHMOV TL1, #0FDHMOV A, SBUF;处理POP ACCRETI发送套⽤代码:MOV SBUF, AJNB TI, $CLR TIRET三、中断系统所有中断控制位:TCON:TF1、TF0:定时器溢出标志、请求中断:IE1、IE0:外部中断溢出请求:IT1、IT0:外部中断触发⽅式选择-1下降沿触发、0低电平触发SCON:内部TI、RI触发接收发送中断。
单片机原理及接口技术(李朝青)课后习题答案——第六章
答:用 T1 控制位 C/T 切换定时器或计数器工作方式就可以使 T1 运行。定时器 T1 无工作模
式 3,将 T1 设置为工作模式 3,就会使 T1 立即停止计数,关闭。
8、以定时器/计数器 1 进行外部时间计数,每计数 1000 个脉冲后,定时器/计数器 1 转为定
时工作方式,定时 10ms 后又转为计数方式,如此循环不止。假定 为 6WHZ,用模式 1 编程。
16、89C51 单片机的定时器在何种设置下可提供三个 8 位计数器定时器?这时,定时器 1 可
作为串行口波特率发生器。若波特率按 9600b/s,4800b/s,2400b/s,1200b/s,600b/s,100b/s 来考虑,
则此时可选用的波特率是多少(允许存在一定误差)?设 fosc=12MHz。
SJMP LOOP2
;时间未到,转 LOOP2,继续查询
9、一个定时器定时时间有限,如何实现两个定时器的串行定时以满足较长定时时间的要求?
答:当一个定时器溢出时,设置另一个定时器的初值为 0 开始定时。
10、使用一个定时器,如何通过软硬件结合方法实现较长时间的定时?
答:设定好定时器的定时时间,采用中断方式用软件设置计数次数,进行溢出次数累计,从
置 TMOD 中的 M1M0 为 00
(2) 模式 1:与模式 0 的唯一差别是寄存器 TH 和 TL 以全部 16 位参与操作。定时时间
t=(216-初值)×振荡周期×12;计数长度位 216=65536 个外部脉冲
置 TMOD 中的 M1M0 为 01
(3) 模式 2:把 TL0 和 TL1 配置成一个自动重装载的 8 位定时器/计数器。TL 用作 8 位
18、 设 fosc=12MHz。试编制一段程序,功能为:对定时器 T0 初始化,使之工作在模式 2,
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 式中,M为计数器模值,该值和计数器工作方式
有关。在方式0时M为213;在方式1时M为216;在 方式2和方式3时M为28。
• 把计数值换算成二进制装入THX、TLX中。
2.定时器初值的计算 在定时器模式下,计数器由单片机主脉冲经12 分频后计数。因此,定时器定时时间T的公式: T=(M-TC)TP 上式也可写成:TC=M-T/TP
;P1.0的状态取反
例:假设系统时钟为6MHz,编写定时器T0产生1秒定 时的程序。
(1)定时器T0工作方式的确定 因定时时间较长,采用哪一种工作方式?由定时器各
振荡器 1/12 C/T=0
TX TRX
GATE 1
INTX
C/T=1
& ≥1
TLX
TFX
THX
去串口
初值同时送THX、TLX,启动后可无限次运行,常用 于串行口波特率的产生。
4. 方式3—2个8位方式
只适用于定时器/计数器T0 。此时T1可用来作 串行口波特率产生器。
T0分为两个独立的8位计数器:TL0和TH0 。TL0 使用T0的状态控制位C/T*、GATE、TR0、,而TH0 被固定为一个8位定时器(不能作外部计数模式), 并使用定时器T1的状态控制位TR1和TF1。
RESET: AJMP MAIN
;转主程序
ORG 000BH
;T0的中断入口
AJMP IT0P
;转T0中断处理程序IT0P
ORG 0100H
MAIN: MOV SP,#60H
;设堆栈指针
MOV TMOD,#01H ;设置T0为方式1
ACALL PT0M0 HERE: AJMP HERE PT0M0: MOV TL0,#0CH
第六章 定时器/计数器与串行通信口
定时器/计数器学习目标 定时器/计数器的结构及原理 定时器/计数器的各种工作方式 掌握定时器/计数器的应用
6.1.1 定时/计数器的基本原理
定时/计数器的核心部件是二进制加1计数器 (TH0、TL0或TH1、TL1) 。
1. 定时功能----计数输入信号是内部时钟脉 冲,每个机器周期使寄存器的值加1。所以, 计数频率是振荡频率的1/12。
MOV TH0,#0FEH SETB TR0 SETB ET0 SETB EA RET ITOP: MOV TL0,#0CH 值 MOV TH0,#0FEH CPL P1.0 RETI
;调用子程序PT0M0 ;自身跳转 ;T0初始化程序,T0置初值
;启动T0 ;允许T0中断 ;CPU开中断
;T0中断服务子程序,T0重置初
中断请求标志 启动定时/计数器 触发方式选择
0 停止 1 启动
0 低电平 1 下降沿
TCON可位寻址,字节地址是88H,复位时所有位 清零。低4位与外部中断有关,已介绍。高4位的功 能如下:
(1) TF1、TF0——计数溢出标志位,计数溢出时由 硬件自动置1,向CPU请求中断,当CPU响应时,由 硬件清0。 (2) TR1、TR0——计数运行控制位
X化为16进制,即X=FE0CH=1111111000001100B。 所以,T0的初值为:
TH0=0FEH TL0=0CH
(2)初始化程序设计
(3)程序设计
中断服务程序除了完成要求的产生方波这一工作 之外,还要注意将计数初值重新装入定时器中,为 下一次产生中断作准备。
参考程序:
ORG 0000H
由于方式0是为兼容MCS-48而设,其计数初值 计算复杂,在实际应用中,一般不用方式0,而采 用方式1。
一、方式1应用
例:假设系统时钟频率采用6MHz,要在P1.0上输出一 个周期为2ms的方波,如图所示。
(1)计算初值
设:需要装入T0的初值为X,则有: (216-X)×2×10-6=1×10-3 216-X=500 X=65036
2. 计数功能----计数脉冲来自相应的外部输入 引脚,T0为P3.4,T1为P3.5。当输入脉冲信号 从1到0的负跳变时,计数器就自动加1。计数的 最高频率为振荡频率的1/24。
6.1.2 定时器/计数器的控制寄存器
1.启/停与中断控制寄存器TCON (88H)
D7 D6 D5 D4 D3 D2 D1 D0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
器 C/T=0
TX TRX GATE
INTX
计数脉冲输入
1
≥1
C/T=1
TLX THX TFX
低5位 8位
&
13位计数器
计数
器
2. 方式1—16位方式
振荡器
TX TRX GATE 1 INTX
1/12 C/T=0
C/T=1 &
≥1
TLX THX TFX 8位 8位
16位计数器
3. 方式2—8位自动装入时间常数方式
1:启动定时器/计数器工作 0:停止定时器/计数器工作
2.工作方式控制寄存器TMOD (89H)
控 制 T1
控 制 T0
89H GATE C/T M 1 M 0 GATE C/T M 1 M 0
和T0 类同
M1 M0 00 01 10 11
0 1
0 1
方式 方式0 方式1 方式2 方式3
定时器模式 计数器模式
各引脚与T0的逻辑关系如图所示:
当T1用作串行口的波特率发生器时,T0才工作 在方式3。T0处于方式3时, T1可定为方式0、方式 1和方式2,用来作为串行口的波特率发生器(通常 设置成方式2 ),或不需要中断的场合。
6.1.4 定时/计数器常数的计算
1.计数器初值的计算 • 把计数器计满为零所需要的计数值设定为C,计
与INT 0 无关 与INT 0 有关
GATE——门控位
0:以运行控制位TRX(X=0,1)来启动定时器/计 数器运行。
1:TRX=1且中断引脚(INT0或INT1)上为高电平时, 启动定时器/计数器运行。
6.1.3 定时器/计数器的工作方式(4种)
1. 方式0—13位方式
定时
振荡器
1/12Байду номын сангаас
M:模值,和定时器的工作方式有关; TP:单片机的机器周期(振荡周期TCLK的12倍); TC:定时器的定时初值。
例:方式1,定时时间为5ms,主频为6MHz,求计数 初值?
3.初始化设置顺序
• 工作方式控制字TMOD的设置; • 计数初值的装入; • 开中断; • 启/停位的设置等。
6.1.5 定时器/计数器的编程和应用