基于PIC单片机的出租车计费系统设计
2012-02-20侯益坤刘艳萍刘益标
侯益坤,刘艳萍,刘益标
(广东工贸职业技术学院电气自动化系,广东 广州 510510)
随着单片机开发技术的不断发展,目前在全世界利用单片机设计的嵌入式系统,带来了工业的腾飞。随着汽车行业快速发展,出租车日益普遍,了解出租车的计费系统,对我们的日常生活也有很大帮助。
利用PIC单片机C语言,实现出租车计费系统,使其实现计费以及预置和模拟汽车启动、停止、复位等功能,并使用TG12864E液晶模组作为显示器,可以显示数字、字母、中文、图片等,使系统信息一目了然。本系统除了里程统计和费用计算以外,还具有万年历和语音播报功能:万年历由时钟芯片PCF8563实时提供时钟信号,再由单片机调用显示;语音播报由语音芯片ISD1420提供语音信息,语音信息放在不同的地址里,由单片机从这些地址中,调用合适的语音进行播放,突出了该语言良好的可读性、灵活和易理解等优点。
1 系统硬件设计
计费系统以PIC单片机为系统核心,利用PIC16F877单片机配合TG12864液晶模组,以及ISD1420语音模块等,实现基本的出租车计价器功能。
本系统是由PIC单片机、液晶显示模块、计数脉冲发生器、系统实时时钟以及语音等模块组成。系统功能框图如图1所示。
图1 系统功能框图
1.1 PIC16F877单片机
PIC16F877单片机是一种具有FLASH程序存储器的8位COMS单片机,采用高性能的哈佛双总给结构CPU和RISC指令集,CPU可同时访问数据存储器和程序存储器,是一种高速、低功耗及功能齐全的微处理芯片,内部含有FLASH、ROM、RAM、EEPROM、I/O端口、A/D转换器、捕捉器/比较器/PWM、串行通信端口、定时器/计数器和中断控制器,以及数据总线、数据存储器总线和程序存储器总线。其中数据总线和数据存储器总线是8位宽,程序存储器总线是14位宽。集成于片内的数据存储器,通过片内的8位总线与算术逻辑单元ALU连接,可以直接通过内部总线传送信息,以寄存器方式工作和寻址。
1.2 数据采集电路
数据采集主要采集车轮的转速等开关量信号,采集电路如图2所示,外部开关量进入光电耦合器件TLP521-4,TLP521-4的输出端连接到单片机的I/O口,供CPU查询外部开关量的状态。
图2 开关量采集电路图
1.3 语音播放模块
语音播放模块电路用于播放提示音、行驶里程、费用等,电路如图3所示。
ISD1420系列单片录放时间为8~20 s,音质好。芯片采用CMOS技术,内含震荡器、话筒前置放大、自动增益控制、防混淆滤波器、平滑滤波器、扬声器驱动及EEPROM阵列,最小的录放系统仅需麦克风、喇叭、两个按钮、电源及少数电阻电容。
图3 语音播放电路图
在录放操作结束后,芯片自动进入低功耗节电模式、功耗仅0.5 μA。ISD1420系列有唯一的录音控制和边缘/电平触发两种放音控制。不分段时外围线路最简,也可按最小段长为单位任意组合分段,芯片提供若干操作模式,大大提高了控制的灵活性。芯片采用多电平直接模拟量存储专利技术,每个采样直接存储在片内单个EEPROM单元中,因此能够非常真实、自然地再现语音、音乐、音调各效果,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。采样频率从5.3 kHz、6.4 kHz到8.0 kHz,对音质仅有轻微影响。片内信息可保存100年(无需后备电源),EEPROM单片可反复录音10万次。
1.4 时钟模块
PCF8563是PHILIPS公司推出的一款工业级、内含I2C总线接口功能的具有极低功耗的多功能时钟/日历芯片,PCF8563的多种报警功能、定时器功能、时钟输出功能以及中断输出功能,能完成各种复杂的定时服务,甚至可为单片机提供看门狗功能,内部时钟电路、内部振荡电路、内部低电压检测电路1.0 V以及两线制I2C总线通讯方式,不但使外围电路极其简洁,而且增加了芯片的可靠性,同时每次读写数据后内嵌的字地址寄存器会自动产生增量,电路如图4所示。
图4 时钟电路图
1.5 液晶显示模块
利用液晶显示模块,可以将PIC16F877单片机处理后的信息进行显示,方便查看实时数据。12864 E液晶显示器,是一种具有8位并行接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块,其显示分辨率为128×64,内置8 192个16×16点汉字和128个16×8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面,可以显示8×4行16×16点阵的汉字,也可完成图形显示。低电压低功耗是其又一显著特点。液晶显示模块电路如图5所示。
图5 液晶显示电路图
2 系统软件设计
软件设计采用模块化设计,各个模块之间做到低耦合、高内聚。软件设计主要包括以下几个部分:单片机I/O口初始,定时器初始化,液晶模块初始化,外部开关量采集子程序等,主程序里面调用各个模块,主程序流程图如图6所示。
3 结束语
基于PIC16F877单片机的出租车计费系统,实现数据的实时采集和显示,通过系统软硬件的设计和调试,实际使用情况良好,费用低廉。该系统已广泛应用于出租车,取得较好的经济效益。
图6 主程序流程图
[1]丁跃军,等.PIC单片机基础教程[M].北京:北京航天航空大学出版社,2005.
[2]周立功,PCF8563.pdf.[BE/OL].http://www.zlgmcu.com.2006.
[3]江 和.PIC16系列单片机C程序设计与PROTEUS仿真[M].北京:北京航天航空大学出版社,2010.
[4]周立功,ISD1420.pdf.[BE/OL].http://www.zlgmcu.com.2006.
[5]周 坚.PIC单片机轻松入门[M].北京:北京航天航空大学出版社,2009.