c51单片机的定时器和中断
51单片机定时器的使用

151单片机定时器/计时器的使用步骤:1、 打开中断允许位:对IE 寄存器进行控制,IE 寄存器各位的信息如下图所示:EA : 为0时关所有中断;为1时开所有中断ET2:为0时关T2中断;为1时开T2中断,只有8032、8052、8752才有此中断 ES : 为0时关串口中断;为1时开串口中断 ET1:为0时关T1中断;为1时开T1中断 EX1:为0时关1时开 ET0:为0时关T0中断;为1时开T0中断 EX0:为0时关1时开2、 选择定时器/计时器的工作方式:定时器TMOD 格式CPU 在每个机器周期内对T0/T1检测一次,但只有在前一次检测为1和后一次检测为0时才会使计数器加1。
因此,计数器不是由外部时钟负边沿触发,而是在两次检测到负跳变存在时才进行计数的。
由于两次检测需要24个时钟脉冲,故T0/T1线上输入的0或1的持续时间不能少于一个机器周期。
通常,T0或T1输入线上的计数脉冲频率总小于100kHz 。
方式0:定时器/计时器按13位加1计数,这13位由TH 中的高8位和TL 中的低5位组成,其中TL 中的高3位弃之不用(与MCS-48兼容)。
13位计数器按加1计数器计数,计满为0时能自动向CPU 发出溢出中断请求,但要它再次计数,CPU 必须在其中断服务程序中为它重装初值。
方式1:16位加1计数器,由TH 和TL 组成,在方式1的工作情况和方式0的相同,只是计数器值是方式0的8倍。
2方式2:计数器被拆成一个8位寄存器TH 和一个8位计数器TL ,CPU 对它们初始化时必须送相同的定时初值。
当计数器启动后,TL 按8位加1计数,当它计满回零时,一方面向CPU 发送溢出中断请求,另一方面从TH 中重新获得初值并启动计数。
方式3:T0和T1工作方式不同,TH0和TL0按两个独立的8位计数器工作,T1只能按不需要中断的方式2工作。
在方式3下的TH0和TL0是有区别的:TL0可以设定为定时器/计时器或计数器模式工作,仍由TR0控制,并采用TF0作为溢出中断标志;TH0只能按定时器/计时器模式工作,它借用TR1和TF1来控制并存放溢出中断标志。
第05章 MCS-51单片机的中断与定时(1-4)

2
1
TH0
;P1.0输出“0” ;P1.0输出“1”
5.2 MCS-51单片机的中断系统
五、外中断应用举例
1. 中断初始化程序
设置外中断源的触发方式 设置中断允许寄存器IE 设置中断优先级寄存器IP
2. 中断服务程序
保护现场 中断处理 恢复现场
23/65
5.2 MCS-51单片机的中断系统
【例5-3】 设外部中断0为下降沿触发方 式,高优先级,试编写中断初始化程序
5.2 MCS-51单片机的中断系统
【例5-4】 将单脉冲接到外中断0(INT0)引脚,利 用P1.0作为输出,经反相器接发光二极管。编写程 序,每按动一次按钮,产生一个外中断信号,使发 光二极管的状态发生变化,由亮变暗,或反之
P1.0 单脉冲 发生器 INT0
1
+5V
8031
26/65
5.2 MCS-51单片机的中断系统
串口:0023H
20/65
5.2 MCS-51单片机的中断系统
四、中断请求的撤除
1.定时/计数器中断请求标志TF0/TF1会自动撤除 2.串行口中断请求标志TI/RI要用指令撤除
CLR TI ;清TI标志位 CLR RI ;清RI标志位
3.负脉冲触发的外中断请求标志IE0/IE1会自动撤除 4.低电平触发的外中断请求信号需要外加电路撤除
下次课前请预习5.3节
30/65
5.3 51单片机的定时器/计数器
MCS-51单片机内部有两个16位定时/计数器 T0和T1,简称定时器0和定时器1
在特殊功能寄存器TMOD和TCON的控制下, 它们既可以设定成定时器使用,也可以设定 成计数器使用
定时/计数器有4种工作方式,具有中断功能, 可以完成定时、计数、脉冲输出等任务
单片机中的中断与定时器的原理与应用

单片机中的中断与定时器的原理与应用在单片机(Microcontroller)中,中断(Interrupt)和定时器(Timer)是重要的功能模块,广泛应用于各种嵌入式系统和电子设备中。
本文将介绍中断和定时器的基本原理,并探讨它们在单片机中的应用。
一、中断的原理与应用中断是指在程序执行过程中,当发生某个特定事件时,暂停当前任务的执行,转而执行与该事件相关的任务。
这样可以提高系统的响应能力和实时性。
单片机中的中断通常有外部中断和定时中断两种类型。
1. 外部中断外部中断是通过外部触发器(如按钮、传感器等)来触发的中断事件。
当外部触发器发生状态变化时,单片机会响应中断请求,并执行相应的中断服务程序。
外部中断通常用于处理实时性要求较高的事件,如按键检测、紧急报警等。
2. 定时中断定时中断是通过定时器来触发的中断事件。
定时器是一种特殊的计时设备,可以按照设定的时间周期产生中断信号。
当定时器倒计时完成时,单片机会响应中断请求,并执行相应的中断服务程序。
定时中断常用于处理需要精确计时和时序控制的任务,如脉冲计数、PWM波形生成等。
中断的应用具体取决于具体的工程需求,例如在电梯控制系统中,可以使用外部中断来响应紧急停车按钮;在家电控制系统中,可以利用定时中断来实现定时开关机功能。
二、定时器的原理与应用定时器是单片机中的一个重要模块,可以用于计时、延时、频率测量等多种应用。
下面将介绍定时器的工作原理和几种常见的应用场景。
1. 定时器的工作原理定时器是通过内部时钟源来进行计时的。
它通常由一个计数器和若干个控制寄存器组成。
计数器可以递增或递减,当计数值达到设定值时,会产生中断信号或触发其他相关操作。
2. 延时应用延时是定时器最常见的应用之一。
通过设定一个合适的计时器参数,实现程序的精确延时。
例如,在蜂鸣器控制中,可以使用定时器来生成特定频率和持续时间的方波信号,从而产生不同的声音效果。
3. 频率测量应用定时器还可以用于频率测量。
C51单片机的几种常用延时程序设计2024

引言概述:C51单片机是一种广泛应用于嵌入式系统中的微控制器,它具有高度集成化、易于编程和灵活性强等特点。
在C51单片机的软件开发过程中,延时程序设计是非常重要的一部分。
本文将介绍C51单片机中几种常用的延时程序设计方法,包括循环延时、定时器延时、外部中断延时等。
这些方法不仅可以满足在实际应用中对延时的需求,而且可以提高程序的稳定性和可靠性。
正文内容:一、循环延时1. 使用循环控制语句实现延时功能,例如使用for循环、while循环等。
2. 根据需要设置延时的时间,通过循环次数来控制延时的时长。
3. 循环延时的精度受到指令执行时间的影响,可能存在一定的误差。
4. 循环延时的优点是简单易用,适用于较短的延时时间。
5. 注意在循环延时时要考虑其他任务的处理,避免长时间的等待造成程序卡死或响应延迟。
二、定时器延时1. 使用C51单片机内置的定时器模块来实现延时。
2. 配置定时器的工作模式,如工作方式、定时器精度等。
3. 设置定时器的初值和重装值,控制定时器中断的触发时间。
4. 在定时器中断服务函数中进行延时计数和延时结束标志的设置。
5. 定时器延时的优点是精确可控,适用于需要较高精度的延时要求。
三、外部中断延时1. 在C51单片机上配置一个外部中断引脚。
2. 设置外部中断中断触发条件,如上升沿触发、下降沿触发等。
3. 在外部中断中断服务函数中进行延时计数和延时结束标志的设置。
4. 外部中断延时的优点是能够快速响应外部信号,适用于实时性要求较高的场景。
5. 注意在外部中断延时时要处理好外部中断的抖动问题,确保延时的准确性。
四、内部计时器延时1. 使用C51单片机内部的计时器模块来实现延时。
2. 配置计时器的工作模式,如工作方式、计时器精度等。
3. 设置计时器的初值和重装值,使计时器按照一定的频率进行计数。
4. 根据计时器的计数值进行延时的判断和计数。
5. 内部计时器延时的优点是能够利用单片机内部的硬件资源,提高延时的准确性和稳定性。
中断及定时器实验报告

一、实验目的1. 理解中断和定时器的基本概念及工作原理。
2. 掌握51单片机中断系统和定时器的配置方法。
3. 学会使用中断和定时器实现特定功能,如延时、计数等。
4. 培养动手实践能力和问题解决能力。
二、实验原理中断是计算机系统中的一种机制,允许CPU在执行程序过程中,暂停当前程序,转去执行另一个具有更高优先级的程序。
51单片机具有5个中断源,包括两个外部中断(INT0、INT1)、两个定时器中断(定时器0、定时器1)和一个串行口中断。
定时器是51单片机内部的一种计数器,可以用于产生定时中断或实现定时功能。
51单片机有两个定时器,即定时器0和定时器1。
定时器可以工作在模式0、模式1、模式2和模式3。
三、实验内容及步骤1. 实验内容一:外部中断实验(1)实验目的:掌握外部中断的使用方法,实现按键控制LED灯的亮灭。
(2)实验步骤:- 使用Keil for 8051编译器创建项目。
- 根据电路原理图连接电路。
- 编写程序,配置外部中断,实现按键控制LED灯的亮灭。
2. 实验内容二:定时器中断实验(1)实验目的:掌握定时器中断的使用方法,实现LED灯闪烁。
(2)实验步骤:- 使用Keil for 8051编译器创建项目。
- 根据电路原理图连接电路。
- 编写程序,配置定时器中断,实现LED灯闪烁。
3. 实验内容三:定时器与外部中断结合实验(1)实验目的:掌握定时器与外部中断结合使用的方法,实现按键控制LED灯闪烁频率。
(2)实验步骤:- 使用Keil for 8051编译器创建项目。
- 根据电路原理图连接电路。
- 编写程序,配置定时器中断和外部中断,实现按键控制LED灯闪烁频率。
四、实验结果与分析1. 外部中断实验:成功实现了按键控制LED灯的亮灭。
当按下按键时,LED灯亮;松开按键时,LED灯灭。
2. 定时器中断实验:成功实现了LED灯闪烁。
LED灯每隔一定时间闪烁一次,闪烁频率可调。
3. 定时器与外部中断结合实验:成功实现了按键控制LED灯闪烁频率。
51单片机的功能单元(中断定时器等)

1 1
D C Q Q
D0
1
端口锁存器应为“ 。 端口锁存器应为“1”。 3、替代功能 、
P3.0 TXD RXD INT0 INT1 P3.4 P3.5 P3.6 P3.7 T0 T1 WR RD P3.1 P3.2 P3.3
P3W P3R2
பைடு நூலகம்
变异输入 图3、P3口内部结构
10
5.1.5 P0~P3端口功能总结 P0~P3端口功能总结 使用中应注意的问题: 使用中应注意的问题: P0 ~ P3 口都是并行 I/O 口 , 但 P0 口和 P2 口 还可用来构建数 口都是并行I/O I/O口 口和P 电路中有一个MUX 据总线和地址总线,所以电路中有一个MUX,进行转换。 据总线和地址总线,所以电路中有一个MUX,进行转换。 而P1口和P3口无构建系统的数据总线和地址总线的功能, 口和P 无构建系统的数据总线和地址总线的功能, 因此,无需转接开关MUX MUX。 因此,无需转接开关MUX。 只有P 只有P0口是一个真正的双向口,P1~P3口都是准双向口。 是一个真正的双向口 双向口, 都是准双向口 准双向口。 原因: 口作数据总线使用时, 为保证数据正确传送, 原因 :P0 口作数据总线使用时 , 为保证数据正确传送 , 需 解决芯片内外的隔离问题, 解决芯片内外的隔离问题 , 即只有在数据传送时芯片内外 才接通; 否则应处于隔离状态。 为此, 才接通 ; 否则应处于隔离状态 。 为此 , P0 口的输出缓冲器 应为三态门。 应为三态门。 P3 口具有第二功能 。 因此在 P3 口电路增加了第二功能控制 口具有第二功能。因此在P 逻辑。这是P 口与其它各口的不同之处。 逻辑。这是P3口与其它各口的不同之处。
18
5.1.6
51单片机的定时器中断

51单⽚机的定时器中断⼀、中断的概念CPU在处理某⼀事件A时,发⽣了另⼀事件B请求CPU迅速去处理(中断产⽣);CPU暂时中断当前的⼯作,转去处理事件B(中断响应和中断服务);待CPU将事件B处理完毕后,再回到原来事件A中断的地⽅继续处理事件A(中断返回),这⼀过程称为中断。
⼆、中断的优先级51单⽚机⾥⼀共有5个中断源,分别是外部中断0,定时器0,外部中断1,定时器1,串⼝中断,中断优先级从⼤到⼩分别是0,1,2,3,4。
三、中断的优点1.分时操作。
CPU可以分时为多个I/O设备服务,提⾼了计算机的利⽤率;2.实时响应。
CPU能够及时处理应⽤系统的随机事件,系统的实时性⼤⼤增强;3.可靠性⾼。
CPU具有处理设备故障及掉电等突发性事件能⼒,从⽽使系统可靠性⾼。
四、定时器中断⼯作⽅式寄存器TMOD:GATE:门控位。
GATE=0时,只要⽤软件使TCON中的TR0或TR1为1,就可以启动定时/计数器⼯作;GATA=1时,要⽤软件使TR0或TR1为1,同时外部中断引脚或也为⾼电平时,才能启动定时/计数器⼯作。
即此时定时器的启动多了⼀个条件。
(默认情况下等于0不要设置)。
C/T:定时/计数模式选择位。
=0为定时模式;=1为计数模式。
M1M0:⼯作⽅式设置位。
定时/计数器有四种⼯作⽅式,由M1M0进⾏设置。
(正常情况旋⽅式1,即M1M0=01)。
中断寄存器:EA是总中断,ET0是定时器0中断,EX0是外部中断0,ET1是定时器1中断,EX1是外部中断1。
【参考资料】51单⽚机第⼆讲(定时器中断)。
51单片机定时器工作原理

51单片机定时器工作原理51单片机是一款广泛使用的微控制器,它的定时器功能可以用于实现定时操作、计时、脉冲计数等功能。
本文将介绍51单片机定时器的工作原理。
01、51单片机的定时器51单片机的定时器包括两个独立的定时器,即定时器0和定时器1。
每个定时器都由一个8位计数器和一组控制寄存器组成。
这些寄存器被映射到特定的内存地址,并且可以通过读写这些地址来控制定时器的工作方式。
02、定时器的计数器定时器的计数器是一个8位的寄存器,它通过每次递增来实现计时操作。
当计数器的值达到最大值255时,它会自动重置为0,从而形成一个循环计时器。
通过改变计数器的初值可以改变定时器的定时时长。
在51单片机中,计数器的初值可以通过内部RAM、外部RAM或IO 口进行设置。
03、定时器的工作模式51单片机的定时器可以工作在4种不同的模式下,分别是方式0、方式1、方式2和方式3。
每种模式下,定时器的工作方式都不同,可以实现不同的定时器操作,如定时操作、计时操作、脉冲计数等。
在每种模式下,定时器的一些控制寄存器的设置也是不同的。
04、定时器的中断控制定时器在计时过程中可以触发中断信号,用于提示系统完成定时操作。
在51单片机中,可以通过设置中断允许位来开启定时器中断功能。
当定时器计时满足中断触发条件时,会自动发出中断信号,通知系统进行相应的中断处理。
05、注意事项在使用51单片机定时器时需要注意以下问题:1) 在每次使用定时器之前,必须先进行相应的初始化设置。
2) 定时器操作时需要注意定时器的中断允许位的设置,以便及时处理定时器计时的中断。
3) 在使用定时器时不要过度依赖计时精度,因为51单片机的晶振精度和定时器的延时误差可能会导致计时误差。
4) 在设计系统时应合理规划定时器的使用,以充分利用定时器的功能,同时避免出现冲突或资源浪费现象。
以上就是51单片机定时器的工作原理和注意事项,仅供参考。
通过对单片机定时器的深入学习和了解,可以更好地控制单片机系统的定时操作,实现更高效、可靠的工作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二、方式1 方式
方式1结构 图6-5 T0 (或T1) 方式 结构 或
三、方式2 方式
TMOD 申请 TCON 中断 D7 TF1 TR1 TF0 TR0 T1引脚 溢出 TL1 重装初值控制 TH1 8位 &
≥1
0 1
M0 M1 C/T
D4
1
1 0
机器周期
GATE D7
1 INT1引脚
D0
方式2结构 图6-6 T0 (或T1) 方式 结构 或
图6-3 方波硬件设计和仿真波形
(2)源程序 ) //中断方式 中断方式 #include "reg51.h" #include "stdio.h" Uart_Init(); sbit P1_1=P1^1; void main() { TMOD=0X01; // T0工作在方式 工作在方式1 工作在方式 TL0=0xB0; //给TL0置初值 给 置初值 TH0=0x3c; //给TH0置初值 给 置初值 ET0=1; //开串行口中断 开串行口中断 EA=1; TF0=0; TR0=1; //启动 启动T0 启动 while(1) ; //设置断点处 设置断点处 } void Int_T0() interrupt 1 using 2 { TL0=0xB0; TH0=0x3c; //重赋初值 重赋初值 P1_1=!P1_1; //定时时间到 定时时间到P1_1取反 定时时间到 取反 printf("Timer1 overflow in Mode 1\n");/* 定时 溢出后, 器0溢出后,输出提示信息 */ 溢出后 }
计数器控制寄存器TCON 三、定时/计数器控制寄存器 定时 计数器控制寄存器
定时器控制字TCON的格式如下。 位地址 位符号 8FH TF1 8EH TR1 8DH TF0 8CH TR0 8BH IE1 8AH IT1 89H IE0 88H IT0
各位定义如下: ⑴ TF1-定时器T1溢出标志。当定时器T1计满溢出时,由硬件使TF1置“ 并且申请中断。进入中断服务程序后,由硬件自动清“0”,在查询方式下用软件 ⑵ TF0-定时器T0溢出标志。当定时器T0计满溢出时,由硬件使TF0置“ 并且申请中断。进入中断服务程序后,由硬件自动清“0”,在查询方式下用软件 ⑶ TR1 —— 定时 / 计数器T1运行控制位。软件置位,软件复位。 与GATE有关,分两种情况: 当GATE = 0 时,若TR1 = 1,开启T1计数工作; 若TR1 = 0,停止T1计数。 当GATE = 1 时,若TR1 = 1 且/INT1 = 1时,开启T1计数; 若TR1 = 1 但 /INT1 = 0,则不能开启T1计数。 若TR1 = 0, 停止T1计数。
四、定时/计数器的初始化 定时 计数器的初始化
1.定时器初始化的主要步骤 . 选择工作方式,即对TMOD 赋初值。 ⑴ 选择工作方式,即对 给定时器赋初值,即把初始常数装入TH0 TL0 或 TH1 TL1。 ⑵ 给定时器赋初值,即把初始常数装入 ⑶ 根据需要设置中断控制字 直接对中断允许寄存器IE 和 优先级寄存器 IP 设置。 启动定时/计数器 ⑷ 启动定时 计数器 ① 若已规定用软件启动(即GATE =0), 则可把TR0 或 TR1 置1 ② 若已规定由外中断端子电平启动(即GATE =1), 则需给外端子加启动电平。 2.定时器初值设定方法 . 根据定时长短,选择工作方式 设用M 选择工作方式, ⑴ 根据定时长短 选择工作方式,设用 表示最大计数值,则 各种方式计数最大值如下。 方式 0 M= 213=8192 方式 1 M= 216=65536 方式 2 M= 28=256 方式 3 M=28=256
=0,M1M0=00;T0不用可为任意方式,只要不使其进入方式 即可, , 不用可为任意方式, 即可, ; 不用可为任意方式 只要不使其进入方式3即可 一般取0即可 即可。 各位设置如下: 一般取 即可。TMOD各位设置如下: 各位设置如下
GATE 0 0 M1 0 M0 0 GATE 0 0 M1 0 M0 0
(3)Proteus仿真 ) 仿真 经Keil软件编译通过后,可利用Proteus软件进行仿真。 在Proteus ISIS编辑环境中绘制仿真电路图,或者打开配套光盘中的 “例程\第六章\例6-1 方波”文件夹内的“方波.DSN”仿真原理图文件。 将编译好的“方波.hex”文件加入AT89C51,启动仿真。 如图6-3所示,可以看到周期为100ms的方波。 (4)下载验证 ) 本实验可以通过SP-28 USB下载验证,可以观察到VD2不停的亮灭。
(3)M1、M0-工作方式选择位,其功能见表6-1。 表6-1 M1和M0 工作方式选择位 M1 0 0 1 1 M0 0 1 0 1 模式 0 1 2 3 说明 13位定时 计数器,高八位 (7~0)+ 低五位 位定时/计数器 高八位TH ~ ) 低五位TL 位定时 计数器,
(4 ~0) )
16位定时 计数器 TH(7 ~ 0)+ TL(7 ~ 0) 位定时/计数器 位定时 ) ) 8位计数初值自动重装 TL(7 ~ 0) TH(7~0) 位计数初值自动重装 ) ~ ) T0运行,而T1停止工作,8位定时 计数。 运行, 停止工作, 位定时 计数。 位定时/计数 运行 停止工作
定时/计数器 计数器4种工作方式 第二节 定时 计数器 种工作方式
一、方式0 方式
TMOD 申请 TCON 中断 D7 TF1 TR1 TF0 TR0 T1引脚 溢出 TH1 0 0 0 TL1 8位 5位 &
≥1
0 0
M0 M1 C/T
D4
1
1 0
机器周期
GATE D7
1 INT1引脚
D0
方式0结构 图6-4 T0(或T1)方式 结构 或 方式
(1)硬件设计 ) 硬件设计见图6-3所示。 硬件设计见图
图6-8 1ms方波
例6.3 用AT89S51单片机产生“嘀、嘀、…”报警声从P3.7端口输出, 产生频率为1KHz, 1KHZ方波从P3.7输出0.2秒,接着0.2秒从P3.7输出电平信号, 如此循环下去,就形成所需的报警声了。 解:生活中常常到各种各样的报警声,例如“嘀、嘀、…”就是常见的一种声音报警声, 但对于这种报警声,嘀0.2秒钟,然后断0.2秒钟,如此循环下去, 假设嘀声的频率为1KHz,则报警声时序图如图6-9所示。
C /T = 0
C /T =1
图6-2 定时/计数器的工作原理结构框图
二、定时/计数器工作方式控制寄存器 TMOD 定时 计数器工作方式控制寄存器 TMOD为T0、T1的工作方式控制寄存器,其格式如下。
C /T /T
定时器 T1
定时器T0
GATE
C/T
M1
M0
GATE
C/T
M1
M0
(1)GATE -门控位,控制定时器的两种启动方式, 当GATE = 0,只要TR0 或 TR1 置1, 定时器则可启动。GATE = 1,除TR0 或 TR1 置1 外,还必须等待外部脉冲输入端 P3.4 或P3.5 高电平到,定时器才能启动。若外部输入低电平,则 定时器关闭,这样可实现由外部控制定时器的启停,故称该位 为门控位。
一、定时/计数器的结构和工作原理 定时 计数器的结构和工作原理 1.定时/计数器的结构 .定时 计数器的结构
图6-1 TMOD、TCON与T0、T1的结构框图
2.定时/计数器工作原理 .定时 计数器工作原理 定时器工作前先装入初值,利用送数指令将初值装入TH0 和 TL0 或 TH1和TL1, 高位数装入TH0 和TH1,低位数装入 TL0 和 TL1。当发出启动命令后, 装初值寄存器开始计数,连续加1,每一个机器周期加1 一次,加到满值(各位全1)。 若再加1,则溢出,同时将初值寄存器清零。如果继续计数定时,则需要重新赋初值。
D0
INT0引脚
方式3下的逻辑结构 图6-7 T0方式 下的逻辑结构 方式 2.T0工作方式 下的定时器 计数器 . 工作方式 下的定时器/计数器 工作方式3下的定时器 计数器T1 如果定时器/计数器T0已工作在工作方式3,则定时器/计数器T1只能工作在方式0、 方式1或方式2下,因为它的运行拉制位TR1及计数溢出标志位 TF1已被定时器/计数器T0借用,如图6-7所示。
故TMOD = 00H。系统复位后TMOD为0,所以不必对TMOD置初值。 下面计算500µs定时T1的初值: 机器周期 T机=12/fosc=12/(6×106)=2µs 设初值为X则:(213-X)×2×10-6 s =500×10-6 s X = 7942D=1111100000110B=1F06H 因为在作13位计数器用时,TL1高3位未用,应写0,X的低5位装入TL1的低5位, 所以TL1=06H;X的高8位应装入TH1,所以TH1=F8H。
定时器/计数器的应用举例 第三节 定时器 计数器的应用举例
一、方式0、方式 的应用 方式 、方式1的应用
/T /T 选择T1方式0用于定时, P3.7引脚输出周期为1ms的方波 晶振fosc= 6MHz。 T1方式 引脚输出周期为1ms的方波, 例C6.2 选择T1方式0用于定时,在P3.7引脚输出周期为1ms的方波,晶振fosc= 6MHz。 根据题意,只要使P3.7每隔500 取反一次即可得到1ms方波, P3.7每隔500µs 1ms方波 解:根据题意,只要使P3.7每隔500 s取反一次即可得到1ms方波, C / T T1的定时时间为500µs 因而T1的定时时间为500 设为定时方式0: 因而T1的定时时间为500 s。将T1设为定时方式 :GATE=0, 设为定时方式 ,
定时初值计算,设初值为X,最大计数值为M。 ⑵ 定时初值计算,设初值为 初值X与机器周期I机及定时时间T的关系为: (M-X)T机 = T (6-1) 其中: 其中:T机 =12个时钟周期 =12 /fOSC X = M - T/ T机 (6-2)