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

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

软件:Quartus

语言:VHDL

代码功能:

出租车计费器

1.能实现计要功能,计费标准:起步费7.0元,3公里后按2元/公里,总要用达到或超过40元时,按4元/公里收费,客户需要停车等待时,按时间收

费,1元/20秒。    

2.以十进制显示行驶里程和车费


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


演示视频:


设计文档:

设计文档.doc

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 管脚分配

6. 仿真图



部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
ENTITY taxi_fee IS
   PORT (
      clk_in   : IN STD_LOGIC;--时钟1000Hz
      reset    : IN STD_LOGIC;--复位信号
      speedup  : IN STD_LOGIC;--档位控制
      stop_n   : IN STD_LOGIC;--中途暂停
      start_n  : IN STD_LOGIC;--启动信号,行程开始
      SEL      : OUT STD_LOGIC_VECTOR(2 DOWNTO 0);--数码管位选
      SEG      : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)--数码管段选 
   );
END taxi_fee;
ARCHITECTURE behave OF taxi_fee IS
--档位控制模块
   COMPONENT speed_pulse IS
      PORT (
         clk      : IN STD_LOGIC;
         reset_p  : IN STD_LOGIC;
         speedup  : IN STD_LOGIC;
         pulse_kilometre : OUT STD_LOGIC
      );
   END COMPONENT;
   --状态机控制模块
   COMPONENT taxi_state IS
      PORT (
         clk_in   : IN STD_LOGIC;
         reset_p  : IN STD_LOGIC;
         start_n  : IN STD_LOGIC;
         stop_n   : IN STD_LOGIC;
         pulse_kilometre : IN STD_LOGIC;
         mileage_out : OUT STD_LOGIC_VECTOR(15 DOWNTO 0);
         totel_money_out : OUT STD_LOGIC_VECTOR(15 DOWNTO 0)
      );
   END COMPONENT;
  --显示模块 
   COMPONENT display_num IS
      PORT (
         clk      : IN STD_LOGIC;
         mileage_out : IN STD_LOGIC_VECTOR(15 DOWNTO 0);
         totel_money_out : IN STD_LOGIC_VECTOR(15 DOWNTO 0);
         SEL      : OUT STD_LOGIC_VECTOR(2 DOWNTO 0);
         SEG      : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)
      );
   END COMPONENT;
   
   SIGNAL pulse_kilometre : STD_LOGIC;--1公里产生一次脉冲
   SIGNAL mileage_out     : STD_LOGIC_VECTOR(15 DOWNTO 0);--里程
   SIGNAL totel_money_out : STD_LOGIC_VECTOR(15 DOWNTO 0);--合计费用
BEGIN
   --档位控制模块
   i_speed_pulse : speed_pulse
      PORT MAP (
         clk              => clk_in,--时钟,1000Hz
         reset_p          => reset,--复位信号
         speedup          => speedup,--档位控制
         pulse_kilometre  => pulse_kilometre--1公里产生一次脉冲
      );
   
   
   --状态机控制模块
   i_taxi_state : taxi_state
      PORT MAP (
         clk_in           => clk_in,--时钟1000Hz
         reset_p          => reset,--复位信号
         start_n          => start_n,--启动信号,行程开始
         stop_n           => stop_n,--中途暂停
         pulse_kilometre  => pulse_kilometre,--1公里产生一次脉冲
         mileage_out      => mileage_out,--里程
         totel_money_out  => totel_money_out--合计费用
      );
   
   
   --显示模块
   i_display_num : display_num
      PORT MAP (
         clk              => clk_in,
         mileage_out      => mileage_out,--里程
         totel_money_out  => totel_money_out,--合计费用
         SEL              => SEL,--数码管位选
         SEG              => SEG--数码管段选 
      );
   
END behave;



代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 出租车计费器VHDL代码Quartus仿真

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员