




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 交通灯设计报告书交通灯设计报告书 姓名 姓名 学院 学院 学号 学号 联系方式 联系方式 邮箱 邮箱 2 交通灯控制系统设计报告交通灯控制系统设计报告 一 设计目的一 设计目的 通过设计了解单片机的 I O 端口控制 各种中断的具体应用设计方法 发光二极管和七位数码 管显示的控制方法 键盘输入的控制设计方法等 二 设计内容二 设计内容 十字路口车辆通行有以下六个状态 状态 1 东西方向允许直行 状态 2 东西方向允许左转 状态 3 东西方向行车到南北方向行车的转换阶段 状态 4 将南北方向允许直行 状态 5 南北方向允许左转 状态 6 南北方向行车到东西方向方向行车 假定左转绿灯点亮的时间为 25s 直行绿灯点亮的时间为 20s 黄灯点亮的时间为 5s 则红灯 的点亮时间为 50 秒 黄灯每隔 500ms 亮一次 之后灭 500ms 亮灭一次叫作闪烁一次 一共闪烁 5 次 持续 5s 各个状态之间的变换情况如下 状态 1 状态 2 状态 3 状态 4 状态 5 状态 6 状态 1 表 1 具体显示周期 三三 智能交通灯的方案选择智能交通灯的方案选择 本方案采用 AT89c51 单片机为中心器件来设计交通灯控 制器进行交通路口的管理 用 Keiluvision 编程 PROTEUS 嵌入式系统仿真软件进行仿真 模拟交通信号灯的交替变换 实现十字路口交通灯的车辆直行 车辆左转和紧急情况处理 等功能 用 LED 数码管作为倒计时指示 将发光二极管作为 16 个信号灯的材料 1 1 AT89c51AT89c51 单片机的主要性能参数单片机的主要性能参数和主要引脚和主要引脚 20s25s5s45s5s 状态 1状态 2状态 3状态 4状态 5状态 6 东西路 口 直行绿 灯亮 左转绿 灯亮 黄灯亮红灯亮 红灯 亮 南北路 口 红灯亮红灯亮 直行 绿灯 亮 左转 绿灯 亮 黄灯 亮 P1 0 P1 1 P2 2 P2 3 P2 4 P2 5 P2 6 P2 7 P2 0 P2 1 P1 2 P1 3 P0 7 P0 6 P0 5 P0 4 P0 3 P0 2 P0 1 P0 0 P3 0 P3 1 P3 2 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0 0 AD0 39 P0 1 AD1 38 P0 2 AD2 37 P0 3 AD3 36 P0 4 AD4 35 P0 5 AD5 34 P0 6 AD6 33 P0 7 AD7 32 P1 0 1 P1 1 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 P3 0 RXD 10 P3 1 TXD 11 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 7 RD 17 P3 6 WR 16 P3 5 T1 15 P2 7 A15 28 P2 0 A8 21 P2 1 A9 22 P2 2 A10 23 P2 3 A11 24 P2 4 A12 25 P2 5 A13 26 P2 6 A14 27 U1 AT89C51 net P1 3 3 对交通灯控制系统的设计 首先应对交通灯的核心控制芯片的基本结构和特征以及主要引脚有 比较详细的了解 1 1 主要性能参数 主要性能参数 与 MCS 51 产品指令系统完全兼容 4k 字节在系统编程 ISP Flash 闪速存储器 1000 次擦写周期 全静态工作模式 0Hz 24MHz 三级程序存储器锁定 128 8 字节内部 RAM 32 个可编程 I O 口线 2 个 16 位定时 计数器 5 个中断源 可编程串行 UART 通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 2 2 主要引脚 主要引脚 V VC CC C 供电电压 G GN ND D 接地 P P0 0 口口 P0 口为一个 8 位漏级开路双向 I O 口 每脚可吸收 8TTL 门电流 当 P0 口的管脚第 一次写 1 时 被定义为高阻输入 P0 能够用于外部程序数据存储器 它可以被定义为数据 地 址的第八位 在 FIASH 编程时 P0 口作为原码输入口 当 FIASH 进行校验时 P0 输出原码 此时 P0 外部必须被拉高 P P1 1 口口 P1 口是一个内部提供上拉电阻的 8 位双向 I O 口 P1 口缓冲器能接收输出 4TTL 门 电流 P1 口管脚写入 1 后 被内部上拉为高 可用作输入 P1 口被外部下拉为低电平时 将输 出电流 这是由于内部上拉的缘故 在 FLASH 编程和校验时 P1 口作为第八位地址接收 P P2 2 口口 P2 口为一个内部上拉电阻的 8 位双向 I O 口 P2 口缓冲器可接收 输出 4 个 TTL 门电流 当 P2 口被写 1 时 其管脚被内部上拉电阻拉高 且作为输入 并因此作为输入时 P2 口的管脚被外部拉低 将输出电流 这是由于内部上拉的缘故 P2 口当用于外部程序存储器 或 16 位地址外部数据存储器进行存取时 P2 口输出地址的高八位 在给出地址 1 时 它利 用内部上拉优势 当对外部八位地址数据存储器进行读写时 P2 口输出其特殊功能寄存器的内 容 P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号 P P3 3 口口 P3 口管脚是 8 个带内部上拉电阻的双向 I O 口 可接收输出 4 个 TTL 门电流 当 P3 口写入 1 后 它们被内部上拉为高电平 并用作输入 作为输入 由于外部下拉为低电平 P3 口将输出电流 ILL 这是由于上拉的缘故 在紧急转换开关电路中 我们采用 p3 的中断功能 采用手动开关实现 用单片机的 P3 0 P3 2 来实现三种情况 具体见程序 R RS ST T 复位输入 当振荡器复位器件时 要保持 RST 脚两个机器周期的高电平时间 ALEALE Error Error 当访问外部存储器时 地址锁存允许的输出电平用于锁存地址的地位字节 在 FLASH 编程期间 此引脚用于输入编程脉冲 在平时 ALE 端以不变的频率周期输出正脉冲 信号 此频率为振荡器频率的 1 6 因此它可用作对外部输出的脉冲或用于定时目的 然而要注 意的是 每当用作外部数据存储器时 将跳过一个 ALE 脉冲 如想禁止 ALE 的输出可在 SFR8EH 地址上置 0 此时 ALE 只有在执行 MOVX MOVC 指令是 ALE 才起作用 另外 该引脚被略微拉 高 如果微处理器在外部执行状态 ALE 禁止 置位无效 Error Error 外部程序存储器的选通信号 在由外部程序存储器取指期间 每个机器周期两次 PSEN 有效 但在访问外部数据存储器时 这两次有效的 PSEN 信号将不出现 4 Error Error VPPVPP 当 EA 保持低电平时 则在此期间外部程序存储器 0000H FFFFH 不管是 否有内部程序存储器 注意加密方式 1 时 EA 将内部锁定为 RESET 当 EA 端保持高电平时 此间内部程序存储器 在 FLASH 编程期间 此引脚也用于施加 12V 编程电源 VPP XTAL1XTAL1 振荡器反相放大器及内部时钟发生器的输入端 XTAL2XTAL2 振荡器反相放大器的输出端 2 2 LEDLED 数码管数码管 本系统采用 8 位的静态数码管显示 LED 数码管显示器是由发光二 极管按一定的结构组合起来的显示器件 在单片机应用中通常使用的 是 8 段式 LED 数码管显示器 七段式数码管分为 7 段 a b c d e f g dp 为小数点 如右图所示 从电路讲 数码管可以分为共阳极和共阴极两种 本次设计 我 们采用共阳极显示 表 2 常见的数字和字符的共阴极的字段码 3 3 信号灯显示模块信号灯显示模块 设计电路中每个路口的控制信号灯应有四个 即绿灯两个 红灯 黄灯各一个 因此 本电 路的设计中应用到绿灯八个 红灯四个 黄灯四个 将发光二极管作为 16 个信号灯的材料 东西两 个方向的灯是同时亮的 为了简化电路可以让这两个灯接同一个引脚 这样我们能可以用 P2 口控 制 16 盏信号灯 电源将采用 5V 的直流电源发光二极管与单片机的接法如下表 3 所示 表 3 发光二极管的接法 显示字符共阳极字段显示字符共阳极字段 00 xc050 x92 10 xf960 x82 20 xa470 xf8 30 xb080 x80 40 x9990 x90 5 P2 0P2 2P2 4P2 6P2 1P2 3P2 5P2 7 东西直绿东西左 绿 东西红东西黄南北直 绿 南北左 绿 南北红南北绿 四四 智能交通灯方案的实现智能交通灯方案的实现 1 1 控制器的系统框图如图控制器的系统框图如图 2 2 所示 所示 图 2 交通灯控制器系统框图 2 2 PROTEUSPROTEUS 电路图电路图 开关紧急情况处理 G G R RY YG G R RY Y 6 图 3 智能交通灯电路图 3 3 KeilKeiluvisionuvision 编程见附件编程见附件 1 1 五五 仿真实验步骤仿真实验步骤 1 打开 Keil uVision 软件 点击 project 选择 new project 新建工程 将工程命名为 jiaotongdengwangjie 并保存在 交通灯王洁 文件夹里 在弹出的对话框里选择 Atmel AT89c51 点击确定 2 点击 file 文件 选择 new file 在 text1 中输入程序 将 text1 保存并改名为 jiaotongdengwangjie c 点击 target1 选择 source group1 右击空白处 选择 Add file to source 这时 source group1 下出现 jiaotongdengwangjie c 文件 点击打开 点击 option for target is output 确认 create hex 文件已打钩 点击确定 编译连接运行 没有错误 生成 jiaotongdengwangjie hex 等文件 3 运行 PROTEUS VSM 的 ISIS 画出与 Keil 程序对应的 PROTEUS 仿真图 先右击后左击弹出编 辑元件对话框 在 program file 中导入 jiaotongdengwangjie hex 文件 确定 7 4 点击按钮 运行成功 运行界面如下 实验中 六个状态转换没有问题 符合表一数 据 在关闭SW1时 所有红灯亮 这时禁止东南西北通行 再打开SW1时 恢复初始状态 界面如下 图 关闭SW2时 东西直行绿灯亮 如东西车流量增多时 东西向通行 再打开SW2时 恢复初始状 态 界面亦如下图 关闭SW3时 南北直行绿灯亮 如南北车流量增多时 南北向先通行 再打开 SW3时 恢复初始状态 界面亦如下图 以上三种情况也符合设想 六六 智能交通灯电路板智能交通灯电路板 原理图 布线图 三维图见附件 2 3 4 七 总结七 总结 在完成本次任务设计中 我学习和了解了交通灯控制的原理和实现方式 在设计过程中 我进 8 一步学习了单片机控制系统的设计方法 学习了单片机的输入和显示等模块 学会了使用 Keiluvision 编程软件和 PROTEUS 仿真软件 Protel 软件 并能够较为熟练的设计与应用 在整个 系统的设计过程中 我深刻认识到 软硬件相结合的重要性 同时 这次实验也更锻炼了我的查找 错误和分析问题的能力 由于我之前没有选单片机这门课 所以在过程中遇到很多困难 也花费了大量的时间和精力 在这次的设计中 同学给了我很多的指导和帮助 我也在图书馆查阅了相关资料 但由于自身能力 有限 本次设计还有许多地方做的不够完善 具体实物没有做出来 也没有估算整个设计需要的资 金 希望以后有时间能够亲自动手实践 然后将本次设计进一步完善 总之 本次设计的经历 让我收益颇多 培养了发现问题 分析问题和解决问题的能力 也 反映了我在某些方面的不足 希望自己能够在今后的学习中 能够不断去完善自己 我相信此次设 计对我今后的学习和工作具有很大的帮助 设计中的不足及缺漏 希望老师指正 谢谢 附件附件 1 1 include 预处理命令 unsigned int i 0 m 5025 定义数码管初始显示 南北方向显示 50 东西显示 25 unsigned char flag1 0 flag2 0 flag3 0 flag4 0 flag5 0 flag6 0 flag jinji 0 定义六种状态及紧急情况状态 unsigned char const LED 7 10 0 xc0 0 xf9 0 xa4 0 xb0 0 x99 0 x92 0 x82 0 xf8 0 x80 0 x90 共阳级 LED 段码表 0 1 2 3 4 5 6 7 8 9 unsigned char const LED 2 4 0 x02 0 x01 0 x08 0 x04 南北数码管十位个位 东西数码管十位个位 sbit P30 P3 0 定义引脚 P3 置 1 sbit P31 P3 1 sbit P32 P3 2 void timer0 init 定时器 TMOD 0 x01 TH0 0 xd8 TL0 0 xf0 TR0 0 x01 ET0 0 x01 EA 0 x01 开中断 void delay ms unsigned int k 延时程序 unsigned int i j for i 0 i k i for j 0 j 1440 j 9 void show unsigned char a unsigned char b 数码管程序 P1 0 x00 P1 LED 2 a 数码管位选 P0 LED 7 b 显示数字 void display unsigned int c 数码管 show 0 c 10 南北数码管个位 show 1 c 100 10 南北数码管十位 show 2 c 1000 100 东西数码管个位 show 3 c 1000 东西数码管十位 void main 主程序 unsigned int nb dx 定义东西方向 timer0 init 延时程序 P0 0 x00 P1 0 x00 while i 6 i 0 初始状态所有信号灯灭 维持 300ms flag1 1 while 1 if P30 0 开关 SW1 闭合 flag jinji 1 m 5025 i 0 P1 0 x00 P2 0 xcf 紧急情况红灯都亮 else if P31 0 开关 SW2 闭合 flag jinji 2 m 2550 开关 SW2 断开 flag1 0 flag4 1 i 0 P1 0 x00 P2 0 xde 东西直行绿灯亮 10 else if P32 0 flag jinji 3 m 5025 开关 SW3 断开 i 0 P1 0 x00 P2 0 xed 南北直行绿灯亮 else if P30 1 flag jinji 0 if flag jinji 0 不是紧急情况时 if flag1 状态 1 东西方向允许直行 东西直行绿灯亮 display m P2 0XDE if i 20 dx m 100 nb m 100 nb dx m nb 100 dx if dx 0 flag1 0 flag2 1 m 2520 i 0 if flag2 状态 2 东西方向允许左转 东西左转绿灯亮 display m P2 0XDB if i 20 dx m 100 nb m 100 nb dx m nb 100 dx if dx 0 flag2 0 flag3 1 m 505 i 0 11 if flag3 状态 3 东西方向行车到南北方向行车的转换阶段 黄灯闪烁 display m if i 10 P2 0 xdf if i 20 dx m 100 nb m 100 nb dx m nb 100 dx if dx 0 flag3 0 flag4 1 m 2550 i 0 if flag4 状态 4 将南北方向允许直行 南北直行绿灯亮 display m P2 0XED if i 20 dx m 100 nb m 100 nb dx m nb 100 dx if nb 0 flag4 0 flag5 1 m 2025 i 0 if flag5 状态 5 南北方向允许左转 南北左转绿灯亮 display m P2 0XE7 if i 20 dx m 100 nb m 100 nb dx m nb 100 dx if nb 0 flag5 0 flag6 1 m 505 i 0 12 if flag6 状态 6 南北方向行车到东西方向方向行车 黄灯闪烁 display m if i 10 P2 0 xef if i 20 dx m 100 nb m 100 nb dx m nb 100 dx if nb 0 flag6 0 flag1 1 m 5020 i 0 void timer0 int void interrupt 1 TH0 65535 50000 256 定时初值 50 毫秒 TL0 65535 50000 256 i 13 附件附件 2 2 原理图 原理图 14 EA VPP 31 XTAL1 19 XTAL2 18 RST VPD 9 P3 7 RD 17 P3 6 WR 16 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 5 T1 15 P1 0 T 1 P1 1 T 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 P0 0 39 P0 1 38 P0 2 37 P0 3 36 P0 4 35 P0 5 34 P0 6 33 P0 7 32 P2 0 21 P2 1 22 P2 2 23 P2 3 24 P2 4 25 P2 5 26 P2 6 27 P2 7 28 PSEN 29 ALE PROG 30 P3 1 TXD 11 P3 0 RXD 10 Vcc 40 Gnd 20 AT89S5X AT89S5X 12 X1 XTAL 100pF C1 Cap 100pF C2 Cap GND Q1 2N3906 Q2 2N3906 key1 KEY key2 KEY key3 KEY VCC VCC R2R3R4 R5R6R7R8R9 R10 R11 VCC GND Db LED0 R23 C4 VCC GND R25 10K VCC C3 1u 1 2 P1 Header 2 GND 13 2 VV GND INOUT U3 78L05 VCC C5 Da VCC a bf c g d e dp a bf c g d e dp e 1 d 2 dp 3 c 4 g 5 b 6 D2 7 f 8 a 9 D1 10 D1D2 DPY 2 1 DPY2IN Q1a 2N3906 Q2a 2N3906 VCC R10a R11a VCC a bf c g d e dp a bf c g d e dp e 1 d 2 dp 3 c 4 g 5 b 6 D2 7 f 8 a 9 D1 10 D1D2 DPY 2 a DPY2IN P1 0 P1 1 P1 2 P1 3 P1 0 P1 1 P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年广东省肇庆市事业单位工勤技能考试题库(含答案)
- 2025年安全生产法知识考试试题(带参考答案)
- 公司广告申请书
- 企业信贷申请书
- 修改密码企业申请书
- 法院重新调解申请书
- 人身保险投保协议书范文
- 补课机构转正申请书
- 驾校转正申请书
- 2025年机械车辆租赁合同范本
- 部编人教版五年级上册道德与法治全册课件
- 高血压护理查房ppt
- 全关节镜下FiberTape治疗后交叉韧带胫骨止点撕脱骨折课件
- 有限元和有限差分法基础超详细版本
- 《临建布置方案》word版
- epsonlq590面板操作
- GB∕T 11416-2021 日用保温容器
- 疑似预防接种异常反应(AEFI)监测与处理PPT课件
- 存货计划成本法
- 某某某污水处理厂施工组织设计
- (完整)地面硬化施工合同
评论
0/150
提交评论