基于VHDL的出租车计费器设计毕业论文(4)

2019-05-18 13:37

参考文献

[1] 李蓉.基于VHDL语言的出租车自动计费器的设计[J].科技风,2008,24:42-46 [2] 侯伯亨,顾新.VHDL硬件描述语言与数字逻辑电路设计(修订版)[M].西安:

西安电子科技大学出版社,2005:3-9

[3] 孟庆海,张洲.VHDL基础及经典实例开发[M].西安:西安交通大学出版社,

2008,4:1-5

[4] 王行,李衍.EDA技术入门与提高[M].西安:西安电子科技大学出版社,

2005:17-32

[5] 周彩宝等.VHDL语言及其应用[J].计算机工程,1998,10:17-20 [6] 孙冰等.VHDL在计算机组成原理实验中的应用研究[J].价值工

程,2011,30(27):56-59

[7] 黄正瑾等编著.CPLD系统设计技术入门与应用[M].北京:电子工业出版

社,2002:13-23

[8] 刘爱荣等编著. EDA技术与CPLD/FPGA开发应用简明教程[M]. 北京:清华大

学出版社,2007:45-56

[9] 席砺莼等.基于VHDL语言的出租车计费系统设计[J].现代电子技术,

2003,3:57-61

[10] 高健等.基于Verilog HDL出租车计费系统的研制[J].实验室研究与探索,

2004,10:34-37

致 谢

在这次毕业设计的设计过程中,得到了很多人的帮助。首先要感谢我的指导老师——陈初侠老师,在课程设计上给予我的指导,提供给我的支持和帮助,让我能把系统做得更加完善。在完成毕业论文的过程中,我学到了许多新的知识,也巩固了一些已经学过的知识,弥补了以前的不足之处,锻炼了我的动手能力,使我的设计能力得到提高。其次,我要感谢帮助过我的同学们,他们也为我解决了不少难题,同时也感谢学院为我提供了良好的做毕业设计的环境。最后,要感谢各位老师抽出时间对本文进行评阅。

附 录

顶层实体的VHDL编程:

library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all;

entity taximeter is port(clk : in std_logic;--输入300Hz时钟 start : in std_logic;--计费器启动 stop : in std_logic;--等待信号 mile : in std_logic;--公里脉冲信号 single : in std_logic;--单程键 sel : out std_logic_vector(2 downto 0);--位选 show : out std_logic_vector(7 downto 0));--7段数码管译码输出 end taximeter;

architecture structural of taximeter is component taxi

port(clk : in std_logic; start : in std_logic; stop : in std_logic; mile : in std_logic; single : in std_logic; char0 : out std_logic_vector(3 downto 0);--计费输出小数点位 char1 : out std_logic_vector(3 downto 0);--计费输出个位 char2 : out std_logic_vector(3 downto 0);--计费输出十位 char3 : out std_logic_vector(3 downto 0);--计费输出百位 min0 : out std_logic_vector(3 downto 0);--等待时间输出个位 min1 : out std_logic_vector(3 downto 0);--等待时间输出十位 km0 : out std_logic_vector(3 downto 0);--行驶公里输出个位 km1 : out std_logic_vector(3 downto 0));--行驶公里输出十位 end component; component display

port(clk : in std_logic; char0 : in std_logic_vector(3 downto 0); char1 : in std_logic_vector(3 downto 0); char2 : in std_logic_vector(3 downto 0); char3 : in std_logic_vector(3 downto 0); min0 : in std_logic_vector(3 downto 0); min1 : in std_logic_vector(3 downto 0); km0 : in std_logic_vector(3 downto 0); km1 : in std_logic_vector(3 downto 0);

sel : out std_logic_vector(2 downto 0); show : out std_logic_vector(7 downto 0)); end component;

signal char0 : std_logic_vector(3 downto 0); signal char1 : std_logic_vector(3 downto 0); signal char2 : std_logic_vector(3 downto 0); signal char3 : std_logic_vector(3 downto 0); signal min0 : std_logic_vector(3 downto 0); signal min1 : std_logic_vector(3 downto 0); signal km0 : std_logic_vector(3 downto 0); signal km1 : std_logic_vector(3 downto 0); begin charge_control:taxi port map(clk => clk, start => start, stop => stop, mile => mile, single => single, char0 => char0, char1 => char1, char2 => char2, char3 => char3, min0 => min0, min1 => min1, km0 => km0, km1 => km1); display_control:display port map(clk => clk, char0 => char0, char1 => char1, char2 => char2, char3 => char3, min0 => min0, min1 => min1, km0 => km0, km1 => km1, sel => sel, show => show); end structural;

计费模块的VHDL编程:

library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all;

entity taxi is port(clk : in std_logic;--输入300Hz时钟 start : in std_logic;--计费器启动 stop : in std_logic;--等待信号 mile : in std_logic;--公里脉冲信号 single : in std_logic;--单程键

char0 : out std_logic_vector(3 downto 0);--计费输出小数点位 char1 : out std_logic_vector(3 downto 0);--计费输出个位 char2 : out std_logic_vector(3 downto 0);--计费输出十位 char3 : out std_logic_vector(3 downto 0);--计费输出百位 min0 : out std_logic_vector(3 downto 0);--等待时间输出 min1 : out std_logic_vector(3 downto 0);--等待时间输出 km0 : out std_logic_vector(3 downto 0);--行驶公里输出 km1 : out std_logic_vector(3 downto 0));--行驶公里输出 end taxi;

architecture behave of taxi is constant n : integer := 30; signal f_mile1 : std_logic;--延迟时间 signal f_mile2 : std_logic;--延迟时间 signal f_mile_r : std_logic;--延迟时间 signal start_r : std_logic;--延迟时间 signal clk1hz : std_logic;--分频所得1Hz时钟 signal q : integer range 0 to n-1;--分频器 signal sec : integer range 0 to 59; signal c3,c2,c1,c0 : std_logic_vector(3 downto 0);--计费寄存器 signal k0 : std_logic_vector(3 downto 0);--公里寄存器 signal k1 : std_logic_vector(3 downto 0);--公里寄存器 signal m1 : std_logic_vector(3 downto 0);--等待时间寄存器 signal m0 : std_logic_vector(3 downto 0);--等待时间寄存器 signal en0 : std_logic;--路程大于3公里,使能有效 signal en1 : std_logic;--单程且大于20公里,使能有效 signal f_wait : std_logic;--等待时间,1脉冲/分钟 signal f : std_logic;--计费时钟 begin --输出显示 min0 <= m0; min1 <= m1; km0 <= k0; km1 <= k1; char0 <= c0; char1 <= c1; char2 <= c2;


基于VHDL的出租车计费器设计毕业论文(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:太阳能电池极板材料的研究方向及性能对比

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: