eda课程设计-出租车自动计费器.docx
《eda课程设计-出租车自动计费器.docx》由会员分享,可在线阅读,更多相关《eda课程设计-出租车自动计费器.docx(9页珍藏版)》请在沃文网上搜索。
1、 一、 设计任务及要求设计一个出租车计价器:计费包括起步价、行车里程计费、等待时间计费3部分。用3位数码管显示金额,最大值为999.9元,最小计价单元为0.1元;行程3公里内,且等待时间累计3分钟内,起步价10元,超过3公里,以每公里1.6元计费,等待时间单价为每分钟1.5元;用两位数码管显示总里程,最大值为99公里用两位数码管显示等待时间,最大值为59min。 二、设计原理及总体框图出租车自动计费器分为分频模块、控制模块、计量模块、计费模块、译码和显示模块。 A)、设计原理:(1)分频模块 分频模块对频率为240HZ的输入脉冲进行分频,得到的频率为16HZ、15HZ、和1HZ的3种频率。该模
2、块产生频率信号用于计费,每个脉冲为0.1元计费控制,其中15Hz信号为1.5元的计费控制,16Hz信号为1.6元计费控制。 (2)计量控制模块 计量控制模块式出租车自动计费器系统的主体部分,该模块主要完成等待计时功能、计价功能、计程功能,同时产生3分钟的等待计时使能控制信号en1、行程3公里外的使能控制信号en0。其中计价功能主要完成的任务是:行程3公里内且等待累计时间在3分钟内起步价为10元3公里以外每公里1.6元计费,等待时间3分钟以外每分钟1.5元计费。计时功能主要完成的任务是:计算乘客的等待累计时间,计时器的量程为59分,满量程自动归零。计程主要完成的任务是:计算乘客所行驶的公里数,计
3、价器的量程为99公里,满量程自动归零。 (3)译码显示模块该模块利用实验板上的译码器和数码管分别将输出的计费数据(4位BCD码)、计时数据(2位BCD码)和计程数据(2位BCD码)显示输出。其中计费数据最后以百元、十元、元、叫、角为单位对应的数码管上显示,最大显示为999.9元;计时数据最后送至以分为单位对应的数码管上显示,最大显示为59s;计程数据最后送至以公里为单位的数码管上显示,最大公里为99公里。B)、总体框图: 根据层次化设计理论将该问题自顶向下可分为分频模块、计量模块、控制模块、译码和显示模块各模块功能如下:三、程序设计及编译仿真1)、分频模块:对频率为240HZ的输入脉冲进行分频
4、,得到的频率为16HZ、15HZ、和1HZ的3种频率。程序如下:library IEEE; use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity fp is port ( clk :in std_logic; q16: out std_logic; -频率为16的时钟 q15: out std_logic; -频率为15的时钟 q1: out std_logic); -频率为1的时钟 end fp; architecture qq of fp is be
5、gin process(clk) variable cout16:integer range 0 to 14; variable cout15:integer range 0 to 15; variable cout1:integer range 0 to 239; begin if (clkevent and clk=1) then if cout16=14 -240hz分频为16hz then cout16:=0;q16=1; else cout16:=cout16+1;q16=0; end if; if cout15=15 -240hz分频为15hz then cout15:=0;q15
6、=1; else cout15:=cout15+1;q15=0; end if; if cout1=239 -240hz分频为1hz then cout1:=0;q1=1; else cout1:=cout1+1;q1=0; end if; end if; end process; end qq;仿真波形:2)计量模块:该模块主要完成等待计时功能、计价功能、计程功能,同时产生3分钟的等待计时使能控制信号en1、行程3公里外的使能控制信号en0。以及进行满量程清零。library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arit
7、h.all; use ieee.std_logic_unsigned.all; entity jiliang is port( s: in std_logic; -计量开始信号 fin: in std_logic; - 计量路程的信号 stop: in std_logic; -等待信号 clk1: in std_logic; -计量驱动信号 en1,en0: buffer std_logic; -计量控制信号 k1,k0: buffer std_logic_vector(3 downto 0); -路程的计量 m1,m0: buffer std_logic_vector(3 downto 0)
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- eda 课程设计 出租车 自动 计费
