毕业设计(论文)-基于单片机控制的出租车计价器设计.doc_第1页
毕业设计(论文)-基于单片机控制的出租车计价器设计.doc_第2页
毕业设计(论文)-基于单片机控制的出租车计价器设计.doc_第3页
毕业设计(论文)-基于单片机控制的出租车计价器设计.doc_第4页
毕业设计(论文)-基于单片机控制的出租车计价器设计.doc_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 32 页 共 32 页毕业设计(论文)任务书专业 电子与电气楼宇智能化 一、课题名称: 基于单片机控制的出租车计价器 二、主要技术指标: 1显示:可以显示单价、里程、总金额。 2.停车计费功能:中途因故停车按中途等待的单价收费。 3.自动分时计费功能:白天和夜间应能自动更换单价。 4.扩展功能:可增加时钟功能和数据掉电保护功能。 5,里程误差小于2%。 三、工作内容和要求: 该系统以 89S51 单片机为中心、附加 A44E 霍尔传感器测距,实现对出租车计程、计时、计费存储等多种计量功能为一体,采用 AT24C02实现在系统掉电的时候保存单价和系统时间等信息,输出采用 6段数码显示管。本电路设计的计价器不但能实现基本的计价,而且还能根据白天、黑夜、中途等待来调节单价,同时在不计价的时候还能作为时钟为司机同志提供方便。 要求1、完成设计说明书,字数不少于1万字,要求用A4纸打印并有中、英文摘要;2、图纸采用计算机绘图;3、完成与设计内容有关的外文资料翻译 ,译文翻译准确,表述清楚;4、说明设计原理和理论基础,有课题方案选择、参数计算,测试数据及测试结果分析、结论。 四、主要参考文献: 1李朝青.单片机原理与接口技术M,北京:北京航空航天大学出版社,19972康华光.数字电路技术基础M(第四版).北京:高等教育出版社,20003陈永甫.新编555集成电路应用800例M.电子工业出版社,2000.14孙涵芳.MCS-51系列单片机原理及应用M.北京:北京航空航天大学出版社,1996.45张大明,单片机控制实训指导及综合应用实例M.北京:机械工业出版社2007.6 徐光翔 单片机原理接口及应用 南京大学出版社7 张淑清等. 单片微型计算机接口技术及其应用 北京:国防工业出版社, 8 王晓君等. MCS-51及兼容单片机原理与选型 北京:电子工业出版社9张鑫、华臻、陈书谦单片机原理及应用M电子工业出版社,2005P11013610丁元杰、吴大伟单片微机实题集与实验指导书M机械工业出版社, 2004P12412511 AT89C52概述EB/OL:/view/2251929.html12 中国电子工业网EB/OL:/buy/s-531889.html13张友德 赵志英 涂时亮 编 单片微型机原理、应用与实验 上海:复旦大学出版社2005.12 全书毕业设计(论文)开题报告设计(论文)题目 基于单片机控制的出租车计价器一、 选题的背景和意义:步入21世纪,出租车已经广泛地出现在我们周围。随着人们生活水平的不断提高,出租车的使用频率也越来越高,出租车行业也以高质量的服务给人们带来了出行的享受。但是由于行业的特殊性,出租车行业总存在着买卖纠纷,困扰着行业的发展。而在出租车行业中解决这一矛盾的最好方法就是改良计价器,用更加精良的计价器来为乘客提供更加方便快捷的服务。采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现。为此我们采用了单片机进行设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。为了更加完善现阶段出租车的计费系统功能,我们采用单片微型计算机系统(Micro Control Unit 简写为MCU)设计了一款符合大众化的计费系统。本电路以89S51单片机为中心,附加A44E霍尔传感器测距,实现对出租车计价统计,采用AT24C02实现对系统的掉电保护,而且能够对白天、晚上、中途等待采取不同的收费标准,操作简单方便。二、 课题研究的主要内容:本设计采用采用AT89S51单片机为主控器,A44E霍尔传感器测距,实现对出租车的多功能的计价设计。主要分为以下几个部分:1、起步费用:由用户设定起步价保存在电路中,传感器检测到的行车里程以内,就关闭行车里程计价器,显示器一直显示起价费。当行车里程超过了起价费用里程,行车里程计费程序才启动计费。2、行车里程计费:通过传感器将汽车的行驶距离送入处理电路,然后换成行车里程,根据行车里程和已经设定的单价计算出所需的行车费用,将这个费用送入总费用显示缓冲区。3、等待计费:在路途中,传感器检测到汽车停下来,这时就要启动等候计费程序,中途因故停车按中途等待的单价收费。4、整个行车过程中的总费用=起步价+行车费用+等候费用,这个费用在总费用显示缓冲区完成求和之后通过显示器显示出来,客户能够直观明了的查看出来,十分方便。5设计白天和黑夜转换的开关,根据白天和黑夜的不同进行不同的计价收费。6在不计价的时候还能作为时钟为司机同志提供方便。7在电源断开的时候,存储当前设定的单价信息,实现数据掉电保护功能。三、 主要研究(设计)方法论述:1、通过各种图书更加详细的了解AT89S51单片机的原理2、上网搜索有关资料3、实际调查、亲身体验4、与指导老师讨论确定计划的可行性5、请教指导老师帮助修改,审核,完稿6、与指导老师讨论,提出改进方案 7、与学长学姐进行交流四、设计(论文)进度安排:时间(迄止日期)工 作 内 容2010.5.182010.5.24完成选题工作2010.5.232010.5.28收集资料查阅工作2010.5.282010.5.30提交开题报告2010.6.12010.6.1完成中期检查表2010.6.12010.6.8完成并提交初稿2010.6.82010.6.12论文第一次修改2010.6.122010.6.15论文第二次修改2010.6.162010.6.18论文第三次修改五、指导教师意见: 指导教师签名: 2010 年 5 月 10 日六、系部意见: 系主任签名: 2010 年5 月 11 日基于单片机控制的出租车计价器目 录摘要8Abstract 8第1章 前言10第2章 方案设计112.1功能要求112.2方案论证11第3章 出租车计价器硬件设计133.1 系统的硬件构成及功能133. 2 AT89S51单片机及其引脚说明133.3 AT24C02引脚图及其引脚功能163. 4 AT24C02 掉电存储单元的设计163.5 按键单元的设计173.6 里程计算、计价单元的设计173.7 数据显示单元设计193.8 总体设计电路图21 第4章 系统软件设计234. 1 系统主程序设计 234. 2 定时中断程序设计 234. 3 里程计数中断服务程序设计234.4 中途等待中断服务程序设计234. 5 键盘服务程序设计244. 6 显示子程序服务程序设计 244. 7 程序流程图24第5章系统调试与测试结果分析 265. 1 使用的仪器仪表 265.2 系统调试 26第6章 结束语 27答谢辞 28 参考文献 29 摘 要出租车计价器是乘客与司机双方的交易准则,它是出租车行业发展的重要标志,是出租车中最重要的工具。它关系着交易双方的利益。具有良好性能的计价器无论是对广大出租车司机朋友还是乘客来说都是很必要的。因此,汽车计价器的研究也是十分有一个应用价值的。 而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现。而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。针对计费模式的切换,通过软件编程就可以轻易而举的实现。避免了机械开关带来的不稳定因素。另外在本方案中那个使用了点阵的液晶,可以实现更加友好的使用界面。数据信息一目了然,并且即使是成品也可以方便的修改使用界面,更可根据不同的公司客户使用不同的局面。关键词:出租车计价器 单片机 控制 AbstractTaximeter is both passengers and drivers of the transaction criteria, it is the taxi industry an important symbol, a taxi is the most important tools. It relates to the interests of both transactions. Has a good performance regardless of the meter is a vast number of taxi drivers or passengers are very necessary. Therefore, the car meter is also very much a study of value. The use of analog circuits and digital circuit design of the meter as a whole circuit of a larger scale, using the device, a failure rate is high and difficult to debug, the pattern of switching need to use mechanical switches, mechanical switch will cause a long-time contacts Bad, functions not easy to achieve. SCM used for the design, a relatively powerful, with less hardware and appropriate software can easily coordinate with each other to achieve the design requirements, flexibility and strong, can be programmed by software to complete more of the additional Function. Pricing model for the switch, software programming and can easily cite the achievement. To avoid a mechanical switch the destabilizing factors. Also in this programme that the use of a dot-matrix LCD, can be more friendly to use interface. Data information at a glance, and even the finished product can also facilitate the use of interface changes, according to different customers using a different situation.Keywords: Taximeter 89 S51MCU control第1章 前言步入21世纪,出租车已经广泛地出现在我们周围。随着人们生活水平的不断提高,出租车的使用频率也越来越高,出租车行业也以高质量的服务给人们带来了出行的享受。但是由于行业的特殊性,出租车行业总存在着买纠纷,困扰着行业的发展。而在出租车行业中解决这一矛盾的最好方法就是改良计价器,用更加精良的计价器来为乘客提供更加方便快捷的服务。 30年前,我国出现了出租车,但是由于当时的经济水平,出租车并没有普遍在我们生活中出现。随着改革开放的深入,出租车行业的发展势头已十分突出。如今出租车在我国的交通运输中承担着重要的角色,出租车计价器是出租车上必不可少的重要仪器,它是负责出租车营运收费的专用智能化仪表。随着城市旅游业的发展,出租车行业已成为城市的窗口,象征着一个城市的文明程度。 我们都知道,只要出租车开动,随着行驶里程的增加,就会看到汽车前面的计价器里程数字显示的读数从零逐渐增大,而当行驶到某一值时(如5KM)计费数字显示开始从起步价(如10元)增加。当出租车到达某地需要在那里等候时,司机只要按一下“计时”键,每等候一定时间,计费显示就增加一个该收的等候费用。汽车继续行驶时,停止计算等候费,继续增加里程计费。到达目的地,便可按显示的数字收费。 采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现。为此我们采用了单片机进行设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。第2章 方案设计2.1功能要求 本课程设计所设计的出租车计价器的主要功能有:数据的复位、白天/晚上转换、数据输出、计时计价、单价输出及调整、路程输出、语音播报数据信息、实现在系统掉电的时候保存单价和系统时间等信息等功能。输出采用8 段数码显示管。本电路设计的计价器不但能实现基本的计价,而且还能根据白天、黑夜、中途等待来调节单价,同时在不计价的时候还能作为时钟为司机同志提供方便。2.2方案论证方案一:采用数字电路控制。其原理方框图如图21所示。采用传感器件,输出脉冲信号,经过放大整形作为移位寄存器的脉冲,实现计价,但是考虑到这种电路过于简单,性能不够稳定,故障率高,难调试,而且电路不够实用。移位寄存器电路金额显示单价显示里程传感器电源电路及保护电路图21 数字电路方案方案二:采用单片机控制。利用单片机丰富的IO端口,及其控制的灵活性,实现基本的里程计价功能,途中等待等不同功能。图1 单片机控制方案图通过比较以上两种方案,单片机方案有较大的活动空间,不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级,所以我们采用后一种方案。第3章 出租车计价器硬件设计本系统的硬件设计主要包括单片机AT89S51、数据显示部件、A44E霍尔传感器电路、AT24C02 掉电存储单元的设计、里程计算及计价单元的设计。在硬件设计过程中,充分利用各部件的功能,实现多功能的出租车计价器设计。3.1 系统的硬件构成及功能计价器的单片机控制方案图如图1 单片机控制方案图所示。它由以下几个部件组成:单片机AT89S51、总金额及单价显示部件、键盘控制部件,AT24C02 掉电存储控制、里程计算单元、串中显示驱动电路等。利用单片机丰富的IO端口,及其控制的灵活性,实现基本的里程计价功能和价格调节、时钟显示功能。不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级。具体电路参见附录中“多功能出租车计价器总体电路图”如图1 单片机控制方案图。图1 单片机控制方案图3.2 AT89S51单片机及其引脚说明AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS 8位单片机,片内含4KB的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用 8位微处理器于单片芯片中,具有高性价比。AT89S51是一个有40个引脚的芯片,引脚配置如图2 AT89S51引脚配置所示。图2 AT89S51引脚配置AT89S51芯片的40个引脚功能为:VCC 电源电压。GND 接地。RST 复位输入。当RST变为高电平并保持2个机器周期时,将使单片机复位。WDT溢出将使该引脚输出高电平,设置SFR AUXR的DISRTO位(地址8EH)可打开或关闭该功能。DISKRTO位缺省为RESET输出高电平打开状态。XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2 来自反向振荡放大器的输出。P0口 一组8位漏极开路型双向I/O口。也即地址/数据总线复用口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口 一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。Flash编程和程序校验期间,P1接收低8位地址。P1口部分端口引脚及功能如表1 P1口特殊功能所示。表1 P1口特殊功能P1口引脚特殊功能P1.5MOSI(用于ISP编程)P1.6MOSI(用于ISP编程)P1.7SCK(用于ISP编程)P2口 一个带内部上拉电阻的8位双向I/O口。P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16位地址的外部数据存储器时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器时,P2口线上的内容在整个访问期间不改变。Flash编程和程序校验期间,P2亦接收低8位地址。P3口 一个带内部上拉电阻的8位双向I/O口。P3的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写“1”时,它们被内部的上拉电阻把拉到高电并可作输入端口。作输入端口使用时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表2 P3口特殊功能所示。P3口还接收一些用于Flash闪速存储器编程和程序校验期间的控制信号。表2 P3口特殊功能P3口引脚特殊功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0外部输入)P3.5T1(定时器1外部输入)P3.6 (外部数据存储器写选通)P3.7 (外部数据存储器读选通)PSEN/ 程序储存允许输出是外部程序存储器的读先通信号,当AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN/有效,即输出两个脉冲。当访问外部数据存储器,没有两次有效的PSEN/信号。EA/VPP 外部访问允许。欲使CPU仅访问外部程序存储器,EA端必须保持低电平,需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。Flash存储器编程时,该引脚加上+12V的编程电压VPP。3.3 AT24C02引脚图及其引脚功能AT24C02芯片引脚配置如图3: 图3 AT24C02引脚配置图AT24C02芯片DIP封装,共有8个引脚,其中:A2A0 地址引脚;SDA、SCL I2C总线接口;WP 写保护引脚,WP接VSS时,禁止写入高位地址,WP接VDD时,允许写入任何地址;VCC 电源端GND 接地端3.4 AT24C02 掉电存储单元的设计 掉电存储单元的作用是在电源断开的时候,存储当前设定的单价信息。AT24C02 是ATMEL公司的2KB 字节的电可擦除存储芯片,采用两线串行的总线和单片机通讯,电压最低可以到2.5V,额定电流为1mA,静态电流10Ua(5.5V),芯片内的资料可以在断电的情况下保存40 年以上,而且采用8 脚的DIP 封装,使用方便。其电路如图 4 掉电存储电路原理图所示。图 4 掉电存储电路原理图图中R8、R10 是上拉电阻,其作用是减少AT24C02 的静态功耗,由于AT24C02 的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线SCL(移位脉冲)和SDA(数据/地址)与单片机传送数据。每当设定一次单价,系统就自动调用存储程序,将单价信息保存在芯片内;当系统重新上电的时候,自动调用读存储器程序,将存储器内的单价等信息,读到缓存单元中,供主程序使用。3.5 按键单元的设计电路共采用了四个按键,S1、S2、S3、S4,其功能分别是:S1分屏显示切换按键,S2功能设定按键,S3/白天晚上切换按键,S4/中途等待开关。3.6 里程计算、计价单元的设计里程计算是通过安装在车轮上的霍尔传感器A44E检测到的信号,送到单片机,经处理计算,送给显示单元的。其原理如图 5 传感器测距示意图所示。图 5 传感器测距示意图由于A44E 属于开关型的霍尔器件,其工作电压范围比较宽(4.518V),其输出的信号符合TTL 电平标准,可以直接接到单片机的IO 端口上,而且其最高检测频率可达到1MHZ。A44E 集成霍耳开关由稳压器A、霍耳电势发生器(即硅霍耳片)B、差分放大器C、施密特触发器D 和OC 门输出E 五个基本部分组成。在输入端输入电压CC V ,经稳压器稳压后加在霍耳电势发生器的两端,根据霍耳效应原理,当霍耳片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍耳电势差H V 输出,该H V 信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC 门输出。当施加的磁场达到工作点(即OP B )时,触发器输出高电压(相对于地电位),使三极管导通,此时OC 门输出端输出低电压,通常称这种状态为开。当施加的磁场达到释放点(即rP B )时,触发器输出低电压,三极管截止,使OC 门输出高电压,这种状态为关。这样两次电压变换,使霍耳开关完成了一次开关动作。其集成霍耳开关外形及接线如图 23所示。我们选择了P3.2 口作为信号的输入端,内部采用外部中断0(这样可以减少程序设计的麻烦),车轮每转一圈(我们设车轮的周长是1 米),霍尔开关就检测并输出信号,引起单片机的中断,对脉计数,当计数达到1000 次时,也就是1 公里,单片机就控制将金额自动的加增加,其计算公式:当前单价公里数=金额。3.7 数据显示单元设计由于设计要求有单价(2 位)、路程(2 位)、总金额(3 位)显示输出,加上我们另外扩展了时钟显示(包含时分秒的显示),采用LCD 液晶段码显示,在距离屏幕1 米之外就无法看清数据,不能满足要求,而且在白天其对比度也不能够满足要求,因此我们采用6 位LED数码管的分屏显示,如图 22 ad 所示:图24 a 时钟显示(图中显示为12 点0 分46 秒)图24 b 总金额和单价显示(图中显示为总金额12.3 元,每公里4.6 元)图24 c 路程和单价显示(图中显示为总路程12 公里,当前单价4.6 元)图24 a 单价调整显示(图中显示为右起白天单价4 . 6 元/晚上 7. 8 /中途等待1.2 元)数据的分屏的显示是通过按键S1 来实现切换的,如图 7 S1切换显示屏所示。图 7 S1切换显示屏在出租车不走的时候,按下S1,可以实现数据的分屏显示;车在行走的时候只有总金额和单价显示屏在显示,当到达目的地的时候,客户要求查看总的里程的时候,就可以按下S1 切换到里程和单价显示屏,供客户查询。显示电路的电路原理图如图 8 显示器原理图所示。图 8 显示器原理图从单片机串口输出的信号先送到左边的移位寄存器(74HC164),由于移位脉冲的作用,使数据向右移,达到显示的目的。移位寄存器74HC164还兼作数码管的驱动,插头1(header1)接电源,插头2(header2)接数据和脉冲输出端。电路中的三个整流管D1D3 的作用是降低数码管的工作电压,增加其使用寿命。3.8 总体设计电路图多功能出租车计价器总体电路图2计价表使用说明(1)S1按键的功能在出租车不走的时候,按下S1,可以实现数据的分屏显示;车在行走的时候只有总金额和单价显示屏在显示,当到达目的地的时候,客户要求查看总的里程的时候,就可以按下S1 切换到里程和单价显示屏,供客户查询。(2)S2按键的功能在按下S1按键之后,若接着按下S2键则进行单价调整(默认为调整白天单价),当接着按下S1时,则进行晚上单价调,再次按下S1可进行中途等待单价调整。当单价调整结束后,可以通过过按下S2按键进行时间调整,默认为调整时,接着按下S1可进行调整分,分调整后再接下S1可进行秒调整。当时调整完成后,若接着按下S2则又可进行单价调整。(3)S3按键的功能在显示金额及单价时,若按下S3键则显示路程和单价,再次按下S3,可返回显示金额及单价。(4)S4按键的功能在按下S1按键之后,若接着按下S4按键,则进行设定默认晚上单价,并启动计价器,若没有按下S4则可设定默认单价(白天),并启动计价器。当设定默认晚上单价结束后,再次接下S4按键,则可设定默认中途等待单价,并启动计价器。当设定默认中途等待单价后,若还按一次S4,则返回系统时间的显示。第4章 系统的软件设计本系统的软件设计主要可分为主程序模块、定时计数中断程序、里程计数中断服务程序、中途等待中断服务程序、显示子程序服务程序、键盘服务程序六大模块。下面对各部分模块作介绍。4.1 系统主程序设计在主程序模块中,需要完成对各接口芯片的初始化、出租车起价和单价的初始化、中断向量的设计以及开中断、循环等待等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器和价格寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。主程序流程图如图9 所示。当按下S1时,就启动计价,将根据里程寄存器中的内容计算和判断出行驶里程是否已超过起价公里数。若已超过,则根据里程值、每公里的单价数和起价数来计算出当前的累计价格,并将结果存于价格寄存器中,然后将时间和当前累计价格送显示电路显示出来。当到达目的地的时候,由于霍尔开关没有送来脉冲信号,就停止计价,显示当前所应该付的金额和对应的单价,到下次启动计价时,系统自动对显示清零,并重新进行初始化过程。4.2 定时中断服务程序在定时中断服务程序中,每100ms 产生一次中断,当产生10 次中断的时候,也就到了一秒,送数据到相应的显示缓冲单元,并调用显示子程序实时显示。其程序流程如图10 所示。4.3 里程计数中断服务程序每当霍尔传感器输出一个低电平信号就使单片机中断一次,当里程计数器对里程脉冲计满1000 次时,使微机进入里程计数中断服务程序中。在该程序中,需要完成当前行驶里程数和总额的累加操作,并将结果存入里程和总额寄存器中。4.4 中途等待中断服务程序当在计数状态下霍尔开关没有输出信号,片内的T1 定时器便被启动,每当计时到达10分钟,就对当前金额加上中途等待的单价,以后每十分钟都自动加上中途等待的单价。当中途等待结束的时候,也就自动切换到正常的计价。4.5 显示子程序服务程序由于是分屏显示数据,所以就要用到4 个显示子程序,分别是:时分秒显示子程序(HMS_DIS)、金额单价显示子程序(CP_DIS)、路程单价显示子程序(DP_DIS)、单价调节子程序(PA_DIS)。4.6 键盘服务程序键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。如图9 主程序流程图,图10 定时中断服务程序。4. 7 程序流程图主程序流程图如图9所示:图9主程序流程图定时中断服务程序开始保护现场重置计数初值否中断10次?是数据送显示缓冲单元调用显示子程序恢复现场并中断返回 图10 定时中断服务程序第5章 系统调试与测试结果分析根据系统设计方案,本系统的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论