欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    最新学习情境2交通灯的设计PPT课件.ppt

    • 资源ID:60177600       资源大小:3.17MB        全文页数:129页
    • 资源格式: PPT        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    最新学习情境2交通灯的设计PPT课件.ppt

    学习情境学习情境2 2交通灯的设计交通灯的设计学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 学习目标:学习目标:了了解解中中断断的的基基本本概概念念、中中断断的的作作用用及及中中断断请请求方式求方式掌掌握握AT89S52单单片片机机中中断断结结构构,6个个中中断断源源的的中中断断请请求求、中中断断屏屏蔽蔽、优优先先级级设设置置等等初初始始化编程方法化编程方法掌掌握握定定时时/计计数数器器4种种工工作作方方式式的的初初始始化化编编程程方法方法学学会会使使用用定定时时器器/计计数数器器编编写写计计数数、定定时时应应用用程序的方法程序的方法学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 (二)内部定时和外部计数中断(二)内部定时和外部计数中断定时:对内部振荡器输出的脉冲计数。计数脉冲的定时:对内部振荡器输出的脉冲计数。计数脉冲的个数反映了时间的长短。个数反映了时间的长短。计数:对外部脉冲计数。计数脉冲的个数仅仅反映计数:对外部脉冲计数。计数脉冲的个数仅仅反映外部脉冲输入的多少。外部脉冲输入的多少。外部脉冲由外部脉冲由T0引入引入 P3.4外部脉冲由外部脉冲由T1引入引入 P3.5外部脉冲由外部脉冲由T2引入引入 P1.0当定时器当定时器/计数器发生溢出,便激活中断。计数器发生溢出,便激活中断。外部计数中断请求信号是脉冲的外部计数中断请求信号是脉冲的负跳变负跳变引起。引起。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 (三)串行中断(三)串行中断 串行中断是为串行通信的而需要串行中断是为串行通信的而需要设置的。当串行口发送完或接收完一设置的。当串行口发送完或接收完一帧信息时,单片机内部硬件便自动串帧信息时,单片机内部硬件便自动串行发送或接收中断标志位置行发送或接收中断标志位置1。当。当CPU查询到这些标志位为查询到这些标志位为1时,便激时,便激活串行中断。串行中断是由单片机内活串行中断。串行中断是由单片机内部自动发生的,不需要在芯片外设置部自动发生的,不需要在芯片外设置引入脚。引入脚。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 (四)中断矢量地址(四)中断矢量地址中断源中断源中断中断标标志位志位中断矢量地址中断矢量地址外部中断外部中断0()IE00003H定定时时器器0(T0)中断)中断TF0000BH外部中断外部中断1()IE10013H定定时时器器1(T1)中断)中断TF1001BH串行口中断串行口中断发发送中断送中断TI0023H接收中断接收中断RI定定时时器器2(T2)中断)中断T2溢出中断溢出中断TF2002BHT2EX中断中断EXF2学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 三、中断标志与控制三、中断标志与控制 要实现中断,首先中断源要提出要实现中断,首先中断源要提出中断申请,而中断请求的过程是单片中断申请,而中断请求的过程是单片机内部特殊功能寄存器机内部特殊功能寄存器TCON和和SCON相关状态位相关状态位中断请求标志位中断请求标志位置置1的过程,当的过程,当CPU响应中断时,中响应中断时,中断请求标志位才由硬件或软件清断请求标志位才由硬件或软件清0。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 图2-2学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 (一)定时器计数器控制寄存器(一)定时器计数器控制寄存器TCON TCON为定时器为定时器/计数器的控制器,它也计数器的控制器,它也锁存外部中断请求标志,其格式如下:锁存外部中断请求标志,其格式如下:TF1 TR1 TF0 TR0IE1IT1IE0IT0TCON(88H)D7 D6 D5 D4 D3 D2 D1 D0位地址位地址 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H与中断有关的控制位共与中断有关的控制位共6位位学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 IE0和和IE1:外部中断请求标志。外部中断请求标志。当当CPU采样到采样到 (或(或 )端出现有效中断请求(低电平或)端出现有效中断请求(低电平或脉冲下降沿)时,脉冲下降沿)时,IE0(或(或IE1)位由片内硬件自动置)位由片内硬件自动置1;当中;当中断响应完成转向中断服务程序时,由片内硬件自动清断响应完成转向中断服务程序时,由片内硬件自动清0。IT0和和ITl:外部中断请求信号触发方式控制标志。外部中断请求信号触发方式控制标志。IT0(或(或IT1)=1,(或(或 )信号为脉冲触发方式,脉冲)信号为脉冲触发方式,脉冲负跳沿有效;负跳沿有效;IT0(或(或IT1)=0,(或(或 )信号电平触发方式,低电)信号电平触发方式,低电平有效。平有效。IT0(或(或IT1)位可由用户软件置)位可由用户软件置1或清或清0 TF0和和TFl:定时器定时器/计数器溢出中断请求标志。当定时器计数器溢出中断请求标志。当定时器0(或定时器(或定时器1)产生计数溢出时,)产生计数溢出时,TF0(或(或TF1)由片内硬件)由片内硬件自动置自动置1;当中断响应完成转向中断服务程序时,由片内硬件;当中断响应完成转向中断服务程序时,由片内硬件自动清自动清0。计数溢出标志位的使用有两种情况:采用中断方式时,作计数溢出标志位的使用有两种情况:采用中断方式时,作中断请求标志位来使用;采用查询方式时,作查询状态位来使中断请求标志位来使用;采用查询方式时,作查询状态位来使用。用。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 (二)串行口控制寄存器(二)串行口控制寄存器SCONSM0 SM1 SM2 REN TB8 RB8 TIRISCON(98H)D7 D6 D5 D4 D3 D2 D1 D0位地址位地址 9FH 9EH 9DH 9CH 9BH 9AH 99H 98H与中断有关的控制位共与中断有关的控制位共2位位TI:串行口发送中断请求标志。:串行口发送中断请求标志。当串行口发送完一帧信号后,由片内硬件当串行口发送完一帧信号后,由片内硬件自动置自动置1。但。但CPU响应中断时,并不清除响应中断时,并不清除TI,必须在中断服务程序中由软件对,必须在中断服务程序中由软件对TI清清0。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 RI:串行口接收中断请求标志。当串行口接串行口接收中断请求标志。当串行口接收完一帧信号后,由片内硬件自动置收完一帧信号后,由片内硬件自动置1。但。但CPU响应中断时,并不清除响应中断时,并不清除RI,必须在中断,必须在中断服务程序中由软件对其清服务程序中由软件对其清0。应当指出,应当指出,AT89S52系统复位后,系统复位后,TCON和和SCON中各位被复位成中各位被复位成“0”状态,状态,应用时要注意各位的初始状态。应用时要注意各位的初始状态。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 (三)中断允许控制寄存器(三)中断允许控制寄存器IEEAET2ESET1EX1 ET0 EX0IE(A8H)D7 D6 D5 D4 D3 D2 D1 D0位地址位地址 AFH AEH ADH ACH ABH AAH A9H A8H与中断有关的控制位共与中断有关的控制位共7位位EA:中断允许总控制位。中断允许总控制位。EA=0时,中断总禁止,禁止一切中断;时,中断总禁止,禁止一切中断;EA=1时时,中中断断总总允允许许,而而每每个个中中断断源源允允许与禁止,分别由各自的允许位确定。许与禁止,分别由各自的允许位确定。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 EX0和和EX1:外部中断允许控制位。外部中断允许控制位。EX0(或(或EX1)=0,禁止外部中断;,禁止外部中断;EX0(或(或EX1)=1,允许外部中断。,允许外部中断。ET0和和ET1:定时器中断允许控制位。定时器中断允许控制位。ET0(ET1)=0,禁止定时器,禁止定时器0(或定时器(或定时器1)中断;中断;ET0(ET1)=1,允许定时器,允许定时器0(或定时器(或定时器1)中断中断。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 ES:串行中断允许控制位。串行中断允许控制位。ES=0,禁止串行(,禁止串行(TI或或RI)中断;)中断;ES=1,允许串行(,允许串行(TI或或RI)中断。)中断。ET2:定时器定时器2中断允许控制位。中断允许控制位。ET2=0,禁止定时器,禁止定时器2(TF2或或EXF2)中断;)中断;ET2=1,允许定时器,允许定时器2(TF2或或EXF2)中断;)中断;在单片机复位后,在单片机复位后,IE各位被复位成各位被复位成“0”状态,状态,CPU处于关闭所有中断的状态。处于关闭所有中断的状态。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 例如:例如:可以采用如下字节传送指令来开放定可以采用如下字节传送指令来开放定时器时器T0的溢出中断:的溢出中断:MOV IE,#82H 也可以用位寻址指令,则需采用如下两条也可以用位寻址指令,则需采用如下两条指令实现同样功能:指令实现同样功能:SETB EA SETB ET0 在在89S52复位后,复位后,IE各位被复位成各位被复位成“0”状态,状态,CPU处于关闭所有中断的状态。所以,处于关闭所有中断的状态。所以,在在89S52复位以后,用户必须通过程序中的指复位以后,用户必须通过程序中的指令来开放所需中断。令来开放所需中断。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 (四)中断优先级控制寄存器(四)中断优先级控制寄存器IPIP 89S52单片机具有高、低单片机具有高、低2个中断优先级。高优先级用个中断优先级。高优先级用“1”表示,低优先级用表示,低优先级用“0”表示。对于所有的中断源,均可由表示。对于所有的中断源,均可由软件设置为高优先级中断或低优先级中断,并可实现两级中软件设置为高优先级中断或低优先级中断,并可实现两级中断嵌套。断嵌套。IP寄存器可以位寻址。寄存器可以位寻址。PSPT2PT1PX1PT0PX0 IP(B8H)D7 D6 D5 D4 D3 D2 D1 D0 BDH BCH BBH BAH B9H B8H学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 与中断有关的控制位共与中断有关的控制位共6位位 PX0:外部中断:外部中断0优先级设定位。优先级设定位。PT0:定时器:定时器0(T0)优先级设定位。优先级设定位。PXl:外部中断:外部中断1优先级设定位。优先级设定位。PTl:定时器:定时器1(T1)优先级设定位。优先级设定位。PS:为串行口优先级设定位。:为串行口优先级设定位。PT2:为定时器:为定时器2优先级设定位。优先级设定位。可用软件对IP的各位置1或清0 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 例如例如CPU开中断可由以下两条指令来实现:开中断可由以下两条指令来实现:SETB 0AFH ;EA置置1 或或 0RL IE,#80H ;按位;按位“或或”,EA置置1 CPU关中断可由以下两条指令来实现:关中断可由以下两条指令来实现:CLR 0AFH ;EA清清0 或或 ANL IE,#7FH ;按位;按位“与与”,EA清清0 又如设置外部中断源又如设置外部中断源 为高优先级,外部中断源为高优先级,外部中断源 为低优先级,可由下面指令来实现:为低优先级,可由下面指令来实现:SETB 0B8H ;PX0置置1 CLR 0BAH ;PXl清清0 或或 MOV IP,#00001B ;PX0置置1,PXl清清0 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 四、优先级结构四、优先级结构 中断优先级只有高低两级。所以在工作过程中必然会有两中断优先级只有高低两级。所以在工作过程中必然会有两个或两个以上中断源处于同一中断优先级。若出现这种情况,个或两个以上中断源处于同一中断优先级。若出现这种情况,内部中断系统对各中断源的处理遵循以下两条基本原则:内部中断系统对各中断源的处理遵循以下两条基本原则:低优先级中断可以被高优先级中断所中断,反之不能。低优先级中断可以被高优先级中断所中断,反之不能。一种中断一种中断(不管是什么优先级不管是什么优先级)一旦得到响应,与它同级的一旦得到响应,与它同级的中断不能再中断它。中断不能再中断它。中断源中断源 同级自然优先级同级自然优先级 外部中断外部中断0 最高级最高级 定时器定时器0中断中断 外部中断外部中断1 定时器定时器1中断中断 串行口中断串行口中断 最低级最低级 定时器定时器2中断中断 最低级最低级学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 例:设例:设89S52的片外中断为高优先级,片内中的片外中断为高优先级,片内中断为低优先级。试设置断为低优先级。试设置IP相应值。相应值。解:解:(a)用字节操作指令用字节操作指令 MOV IP,#05H 或或 MOV 0B8H,#05H (b)用位操作指令用位操作指令 SETB PX0 SETB PX1 CLR PS CLR PT0 CLR PT1 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 五、中断系统的初始化及应用五、中断系统的初始化及应用 (一)中断系统的初始化(一)中断系统的初始化 (1)CPU开中断或关中断;开中断或关中断;(2)某中断源中断请求的允许或禁止某中断源中断请求的允许或禁止(屏蔽屏蔽);(3)设定所用中断的中断优先级;设定所用中断的中断优先级;(4)若为外部中断,则应规定低电平还是负边沿的中断触发方式。若为外部中断,则应规定低电平还是负边沿的中断触发方式。例例 请写出请写出 为低电平触发的中断系统初始化程序。为低电平触发的中断系统初始化程序。解:解:(1)采用位操作指令采用位操作指令 SETB EA ;CPU开中断开中断 SETB EXl ;开;开 中断中断 SETB PXl ;令;令 为高优先级为高优先级 CLR ITl ;令;令 为电平触发为电平触发 (2)采用字节型指令采用字节型指令 MOV IE,#84H ;开;开 中断中断 ORL IP,#04H ;令;令 为高优先级为高优先级 ANL TCON,#0FBH ;令;令 为电平触发为电平触发学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 (二)中断系统的应用(二)中断系统的应用 中断管理与控制程序一般包含在主程序中,中断管理与控制程序一般包含在主程序中,根据需要通过几条指令来实现,例如根据需要通过几条指令来实现,例如CPU开中开中断,可用指令断,可用指令“SETB EA”或或“ORL IE,#80H”来实现,关中断可用指令来实现,关中断可用指令“CLR EA”,或或“ANL IE,#7FH”来实现。来实现。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 中断服务程序的一般格式:中断服务程序的一般格式:ORG ADDRESS AJMP INTVS INTVS:CLR EA ;关中断;关中断 PUSH PSW ;保护现场;保护现场 PUSH A SETB EA ;开中断,允许;开中断,允许CPU响应高级中断响应高级中断 中断服务中断服务 CLR EA ;关中断;关中断 POP A ;恢复现场;恢复现场 POP PSW SETB EA ;开中断;开中断 RETI ;中断返回;中断返回 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 编写此程序应注意以下几点:编写此程序应注意以下几点:(1)为了要跳到用户设计的中断服务程序,在相应入口地址安为了要跳到用户设计的中断服务程序,在相应入口地址安排一条跳转指令;排一条跳转指令;(2)在中断服务程序的末尾,安排一条返回指令在中断服务程序的末尾,安排一条返回指令RETI;(3)由于在响应中断时,由于在响应中断时,CPU只自动保护断点,所以只自动保护断点,所以CPU的其的其他现场他现场(如寄存器如寄存器A、B状态,状态字状态,状态字PSW,通用寄存器,通用寄存器R0、R1等等)的保护和恢复也必须由用户在中断服务程序中安排;的保护和恢复也必须由用户在中断服务程序中安排;(4)在此多级中断的中断服务程序中,保护现场之后的开中断在此多级中断的中断服务程序中,保护现场之后的开中断(SETB EA)是为了允许有更高级中断打断此中断服务程序,恢是为了允许有更高级中断打断此中断服务程序,恢复现场和保护现场之前的关中断复现场和保护现场之前的关中断(CLR EA)是为了保证在恢复和是为了保证在恢复和保护现场时,保护现场时,CPU不响应新的中断请求,从而使现场数据不受不响应新的中断请求,从而使现场数据不受到破坏或者造成混乱;到破坏或者造成混乱;(5)当把程序中保护现场之后的当把程序中保护现场之后的SETB EA和恢复现场之前和恢复现场之前的的CLR EA删除,就是一个单级中断服务程序。删除,就是一个单级中断服务程序。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 (三)中断程序举例(三)中断程序举例 【例【例2.1】使用一个按键控制图】使用一个按键控制图2.3所示的所示的流水灯,每按一次按键流水灯的流动方向改变流水灯,每按一次按键流水灯的流动方向改变一次,要求使用中断技术处理按键。一次,要求使用中断技术处理按键。解:如图解:如图2.3所示,按键接在所示,按键接在P3.3,因,因此采用外部中断此采用外部中断1,中断申请从,中断申请从 输入。每输入。每按一次按键,产生一次中断,流水灯流动方向按一次按键,产生一次中断,流水灯流动方向便改变一次。当开关便改变一次。当开关SA17闭合时,发出中断闭合时,发出中断请求。中断服务程序的矢量地址为请求。中断服务程序的矢量地址为0013H。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 图图2.3 方向可控流水灯方向可控流水灯 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 ORG 0000H ;定义下一条指令的地址定义下一条指令的地址 LJMP START ;转向主程序转向主程序 ORG 0013H;安排外部中断安排外部中断1处理程序的第一条指令处理程序的第一条指令 LJMP KEYS ;直接转移到中断处理程序直接转移到中断处理程序 ORG 0100H ;主程序起点主程序起点 START:MOV SP,#70H ;设置堆栈栈底指针设置堆栈栈底指针 SETB IT1 ;设置外部中断设置外部中断1的中断方式为下降沿中断的中断方式为下降沿中断 SETB EX1;开放外部中断开放外部中断1 SETB EA ;开放总中断开放总中断 MOV A,#01H ;#01H送累加器送累加器A L1:MOV P2,A ;累加器累加器A中内容送中内容送P2口口 MOV R7,#0FFH ;延时延时 L3:MOV R6,#0FFH L2:DJNZ R6,L2 DJNZ R7,L3 JNB FX,L4;FX=0时转移到时转移到L4(FX是流水灯流动方向标志)是流水灯流动方向标志)RL A ;累加器累加器A中内容左移一位中内容左移一位 SJMP L5 ;转移至转移至L5 L4:RR A ;累加器累加器A中内容右移一位中内容右移一位 L5:SJMP L1 ;转移至转移至L1学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 ;按键中断程序按键中断程序 ;入口入口:外部中断外部中断1 ;功能功能:确认按键后改变方向标志确认按键后改变方向标志FX的状态的状态 ORG 0300H;中断处理程序入口中断处理程序入口 KEYS:MOV R7,#20H ;首先延时去抖首先延时去抖 K1:MOVR6,#0FFH DJNZ R6,$DJNZ R7,K1 JB KEY,K2 ;延时完成后再检测按键延时完成后再检测按键 CPL FX ;确认按键按下确认按键按下,改变方向标志位状态改变方向标志位状态 K2:RETI ;中断结束返回中断结束返回 KEY BIT P3.3 ;定义按键变量定义按键变量 FX BIT 00H ;定义位变量定义位变量,用于判断方向用于判断方向 END ;结束结束学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 第三部分第三部分 项目实施项目实施一、项目实施分析一、项目实施分析(一)硬件电路(一)硬件电路 P1 P1口连接口连接8 8个发光二极管,外部中断个发光二极管,外部中断INT1INT1接接KEYKEY(P2.7P2.7接按键接按键SW8SW8,P3.3P3.3接接KEYKEY),作为中断申请信号,开机),作为中断申请信号,开机8 8个发个发光二极管从左到右流水,产生中断后,光二极管从左到右流水,产生中断后,8 8个发光管全亮、全灭,延时后,再循环。个发光管全亮、全灭,延时后,再循环。如图如图2.42.4所示。所示。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 参考程序:参考程序:ORG 0000h ;伪指令伪指令 LJMP START ;跳转到单片机的主程序跳转到单片机的主程序 ORG 0013H ;外部中断外部中断1的入口地址的入口地址 LJMP EXT1 ;跳转到中断服务程序跳转到中断服务程序 ORG 0100H ;伪指令,单片机主程序伪指令,单片机主程序的开始的开始START:MOV IE,#10000100b MOV IP,#00000100b MOV TCON,#00000000b ;定;定时器初始化时器初始化 MOV SP,#40H 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 MOV P1,#0FFH MOV P2,#00H MOV P3,#0FFH ;设置;设置 P1、P2、P3口状态口状态LOOP:MOV A,#0FFH CLR C MOV R2,#08H LOOP1:RLC A MOV P1,A LCALL DELAY DJNZ R2,LOOP1 JMP LOOP ;小灯循环点亮;小灯循环点亮EXT1:PUSH ACC ;中断服务程序;中断服务程序 PUSH PSW学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 MOV A,#00H ;小灯全亮;小灯全亮 MOV R3,#0AHLOOP2:MOV P1,A LCALL DELAY CPL A DJNZ R3,LOOP2 POP PSW POP ACC RETI学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 DELAY:MOV R5,#20 ;延时程序;延时程序D1:MOV R6,#20D2:MOV R7,#248 DJNZ R7,$DJNZ R6,D2 DJNZ R5,D1 RET END 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 任务二任务二 速度可控流水灯速度可控流水灯第一部分第一部分 项目要求项目要求将将8个个发发光光二二极极管管从从左左到到右右流流水水灯灯循循环环显显示示,通通过过按按键键改改变变循循环环的的速速率率,最最小小为为0.2秒秒,最最大大为为2秒秒,即即流流水水灯灯的的流流动动速速度度分分为为10级级,使使用用按按键键控控制制流流动动速速度度。每每按按一一次次按按键键流流水水灯灯的的流流动动速速度度改改变变1级级。按按一一次次按按键键,速速度度增增加加一一级级,逐逐步步增增加加,增增加加到到最最高高速速度度后后,再再循循环环。采采用用定定时时器器T0,方方式式1,定定时时器器定定时时基是时时基是0.05秒。秒。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 第二部分第二部分 相关知识相关知识 AT89S52单片机内部有单片机内部有三个三个16位可编程的定位可编程的定时器时器/计数器,计数器,T0、T1和和T2。它们既可用作定时。它们既可用作定时器方式,又可用作计数器方式,且都有器方式,又可用作计数器方式,且都有4种工作方种工作方式可供选择。但式可供选择。但T0、T1与与T2的的4种工作方式不同。种工作方式不同。一、定时器一、定时器/计数器结构与功能计数器结构与功能 定时器定时器0,定时器,定时器1是是16位加法计数器,分别位加法计数器,分别由两个由两个8位专用寄存器组成:定时器位专用寄存器组成:定时器0由由TH0和和TL0组成,定时器组成,定时器1由由TH1和和TL1组成。见图。组成。见图。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 图图2.5 定时器定时器/计数器结构框图计数器结构框图 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 1.1.计数功能计数功能计数功能计数功能 计数方式时,计数方式时,计数方式时,计数方式时,T T的功能是计来自的功能是计来自的功能是计来自的功能是计来自T0(P3.4)T0(P3.4)、T1(P3.5)T1(P3.5)的外部脉冲信号的个数。的外部脉冲信号的个数。的外部脉冲信号的个数。的外部脉冲信号的个数。输入脉冲由输入脉冲由输入脉冲由输入脉冲由1 1变变变变0 0的下降沿时,计数器的值增的下降沿时,计数器的值增的下降沿时,计数器的值增的下降沿时,计数器的值增加加加加1 1直到回零产生溢出中断,表示计数已达预期个直到回零产生溢出中断,表示计数已达预期个直到回零产生溢出中断,表示计数已达预期个直到回零产生溢出中断,表示计数已达预期个数。数。数。数。脉冲的计数长度与计数器预先装入的初值有脉冲的计数长度与计数器预先装入的初值有脉冲的计数长度与计数器预先装入的初值有脉冲的计数长度与计数器预先装入的初值有关。初值越大,计数长度越小;初值越小,计数长关。初值越大,计数长度越小;初值越小,计数长关。初值越大,计数长度越小;初值越小,计数长关。初值越大,计数长度越小;初值越小,计数长度越大。最大计数长度为度越大。最大计数长度为度越大。最大计数长度为度越大。最大计数长度为6553665536(2 21616)个脉冲)个脉冲)个脉冲)个脉冲(初值为(初值为(初值为(初值为0 0)。)。)。)。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 2.2.定时方式定时方式定时方式定时方式 定时方式时,定时方式时,定时方式时,定时方式时,T T记录记录记录记录89S5289S52内部振荡器输出的内部振荡器输出的内部振荡器输出的内部振荡器输出的脉冲脉冲脉冲脉冲(机器周期信号机器周期信号机器周期信号机器周期信号)个数。个数。个数。个数。每一个机器周期使每一个机器周期使每一个机器周期使每一个机器周期使T0T0或或或或T1T1的计数器增加的计数器增加的计数器增加的计数器增加1 1,直,直,直,直至计满回零自动产生溢出中断请求。至计满回零自动产生溢出中断请求。至计满回零自动产生溢出中断请求。至计满回零自动产生溢出中断请求。定时器的定时时间不仅与计数器的初值即计数定时器的定时时间不仅与计数器的初值即计数器的长度有关,而且还与系统的时钟频率有关。在器的长度有关,而且还与系统的时钟频率有关。在机器周期一定的情况下,初值越大,定时时间越短;机器周期一定的情况下,初值越大,定时时间越短;初值越小,定时时间越长。最长的定时时间为初值越小,定时时间越长。最长的定时时间为65536(216)个机器周期(初值为)个机器周期(初值为0)。)。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 定定时时器器/计计数数器器是是一一种种可可编编程程的的部部件件,在在其其工工作作之之前前必必须须将将控控制制字字写写入入工工作作方方式式和和控控制制寄寄存存器器,用用以以确确定定工工作作方方式式,这这个过程称为定时器个过程称为定时器/计数器的初始化。计数器的初始化。对对定定时时器器/计计数数器器进进行行控控制制的的寄寄存存器器共共有有2个:个:TCON、TMOD二、定时器二、定时器/计数器控制寄存器计数器控制寄存器学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 1.定时控制寄存器定时控制寄存器TCON(88H)工作方式寄存器工作方式寄存器TCON:控制定时器的启动、控制定时器的启动、停止,标志定时器的溢出和中断情况。停止,标志定时器的溢出和中断情况。TCON的高的高4位位:定时器的运行控制位和溢出标定时器的运行控制位和溢出标志位志位;低低4位位:外部中断触发方式控制位和锁存外部中外部中断触发方式控制位和锁存外部中断请求源。断请求源。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 TF0和和TF1:定时器定时器/计数器溢出标志位。计数器溢出标志位。当定时器当定时器/计数器计数器0(或定时器(或定时器/计数器计数器1)溢出时,)溢出时,由硬件自动使由硬件自动使TF0(或(或TF1)置)置1,并向,并向CPU申请中申请中断。断。CPU响应中断后,自动对响应中断后,自动对TF1清零。清零。TF1也可以也可以用软件清零。用软件清零。TR0和和TR1:定时器定时器/计数器运行控制位。计数器运行控制位。TR0(或(或TR1)=0,停止定时器,停止定时器/计数器计数器0(或定时器(或定时器/计数器计数器1)工作。)工作。TR0(或(或TR1)=1,启动定时器,启动定时器/计数器计数器0(或定时器(或定时器/计数器计数器1)工作。)工作。用指令用指令SETB TR1(或(或CLR TR1)使)使TR1置置1(或清零)。(或清零)。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 GATE C/T M1 M0GATE C/T M1 M0定时器定时器1定时器定时器0其中,低其中,低其中,低其中,低4 4位用于位用于位用于位用于T0T0,高,高,高,高4 4位用于位用于位用于位用于T1T1。2.工作方式寄存器工作方式寄存器TMOD(89H)M1、M0:工作方式控制位:工作方式控制位学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 C/TC/T:计数器:计数器:计数器:计数器/定时器方式选择位定时器方式选择位定时器方式选择位定时器方式选择位C/T T=0,为定时方式。,为定时方式。C/T T=1,为计数方式。,为计数方式。GATEGATE:门控位:门控位:门控位:门控位GATE0时,只要用软件使时,只要用软件使TR0(或或TRl)置置1就可以就可以启动定时器启动定时器T0(或(或T1););GATE=1时,只有时,只有/INT0(或或/INT1)引脚为高电平且引脚为高电平且由软件使由软件使TR0(或或TRl)置置1时,才能启动定时器工作。时,才能启动定时器工作。TMOD不能位寻址,只能用字节指令设置高不能位寻址,只能用字节指令设置高4位位定义定时器定义定时器1,低,低4位定义定时器位定义定时器0定时器工作方式。定时器工作方式。复位时,复位时,TMOD所有位均置所有位均置0。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 例:设置定时器例:设置定时器1工作于方式工作于方式1,定时,定时工作方式与外部中断无关,则工作方式与外部中断无关,则M1=0,M0=1,GATE=0,因此,高,因此,高4位应为位应为0001;定时器;定时器0未用,低未用,低4位可随意置数,位可随意置数,但低两位不可为但低两位不可为11(因方式(因方式3时,定时器时,定时器1停止计数),一般将其设为停止计数),一般将其设为0000。因。因此,指令形式为:此,指令形式为:MOV TMOD,#10H学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 三、定时器三、定时器/计数器工作方式与程序设计计数器工作方式与程序设计(一)工作方式(一)工作方式0图图2.6 定时器定时器/计数器计数器0方式方式0的逻辑结构的逻辑结构 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 工作方式寄存器工作方式寄存器TMOD中的中的M1M0为:为:00 方式方式0为为13位的计数器,位的计数器,由由TL0的低的低5位和位和TH0的的8位组成,位组成,TL0低低5位计数溢出时向位计数溢出时向TH0进位,进位,TH0计数溢出时,向中断标志位计数溢出时,向中断标志位TF0进位(硬件置位进位(硬件置位TF0),并申请中断。),并申请中断。T0是否溢出可查询是否溢出可查询TF0是否被置位,以产生是否被置位,以产生T0中中断。断。工作在定时方式工作在定时方式 C/T0。定时器。定时器T0工作在定时方式。定工作在定时方式。定时器时器T0对机器周期计数。对机器周期计数。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 定时器定时器T0在工作前,应先对在工作前,应先对13位的计数器赋位的计数器赋值,开始计数时,在初值的基础上进行减值,开始计数时,在初值的基础上进行减1计数。计数。定时时间的计算公式为:定时时间的计算公式为:定时时间定时时间(213 计数初值)计数初值)晶振周期晶振周期12或或 定时时间定时时间(213 计数初值)计数初值)机器周期机器周期若晶振频率为若晶振频率为12MHz,则,则最短定时时间为最短定时时间为 213(2131)(1/12)10-6121 s最长定时时间为最长定时时间为 (2130)(1/12)10-6128 192 s学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 工作在计数方式工作在计数方式 C/T1,定时器定时器T0工作在计数方式。工作在计数方式。13位计数器位计数器对外部输入信号进行加对外部输入信号进行加1计数。计数。当当INT0由由0变为变为1时,开始计数;当时,开始计数;当INT0由由1变为变为0时,停止计数。这样可以测量在时,停止计数。这样可以测量在INT0端出现的正脉冲端出现的正脉冲的宽度。的宽度。方式方式0计数时,计数时,最大计数值为最大计数值为 213=8 192(个外部脉冲个外部脉冲)。学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 例例2.2:假设:假设89S52单片机晶振频率为单片机晶振频率为12MHz,要求定时时间,要求定时时间8ms,使用定时器,使用定时器T0,工作方式,工作方式0,计算定时器初值,计算定时器初值X。解:解:t=(213 X)机器周期机器周期 当单片机晶振频率为当单片机晶振频率为12MHz时,时,机器周期机器周期=1s 8103=(213 X)1 X=8192-8000=192 转换成二进制数为:转换成二进制数为:11000000B 学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 例例2.3 利用利用T0方式方式0产生产生1ms的定时,在的定时,在P1.2引脚上输出周引脚上输出周期为期为2ms的方波。设单片机晶振频率的方波。设单片机晶振频率fosc12MHz。解:解:(1)解题思路)解题思路 要要在在P1.2引引脚脚输输出出周周期期为为2ms的的方方波波,只只要要使使P1.2每每隔隔1ms取反一次即可。执行指令为取反一次即可。执行指令为CPL P1.2。(2)确定工作方式)确定工作方式:方式方式0 TMOD=00H D0D1D2D3D4D5D6D7定时器定时器/计数器计数器T1定时器定时器/计数器计数器T0TMOD GATEC/TC/TM0M1M0M1GATE(89H)bitC/0:T0为定时功能;(为定时功能;(D2位)位)GATE0,只要用软件使,只要用软件使TR0(或(或TR1)置)置1就能启动定就能启动定时器时器T0(或(或T1););学习情景二学习情景二 交通信号灯的设计交通信号灯的设计 M1M0=00,工作方式,工作方式0 TMOD的值为的值为=00HTMOD.4TMOD.7可取任意值,因可取任意值,因T1不用,这里取不用,这里取0值。值。使用使用 MOV TMOD,#00H即可设定即可设定T0的工作方式。的工作方式。(3)计算)计算1 ms定时时定时时T0的初值的初值机器周期机器周期 T=1fosc12=1s计数个数:计数个数:X=1ms/ls=1000设设T0的计数初值为的

    注意事项

    本文(最新学习情境2交通灯的设计PPT课件.ppt)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开