基于VHDL语言的交通灯设计程序

基于VHDL语言的交通灯设计程序

ID:28531179

大小:61.50 KB

页数:8页

时间:2018-12-11

基于VHDL语言的交通灯设计程序_第1页
基于VHDL语言的交通灯设计程序_第2页
基于VHDL语言的交通灯设计程序_第3页
基于VHDL语言的交通灯设计程序_第4页
基于VHDL语言的交通灯设计程序_第5页
资源描述:

《基于VHDL语言的交通灯设计程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、.libraryieee;-----分频电路useieee.std_logic_1164.all;entityfenisport(clk:instd_logic;clk1:outstd_logic);---实体端口声明endfen;architecturefen_arcoffenis---结构体描述开始beginprocess(clk)--进程开始variablecnt:integerrange0to99;beginifclk'eventandclk='1'then---高电平到ifcnt=99thencnt:=0

2、;---0开始计数clk1<='1';--输出高电平elsecnt:=cnt+1;---加计数clk1<='0';--输出低电平endif;endif;endprocess;---进程描述结束endfen_arc;---结构体描述结束--------------------------------------------------A路控制libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityAluisport(clk

3、:instd_logic;ar,ag,al,ay:outstd_logic;----红、绿、黄、左转timas,timag:outstd_logic_vector(3downto0));----十位、个位计数endAlu;architecturealu_arcofAluistyperglyis(red,green,left,yellow);---灯亮顺序为红、绿、左转、黄beginprocess(clk)variablea:std_logic;----变量声明variablets,tg:std_logic_vect

4、or(3downto0);variablestate:rgly;beginifclk'eventandclk='1'then---高电平casestateiswhengreen=>ifa='0'then--绿灯状态....ts:="0010";--十位计2tg:="0100";--个位计4a:='1';ag<='0';ar<='1';elseifnot(ts="0000"andtg="0001")then--若计数值不为1iftg="0000"then--若个位为1tg:="1001";--个位置9ts:=ts-1

5、;--十位自减1elsetg:=tg-1;--个位自减1endif;elsets:="0000";tg:="0000";a:='0';state:=left;---转为左转灯状态endif;endif;whenleft=>ifa='0'then---------------左转灯ts:="0000";-----------十位置0tg:="1001";--------------个位置9a:='1';aL<='0';ag<='1';elseifnot(ts="0000"andtg="0001")theniftg="

6、0000"thentg:="1001";ts:=ts-1;elsetg:=tg-1;endif;elsets:="0000";tg:="0000";a:='0';state:=yellow;----转为黄灯状态endif;endif;....whenyellow=>ifa='0'then-----黄灯状态ts:="0000";---十位置0tg:="0100";----个位置9a:='1';ay<='0';aL<='1';elseifnot(ts="0000"andtg="0001")theniftg="0000"

7、thentg:="1001";ts:=ts-1;elsetg:=tg-1;endif;elsets:="0000";tg:="0000";a:='0';state:=red;endif;endif;whenred=>ifa='0'then--------红灯状态ts:="0011";----十位置3tg:="1001";---个位置9a:='1';ar<='0';ay<='1';elseifnot(ts="0000"andtg="0001")theniftg="0000"thentg:="1001";ts:=ts-

8、1;elsetg:=tg-1;endif;elsets:="0000";tg:="0000";a:='0';state:=green;endif;....endif;endcase;timas<=ts;timag<=tg;endif;endprocess;endalu_arc;-----------------------------------------

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。