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

出租车计费设计VHDL代码Quartus仿真

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

2-2411051S62X38.doc

共1个文件

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

软件:Quartus

语言:VHDL

代码功能:

出租车计费

1、可以控制行程开始和停止

2、通过车轮脉冲判断车行驶里程

3、显示总费用和里程

4、3.0公里以内起步价5.0元,大于3.0公里按0.2元/0.1公里计费

5、停车按时间计费,每1分钟1元

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

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. Testbench

6. 仿真图

整体仿真图

速度及判断模块

控制模块

里程计算模块

时间计算模块

显示模块

部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
ENTITY taxi_fee IS
   PORT (
      clk        : IN STD_LOGIC;--50MHz基准频率CLOCK0
      reset      : IN STD_LOGIC;--复位信号,低有效 
      
      stop       : IN STD_LOGIC;--本次行程结束,停止计费,高有效
      start      : IN STD_LOGIC;--启动信号,行程开始,高有效 
      
      Wheel_pulse     : IN STD_LOGIC;--车轮脉冲
      
--3位数码管显示费用
      Kmmoney_L_HEX    : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--合计费用 HML=xxx (BCD码显示)
      Kmmoney_M_HEX    : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
      Kmmoney_H_HEX    : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
      --里程和时间切换显示
      Kmcount_H_HEX    : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--总路程,里程范围为HL=0~99.9(BCD码显示)
      Kmcount_M_HEX    : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
      Kmcount_L_HEX    : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)
   );
END taxi_fee;
ARCHITECTURE trans OF taxi_fee IS
--速度计算及判断模块
COMPONENT speed_pulse IS
   PORT (
      clk             : IN STD_LOGIC;--标准时钟,10hz 
      reset           : IN STD_LOGIC;--复位信号,低有效 
  Wheel_pulse     : IN STD_LOGIC;--车轮脉冲
      Speed           : OUT STD_LOGIC;--0:暂停等待;1:行驶
      kilometre_01   : OUT STD_LOGIC;--0.1公里产生一次
      minute_en  : OUT STD_LOGIC--暂停等待,2min产生一次脉冲
   );
END COMPONENT;
--模块例化
   COMPONENT display IS
      PORT (
         clk        : IN STD_LOGIC;
         reset      : IN STD_LOGIC;
Speed            : IN STD_LOGIC;--0:暂停等待;1:行驶
         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_HEX  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
         Kmmoney_M_HEX  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
         Kmmoney_H_HEX  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
         Kmcount_H_HEX  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
         Kmcount_M_HEX    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
         Kmcount_L_HEX  : OUT STD_LOGIC_VECTOR(6 DOWNTO 0)
      );
   END COMPONENT;

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

  • 2-2411051S62X38.doc
    下载

相关推荐