学习情境3交通灯控制系统的制作-项目2-2知识扩展作_第1页
学习情境3交通灯控制系统的制作-项目2-2知识扩展作_第2页
学习情境3交通灯控制系统的制作-项目2-2知识扩展作_第3页
学习情境3交通灯控制系统的制作-项目2-2知识扩展作_第4页
学习情境3交通灯控制系统的制作-项目2-2知识扩展作_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目-2简易秒表的制作2知识扩展学习情境3-交通灯控制系统制作1、定时/计数器简介在51系列单片机内部有两个16位可编程的定时/计数器,简称为T0和T1它们的核心部件都是16位加法计数器,当计数计满回零时,自动产生溢出发出中断请求,表示定时时间已到或计数已满使用时可通过编程设置为定时或计数模式。定时/计数器的相关寄存器THx(高8位)和TLx(低8位):Ø按照M1和M0的值组成加法定时/计数器;Ø对时钟源脉冲进行计数,在时钟源的下降沿时计数器加1;Ø计满时,在下一个脉冲下降沿清零,并产生溢出,TFx置位。T0和T1都具有定时器和计数器两种工作模式,4种工作方式(方式0~3)。属于增计数器。特殊功能寄存器TMOD用于选择T0、T1的工作模式和工作方式。特殊功能寄存器TCON用于控制T0、T1的启动和停止计数,同时包含了T0、T1的状态。T0、T1不论是工作在定时器模式还是计数器模式,实质是对脉冲信号进行计数。

(1)TCON(TimerControlRegister)定时器/计数器控制寄存器3、中断控制寄存器✤IE1—外部中断请求1中断请求标志位。✤IE0—外部中断请求0中断请求标志位,与IE1类似。✤IT1—选择外中断请求1的触发方式0--电平触发方式,加到INT0脚上的外中断请求输入信号为低电平有效,并把IE1置“1”。转向中断服务程序时,则由硬件自动把IE1清“0”。1---跳沿触发方式,加到INT1脚上的外中断请求输入信号从高到低的负跳变有效,并把IE1置“1”。转向中断服务程序时,则由硬件自动把IE1清“0”。✤IT0—选择外中断请求0为跳沿触发方式还是电平触发方式,与IT1类似。当AT89S51复位后,TCON被清“0”,5个中断源的中断请求标志均为0。TCON的复位值:0x00,地址:88H(可被8整除,可以进行按位寻址),格式如图所示。设置举例:TR0=1;

T0计数TR0=0;

停止T0计数2、定时/计数器的控制寄存器(TCON)(1)TF1、TF0—

T0和T1的计数溢出标志位。当计数器计数溢出时,该位置“1”。使用查询方式时,此位作为状态位供CPU查询,但应注意查询有效后,应使用软件及时将该位清“0”。使用中断方式时,此位作为中断请求标志位,进入中断服务程序后由硬件自动清“0”。(2)TR1、TR0—计数运行控制位。TR0(TR1)=0定时器/计数器0(1)停止工作TR0(TR1)=1定时器/计数器0(1)开始工作该位可由软件置“1”或清“0”。对定时/计数器T0、T1的中断,CPU响应中断后,硬件自动清除中断请求标志TF0和TF1。如果编程中不使用中断服务程序,也可在主程序中利用查询中断请求标志TF0和TF1的状态,完成相应的中断功能。3、定时/计数器的方式控制寄存器(TMOD)AT89S51定时器的工作方式寄存器TMOD用于选择工作模式和工作方式,字节地址为89H(不能被8整除,也即不能被位寻址),复位值:0x00。8位分为两组,高4位控制T1,低4位控制T0。✤GATE—定时器动作开关控制位,也称门控位GATE=1时,当外部中断引脚出现高电平且控制寄存器TCON中TR0(TR1)控制位为1时,才启动定时器T0(T1)。GATE=0时,只要控制寄存器TCON中TR0(TR1)控制位为1,便启动定时器T0(T1)。✤M1、M0——工作方式选择位TMOD不能位寻址,只能是整个字节进行设置,如程序中TMOD=0X01;语句就是对TMOD进行整体设置。CPU复位时TMOD所有位清0。✤C/T*—计数器模式和定时器模式选择位

C/T*=0,为定时器工作模式,对单片机的晶体振荡器12分频后的脉冲进行计数。C/T*=1,为计数器工作模式,计数器对外部输入引脚T0(P3.4)或T1(P3.5)的外部脉冲(负跳变)计数。4、定时/计数器的工作方式①工作方式0

当M1M0=00时,定时/计数器工作于模式0,使用TLx的低5位和THx构成13位的加法计数器。13位加法计数器,最大计数值为:0x1FFF(213=8192)。由寄存器THx的8位和TLx的低5位构成,TLx高3位未用。TLx低5位溢出则向THx进位,THx计数溢出则把TCON中的溢出标志位TFx置“1”。定时工作方式时,定时时间为:在C51程序设计中,其初始值设置命令为:C/T*位控制的电子开关决定了定时器/计数器的两种工作模式。(1)C/T*=0,电子开关打在上面位置,T1(或T0)为定时器工作模式,把时钟振荡器12分频后的脉冲作为计数信号。(2)C/T*=1,电子开关打在下面位置,T1(或T0)为计数器工作模式,计数脉冲为P3.4(或P3.5)引脚上的外部输入脉冲,当引脚上发生负跳变时,计数器加1。GATE位状态决定定时器的运行控制取决于TRx一个条件,还是取决于TRx和INTX*(x=0,1)引脚状态这两个条件。(1)GATE=0时,A点(见图)电位恒为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*两个条件来共同控制。②工作方式1

当M1M0=01时,定时/计数器工作于方式1,使用TLx和THx构成16位的加法计数器。16位加法计数器,最大计数值为:0xFFFF(216=65536)。寄存器THx和TLx是以全16位参与操作,当要定时任意时间时,采用预置数的方法,THx赋高8位,TLx赋低8位。当计数到达0xFFFF时,在下一个脉冲下降沿时刻清零,并置位TFx。方式1和方式0的差别仅仅在于计数器的位数不同,方式1为16位计数器,由THx高8位和TLx低8位构成(x=0,1),方式0则为13位计数器,有关控制状态位的含义(GATE、C/T*、TFx、TRx)与方式0相同。定时工作方式时,定时时间为:T定=(216-初值)×机器周期Tm在C51程序设计时,一般将装入初值以表达式形式赋值,这样在编译程序时会自动将计算结果换算成对应的数值赋值给THx和TLx,其初始值设置命令为:③工作方式2方式0和方式1的最大特点是计数溢出后,计数器为全0。因此在循环定时或循环计数应用时就存在用指令反复装入计数初值的问题。这不仅影响定时精度,也给程序设计带来麻烦。方式2就是解决此问题而设置的。当M1M0=10时,定时/计数器工作于模式2,使用TLx和THx构成8位的自动重装载加法计数器。定时器/计数器的方式2为自动恢复初值(初值自动装入)的8位定时器/计数器,最大计数值为28=256。TLx用作8位计数器,THx用作保存计数初值。在初始化编程时,TLx和THx由指令赋予相同的初值,一旦TLx计数溢出,则将TFx置“1”,同时将保存在THx中的计数初值自动重装入TLx,继续计数,THx中的内容保持不变,即TLx是一个自动恢复初值的8位计数器。定时工作方式时,定时时间为:在C51程序设计中,其初始值设置命令为:④工作方式3方式3是为了增加一个附加的8位定时器/计数器而设置的,从而使AT89S51单片机具有3个定时器/计数器。方式3只适用于定时器/计数器T0,定时器/计数器T1不能工作在方式3。T1处于方式3时相当于TR1=0,停止计数(此时T1可用来作为串行口波特率产生器)。该模式下定时/计数器T0被分成两个独立的8位定时/计数器TL0和TH0。其中,TL0既可作定时器,又可作计数器使用,而TH0则被固定为一个8位定时器(不能作外部计数模式)。T0被分成两个来用,那就要两套控制及溢出标记:TL0还是用原来的T0的标记,而TH0则使用定时器T1的状态控制位TR1和TF1。TL0定时工作方式时,定时时间为:

✤工作方式3下的T0当TMOD的低2位为11时,T0的工作方式被选为方式3,各引脚与T0的逻辑关系如图所示。T0分为两个独立的8位计数器TL0和TH0,TL0使用T0的状态控制位C/T*、GATE、TR0,而TH0被固定为一个8位定时器(不能作为外部计数模式),并使用T1的状态控制位TR1和TF1,同时占用T1的中断请求源TF1。(1)T1工作在方式0T1的控制字中M1、M0=00时,T1工作在方式0,工作示意图如图所示。

(1)T1工作在方式1当T1的控制字中M1、M0

=

01时,T1工作在方式1,工作示意图如图所示。

(1)T1工作在方式2当T1的控制字中M1、M0

=

10时,T1工作在方式2,工作示意图如图所示。

(1)T1工作在方式3当T0设置在方式3时,再把T1也设置成方式3,此时T1停止计数。

5、不同工作方式的定时初值或计数初值的计算方法不同工作方式的定时初值或计数初值的计算方法如下表所示。装载计数初值时:THx=X/256,TLx=X%256(X=0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论