单片机课程设计——交通灯控制_第1页
单片机课程设计——交通灯控制_第2页
单片机课程设计——交通灯控制_第3页
单片机课程设计——交通灯控制_第4页
单片机课程设计——交通灯控制_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

单片机课程设计 交通灯控制 1 摘要摘要 2 1 引言引言 3 2 总体设计方案总体设计方案 4 2 1 课程设计目的课程设计目的 4 2 2 设计要求设计要求 4 2 3 课程设计功能描述课程设计功能描述 5 2 4 课程设计分析设计课程设计分析设计 5 3 系统设计系统设计 5 3 1 硬件电路图及其说明硬件电路图及其说明 5 3 2 软件流程图及其说明软件流程图及其说明 10 3 3 程序的源代码清单 汇编语言 程序的源代码清单 汇编语言 10 3 4 上机调试运行结果及分析上机调试运行结果及分析 14 4 硬件调试硬件调试 16 5 软件调试软件调试 16 6 课程设计经验教训总结课程设计经验教训总结 16 单片机课程设计 交通灯控制 2 7 参考文献参考文献 17 摘要摘要 近年来随着科技的飞速发展 单片机的应用正在不断地走向深入 同时带 动传统控制检测日新月益更新 在实时检测和自动控制的单片机应用系统中 单片机往往是作为一个核心部件来使用 仅单片机方面知识是不够的 还应根 据具体硬件结构 以及针对具体应用对象特点的软件结合 加以完善 交通信 号灯的出现 使交通得以有效管制 对于疏导交通流量 提高道路通行能力 减少交通事故有明显效果 本系统采用单片机 AT89C51 为中心器件来设计交通 灯控制器 系统实用性强 操作简单 扩展性强 关键字 电子线路 AT89S52 LED 交通灯 1 引言引言 当今 红绿灯安装在各个道口上 已经成为疏导交通车辆最常见和最有效的手段 但这一技术在 19 世纪就已出现了 1858 年 在英国伦敦主要街头安装了以燃煤气为光源的红 蓝两色的机械 扳手式信号灯 用以指挥马车通行 这是世界上最早的交通信号灯 1868 年 英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上 安装了世 单片机课程设计 交通灯控制 3 界上最早的煤气红绿灯 它由红绿两以旋转式方形玻璃提灯组成 红色表示 停止 绿色表示 注意 1869 年 1 月 2 日 煤气灯爆炸 使警察受伤 遂 被取消 电气启动的红绿灯出现在美国 这种红绿灯由红绿黄三色圆形的投光器组 成 1914 年始安装于纽约市 5 号大街的一座高塔上 红灯亮表示 停止 绿 灯亮表示 通行 1918 年 又出现了带控制的红绿灯和红外线红绿灯 带控制的红绿灯 一 种是把压力探测器安在地下 车辆一接近红灯便变为绿灯 另一种是用扩音器 来启动红绿灯 司机遇红灯时按一下嗽叭 就使红灯变为绿灯 红外线红绿灯 当行人踏上对压力敏感的路面时 它就能察觉到有人要过马路 红外光束能把 信号灯的红灯延长一段时间 推迟汽车放行 以免发生交通事故 信号灯的出现 使交通得以有效管制 对于疏导交通流量 提高道路通行 能力 减少交通事故有明显效果 1968 年 联合国 道路交通和道路标志信号 协定 对各种信号灯的含义作了规定 绿灯是通行信号 面对绿灯的车辆可以 直行 左转弯和右转弯 除非另一种标志禁止某一种转向 左右转弯车辆都必 须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行 红灯是禁行 信号 面对红灯的车辆必须在交叉路口的停车线后停车 黄灯是警告信号 面 对黄灯的车辆不能越过停车线 但车辆已十分接近停车线而不能安全停车时可 以进入交叉路口 2 总体设计方案总体设计方案 2 1 课程设计目的课程设计目的 大学本科学生动手能力的培养和提高是大学本科教育的一个重要内容 单 片机原理及应用 是一门应用性较强的课程 如何让学生在学好基础知识的同 时 迅速掌握应用技术 实验与课程设计环节起着非常重要的作用 本课程设 计的目的 是让学生通过课程设计 首先建立起单片机应用系统的概念 根据 单片机课程设计 交通灯控制 4 实际的系统设计要求 掌握初步的单片机系统设计方法 从硬件系统和软件系 统设计两个方面得到实际的提高 为今后的毕业设计打下良好的基础 2 2 设计要求设计要求 1 通过交通信号灯控制系统的设计 掌握 89C51 并行口传输数据的方法 以控制南北东西四盏交通灯的亮与灭 2 用 89C51 作为输出口 控制十二个发光二极管熄灭 模拟交通灯管理 3 通过单片机课程设计 熟练掌握汇编语言的编程方法 将理论联系到实 践中去 提高我们的动脑和动手的能力 4 完成控制系统的硬件设计 软件设计 仿真调试 2 3 课程设计功能描述课程设计功能描述 设计一个交通灯控制电路 并且编写相应的软件 完成交通灯的管理任务 该控制任务应该完成下列功能 1 控制 LED 灯 完成交通灯的管理任务 2 按照分析 设计 调试和测试的软 硬件开发过程完成这个控制任务 2 4 课程设计分析设计课程设计分析设计 本次试验是基于 51 系列单片机道路交通灯的设计 现在我们设计一个十 字路口为东西南北走向 初始状态 0 为东西红灯 南北红灯 然后转状态 1 南 北绿灯通车 东西红灯 过一段时间转状态 2 南北绿灯闪几次转亮黄灯 延 时几秒 东西仍然红灯 再转状态 3 东西绿灯通车 南北红灯 过一段时间 转状态 4 东西绿灯闪几次转亮黄灯 延时几秒 南北仍然红灯 最后循环至 状态 1 单片机课程设计 交通灯控制 5 3 系统设计系统设计 3 1 硬件电路图及其说明硬件电路图及其说明 1 硬件电路图 使用 Proteus 进行绘图 2 AT89C51 简介 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器 FPEROM Falsh Programmable and Erasable Read Only Memory 的低电压 高性能CMOS8位微 处理器 俗称单片机 具有128 8位内部RAM 有32根可编程I O线 两个16位 定时器 计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内 振荡器和时钟电路 单片机课程设计 交通灯控制 6 管脚说明 VCC 供电电压 GND 接地 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 时 它利用内部上拉 单片机课程设计 交通灯控制 7 优势 当对外部八位地址数据存储器进行读写时 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 才起作用 另外 该引脚被略微拉高 如果微处理器在外部执行状态 ALE 禁止 置位无效 PSEN 外部程序存储器的选通信号 在由外部程序存储器取指期间 每个 机器周期两次 PSEN 有效 但在访问外部数据存储器时 这两次有效的 PSEN 信 号将不出现 EA VPP 当 EA 保持低电平时 则在此期间外部程序存储器 0000H FFFFH 不管是否有内部程序存储器 注意加密方式 1 时 EA 将内部锁定为 RESET 当 EA 端保持高电平时 此间内部程序存储器 在 FLASH 编程期间 此 单片机课程设计 交通灯控制 8 引脚也用于施加 12V 编程电源 VPP XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入 XTAL2 来自反向振荡器的输出 振荡器特性 XTAL1 和 XTAL2 分别为反向放大器的输入和输出 该反向放大器可以配置为 片内振荡器 石晶振荡和陶瓷振荡均可采用 如采用外部时钟源驱动器件 XTAL2 应不接 有余输入至内部时钟信号要通过一个二分频触发器 因此对外 部时钟信号的脉宽无任何要求 但必须保证脉冲的高低电平要求的宽度 芯片擦除 整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合 并保持 ALE 管脚处于低电平 10ms 来完成 在芯片擦操作中 代码阵列全被写 1 且 在任何非空存储字节被重复编程以前 该操作必须被执行 此外 AT89C51 设有稳态逻辑 可以在低到零频率的条件下静态逻辑 支持两 种软件可选的掉电模式 在闲置模式下 CPU 停止工作 但 RAM 定时器 计数 器 串口和中断系统仍在工作 在掉电模式下 保存 RAM 的内容并且冻结振荡 器 禁止所用其他芯片功能 直到下一个硬件复位为止 单片机课程设计 交通灯控制 9 3 2 软件流程图及其说明软件流程图及其说明 程序开始执行 进入初始状态 使东西南北四台交通灯都为红色 五秒以 后 东西绿灯亮 南北红灯亮 然后进行延时 10 秒以后 东西黄灯闪烁 南 北红灯亮 再过 10 秒 东西红灯亮 南北绿灯亮 又延时 10 秒 东西红灯亮 南北黄灯闪烁 延时 10 秒后 回到初始状态 继续重复执行 3 3 程序的源代码清单 汇编语言 程序的源代码清单 汇编语言 ORG 0000H SJMP A3 四盏红灯亮 A3 MOV SP 60H 单片机课程设计 交通灯控制 10 MOV A 24H MOV P1 A MOV R4 05H LOOP1 MOV R2 03H LCALL xian 调显示子程序 DJNZ R4 LOOP1 MOV R4 00H MOV R2 03H LCALL xian 东西绿灯亮 南北红灯亮 A2 MOV A 0CH MOV P1 A MOV R4 14H LOOP2 MOV R2 03H LCALL xian 调显示子程序 DJNZ R4 LOOP2 MOV R4 00H MOV R2 03H LCALL xian 调显示子程序 MOV R4 05H 东西黄灯亮 南北红灯亮 LOOP9 MOV A 14H MOV P1 A MOV R2 02H LCALL xian 调显示子程序 MOV R2 01H 定时 LCALL DELAY 调延时子程序 南北红灯亮 MOV A 04H MOV P1 A MOV R2 01H 定时 LCALL DELAY 调延时子程序 DJNZ R4 LOOP9 单片机课程设计 交通灯控制 11 MOV R4 00H MOV R2 03H LCALL xian 调显示子程序 东西红灯亮 南北绿灯亮 A8 MOV A 61H MOV P1 A MOV R4 14H LOOP3 MOV R2 03H LCALL xian 调显示子程序 DJNZ R4 LOOP3 MOV R4 00H MOV R2 03H LCALL xian 调显示子程序 MOV R4 05H LOOP10 MOV R2 02H LCALL xian 调显示子程序 东西红灯亮 南北黄灯亮 A0 MOV A 0A2H MOV P1 A MOV R2 01H 定时 LCALL DELAY 调延时子程序 东西红灯亮 MOV A 20H MOV P1 A MOV R2 01H 定时 LCALL DELAY 调延时子程序 DJNZ R4 LOOP10 MOV R4 00H MOV R2 03H LCALL xian 调显示子程序 LJMP A2 延时子程序 DELAY PUSH 2 单片机课程设计 交通灯控制 12 PUSH 1 PUSH 0 DELAY1 MOV 1 00H DELAY2 MOV 0 0B2H DJNZ 0 DJNZ 1 DELAY2 DJNZ 2 DELAY1 POP 0 POP 1 POP 2 DJNZ R2 DELAY RET 显示子程序 xian MOV A R4 MOV B 10 DIV AB MOV R6 A MOV DPTR TAB MOV A B MOVC A A DPTR MOV SBUF A MOV R7 0FH H55S DJNZ R7 H55S MOV A R6 MOVC A A DPTR MOV SBUF A MOV R7 0FH H55S1 DJNZ R7 H55S1 LCALL DELAY RET TAB DB 0fch 60h 0dah 0f2h 66h 0b6h 0beh 0e0h DB 0feh 0f6h 0eeh 3eh 9ch 7ah 9eh 8eh END 单片机课程设计 交通灯控制 13 3 4 上机调试运行结果及分析上机调试运行结果及分析 1 系统初始状态 东西红灯 南北红灯 2 10 秒后 南北绿灯亮 东西红灯保持 单片机课程设计 交通灯控制 14 3 20 秒后 黄灯闪烁 2 秒 南北红灯亮 东西绿灯亮 单片机课程设计 交通灯控制 15 4 硬件调试硬件调试 硬硬件件调调试试可可分分为为静静态态调调试试与与动动态态调调试试两两步步进进行行 静静态态调调试试 是在用户系统未工作时的一种硬件检测 第一步 目测 检查外部的各种元件或者是电路是否有断点 第二步 用万用表测试 先用万用表复核目测中有疑问的连接点 再 检测各种电源线与地线之间是否有短路现象 第三步 加电检测 给板加电 检测所有插座或是器件的电源端是否 符合要求的值 第四步 是联机检查 因为只有用单片机开发系统才能完成对用户系 统的调试 动动态态调调试试 是在用户系统工作的情况下发现和排除用户系统硬件中存在 的器件内部故障 器件连接逻辑错误等的一种硬件检查 动态调试的一 般方法是由近及远 由分到合 由分到合是指首先按逻辑功能将用户系 统硬件电路分为若干块 当调试电路时 与该元件无关的 器件全部 从用户系统中去掉 这样可以将故障范围限定在某个局部的电路上 当 各块电路无故障后 将各电路逐块加入系统中 在对各块电路功能及各 电路间可能存在的相互联系进行调试 由分到合的调试既告完成 由近 及远是将信号流经的各器件按照距离单片机的逻辑距离进行由近及远的 分层 然后分层调试 调试时 仍

温馨提示

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

评论

0/150

提交评论