单片机课程设计 出租车计价器
基于单片机实现的出租车计价器设计

一、设计目的了解和掌握掉电存储芯片AT24C02、霍尔传感器A44E、数码管、驱动芯片74LS245等外部接口芯片器件的应用。
二、主要设计内容实现出租车行驶里程和总金额的显示,预设起步价和起步公里数;实现清零、复位和掉电保护功能;实现对单价的调整。
三、重点研究问题(1)按下启动按键,显示起步里程与起步价。
(2)按模拟传感器信号的按键,显示行驶里程与总金额。
(3)按键控制清零、复位、掉电保护、调整预设单价。
(4)在软件中实现起步价,单价。
四、主要技术指标(1)数码管显示起步里程、单价,总里程、总金额。
(2)用按键控制清零、复位、掉电保护、调整预设单价。
五、设计成果要求(1)源程序通过编译、运行(2)软件烧录单片机硬件进行调试,运行(3)实现所述功能(4)电路板焊接、检测(5)最终提交软硬件、设计说明书、外文翻译、毕业设计说明书等设计开题报告本电路以AT89S51单片机为中心,附加A44E霍尔传感器测距(本电路中用模拟开关替代),实现对出租车计价,采用AT24C02 实现在系统掉电的时候保存单价,输出采用8段数码显示管,显示行驶总里程和总金额。
模拟出租车计价器设计:进行里程显示,预设起步价和起步公里数;行程按全程收费,有复位功能和启动功能,启动后,开始计价。
我们采用单片机进行设计,可以用较少的硬件和适当的软件相互配合来实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能,应用前景广阔。
关键字:出租车计价器AT89S51单片机A44E霍尔传感器断电保存8段数码显示管第 1章绪论1.1 课题背景我们知道,只要乘坐的出租车启动,随着行驶里程的增加,就会看到司机旁边的计价器里程数字显示的读数从零逐渐增大,而当行驶到某一值时(如2KM)计费数字显示开始从起步价(如4元)增加。
当乘客到站时,按下停止按键,计费数字显示总里程和总金额,它可以很直观的反映用户使用情况。
1.2.2 主要设计内容及基本要求利用AT89S51单片机,设计简单的出租车计价器。
基于单片机的出租车计价器设计设计

基于单片机的出租车计价器设计设计出租车计价器是一种基于单片机的设备,用于计算乘客乘坐出租车的费用。
在设计出租车计价器时,需要考虑到计价规则、硬件设计和软件编程等因素。
首先,我们需要确定计价规则。
一般来说,出租车的计价规则包括起步价、里程费和时间费。
起步价是乘客上车时需要支付的固定费用,里程费是根据乘客的行驶里程来计算的变动费用,时间费是在乘客等待或者拥堵时计算的费用。
接下来,我们需要进行硬件设计。
出租车计价器的硬件设计包括显示屏、键盘、车速传感器和单片机等组成部分。
显示屏用于显示计价器的计费结果和其他信息,键盘用于输入乘客的上下车信息和计价规则,车速传感器用于检测出租车的速度,单片机用于控制计价器的计费过程和显示信息。
然后,我们需要进行软件编程。
软件编程主要是为了控制单片机的工作流程和计费逻辑。
在软件编程中,我们需要设计计费算法,根据乘客的上下车信息、里程和时间等数据来计算费用。
同时,我们还需要设计按钮和操作界面,以便乘客和司机能够操作和使用计价器。
此外,出租车计价器还可以增加一些额外功能,如记录行驶轨迹和生成行驶报告等。
行驶轨迹可以用于监控出租车的行驶情况,而行驶报告可以提供给乘客或者出租车公司,以便进行事后结算和分析。
最后,我们还需要考虑出租车计价器的安全性和可靠性。
安全性是指计价器应具备防止数据篡改和信息泄露的能力,可靠性是指计价器应具备稳定工作和数据准确性的能力。
综上所述,基于单片机的出租车计价器设计需要考虑计价规则、硬件
设计和软件编程等因素。
通过合理的设计和规划,可以实现一个功能完善,安全可靠的出租车计价器。
单片机课程设计报告-出租车计价器

微机原理及单片机接口技术实验报告学院:专业班级:学生姓名:学号:指导教师:一、验目的及实验实现的功能:(一)流水灯实验1、实验目的:1)简单I/O引脚的输出2)掌握软件延时编程方法3)简单按键输入捕获判断2、完成功能要求1)开机是点亮12发光二极管,闪烁三下2)按照顺时针循环依次点亮发光二极管3)通过按键将发光二极管的显示改为顺逆时针方式(二)定时器或实时时钟实验1、实验目的1)数码管动态显示技术2)定时器的应用3)按键功能定义2、完成功能要求1)通过按键可以设定定时时间,启动定时器,定时时间到,让12个发光二极管闪烁,完成定时器功能。
2)实时时钟,可以设定当前时间,完成钟表功能(四位数码管分别显示分钟和秒)。
上述二个功能至少完成一种功能。
(三)双机通信实验1、实验目的UART 串行通信接口技术应用2、完成功能要求用两片核心板之间实现串行通信,将按键信息互发到对方数码管显示。
(四)交通灯实验1、实验目的1)按键、数码管、发光二极管综合应用编程技术2)数据存储于EEPROM的技术(也可以不使用)3)定时中断技术4)按键中断技术2、完成功能要求1)对每个路口(主干道、次干道)的绿灯时间,及黄灯时间的设定。
2)设定参数掉电后不丢失(如果不使用EEPROM,此功能可以不实现)。
3)紧急按键功能,当按下该键时,所有路口变成红灯,相当于交警指挥特殊车辆通过。
再按该键,恢复正常显示。
二、系统硬件设计硬件设计仿真图三、系统软件设计系统流程图(程序见附录)四、实验过程中遇到的问题及解决方法1.定时器0调试过程中:a)建好工程后,操作太快,忘了将保存过的C文件添加到工程里面,提示无效module。
b)初始化函数init_0() 声明时后面的‘;’忘记了,调试后出现了很多错误与警告,里面的变量及端口都提示重复定义。
数码管显示过程中:a)函数编写好后调用提示:uncalled segment ,ignored for overplay.原因:有函数未调用,可是我已经调用所有函数,后来检查一段时间后发现,count_down ()被我写成了count_dowm().b)FLAG标志位应用时,当FLAG=1时应该立即执行正常时钟程序clock(),可是当按键稍微晚些按时会出现:延时一段时间后才执行。
基于单片机的出租车计价器的设计

基于单片机的出租车计价器的设计一、设计目标:设计一个基于单片机的出租车计价器,能够准确计算乘客的乘车距离和费用,并能显示当前的计价信息。
二、设计原理:1. 距离测量:使用速度传感器和车轮直径来测量出租车行驶的距离。
2. 费用计算:根据距离和预设的计价规则,使用单片机进行费用计算。
3. 显示:使用LCD显示屏显示当前的计价信息和距离。
三、硬件设计:1. 单片机:选择合适的单片机,如ATmega8,作为主控制器。
2. 速度传感器:选择合适的速度传感器,如霍尔传感器,用于测量车轮转速。
3. LCD显示屏:选择合适的LCD显示屏,如16x2字符LCD,用于显示计价信息和距离。
4. 按键开关:设计合适的按键开关,用于启动计价器和调整设置。
四、软件设计:1. 初始化设置:在计价器启动时,进行LCD显示屏和速度传感器的初始化设置。
2. 距离测量:通过速度传感器读取车轮转速,根据车轮直径计算出租车行驶的距离。
3. 费用计算:根据距离和预设的计价规则,使用单片机进行费用计算,并将计算结果显示在LCD上。
4. 设置调整:设计按键开关用于调整计价规则和费率设置。
5. 实时显示:将计价信息和距离实时显示在LCD上,方便乘客查看。
五、测试和验证:进行功能测试和实地验证,确保计价器的准确性和稳定性。
包括距离测量的准确性、费用计算的准确性以及LCD显示的正确性。
六、优化和改进:根据测试结果和用户反馈,对计价器进行优化和改进,提高其性能和用户体验。
总结:基于单片机的出租车计价器是一个实用的设计,能够帮助出租车司机和乘客准确计算乘车距离和费用。
通过合理的硬件设计和软件编程,可以实现距离测量、费用计算和实时显示等功能。
在实际使用中,需要进行充分的测试和验证,以确保计价器的准确性和稳定性。
通过不断优化和改进,可以提高计价器的性能和用户体验,满足用户的需求。
单片机课程设计--出租车计价器

摘要出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。
而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试。
而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易地实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。
本设计的是一个基于单片机AT89S52的出租车自动计费设计,附有复位电路,时钟电路,键盘电路等。
复位电路是单片机的初始化操作,除了正常的初始化外,为摆脱困境,通过复位电路可以重新开始。
时钟电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。
在上电时LED数码管显示最初的起步价,里程收费,等待时间收费三种收费。
按暂停键,计价器可暂停计价,按查询键,在LED数码管上可以显示运行时等待的时间。
通过计算可以得出总共的费用和总的路程。
在这里主要是以AT89S52单片机为核心控制器,P0口、P2 口接两片四合一数码管,P1口接按键,通过按键输入。
关键词:单片机 AT89S52;LED数码管;出租车计费器;目录1 概述 (1)1.1 课题简介 (1)1.2 功能要求 (1)2 系统总体方案及硬件设计 (2)2.1 系统工作原理及总体方案 (2)2.2 单片机最小系统单元 (3)2.3 霍尔传感器检测单元 (3)2.4 键盘调整单元 (5)2.5 显示单元 (5)3 软件设计 (7)3.1系统主程序 (7)3.2 按键扫描程序 (8)3.3 中断程序 (9)3.4 计算程序 (10)3.5 显示程序 (10)4 实验仿真 (12)4.1 Proteus介绍 (12)4.2 调试与测试 (12)4.3 里程计价测试 (12)5 课程设计体会 (14)参考文献 (15)附1:系统原理图 (16)1 概述1.1 课题简介出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。
出租车计价器单片机课程设计

出租车计价器单片机课程设计
一、课程设计背景
1.1 项目简介
出租车计价器是一款用来计算出租车费用的设备,它可以根据客户乘坐出租车的里程数、所在城市、车辆等级等信息,计算出乘客应付的出租车费用。
本课程设计主要以单片机实现出租车计价器的功能,采用单片机控制电容屏和按键,实现出租车客户输入数据和进行相关计算的功能。
1.2 基本要求
(1)设计出租车计价器的硬件模块,包括控制电容屏、按键等;
(2)设计出租车计价器的软件模块,编写出租车计价器的源程序;
(3)实现出租车计价器的测试功能,包括输入数据、计算费用等。
二、课程设计步骤
2.1 硬件设计
(1)材料准备:本课程设计所需的主要硬件设备有:单片机主
控板及其配件、电容屏和按键等。
(2)电路设计:根据课程设计的功能要求,设计出租车计价器
的硬件电路,实现主控板与电容屏、按键等设备的连接。
(3)原理图设计:根据电路设计,绘制出租车计价器的原理图,包括主控板、电容屏和按键等设备的结构。
2.2 软件设计
(1)源程序设计:编写单片机的源程序,实现出租车计价器的计算功能。
(2)组合程序设计:根据源程序,编写出租车计价器的组合程序,实现出租车计价器的实际应用。
2.3 课程实施
(1)硬件实施:根据原理图,把主控板、电容屏和按键等硬件设备安装在一起,组装成出租车计价器。
(2)软件实施:把编写的源程序和组合程序烧写到主控板上,运行程序,实现出租车计价器的功能。
(3)测试实施:运行出租车计价器,输入相关的参数,检验程序的正确性,确保出租车计价器正常工作。
单片机课程设计论文---出租车计价器
河南理工大学《单片机应用与仿真训练》设计报告基于单片机的出租车计价器的设计摘要本设计采用AT89S52单片机为主控器,并用霍尔传感器检测电机转盘转动模拟车速,实现对出租车的多功能的计价设计,输出采用8段数码显示管。
本电路设计的计价器可以实现要单程,往返和中途等待来调节计费,并且能够记录等待时间。
出租车计价是根据车所行驶的路程以及乘客乘车的方式综合决定的。
出租车行驶总路程可以通过车轮的周长乘车轮旋转圈数得到。
即可计算得到车轮旋转几周出租车能行驶一公里的路程。
使用霍尔传感器方便地计量车轮旋转的圈数。
输出的脉冲信号被接入到AT89S52单片机系统中,通过计算接收到的脉冲个数,计算出当前所行驶的路程,并且可以计算实时的速度,在速度低于5公里每小时是进入等待计费。
于此同时,根据不同的收费标准,通过选择相应的起步价、单价等收费标准进行计算。
通过键盘能够实现往返设置,启动、暂停、停止计价器以及切换显示当前的行驶里程和需支付的车费。
本设计硬件电路总体可以分为五个单元:单片机最小系统单元,指示灯电路单元,按键电路单元,路程时间与金额显示单元,转速信号接收单元。
软件系统可以大致分为五个大的模块为:总初始化模块,按键扫描模块,中断与定时模块,数据计算模块,数码管显示模块。
其中,键盘扫描和数码管显示采用查询方式,转速信号接收与等待记时采用中断方式。
这些软硬件系统构成了最终的设计。
关键词单片机霍尔传感器出租车计价器摘要...........................................................................................................- 1 -1概述................................................................................................................- 3 -1.1设计目的、意义 .. (3)1.2AT89S52单片机功能简介 (3)2.系统总体方案设计及硬件设计......................................................................- 5 -2.1设计要求 .. (5)2.2设计参数 (5)2.3方案的选取 (5)2.4硬件设计 (6)2.4.1 AT89S52单片机及最小系统..................................................................- 6 -2.4.2 测距单元.................................................................................................- 8 -2.4.3 显示单元.............................................................................................. - 10 -2.4.4键盘与指示单元................................................................................... - 11 -3软件设计 ...................................................................................................... - 12 -3.1总体流程 . (12)3.2计算模块 (12)3.3键盘扫描 (13)3.4显示程序 (13)4 PROTEUS软件仿真...................................................................................... - 14 -5课程设计体会............................................................................................... - 14 -参考文献......................................................................................................... - 16 -附1:源程序代码 ........................................................................................... - 17 -附2:系统原理图 ........................................................................................... - 31 -1概述1.1 设计目的、意义租车计价器技术也在不断进步和提高。
单片机课程设计 出租车计价器
简易出租车计价器摘要:介绍了一种以单片机为核心的多功能出租车计价器,该计价器采用单CPU结构,具有计量功能、掉电保护功能、语音功能等。
文中阐述了系统的硬件及软件结构。
关键词:出租车计价器单片机多功能第1节引言汽车计价器是乘客与司机双方的交易准则,它是出租车行业发展的重要标志,是出租车中最重要的工具。
它关系着交易双方的利益。
具有良好性能的计价器无论是对广大出租车司机朋友还是乘客来说都是很必要的。
因此,汽车计价器的研究也是十分有一个应用价值的。
电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现。
为此我们采用了单片机进行设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。
针对计费模式的切换,通过软件编程就可以轻易而举的实现。
避免了机械开关带来的不稳定因素。
随着生活水平的提高,人们已不再满足于衣食住的享受,出行的舒适已受到越来越多人的关注。
于是,出租车行业以低价高质的服务给人们带来了出行的享受。
但是总存在着买卖纠纷困扰着行业的发展。
而在出租车行业中解决这一矛盾的最好方法就是改良计价器。
用更加精良的计价器来为乘客提供更加方便快捷的服务。
现在各大中城市出租车行业都已普及自动计价器,所以计价器技术的发展已成定局。
而部分小城市尚未普及,但随着城市建设日益加快,象征着城市面貌的出租车行业也将加速发展,计价器的普及也是毫无疑问的,所以未来汽车计价器的市场还是十分有潜力的。
1.1出租车计价器概述本电路以89S51 单片机为中心、附加A44E 霍尔传感器测距,实现对出租车计价统计,采用A T24C02 实现在系统掉电的时候保存单价和系统时间等信息,输出采用8 段数码显示管。
本电路设计的计价器不但能实现基本的计价,而且还能根据白天、黑夜、中途等待来调节单价,同时在不计价的时候还能作为时钟为司机同志提供方便。
单片机课设 出租车计价器的设计
单片机原理与应用课程设计(论文)摘要本设计的是一个基于单片机AT89S52的出租车自动计费设计,附有复位电路,时钟电路,键盘电路等。
复位电路是单片机的初始化操作,除了正常的初始化外,为摆脱困境,通过复位电路可以重新开始。
时钟电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。
在上电时四位共阴极5461AS数码管显示最初的起步价,里程收费,等待时间收费三种收费,通过按键可以调整起步价,里程收费,等待时间收费。
通过按键模拟出租车的运行,暂停,停止。
在5461AS液晶上可以显示运行的时间,运行时暂停的时间,通过计算可以得出总共的费用和总的路程。
在这里主要是以AT89S52单片机为核心控制器,P0口接5461AS液晶显示模块,P1口接按键的,通过按键输入。
关键词:单片机AT89S52;5461AS液晶;出租车计费器单片机原理与应用课程设计(论文)目录第1章设计方案论证 (1)1.1 出租车计价器设计要求 (1)1.2 课题设计要求、系统方案介绍 (1)第2章硬件电路设计 (3)2.1振荡电路 (3)2.2复位电路设计 (3)2.3 键盘接口电路 (4)2.4 显示电路 (4)2.5 路程测量部分 (5)2.6 单片机各引脚功能说明 (5)第3章程序设计 (8)3.1总流程图 (8)第4章设计总结 (13)参考文献 (14)附录1:整体电路原理图 (15)附录2:器件清单 (16)单片机原理与应用课程设计(论文)第1章设计方案论证1.1 出租车计价器设计要求设计一个出租车自动计费器,计费包括起步价、行车里程计费、二部分,用5461AS 液晶显示总金额,运行时间,暂停时间,最大值为99.9元,起步价为5.0元,3Km之内起步价计费,超过3Km,增加2.0元(即1KM增加2.0元),用液晶显示总里程,同时用液晶显示等待时间和运行花费时间。
①、计费功能费用的计算是按行驶里程收费。
设起步价为5.00元。
基于单片机的出租车计价器设计
基于单片机的出租车计价器设计一、项目背景出租车计价器是出租车行业中一项关键的设备,用于计算乘客乘车费用。
传统的出租车计价器通常采用机械式计价方式,计价精度较低、可靠性差,且经常需要维护和修理。
现代化电子技术的发展和普及,为出租车计价器的升级换代提供了技术支持。
本设计旨在基于单片机技术,实现一款数字化的出租车计价器。
二、设计思路本设计采用单片机(AT89S52)作为主控芯片,通过计算车程距离、时间、里程表数等因素,实现乘客费用的计算和打印等功能。
具体设计思路如下:1.硬件系统设计本系统的硬件主要包括输入设备、输出设备和主控芯片等组成部分。
输入设备:(1)计价器按钮:用于开始和结束计价,并进行一些功能设置操作;(2)里程表信号输入:通过传感器实现里程表数自动识别和读取;(3)GPS模块:获取当前车辆位置信息和车速信息。
输出设备:(1)VFD液晶显示屏:用于显示当前计价信息、费用总额、车费等;(2)打印机:用于打印计价信息单。
主控芯片:本设计采用AT89S52芯片作为主控芯片,具有较高的计算能力和稳定性。
2.软件功能设计本系统的软件主要包括实时计价程序、计价单打印程序和功能设置程序等。
实时计价程序:通过读取输入设备的信号和计算得到的车程距离、时间、速度等参数,实时计算出乘客费用的总额,并在VFD液晶显示屏上显示;同时根据需要进行语音播报提醒。
计价单打印程序:在乘客结束乘车并付款后,系统自动将计价信息打印在计价单上。
同时,系统将计价信息保存在EEPROM中,方便后续查询和管理。
功能设置程序:实现计价器的一些基本设置,例如车型设置、费用标准设置、打印格式设置等。
三、设计优势1.精确计算:本系统通过GPS等多种手段自动获取车程距离、时间、速度等信息,保证了计费的精确性;2.快速打印:系统将计价信息保存在EEPROM中,用户结束乘车后,系统自动打印计价单,节约了时间和人力成本;3.智能提醒:系统通过语音播报可以提醒乘客付款和司机结束计价,减少误操作和纠纷的发生;4.灵活可扩展:本系统可以根据需要进行各种费用标准和车型的设置,方便用户应对不同的计价情况。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。
而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试。
而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易地实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。
本设计的是一个基于单片机AT89S52的出租车自动计费设计,附有复位电路,时钟电路,键盘电路等。
复位电路是单片机的初始化操作,除了正常的初始化外,为摆脱困境,通过复位电路可以重新开始。
时钟电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。
在上电时LED数码管显示最初的起步价,里程收费,等待时间收费三种收费。
按暂停键,计价器可暂停计价,按查询键,在LED数码管上可以显示运行时等待的时间。
通过计算可以得出总共的费用和总的路程。
在这里主要是以AT89S52单片机为核心控制器,P0口、P2 口接两片四合一数码管,P1口接按键,通过按键输入。
关键词:单片机 AT89S52;LED数码管;出租车计费器;目录1 概述 (1)1.1 课题简介 (1)1.2 功能要求 (1)2 系统总体方案及硬件设计 (2)2.1 系统工作原理及总体方案 (2)2.2 单片机最小系统单元 (3)2.3 霍尔传感器检测单元 (3)2.4 键盘调整单元 (5)2.5 显示单元 (5)3 软件设计 (7)3.1系统主程序 (7)3.2 按键扫描程序 (8)3.3 中断程序 (9)3.4 计算程序 (10)3.5 显示程序 (10)4 实验仿真 (12)4.1 Proteus介绍 (12)4.2 调试与测试 (12)4.3 里程计价测试 (12)5 课程设计体会 (14)参考文献 (15)附1:系统原理图 (16)附2:源程序代码 (16)1 概述1.1 课题简介出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。
为此,我们采用单片机系统设计了一款符合大众化的计费系统。
本方案以At89s52单片机为中心、配合LED数码管,实现对出租车计价统计。
本方案可以实现:1. 系统接收里程传感器的脉冲输入,并对脉冲进行计数,继而转换为里程。
2. 采用现行出租车的计价系统的计算方法,并对行驶里程进行计费,提供友好的用户界面,并具有发光二极管指示操作状态功能。
1.2 功能要求利用AT89s52单片机配合LED数码管,实现基本的出租车计价功能,具体设计规格如下:1. 用前4位数码管实时显示里程数,单位为公里,最后一位为小数位;用后4位数码管时时显示金额数,单位为元,最后一位为小数位。
2. 规定出租车单程价格为2元/公里,往返则价格为1.5元/公里;单程/往返分别由“单程”按键和“往返”按键设定。
3. 车速<5公里/小时的时间累积为总等待时间T(分钟),每5分钟等待时间相当于里程数增加1公里。
4. 起步公里数为3公里,价格为5元;若实际运行大于3公里,按“设计任务2”计算价格。
5. 到达目的地后,按“暂停”键,计价器可暂停计价。
6. 按“清除”键,计价器能将记录数据(里程、等待时间与价格等)自动清0。
7. 按“查询”键,能自动显示总等待时间T,再按下该键回到显示里程数、金额状态。
8. 扩展:空车指示、语音提示、信息存储等2 系统总体方案及硬件设计2.1 系统工作原理及总体方案出租车计价器用于记录里程、等待时间、是否往返、起步公里数与价格的关系,它能有效地避免司机与乘客间的矛盾,保障双方的利益。
出租车行驶总路程可以通过车轮的周长乘车轮旋转圈数得到。
即可计算得到车轮旋转几周出租车能行驶一公里的路程。
因此,使用霍尔传感器的目的就是方便地计量车轮旋转的圈数。
可在车轮转盘上粘一个小磁钢,当转轮转动时,霍尔传感器检测到磁场及其变化,产生脉冲信号。
输出的脉冲信号被接入到AT89S52单片机系统中,通过计算接收到的脉冲个数,计算出当前所行驶的路程。
同时,根据不同的收费标准,选择相应的起步价、单价等收费标准进行计算。
再配置上键盘和数码显示,通过键盘能够实现启动、暂停计价器、切换显示当前的行驶里程和需支付的车费。
通过分析,需要实现四个主要的功能模块,分别为脉冲计数模块、定时器计时模块、按键的处理以及数码管动态扫描等功能。
定时器计时模块主要完成途中等待(即没有脉冲来时)30秒的计时。
在启动键按下后,定时器就不停的计时,只要有脉冲来就将计时的值清除为零。
如果没有脉冲来,当计时超过30秒时,相应的总金额要按照收费标准计价。
中断的管理:尽管中断有嵌套以及优先级的功能,但是由于定时器已经使用一个了中断资源,脉冲检测不宜再采用中断方式,而是采用查询方式。
由于需要不停的要清除30秒的计时,因此,脉冲的计数不采用定时器的计数方式。
启动键触发定时器开始工作,而定时器的运行可以作为脉冲计数的标志,只要定时器计时在运行,每来一个中断都应该计数。
主程序完成键盘的扫描和按键的处理,查询脉冲产生的中断,并完成脉冲的计数。
若每个脉冲代表1米,则当计数到1000时表示1千米的距离,相应的总金额要按照收费标准计价。
采用MCS51系列单片机AT89S51作为主控制器,外围电路器件包括数码管、独立式键盘、复位电路等。
模拟出租车计价器能根据总里程数、总等待时间长短、是否往返、起步公里数的情况作出相应报价等。
当然实际的出租车计价器还具有打印票据,显示是否空车等功能。
总体模块如图2.1所示。
图2.1 电路的组成部分2.2 单片机最小系统单元主控机系统采用了Atmel 公司生产的 AT89S52单片机,它含有256 字节数据存储器,内置8K的电可擦除FLASH ROM,可重复编程,大小满足主控机软件系统设计,所以不必再扩展程序存储器。
复位电路和晶振电路是AT89S52工作所需的最简外围电路。
单片机最小系统电路图如图2.2所示。
图2.2 单片机最小系统图在复位电路中,按一下复位开关就使在RST端出现一段时间的高电平,外接11.0592M 晶振和两个30pF电容组成系统的内部时钟电路。
2.3 霍尔传感器检测单元Us1881 属于开关型的霍尔器件,其工作电压范围比较宽(3.5~24V),其输出的信号符合TTL电平标准,可以直接接到单片机的IO 端口上,而且其最高检测频率可达到1MHZ。
Us1881 集成霍耳开关由稳压器A、霍耳电势发生器(即硅霍耳片)B、差分放大器C、施密特触发器D和OC门输出E五个基本部分组成。
在输入端输入电压Vcc,经稳压器稳压后加在霍尔电势发生器的两端,根据霍尔效应原理,当霍尔片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍尔电势差VH输出,该VH信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC门输出。
当施加的磁场达到工作点(即Bop)时,触发器输出高电压(相对于地电位),使三极管导通,此时OC 门输出端输出低电压,三极管截止,使OC门输出高电压,这种状态为关。
这样两次电压变换,使霍尔开关完成了一次开关动作。
图2.3 霍尔开关集成传感器原理图及其输出特性里程计算是通过安装在车轮上的霍尔元件检测到的信号,送到单片机,经过处理计算,送给显示显示单元的。
霍尔传感器是一种磁传感器。
用它可以检测磁场及其变化,可在各种与磁场有关的场合中使用。
霍尔传感器以霍尔效应为其工作基础,是由霍尔元件和它的附属电路组成的集成传感器。
霍尔传感器分为线性型霍尔传感器和开关型霍尔传感器两种。
我们所用的是开关型霍尔传感器。
其原理图如图2.4所示:我们选择P3.2口作为信号输入端,车轮每转一圈(假设车轮周长为1米),霍尔开关就检测并输出信号,引起单片机中断,对脉冲计数,当计数达到一千次时,也就是1公里,单片机就控制金额自动增加。
2.4 键盘调整单元独立式键盘:独立式键盘中,每个按键占用一根I/O口线,每个按键电路相对独立。
I/O口通过按键与地相连,I/O口有上拉电阻,无键按下时,引脚端为高电平,有键按下时,引脚电平被拉低。
I/O口内部有上拉电阻时,外部可不接上拉电阻。
键盘接口电路如图2.5所示:图2.5 键盘接口电路S1:接P1.0口,对上一次的计费进行清零,为下次载客准备。
S2:接P1.1口,能自动显示总等待时间T,再按下该键回到显示里程数、金额状态。
S3:接P1.2口,选择是按单程计费还是双程计费。
S4:接P1.3口,可以暂停计费,方便乘客结账。
2.5 显示单元对于现实电路我们可以采用数码管,也可以采用液晶显示。
LED数码管特点有:寿命长、成本低、亮度高、故障少、视角大、可视距离远等,但其显示内容有限。
液晶显示的特点有:显示内容丰富等,但其驱动复杂,成本高;外部光线强时,可视距离近。
综合考虑,本次设计采用LED数码管。
显示电路如图2.6所示:图2.6 显示电路3 软件设计软件是单片机系统的灵魂,根据设计的要求,在本系统中本系统软件中包括下面程序模块:主程序:初始化系统涉及到的硬件模块,扫描键盘,根据按键启动/停止里程测量,实时更新单价、里程、等待时间、费用等信息显示。
按键扫描程序:扫描按键,返回扫描结果。
计算程序:将传感器发出脉冲数转换为公里数,并根据规则计算对应的费用。
显示子程序:将计算程序得到的数据反映到数码显示管上。
中断程序:监测行驶速度,统计等待时间。
现在应用更广泛的是单片机C语言,因其简单明了,故此次课程设计采用单片机C语言编程。
3.1系统主程序在主程序模块中,需要完成对各参量和接口的初始化、出租车起价和单价的初始化以及中断、计算、循环等工作。
当汽车运行起来时,就启动计价,根据里程寄存器中的内容计算和判断行驶里程是否已超过起步价公里数。
若已超过,则根据里程值、每公里的单价数和起步价数来计算出当前的总金额,并将结果存于总金额寄存器中;中途等待时,无脉冲输入,不产生中断,当时间超过等待设定值时,开始进行计时,并把等待价格加到总金额里,然后将总金额、里程和单价、往返价格送数码管显示出来。
程序流程如图3.1所示:图3.1 主程序流程3.2 按键扫描程序键盘实质上是一组按键开关的集合,均利用机械触点的合、断作用。
按键在闭合及断开的瞬间均伴随有一连串的抖动,抖动反应在电压上就是呈现出高电平或低电平,为了确保CPU对一次按键动作只确认一次,必须消除抖动的影响。
去抖通常有硬件去抖和软件去抖两种方法,本程序使用软件延时去抖。
图3.2 按键抖动信号波形对于独立式键盘判键,首先看有键按下不,如果有键按下则延时一会儿,在判断是否真的有键按下,如果确实有键按下,再判键释放,最后执行键功能程序。