基于FPGA的出租车计价器的设计.docx

上传人:lao****ou 文档编号:877965 上传时间:2024-07-11 格式:DOCX 页数:3 大小:37.29KB
下载 相关 举报
基于FPGA的出租车计价器的设计.docx_第1页
第1页 / 共3页
基于FPGA的出租车计价器的设计.docx_第2页
第2页 / 共3页
基于FPGA的出租车计价器的设计.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《基于FPGA的出租车计价器的设计.docx》由会员分享,可在线阅读,更多相关《基于FPGA的出租车计价器的设计.docx(3页珍藏版)》请在第一文库网上搜索。

1、基于FPGA的出租车计价器的设计EPG(Fie1dProgrammab1eGateArray,现场可编程门阵列)是一种高密度可痴藤辑器件,它百系统可编程,通过写入不同赢置数据就可以实现不同的逻辑功能。使用FPGA来设计电子系统,具有设计周期短、易于修改等明显特点,特别适合于进行科学实验、样机研制和电子产品的小批量生产。本文针对FPGA器件,用EDA工具软件MaX+P1us11,设计了一种出租车的计价器,它可以以十进制数的形式,直观地显示出租车行驶的里程和乘客应付的费用,具有一定的实际应用价值。1系统设计要求所要设计的出租车计价器,要求能够显示里程数和乘客应付的费用,其中里程数精确到0.1km,

2、乘客应付的费用精确到0.1元,显示必须以十进制的形式来进行。出租车的计费标准为:起步价6元,里程在3km以内均为起步价;里程在37km之间时,每行驶1km增加1.6元;超过7km时,每行驶1km增加2.4元。2系统设计方案该系统的设计可以采用分立元件来搭建,也可以通过单片机来设计,而使用可编程FPGA来设计,具有设计周期短、易于修改等明显特点,而且随着可编程逻辑器件和期软件的飞速发展,越来越多的电壬系统采用FPGA来设计,一旦该系统达到一定的量产规模,也比较容易转化为也二左设计。因此,基于FPGA来设计一个出租车的计价器。本系统在EDA工具软件MAX+p1usII中,采用硬件描述语言Veri1

3、ogHD1和原理图设计相结合的方法,进行各个模块的设计,最终将各个模块组成整个系统。出租车能够显示行驶的里程,可以通过车轮的转动产生脉冲,然后通过计数器对脉冲进行计数来实现。假设出租车每行驶2m就产生一个脉冲。由于里程数要精确到0.1km,也就是IOOm,因此每经过50个脉冲就要输出一个新的脉冲信号,这里称为IOOm脉冲信号,作为里程计数器的叱信号,可以通过一个模为50的计数器进行分频而得到。里程计数器可以用一个三位BCD码计数器来实现,最大能显示到999。以前两位为整数,第三位为小数,也就是最大能显示里程99.9km,因为出租车都在市区和近郊活动,三位BCD码计数器是可以实现里程计数的。里程

4、计数器每计数1km还会周期性地输出一个脉冲信号,称为1km脉冲信号,可以通过一定的组合电路来实现。系统最核心的部分就是计费如何实现。这里就需要设计一个BCD码的加法器,在起步价的基础上,根据行驶里程的不同,依据计费标准,每增加1km加上一个单价,单价的产生可以用Veri1ogHD1编写程序来实现。系统的总体设计框图如图1所示。IOom脉冲时钟计费图1总体设计框图2.1单价产生模块单价产生模块的Veri1ogHD1源程序如下:modu1ejiashu(bai,shi,jia);input3jbai9shi;OutputC11:03jia;reg11:0jia;a1ways(baiorshi)be

5、ginif(bai=0)beginif(shi=0&shiV3)jia=O;e1seif(shi=3&shiV7)jia=12,h016;e1seif(shi=7)jia=12zh024;ende1sejia=12zhO24;end/尸沅.endmodu1e.其中输入信号b还和shi就是里程计数器输出的两位整数里程,输出信号jia就是根据计费标准而产生的单价,以三位BCD码的形式输出,以前两位为整数,第三位为小数。即里程在3km以内时,jia=O;里程在37km之间时,jia=016(1.6元);超过7km时,jia=024(2.4元)。用Veri1OgHD1编写程序来实现模块功能的优点在于,

6、当出租车的计费标准发生变化时,可以很容易地通过改写程序来完成新的设计,比起硬件电路的修改要方便得多,这也是用VeriIogHD1来实现模块功能的重要优势。2.2三位BCD码加法器系统中用到了三位BCD码加法器,可以实现三位十进制数的加法运算。加法器输出的结果就是乘客应付的费用,这里同样以前两位为整数,第三位为小数,也就是最大能显示99.9元。三位BCD码加法器由三个一位BCD码加法器级联而成。一位BCD码由四位二进制数组成,四位二进制数的加法运算会产生大于9的数字,必须进行适当的调整才会产生正确的结果。一位BCD码加法器的Veri1ogHD1源程序如下:modu1ebed_jia(aJ)9Sum,cin,c0);input3:0ab;inputcin;output3:0sum;outputco;reg3:0sum?regco;a1ways(aorborcin)beginassigncosuma+b+cin;if(co,sum5b1001)beginSUm=SUm+6;CO=1;endendenc1modu1e一位BCD码加法器模块的仿真波形和生成的模块符号如图2和图3所示。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 工作总结

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服