欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数码管显示倒计时时间的交通灯控制设计.docx

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

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

    数码管显示倒计时时间的交通灯控制设计.docx

    1、数码管显示倒计时时间的交通灯控制设计第1章总体设计方案1.1. 设计思路1.1.1课程设计的目的(1).进一步熟悉和掌握单片机的结构及工作原理。(2).掌握单片机的接口技术及相关外围芯片的外特性,控制方法。(3).通过课程设计,掌握以单片机核心的电路设计的基本方法和技术。(4).通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。(5).通过完成一个包括电路设计和程序开发的完整过程,了解开发一单片机应用系统的全过程,为今后从事相应开发打下基础。1.1.2设计任务和内容1设计任务单片机采用用AT89C51芯片,使用LED(红,黄,绿)代表各个路口的交通灯,用8段数码管对转换时间进行倒时

    2、(东西路口,南北路口各10秒,黄灯时间3秒)。2设计内容(1)设计并绘制硬件电路图。(2)编写程序并将调试好的程序在proteus软件中仿真。 3方案设计与论证显示界面方案 该系统要求完成倒计时、状态灯等功能。按照任务要求采用数码管和MAX7219驱动芯片设计方框图整个设计以AT89C51单片机为核心,由数码管显示,LED数码管显示,MAX驱动芯片。硬件模块入图2-1。4交通管理的方案论证东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为东西、南北两干道的公共停

    3、车时间。指示灯燃亮的方案如表2。255255S东西道红灯亮红灯亮绿灯亮黄灯亮南北道绿灯亮黄灯亮红灯亮红灯亮表2说明: (1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯,此道车辆通过,行人禁止通行。时间为5秒。(2)黄灯5秒,警示车辆和行人红、绿灯的状态即将切换。 (3)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行。时间为5秒。 (4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。5芯片简介1)AT89C51单片机简介(2) 各引脚功能说明Vcc:+5V 电源电压。 Vss:电路接地端。 P0.0P0.7:

    4、通道 0,它是 8 位漏极开路的双向 I/O 通道当扩展外部存贮器时,这也是低八位地址和数据总线在编程和校验期间它输入和输出字节代码,通道 0 吸收/发出二个 TTL 负载 P1.0P1.7:通道 1 是 8 位拟双向 I/O 通道,在编程和校验时,它发出低 8 位地址。 11 通道1吸收/发出一个 TTL 负载。 P2.0P2.7:通道 2 是 8 位拟双向 I/O 通道。当访问外部存贮器时,用作高 8 位地址总线。通道 2 能吸收/发出一个 TTL 负载。 P3.0P3.7:通道 3 准双向 I/O 通道。通道 3 能吸收/发出一个 TTL 负载,P3 通道的每一根线还有另一种功能: P3

    5、.0:RXD,串行输入口。 P3.1:TXD,串行输出口。 P3.2:INT0,外部中断 0 输入口。 P3.3:INT1,外部中断 1 输入口。 P3.4:T0,定时器/计数器 0 外部事件脉冲输入端。 P3.5:T1,定时器/计数器 1 外部事件脉冲输入端 P3.6:WR,外部数据存贮器写脉冲。 P3.7:RD,外部数据存贮器读脉冲。 RST/VpD:引脚 9,复位输入信号,振荡器工作时,该引脚上 2 个机器周期的高电平可以实现复位操作,在掉电情况下Vcc 降到操作允许限度以下后备电源加到此引脚将只给片内 RAM 供电。 ALE/PROG:引脚 30,地址锁存有效信号,其主要作用是提供一个

    6、适当的定时信号,在它的下降沿用于外部程序存储器或外部数据存贮器的低 8 位地址锁存,使总线 P0 输出/输入口分时用作地址总线,低 8 位,和数据总线,此信号每个机器出现 2 次,只是在访问外部数据存储器期间才不输出 ALE。 所以,在任何不使用外部数据存贮器的系统中,ALE 以 1/6 振荡频率的固定速率输出,因而它能用作外部时钟或定时,8751 内的EPROM 编程时,此端输编程脉冲信号。 PSEN:引脚 29,程序选通有效信号,当从外部程序存贮器读取指令时产生, 低电平时,指令寄存器的内容读到数据总线上。 EA/VPP:引脚 31,当保持 TTL 高电平时,如果指令计数器小于 40968

    7、051 执行内部 ROM 的指令,8751 执行内部 EPROM 的指令,当使 TTL 为低电平时,从外部程序存贮器取出所有指令,在 8751 内的 EPROM 编程时,此端为 21V 编程电源输入端。 XTAL1:引脚 18,内部振荡器外接晶振的一个输入端,HMOS 芯片使用外部振荡源时,此端必须接地。 XTAL2:引脚 19,内部振荡器外2)MAX7219芯片简介MAX7219/MAX7221是一种集成化的串行输入/输出共阴极显示驱动器,它连接微处理器与8位数字的7段数字LED显示,也可以连接条线图显示器或者64个独立的LED。其上包括一个片上的B型BCD编码器、多路扫描回路,段字驱动器,

    8、而且还有一个8*8的静态RAM用来存储每一个数据。 只有一个外部寄存器用来设置各个LED的段电流。 MAX7221与SPI、 QSPI以及 MICROWIRE相兼容,同时它有限制回转电流的段驱动来减少EMI(电磁干扰)。 一个方便的四线串行接口可以联接所有通用的微处理器。 每个数据可以寻址在更新时不需要改写所有的显示。MAX7219/MAX7221同样允许用户对每一个数据选择编码或者不编码。 整个设备包含一个150A的低功耗关闭模式,模拟和数字亮度控制,一个扫描限制寄存器允许用户显示1-8位数据,还有一个让所有LED发光的检测模式电路模块1.1.3驱动芯片和LED数码管显设计方框图1.1.4设

    9、计原理分析对于一个交通路口来说,能在最短的时间内达到最大的车流量,就算是达到了最佳的性能,我们称在单位时间内多能达到的最大车流为车流量,用公式:车流量= 车流 / 时间 来表示。先设定一些标号如图21 所示。说明:此图为直方图,上边为北路口灯,右边为东路口灯,下边为南路口灯,左边为西路口灯。 图22 所示为一种红绿灯规则的状态图,分别设定为S1、S2、S3、S4,交通灯以这四的状态为一个周期,循环执行(见图23)。图21请注意图21b和图21d,它们在一个时间段中四个方向都可以通车,这种状态能在一定的时间内达到较大的车流量,效率特别高。依据上述的车辆行驶的状态图,可以列出各个路口灯的逻辑表,由

    10、于相向的灯的状态图是一样的,所以只需写出相邻路口的灯的逻辑表;根据图23 可以看出,相邻路口的灯它们的状态在相位上相差180。因此最终只需写出一组S1、S2、S3、S4的逻辑状态表。如表21 所示。表21表中的“”代表是红灯亮(也代表逻辑上的0),“”是代表绿灯亮(也代表逻辑上的1),依上表,就可以向相应的端口送逻辑值。1.1.4交通灯显示时间的理论分析与计算东西和南北方向的放行时间的长短是依据路口的各个方向平时的车流量来设定,并且S1、S2、S3、S4各个状态保持的时间之有严格的对应关系,其公式如下示。T-S1+T-S2=T-S3T-S2=T-S4T-S1=T-S3我们可以依据上述的标准来改

    11、变车辆的放行时间。按照一般的规则,一个十字路口可分为主干道和次干道,主干道的放行时间大于次干道的放行时间,我们设定值时也应以此为参考第2章仿真图与设计程序2.1LED数码管显示模块静态显示方式:静态显示方式是指当显示器显示某一字符时,发光二极管的位选始终被选中。在这种显示方式下,每一个LED数码管显示器都需要一个8位的输出口进行控制。由于单片机本身提供的I/O口有限,实际使用中,通常通过扩展I/O口的形式解决输出口数量不足的问题。 静态显示主要的优点是显示稳定,在发光二极管导通电流一定的情况下显示器的亮度大,系统运行过程中,在需要更新显示内容时,CPU才去执行显示更新子程序,这样既节约了CPU

    12、的时间,又提高了CPU的工作效率。其不足之处是占用硬件资源较多,每个LED数码管需要独占8条输出线。随着显示器位数的增加,需要的I/O口线也将增加。 (2)动态显示方式:动态显示方式是指一位一位地轮流点亮每位显示器(称为扫描),即每个数码管的位选被轮流选中,多个数码管公用一组段选,段选数据仅对位选选中的数码管有效。对于每一位显示器来说,每隔一段时间点亮一次。显示器的亮度既与导通电流有关,也与点亮时间和间隔时间的比例有关。通过调整电流和时间参数,可以既保证亮度,又保证显示。若显示器的位数不大于8位,则显示器的公共端只需一个8位I/O口进行动态扫描(称为扫描口),控制每位显示器所显示的字形也需一个

    13、8位口(称为段码输出)。示部分,电路图如下2.1程序:倒计时子程序红绿灯部分;MAX7219子程序MAX7219: CLR P1.1 ;将LOAD信号拉低 LCALL XH1 ;一位字节送入7219 MOV A,R7 ; LCALL XH1 ; NOP NOP SETB P1.1 ;产生LOAD上升沿,锁存数据 RET XH1: MOV R2,#08H ;总共有8位,移8次 NEXT: CLR P1.2 ;将CLK拉低 RLC A ;A中值左移入进位累加器C中 MOV P1.0,C ;给DIN口 NOP SETB P1.2 ;CLK上升沿,移入数据 NOP DJNZ R2,NEXT ;没完成则

    14、继续 RETSHORT_DELAY: MOV 10H,#40 ;10msDEL: MOV 11H,#50 DEL1: MOV 12H,#255 DEL2: DJNZ 12H,DEL2 ;125*2us=0.25ms DJNZ 11H,DEL1 DJNZ 10H,DEL ;0.25ms*40=10ms RET END红绿灯子程序 LOOP: MOV R3,#26 MOV P0,#1EH LCALL DISP RET LOOP1:MOV R3,#6 MOV P0,#1DH LCALL DISP RET LOOP2: MOV R3,#25 MOV P0,#33H LCALL DISP RET LOO

    15、P3:MOV R3,#6 MOV P0,#2BH LCALL DISP RET总程序CLK EQU P1.2 DIN EQU P1.0 LOAD EQU P1.1 ORG 0000H LJMP MAIN ORG 0090H MAIN : LCALL LOOP LCALL LOOP1 LCALL LOOP2 LCALL LOOP3 LJMP MAIN LOOP: MOV R3,#26 MOV P0,#1EH LCALL DISP RET LOOP1:MOV R3,#6 MOV P0,#1DH LCALL DISP RET LOOP2: MOV R3,#25 MOV P0,#33H LCALL D

    16、ISP RET LOOP3:MOV R3,#6 MOV P0,#2BH LCALL DISP RET DISP: MOV A,#09H ;置译码器方式寄存器地址 MOV R7,#0FFH ;选择译码方式 LCALL MAX7219 ;写入 MOV A,#0AH ;置亮度寄存器地址 MOV R7,#05H ;选择占空比 LCALL MAX7219 ;写入 MOV A,#0BH ;置MAX7219显示扫描位数寄存器地址 MOV R7,#07H ;选择8位显示方式 LCALL MAX7219 ;写入 MOV A,#0CH ;置关闭显示寄存器地址 MOV R7,#01H ;选择进入正常工作,00H表示

    17、关闭 LCALL MAX7219 ;写入 MOV 20H,R3 DEC 20H MOV A,20H MOV B,#10 DIV AB MOV 30H,A MOV 31H,B MOV R0,#30H CLR P1.1 ; MOV R1,#03H ;指向第0位LED MOV A,R0 ;取显示缓冲区数据 MOV R7,A ;显示数 MOV A,R1 ;LED显示的位地址给A LCALL MAX7219 ; INC R0;指向下一个显示数据 INC R1 ;指向另一个数码管 MOV A,R0 MOV R7,A MOV A,R1 LCALL MAX7219 MOV R0,#30H CLR P1.1 ;

    18、 MOV R1,#07H ;指向第0位LED MOV A,R0 ;取显示缓冲区数据 MOV R7,A ;显示数 MOV A,R1 ;LED显示的位地址给A LCALL MAX7219 ; INC R0;指向下一个显示数据 INC R1 ;指向另一个数码管 MOV A,R0 MOV R7,A MOV A,R1 LCALL MAX7219 LCALL SHORT_DELAY DJNZ R3,DISP RET;MAX7219子程序MAX7219: CLR P1.1 ;将LOAD信号拉低 LCALL XH1 ;一位字节送入7219 MOV A,R7 ; LCALL XH1 ; NOP NOP SETB

    19、 P1.1 ;产生LOAD上升沿,锁存数据 RET XH1: MOV R2,#08H ;总共有8位,移8次 NEXT: CLR P1.2 ;将CLK拉低 RLC A ;A中值左移入进位累加器C中 MOV P1.0,C ;给DIN口 NOP SETB P1.2 ;CLK上升沿,移入数据 NOP DJNZ R2,NEXT ;没完成则继续 RETSHORT_DELAY: MOV 10H,#40 ;10msDEL: MOV 11H,#50 DEL1: MOV 12H,#255 DEL2: DJNZ 12H,DEL2 ;125*2us=0.25ms DJNZ 11H,DEL1 DJNZ 10H,DEL ;0.25ms*40=10ms RET END(数码管显示倒计时时间的交通灯控制设计)计)


    注意事项

    本文(数码管显示倒计时时间的交通灯控制设计.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开