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

Quartus出租车计费器verilog代码仿真

06/09 08:11
694
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-231222161J3510.doc

共1个文件

名称:Quartus出租车计费器verilog代码仿真

软件:Quartus

语言:Verilog

代码功能:

出租车计价器设计要求:

1.在数码管上显示里程和金额,设置计价开始开关

2.假设以50m/s速度匀速行驶,计算里程;起步价3km/10元,之后按2元/m增加。

3.里程显示两位数,单位km,小于10km显示一位整数和一位小数(带小数点),10km之后显示两位整数。

4. 金额显示两位整数,单位为元。

5.在开发板上显示里程和金额,演示开始和停止功能,并验收。

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

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 仿真图

整体仿真图

公里脉冲模块

控制模块

显示模块

部分代码展示:

module?taxi_fee(
input?clk,//标准时钟,50M
input?reset,//复位信号,低有效?
input?stop,//本次行程结束,停止计费,低有效?--按键
input?start,//启动信号,行程开始,低有效??--按键
output???[7:0]?dig_led_1,
output???[3:0]?wei_led_1//高电平点亮,高电平选通
);
wire?wheel_pulse;
wire?second_pulse;
assign?led_wheel=wheel_pulse;
//模块例化
wire?one_kilometre;//0.1公里产生一次
wire?[15:0]?totel_money;a
wire?[9:0]?mileage;
//公里脉冲模块
speed_pulse?U_speed_pulse(
.?clk(clk),//标准时钟
.?reset(reset),//复位信号,低有效?
.?one_kilometre(one_kilometre)//0.1公里产生一次
);
//控制模块
taxi_state?U_taxi_state(
.?clk(clk),//标准时钟
.?reset(reset),//复位信号,低有效?
.?stop(stop),//本次行程结束,停止计费,高有效
.?start(start),//启动信号,行程开始,高有效?
.?one_kilometre(one_kilometre),//0.1公里产生一次
.?mileage_out(mileage),
.?totel_money_out(totel_money)//合计费用
);
//显示模块
display?U_display(
.?clk(clk),//标准时钟
.?reset(reset),//复位信号,低有效?
.?totel_money(totel_money),//费用
.?mileage(mileage),//里程
.?dig_led(dig_led_1),//高电平点亮,高电平选通
.?wei_led(wei_led_1)
);
endmodule

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

  • 2-231222161J3510.doc
    下载

相关推荐