
基于pic单片机的出租车计费系统----毕业.doc
21页第 1 页 共 21 页基于基于 PICPIC 单片机的出租车计费系统单片机的出租车计费系统摘要摘要随着经济的发展,带动汽车行业快速发展,出租车日益普遍,了解在出租车上应用的计费系统,对我们日常生活也有帮助而使用单片机实现该系统,是深化单片机应用的良好途径本系统由单片机 PIC16F877A 和一些外围原件组成,具有操作简单,显示明了,功能强大的特点整个系统只有两个按键,一个“启动/停止” ,一个“复位” ;使用 TG12864E 液晶模组作为显示器,可以显示数字、字母、中文、图片等,使系统信息一目了然;本系统除了里程统计和费用计算以外,还具有万年历和语音播报功能万年历由时钟芯片 PCF8563 实时提供时钟信号,再由单片机调用显示;语音播报由语音芯片 ISD1420 提供语音信息,语音信息放在不同的地址里,由单片机从这些地址中调用合适的语音进行播放本方案充分发挥人性化的特点,利用 ISD1420 的语音功能,配合 TG12864 液晶模组,模拟实现带语音提示的出租车计价系统比较真实地模拟出租车的空车、载客、到站及对各状况的费率的计算、统计、显示和语音播报等功能本系统涉及到的理论知识有: PIC 单片机知识、LCD 液晶显示器的工作原理和使用方法、可擦、写的语音芯片的工作原理及应用、实时时钟芯片的工作原理及应用、 出租车计费系统的原理和实现方法、 PROTEUS 仿真原理及实际应用。
本系统提高同学们用 C 语言编写程序的能力、单片机应用系统设计综合能力的训练、培养同学们分析问题和解决问题的能力、对同学们的招聘以及参加工作均有帮助该系统稍加改进,可以成为一套真正的实用的计费系统 关键词:时钟芯片 PCF8563 语音芯片 ISD1420 TG12864 液晶模组 LCD 液晶显示器第 2 页 共 21 页目目录录摘摘要要……………………………………………………………………1第第一一章章 系系统统总总体体介介绍绍 ………………………………………………21.系统组成及功能框图………………………………………………32.里程计量及费用计算功能…………………………………………33.语音播放功能………………………………………………………44.中文菜单显示功能…………………………………………………45.实时时钟功能………………………………………………………56.按键功能……………………………………………………………57.系统电路设计原理图………………………………………………6第第二二章章 硬硬件件设设计计………………………………………………………71.主程序/CPU 模块……………………………………………………72.语音播放模块 ………………………………………………………83.液晶显示驱动模块 …………………………………………………94.脉冲发生器模块 ……………………………………………………115.时钟模块 ……………………………………………………………126.按键扫描模块 ………………………………………………………14第第三三章章 系系统统程程序序设设计计 …………………………………………………121.系统主程序流程框图 ………………………………………………152.里程和费率计算程序流程图 ……………………………………………183.键盘处理程序流程图 …………………………………………………………19结结束束语语……………………………………………………………………19第 3 页 共 21 页致致谢谢………………………………………………………………………21参参考考文文献献…………………………………………………………………21附附件件………………………………………………………………………21第一章系统总体介绍1.1.系统组成系统组成此出租车计费系统以单片机为系统核心,利用 PIC16F877 单片机配合 TG12864 液晶模组及 ISD1420 语音模块等,实现基本的出租车计价器功能。
本系统是由 PIC 单片机、液晶显示模块、计数脉冲发生器、系统实时时钟及语音等模块组成系统框图如图(1)所示:2.系统各部分功能:⑴⑴.里程计量功能.里程计量功能a) 单片机对传感器输出脉冲进行计数,并将脉冲数换算成公里数;b) 每一个脉冲代表轮胎旋转一周,设轮胎的直径为 520mm,轮胎的周长为:(即每转一圈的距离)520x3.14159=1634mm=1.634m c) 每公里的脉冲数:PulsePerKM=1000m/1.634m=612(个脉冲) ⑵⑵.费用计算功能(参照广州市出租车收费标准).费用计算功能(参照广州市出租车收费标准)PIC 单单片片机机液液晶晶显显示示模模块块 (128x64点点阵阵)语语音音模模块块 (ISD1420)实实时时时时钟钟 (FC8563)脉脉冲冲发发生生器器 (NE555)键键盘盘 (独独立立按按键键)电电源源图(1) 系统功能框图第 4 页 共 21 页费用计算包括三部分:起步费、行使费和燃油附加费:a) 起步费用(StartPrice)—当行驶里程(RunMilege)在 2.3Km(含 2.3Km)以内按起步价(StartPrice)7 元计费。
即行使费用(RunPrice)为: RunPrice = StartPrice + 1 = 8(元)b) 行使费用(RunPrice)--行使费用分短途与长途两种情况:①.当行驶里程(RunMilege)超出 2.3Km 时并且小于 35Km 时,按 2.6 元/Km 收费,这时行驶费用为:RunPrice=StartPrice+2.6×(RunMilege-StartMilege)+1其中:StartPrice 为起步价=7 元StartMilege 为起步里程=2.3KmRunMilege 为行使里程(总行使里程)RunPrice 为行使费用(总行使金额)②.当行使里程超过 35Km 后,要加空驶费,即每公里升至 3.50 元, 这时行驶费用为:RunPrice=StartPrice+3.5×(RunMilege-StartMilege)+1c) 燃油附加费--每车次加收一元⑶⑶.语音播放功能.语音播放功能①.当初次按下“start/stop”键,出租车开始启动,系统播放“您好!欢迎乘坐本公司出租汽车,谢谢!”播送完毕,计费器开始计费②.按下“SpeedUp”键,出租车加速行使,最高速为 100Km。
③.按下“SpeedDown”键,出租车减速行使,最低速为 0Km④.在行使状态下,按下“start/stop”键,表示出租车到站,结束行使这时候,系统播放“您好!行使里程 XXX公里,应付 XXX 元,请检查您的随身物品,欢迎再次乘坐,再见!”的提示音⑤.按下“Reset”键,进入空车状态 ⑷⑷.中文菜单显示功能.中文菜单显示功能①.在空车状态下(启动前) ,LCD 屏幕上显示如下的中文信息:2 20 00 07 7 x xx x x xx x x xx x x xx x x xx x >第 5 页 共 21 页②.在空车状态下,按下“start/stop”键,系统播放“您好!欢迎乘坐本公司出租汽车,谢谢!”的提示音,同时在 LCD 屏幕上显示如下的中文信息:③.播完提示音后,进入行使状态,LCD 屏幕显示以下信息:④.在行使状态,按下“SpeedUp”键,里程显示的公里数增加的速度会不断的变快,金额数值也在作相应的变化按下“SpeedDown”键,里程显示的公里数增加的速度会不断的变慢⑤.在行使状态,按下“start/stop”键,表示出租车到站,结束行程。
这时屏幕显示以下信息:同时,系统播放“您好!行使里程 xxx.xx 公里,应付 xxx.xx 元,请检查您的随身物品,欢迎再次乘坐,再见!”的提示音⑸⑸.实时时钟功能.实时时钟功能本系统采用两种方法实现日历时钟:(1)用实时时钟芯片-FC8563 作为时钟电路,产生年/月/ 日/时/分/秒等信号,供系统调用2)用单片机中断的方法产生年/月/日/时/分/秒等信号3)两种方法由同学自行选择 !2 20 00 07 7 x xx x x xx x x xx x x xx x x xx x >7 7. . 0 0 x xx xx x. . x xx x x xx xx x. . x xx x 第 6 页 共 21 页⑹⑹.本系统设置.本系统设置 4 4 个按键,各个按键的功能如下:个按键,各个按键的功能如下:(1)“start/stop”键—开始进入行使/结束行使(到站) 2)“SpeedUp”键—行使加速按键按下次按键,可使出租车的速度由 0Km 上升到100Km3)“SpeedDown”键--行使减速按键按下次按键,可使出租车的速度由 100K 下降到0Km。
4)“Reset”键--进入空车状态⑺⑺电路电路设计原理图设计原理图第第二章二章 硬件设硬件设计:计:⒈⒈ 主主程序程序/CPU/CPU模块模块⑴⑴ 主主程序程序/CPU/CPU电路图及说电路图及说明明该模块1234ABCD4321DCBATitleNumberRevisionSizeA4Date:13-May-2007Sheet of File:E:\study\pic\graduation design\PIC三三三三三三三三三三三三三三\CHUZ UC~11.DDBDrawn By:Y1C1 22PC2 22PC3 104vccA01A12A23A34A45A56A69A710PL AYL23PL AYE24REC27RECL ED25XCLK26Vccd28Vcca16Vssd12Vssa13SP+14SP-15ANA IN20ANA OUT21MIC RE F18MIC17AGC19NC7NC8NC11NC22U3 ISD1420R6 100KR7 100KR8 100KC7 0.001uFR9 1KL1 LE D1C8 104C10 104C9 104C13 4.7uFC11 220uFC12104R12 5.1KR1110KR14 470KR10 1KR13 10KMCLR1RA0/AN02RA1/AN13RA2/AN24RA3/AN35RA4/TOCK16RA5/AN47RE0/AN58RE1/AN69RE2/AN710VCC11GND12OSC113OSC214RC015RC116RC217RC3/SCL18RD019RD120RD221RD322RC4/SDA23RC5/SDO24RC6/TX25RC7/RX26RD427RD528RD629RD730GND31VCC32RB0/INT33RB134RB235RB3/PGM36RB437RB538RB6/PGC39RB7/PGD40U1 PIC16FB77ARECPL+SPKMIC1 2 3 4 5 6J11 2 3J2 JMP1 VCC三 三 三 三三 三 三 三三 三 三 三三三三三三三三三三三三1 2 3 4 5 6 7 816 15 14 13 12 11 10 9S1 SW DIP-8MCLRR147K1 2 3 4 5 6 7 8 9RT1 10KVCCGND1 VCC2V03D/I4R/W5E6DB07DB18DB29DB310DB411DB512DB613DB714PSB15NC16RST17NC18LEDK_GND19 LEDA_+5V20J3 TG12864INT3X22X11GND4SDA5SCL6CLKO UT7VCC8U4 PCF8563Y2 32KVCCBT1 3.3VR2 10KR3 10KR4 10KVCCA1B2Q03Q14Q25Q36GND7CLK8MR9Q410Q511Q612Q713VCC14U2 74HC164TRIG2Q3R4CVolt5TH。
