LED模拟交通灯设计.doc_第1页
LED模拟交通灯设计.doc_第2页
LED模拟交通灯设计.doc_第3页
LED模拟交通灯设计.doc_第4页
LED模拟交通灯设计.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

LED 模拟交通灯 1 1 设计任务 1 1 功能及技术指标要求 设计交通灯的基本要求 设计一个十字路口交通灯控制电路 要求主干道与支干 道交替通行 主干道通行时 主干道绿灯亮 支干道红灯亮 时间为 60 秒 支干道通 行时 主干道绿灯亮 主干道红灯亮 时间为 30 秒 1 2 设计内容 按设计技术指标进行交通灯的硬件和软件设计 熟悉使用 Keil 软件和 Proteus 软件 1 3 设计思路及关键技术 一个完整的交通灯相当于一个简单的单片机系统 该系统有交通灯设置电路 单 片机 显示电路等构成 单片机是集成的 IC 芯片 只需根据实际设计要求选型 其他 部分都需要根据应用要求和性能指标自行设计 基于单片机的交通灯的设计时要充分的认识以下两个问题 1 因为本实验是交通灯控制实验 所以要先了解实际交通灯的变化规律 假设一个十字路口为 东西南北走向 初始状态 0 为东西红灯 南北红灯 然后转状态 1 南北绿灯通车 东西红灯 过一 段时间转状态 2 南北绿灯闪几次转亮黄灯 延时几秒 东西仍然红灯 再转状态 3 东西绿灯通 车 南北红灯 过一段时间转状态 4 东西绿灯闪几次转亮黄灯 延时几秒 南北仍然红灯 最后 循环至状态 1 2 双色 LED 是由一个红色 LED 管芯和一个绿色 LED 管芯封装在一起 公用负端 当红色正端 加高电平 绿色正端加低电平时 红灯亮 红色正端加低电平 绿色正端加高电平时 绿灯亮 两 端都加高电平时 黄灯亮 LED 模拟交通灯 2 2 总体方案设计 2 1 系统总体结构 开始开始 四个路口红灯亮四个路口红灯亮 东西绿灯亮 南北红灯亮 延时东西绿灯亮 南北红灯亮 延时 东西黄灯闪烁 南北红灯亮 延时东西黄灯闪烁 南北红灯亮 延时 东西红灯亮 南北绿灯亮 延时东西红灯亮 南北绿灯亮 延时 东西红灯亮 南北黄灯闪烁 延时东西红灯亮 南北黄灯闪烁 延时 2 2 单片机 2 2 1 单片机简介 单片微型计算机简称单片机 是典型的嵌入式微控制器 Microcontroller Unit 常用英文字母的缩写 MCU 表示单片机 它最早是被用在工业控制领域 单片 机由芯片内仅有 CPU 的专用处理器发展而来 最早的设计理念是通过将大量外围设备 和 CPU 集成在一个芯片中 使计算机系统更小 更容易集成进复杂的而对体积要求严 格的控制设备当中 INTEL 的 Z80 是最早按照这种思想设计出的处理器 从此以后 单 片机和专用处理器的发展便分道扬镳 单片机又称单片微控制器 它不是完成某一个逻辑功能的芯片 而是把一个计算机 系统集成到一个芯片上 相当于一个微型的计算机 和计算机相比 单片机只缺少了 I O 设备 概括的讲 一块芯片就成了一台计算机 它的体积小 质量轻 价格便宜 为学习 应用和开发提供了便利条件 同时 学习使用单片机是了解计算机原理与结 构的最佳选择 单片机内部也用和电脑功能类似的模块 比如 CPU 内存 并行总线 还有和硬 盘作用相同的存储器件 不同的是它的这些部件性能都相对我们的家用电脑弱很多 不过价钱也是低的 一般不超过 10 元即可用它来做一些控制电器一类不是很复杂的工 LED 模拟交通灯 3 作足矣了 我们现在用的全自动滚筒洗衣机 排烟罩 VCD 等等的家电里面都可以看 到它的身影 它主要是作为控制部分的核心部件 2 2 2 单片机的发展历史 单片机诞生于 20 世纪 70 年代末 经历了 SCM MCU SoC 三大阶段 SCM 即单片微型计算机 Single Chip Microcomputer 阶段 主要是寻求最佳的 单片形态嵌入式系统的最佳体系结构 创新模式 获得成功 奠定了 SCM 与通用计 算机完全不同的发展道路 在开创嵌入式系统独立发展道路上 Intel 公司功不可没 MCU 即微控制器 Micro Controller Unit 阶段 主要的技术发展方向是 不断 扩展满足嵌入式应用时 对象系统要求的各种外围电路与接口电路 突显其对象的智 能化控制能力 它所涉及的领域都与对象系统相关 因此 发展 MCU 的重任不可避免 地落在电气 电子技术厂家 从这一角度来看 Intel 逐渐淡出 MCU 的发展也有其客观 因素 在发展 MCU 方面 最著名的厂家当数 Philips 公司 向 MCU 阶段发展的重要因素 就是寻求应用系统在芯片上的最大化解决 因此 专用单片机的发展自然形成了 SoC 化趋势 随着微电子技术 IC 设计 EDA 工具的发 展 基于 SoC 的单片机应用系统设计会有较大的发展 因此 对单片机的理解可以从 单片微型计算机 单片微控制器延伸到单片应用系统 2 2 3 单片机的基本结构 单片机的结构大体相同 只是在功能上存在着差异 现以 MCS 51 单片机为例来对 单片机的内部功能结构进行介绍 MCS 51 单片机主要包括 9 个部分 CPU 8KB Flash ROM 256B RAM 128B SFR 16 位 3 个定时器 计数器 中断控制器 8 位 4 个并行口 可编程全双工串行口 时钟电路 64KB 总线扩展控制器 1 一个 8 位的微处理器 CPU 2 8KB 的片内程序存储器 Flash ROM 基本型的 Flash ROM 位 128B 用于烧录 运行的程序 常数数据 3 256B 的片内数据存储器 RAM 基本性的 RAM 为 128B 在程序运行时可以随 时写入和读出数据 用于存放函数相互传递的参数 接收的外部数据 运算的中间结 果 最后结果及现实的数据等 128B 特殊功能寄存器 SFR 控制单片机各个部件的运 行 4 3 个 16 位的定时器 计数器 基本型仅有 2 个定时器 每个定时器 计数器 可以设置为计数方式 用于对外部事件信号进行计数 也可以设置为定时方式 满足 各种定时要求 5 有一个管理 6 个中断源 基本形式 5 个中断源 2 个优先级的中断控制器 LED 模拟交通灯 4 6 4 个 8 位并行 I O 端口 每个端口即可以用作输入 也可以用作输出 7 一个全双工的 UART 通用异步接收发送器 串行 I O 口 用于单片机之间的 串行通信 或者单片机与 PC 机 其他设备 其他芯片之间的串行通信 8 片内振荡电路和时钟发生器 只需外面接上一晶振获输入振荡信号 就可以 产生单片机的控制电路 9 有一个可寻址 64KB 外部数据存储器 还可以寻址 64KB 外部程序存储器的三 总线的控制电路 以上各个部分通过片内总线相连 在 CPU 的控制下协调工作 实现用户程序的各 种功能 2 2 4 单片机 AT89C51 AT89C51 是一种带 4K 字节闪烁可编程可擦除只读存储器 FPEROM Falsh Programmable and Erasable Read Only Memory 的低电压 高性能 CMOS8 位微处理 器 俗称单片机 AT89C2051 是一种带 2K 字节闪烁可编程可擦除只读存储器的单片机 单片机的可擦除只读存储器可以反复擦除 100 次 该器件采用 ATMEL 高密度非易失存 储器制造技术制造 与工业标准的 MCS 51 指令集和输出管脚相兼容 由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中 ATMEL 的 AT89C51 是一种高效微控制器 AT89C2051 是它的一种精简版本 AT89C 单片机为很多嵌入式控制系统提供了一种灵活 性高且价廉的方案 LED 模拟交通灯 5 AT89C51 单片机 2 3 芯片主要性能指标 2 3 1 功能特性 与 MCS 51 兼容 4K 字节可编程闪烁存储器 寿命 1000 写 擦循环 数据保留时间 10 年 全静态工作 0Hz 24Hz 三级程序存储器锁定 128 8 位内部 RAM 32 可编程 I O 线 两个 16 位定时器 计数器 5 个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 2 3 2 管脚说明 VCC 供电电压 GND 接地 LED 模拟交通灯 6 P0 口 P0 口为一个 8 位漏级开路双向 I O 口 每脚可吸收 8TTL 门电流 当 P1 口的管 脚第一次写 1 时 被定义为高阻输入 P0 能够用于外部程序数据存储器 它可以被定 义为数据 地址的第八位 在 FIASH 编程时 P0 口作为原码输入口 当 FIASH 进行校 验时 P0 输出原码 此时 P0 外部必须被拉高 P1 口 P1 口是一个内部提供上拉电阻的 8 位双向 I O 口 P1 口缓冲器能接收输出 4TTL 门电流 P1 口管脚写入 1 后 被内部上拉为高 可用作输入 P1 口被外部下拉为 低电平时 将输出电流 这是由于内部上拉的缘故 在 FLASH 编程和校验时 P1 口作 为第八位地址接收 P2 口 P2 口为一个内部上拉电阻的 8 位双向 I O 口 P2 口缓冲器可接收 输出 4 个 TTL 门电流 当 P2 口被写 1 时 其管脚被内部上拉电阻拉高 且作为输入 并 因此作为输入时 P2 口的管脚被外部拉低 将输出电流 这是由于内部上拉的缘故 P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时 P2 口输出地址 的高八位 在给出地址 1 时 它利用内部上拉优势 当对外部八位地址数据存储器 进行读写时 P2 口输出其特殊功能寄存器的内容 P2 口在 FLASH 编程和校验时接收高 八位地址信号和控制信号 P3 口 P3 口管脚是 8 个带内部上拉电阻的双向 I O 口 可接收输出 4 个 TTL 门电 流 当 P3 口写入 1 后 它们被内部上拉为高电平 并用作输入 作为输入 由于 外部下拉为低电平 P3 口将输出电流 ILL 这是由于上拉的缘故 P3 口也可作为 AT89C51 的一些特殊功能口 如下表所示 口管脚 备选功能 P3 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 外部数据存储器读选通 P3 口同时为闪烁编程和编程校验接收一些控制信号 RST 复位输入 当振荡器复位器件时 要保持 RST 脚两个机器周期的高电平时间 ALE PROG 当访问外部存储器时 地址锁存允许的输出电平用于锁存地址的地位字节 在 FLASH 编程期间 此引脚用于输入编程脉冲 在平时 ALE 端以不变的频率周期输出 正脉冲信号 此频率为振荡器频率的 1 6 因此它可用作对外部输出的脉冲或用于定时 目的 然而要注意的是 每当用作外部数据存储器时 将跳过一个 ALE 脉冲 如想禁 止 ALE 的输出可在 SFR8EH 地址上置 0 此时 ALE 只有在执行 MOVX MOVC 指令是 ALE LED 模拟交通灯 7 才起作用 另外 该引脚被略微拉高 如果微处理器在外部执行状态 ALE 禁止 置位 无效 PSEN 外部程序存储器的选通信号 在由外部程序存储器取指期间 每个机器周 期两次 PSEN 有效 但在访问外部数据存储器时 这两次有效的 PSEN 信号将不出现 EA VPP 当 EA 保持低电平时 则在此期间外部程序存储器 0000H FFFFH 不 管是否有内部程序存储器 注意加密方式 1 时 EA 将内部锁定为 RESET 当 EA 端保 持高电平时 此间内部程序存储器 在 FLASH 编程期间 引脚也用于施加 12V 编程电 源 VPP XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入 XTAL2 来自反向振荡器的输出 2 3 3 振荡器特性 XTAL1 和 XTAL2 分别为反向放大器的输入和输出 该反向放大器可以配置为片内振 荡器 石晶振荡和陶瓷振荡均可采用 如采用外部时钟源驱动器件 XTAL2 应不接 有 余输入至部时钟信号要通过一个二分频触发器 因此对外部时钟信号的脉宽无任何要 求 但必须保证脉冲的高低电平要求的宽度 2 3 4 芯片擦除 整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合 并保持 ALE 管脚处于 低电平 10ms 来完成 在芯片擦操作中 代码阵列全被写 1 且在任何非空存储字节被重复编程以 前 该操作必须被执行 此外 AT89C51 设有稳态逻辑 可以在低到零频率的条件下静态逻辑 支持两种软件可选的掉电 模式 在闲置模式下 CPU 停止工作 但 RAM 定时器 计数器 串口和中断系统仍在工作 在 掉电模式下 保存 RAM 的内容并且冻结振荡器 禁止所用其他芯片功能 直到下一个硬件复位为 止 LED 模拟交通灯 8 3 硬件电路设计 3 1 单片机最小系统 单片机最小系统复位电路的极性电容 C1 的大小直接影响单片机的复位时间 一般 采用 10 30uF 51 单片机最小系统容值越大需要的复位时间越短 单片机最小系统晶振 Y1 也可以采用 6MHz 或者 11 0592MHz 在正常工作的情况下 可以采用更高频率的晶振 51 单片机最小系统晶振的振荡频率直接影响单片机的处理 速度 频率越大处理速度越快 单片机最小系统起振电容 C2 C3 一般采用 15 33pF 并且电容离晶振越近越好 晶振离单片机越近越好 4 P0 口为开漏输出 作为输出口时需加上拉电阻 阻值一般为 10k 3 1 1 复位电路 复位电路 由电容串联电阻构成 由图并结合 电容电压不能突变 的性质 可以知道 当 系统一上电 RST 脚将会出现高电平 并且 这个高电平持续的时间由电路的 RC 值来决定 典 型的 51 单片机当 RST 脚的高电平持续两个机器周期以上就将复位 所以 适当组合 RC 的取值就可以保证可靠的复位 一般教科书推荐 C 取 10u R 取 8 2K 当然也有其他取法 的 原则就是要让 RC 组合可以在 RST 脚上产生不少于 2 个机周期的高电平 至于如何具 体定量计算 可以参考电路分析相关书籍 LED 模拟交通灯 9 晶振电路 典型的晶振取 11 0592MHz 因为可以准确地得到 9600 波特率和 19200 波 特率 用于有串口通讯的场合 12MHz 产生精确的 uS 级时歇 方便定时操作 单片机 一片 AT89S51 52 或其他 51 系列兼容单片机 一 复位电路的用途 单片机复位电路就好比电脑的重启部分 当电脑在使用中出现死机 按下重启按 钮电脑内部的程序从头开始执行 单片机也一样 当单片机系统在运行中 受到环境 干扰出现程序跑飞的时候 按下复位按钮内部的程序自动从头开始执行 二 复位电路的工作原理 在单片机系统中 系统上电启动的时候复位一次 当按键按下的时候系统再次复 位 如果释放后再按下 系统还会复位 所以可以通过按键的断开和闭合在运行的系 统中控制其复位 3 1 2 晶振电路 晶振一般采用三端式 考毕兹 交流等效振荡电路 实际的晶振交流等效电路中 其中 Cv 是用来调节振荡频率 一般用变容二极管加上不同的反偏电压来实现 这也是 压控作用的机理 把晶体的等效电路代替晶体后 其中 Co C1 L1 RR 是晶体的等效 电路 单片机晶振的作用是为系统提供基本的时钟信号 通常一个系统共用一个晶振 便于各部分保持同步 有些通讯系统的基频和射频使用不同的晶振 而通过电子调整 频率的方法保持同步 3 1 3 电源电路 当前市场上的交流稳压电源有继电器控制和伺服电机控制的交流稳压电源两类 前者是一种有级调整 价格低廉 效率较高 但由于是有级调整造成电压跳动和瞬间 断电 用于计算机及带微电脑的家用电器 智能化仪器仪表等容易造成故障 后者是 一种无级调整 效率高 调压范围宽 波形失真小 但是功能比较单一 性能和可靠 性欠佳 没有实现智能化 不能数字显示 更没有定时输出和闹钟作用 为此 我们 研制的单片机控制多功能交流稳压电源 具有稳压精度好 效率高 适用范围宽 且 能自动连续调压 波形失真小 特别是由于采用了单片机 实现了智能化 具有数字 显示输出电压 稳压精度 时间 定时起止时间 闹钟时间等功能 参数可以由用户 修改 而且既可以作交流稳压电源 又可以作定时输出电源 LED 模拟交通灯 10 LED 模拟交通灯 11 3 1 4 串口电路 LED 模拟交通灯 12 3 2 单片机接口电路设计 LED 模拟交通灯 13 4 软件设计 4 1 程序流程图 开始 南北直行通行东西禁止 南北左拐通行东西禁止 AT89C51 初始化 南北黄灯闪烁 南北黄灯闪烁 通行 35 秒 Y N 闪烁 5 秒 Y N 通行 15 秒 Y N 闪烁 5 秒 Y N 东西黄灯闪烁 东西直行通行南北禁止 东西左拐通行南北禁止 东西黄灯闪烁 通行 35 秒 Y N 闪烁 5 秒 Y N 通行 15 秒 Y N 闪烁 5 秒 Y N LED 模拟交通灯 14 4 2 程序清单 include sbit LED R1 P0 0 sbit LED Y1 P0 1 横向路灯 sbit LED G1 P0 2 sbit LED R2 P0 3 sbit LED Y2 P0 4 纵向路灯 sbit LED G2 P0 5 void delayms unsigned int t void delay unsigned char t void main while 1 unsigned char i LED G1 0 LED R2 0 LED Y1 1 LED R1 1 LED Y2 1 LED G2 1 delayms 500 LED R2 0 LED G1 1 LED Y2 1 LED G2 1 for i 0 i 8 i delayms 150 LED Y1 LED Y1 LED G2 0 LED R1 0 LED Y1 1 LED R2 1 LED Y2 1 LED G1 1 delayms 500 LED R1 0 LED 模拟交通灯 15 LED Y1 1 LED G1 1 LED R2 1 LED G2 1 for i 0 iNew Project 菜单 如下图 LED 模拟交通灯 20 选择工程文件要存放的路径 输入工程文件名 LED 最后单击保存 在弹出的对话框中选择 CPU 厂商及型号 LED 模拟交通灯 21 选择好 Atmel 公司的 AT89S52 后 单击确定 在接着出现的对话框中选择 是 LED 模拟交通灯 22 新建一个 C51 文件 单击左上角的 New File 如下图所示 保存新建的文件 单击 SAVE 如下图 在出现的对话框中输入保存文件名 MAIN C 注意后缀名必须为 C 再单击 保存 LED 模拟交通灯 23 如下图 保存好后把此文件加入到工程中方法如下 用鼠标在 Source Group1 上单击右 键 然后再单击 Add Files to Group Source Group 1 如下图 选择要加入的文件 找到 MAIN C 后 单击 Add 然后单击 Close LED 模拟交通灯 24 在编辑框里输入如下代码 到此我们完成了工程项目的建立以及文件加入工程 现在我们开始编译工程如下 图所示 我们先单击编译 如果在错误与警告处看到 0 Error s 表示编译通过 LED 模拟交通灯 25 1 生成 hex 烧写文件 先单击 Options for Target 如图 2 在下图中 我们单击 Output 选中 Create HEX F 再单击 确定 LED 模拟交通灯 26 3 打开文件夹 实验 1 查看是否生成了 HEX 文件 如果没有生成 在执行一遍 步骤 10 到步骤 12 直到生成 5 3 实验结果分析 优点 此控制芯片功耗比较低 简单 缺点 没有紧急控制 无数码显示 不够智能化 仿真图 清晰 可靠 但功能不足 LED 模拟交通灯 27 总 结 本次课程设计的过程是艰辛的 不过收获却是很大的 通过这次课程设计 使我更加扎实的掌握了有关电子线路方面的知识 在设计过 程中虽然遇到了一些问题 但经过一次又一次的思考 一遍又一遍的检查终于找出了 原因所在 也暴露出了前期我在这方面的知识欠缺和经验不足 实践出真知 通过自 己亲手实践 是我们掌握的知识不再是纸上谈兵 由于使用的是单片机作为核心的控制元件 使得电路的可靠性比较高 功能也比 较强大 而且可以随时的更新系统 进行不同状态的组合 但是在我们设计和调试的 过程中 也发现了一些问题 譬如红灯和绿灯的切换还不够迅速 红绿灯规则效率还 不是很高等等 这需要在实践中进一步完善 过而能改 善莫大焉 在课程设计过程中 我们不断发现错我 不断改正 不断 领悟 不断获取 这次课程设计终于顺利完成了 在设计中遇到了很多问题 最后在 老师的指导下 终于迎刃而解 在今后社会的发展和学习实践过程中 一定要不懈努 力 不能遇到问题就想到要退缩 一定要不厌其烦的发现问题所在 然后一一进行解 决 只有这样才能成功的做成想做的事 才能在今后的道路上劈荆斩棘 而不是知难 而退 那样永远不可能收获成功 收获喜悦 也永远不可能得到社会极大人的认可 当然 通过这次课程设计 我也发现了自身的很多不足之处 在以后的学习中 我会不断的完善自我 不断进取 能使自己在单片机编程这方面有一个大的发展 LED 模拟交通灯 28 致 谢 本实训在选题及制作过程中得到陈晓云老师的悉心指导 老师多次询问制作进程 并为我指点迷津 帮助我们开拓研究思路 精心点拨 热忱鼓励 陈老师一丝不苟的 作风 严谨求实的态度 踏踏实实的精神 不仅授我以文 而且教我做人 给以终生 受益无穷之道 对陈晓云老师的感激之情是无法用言语表达的 感谢与我同组实训的同学 在实训即将完成之际 我的心情无法平静 从开始进 入设计到实训报告的顺利完成 有多少可敬的师长 同学 朋友给了我无言的帮助 在这里请接受我诚挚的谢意 这次实训 给予我的 是不断丰厚的学识 是从容 自信和幸福的能力 还有 珍贵的友谊 微笑回首来路 一幕幕 宛在昨天 人生就是如此吧 每个段落结束的时候 我们总会感慨时光飞 逝 但 该结束的总会结束 感谢所有的一切 让我有了受的机会 LED 模拟交通灯 29 参考文献 1 李朝青 单片机原理及接口技术 简明修订版 杭州 北京航空航天大学出版社 1998 2 李广弟 单片机基础

温馨提示

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

评论

0/150

提交评论