名称:传送带控制器Verilog代码远程云端平台Quartus
软件:Quartus
语言:Verilog
代码功能:
任务及要求
1.设计内容和要求(包括设计内容、主要指标与技术参数)
设计内容:基于FPGA的传送带控制器的设计。
设计要求:
(1)设计语言为 Verilog,硬件开发平台为 Spartan-3E开发板;
(2)设计基于FPGA的传送带控制器的设计,要求用四个电机来传送带的四个轮子,可以实现直
行、后退、左转、右转四种运动方式:左、右转时需相应使左右转灯亮起,结束时转向灯熄灭:后退时两个转向灯均亮起,并用扬声器提示。
(3)采用层次化的设计。
本代码已在远程云端平台验证,远程云端平台如下,其他远程云端平台可以修改管脚适配:
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