




已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编辑版 word 交通信号灯控制器交通信号灯控制器 1 设计任务及要求 交通灯是城市交通中不可缺少的重要工具 是城市交通秩序的重要保障 十字道口的红绿灯是交通法规的无声命令 是司机和行人的行为准则 十字道 口的交通红绿灯控制是保证交通安全和道路畅通的关键 一个十字路口的交通一般分为两个方向 每个方向具有红灯 绿灯和黄灯 3 种 另外每个方向还具有左转灯 因此每个方向具有 4 个灯 这个交通灯还为每一个灯的状态设计了倒计时数码管显示功能 可以为每 一个灯的状态设置一个初始值 灯状态改变后 开始按照这个初始值倒计时 倒计时归零后 灯的状态将会改变至下一个状态 实际上不同时刻的车辆流通状况是十分复杂的 是高度非线性的 随机的 还经常受认为因素的影响 采用定时控制经常造成道路有效应用时间的浪费 出现绿灯方向车辆较少 红灯方向车辆积压 它不顾当前道路上交通车辆数的 实际情况变化 其最大的缺陷就在于当路况发生变化时 不能满足司机与路人 的实际需要 轻者造成时间上的浪费 重者直接导致交通堵塞 导致城市交通 效率的下降 设计任务 1 交通灯从绿变红时 有 5 秒黄灯亮的间隔时间 2 交通灯红变绿是直接进行的 没有间隔时间 3 主干道上的绿灯时间为 45 秒 支干道的绿灯时间为 25 秒 4 在任意时间 显示每个状态到该状态结束所需的时间 设计要求 编辑版 word 采用 VHDL 语言编写程序 并在 QUARTUSII 工具平台中进行仿真 下载到 EDA 实验箱进行验证 2 设计原理及总体框图 交通灯控制器原理框图如下图所示 包括置数模块 计数模块 主控制器 模块和译码器模块 置数模块将交通灯的点亮时间预置到置数电路中 计数模 块以秒为单位倒计时 当计数值减为零时 主控电路改变输出状态 电路进入 下一个状态的倒计时 其中 核心部分是主控制模块 主控制器 清零 红 绿 黄 特殊状态 红 绿 黄 定时计数器 置数器译码器显示器 图 2 1 原理框图 编辑版 word 图 2 2 实验电路 3 程序设计 VHDL 是一种标准的硬件电路设计语言 目前已成为广大电路设计人员设 计数字系统首选的开发工具 基于 VHDL 硬件电路语言的编程与实际应用技巧 VHDL 硬件电路语言在微机 通信 编码 存储器以及电子电路等方面的具体 设计应用 具有实际的指导意义 VHDL 的英文全名是 Very High Speed Integrated Circuit HardwareDescription Language 诞生于 1982 年 VHDL 主要用于描述数字系统的结构 行为 功能和 接口 VHDL 的程序结构特点是将一项工程设计 或称设计实体 可以是一个 元件 一个电路模块或一个系统 分成外部 或称可是部分 及端口 和内部 或称不可视部分 既涉及实体的内部功能和算法完成部分 1 交通灯控制器 JTDKZ 设计模块与程序 编辑版 word 图 3 1 JTDKZ 模块 源程序 LIBRARY IEEE USE IEEE STD LOGIC 1164 ALL USE IEEE STD LOGIC UNSIGNED ALL ENTITY JTDKZ IS PORT CLK SM SB IN STD LOGIC MR MY MG BR BY BG OUT STD LOGIC END JTDKZ ARCHITECTURE ART OF JTDKZ IS TYPE STATE TYPE IS A B C D SIGNAL STATE STATE TYPE BEGIN CNT PROCESS CLK IS VARIABLE S INTEGER RANGE 0 TO 45 VARIABLE CLR EN BIT BEGIN IF CLK EVENT AND CLK 1 THEN 编辑版 word IF CLR 0 THEN S 0 ELSIF EN 0 THEN S S ELSE S S 1 END IF CASE STATE IS WHEN A MR 0 MY 0 MG 1 BR 1 BY 0 BG 0 IF SB AND SM 1 THEN IF S 45 THEN STATE B CLR 0 EN 0 ELSE STATE A CLR 1 EN 1 END IF ELSIF SB AND NOT SM 1 THEN STATE B CLR 0 EN 0 ELSE STATEMR 0 MY 1 MG 0 编辑版 word BR 1 BY 0 BG 0 IF S 5 THEN STATE C CLR 0 EN 0 ELSE STATEMR 1 MY 0 MG 0 BR 0 BY 0 BG 1 IF SM AND SB 1 THEN IF S 25 THEN STATE D CLR 0 EN 0 ELSE STATE C CLR 1 EN 1 END IF ELSIF SB 0 THEN STATE D CLR 0 EN 0 ELSE STATEMR 1 MY 0 MG 0 BR 0 BY 1 BG 0 IF S 5 THEN 编辑版 word STATE A CLR 0 EN 0 ELSE STATE D CLR 1 EN 1 END IF END CASE END IF END PROCESS CNT END ARCHITECTURE ART 2 显示控制单元 CSKZ 设计模块与程序 图 3 2 显示控制单元 CSKZ 模块 源程序 LIBRARY IEEE USE IEEE STD LOGIC 1164 ALL USE IEEE STD LOGIC UNSIGNED ALL ENTITY CSKZ IS PORT EN45 EN25 EN05M EN05B IN STD LOGIC AIN45M AIN45B IN STD LOGIC VECTOR 7 DOWNTO 0 编辑版 word AIN25M AIN25B AIN05 IN STD LOGIC VECTOR 7 DOWNTO 0 DOUTM DOUTB OUT STD LOGIC VECTOR 7 DOWNTO 0 END ENTITY CSKZ ARCHITECTURE ART OF CSKZ IS BEGIN PROCESS EN45 EN25 EN05M EN05B IS BEGIN IF EN45 1 THEN DOUTM AIN45M 7 DOWNTO 0 DOUTB AIN45B 7 DOWNTO 0 ELSIF EN05M 1 THEN DOUTM AIN05 7 DOWNTO 0 DOUTB AIN05 7 DOWNTO 0 ELSIF EN25 1 THEN DOUTM AIN25M 7 DOWNTO 0 DOUTB AIN25B 7 DOWNTO 0 ELSIF EN05B 1 THEN DOUTM AIN05 7 DOWNTO 0 DOUTB AIN05 7 DOWNTO 0 END IF END PROCESS END ARCHITECTURE ART 3 倒计时 45s CNT45s 设计模块与程序 编辑版 word 图 3 3 CNT45s 模块 源程序 LIBRARY IEEE USE IEEE STD LOGIC 1164 ALL USE IEEE STD LOGIC UNSIGNED ALL ENTITY CNT45S IS PORT SB CLK EN45 IN STD LOGIC DOUT45M DOUT45B OUT STD LOGIC VECTOR 7 DOWNTO 0 END CNT45S ARCHITECTURE ART OF CNT45S IS SIGNAL CNT6B STD LOGIC VECTOR 5 DOWNTO 0 BEGIN PROCESS SB CLK EN45 IS BEGIN IF SB 0 THEN CNT6B CNT6B CNT6B 1 ELSIF CLK EVENT AND CLK 1 THEN IF EN45 1 THEN CNT6B CNT6B 1 ELSIF EN45 0 THEN CNT6BDOUT45M 01000101 DOUT45BDOUT45M 01000100 DOUT45BDOUT45M 01000011 DOUT45BDOUT45M 01000010 DOUT45BDOUT45M 01000001 DOUT45BDOUT45M 01000000 DOUT45BDOUT45M 00111001 DOUT45BDOUT45M 00111000 DOUT45BDOUT45M 00110111 DOUT45BDOUT45M 00110110 DOUT45BDOUT45M 00110101 DOUT45BDOUT45M 00110100 DOUT45BDOUT45M 00110011 DOUT45BDOUT45M 00110010 DOUT45BDOUT45M 00110001 DOUT45BDOUT45M 00110000 DOUT45BDOUT45M 00101001 DOUT45BDOUT45M 00101000 DOUT45BDOUT45M 00100111 DOUT45BDOUT45M 00100110 DOUT45BDOUT45M 00100101 DOUT45BDOUT45M 00100100 DOUT45BDOUT45M 00100011 DOUT45BDOUT45M 00100010 DOUT45BDOUT45M 00100001 DOUT45BDOUT45M 00100000 DOUT45BDOUT45M 00011001 DOUT45BDOUT45M 00011000 DOUT45BDOUT45M 00010111 DOUT45BDOUT45M 00010110 DOUT45BDOUT45M 00010101 DOUT45BDOUT45M 00010100 DOUT45BDOUT45M 00010011 DOUT45BDOUT45M 00010010 DOUT45BDOUT45M 00010001 DOUT45BDOUT45M 00010000 DOUT45BDOUT45M 00001001 DOUT45BDOUT45M 00001000 DOUT45BDOUT45M 00000111 DOUT45BDOUT45M 00000110 DOUT45BDOUT45M 00000101 DOUT45BDOUT45M 00000100 DOUT45BDOUT45M 00000011 DOUT45BDOUT45M 00000010 DOUT45BDOUT45M 00000001 DOUT45BDOUT45M 01000110 DOUT45B 01010001 END CASE END PROCESS END ARCHITECTURE ART 4 倒计时 25s CNT25s 设计模块与程序 图 3 4 CNT25s 模块 源程序 LIBRARY IEEE USE IEEE STD LOGIC 1164 ALL USE IEEE STD LOGIC UNSIGNED ALL ENTITY CNT25S IS 编辑版 word PORT SB SM CLK EN25 IN STD LOGIC DOUT25M DOUT25B OUT STD LOGIC VECTOR 7 DOWNTO 0 END ENTITY CNT25S ARCHITECTURE ART OF CNT25S IS SIGNAL CNT5B STD LOGIC VECTOR 4 DOWNTO 0 BEGIN PROCESS SB SM CLK EN25 IS BEGIN IF SB 0 OR SM 0 THEN CNT5B CNT5B CNT5B 1 ELSIF SM 0 THEN CNT5B CNT5B CNT5B 1 ELSIF CLK EVENT AND CLK 1 THEN IF EN25 1 THEN CNT5B CNT5B 1 ELSIF EN25 0 THEN CNT5BDOUT25B 00100101 DOUT25MDOUT25B 00100100 DOUT25MDOUT25B 00100011 DOUT25MDOUT25B 00100010 DOUT25MDOUT25B 00100001 DOUT25MDOUT25B 00100000 DOUT25MDOUT25B 00011001 DOUT25MDOUT25B 00011000 DOUT25MDOUT25B 00010111 DOUT25MDOUT25B 00010110 DOUT25MDOUT25B 00010101 DOUT25MDOUT25B 00010100 DOUT25MDOUT25B 00010011 DOUT25MDOUT25B 00010010 DOUT25MDOUT25B 00010001 DOUT25MDOUT25B 00010000 DOUT25MDOUT25B 00001001 DOUT25MDOUT25B 00001000 DOUT25MDOUT25B 00000111 DOUT25MDOUT25B 00000110 DOUT25MDOUT25B 00000101 DOUT25MDOUT25B 00000100 DOUT25MDOUT25B 00000011 DOUT25MDOUT25B 00000010 DOUT25MDOUT25B 00000001 DOUT25MDOUT25B 00100110 DOUT25M 00110001 END CASE END PROCESS END ARCHITECTURE ART 5 倒计时 5s CNT05s 的设计模块与程序 图 3 5 CNT05s 的模块 源程序 LIBRARY IEEE USE IEEE STD LOGIC 1164 ALL USE IEEE STD LOGIC UNSIGNED ALL ENTITY CNT05S IS PORT CLK EN05M EN05B IN STD LOGIC DOUT5 OUT STD LOGIC VECTOR 7 DOWNTO 0 END CNT05S ARCHITECTURE ART OF CNT05S IS SIGNAL CNT3B STD LOGIC VECTOR 2 DOWNTO 0 BEGIN 编辑版 word PROCESS CLK EN05M EN05B IS BEGIN IF CLK EVENT AND CLK 1 THEN IF EN05M 1 THEN CNT3B CNT3B 1 ELSIF EN05B 1 THEN CNT3B CNT3B 1 ELSE CNT3BDOUT5DOUT5DOUT5DOUT5DOUT5DOUT5 00000000 END CASE 编辑版 word END PROCESS END ARCHITECTURE ART 4 编译及仿真 Max plusII 或写成 Maxplus2 或 MP2 是 Altera 公司推出的的第三代 PLD 开 发系统 使用 MAX PLUSII 的设计者不需精通器件内部的复杂结构 设计者可 以用自己熟悉的设计工具 如原理图输入或硬件描述语言 建立设计 MAX PLUSII 把这些设计转自动换成最终所需的格式 Maxplus2的设计流程归 纳为1 设计输入 2 设计编译 3 设计仿真 4 下载 图 4 1 显示控制单元 CSKZ 仿真结果 图 4 2 CNT45s 仿真结果 图 4 3 CNT25s 仿真结果 编辑版 word 图 4 4 CNT05s 仿真结果 图 4 5 实验结果仿真图 5 硬件调试与结果分析 开始时 支干道没有车辆行驶 主干道处于常通行状态 支干道处于禁止 状态 当支干道有车来时 主干道亮绿灯 经行 45 秒倒计时 支干道亮红灯 经 行 25 秒倒计时 主干道 45 秒倒计时结束后跳变到黄灯 进行 5 秒倒计时 支干道继续亮红 灯 进行倒计时 主干道 5 秒倒计时结束后跳
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版高端家具定制服务合同范本
- 2025瓷砖零售商批发采购与区域代理合同
- 2025版分红股权转让合同范本解读
- 二零二五年防火门生产质量控制与检测服务合同
- 2025版广州城区二手房买卖与产权过户服务合同
- 二零二五年度工厂生产线保密协议范本(版)
- 2025版计算机设备全面维护及网络安全保障合同
- 二零二五年度新材料研发创新咨询服务合同范本
- 二零二五年度跨境电子商务项目合作孵化协议书
- 2025版电力工程劳务外包服务合同
- 党建读书角管理制度
- 班组长成本绩效管理能力考试题库-上(选择题)
- 汽车常见故障处理流程
- 茅台文化知识
- 基于词汇导图与词块理论的初中英语教学
- 《经济学的基本原理》课件
- 货物运输合作协议范本
- 生物技术科研合作项目合同
- 2025年中州水务控股有限公司招聘笔试参考题库含答案解析
- 彩钢瓦屋面施工材料选用方案
- 场地代运营托管合同范例
评论
0/150
提交评论