名稱:傳送帶控制器Verilog代碼遠程云端平臺Quartus
軟件:Quartus
語言:Verilog
代碼功能:
任務及要求:
1.設計內容和要求(包括設計內容、主要指標與技術參數(shù))
設計內容:基于FPGA的傳送帶控制器的設計。
設計要求:
(1)設計語言為 Verilog,硬件開發(fā)平臺為 Spartan-3E開發(fā)板;
(2)設計基于FPGA的傳送帶控制器的設計,要求用四個電機來傳送帶的四個輪子,可以實現(xiàn)直行、后退、左轉、右轉四種運動方式:左、右轉時需相應使左右轉燈亮起,結束時轉向燈熄滅:后退時兩個轉向燈均亮起,并用揚聲器提示。
(3)采用層次化的設計。
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在遠程云端平臺驗證,遠程云端平臺如下,其他遠程云端平臺可以修改管腳適配:
演示視頻:
設計文檔:
1. 工程文件
2. 程序文件
3. 程序編譯
4. 程序RTL圖
5. 管腳分配
6. 仿真文件(VWF)
7. 仿真圖
下圖中,紅色框為前進,橘黃色框為左轉,藍色框為右轉,灰色框為后退
部分代碼展示:
//傳送帶控制 module?conveyor( input?clk_1KHz, input?rst, input?forward_key,//前進 input?left_key,//左轉 input?right_key,//右轉 input?back_key,//后退 output?left_led,//左轉燈 output?right_led,//右轉燈 output?beep,//揚聲器 //電機1 output?IN1_a, output?IN1_b, output?IN1_pwm, //電機2 output?IN2_a, output?IN2_b, output?IN2_pwm, //電機3 output?IN3_a, output?IN3_b, output?IN3_pwm, //電機4 output?IN4_a, output?IN4_b, output?IN4_pwm ); wire?[3:0]?state;//輸出狀態(tài)控制 //狀態(tài)控制模塊 state_ctrl?i_state_ctrl( .?clk_1KHz(clk_1KHz), .?rst(rst), .?forward_key(forward_key),//前進 .?left_key(left_key),//左轉 .?right_key(right_key),//右轉 .?back_key(back_key),//后退 .?left_led(left_led),//左轉燈 .?right_led(right_led),//右轉燈 .?beep(beep),//揚聲器 .?state(state)//輸出狀態(tài)控制 ); //電機控制模塊 motor_ctrl?i_motor_ctrl( .?clk_1KHz(clk_1KHz), .?rst(rst), .?state(state),//輸出狀態(tài)控制 //左前電機1 .?IN1_a(IN1_a), .?IN1_b(IN1_b), .?IN1_pwm(IN1_pwm), //右前電機2 .?IN2_a(IN2_a), .?IN2_b(IN2_b), .?IN2_pwm(IN2_pwm), //左后電機3 .?IN3_a(IN3_a), .?IN3_b(IN3_b), .?IN3_pwm(IN3_pwm), //右后電機4 .?IN4_a(IN4_a), .?IN4_b(IN4_b), .?IN4_pwm(IN4_pwm) ); endmodule
點擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=345