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

汽车速度表设计verilog代码具备超速报警功能

05/24 08:31
612
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

1-231110220446362.doc

共1个文件

名称:汽车速度表设计verilog代码具备超速报警功能(代码在文末下载)

软件:QuartusII

语言:Verilog

代码功能:

速度表设计

任务与要求:

1、显示汽车时速Km/h;

2、车轮每转一圈,有一个传感脉冲:每个脉冲假定代表1m的距离;

3、采样周期设为10S;

4、要求数码管显示到小数点后2位;

5、具备超速报警功能。

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

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 仿真图

整体仿真图

控制模块仿真图

速度计算模块

显示模块

部分代码展示:

//速度计数模块
//速度换算:1 米/秒(米每秒)=3.6 千米/时(千米每时)
module speed_cal(
input clk,//输入时钟100Hz
input pulse,//传感器脉冲信号,每个脉冲1米
input enable_10s,//10s使能信号
input lock,//锁存信号
input rst,//输出清零
output reg alarm,//报警信号
output [16:0] speed//输出速度值KM/h
);
reg [16:0] count=17'd0;
always@(posedge pulse or posedge rst)//传感器脉冲计数
if(rst)
count<=17'd0;//清零
else
count<=count+17'd1;//传感器脉冲计数
reg [16:0] lock_num=17'd0;//锁存计数值
always@(posedge clk)
if(lock)//输出锁存信号
lock_num<=count;//锁存计数值
else
lock_num<=lock_num;
//10s对应距离为lock_num米,速度为lock_num/10(米每秒)
//输出速度值(lock_num/10)*360;//取2位小数
assign speed=lock_num*36;//取2位小数
always@(posedge clk)
if(speed>15000)//超过150KM/h
alarm<=1;//超速报警
else
alarm<=0;
endmodule

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

  • 1-231110220446362.doc
    下载

相关推荐