历史上的今天
返回首页

历史上的今天

今天是:2025年02月04日(星期二)

2018年02月04日 | 基于单片机的出租车计费器设计解析

2018-02-04 来源:eefocus

出租车计费器是出租车上必不可少的一种仪表,随着电子技术,特别是嵌入式应用技术的飞速发展,智能芯片越来越广的应用到了出租车计费器上。这使得出租车计费器能够精准的计算出行车里程及对应的价格,使乘客能够更直观明了的知道自己的乘车价格,而司机师傅也不用再靠人工计算来得出乘客的费用,避免了很多麻烦。本文以单片机STC89C51 为核心设计一款出租车计费器, 使能够实现里程及对应价格的显示,由于采用芯片的自动定时计数,所以能够准确的计算出总的行车里程并能转换成对应的价格来,这样能够避免出租车司机作弊的可能性,做到公平公正。


1 出租车计费器的设计要求与设计方案


1.1 出租车计费器设计要求


设计一个出租车自动计费器,计费包括起步价、行车里程、总计费价格三部分,并用1602 液晶显示器显示起步价、单双行程、总里程及总金额。语音播放用ISD1820 模拟出租车的载客、到站及对费用的语音提醒等功能。

      ①计费功能

      本设计费用的计算是按行车里程数来收费。设计费器的起步价为5.00 元。

      (1)当行驶里程<3km 时,费用按起步价计算。

      (2)当行驶里程>3km 时,白天单程每公里按1.5 元计算费用,白天双程每公里按1 元计算费用,黑夜单程每公里按2 元计算费用,黑夜双程每公里按1.5 元计算费用。

      ② LCD 显示功能

      (1)行驶里程用五位数字显示,即显示方式为“YYY.Y”, 单位为km.显示里程范围为0-999.9km,精确到0.1km。

      (2)总费用显示也是用五位数字显示,显示方式为“YYYYY”, 单位为元。计价范围从0-99999 元,精确到1 元。

      ③语音功能


乘客上车时,需语音播报“欢迎乘坐XXXX 出租车公司,请说明目的地”等提示,目的地乘客下车时,需语音播报乘车总费用及欢迎下次乘坐等提示。


1.2 方案确定


本次设计采用MPU 技术,以STC89C51 单片机为核心芯片,利用1602液晶显示器显示对应里程及价格,A44E作为传感电路的核心,ISD1820 作为语音提示电路的核心芯片,采用12M 晶振,利用独立按键来实现单双行程的选择,以下是方案的系统流程图,方案图如图1-1 所示:

      

2 出租车计费器的硬件设计


在本次设计中,时钟电路和复位电路采用最常用的电路来设计,构成单片机的最小系统;键盘电路采用独立按键的设计方法来实现;显示电路LCD1602 的驱动电路也是设计者们经常用到的;本次设计的特色在于传感电路和语音播报电路的设计如下所示:


2.1 传感电路


传感器采用霍尔传感器A44E,它是一种磁传感器,当电机带叶轮转动时,我们在叶轮上固定一块小磁铁,将A44E 靠近小磁铁时,叶轮上小磁铁每经过一次霍尔传感器,就会产生一个脉冲信号,并通过单片机端口位将脉冲信号传递给单片机。单片机MPU 在将数据处理后,就通过液晶显示器显示出来。测速电路图及霍尔传感器A44E的驱动电路如下图2-1、2-2 所示。

      

2.2 语音电路

      

ISD1810,ISD1820 语音芯片的基本结构与ISD1110、1420 完全相同,采用CMOS技术,内含振荡器,ISD1820 语音芯片话筒前置放大,自动增益控制。它的主要特性体现在一下方面:这些特性使得设计者大大降低了电路设计的难度,尤其在进行语音的录放时,无需设计程序,大大简化了设计难度,且操作简单。ISD1820 芯片的常用电路如下图所示:

      

3 出租车计费器的软件设计


3.1 单片机I/O 口使用


在本次设计中独立按键的连接就用到了P1 口的P1.4 到P1.7,LCD1602 的控制用了P1 口中的P1.0 到P1.2 位,数据位用到了P0 口,传感电路用到了P3.4、引脚,语音电路用到P2.7 引脚。


3.2 独立按键判断


对于独立键盘的判键,首先确定是否有键按下,如果有则需要延时一会儿,再判断是否有键按下(起到防抖的作用),如果确实有键按下,则释放按键,最后执行键功能程序。


3.3 显示程序设计


1602 液晶显示器是字符型的,显示容量为16*2 个字符,工作电压为4.5-5.5V,在编写应用程序的时候,应该按照先读状态接着写指令,然后读数据最后最后写数据的基本操作时序,在进行每一次命令或数据的写入时都需要判断液晶是否忙。


4 结语


本次设计的出租车计费器在通过Protues 仿真软件的仿真时,能够实现其对应的各种功能,既能模拟仿真出出租车的启动与停止,也能显示出对应的里程数与乘车费用,同时本次设计还能利用ISD1820 来录入和播放各种相关的语音提示。因此本设计具有性能优良、操作简单、实用性强、成本低等特点,加上配套的设计程序,使的本次设计具有较高的智能化水平。


推荐阅读

史海拾趣

Goldentech Discrete Semiconductor Inc公司的发展小趣事

随着物联网、可穿戴设备等新兴领域的兴起,Goldentech敏锐地捕捉到了市场的新机遇。公司迅速调整战略方向,加大在微型化、低功耗半导体器件的研发投入。通过引入先进的制造工艺和封装技术,Goldentech成功推出了一系列适用于物联网和可穿戴设备的高性能离散半导体产品。这些产品凭借出色的性能和稳定性,在市场中获得了广泛认可,为公司的持续发展注入了新的动力。

AAEON公司的发展小趣事

随着物联网、可穿戴设备等新兴领域的兴起,Goldentech敏锐地捕捉到了市场的新机遇。公司迅速调整战略方向,加大在微型化、低功耗半导体器件的研发投入。通过引入先进的制造工艺和封装技术,Goldentech成功推出了一系列适用于物联网和可穿戴设备的高性能离散半导体产品。这些产品凭借出色的性能和稳定性,在市场中获得了广泛认可,为公司的持续发展注入了新的动力。

BOWEI公司的发展小趣事

随着物联网、可穿戴设备等新兴领域的兴起,Goldentech敏锐地捕捉到了市场的新机遇。公司迅速调整战略方向,加大在微型化、低功耗半导体器件的研发投入。通过引入先进的制造工艺和封装技术,Goldentech成功推出了一系列适用于物联网和可穿戴设备的高性能离散半导体产品。这些产品凭借出色的性能和稳定性,在市场中获得了广泛认可,为公司的持续发展注入了新的动力。

AirBorn公司的发展小趣事

在航空航天领域,AirBorn的产品广泛应用于飞机、导弹系统、通信设备等关键领域。为了满足航空航天领域对连接器的严苛要求,AirBorn不断投入研发力量,推出了一系列具有高性能、高可靠性的连接器产品。这些产品不仅满足了航空航天领域的需求,还为公司带来了可观的收益。

DLP Design公司的发展小趣事

DLP联合科技公司,通过与国内外知名企业的技术合作,实现了技术的快速迭代和产品的升级换代。公司积极寻求与产业链上下游企业的合作机会,共同研发新技术、新产品。通过与合作伙伴的紧密合作,DLP联合科技在DLP技术领域取得了显著成果,为电子行业的发展做出了积极贡献。

GTM公司的发展小趣事

DLP精工科技公司,一直秉承“品质至上”的经营理念,在DLP技术产品的设计和制造过程中严格把控品质。公司拥有一支专业的研发团队和先进的生产设备,确保每一件产品都符合高标准的质量要求。通过不断的技术创新和产品升级,DLP精工科技在电子行业中树立了良好的品牌形象,赢得了消费者的信赖和认可。

问答坊 | AI 解惑

ARM培训视频-dsp-CPLD-FPGA开发视频-嵌入式系统开发-单片机开发视频

ARM培训视频-dsp-CPLD-FPGA开发视频-嵌入式系统开发-单片机开发视频 ------------------------------------------------------------------ 【ARM培训视频】课程主要内容 1.概念和基本工具: 嵌入式系统基本概念、嵌入式操作系统介绍 嵌入式系 ...…

查看全部问答>

汽车伴我行——京郊另类玩家经典路线、汽车新科技、经典车型大罗列

汽车伴我行 1. 京郊另类玩家经典路线推荐 https://bbs.eeworld.com.cn/thread-2611-1-40.html 2. 智能车赛道记忆算法的研究 https://bbs.eeworld.com.cn/thread-9739-1-18.html 3. 汽车新科技 https://bbs.eeworld.com.cn/thread-7089-1-17.html ...…

查看全部问答>

推荐FPGA+单片机开发板。。。

联华众科FPGA开发板 FA130 北京联华众科科技有限公司 http://www.lianhua-zhongke.com.cn Abstract  摘 要:联华众科FPGA开发板FA130核心器件为 Altera Cyclone系列的EP1C3,配置芯片为EPCS1,FA130上可以运行SOPC Bui ...…

查看全部问答>

【转帖】小菲的嵌入式学习随笔

不知不觉搞嵌入式也快两年了。说到学习嵌入式,整理了“飞凌嵌入式”一位资深嵌入式工程师的视频报 告,里面讲到了嵌入式学习的要点和嵌入式学习需要重点掌握的知识点。希望能让那些将要学习嵌入式和 正在学嵌入式的朋友们少走弯路,尽快掌握嵌 ...…

查看全部问答>

wince插入记录出错(现金结算,请大侠门出手帮忙)

我用的是sqllit数据库,用.net C#写的,在连续插入数据时,报数库已满错误。项目紧啊,若有能解决者,我愿意用真实现金结算。 我的手机:13811119861  北京的号 希望大侠们能给予解决,谢谢了! …

查看全部问答>

STC单片机实现阀值的设置和显示功能, 不知道怎么做.请教大家给个方法!

STC单片机实现阀值的设置和显示功能, 不知道怎么做.请教大家给个方法! 描述:有两个按钮,分别设置阀值的+和-,一个LED用来显示当前设置值.…

查看全部问答>

关于wince5.0 的IE支持flash的问题。

如何让wince5.0的IE支持flash呢?在adobe的网站上找到了用于ppc的flash插件,但不能用于wince, 听说,有人把ppc相应的dll考到了wince里,wince就可以用ppc的软件了,真的可能吗? 还有我的硬件是x86的,能否找到用于x86的ppc系统文件呢(dll), ...…

查看全部问答>

各位高手大虾帮帮忙!关于串口

各位高手大虾,我的开发板上有3个串口,串口1用来调试,串口2没有用,串口3接红外,由于我要加接GPS,又不想占用调试串口,就想把串口2打通, 在BSP中添加了相关代码后,在CE注册表下可以看到串口2,可是接上GPS线却什么反应的都没有,而串口1就可 ...…

查看全部问答>

CE下怎么得到当前进程所占内存呢?

如题,好像CE下不支持GetProcessMemoryInfo()API 还有别的方法可以吗? 我想把当前应用所占内在实时的显示在界面上…

查看全部问答>