名稱:Quartus電梯控制器的模擬實現Verilog代碼AX301開發(fā)板
軟件:Quartus
語言:Verilog
代碼功能:
電梯控制器的模擬實現:設計一個模擬電梯控制器,完成4個樓層的向上載客服務。
要求:
(1)電梯初始位置停靠在一樓,四個按鍵代表4個目標樓層,運輸完成后回到一樓。
(2)顯示電梯的運行情況、電梯所在樓層等。
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在AX301開發(fā)板驗證,開發(fā)板如下,其他開發(fā)板可以修改管腳適配:
演示視頻:
設計文檔:
1. 工程文件
2. 程序文件
3. 程序編譯
4. RTL圖
5. 管腳分配
6. Testbench
7. 仿真圖
整體仿真圖
分頻模塊
控制模塊
顯示模塊
部分代碼展示:
//電梯控制器的模擬實現 //設計一個模擬電梯控制器,完成4個樓層的向上載客服務。 //(1)電梯初始位置??吭谝粯牵膫€按鍵代表4個目標樓層,運輸完成后回到一樓。 //(2)顯示電梯的運行情況、電梯所在樓層等。 module?lift( input?clk,//50MHz input?key_1,//超載報警 input?key_2, input?key_3, input?key_4, output?beep,//報警 output?[3:0]?LED,//LED指示目前電梯位置 output?[5:0]?en,//數碼管位選 output?[7:0]?seg//數碼管段選 ); wire?clk_1Hz;//1Hz wire?rst_n; wire?[3:0]?floor;//樓層 assign?rst_n=(key_1?&?key_2?&?key_3?&?key_4); //分頻模塊,分頻到1Hz clk_div?i_clk_div( .?clk_50M(clk),//時鐘 .?rst_n(rst_n),//復位 .?clk_1Hz(clk_1Hz)//分頻到1Hz ); //控制模塊 control?i_control( .?clk????(clk),//50MHz .?clk_1Hz(clk_1Hz),//1Hz .?key_1(key_1), .?key_2(key_2), .?key_3(key_3), .?key_4(key_4), .?floor(floor),//樓層 .?beep(beep), .?LED(LED)//LED指示目前電梯位置 ); //顯示模塊 display?i_display( .?clk(clk),//時鐘 .?floor(floor),//樓層 .?en(en),//數碼管位選 .?seg(seg)//數碼管段選 ); endmodule
點擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=338
閱讀全文