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

出租车计价器设计VHDL代码Quartus仿真

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

2-24102R03232631.doc

共1个文件

名称:出租车计价器设计VHDL代码Quartus仿真

软件:Quartus

语言:VHDL

代码功能:

出租车计价器

1、使用quartusII软件设计出租车计费器

2、可以模拟出租车车速如停车、低速、中速、高速,不同车速下对应车轮脉冲频率不同

3、可以控制行程开始和结束

4、1.5公里内起步价3元,车行驶 1.5公里后按每公里 2元计费

5、停车等待时,按时间计费,计费单价为每 20s收费1 元

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

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. 仿真图

4.1 整体仿真

4.2 显示模块

4.3 计时模块

4.4 速度脉冲模块

4.5 出租车计费模块

部分代码展示:

LIBRARY?ieee;
???USE?ieee.std_logic_1164.all;
???USE?ieee.std_logic_unsigned.all;
ENTITY?display?IS
???PORT?(
??????clk??????????:?IN?STD_LOGIC;--标准时钟,256hz?
??????reset????????:?IN?STD_LOGIC;--复位信号,低有效?
??????
??????wait_time????:?IN?STD_LOGIC_VECTOR(7?DOWNTO?0);--等待时间
??????totel_money??:?IN?STD_LOGIC_VECTOR(15?DOWNTO?0);--费用
??????mileage??????:?IN?STD_LOGIC_VECTOR(7?DOWNTO?0);--里程
??????
??????Kmmoney_L????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--合计费用?HML=xxx?(BCD码显示)
??????Kmmoney_M????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);
??????Kmmoney_H????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);
??????
??????Kmcount_H????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--总路程,里程范围为HL=0~99(BCD码显示)
??????Kmcount_L????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);
??
??????Kmtime_H????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--总时间
??????Kmtime_L????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0)??
???);
END?display;
ARCHITECTURE?trans?OF?display?IS
--二进制转BCD码
COMPONENT?b_to_bcd?IS
???PORT?(
??????
??????clk???????:?IN?STD_LOGIC;
??????rst_n?????:?IN?STD_LOGIC;
??????binary????:?IN?STD_LOGIC_VECTOR(15?DOWNTO?0);
??????state_en??:?IN?STD_LOGIC;
??????BCD???????:?OUT?STD_LOGIC_VECTOR(15?DOWNTO?0)
???);
END?COMPONENT;
???
--???SIGNAL?totel_money_100?:?STD_LOGIC_VECTOR(3?DOWNTO?0);
--???SIGNAL?totel_money_10??:?STD_LOGIC_VECTOR(3?DOWNTO?0);
--???SIGNAL?totel_money_1???:?STD_LOGIC_VECTOR(3?DOWNTO?0);
--???
--???SIGNAL?mileage_10??????:?STD_LOGIC_VECTOR(3?DOWNTO?0);
--???SIGNAL?mileage_1???????:?STD_LOGIC_VECTOR(3?DOWNTO?0);
SIGNAL?BCD_mileage_out???:??STD_LOGIC_VECTOR(15?DOWNTO?0);
SIGNAL?BCD_totel_money_out???:??STD_LOGIC_VECTOR(15?DOWNTO?0);
SIGNAL?BCD_wait_time_out?:??STD_LOGIC_VECTOR(15?DOWNTO?0);
SIGNAL?mileage_exd???:??STD_LOGIC_VECTOR(15?DOWNTO?0);
SIGNAL?wait_time_exd???:??STD_LOGIC_VECTOR(15?DOWNTO?0);
BEGIN
???
mileage_exd<="00000000"?&?mileage;
wait_time_exd<="00000000"?&?wait_time;
--二进制转BCD码
BCD_mileage?:?b_to_bcd?
???PORT?MAP?(??????
??????clk???????=>clk,
??????rst_n?????=>reset,
??????binary????=>mileage_exd,
??????state_en??=>'1',
??????BCD???????=>BCD_mileage_out
???);
--二进制转BCD码
BCD_totel_money?:?b_to_bcd?
???PORT?MAP?(??????
??????clk???????=>clk,
??????rst_n?????=>reset,
??????binary????=>totel_money,
??????state_en??=>'1',
??????BCD???????=>BCD_totel_money_out
???);
--二进制转BCD码
BCD_wait_time?:?b_to_bcd?
???PORT?MAP?(??????
??????clk???????=>clk,
??????rst_n?????=>reset,
??????binary????=>wait_time_exd,
??????state_en??=>'1',
??????BCD???????=>BCD_wait_time_out
???);

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

  • 2-24102R03232631.doc
    下载

相关推荐