成人免费无码不卡毛片,亚洲AⅤ无码精品一区二区三区,国产尤物精品视频,久久精品日本亚洲,欧美成人一区三区无码乱码A片,中文字日产幕码一区二区色哟哟,亞洲日韓中文字幕網AV

  • 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

基于Basys2開發(fā)板的交通燈控制器verilog紅綠燈倒計時

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

1-231111230Q5417.doc

共1個文件

名稱:基于Basys2開發(fā)板的交通燈控制器verilog紅綠燈倒計時(代碼在文末下載)

軟件:ISE

語言:Verilog

代碼功能:

1、實現(xiàn)一個十字路口交通燈,每條路有紅綠黃三色信號燈。

2、使用數(shù)碼管顯示倒計時。

3、可通過代碼修改通行時間。

本代碼的通行時間通過以下代碼修改:

85e17b08-2102-4e19-b8c5-e0945fecdd40.png

FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com

本代碼已在Basys2開發(fā)板驗證,開發(fā)板如下,其他開發(fā)板可以修改管腳適配:

basys2.png

演示視頻:

設(shè)計文檔:

1. 工程文件

2. 程序文件

管腳約束

3. 程序編譯

4. Testbench

5. 仿真圖

整體仿真

代碼中定義了主路紅燈35秒,綠燈30秒,黃燈5秒

支路紅燈35秒,綠燈30秒,黃燈5秒

仿真圖對應(yīng)如下,下圖中用不同顏色標(biāo)記了不同燈

分頻模塊仿真

紅綠燈控制模塊

倒計時控制模塊

顯示模塊

部分代碼展示:

/*
紅->綠?綠->黃?黃->紅
1、紅--計時main_red_times------------------------綠--計時main_green_times---main_yellow_times黃燈---------------紅
2、綠--計時branch_green_times---branch_yellow_times黃燈--------------------紅--計時branch_reg_times-------------------綠
*/
//紅綠燈控制模塊
module?led(
input?clk_1Hz,
input?[7:0]?main_green_time,
input?[7:0]?main_yellow_time,
input?[7:0]?branch_green_time,
input?[7:0]?branch_yellow_time,
output?reg?main_red,//主路燈
output?reg?main_green,//
output?reg?main_yellow,//
output?reg?branch_red,//支路燈
output?reg?branch_green,//
output?reg?branch_yellow,
output?reg?[7:0]?main_green_BCD,
output?reg?[7:0]?main_yellow_BCD,
output?reg?[7:0]?main_red_BCD,
output?reg?[7:0]?branch_green_BCD,
output?reg?[7:0]?branch_yellow_BCD,
output?reg?[7:0]?branch_red_BCD
);
parameter?main_green_state=3'd1;
parameter?main_yellow_state=3'd2;
parameter?branch_green_state=3'd3;
parameter?branch_yellow_state=3'd4;
//定義路口個燈持續(xù)時間,修改此處時間
//主路綠燈+主路黃燈=支路紅燈時間
//支路綠燈+支路黃燈=主路紅燈時間
reg?[2:0]?state=3'd0;
reg?[7:0]?main_green_cnt=8'd1;
reg?[7:0]?main_yellow_cnt=8'd1;
reg?[7:0]?branch_green_cnt=8'd1;
reg?[7:0]?branch_yellow_cnt=8'd1;
//主路綠燈+主路黃燈=支路紅燈時間
//支路綠燈+支路黃燈=主路紅燈時間
always@(posedge?clk_1Hz)
case(state)
main_green_state:
if(main_green_cnt<main_green_time)?begin//主路綠燈
state<=main_green_state;
main_green_cnt<=main_green_cnt+'d1;
end
else?begin
state<=main_yellow_state;//計數(shù)到后到下一狀態(tài)
main_green_cnt<='d1;
end
main_yellow_state:???
???if(main_yellow_cnt<main_yellow_time)?begin//主路黃燈
state<=main_yellow_state;
??????main_yellow_cnt<=main_yellow_cnt+'d1;
end
else?begin
state<=branch_green_state;//計數(shù)到后到下一狀態(tài)
??????main_yellow_cnt<='d1;
end
???branch_green_state:
if(branch_green_cnt<branch_green_time)?begin//支路綠燈
state<=branch_green_state;
branch_green_cnt<=branch_green_cnt+'d1;
end
else?begin
state<=branch_yellow_state;//計數(shù)到后到下一狀態(tài)
branch_green_cnt<='d1;
end????
???branch_yellow_state:
???if(branch_yellow_cnt<branch_yellow_time)?begin//支路3s黃燈
state<=branch_yellow_state;
??????branch_yellow_cnt<=branch_yellow_cnt+'d1;
end
else?begin
state<=main_green_state;//計數(shù)到后到下一狀態(tài)
??????branch_yellow_cnt<='d1;
end
default:state<=main_green_state;
endcase
//交通燈狀態(tài)控制,state為相應(yīng)狀態(tài)時亮相應(yīng)燈
always@(posedge?clk_1Hz?)
begin
if(state==main_green_state)
main_green<=1;
else
main_green<=0;
if(state==main_yellow_state)
main_yellow<=1;
else
main_yellow<=0;
if(state==branch_green_state?|?state==branch_yellow_state?)
main_red<=1;
else
main_red<=0;
end
//交通燈狀態(tài)控制,state為相應(yīng)狀態(tài)時亮相應(yīng)燈
always@(posedge?clk_1Hz?)
begin
if(state==branch_green_state)
branch_green<=1;
else
branch_green<=0;
if(state==branch_yellow_state)
branch_yellow<=1;
else
branch_yellow<=0;
if(state==main_green_state?|?state==main_yellow_state?)
branch_red<=1;
else
branch_red<=0;
end
//計數(shù)
//主路綠燈+主路黃燈=支路紅燈時間
//支路綠燈+支路黃燈=主路紅燈時間
//采用BCD碼計數(shù)
always@(posedge?clk_1Hz?)
begin
if(state==branch_green_state)
main_red_BCD<=branch_green_cnt;
else?if(state==branch_yellow_state)
main_red_BCD<=branch_yellow_cnt+branch_green_time;//支路綠燈+支路黃燈=主路紅燈時間
else
???main_red_BCD<='d0;
if(state==main_green_state)
branch_red_BCD<=main_green_cnt;
else?if(state==main_yellow_state)
branch_red_BCD<=main_yellow_cnt+main_green_time;//主路綠燈+主路黃燈=支路紅燈時間
else
???branch_red_BCD<='d0;
?main_green_BCD<=main_green_cnt;
?main_yellow_BCD<=main_yellow_cnt;
?branch_green_BCD<=branch_green_cnt;
?branch_yellow_BCD<=branch_yellow_cnt;
end
endmodule

點擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=280

  • 1-231111230Q5417.doc
    下載

相關(guān)推薦

新巴尔虎左旗| 横山县| 宁夏| 当雄县| 刚察县| 镇宁| 顺义区| 安达市| 建昌县| 汉沽区| 吉安县| 庐江县| 曲阳县| 昌江| 和硕县| 吴川市| 鄄城县| 都匀市| 宝山区| 巫溪县| 齐齐哈尔市| 资阳市| 河津市| 文安县| 永吉县| 海安县| 民县| 平湖市| 平和县| 万盛区| 根河市| 张家港市| 景德镇市| 永川市| 宜昌市| 黄梅县| 依安县| 龙江县| 镇原县| 西青区| 五峰|