基于单片机的出租车计费器设计解析

2018-02-04 16:52:05编辑:什么鱼 关键字:单片机  出租车计费器

出租车计费器是出租车上必不可少的一种仪表,随着电子技术,特别是嵌入式应用技术的飞速发展,智能芯片越来越广的应用到了出租车计费器上。这使得出租车计费器能够精准的计算出行车里程及对应的价格,使乘客能够更直观明了的知道自己的乘车价格,而司机师傅也不用再靠人工计算来得出乘客的费用,避免了很多麻烦。本文以单片机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 来录入和播放各种相关的语音提示。因此本设计具有性能优良、操作简单、实用性强、成本低等特点,加上配套的设计程序,使的本次设计具有较高的智能化水平。


关键字:单片机  出租车计费器

来源: eefocus 引用地址:http://www.eeworld.com.cn/mcu/article_2018020437662.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:基于AT89S52的程控开关稳压电源设计方案
下一篇:液晶显示器上显示字符和65 536色彩色图形的嵌入式设计方案

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

51单片机实现LED流水灯(数组方式和位运算方式)

/* 名称:51单片机实现LED流水灯(数组方式和位运算方式)说明:今天又重新开始系统的学习51了,LED就算个开端吧。 要注意两点: 1、sfr和sbit是C语言扩展出来的关键字。其中sfr用于对特殊功能寄存器进行声明,sbit用于对某些特殊功能寄存器的某位进行声明。这里和宏定义很相似,但是不能用宏定义进行替换,对于前者是因为51单片机的寄存器存在于内部空间0x80-0xFF,这空间属于直接寻址,51特殊功能寄存只能直接寻址,不能间接寻址。如果用宏定义的话,在翻译成汇编时就会认为是通过总线访问对应的外部地址了。对于后者,sbit是定义一个标志位,也叫位变量。而类似于#define key1 P3
发表于 2018-07-21 13:08:22

51单片机之按键实验

/* 名称:51单片机之按键实验 说明:键盘是计算机最基础、最重要的输入设备之一。对于键盘来说,其工作任务大体可以分为以下三项: (1)、按键识别。即判断有无按键按下。 (2)、求键值。判断哪个键被按下。 (3)、执行相应的操作。 在这里,实验所用到的键盘为独立键盘和矩阵键盘。对于独立键盘,它的每个按键需要占用一个IO口。一般来说,按键一端接地,另一端接IO口。当按键按下时,线路被导通,IO口被拉低,即状态为‘0’。所以在使用是我们一般把对应IO口置成高电平,然后不断检测此IO口是否被拉低,从而判断按键是否按下。 对于矩阵键盘来说,它用较少的IO口完成较多个按键
发表于 2018-07-21 13:07:26

51单片机之数码管显示实验

/* 名称:51单片机之数码管显示实验 说明:对于数码管来说,其本质上可以理解为按照一定规则组合的多个二极管。其使用只需按照特定规则显示对应的二极管即可。要稍微注意一点的就是多个数码管的显示分为静态显示和动态显示。静态显示就是每个二极管显示的内容是一样的,通过片选信号来决定是哪个二极管该显示。动态数码管,即利用人眼的视觉停留效果,快速扫描,快速显示每个数码管的内容,使得每个数码管看起来好像是一起显示的一样。 本实验编写了几个数码管显示的简单程序。在此不做赘述了。*/#include <reg52.h>#define uchar unsigned char//共阳极段码(a在高位,dp在低位
发表于 2018-07-21 13:06:23

STC单片机片内EEPROM的读写

宏晶STC很多系列的单片机片内都集成了EEPROM存储器(其实是Data Flash),方便用户使用,想得真周到!今天写了个小程序,测试了一下,工作正常。下面就上我自己写的源程序。本人在STC89C52RC单片机上试验成功。首先是stcEEPROM.h头文件内容:/*When         Who     Remarks----------------------------------2011-Oct-06  黄长浩  初始版本 */ #ifndef __STCEEPROM_H__#define
发表于 2018-07-17 21:12:48

AVR单片机ATMEGA8 USART的使用

;       [Bus Signal]  TX, RX, CK    USART支持同步模式,因此USART 需要同步始终信号USART_CK(如STM32 单片机),通常情况同步信号很少使用,因此一般的单片机UART和USART使用方式是一样的,都使用异步模式。在博主目前的项目中使用通信主要是通过RS485协议来进行通信,RS485通信是工业上非常常见的半双工异步通信典型通信协议,特征是通信的设备都挂载到主线上,使用差分信号来判断收发,且同一时刻只能进行一个功能(收信息或者发信息)那么在博主这边的软件处理方式如下;首先要
发表于 2018-07-16 20:41:43

AVR单片机中ATmega8的AD转换探究

AD采集最好要满足的条件:采样频率不小于被采集信号最高频率的两倍,则采样输出信号就可以无失真的重新啊还原输入信号,通常的实际应用中,采样频率为采集最高频率的5-10倍。AD芯片的数据输出方式有串行和并行两种方式,对于AVR单片机来说A/D芯片和AVR单片机接口是需要考虑的一些问题:(1)模拟信号输入的连接:单端输入时,VIN+引脚直接与信号输入连接,VIN-接地。差分输入时,单端输入正信号,VIN+引脚直接与信号连接,VIN-引脚接地。单端输入负信号,VIN-引脚与信号连接,VIN+引脚接地。(2)数据输入线与系统总线的连接:有可控制的三态输出门时候可以直接和系统总线连接,没有输出门的时候要通过I/O口进行连接。(3)启动信号
发表于 2018-07-16 20:40:14

小广播

何立民专栏

单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved