定时计数器T0T1程序设计-2014

合集下载

单片机原理及接口技术(C51编程)(第2版)-习题答案 - 第7章习题解答

单片机原理及接口技术(C51编程)(第2版)-习题答案 - 第7章习题解答

第7章思考题及习题7参考答案一、填空1.如果采用晶振的频率为3MHz,定时器/计数器T x(x=0,1)工作在方式0、1、2下,其方式0的最大定时时间为,方式1的最大定时时间为,方式2的最大定时时间为。

答:32.768ms,262.144ms,1024µs2.定时器/计数器用作计数器模式时,外部输入的计数脉冲的最高频率为系统时钟频率的。

答:1/243.定时器/计数器用作定时器模式时,其计数脉冲由提供,定时时间与有关。

答:系统时钟信号12分频后,定时器初值4.定时器/计数器T1测量某正单脉冲的宽度,采用方式可得到最大量程?若时钟频率为6MHz,求允许测量的最大脉冲宽度为。

答:方式1定时,131.072ms。

5. 定时器T2 有3种工作方式:、和,可通过对寄存器中的相关位进行软件设置来选择。

答:捕捉,重新装载(增计数或减计数),波特率发生器,T2CON6. AT89S52单片机的晶振为6MHz,若利用定时器T1的方式1定时2ms,则(TH1)= ,(TL1)= 。

答:FCH,18H。

二、单选1.定时器T0工作在方式3时,定时器T1有种工作方式。

A.1种B.2种 C.3种D.4种答:C2. 定时器T0、T1工作于方式1时,其计数器为位。

A.8位B.16位C.14位D.13位答:B3. 定时器T0、T1的GATE x=1时,其计数器是否计数的条件。

A. 仅取决于TR x状态B. 仅取决于GATE位状态C. 是由TR x和INT x两个条件来共同控制D. 仅取决于INT x的状态答:C4. 定时器T2工作在自动重装载方式时,其计数器为位。

A.8位B. 13位C.14位D. 16位答:D5. 要想测量INT0引脚上的正单脉冲的宽度,特殊功能寄存器TMOD的内容应为。

A.87HB. 09HC.80HD. 00H答:B三、判断对错1.下列关于T0、T1的哪些说法是正确的。

A.特殊功能寄存器SCON,与定时器/计数器的控制无关。

单片机原理及应用 第06章定时计数器

单片机原理及应用  第06章定时计数器

20
6.5 定时器/计数器的编程
初始化
1 根据要求给方式寄存器TMOD送一个方式控制 字,以设定定时器的工作方式; 2 根据需要给TH和TL选送初值,以确定需要的 定时时间或计数的初值; 3 根据需要给中断允许寄存器IE送中断控制字, 以开放相应的中断和设定中断优先级;
也可用查询方式来响应定时器。
JBC TF1,RP1 SJMP DEL2
30
6.6.4 长定时时间的产生
例 假设系统时钟为6MHz,编写定时器T0产生 1秒定时的程序。 (1)T0工作方式的确定 定时时间较长,采用哪一种工作方式? 由各种工作方式的特性,可计算出: 方式0最长可定时16.384ms;
方式1最长可定时131.072ms; 方式2最长可定时512μs。 选方式1,每隔100ms中断一次,中断10次为1s。
8
6.3 定时/计数器的4种工作方式 方式0、方式1(13位、16位定时计数方式)
T1工作于方式0的等效框图(M1M0=00、01)
GATE=0、A=1、TR1=1 GATE=1、INT1=1、TR1=1。注意定时器初值与定时时间的不同
9
6.3.1 方式0、方式1的说明 定时/计数器T1工作在方式0时,为13位的计数器,由TL1 的低5位和TH1的8位所构成。TL1低5位溢出向TH1进 位,TH1计数溢出置位TCON中的溢出标志位TF1。 GATE位的状态决定定时/计数器运行控制取决于TR1 一个条件还是TR1和INT1引脚这两个条件。 当GATE=0时,A点电位恒为1,则只要TR1被置为1,B 点电位即为1,定时/计数器被控制为允许计数(定时/计 数器的计数控制仅由TR1的状态确定,TR1=1计数, TR1=0停止计数)。 当GATE=1时,B点电位由INT1输入的电平和TR1的状 态确定,当TR1=1,且INT1=1时,B点电平才为1,才 允许定时器/计数器计数(计数控制由TR1和INT1二个条 件控制)。 方式1时,TL1的8位都参与计数,因而属于16位 定时/计数器。其控制方式,等效电路与方式0完全相 10 同。

定时计数器的结构与工作原理

定时计数器的结构与工作原理

定时器方式寄存器TMOD (不能按位寻址)
注意 TMOD只能以字节方式进行初始化
T1
T0
定时器方式寄存器TMOD (不能按位寻址)
振荡器
Tx端 TRx位 GATE位 01 INTx端
12 C/T=0
C/T=1
10
1&
≥1 与门
或门
计数器
控制=1 开关接通
TFx
申请 中断
GATE门控位: Timer可由软件与硬件两者控制 ▼ GATE = 0 ——普通用法
单片机的定时/计数器 -定时/计数器的结构与工作原理
秒表计时器
家用定时器ຫໍສະໝຸດ 智能计数器智能排插 计时器
定时/计数器的结构
▼ 2个16位计数器T0 (TH0、TL0)和T1 (TH1、TL1)——加1计数器 ▼ 8位特殊功能寄存器TMOD——选择定时/计数器的工作模式和工作方式 ▼ 8位特殊功能寄存器TCON ——控制定时器的启动与停止 ▼ 2个外部引脚T0(P3.4)和T1(P3.5)——接入外部计数脉冲
Timer的启/停由软件对TRx位写“1”/“0”控制
▼ GATE = 1 ——门控用法 (很少用到) Timer的启/停由软件对TRx位写“1”/“0” 和在INTx引脚上出现的信号的高/低共同控制
小 结
▼定时/计数器的内部结构与工作原理 ▼定时器控制寄存器TCON ▼定时器方式寄存器TMOD
D7
D0
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
▼ TFx: T0/T1计数溢出标志位。
=1 计数溢出; =0 计数未满 TFx标志位可用于申请中断或供CPU查询。
在进入中断服务程序时会自动清零; 但在查询方式时必须软件清零。

第6章AT89C51定时器计数器

第6章AT89C51定时器计数器
用12MHz频率的晶体 ,则可输入500KHz的外部脉冲。 输入信号的高 、低电平至少要保持一个机器周期 。如图6- 12
所示 , 图中Tcy为机器周期。
图6- 12
6.4 定时器/计数器的编程和应用 4种工作方式中 ,方式0与方式1基本相同 , 由于方式0是为兼容
MCS-48而设 ,初值计算复杂 ,在实际应用中 ,一般不用方式 0 ,而采用方式1。 6.4. 1 方式1应用 例6- 1 假设系统时钟频率采用6MHz ,要在P1.0上输出一个周期 为2ms 的方波 ,如图6- 13所示。
M1 、M0=01 , 16位的计数器。
图6-5 6.2.3 方式2 计数满后自动装入计数初值。
M1 、M0= 10 ,等效框图如下:
图6-6
TLX作为常数缓冲器 , 当TLX计数溢出时 ,在置“ 1 ”溢出标志 TFX的同时 ,还自动的将THX中的初值送至TLX ,使TLX从初 值开始重新计数。
定时器/计数器的方式2工作过程如图6-7 (X=0, 1) 。
图6-7 省去用户软件中重装初值的程序 ,来精确定时。
6.2.4 方式3 增加一个附加的8位定时器/计数器 , 从而具有3个定时器/计数
器。
只适用于定时器/计数器T0 。T1不能工作在方式3 。 T1方式3时相当于TR1=0 ,停止计数(此时T1可用来作串行口
图6-8( a)
图6-8(b)
2. T0工作在方式3下T1的各种工作方式 当T1用作串行口的波特率发生器时 , T0才工作在方式3 。 T0为方式3时 , T1可定为方式0 、方式1和方式2 ,用来作为串
行口的波特率发生器 , 或不需要中断的场合。 ( 1)T1工作在方式0
图6-9
(2) T1工作在方式1

定时器工作原理

定时器工作原理

定时器工作原理通电延时型。

只要在定时的时间段内(即1分钟)定时器一直得电,则常开触电就会闭合,只要定时器不断电常开触电就会一直闭合。

定时器断电则常开触电断开101 6.1010116801图6.1定时器/计数器结构框图011011011 0265536216016553621606.2411010110104位用于T0,高4位用于T1的。

:门控位。

GATE=0,只要用软件使TR0(或TR1)置1就能启动定时器/计数器0(或定时器/计数器1);GATE=1,只有在(或)引脚为高电平的情况下,且由软件使TR0(或TR1)置1时,才能启动定时器/计数器0(或定时器/计数器1)工作。

不管GATE处于什么状态,只要TR0(或TR1)=0定时器/计数器便停止工作。

:定时器/计数器工作方式选择位。

C/=0,为定时工作方式;C/=1,为计数工作方式。

、M1:工作方式选择位,确定4种工作方式。

如表6.1所示。

表6.1定时器/计数器工作方式选择【例6.1】设置定时器1工作于方式1,定时工作方式与外部中断无关,则,M0=1,GATE=0,因此,高4位应为0001;定时器0未用,低4位可随意11(因方式3时,定时器1停止计数),一般将其设为0000。

因此,指令形式为:MOV TMOD,#10H/计数器工作方式与程序设计通过对特殊功能寄存器TMOD中的设置M1、M0两位的设置来选择四种工作/计数器0、1和2的工作方式相同,方式3的设置差别较大。

工作方式0工作方式寄存器TMOD中的M1M0为:00。

定时器/计数器T0工作在方式0 16位计数器只用了13位,即TH0的高8位和TL0的低5位,组成一个13 /计数器。

当TL0的低5位计满溢出时,向TH0进位,TH0溢出时,对TF0置位,向CPU申请中断。

定时器/计数器0方式0的逻辑结构如6.2所示。

1013121312213131310612 12130106128 192211310110136.22138103213 16.32502132130 16.401200131300819210001110000085 851 140 01011 011601 6.3121312213161610612 121601061265 53621161166.51216101032130 16.6980012162169800 16.711121610103216 111011000888821202 6.41021688812812288810612 128010612256218186.825006.56.5 6.62115001022321250050050050031130 168031021031203 6.66.923821002561001233201。

定时器计数器讲解

定时器计数器讲解
6-13所示,计数输入引脚T1(P3.5)上外接开关K1,作为 计数信号输入。按4次K1后,P1口的8只LED闪烁不停。 (1)设置TMOD寄存器
TR1位(或TR0位)=1,启动定时器工作的必要条件。 TR1位(或TR0位)=0,停止定时器工作。 该位可由软件置“1”或清“0”。
10
6.2 定时器/计数器的4种工作方式 4种工作方式分别介绍如下。
6.2.1 方式0 当M1、M0为00时,定时器/计数器被设置为工作方式0,
这时定时器/计数器的等效逻辑结构框图如图6-4所示(以定 时器/计数器T1为例,TMOD.5、TMOD.4 = 00)。
(1)GATE=0时,A点(见图6-4)电位恒为1,B点电位仅 取决于TRx状态。TRx = 1,B点为高电平,控制端控制电子 开关闭合,允许T1(或T0)对脉冲计数。TRx = 0,B点为低 电平,电子开关断开,禁止T1(或T0)计数。
(2)GATE=1时,B点电位由INTX*(x = 0,1)的输入电 平和TRx的状态两个条件来定。当TRx=1,且INTX*=1时,B 点才为1,控制端控制电子开关闭合,允许T1(或T0)计数。 故这种情况下计数器是否计数是由TRx和INTX*两个条件来共 同控制。
图6-1 AT89S51单片机的定时器/计数器结构框图
4
只不过计数信号的来源不同。 计数器模式是对加在T0(P3.4)和T1(P3.5)两个引脚上
的外部脉冲进行计数(见图6-1) 定时器模式是对单片机的系统时钟信号经片内12分频后的
内部脉冲信号(机器周期)计数。由于时钟频率是定值,所 以可根据对内部脉冲信号的计数值可计算出定时时间。
本例由于采用定时器T0中断,因此需将IE寄存器中的EA、 ET0位置1。 (4)启动和停止定时器T0

项目三定时计数器和中断系统应用

项目三定时计数器和中断系统应用

(四)中断入口地址
表3-4 中断入口地址
地址
说明
0003H~000AH
外部中断0中断地址区
000BH~0012H
定时/计数0中断地址区
0013H~001AH
外部中断1中断地址区
001BH~0022H
定时/计数1中断地址区
0023H~002AH
串行中断地址区
定时器/计数器的设计步骤 初始化的内容如下: 设置TMOD寄存器参数 计算计数初值 计算出计数初始值并写入TH0、TL0、TH1、TL1中。 计数器的初始值和实际计数值并不相同,两者的换算关系如下:设实际计数值为C,计数最大值为M,计数初始值为X,则X=M-C。其中计数最大值在不同工作方式下的值不同,具体如下:
单击此处添加文本具体内容,简明扼要地阐述你的观点
202X
项目三、定时计数器和中断系统应用
项目三、定时/计数器和中断系统应用--- 任务1.秒脉冲发生器
能力目标 1.能正确运用定时/计数器产生秒信号 2.秒脉冲发生器程序的编写 3.学会中断控制系统的应用 4.秒脉冲发生器程序的仿真调试方法 学习内容 1.掌握定时/计数器的组成及功能 2.掌握单片机内部结构资源:TH0、TL0、TH1、TL1、TMOD、TCON 3.掌握中断控制系统的概念及定时功能 4.理解预置数的用法和溢出的概念
位控制转移指令 JBC bit,rel; 若(bit)=1时,则转移到标号对应的地址,并且同时bit←0。 例如:JBC TF0,NEXT; 若定时器0数据溢出时,即TF0=1时,则转移到标号NEXT对应的地址,并且同时清定时溢出标志TF0←0,这样下次就可以重新定时/计数。
比较转移指令 CJNE A,#data,rel; ≠data,PC+3+rel跳转到目标地址, =data,PC+3顺序向下执行。 CJNE A,direct,rel; CJNE Rn,#data,rel; CJNE @Ri,#data,rel;

第3次《单片机原理与应用》-定时计数器

第3次《单片机原理与应用》-定时计数器

定时器初始化编程:
使用定时器工作之前,先写入控制寄存器, 确定好定时器工作方式。 初始化编程格式:
MOV TMOD,# 方式字 MOV THx,#XH MOV TLx,#XL (SETB EA ) (SETB ETx) SETB TRx ;选择方式 ;装入Tx时间常数 ;开Tx中断 ;启动Tx定时器
TMOD,#01H ;设置T0为方式1定时
ACALL PT0M0
HERE: AJMP HERE
;调用初始化子程序PT0M0
;原地循环,等待中断
22
PT0M0: MOV
TL0,#0CH
;T0初始化,装初值的低8位
MOV
TH0,#0FEH
;装初值的高8位
;允许T0中断 ;总中断允许 ;启动T0 ;中断子程序,T0重装初值 ;P1.0的状态取反
本例,主程序用一条转至自身的短跳转指令来代替。
21
参考程序如下:
ORG 0000H ;程序入口 ;转主程序 ;T0中断入口 ;转T0中断处理程序IT0P ;主程序入口 ;设堆栈指针
RESET: AJMP MAIN ORG 000BH
AJMP IT0P ORG MAIN: MOV MOV 0100H SP,#60H
2)中断方式:初始化后执行其它任务,中断服务程序处理溢出。 ORG 0000H LJMP MAIN ORG 000BH(001BH) ;Tx中断入口 LJMP PTS MAIN: … ;初始化后执行其他程序 PTS: … ;溢出中断服务程序 MOV THx,#XH ;重装时间常数 MOV TLx,#XL RETI
即T0每隔1ms产生一次中断,CPU响应中断后,在中断服务 子程序中对P1.0取反。为此要做如下几步工作。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
寄存器TMOD为工作方式控制寄存器,用来设置定时器/计数器 的工作方式,并确定用于定时还是用于计数。 TMOD中每个定时器 /计数器对应GATE、C/T、M1、M0的4位,GATE是选通门控位,它决 定T0、T1的开始运行是否要受外部中断输入引脚电平的控制;C/T 是定时器/计数器选择位,在定时器工作方式时,计数输入信号来 自内部时钟,每个机器周期计数寄存器加1,在计数器工作方式时, 计数输入信号来自T0、T1管脚,输入信号每次从1到0跳变,计数 寄存器加1,要注意的是输入信号的最高频率不得大于机器振荡频 率的1/24;M1、M0是模式控制位,决定了T0、T1的四种工作模式 工作方式0、工作方式1、工作方式2、工作方式3。
定时计数器T0/T1程序设计
4、硬件设计
单片机可靠的复位是保证单片机正常运行的关键因素。 因此,在设计复位电路时,通常要使RST引脚保持10ms以上 的高电平。当RST从高电平变为低电平之后,单片机就从 0000H地址开始执行程序。本电路是上电自动复位。
将1个LED接在单片机P1端口的P1.5引脚上,注意LED有 长短两个引脚,分别表示正负极,其中较短的负极接单片 机,较长的为正极,通过限流电阻R与Vcc相连。
单片机原理与应用课程实验
实验四、定时计数器T0/T1应用程序设

实验重点:硬件设计、程序设计、现象分析 实验难点:实际应用
定时计数器T0/T1程序设计
单片机内部定时器/计数器具有定时与计数功能,既 可工作于定时方式,实现对控制系统的定时或延时控制; 又可工作于计数方式,用于对外部事件的计数。
1、实验目的
了解51单片机内部定时器/计数器的基本结 构、工作原理和工作方式,掌握工作在定时器 和计数器两种方式下编程方法。
定时计数器T0/T1程序设计
2、实验要求
1)采用中断编程,利用单片机内部定时器/计数器T0定时, 工作于方式1, 定时1秒,使P1口接的8只发光二极管LED发 光二极管依次从左到右开始逐个点亮或从右到左开始逐个 点亮。 2)利用内部定时器/计数器T1,按计数器模式工作于方式1, 对P3.5引脚进行计数,每计数5个脉冲,使I/O口线上的LED 反转一次,反复循环
定时计数器T0/T1程序设计
3、实验设备与仪器
DICE-5210K单片机实训箱,PC机, DICE_KEIL USB仿真器、KEIL集成开发软 件。
定时计数器T0/T1程序设计 4、硬件设计
89C51
C1
C1
C2
C2
图2 P1口某一I/O口线状态反转电路
89C51
图3 定时50ms轮流点亮电路
定时计数器T0/T1程序设计
4、硬件设计
P1口某一I/O口线状态反转设计电路如图2所示。将 51单片机第40脚Vcc接电源+5V,第20脚Vss接地,为单片 机工作提供能源。
将第19脚XTAL1与18脚XTAL2分别接外部晶体两个引 脚,由石英晶体组成振荡器,保证单片机内部各部分有 序地工作。对外部C1、C2的取值虽然没有严格的要求, 但电容的大小会影响到振荡器频率的高低、振荡器的稳 定性、起振的快速性。C1、C2通常取值C1=C2=30PF左右。 8051的晶振最高振荡频率为12M,AT89C51的外部晶振最 高频率可到24M。
定时计数器T0/T1程序设计
5、程序设计
1)工作原理
M1 M0工作方式选择: 0 0:方式0,13位定时器/计数器 0 1:方式1,16定时器/计数器 1 0:方式2,8位自动重装定时器/计数器 1 1:方式3,定时器0的TL0是一个8位的定时器/计数器,TH0是一个8位 的定时器,定时器1停止工作方式3(T1可工作于方式0、1) C/T:定时器/计数器选择: “1”:计数器 “0”:定时器 GAME:选通门控制信号: “1”:由TRx和引脚INTx共同控制启动 “0”:仅由控制位TRx启动
图5 P1口输出程序流程图
定时计数器T0/T1程序设计
3)参考程序
;定时50ms信号反转
CSEG AT 0000H
LJMP START
;查询方式
CSEG AT 4100H
START: MOV TMOD,#_____
MOV TH1,#______MOV TL1,#_____SETB TR1
WAIT: JBC TF1,NEXT
定时计数器T0/T1程序设计 5、程序设计
1)工作原理
本实验用T1工作在方式1,即16位定时计数方式为例简要说明定 时器/计数器的工作过程,根据需要设置TMOD及TL1、TH1的数值,开 启定时或计数,定时或计数溢出时自动置溢出标志,并请求中断。
图4 工作方式1-16位定时器/计数器
定时计数器T0/T1程序设计 2)程序流程如图5所示。
TMOD,设置它们相应位,可以对T0、T1进行各种控制。
寄存器TCON为控制寄存器,用于控制两个定时器/计
数器的启动/停止,在溢出时设定标志位,TCON中TR0、
TR1是T0、T1对应的开始运行控制位,TF0、TF1是溢出标
志剩下4位是两个外部中断INT0、INT1对应的方式控制位
IT0、IT1和中断请求标志IE0、IE1。
本实验只需将1个LED与P1口相连。单片机的P0、P1、 P2、P3端口都可以用来控制LED。(反过去再看设备)
定时计数器T0/T1程序设计
5、程序设计
1)工作原理
89C51内部有两个定时器/计数器T0、T1,TL0、TH0
和TL1、TH1分别对应两个定时器/计数器的低8位和高8位,
用于控制与管理定时器/计数器工作的两个寄存器TCON和
低电平触发或 下降沿触发
定时计数器T0/T1程序设计 5、程序设计
1)工作原理
TFx:定时器/计数器溢出标志 当定时器溢出时,硬件电路置TFx为 “1”,响应中断时硬
件 自动复位TRx。
TRx:定时器/计数器控制位 “1”:启动; “0”:停止。
定时计数器T0/T1程序设计
5、程序设计
1)工作原理
SJMP WAIT
NEXT: CPL P1.____
MOV TH1,#_____
MOV TL1,#_____
SJMP WAIT
END
定时计数器T0/T1程序设计
3)参考程序
;用定时器延时60ms后,LED轮流点亮。
相关文档
最新文档