EDA课程设计--出租车计价器(共15页).doc
《EDA课程设计--出租车计价器(共15页).doc》由会员分享,可在线阅读,更多相关《EDA课程设计--出租车计价器(共15页).doc(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上EDA课程设计专题实践题目:出租车自动计费器姓 名: 学 院: 电子与信息工程学院 专 业:电子信息科学与技术 班 级: 电信1204班 一、 设计题目:出租车自动计费器二、 设计目标: 1、设计一个出租车自动计费器,具有行车里程计费、等候时间计费、及起价三部分,用四位数码管显示总金额,最大值为99.99元;2、行车里程单价1.7元/公里,等候时间单价1.7元/5分钟,起价8元(3公里起价)。3、行车里程的计费电路将汽车行驶的里程数转换成与之成正比的脉冲数,然后由计数译码电路转换成收费金额,实验中以一个脉冲模拟汽车前进十米比例系数,从而计算出具体费用。4、用LED显示
2、行驶公里数,四个数码管显示收费金额。三、 设计原理: 将汽车行驶的里程数和等候时间分别转换成与之成正比的脉冲数,然后将里程脉冲和等待脉冲乘以分别的单价得到具体的费用,再将几项收费相加,得到最终的金额。再用分码器将钱的每一位分开,用四个数码管表示总的计费结果。本次设计的模块包括:分频器、计数器、比例乘法器、分码器、数码管扫频电路。另设4个按键:RST(停止)、EN(启动)、START(行驶)、STOP(等待),通过按下RST模拟汽车的停止,按下EN模拟汽车的发动此时计价器显示起步价8元,按下START键时模拟汽车在行驶,此时开始计公里数,按下STOP键时,模拟出租车在等待,计数器计等待时间。总设
3、计的实验框图如下:费用计算分码分频器里程计数费用显示输入时钟分码器时间计数图(1)原理框图四、 设计内容: (1) 分频器模块 其功能是将实验室的48MH的频率分别分成1HZ、10HZ、1HZ。将1HZ作为等待时间计数的脉冲,每一个脉冲代表1s。10HZ的脉冲作为里程计数的输入脉冲,每一个脉冲代表10m。1KHZ用于数码管扫频电路的扫频中。 图(2) 分频器程序代码:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.NUMERIC
4、_BIT.ALL;-包含移位函数等.ENTITY int_divISGENERIC(F_DIV:Integer:=;-分频系数F_DIV_WIDTH:Integer:=32-分频计数器宽度);PORT(clock :INSTD_LOGIC;clock_out:OUTSTD_LOGIC);END;ARCHITECTURE one OFint_divISSIGNAL clk_p_r:STD_LOGIC;-上升沿输出时钟SIGNAL clk_n_r:STD_LOGIC;-下降沿输出时钟SIGNAL count_p:STD_LOGIC_VECTOR(f_div_width-1DOWNTO 0);-上升
5、沿脉冲计数器SIGNAL count_n:STD_LOGIC_VECTOR(f_div_width-1DOWNTO 0);-下降沿脉冲计数器-SIGNAL f_div_width_r:STD_LOGIC_VECTOR(f_div_width-1DOWNTO 0);SIGNAL clock_out_r:STD_LOGIC;SIGNAL full_div_p:STD_LOGIC;-上升沿计数满标志SIGNAL half_div_p:STD_LOGIC;-上升沿计数半满标志SIGNAL full_div_n:STD_LOGIC;-下降沿计数满标志SIGNAL half_div_n:STD_LOGIC
6、;-下降沿计数半满标志BEGINclock_out=clock_out_r;-clock_out=clock WHEN (F_DIV=1) ELSE (clk_p_r=1 AND clk_n_r=1) WHEN (F_DIV(0)=1) clk_p_r); -判断计数标志位置位与否.full_div_p=1 WHEN (count_pF_DIV-1) ELSE 0;half_div_p=1 WHEN (count_p(F_DIV/2 )-1) ELSE 0;full_div_n=1 WHEN (count_nF_DIV -1) ELSE 0;half_div_n=1 WHEN (count_n
7、(F_DIV/2)-1)ELSE 0;PROCESS(clock)-上升沿脉冲计数-VARIABLE i:Integer RANGE 0 TO 31;BEGINIFRISING_EDGE(clock)THENIF full_div_p=1 THENcount_p=count_p+1;IF (half_div_p=1) THENclk_p_r=0;ELSEclk_p_r=1;END IF;ELSEcount_p0);clk_p_r= 0;END IF;END IF;END PROCESS;PROCESS(clock)-下降沿脉冲计数BEGINIFFALLING_EDGE(clock)THENIF
8、 full_div_n=1 THENcount_n=count_n+1;IF half_div_n=1 THENclk_n_r=0;ELSEclk_n_r=1;END IF;ELSEcount_n0);clk_n_r = 0;END IF;END IF;END PROCESS;PROCESS(clock)BEGINIFRISING_EDGE(clock)THENIF F_DIV= 1 THENclock_out_r=clock;ELSEIF (F_DIV REM 2) =1 THENclock_out_r= clk_p_r AND clk_n_r;ELSEclock_out_r=clk_p_r
9、;END IF;END IF;END IF;END PROCESS;END;(2) 里程计数模块其功能是得到出租车行驶的公里数。每一个脉冲模拟的是10m,所以100个脉冲为1km,需要两个一百进制计数器,第一个计数器计满数后进位输出作为高位计数器的输入时钟,高位100计数器输出的是里程公里数。当按下REST键时计数器清零。按下EN键后,再按下START键,此时里程计数器开始计数,来一个脉冲加1,到99时为1公里,高位100进制计数器计数加1,并输出公里数。图(3) 里程计数器程序代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_l
10、ogic_unsigned.all;entity CNT0100 is port (clk,start,stop,rst,EN:in std_logic;kilo:out integer range 0 to 100);end;architecture behav of CNT0100 isbeginprocess(clk,rst,start,stop,en)variable cqi,k: integer range 0 to 100;variable flag1,flag2:std_logic:=0; -flag1控制计数器是否清零,flag2控制计数是否计数beginif rst=0 th
11、en cqi:=0;flag2:=0;flag1:=0;k:=0; elsif clk event and clk=1 then if en=0 then flag2:=1; else flag2:=flag2; end if; if stop=0and flag2=1 then flag1:=0; else flag1:=flag1; end if; if start=0and flag2=1 then flag1:=1; -计数器开始计数 else flag1:=flag1; end if; if flag1=0 then cqi:=cqi; else if cqi99 then cqi:
12、=cqi+1; -小于99时继续计数加1,否则计数清零 else cqi:=0; end if; if cqi=99 then -计满99时加1 if k99 then K:=K+1; else k:=0; end if; else K:=K; end if; end if;end if;kilo=k; -输出公里数end process;end;(3)计时模块 其功能室得到等待的时间数。每一个脉冲的是1s,所以60个脉冲为1分钟,需要两个一60进制计数器,第一个计数器计满数后进位输出作为高位计数器的时钟,高位60计数器输出的是分钟数。当按下REST键时计数器清零。按下EN键后,再按下STOP
13、键,此时等待时间计数器开始计数,来一个脉冲加1,到59s时为1分钟,高位60进制计数器计数加1,并输出分钟数。图(4) 等待时间计数器程序代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity WAIT60 is port (clk,start,stop,rst,en:in std_logic;waitime:out integer range 0 to 60);end;architecture behav of WAIT60 isbeginprocess(clk,rst,start,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 课程设计 出租车 计价器 15
限制150内