单片机交通灯本科毕业论文(编辑修改稿)内容摘要:

备了更高的计算速度,例如: 89C51的极限工作频率是 24MHz,但 89S51 的是 33MHz; ( 4) S 系列具有双工 UART 串行通道; ( 5) S 系列内部集成看门狗计时器,不在需要 C 系列那样外接的看门狗计时器电路 单元; ( 6) S 系列具备双数据指示器; ( 7) S 系列电源关闭标识; ( 8) S 系列具有全新的加密算法,程序的保密性大大加强,这样可有效的保护知识产权不被侵犯。 主控制器 AT89S52 AT89S52 是一种低功耗、高性能 CMOS8 位微 控制器 ,具有 8K 在系统可编程 7 AT89S52 引脚图 DIP 封装 Flash存储器。 使用 Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完 全兼 容。 片上 Flash 允许程序存储器在系统可编程,亦适于 常规编程器。 在单芯片上,拥有灵巧的 8 位 CPU 和在系统 可编程 Flash,使得AT89S52 为众多嵌入式控制应用系统提 供高灵活、超有效的 解决方案。 AT89S52 具有以下标准功能: 8k 字节 Flash, 256 字节 RAM, 32 位 I/O 口线,看门狗定时器, 2 个数据指针,三个 16 位 定时器 /计数器,一个 6 向量 2 级中断结构,全双工 串行口 , 片内晶振及 时钟电路。 另外, AT89S52 可降至 0Hz 静态逻 辑操作,支持 2 种软件可选择节电模式。 空闲模式下, CPU 停止工作,允许 RAM、定时器 /计数器、串口、中断继续工 作。 掉电保护方式下, RAM 内容被保存, 振 荡器 被冻结, 单片机 一切工作停止,直到下一个中断或硬件复位为止。 P3 口第二功能表 表 P3 口第二功能 引 脚 第 二 功 能 RXD: 串行口接收数据输入端 TXD: 串行口发送数据输出端 INT0: 外部中断 0 输入端 INT1: 外部中断 1 输入端 T0: 外部计数 0 脉冲输入端 T1: 外部计数 1 脉冲输入端 WR: 写外设控制信号输出端 RD: 读外设控制信号输出端 单片机最小系统 要使单片机工作起来,最基本的电路构成为图。 8 图 AT89S52 最小工作系统 电源电路 AT89S52 单片机的工作电压都范围: —, 所以通常给单片机外接 5V直流电源。 连接方式为 VCC(40 脚):接电源 +5V 端 GND(20 脚):接电源地端。 图 电源电路 本设计方案采用 通过 USB 外接 5V 直 流电源,给单片机及其它电路供电电源电路如图。 时钟电路 单片机工作的时间基准,决定单片机工作速度。 时钟电路就是振荡电路,向单片机提供一个正弦波信号作为基准,决定单片机的执行速度:晶体振荡频率高,则系统的时钟频率也高,单片机运行速度也就快。 但反过来运行速度快对存储器的速度要求就高,对印刷电路板的要求也高(线间寄生电容要小)。 时钟电路通常外接一个晶振、两个电容。 晶振AT89S52 单片机时钟频率范围: 0 — 33MHz。 电容为 15—45pF,本设计中使用 30pF 电容, 晶振。 时钟电 路连接方式如。 XTAL1, XTAL2 为片内震荡电路输入 /输出端。 在焊接电路板时,晶振和电容应尽可能的靠近单片机芯片,以减少寄生电容,更好的 9 保证电路稳定可靠的工作。 图 时钟电路 复位电路 RESET 为复位端(正脉冲有效,宽度) 10ms), RST 引脚持续 2 个周期高电平将使单片机复位。 复位是单片机的初始化操作,其主要功能是把 PC 初始化为 0000H。 确定单片机工作的起始状态,完成单片机的启动过程。 复位后 P0—P3 口均置 1,引脚表现为高电平,程序计数器和特殊功能寄存器 SFR 全部清零。 VCC 接通电源后, VCC 便对电容通过电阻进行充电。 在充电过程中,随着电容电压逐步趋近于 VCC, RST 脚上的电压最终接近于 0,过度过程的长短取决于电阻电容的大小。 22uF 电容满足使 RST 电压在启动后有两个周期 (2us)以上的时间高于斯密特触发器最低门槛电压,使整个过程得以完 成。 图 复位电路 除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于 “死锁 ”状态时为摆脱困境,也需通过复位操作,重新启动。 系统采用上电复位与手动复位方式进行复位。 如图 所示。 EA/VP 引脚 如 EA 端为高电平(接 VCC 端), CPU 则执行内部程序存储器的指令。 EA/Vpp: 寻址外部 ROM 控制端 /编程电源输入端。 低电平有效,当单片机内有 ROM 时应当接高电平, 10 片内无 ROM 时必须接地。 本设计用 AT89S52 单片机,片内有 8K 字节程序存储器 ROM,所以 EA 引脚必须接高电平。 或者悬空引脚,单片机默认为 1。 数码管 数码管是一种半导体发光器件,其基本单元是发光二极管( Light Emitting Diode)。 它既可以工作在恒定电流状态,又可以工作在脉冲电流状态。 在平均电流相同的情况下,脉冲工作状态可产生比直流工作状态较强的 亮度。 LED 显示器每段正常发光需直流电流10~ 20mA。 LED 数码管属于电流控制型器件,发光亮度与正向电流成正比,每个字段的工作电流约为 10mA 左右。 其优点是工作电压较低、体积小、寿命长、工作可靠性高、响应速度快、亮度高、不会损坏器件。 工作原理 数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示)。 按能显示多少个 “8”可分为 1 位、 2 位、 4 位等等。 按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。 共阳极数码管是指将所有发光二极管的阳极 接到一起形成公共阳极 (COM)的数码管。 共阳极数码管在应用时应将公共极 COM 接到 +5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。 当某一字段的阴极为高电平时,相应字段就不亮。 图 共阳极 LED 数码管 共阴极数码管是指将所有发光二极管的阴极接到一起形成公共阴极 (COM)的数码管。 共阴极数码管在应用时应将公共极 COM 接到地线 GND 上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。 当某一字段的阳极为低电平时,相应字段就不亮。 在实际应用中,除公共极外,其他各极应串接一个电阻后在接到相 应电平。 电阻的作用是限制流过 LED 中的电流,以保证在发光时二极管不因电流过大而被烧毁。 11 图 共阴极 LED 数码管 本设计选用的数码管为 寸两位动态高亮红色 SMG 型号的双位共阳极数码管,其内部电路引脚图如图 所示。 图 数码内部电路图 驱动方式 由于 LED 是电流发光器件,加到 LED 显示器上的段码首先应通过驱动电路,产生驱动 LED 显示器发光所需要的驱动电流,从而显示出我们想要的数字。 驱动电路可以由三极管组成,也可以是其它具有驱动能力的集成电路,如 MC14174LS244 等。 另一种驱动方法是采用专用芯片,例如 744 744 451 MAX7219(专用的带驱动器的 LED 译码器)可以实现对 BCD 码的译码,但不能对大于 9 的 BCD 码进行译码。 根据数码管的驱动方式的不同,可以分为静态式和动态式两类。 (1) 静态显示驱动 静态驱动也称直流驱动。 静态驱动是指每个数码管的每一个段码都由一个单片的 I/O端口进行驱动,或者使用如 BCD 码二 十进制译码器译码进行驱动。 LED 静态驱动电路如 12 图 所示。 静态驱动的优点是编程简单,显示亮度高,显示稳定,单片机花在显示上的时间少 ;缺点是占用 I/O 端口多,扩展显示用 I/O 口会使硬件成本增加。 如驱动 5 个数码管静态显示则需要 58= 40 根 I/O 端口来驱动,要知道一个 AT89S51 单片机可用的 I/O 端口才 32 个,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 因此,静态驱动只适合于显示位数较少的场合。 图 LED 静态驱动电路 (2) 动态显示驱动 图 LED 动态驱动电路 在显示位数较多时,为了简化电路,降低成本,通常采用动态扫描显示方式。 数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8 个显示笔划 a、 b、 c、 d、 e、 f、 g、 dp的同名端连在一起,另外为每个数码管的公共极COM 增加位选通控制电路,位选通由各自独立的 I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显 13 示出字形,没有选通的数码管就不会亮。 LED 动态驱动电路如图 所示。 通过分时轮流控制各个数码管的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动。 在轮流显示过程中,每位数码管的点亮时间为 1~ 2ms,由于人的视 觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的 I/O 端口,而且功耗更低。 缺点是显示器亮度不如静态显示方式,软件不断扫描显示器要占用单片机较多的时间。 考虑到 I/O 端口和本次设计的具体操作采用动态显示驱动。 14 第 3 章 系统硬件设计 硬件设计是整个系统的基础, 硬件原理图如图 所示: 图 硬件原理图 15 总体设计及功能描述 本设计以单片机 AT89S52 为 控制核心,采用模块化设计,共分以下几个功能模块:单片机控制系统、 按键控制系统 、通行指示和倒计时模块等。 单片机作为整个硬件系统的核心,它既是协调整机工作的控制器,又是数据处理器。 它由单片机、时钟电路、复位电路等组成。 通行 方向指示采用红、绿、黄 LED 发光管,用三种颜色指示车辆放行、暂停、禁止,形象直观。 按键 采用 两 只触发按键组成,电路简洁可靠;通过 按键 可设置:紧急情况发生时的交通灯状态控制 和节能的夜间模式。 系统采用双数码管倒计时计数功能,最大显示数字 99。 系统整体电路 图 交通灯设计基本 框图 ( 1) AT89S52 单片机作为系统核心器件,通过各个 I/O 口控制和驱动整个系统; ( 2) P0 口的第一到第四引脚 控制数码管的位选 ,然后经过 三极管 输出 高 电平传输到双位共 阳 数码管进行 选通 , P2 口的第 一 到第 七 引脚用于控制数码管的片选。 ( 3) P1 口的六个引脚分别控制六个表示红绿黄信号灯的 LED 二极管的亮与灭; ( 4) 根据十字路口车流量的大小调节车辆通行的时间。 ( 5) 设置紧急按键用以处理紧急情况。 通过外部中断 1 实现, 用于检测相应信号。 ( 6) 设置夜间模式按键,从节省能源的角度考虑。 通过外部中断 1 实现, 用于 16 检测其信号。 系统各组成部分 主控制器 AT89S52 AT89S52 为 8 位的 CPU,有 40 个引脚 32 个外部双向输入 /输出( I/O)口, 5 个中断优先级 2 层中断嵌套中断, 2 个全双工串行通信口,看门狗( WDT)电路,片内有振荡器和时钟电路 ,工作频率为 0~ 33MHz 片内有 256 字节 数据存储器 RAM 片内有 8K 字节 程序存储器 ROM 4 个 8 位 的并行 I/O 口( P0、 P P P3) 1 个 全双工串行通讯口 3 个 16 位 定时器 /计数器( T0、 T T2) 可处理 6 个中断源,两级中断优先级 AT89S52 可按照常规方法进行编程,亦可在线编程。 其将通用微处理器及 FLASH 存储器结合,特别是可反复擦写的 FLASH 存储器可有效降低开发成本。 其引脚 如图 : 图 AT89S52 单片机引脚图 17 显示元件 在交通信号灯的正上方安装一个可以显示绿灯通行时间,红灯等待时间的显示电路,采用数码管显示电路是一种很好的方法。 由于东往西方向和西往东方向显示的时间相同,同理,南往北方向和北往南方向显示的时间也相同,所以只需要考虑四位数码管显示电路,其中东西方 向两位,南北方向两位,两位数码管可以显示的时间范围为 099 秒完全可以满足系统的要求。 从节省硬件资源的角度考虑,数码管显示使用动态扫描方式来处理。 ISP 接口 ISP 就是在线编程,以往单片机下载程序都需要专门的烧写器,并且需要把单片机从电路板上拔下来烧写,烧好再插上,很麻烦。 ISP 功能可以通过非常简单廉价的下载线直接在电路板上给单片机下载程序,当对电路进行调试时由于程序的错误或对程序的新增功能需要烧入程序时,不需要对单片机多次拔插,所以。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。