首页 基于单片机的出租车计价器的设计

基于单片机的出租车计价器的设计

举报
开通vip

基于单片机的出租车计价器的设计...本科毕业论文题目基于单片机的出租车计价器的设计学院信息科学技术学院专业电子信息工程毕业届别2015届姓名董胜斌指导教师王钧职称讲师目录TOC\o"1-3"\h\u摘要3关键字3Abstract4Keyword41.绪论51.1研究背景:51.2研究意义51.3研究内容61.3.1系统的主要功能61.3.2方案论证与比较62.系统总体设计82.1硬件设计82.2软件设计83.硬件设计93.1STC89C52单片机介绍93.2单片机各引脚功能说明93.3振荡电路设计113.4复位电路设计123.5键盘接口电路设计...

基于单片机的出租车计价器的设计
...本科 毕业论文 毕业论文答辩ppt模板下载毕业论文ppt模板下载毕业论文ppt下载关于药学专业毕业论文临床本科毕业论文下载 题目基于单片机的出租车计价器的设计学院信息科学技术学院专业电子信息工程毕业届别2015届姓名董胜斌指导教师王钧职称讲师目录TOC\o"1-3"\h\u摘要3关键字3Abstract4Keyword41.绪论51.1研究背景:51.2研究意义51.3研究内容61.3.1系统的主要功能61.3.2 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 论证与比较62.系统总体设计82.1硬件设计82.2软件设计83.硬件设计93.1STC89C52单片机介绍93.2单片机各引脚功能说明93.3振荡电路设计113.4复位电路设计123.5键盘接口电路设计123.6显示电路设计133.6.11602LCD的基本参数及引脚功能133.6.2显示模块采用1602液晶显示接口电路154.软件设计164.1单片机资源使用164.2单片机软件模块设计164.2.1中断子函数164.2.2判键子函数164.2.3显示子程序174.3总程序流程框图184.4.使用软件proteus的介绍195.系统测试215.1计价器模式测试215.2计价器计价参数测试225.3计价器稳定性测试226.总结23参考文献24致谢25附录1元件清单26附录2原理图27附录3单片机程序28基于单片机的出租车计价器的设计董胜斌(甘肃农业大学信息科学技术学院电子信息工程董胜斌甘肃-兰州730070)摘要:随着经济的发展,以及城市的发展,带动了出租车行业的快速发展,使出租车成为我们日常生活中不可缺少的交通工具,了解和研究出租车上应用的计费原理及计费系统,对我们日常生活也有帮助。而使用单片机实现出租车计价系统,是学习和深化单片机应用的较好途径。本系统将会提高我们用C语言编写程序的能力、对C语言的实际应用有更深的了解,单片机应用系统设计综合能力的训练、培养我们 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 问题和解决问题的能力。对我们以后的工作招聘以及参加工作均有一定的帮助。本设计的是一个基于单片机STC89C52的出租车自动计费设计,附有复位电路,时钟电路,键盘电路等。复位电路是单片机的初始化操作,除了正常的初始化外,为摆脱困境,通过复位电路可以重新开始。时钟电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。在上电时字符型液晶1602显示最初的起步价,里程收费,等待时间收费三种收费,通过按键可以调整起步价,里程收费,等待时间收费。通过按键模拟出租车的运行,暂停,停止。在1602液晶上可以显示运行的时间,运行时暂停的时间,通过计算可以得出总共的费用和总的路程。在这里主要是以STC89C52单片机为核心控制器,P1口接1602液晶显示模块。关键字:STC89C52;1602液晶;出租车计费器。ThetaximeterdesignbasedonsinglechipmicrocomputerShengbinDong(Major in ectronic Information Engineering in the College of Science and technology of Gansu Agriculture University,Gansu Lanzhou,730070)Abstract:NowWitheconomicdevelopment,promotesrapiddevelopmentoftheautomotiveindustry,thetaxiincreasinglycommonunderstandinginataxiontheapplicationoftheaccountingsystem,onourdailylivesalsohelped.MCUandtheuseofthesystem,deepentheSCMapplicationisagoodway.Comparisonofatruesimulationofemptytaxis,passengerdepartureandarrivalofthesituationandtheratecalculation,thestatisticsshow,andvoicebroadcastcapabilities.ThesystemimprovethestudentsusetheCprogramminglanguagecapability,microcontrollerintegratedapplicationsystemdesigncapacityoftraining,trainingstudentstoanalyzeissuesandproblem-solvingabilities,thestudentsofrecruitmentandparticipationintheworkarehelpingThedesignisbasedonamonolithicintegratedcircuitSTC89C52taxibillingdesign,withresetcircuit,clockingcircuit,keyboardcircuit.Resetcircuitisinitialized,besidesthenormaloperationoftheinitialdilemma,asaforeigner,throughtheresetcircuitcanstartagain.12MHzadoptstheclockcircuit,asasystemofcrystaloscillator,higherclocksource.Thecharactersinthecrystalthattheinitial1602,charges,feesmileagewaitingtime,threebuttonscanbeadjustedbychargingfees,justwaitingtime,mileage.Throughthesimulationofthetaxi,buttons,stop.SuspensionIntheliquidcrystaldisplaycanrun1602,operationtime,whensuspensioncanbeobtainedbythecomputationofthetotalcost.hereismainlyforthecorecontroller,STC89C52SCMP0mouthafter1602LCDmodule,P1mouthafterthekeys,throughthekeystroke.Keyword:STC89C52;1602LCD;Taxidevices1.绪论1.1研究背景:出租车行业在我国是八十年代初兴起的一项新兴行业,近年来在国内各大城市都发展很快,现在出租车杀过使用的计价器只具备单一的计量功能。现在我国生产计价器的企业有很多家,主要是集中在北京,上海,广州等发达地方。我国的第一家生产计价器企业是重庆市起重机厂,最早的计价器全部采用机械齿轮结构,只能完成简单的计程功能,可以说早期的计价器就是一个简单的里程表。只会显示出租车行驶了多长的距离,而无法准确或者人性化的显示更多的其他信息。随着电子信息技术的发展,产生了第二代计价器。它采用了手摇计算机与机械结构相结合的方式,实现了半机械半电子化。使它在计程的同时还可以完成计价的工作。后来,大规模集成电路的发展又催生了第三代计价器,也就是全电子化的计价器。当单片机出现并应用于出租车计价器后,现代出租车计价器的模型也就初步形成了,它可以实现计程,计价,显示,语音播报等基本功能。随着我国国民经济的高速发展,人民生活水平的日益提高,城市的交通日趋完善,出租汽车已成为城市公共交通的不可分割的重要组成部分,出租车计价器是出租车上必不可少的重要仪器,它是负责出租车营运收费的专用智能化仪表,能根据乘客乘坐汽车行驶距离和等候时间的多少进行计价,并直接显示车费值的重要器具。1.2研究意义采用单片机芯片做的出租车计价器,相对来说功能较强大,用较少的硬件和灵活的软件编程相互配合就能容易的实现设计要求,且灵活性强,可以使用软件编程来实现更多的附加功能,本设计采用STC89C52单片机,附加按键,实现对出租车的多功能的计价设计,输出采用1602LCD液晶显示屏,此设计不仅能实现基本的计价功能,而且还可以根据里程手动修改单价,通过软件实现白天和晚上计价之分,车辆行驶里程通过按键来模拟实现。要将出租车计价系统产品化,应该根据不同的需求进行相应的设计,为了使其对我们生活带来更多的方便,因此研究基于单片机的出租车计价器是有很现实的意义。1.3研究内容1.3.1系统的主要功能本出租车自动计费,上电后显示最初的起步价,里程计费单价,等待时间,通过按键可以调节起步价,里程计费单价,等待时间计费单价。同时具有运行,暂停,停止等状态,可以显示运行里程,同时可以显示等待的时间,具有累加功能,暂停和运行时间在暂停和运行前一次的状态上计时。出租车停止后能够显示行驶的总费用。1.3.2方案论证与比较方案一:采用数字电子技术,利用555定时芯片构成多谐振荡器,或采用外围的晶振电路作为时钟脉冲信号,采用计数芯片对脉冲尽心脉冲的计数和分频,最后通过译码电路对数据进行译码,将译码所得的数据送给数码管显示,以下是该方案的流程框图,方案一如图1-1所示:图1-1方案一方案二:采用EDA技术,根据层次化设计理论,该设计问题自顶向下可分为分频模块,控制模块计量模块、译码和动态扫描显示模块,其系统框图如图1-2所示:图1-2方案二方案三:采用MCU技术,通过单片机作为主控器,利用1602字符液晶作为显示电路,采用外部晶振作为时钟脉冲,通过按键可以方便调节,以下是方案三的系统流程图。方案图如图1-3所示:图1-3方案三方案总结:通过各个方案的比较,本次采用方案三,不但控制简单,而且成本低廉,设计电路简单。方案三解读:出租车计价器在有乘客上车,司机启动计价器,出租车司机开始可以手动调节运营模式,系统通过按键识别当前运营模式,分辨白天\晚上,调节起步价及单价,计价器开始计价,显示时间、里程、金额等信息。另外,在遇到交通堵塞或等候红等低速行驶时,实行等候计时收费。当达到目的地,显示计程计费和计时计费的总价。2.系统总体设计2.1硬件设计硬件由以下五个部件组成硬件设计主要包括单片机STC89C52、存储单元的设计、振荡电路、复位电路、显示电路、按键电路以及供电电路等。在硬件设计过程中,首先要弄清楚各部件的功能,各个引脚的作用,以及如何将各硬件连接组合到一起。充分利用各部件的功能,实现多功能的出租车计价器设计。2.2软件设计在主程序模块中,需要完成对各接口芯片的初始化、出租车起价和单价的初始化、中断向量的设计以及开中断、循环等待等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器、路程寄存器和价格寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程、计时和计价等不同的操作启动计价,将根据里程寄存器中的内容计算和判断出行驶路程是否已超过起价公里数。若已超过,则根据里程值、每公里的单价数和起价数来计算出当前的累计价格,并将结果存于价格寄存器中,然后将时间和当前累计价格送显示电路显示出来。当到达目的地的时候,由于霍尔开关没有送来脉冲信号,停止计价,显示当前所应该付的金额和对应的单价,到下次启动计价时,系统自动对显示清零,并重新进行初始化过程。3.硬件设计3.1STC89C52单片机介绍STC89C52是STC(​http:​/​​/​baike.baidu.com​/​view​/​238367.htm"\t"_blank​)公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52有更加优越的性能。3.2单片机各引脚功能说明图3-2STC89C52引脚图下面对STC89C52各引脚的功能进行较为详细的介绍:1)电源引脚VCC(40脚):电源端为+5VGND(20脚):接地端。2)时钟电路引脚XTAL1和XTAL2XTAL2(18脚):接外部晶体和微调电容的一端。在单片机内部它是振荡电路反向放大器的输出端,振荡电路的频率就是晶体固有频率。若需采用外部时针电路时,该引脚输入外时钟脉冲。要检查89C52的振荡电路是否正常工作,可用示波器查看XTAL2端是否有脉冲信号输出。XTAL1(19脚):接外部晶体和微调电容的另一端。在片内,它是振荡电路反向放大器的输入端。在采用外部时钟时,该引脚必须接地。3)控制信号脚RSTALEPSEN和EA。RST(9脚):RST是复位信号输入端,高电平有效。在此输入端保持两个机器周期(24个时钟振荡周期)的高电平时,就可以完成复位操作。ALE/PROG(30引脚):地址锁存允许信号端。当STC89C52上电正常工作后,ALE引脚不断向外输出正脉冲信号。此频率为振荡器频率fosc的1/6,当CPU访问片外存储器时,ALE输出信号作为锁存低8位地址的控制信号。在CPU访问片外数据存储时,每取值一次(一个机器周期)会丢失一个脉冲。平时不访问片外存储时,ALE端也以1/6的振荡频率固定输出正脉冲,因而ALE信号可以用作对外输出时钟或定时信号。如果你想看一下STC89C52芯片的好坏,可用示波器查看ALE端是否有脉冲信号输出,如有脉冲信号输出,则STC89C52基本上是好的。ALE的负载驱动能力为8个LS型TTL(低功耗高速TTL)。PSEN(29脚);程序存储允许输出信号引脚,在访问片外程序存储器时,此端定时输出负脉冲作为读片外存储器的选通信号。此引脚接ERROM的OE端。PSEN端有效,即允许读出ERROM/ROM中的指令码。CPU在从外部ERROM/ROM取指令期间,每个周期PSEN两次有效。不过,在访问片外RAM时,要少产生两次PSEN负脉冲信号。要检查一个STC89C52小系统上电后CPU能否正常到ERROM/ROM中读取指令码,也可用于示波器看PSEN端有无脉冲输出。如有,说明基本上工作正常。EA/VPP(31脚):外部程序存储器地址允许输入端/固化编程电压输入端。当EA引脚接高电平时,CPU只访问片内ERROM/ROM并执行内部程序存储器中的指令。但在PC(程序计数器)的值超过OFFFH(对8751/8051为4k)时,将自动转向执行片外存储器的程序。当出入信号EA引脚接低电平(接地)时,CPU只访问外部ERROM/ROM并执行外部程序存储器中的指令,而不管是否有片内程序存储器。对于无芯片内的ROM的8031或8032,须外扩ERROM,此时必须将EA引脚接地。如果使用有片内ROM的STC89C52,外扩ERROM也是可以的,但也要使EA接地。4)I/O(输入/输出端口,P0,P1,P2,P3)P0口:P0口是一个漏极开路的8位准双向I/O端口。P1口:8位准双向I/O端口。P2口:即可以做地址总线输出地址高8位,也可以做普通I/O用,(此时为准双向口)。P3口:双功能口,即可以做普通I/O口用(此时为准向口,也可以按每位定义实现第二功能操作)。见表1表1P3口的第二功能表引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(定时器0外部中断)P3.5T1(定时器1外部中断)P3.6WR(外部存储器写选通)P3.7RD(外部存储器读写通)3.3振荡电路设计单片机内部有一个高增益、反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。通过这两个引脚在芯片外并接石英晶体振荡器和两只电容(电容和一般取20pF)。这样就构成一个稳定的自激振荡器。振荡电路脉冲经过二分频后作为系统的时钟信号,再在二分频的基础上三分频产生ALE信号,此时得到的信号时机器周期信号。振荡电路如图3-3所示:图3-3振荡电路3.4复位电路设计复位操作有两种基本形式:一种是上电复位,另一种是按键复位。按键复位具有上电复位功能外,若要复位,只要按图中的RESET键,电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。上电复位电路要求接通电源后,通过外部电容充电来实现单片机自动复位操作。上电瞬间RESET引脚获得高电平,随着电容的充电,RERST引脚的高电平将逐渐下降。RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。按键复位电路图如图3-4所示。图3-4复位电路3.5键盘接口电路设计(1)独立式键盘:独立式键盘中,每个按键占用一根I/O口线,每个按键电路相对独立。I/O口通过按键与地相连,I/O口有上拉电阻,无键按下时,引脚端为高电平,有键按下时,引脚电平被拉低。I/O口内部有上拉电阻时,外部可不接上拉电阻。键盘接口电路如图3-5所示:图3-5键盘接口电路3.6显示电路设计3.6.11602LCD的基本参数及引脚功能1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如图3-6-1所示。图3-6-1LM016L结构图LCD1602主要技术参数: 容量:16×2个字符芯片工作电压:4.5—5.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.95×4.35(W×H)mm引脚功能说明:1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表1所示:表1引脚接口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第7~14脚:D0~D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。3.6.2显示模块采用1602液晶显示接口电路图3-6-2显示电路4.软件设计4.1单片机资源使用在本次设计中电路键盘用到了P2口,其中P2.0到P2.5口作为键盘的输入,显示电路用到了P1和P3口,P1口为液晶的数据口。4.2单片机软件模块设计4.2.1中断子函数对于中断程序,只要定时器计数满就会产生中断50ms中断一次,共计20次,秒钟加1,秒钟计满再分钟加,当分钟加到99时全部清零。以下是中断子函数的流程图如图4-2-1所示:图4-2-1中断子程序流程图4.2.2判键子函数对于独立式键盘判键,首先看有键按下不,如果有键按下则延时一会儿,在判断是否真的有键按下,如果确实有键按下,再判键释放,最后执行键功能程序。判键子函数的流程框图如图4-2-2所示:图4-2-2判键子程序流程图4.2.3显示子程序1602液晶是字符型液晶,它的内部自带字符库,它可以写两行的字符,同时每行可以写40个字符,在写显示程序的时候,我们先写命令,再设定字符显示,最后写数据,在每写一次命令或数据都需要判断液晶是否忙。液晶显示程序流程图如图4-2-3所示:图4-2-3显示子程序流首先是LCD的初始化,初始化完成后对LCD进行写命令,如果系统发现LCD忙,则继续进行判断是否忙,如果系统不忙,则写入命令,如果命令未写完成则继续写命令,写命令完成后进行字符设置,然后写入数据,完成数据的写入之后再判断LCD是否处于忙的状态,如果判断未忙的状态后继续进行判断,如果不忙,则写入数据响应成功后进行显示。4.3总程序流程框图整体程序的流程框图如图4-3所示:图4.3整体程序的流程框图4.4.使用软件proteus的介绍Proteus软件是来自英国Labcenterelectronics公司的EDA工具软件,它组合了高级原理布图、混合模式SPICE仿真,PCB设计以及自动布线来实现一个完整的电子设计系统。此系统受益于15年来的持续开发,被《电子世界》在其对PCB设计系统的比较文章中评为最好产品—“TheRoutetoPCBCAD”。Proteus产品系列也包含了我们革命性的VSM技术,用户可以对基于微控制器的设计连同所有的周围电子器件一起仿真。用户甚至可以实时采用诸如LED/LCD、键盘、RS232终端等动态外设模型来对设计进行交互仿真。其功能模块:—个易用而又功能强大的ISIS原理布图工具;PROSPICE混合模型SPICE仿真;ARESPCB设计。PROSPICE仿真器的一个扩展PROTEUSVSM:便于包括所有相关的器件的基于微处理器设计的协同仿真。此外,还可以结合微控制器软件使用动态的键盘,开关,按钮,LEDs甚至LCD显示CPU模型。支持许多通用的微控制器,如PIC,AVR,HC11以及8051。最新支持ARM。交互的装置模型包括:LED和LCD显示,RS232终端,通用键盘,I2C,SPI器件。强大的调试工具,包括寄存器和存储器,断点和单步模式。IARC-SPY和KeiluVision2等开发工具的源层调试。应用特殊模型的DLL界面-提供有关元件库的全部文件。5.系统测试5.1计价器模式测试完成设计之后,上电,按系统电源启动按键,设备显示屏显示初始化状态,屏幕上显示运行里程,等待时间(00:00:00),出租车起步价(010.0元),超过起步里程数(3公里)后的每公里单价(1.4元)。计价器分为2种模式,白天模式和夜晚模式,使用按键选定相应模式后,LCD显示屏上将显示夜晚模式时设定的参数,使用按键进行运行里程和等待时间的模仿,等待时间按钮每按一次等待时间增加1分钟,里程按键每按一次里程数增加0.1公里。进行测试,计价器可以准确的显示计价金额及里程数等相应信息。系统初始状态测试如图5-1所示:图5.1系统初始状态系统等待时间测试如图5-2所示:图5.2系统等待时间测试系统运行里程测试如图5-3所示:图5.3系统运行里程测试可以从图4.3看出,当模拟出租车运行1公里后,出租车的计价器金额变成11.4,符合我们当初设计要求,可以精确的进行计价。5.2计价器计价参数测试启动设备进入系统后,分别选择白天和夜晚模式后进行基本参数的设定测试,例如白天参数设定为兰州出租车现在执行标准,起步价3公里10元,超过3公里每公里1.4元,夜晚参数设定为起步价3公里10元,超过3公里每公里1.6元。对系统完成参数设定后,我们分别用白天模式和夜晚模式进行测试。测试完毕后我们会看到系统可以准确的显示计价金额及里程数等相应信息。所以次计价器的计价参数配置正确。5.3计价器稳定性测试启动设备进入系统,长时间运行设备,设备运行情况良好,再不停的进行按键压力测试,设备运行情况良好。通过以上各种测试,可以得出结论,此款基于单片机的出租车计价器的性能稳定,易于操作和使用。但有些方面还可以进一步扩展,以后会进行进一步的改进,使其更加完美。6.总结出租车计费器系统的设计和测试已经全部完成,能按预期的效果进行实现特定功能,并能够通过LCD显示车费金额。本款出租车计价器包括单价输出、单价调整、以及白天和晚上运营模式之分。另外,多功能出租车计价器还具有性能可靠、电路简单、成本低、实用性强等特点,加上经过优化的程序,使其有很高的智能化水平。几个月来,经过自己努力和老师同学的帮助,基本上完成了设计要求的内容,在系统可行性分析、原理图设计等方面都作了许多实际工作,取得了一些成绩,同时也遇到了一些问题,存在一些不足。经过这几个月的学习和工作,我觉得自己不论是在理论知识方面还是在动手能力方面都有了不小的进步,自己从中受益匪浅。这次设计很好的把以前学到的理论知识应用于实践,使我认识到理论知识与实践之间有一定的差距,只有通过不断的努力学习和实践才能很好的把理论知识应用到实践当中,也只有通过不断的实践才能对理论知识的理解。通过这次设计不仅学会了如何去查找相关资料,更重要的是通过查找资料和翻阅书籍学到了不少知识,扩大了知识面,提高了知识水平。经过单元设计和系统设计巩固了以前所学的专业知识,自己真正认识到理论联系实际的重要性,为以后的学习和工作提供了很多有价值的经验。通过这次设计不仅增强了自己的动脑能力和动手能力,也提高了我思考问题、分析问题、解决问题的能力,更重要的是学会用工程化的思想来解决问题。这在以前的学习过程中是不曾学到的。在短短的三个月时间内完成设计内容,在很大程度上得益于王老师的帮助。这次设计是我认真认识到完整、严谨、科学分析问题、解决问题的思想是多么的重要,只有拥有了科学的态度才能设计出有用的产品。另外通过本次设计,是我认识到自己理论知识的应用能力有很大的欠缺,需要在以后的学习中进一步提高。参考文献[1]李广弟,朱月秀,冷祖祁.单片机基础[M].第3版.北京航空航天大学出版社,2007年1月[2]李华.MCS-51系列单片机实用接口技术[M].北京航空航天大学出版社,1996[3]马忠梅,张凯,马岩,单片机的C语言应用程序设计,[M],北京:北京航空航天大学出版社,2003.11;[4]胡辉,单片机原理及应用设计—21世纪高等院校规划教材[M],水利水电出版社,2005.7;[5]刘守义,单片机应用技术[M],西安:西安电子科技大学出版社,1996.8;[6]JeanJ.Labrosse(美),著,邵贝贝等译,嵌入式实时操作系统[M],UC/OS-II(第2版)[7]杨宁王吴田蔚风等.高精度飞轮控制系统方案分析研究[J].航天控制,2004,22(3):50一53.[8]彭为,黄科,雷道仲.单片机典型系统设计实例精讲[M].北京:电子工业出版社.2007年[9]李学礼.基于Proteus的8051单片机实例教程[M].北京:电子工业出版社,2008年[10]陈伯时.电力拖动自动控制系统[M].北京:机械工业出版社,2003:103—107。[11]张毅刚彭喜元.MCS-51单片机应用设计[M].哈尔滨工业大学出版社.2003年[12]周航慈.单片机应用程序设计技术[M].北京航空航天大学出版社,2002(11)[13]徐爱钧.单片机原理实用教程—基于Proteus虚拟仿真[M].北京:电子工业出版社.2009年[14]TexasInstrumentsIncorporatedTMS320c54xDSP[J].BI0SUsersGuideSPRU326C,2000.5.[15]刘涳主编. 毕业设计 机械毕业设计下载球磨机的毕业设计下载关于网络爬虫的毕业设计下载关于网络爬虫的毕业设计下载河南城建学院毕业设计论文下载 宝典.西安:西安电子科技大学出版社.2008年致谢本 论文 政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载 是在王钧导师的悉心指导下完成的,导师的精心指导和培养使我在各个方面都受益非浅.在分析问题、解决问题及独立工作的能力有了很大的提高。王老师的渊博学识和丰富经验给我留下了深刻的印象。从王老师那里我学到的不仅是专业知识与实际问题科学解决的方法,更为重要的是勤奋和严谨治学的精神以及对学生的认真负责,老师的谆谆教诲使我受益匪浅,在此向王老师表示衷心的感谢并致以崇高的敬意!感谢家人给予我学业上和生活上的支持与照顾。同时感谢给予我帮助的各位老师、同学以及朋友们!附录1元件清单表8-1元器件清单名称规格数量备注电阻2001个1K1个10K5个1002个电容20pF2个10μF2个极性电容发光二极管3个按键7个直流电机1个晶振12MHz1个芯片STC89C521块1602液晶1块内带字符库附录2原理图附录3单片机程序#include//调用单片机头文件#defineucharunsignedchar//无符号字符型宏定义变量范围0~255#defineuintunsignedint//无符号整型宏定义变量范围0~65535ucharmiao,fen=0,shi;ucharflag_bai_hei;//白天的晚上的标志位ucharvalue;uintbai_3l_price=100;//白天3千米内的单价10元uintbai_3w_price=14;//白天3千米外的单价/千米1.4元uintbai_wait_price=5;//白天等待时的单价/分钟0.5元uintwan_3l_price=100;//晚上3千米内的单价/千米10元uintwan_3w_price=22;//晚上3千米外的单价/千米1.6元uintwan_wait_price=10;//晚上等待时的单价/分钟1元uintdistance=0;//行使的距离uintzong_jia;//总的价bitflag_300ms=0;bitflag_1s;bitflag_time_en=0;#include"lcd1602.h"/***********************1ms延时函数*****************************/voiddelay_1ms(uintq){uinti,j;for(i=0;i=5)//按键松开松手检测{key_value=0;key_new=1;//按键松开后进入等待按键状态}}else{if((key_io&0x3f)!=0x3f)//按键按下key_value++;elsekey_value=0;if(key_value>=5)//按键按下消抖{key_value=0;key_new=0;//按键松开后进入等待松开按键状态}}key_can=20;if((key_new==0)&&(key_old==1)){switch(key_io&0x3f){case0x3e:key_can=1;break;//得到按键值case0x3d:key_can=2;break;//得到按键值case0x3b:key_can=3;break;//得到按键值case0x37:key_can=4;break;//得到按键值case0x1f:key_can=5;break;//得到按键值case0x2f:key_can=6;break;//得到按键值}//write_sfm2(2,0,key_can);//按键按下显示按键值}key_old=key_new;}#include"menu.h"/*********************对应菜单内的处理函数******************/voidmenu_dis(){if(menu_1==0){if(key_can==10){distance++;write_sfm4(1,0,distance);}if(key_can==5)//清零从新计价{flag_time_en=0;shi=0;fen=0;miao=0;zong_jia=0;distance=0;}if(key_can==2){flag_time_en=~flag_time_en;}if(flag_300ms==1){flag_300ms=0;if(distance<=30)//3公里内的价格{if(flag_bai_hei==0){if(fen<=3)zong_jia=bai_3l_price;elsezong_jia=bai_3l_price+(shi*60+fen-3)*bai_wait_price;}else{if(fen<=3)zong_jia=wan_3l_price;elsezong_jia=wan_3l_price+(shi*60+fen-3)*bai_wait_price;}}else//3公里外的价格{if(flag_bai_hei==0){if(fen<=3)zong_jia=bai_3l_price+bai_3w_price*(distance-30)/10;elsezong_jia=bai_3l_price+bai_3w_price*(distance-30)/10+(shi*60+fen-3)*bai_wait_price;}else{if(fen<=3)zong_jia=wan_3l_price+wan_3w_price*(distance-30)/10;elsezong_jia=wan_3l_price+wan_3w_price*(distance-30)/10+(shi*60+fen-3)*wan_wait_price;}}if(flag_bai_hei==0)write_sfm2_dian(2,9,bai_3w_price);elsewrite_sfm2_dian(2,9,wan_3w_price);write_sfm2(2,0,shi);write_sfm2(2,3,fen);write_sfm2(2,6,miao);write_sfm4(1,10,zong_jia);write_sfm4(1,0,distance);write_zifu(1,15,0x5c);//¥write_zifu(2,12,0x5c);//¥}}}/*********************显示函数******************/voidjishu_chashu(){if((flag_1s==1)&&(flag_time_en==1)){flag_1s=0;miao++;if(miao>=60){miao=0;fen++;if(fen>=60){fen=0;shi++;if(shi>=24){shi=0;}}}}}/*************定时器0初始化程序***************/voidtime_init(){EA=1;//开总中断TMOD=0X01;//定时器0、工作方式1ET0=1;//开定时器0中断TR0=1;//允许定时器0定时}voidmain(){init_1602();init_1602_dis_csf();zidong_chushifa_iic();read_iic_data();time_init();init_menu();while(1){key();if(key_can<20)key_with();menu_dis();jishu_chashu();}}/*************定时器0中断服务程序***************/voidtime0_int()interrupt1{staticucharvalue;TH0=0x3c;TL0=0xb0;//50msvalue++;if(value%6==0)flag_300ms=1;if(value>=20){flag_1s=1;value=0;}}如有侵权请联系告知删除,感谢你们的配合!时钟脉冲等待信号公里脉冲计费脉冲计时计费译码数码管显示时钟信号等待信号公里脉冲计费/复位分频器控制器计费计时计程译码显示STC89C521602液晶LED灯电源电路按键电路复位电路精品精品精品
本文档为【基于单片机的出租车计价器的设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥10.0 已有0 人下载
最新资料
资料动态
专题动态
机构认证用户
爱赢
公司经营范围:网络软件设计、制作、图文设计、影视制作(编辑)
格式:doc
大小:881KB
软件:Word
页数:0
分类:互联网
上传时间:2021-03-01
浏览量:18