• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

汽车速度表设计Verilog代码Quartus仿真

09/29 09:14
557
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-2411051R306100.doc

共1个文件

名称:汽车速度表设计Verilog代码Quartus仿真

软件:Quartus

语言:Verilog

代码功能:

汽车速度表设计

设计一个汽车速度表。车轮每转一圈会产生一个脉冲,每个脉冲代表1米的距离,根据单位时间的脉冲数可推算出汽车的速度。

要求:

(1)模拟产生车轮运转产生的脉冲信号并对其计数,用按键选择脉冲信号的不同频率;

(2)每隔10秒读取一次脉冲计数器,并据此计算车速;

(3)用数码管显示车速,单位Km/h;

(4)给出超速警告。

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

部分代码展示:

//汽车速度表
module Speedometer(
input clk_50M,//输入时钟50MHz
input key_1,//按键输入控制脉冲
input key_2,//按键输入控制脉冲
input key_3,//按键输入控制脉冲
output beep,//超速报警指示灯
output [5:0] bit_select,//数码管位选
output [7:0] seg_select//数码管段选
);
wire clk_en;
wire latch;
wire rst;
wire [16:0] speed_num;//输出速度值。XXX.XXKM/h
wire pulse;//传感器脉冲信号,每个脉冲1米
//分频模块
div_freq i_div_freq(
. clk_50M(clk_50M),//输入时钟50MHz
. clk_1000(clk)//分频到1000Hz
);
//按键控制脉冲输出
key_ctrl i_key_ctrl(
. clk(clk),//1000Hz
. key_1(key_1),//按键输入控制脉冲
. key_2(key_2),//按键输入控制脉冲
. key_3(key_3),//按键输入控制脉冲
. pulse(pulse)//传感器脉冲信号,每个脉冲1米
);
//控制模块,输出控制信号
div i_div(
. clk(clk),//输入时钟1000Hz
. clk_en(clk_en),//输出10s使能信号
. latch(latch),//输出锁存信号
. rst(rst)//输出清零
);
//速度计算模块
speed i_speed(
. clk(clk),//输入时钟1000Hz
. pulse(pulse),//传感器脉冲信号,每个脉冲1米
. clk_en(clk_en),//输出10s使能信号
. latch(latch),//输出锁存信号
. rst(rst),//输出清零
. speed_num(speed_num)//输出速度值。XXX.XXKM/h
);

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1319

  • 2-2411051R306100.doc
    下载

相关推荐