版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、eda综合设计性实验报告 交通灯设计 姓 名: 班 级: 电信 学 号: 指导老师: 日期: 2007.12 大学工程学院目 录1 实验目的22 实验要求33 程序编写54 程序调试及分析105 讨论及进一步研究建议126 综合设计性实验心得13参考文献141实验目的1、掌握较复杂逻辑的设计、调试。2、掌握数字电路模块层次设计。3、掌握功能分割的方法。4、熟悉交通灯的工作原理。2.实验要求1、正常控制正常控制时交通信号灯的时序如图4.1所示。为了使学生对控制要求有一个清晰的思路,同时也为了描述的方便,先分析一个方向上交通灯的变化情况。当启动开关接通时,信号灯开始工作。先东西方向绿灯亮(此时南北
2、方向红灯亮。但右转弯绿灯亮),允许通行30s,左右转向均红灯亮。30s后,东西方向绿灯灭而黄灯亮2s,同时右转弯的黄灯也亮2s,然后东西方向红灯亮,同时右转弯的绿灯亮(右转弯的红灯黄灯同时灭)。即此时东西方向仅允许右转弯。55s后,东西方向左转弯黄灯亮2s,接着也允许左转弯(左转弯红灯、黄灯灭,同时绿灯亮)。16s后,左右转弯的绿灯同时闪三下(指示信号灯将变化)后灭。左右转弯黄灯2s后灭而红灯亮,东西方向黄灯也亮2s,然后整体便进入下一个循环。东西向人行道仅有红灯和绿灯,人行道红灯变化情况和东西向中间红灯类似。仅先于中间灯2s,人行道绿灯和中间绿灯变化也类似,区别仅在点亮的最后3s闪烁而已。综
3、合上面的分析可以看出,交通道揭示的总体思路是,先允许直向通行,后允许友转弯,然后允许左右转弯,如此反复循环。南北方向的交通灯变化与东西方向次序完全一样,只不过时间上滞后55s而已。即当东西方向允许左右转向。当起动开关断开时。所有信号灯熄灭。2、急车通行控制急车强通方向由急车强通开关控制。无急车时信号灯按正常时序控制。有急车来时,将急车强通开关闭合,不管原来信号灯的状态如何,一律强制让急车来方向的绿灯亮,直至急车通过为止。急车过后,将急车强通开关断开,信号灯的状态立即转为急车方向上的绿灯闪3次,随后按正常时序控制。急车通行信号只能响应一路方向的急车,若两个方向先后来急车,则响应先来的一方,随后再
4、响应另一方。3、分析得状态表:“1”表示亮,”0”表示灭,“( 1)”表示闪烁;0、0、0红、黄、绿;人行道0、0红、绿状态时间(s)方向中间灯人行道右转灯左转灯s00-27东西00101100100南北10010001100s127-30东西0010(1)100100南北10010001100s230-32东西01010110100南北10010001110s332-48东西10010001100南北10010001001s448-51东西10010001100南北1001000(1)00(1)s551-53东西10010001100南北10010010010s653-55东西1001000
5、1100南北11010100100s755-82东西10010001100南北00101100100s882-85东西10010001100南北0010(1)100100s985-87东西10010001110南北01010110100s1087-103东西10010001001南北10010001100s11103-106东西1001000(1)00(1)南北10010001100s12106-108东西10010010010南北10010001100s13108-110东西11010100100南北10010001100s14111-114东西00(1)10100100南北10010100
6、100s15116-119东西10010100100南北00(1)101001003.程序编写1、 打开ryg.vhd文件,并将之设为当前项目。2、 ryg.vhd的源程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity ryg isport( rst : in std_logic; - reset 1enable clk2 : in std_logic; - 2hz clock rush_w : in std_logic; - the emergency car signal of
7、 the west and the east - 0 enable rush_s : in std_logic; - the emergency car signal of the south and tne north -0 enable - vector is middle(8-6) right(5-3) left(2-0) ( red yellow green ) west_east : buffer std_logic_vector(8 downto 0); -the west and east lights-which flash in the same way man_w : bu
8、ffer std_logic_vector(1 downto 0); -the west&east sideway lights south_north: buffer std_logic_vector(8 downto 0); -the south and north lights -which flash in the same way man_s : buffer std_logic_vector(1 downto 0) -the south&nouth sideway lights );end entity ryg;architecture do of ryg istype count
9、_state is (s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13);signal state : count_state:=s0;signal is_normal : std_logic:=1; - normal-1signal count :integer range 0 to 120; - time countsignal clk : std_logic; - (siganl) 1hz clock beginis_normal = rush_w and rush_s;process(clk2) -divide 2hz to 1hzbegini
10、f clk2event and clk2=1 thenclk=not clk;end if;end process;process(clk) -the time counter and the state changerbeginif rst=1 then count=0; elsif clkevent and clk=1 then if is_normal=1 then count =0 and count=28 then state28 and count=30 then state30 and count=32 then state32 and count=48 then state48
11、 and count=51 then state51 and count=53 then state53 and count=55 then state55 and count=83 then state83 and count=85 then state85 and count=87 then state87 and count=103 then state103 and count=106 then state106 and count=108 then state108 and count=110 then state=s13; else state=s0;count -middle r
12、ight left (red yellow green) west_east = 001100100; - 001 100 100 south_north = 100001100; - 100 001 100 man_w = 01; man_s west_east = 001100100; - 001 100 100 south_north = 100001100; - 100 001 100 man_w(0) = not man_w(0); man_s west_east = 010110100; - 010 110 100 south_north = 100001110; - 100 00
13、1 110 man_w = 10; man_s west_east = 100001100; - 100 001 100 south_north = 100001001; - 100 001 001 man_w = 10; -keep the same man_s west_east = 100001100; - 100 001 100 south_north(0) = not south_north(0); south_north(3) = not south_north(3); man_w = 10; -keep the same man_s west_east = 100001100;
14、- 100 001 100 south_north = 100010010; - 100 010 010 man_w = 10; man_s west_east = 100001100; - 100 001 100 south_north = 110100100; - 110 100 100 man_w = 10; man_s west_east = 100001100; - 100 001 100 south_north = 001100100; - 001 100 100 man_w = 10; man_s west_east = 100001100; - 100 001 100 sout
15、h_north = 001100100; - 001 100 100 man_w = 10; man_s(0) west_east = 100001110; - 100 001 110 south_north = 010110100; - 010 110 100 man_w = 10; man_s west_east = 100001001; - 100 001 001 south_north = 100001100; - 100 001 100 man_w = 10; man_s west_east(0)= not west_east(0); west_east(3)= not west_e
16、ast(3); south_north = 100001100; - 100 001 100 man_w = 10; man_s west_east = 100010010; - 100 010 010 south_north = 100001100; - 100 001 100 man_w = 10; man_s west_east = 110100100; - 110 100 100 south_north = 100001100; - 100 001 100 man_w = 10; man_s = 10; end case; else if rush_w=0 then -the emer
17、gency car signal of the west and the east -which is superior to the south and the north west_east = 001100100; - 001 100 100 south_north = 100100100; - 100 100 100 man_w = 10; man_s = 10; elsif rush_s=0 then -the emergency car signal of the south and the north west_east = 100100100; -100 100 100 sou
18、th_north = 001100100; - 001 100 100 man_w = 10; man_s = 10; else null; end if; end if;end if;end process;end architecture do;3、 变量说明输入端口:rst -复位,高电平有效clk2 -2hz 时钟脉冲rush_w -东西方向急车按键,低电平有效rush_s -南北方向急车按键,低电平有效输出端口:west_east -东西方向控制灯,从左至右为中间灯、右转灯、左转灯。均为红黄绿。man_w -东西方向人行道灯,为红绿。south_north -南北方向控制灯,从左至右为中间灯、右转灯、左转灯。均为红黄绿。man_s -南北方向人行道灯,为红绿。信号:state -状态is_normal -运行模式控制信号,正常时为1;急车时为0。count -计时器clk -1hz 信号4、 选择器件,并编译。4.程序调试及分析1、仿真,得到结果如下:正常运行时:有急车时(单一方向):有急车时(两个方向同时):2、分配端口、并下载到器件中。3、通过对时序图分析可知该交通灯可以完成交通控制。5.讨论及进一步研究建议1、 在程序中如果有定义了但未使用的端口或信号时,程序编译时会产生奇怪的错误,编译不了。所以,使用的端口或变量要把它注释
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度班组安全生产与应急管理合同3篇
- 2025年度公司管理人员知识产权保护聘用合同3篇
- 二零二五年度农村房屋买卖合同协议书(含农业科技示范)
- 2025年度公司车辆维修配件供应及质量保证协议3篇
- 2025年度关于智能制造领域方协议解约的合规性指导与合同3篇
- 二零二五年度农村养牛基地建设项目合同2篇
- 2025年度公厕保洁服务与社区绿化合作合同3篇
- 二零二五年度商业地产经营权承包管理合同2篇
- 二零二五年度婚姻财产权益保障及变更协议3篇
- 2025年度智能设备试用体验服务全新试用协议3篇
- 新疆喀什地区巴楚县2023-2024学年九年级上学期1月期末化学试题
- 供应商可持续发展计划
- 生姜的产地分布
- 普通高中学业水平合格性考试(会考)语文试题(附答案)
- 统编语文八上文言文过关小测验-《愚公移山》
- 12、口腔科诊疗指南及技术操作规范
- 医药电商行业发展趋势报告
- 2020年10月自考00020高等数学一高数一试题及答案含评分标准
- 劳务派遣方案
- 电费异常问题筛选及处理途径
- 幼儿园中班语言绘本《三只蝴蝶》课件
评论
0/150
提交评论