名称:传送带控制器Verilog代码远程云端平台Quartus
软件:Quartus
语言:Verilog
代码功能:
任务及要求:
1.设计内容和要求(包括设计内容、主要指标与技术参数)
设计内容:基于FPGA的传送带控制器的设计。
设计要求:
(1)设计语言为 Verilog,硬件开发平台为 Spartan-3E开发板;
(2)设计基于FPGA的传送带控制器的设计,要求用四个电机来传送带的四个轮子,可以实现直行、后退、左转、右转四种运动方式:左、右转时需相应使左右转灯亮起,结束时转向灯熄灭:后退时两个转向灯均亮起,并用扬声器提示。
(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;//输出状态控制 //状态控制模块 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)//输出状态控制 ); //电机控制模块 motor_ctrl?i_motor_ctrl( .?clk_1KHz(clk_1KHz), .?rst(rst), .?state(state),//输出状态控制 //左前电机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
580