




已阅读5页,还剩66页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于AT89C52单片机的出租车计价器的设计 摘 要随着城市改革开放的进一步深化,出租车行业迅速发展,出租车计价器的市场需求量也大大增加,计价器作为出租车的一个重要组成部分,计价器的普及必将大势所趋,预计未来计价器市场将很有发展前景。与此同时计价器作为出租汽车的经营者和乘坐出租汽车的消费者之间用于公平贸易结算的工具,计价器计价准确与否,直接关系到经营者和消费者的经济利益。因此怎样设计出一种既能准确计价又能方便司机的计价器尤为重要。本课题是出租车计价器系统的设计。以出租车计价器的实用性和节约成本为起点出发,以AT89C52 单片机为中心、通过霍尔传感器对脉冲的计数实现对里程和总金额的统计,人机交互界面输出采用LCD1602液晶屏。独立按键进行复位、清零、白天黑夜模式选择功能的控制,本电路设计的计价器不但能实现基本的计价,掉电时进行数据存储,而且还能根据白天、黑夜、中途等待来调节单价,进行里程、单价、总车价相关信息的显示。关键词:单片机,出租车计价器,DS1302,AT24c02,LCD1602Based on AT89C51 taxi meter design AbstractWith the further deepening of reform and opening up of the city, the taxi industry rapid development, the taximeter market demand also increased significantly, as an important part of the taxi meter, the meters popularity is bound to the trend of the times, it is expected that the future meter the market is promising. At the same time the meter as taxi operators and taxi consumer tools for fair trade settlement, the accuracy of the meter denominated, directly related to the economic interests of operators and consumers. Therefore, how to design a both accurate pricing but also convenient for the drivers meter is particularly important.The issue is the design of the taxi meter system. Taxi meter practicality and cost savings as the starting point, AT89C52 microcontroller as pulse count on the mileage and the total amount of statistics, interactive interface output LCD1602 LCD. Independent button reset, clear, day and night control mode selection function, the meter circuit design not only to achieve the basic pricing, but also according to the day and night, half-way wait to adjust the unit price, mileage, price, gross vehicle price-related information.Keywords: single-chip,LCD1602, Taximeter ,Hall sensor,AT24C02目 录摘 要I关键词IAbstractIIKeywordsII第一章 绪论11.1 选题的目的和意义11.2出租车计价器的发展史11.3 国内的一些研究成果2第二章 出租车计价器的方案论证32.1 出租车计价器的功能要求32.1.1出租车计价器的基本功能32.1.2 出租车计价器的主要功能32.2 方案论证42.3 系统工作原理5第三章 出租车计价器的硬件设计63.1 单片机的介绍63.2 单片机最小系统73.2.1 电源供电模块83.2.2 复位电路83.2.3 晶振电路83.3 掉电存储模块的设计93.4 时钟电路模块设计93.5 路程测量电路模块设计103.5.1 霍尔传感器简介103.5.2 里程计算计价单元的设计103.6 显示电路的设计113.6.1 LCD1602简介113.6.2 显示电路的硬件设计123.7 按键电路的设计12第四章 出租车计价器的软件设计144.1 模块介绍144.2 主程序模块144.3 里程计数中断服务程序模块154.4 中途等待中断服务程序模块164.5 显示程序模块164.6 按键服务程序模块17第五章 系统调试195.1 软件调试195.1.1 仿真调试195.1.2 里程计价测试195.1.3 掉电存储模块测试21心得体会22参考文献23致谢24附录25 23 第一章 绪论1.1 选题的目的和意义随着我国经济的迅速发展,各大城市涌现出了大量的出租车行业,出租车行业已经是城市公共交通的重要组成部分,成为人们生活、工作必不可少的交通工具,发挥着重要的作用。显然,出租车行业已经在我国的交通运输占据着重要的地位,作为衡量乘客与出租车司机之间利益的重要工具计价器,已经发挥着不可取代的作用吕晶.出租车计价器常用的作弊手段及查处方法.计量与测试技术,2007.34(4):34。出租车计价器是出租车服务行业里必不可少的计量工具,出租车必须在配备由出租车运营公司统一认定的出租车计价器后才能投入运营。现阶段的出租车计价器,可以根据行车里程和等待时间进行计价并且还可以通过判断白天、黑夜来自动调整起步价,除此之外,计价器还可以实时显示日期,提供空牌指示灯,方便乘客寻找空车 怀心东,纪占北.出租车计价器功能要改进J.企业标准化,2007,25(6):38.。作为出租车运营商与广大乘客之间经济利益的直接衡量工具,它的性能好坏,直接关系到运营者与广大乘客之间的经济利益。出租车计价器是出租车司机与广大乘客之间经济利益的衡量工具,它是整个出租车行业发展的里程碑,具有高性能、高稳定性的计价器对广大出租车司机以及广大乘客来说,都非常重要。由于技术上的原因,现阶段的计价器并不完善,但不管现在还是将来,出租车计价器都具有着重要的研究及应用价值。1.2出租车计价器的发展史改革开放以后,我国开始兴起出租车行业,那时候的出租车行业主要集中在北京、上海大城市,随着改革开放的深入发展,我国出租车行业的发展也逐渐加快。最早的出租车计价器大部分是由台湾生产,随后,国内的机械厂商开始推出国产出租车计价器,我国第一家出租车计价器制造厂是重庆重机厂。多年来,国内外出租车计价器构造单一,且基本上为纯机械构造,只具备单一的计程功能,在当时,只能算作一个里程表来使用,并没有计价功能,需要出租车司机自己进行计算,显得很繁琐。随着科学技术的发展,尤其是电子产业的发展,产生了手摇计算机与机械结合的半电子半机械化的计价器,此时,它能完成计价与计程工作,比上一代计价器多了计价功能,因此,被人们称为第二代出租车计价器。后来,随着集成电子产业的发展,市场上又陆续出现了纯电子器件构造的出租车计价器,这种计价器不管在功能上,还是在稳定性上,都要出色的多,因此,全电子化的计价器很快取代了半电子化的计价器,成为现在出租车运营商广泛应用的出租车计价器。计价器的功能不断完善,不仅能够完成计价工作,还能实时显示日期、播报、打印数据单等功能,纯电子器件构造的出租车计价器的广泛应用,促进了出租车行业的发展,推动了整个交通行业的发展,为人们的出行带来了极大的方便1.3 国内的一些研究成果目前国内的研究成果很多,在此主要列出两篇与本设计相关的研究成果。1.陈伟宏在论文“基于单片机的多功能出租车计价器的设计“在对系统可行性进行分析总结后,提出将AT89C52用于出租车计价器的设计,阐述了利用单片机作为出租车计价器主控器的思想,并对整个设计过程进行了仿真。仿真结果显示,该计价器不仅能完成计价计程的工作,还能够实时显示时间、存储、打印、语音等功能,并且还可以防止司机作弊。与已有的系统相比,该计价器所具有的功能更完善,更强大,性能更可靠陈伟宏.基于单片机的多功能出租车计价器的设计J.现代电子技术,2008(16):1617.。2.杨世品、陈林在“基于PROTEUS的单片机出租车计价器的设计”中,将出租车计价器的的整个设计电路用PROTEUS进行仿真,提高了出租车计价器设计研发的效率,同时,推动了单片机应用系统以及电子电路的发展。在整个设计过程中,PROTEUS软件在实际应用系统开发中所体现的实用性以及有效性上得到广泛认可杨世品.基于Proteus的单片机出租车计价器的设计J.微计算机信息,2007(11):44. 第二章 出租车计价器的方案论证2.1 出租车计价器的功能要求要完成出租车计价器的设计与制作,需要确定出租车计价器具备的基本功能以及功能参数。2.1.1出租车计价器的基本功能出租车计价器的主要功能有:系统的复位操作、白天/晚上起步价的转换、计程计价、等待时间、日期、空车指示灯,数据保存。在此基础上,还添加了防作弊模块,可以有效地防止奸商,维护乘客的利益。当出租车载人后,司机按下计价启动键,车轮开始转动,里程传感器开始采集信号并输出脉冲,并将脉冲传到主控器,主控器接收脉冲并对脉冲信号计数,并计算出行驶路程及总金额,最后将结果送到显示电路进行显示。2.1.2 出租车计价器的主要功能出租车计价器主要功能有三种,分别为计费、显示、按键。计价主要包括起步价、里程计费、等待时间计费三部分,计价的范围是0-999.9元,精确到0.1元。由霍尔传感器检测车轮转数,以此来计算里程数并计算总金额。利用LCD1602液晶显示器对里程、总金额,日期、单价等数据进行显示。按键可以对各个参数进行调整以确保显示正确的信息,并控制计价器的运行。以下为对各个功能的详细介绍:1、计费功能总金额的计算是根据行驶里程与等待时间来进行的。在不同的时间段有不同的起步价,一般设6点到22点起步价为7元, 22点到第二天6点起步价为8元,在起步公里内,不计入等待时间。(1)当行驶里程3km时,按1.5元/km计算总金额。(3)等待累计时间1min时,按1元/min计费。2、显示功能本设计显示部分由两个界面组成,第一界面为主界面,是在没有计费情况下显示信息。第二界面为工作界面,显示的是在出租车计价状态时的信息。主界面显示的信息包括:显示时间:包括年月日时分秒以及周。显示出租车所在地区以及Taxi工作界面显示的信息包括:(1)显示行驶里程:显示方式为“XXX.X”,单位为km。计程范围0-999.9km,精确到0.1km。(2)显示等候时间:显示方式为“XX:XX”。计时范围0-59min,精确到1 Second。(3)显示总费用:显示方式为“XXX.X”,单位为元。计价范围0-999.9元,精确到0.1元。(4)显示行驶和等待单价:显示方式为$-X.X,精确到0.1元。(5)显示时间:显示方式为XX:XX:XX。3、按键功能具有计费开始、结束、价格日期调整等功能。2.2 方案论证论文所讨论的是将MCS-51系列单片机作为整个系统的控制中心,控制外围电路完成一定的功能。在外围电路中,将LCD1602液晶显示器作为显示器,显示价格里程等信息,采用DS1302时钟芯片为系统提供实时时间,采用AT24C02掉电存储芯片来保护重要信息 舒涛,伍远超.基于AT89S51单片机的出租车计价器系统设计.现代电子技术.2010(22):5759.,防止断电丢失,通过按键可以控制整个系统的运行,并且可以调整各个显示参数。图2.1是出租车计价系统的原理框图。电源电路单片机指示灯里程传感器按键电路掉电存储电路液晶显示时间电路时钟电路图 2.1 系统原理图2.3 系统工作原理主控器提前被写入程序和数据信息,根据设定,主控器依据时间(白天和黑夜)自动调整起步价,并对传感器传来的信号进行计数并计算。在整个系统工作过程中,主控器通过外部中断T1来获取脉冲信号。 论文的重点是对主机模块的设计,主机模块协调各个模块工作,将各个模块的功能进行分配并将各个模块的信息送达显示模块进行显示。显示模块主要由显示电路构成,主要完成对时间、日期、单价、总金额等信息的显示。其中,选用时钟模块来提供准确的时间,采用掉电存储模块存储设置信息,里程电路模块完成对信号的采集,并将信号送达主机模块处理。按键模块可以对各个模块的参数进行调整,调整的过程可以通过显示模块进行显示,还可以控制整个系统的运行。 第三章 出租车计价器的硬件设计3.1 单片机的介绍 AT89C52是一款低功耗、高稳定性、高性价比的单片机,它是由美国ATMEL公司研发并投入生产,其内部拥有4KB 存储空间并且拥有Flash只读程序存储器,它的擦写次数可达到1000次,内部采用高密度、非易失性存储器技术,并且能很好的兼容其他MCS-51单片机。MCS-51单片机内部采用国际上通用的8位中央处理器和ISP Flash存储单元,具有高性能的AT89C51可以作为许多嵌入式控制应用系统的首选芯片 窦振中.PIC系列单片机原理和程序设计M.北京:北京航空航天大学出版社,1998.。因此,在论文中,我们将讨论以AT89C52作为主控器的系统构成。AT89C52单片机与其它MCS-51系列的单片机引脚完全兼容陈小忠.单片机接口技术实用子程序M.北京:人民邮电出版社,2005.。AT89C52的引脚如图3.1所示。 图 3.1 单片机引脚单片机各引脚功能如下:VCC:电源电压。GND:地。P0:P0口是8位的双向I/O接口,由漏极电路组成。P0口可以作为地址或数据总线口使用。当有外部的程序或者数据需要被读取时,这时P0口就分时转换数据和地址总线复用,在读取外部数据时,由于P0口内部没有上拉电阻,所以需要外加上拉电阻。P1、P2口:其内部都具有上拉电阻的8位双向I/O接口,当访问外部数据存储器时,作为数据总线口使用,当访问外部16位地址的程序存储器时,作为地址总线口使用,其中,P2口送出高8位地址。 P3口作I/O口时与P1、P2的功能一样,P3口还有特殊功能,P3口的特殊功能如表3.1所示。表 3.1 单片机P3口功能端口引脚第二功能 P3.0RXD(串行输入口) P3.1TXD(串行输出口) P3.2(外部中断0) P3.3(外部中断1) P3.4T0(定时器0的外部输入) P3.5T1(定时器1的外部输入) P3.6(外部数据存储器写选通) P3.7 (外部数据存储器读选通)RST:复位输入端。系统正常工作状态下,该端口应该保持低电平。需要对系统复位时,对RST引脚接入连续两个机器周期的高电平即可复位。ALE/ : 地址锁存端口。该端口可以对地址的低8位进行锁存。另外,该端口还可以作为编程脉冲的输入端口。/VPP:外部访问允许端口。该端口为低电平时,表明单片机正在访问外部存储器。 EA 端为高电平时,单片机不访问外部存储器。:程序存储允许端口。3.2 单片机最小系统单片机的最小系统由电源供电模块、复位电路模块、晶体振荡电路模块组成。3.2.1 电源供电模块计费系统的设计应该是直接可以在出租车上应用,所以,不能采用220V的交流电,而应该采用直流电压,由于实验条件限制,本次直接采用5V的直流输入电压。3.2.2 复位电路此次设计采用的复位操作方式是按键复位方式。主要由电源、电容、独立开关键以及10K电阻组成。其中,10K电阻主要是起分压限流的作用,而10uF电容则是为了实现上电复位操作。若要复位只需按一下独立开关键S1就能完成复位。RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。 按键复位电路模块如图3.2所示。 图 3.2 按键复位电路3.2.3 晶振电路单片机内部各个部件必须同步工作,故必须参照唯一时序来工作。时序是由时钟信号产生的,而单片机的时钟分为内部和外部两种,本设计采用的是内部时钟。本设计中用到的时钟信号是由微调电容(20pF)和晶振(12MHZ)构成的自激振荡器产生的晶振电路如图3.3所示。图 3.3 晶振电路3.3 掉电存储模块的设计出租车司机每次在启动出租车计价器的时候,计价器的价格等信息都会被重置,因此给出租车司机带来了很多麻烦。对计价器系统添加一个掉电存储模块,之前设置好的数据在掉电时候就会保存,故避免了每次上电需要重新设置的麻烦。在此次设计中采用了AT24C02芯片。AT24C02芯片是一款大存储容量的记忆芯片,它的内部采用两线串行的总线和单片机进行通信。在不受损坏的情况下,其保存的资料可以保存40年以上,外部为8引脚的DIP封装,便于保存和安装。掉电保护电路如图3.4所示。图 3.4 掉电存储电路3.4 时钟电路模块设计 在此次设计中,还为出租车计价器添加了实时时钟,该时钟可以为系统自动调整价格提供一个时间基准,准确性要求高,所以一款高稳定性的时钟芯片显得尤为重要。 DS1302是一款高性能、低功耗的实时时钟芯片赵亮.实时时钟芯片DS1302的应用J.电子制作,2005(10):3738.,它采用SPI三线接口与单片机之间进行同步通信,可以实时为系统提供年、月、日、时、分、秒,并且还可以进行修改。在对DS1302设置好基本信息后即可工作。时钟电路如图3.5所示。 图3.5 时钟电路3.5 路程测量电路模块设计路程测量的原理是传感器对车轮的转动进行检测,并以脉冲的形式发送到主控器端,主控器收到的脉冲和对脉冲进行计数,通过计算,得出里程,总金额等信息 叶建针.出租车计价器防作弊技术与预防措施.科技信息科教前沿,2011(19):7982.。在本设计中,霍尔传感器A44E对车轮转动检测。3.5.1 霍尔传感器简介霍尔传感器,是一种基于霍尔效应的传感器件,它具有很多其他类型传感器不具备的优点,它的体积小,高性能、低功耗、频率高、耐腐蚀、波形输出稳定、并且安装非常方便。霍尔传感器A44E属于单极性霍尔开关电路,其工作温度在-40度至85度之间 ,它的输出电压为数字信号,并且符合TTL电平标准,主控器可直接连接到I / O口,它的最高检测频率可达1兆赫兹杨继生,刘芬.霍尔传感器A44E在车轮测速中的应用研究.电子测量技术.2009,32(10):100-102.。集成霍耳开关外形及接线如图3.6所示。 图3.6 集成霍耳开关外形及接线3.5.2 里程计算计价单元的设计里程计算是对控制器对传感器传送来的脉冲计数,出租车车轮每转一周(周长为95cm),传感器就输出一个脉冲,主控器通过P3.3口接收脉冲并对脉冲进行计数,依据公式MileAge= MileAge+19/2计算出里程数,然后程序再根据里程以及等待时间,计算出总金额,并送达显示电路显示。霍尔传感器A44E对车轮检测的工作原理如图3.7所示。P3.3 单片机小磁铁霍尔传感器图 3.7 A44E传感器工作原理此次的设计为里程检测电路添加了防作弊功能,在A44E的电源输入端和信号的输出端均添加了P521光偶器件,如图3.8所示,只有控制器输出允许信号时,A44E才变为工作状态,对车轴转数进行检测,然后通过光耦器件将信号输出。防作弊电路阻止了不法出租车司机的作弊行为,有效的维护了乘客的利益。图 3.8 A44E防作弊电路3.6 显示电路的设计3.6.1 LCD1602简介显示部分包括起步价、日期、单价、总金额、里程、等待时间等信息。此次设计中,显示模块采用的是LCD1602液晶显示器 乔雅,周思浩.出租车计价器的设计J.信息通信,2014(2):62.。液晶显示是一种极低功耗的显示器件,可以显示各种文字、汉字,还可以自定义显示内容,而且占用的I/O口少,有效节约了系统的资源,使整个系统更加简洁,并且成本低廉。LCD1602液晶显示器可以显示16*2个字符,它的正常工作电压在4.5至5.5V之间,额定工作电流为2.0mA, 字符尺寸为2.95*4.35(W*H)mm。LCD1602的各个引脚功能如表3.2所示。表 3.2 LCD1602引脚说明编号符号引脚说明编号符号引脚说明1 VSS 电源接地9D2 DATAI/O2 VDD 电源正极10D3 DATAI/O3 VL 液晶显示偏压信号11D4 DATAI/O4 RS 数据命令选择端(H/L)12D5 DATAI/O5 R/W 读写数据端(H/L)13D6 DATAI/O6 E 使能信号14D7 DATAI/O7 D0 DATAI/O15BLA 背光源正极8 D1 DATAI/O16BLK 背光源负极3.6.2 显示电路的硬件设计根据LCD1602液晶显示器的基本工作参数以及各个端口功能,设计的显示电路如图3.9所示。 图 3.9 显示电路设计3.7 按键电路的设计设计一共采用五个按键,其电路如图3.10所示。图 3.10 按键电路按键功能:KEY1键:出租车在处于非计价状态下,按下KEY1键,可以对日期,单价等信息作调整,当计价器处于计价状态时候,该键失效。KEY2键:当KEY1键按下时,通过该键,对要调整的参数进行选择。KEY3键:数据调整中的+键。KEY4键:数据调整中的-键。KEY5键;计价器启动键/退出键,同时也是设置退出键,保存设置值。 第四章 出租车计价器的软件设计4.1 模块介绍该系统主要由主程序模块,里程计数器中断服务程序模块,中途等待中断程序模块,显示程序模块,键盘服务程序模块组成12。以下为对每个模块的描述。开始 初始化读取单价起步价等根据时间选择模式读DS1302 键盘扫描夜间模式白天模式键盘子程序返回图 4.1 主程序流程图4.2 主程序模块主程序模块的任务,是协调各个模块的工作,并对每一个模块完成芯片初始化工作。当计价器工作的时候,主程序模块需要根据时钟模块提供的时间判断当前计费模式(6点到22点为白天计价模式,22点到第二天6点为夜间计价模式),并且判断行驶路程是否在三公里(起步价7元或8元三公里)之内,若在三公里之内,则按照起步价计算总金额,若超过三公里,则按照起步价加上超出三公里部分的金额再加上等待时间金额进行计算,将时间,金额,里程,价格等信息发送到显示电路13。当乘客到达目的地,按下停止按钮,总金额,里程,等候时间等信息将显示在显示器上,在交易完成后,出租车司机按下清零键,主程序模块对各个模块重新初始化,为下一次启动做好准备。主程序的流程图如上图4.1所示。设置状态等待是否中断NY不处理是否作弊YN累加器+1计算里程、价格显示结束图4.2 里程中断计数服务流程图4.3 里程计数中断服务程序模块每次霍尔传感器A44E传来脉冲信号,在控制器允许的情况下,就会引起控制器中断,控制器转向处理中断子程序,中断子程序根据设定好的车轮周长计算出里程数,并将结果送达显示电路。如果未经控制器允许传感器就传送来脉冲,则视为作弊,不予处理14。里程计数中断流程如上图4.2所示。4.4 中途等待中断服务程序模块当控制器在计价状态下时,控制器内的定时器也随之启动并将等待时间设为1秒。如果霍尔传感器在1 秒之内没有传来脉冲信号,那么就进入等待金额计算公式(中途等待价为1.2元/分钟),并且将等待时间送达显示电路显示15。当霍尔传感器又重新有脉冲信号输入时,表明出租车开始行驶,控制器就转到里程计价模式,并且记录当前等待时间。中途等待终端服务流程图如图4.3所示。计数初始化 等待N进入中断Y计数并开启等待时间返回图 4.3 中途等待中断服务流程图4.5 显示程序模块LCD1602液晶显示器自带字符库它可以显示16*2个字符,当控制器将信息送达显示电路显示时,首先需要判忙,确定空闲后,控制器首先写入命令,对字符的位置进行设置,在对LCD1602设置完毕后,再写入数据,将总金额、里程、日期等信息显示出来。液晶显示程序流程图如图4.4所示。 显示写完P0.7=0LCD判忙写数据设置字符位置 LCD判忙写数据LCD初始化开始 P0.7=0 是否 是 写完 否 是 图 4.4 显示服务程序流程图4.6 按键服务程序模块主程序来控制整个系统的运行,设计采用键盘查询方式,主程序模块上,不断检查按键是否按下,当按下一个键,主程序转向相应的子程序处理。按键处理流程如图4.5所示。开始初始化否有键按下否 求键值 是根据按键转到对应程序键5处理程序键1处理程序键2处理程序 图 4.5 键盘处理流程图 第五章 系统调试根据系统的设计方案,系统的调试分三个部分:软件调试、硬件调、软硬件联合调试16。因为系统采用了模块设计的方法,所以在调试中就显得很方便,可以对各个模块单独调试。5.1 软件调试5.1.1 仿真调试设计中,编程软件采用了KEIL软件,编程语言为C51。调试用的软件为Proteus软件。1、打开Proteus软件,建立工程,根据要求将各个元器件进行连接并命名和赋值,连接完成确认无误后保存电路图。2、程序在KEIL软件上运行成功后,将生成的Hex文件下载到Proteus中的仿真单片机中。3、运行仿真,并根据仿真结果不断对各个程序模块进行调试,直到仿真结果正确。下图是调试成功后的出租车计价器的硬件仿真原理图,如图5.1所示。 图 5.1 硬件仿真原理图5.1.2 里程计价测试由于实验条件所限,我们使用了一个直流电动机来代替轮子,一个3V直流电源,马达速度可以达到每分钟几千转,因此适合模拟真实情况下的车轮,假设电机每转一圈车轮转动95厘米,大约在100多转后,表示行驶过0.1公里,这时系统就将里程数,金额等信息送达显示电路显示。里程计价测试准确度,测试白天模式下(起步价7.5元三公里)总金额与里程数的理论值与实际值。如表5.1所示。表 5.1 白天测试公里单价1.5246 10 15 25总金额理论7.59.512.01825.540.5实际7.59.512.01825.540.5 路程理论246101525实际246101525晚上模式下(起步价8元三公里)总金额与里程数的理论值与实际值。如表5.2所示。表 5.2 晚上测试公里单价1.5 2 4 6 10 15 25总金额 理论 7.5 9.5 12.018.0 25.5 40.5 实际 7.59.512.018.025.5 40.5行驶路程 理论 2 4 6 10 15 25 实际246101525中途等待价格测试。表5.3的内容是在起步价为7.5,等待单价为1元每分钟元情况下,出租车行驶5公里后进入等待状态的测试值。表 5.3 等待时间测试 时间 当前金额1 2 4 6 8 10总金额 理论011.513.515.517.519.5 实际 011.513.515.517.519.5测试数据分析: 通过以上三个表的数据,实际值与理论值的相差并不大,在允许误差范围之内,达到设计要求。5.1.3 掉电存储模块测试表5.3 掉电存储模块测试白天起步价晚上起步价中途等待单价掉电前数据 7.5 8.0 1.0重新上电后数据 7.5 8.0 1.0如表5.3所示,经测试,掉电存储模块能够准确还原出掉电前数据,达到设计要求。 心得体会 参考文献李小瑾.出租车计价器常见作弊手段分析及防范J.中国新技术新产品报,2012,12(145):3638.2毛世英.如何调教出租车计价器J.计量与测试技术,2010,8(2):2021.3陈伟宏.基于单片机的多功能出租车计价器的设计J.现代电子技术,2008(16):1617.4徐良雄.出租车计价器的设计与分析J.仪器仪表,2012,3(23):6163.5李学军.基于PIC单片机的多功能出租车计价器设计Js.仪表技术,2010,(2):3638.6吕晶.出租车计价器常用的作弊手段及查处方法.计量与测试技术,2007.34(4):347怀心东,纪占北.出租车计价器功能要改进J.企业标准化,2007,25(6):38.8翟敏焕.基于单片机的出租车计价器设计J.现代计算机报,2014,1(1):6467.9杨继生,刘芬.霍尔传感器A44E在车轮测速中的应用研究J.电子测量技术.2009,32(10):100102.10舒涛,伍远超.基于AT89S51单片机的出租车计价器系统设计.现代电子技术.2010(22):5759.11窦振中.PIC系列单片机原理和程序设计M.北京:北京航空航天大学出版社,1998.2陈小忠.单片机接口技术实用子程序M.北京:人民邮电出版社,2005.3赵亮.实时时钟芯片DS1302的应用J.电子制作,2005(10):3738.4 叶建针.出租车计价器防作弊技术与预防措施J.科技信息科教前沿,2011(19):7982.5 徐良雄.出租车计价器的设计与分析J.仪器仪表,2012,3(23):6163.6乔雅,周思浩.出租车计价器的设计J.信息通信,2014(2):62. 致谢 附录#include #include #include /*端口定义*/sbit Key1 = P00;sbit Key2 = P01;sbit Key3 = P02;sbit Key4 = P03;sbit Key5 = P04;sbit P10 = P10;sbit P16 = P16;sbit P33 = P33;sbit P17 = P17;unsigned char count;unsigned long MileAge = 0;unsigned char BasiKPrice1 = 80;unsigned char BasiKPrice2 = 70;unsigned char UnitPrice = 12;unsigned char InterVal = 10;unsigned int Waittime = 0;unsigned int totalPrice = 0;unsigned int WaitMinute = 0; unsigned int WaitSecond = 0;unsigned int signal = 0;#define uchar unsigned charsbit RS = P05;sbit RW = P06;sbit E = P07;#define LCD_Data P2 #define Busy 0x80 unsigned char code Table=0,1,2,3,4,5,6,7,8,9;sbit DS1302_CE = P35;sbit DS1302_SCLK = P36;sbit DS1302_IO = P37;unsigned char second,minute,hour,week,day,month; unsigned int year;#define WriteDeviceAddress 0xa0 #define ReadDviceAddress 0xa1sbit SCL=P14;sbit SDA=P15;/*函数声明*/void ReadBusy();void Write_LCD(unsigned c);void WriteCom_LCD(uchar Cdata,uchar c);unsigned char Read_LCD(void);void Init_LCM(void);void DisOneChar(unsigned char X,unsigned char Y,unsigned char Data);void DisListChar(unsigned char X, unsigned char Y, unsigned char code *Data);void price();/*延时函数*/void Delay(unsigned char m) unsigned char i; for(;m0;m-) for(i=124;i0;i-) ; void delay1() /延时 unsigned char i=10; while(-i);/外部中断1int1() interrupt 2int n;n+; EA = 0; P10 = 1; if(n=20) n=0; P16=P16;delay1();if(P33 = 0) MileAge=MileAge +19/2; count = 0; signal=0; P10 = 0; EA = 1; /定时器中断0 内部定时器溢出后跳入中断子程序void t0(void) interrupt 1 using 0 EA = 0; TH0=(65536-50000)/256; TL0=(65536-50000)%256; count+; if(count = 20) count = 0; WaitSecond+; signal=1; if(WaitSecond=60) WaitSecond=0;WaitMinute+; EA = 1;/*以下是液晶驱动程序*/*检测LCD忙*/*void ReadBusy() LCD_Data=0xff; RS=0; RW=1; E=1; _nop_(); _nop_(); _nop_(); while(LCD_Data & Busy); E=0; */ /*写数据*/void Write_LCD(unsigned c) /ReadBusy(); Delay(5); E=0; RS=1; RW=0; LCD_Data=c; E=1; _nop_(); E=0;/*写指令*/void WriteCom_LCD(uchar Cdata,uchar c) if(c = 1) /ReadBusy(); Delay(5); E=0; LCD_Data=Cdata; RS=0; RW=0; E=1; _nop_(); E=0;/*LCD初始化*/void Init_LCM(void) LCD_Data = 0x00; Delay(5); WriteCom_LCD(0x38,0); Delay(5); WriteCom_LCD(0x38,0); Delay(5); WriteCom_LCD(0x38,0); Delay(5); WriteCom_LCD(0x38,1); Delay(5); WriteCom_LCD(0x08,1); Delay(5); WriteCom_LCD(0x01,1); Delay(5); WriteCom_LCD(0x06,1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司洗白策划方案
- 公司摸奖活动方案
- 公司聚合力活动方案
- 公司组织生日活动方案
- 公司老员工活动方案
- 公司法治维安年活动方案
- 2025年艺术史与理论重要考点试卷及答案
- 2025年信息技术应用能力测评考试试卷及答案
- 2025年消防工程师职业考试试卷及答案
- 2025年心理健康评估师资格考试试题及答案
- 水资源利用与保护智慧树知到期末考试答案章节答案2024年山东建筑大学
- 光伏发电技术项目投标书(技术标)
- 夜市应急方案及措施
- 中小学智慧校园项目应急预案
- 2024-2025年上海中考英语真题及答案解析
- 《网架结构》课件
- 黑恶线索核查线上培训课件
- 虚拟货币与数字资产交易培训资料
- 电梯维保服务投标方案
- 2023年资产负债表模板
- 01SS105给排水常用仪表及特种阀门安装图集
评论
0/150
提交评论