ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:681.93KB ,
资源ID:5595282      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5595282.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(出租车计费系统.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

出租车计费系统.docx

1、出租车计费系统济南铁道职业技术学院毕业设计题 目:出租车计价系统系 另H 专 业:电气自动化 班 级:0833 学生姓名 指导教师 完成日期:2011年3月20日摘要随着经济的发展, 带动汽车行业快速发展, 出租车日益普遍化, 在市场经济 的环境下, 出租车计费的公平性也成了大家在意的话题。 了解在出租车上应用的 计费系统,对我们日常出行有所帮助。本出租车计费系统由单片机 AT89C5和一些外围电路组成,具有结构简单、 操作方便、显示清晰、功能强大等特点。本方案使用六个七段数码管作为显示器,可以显示数字使系统信息一目了 然。比较真实地模拟出租车的空车、载客、到站及对各状况的费用的计算、统计 和

2、显示等功能。本系统涉及到的理论知识有:AT89C51单片机工作原理及应用,实时时钟芯 片的工作原理及应用,出租车计费系统的原理和实现方法。关键词:单片机AT89C51时钟芯片DS1302掉电保护芯片AT24C021前言 41.1出租车计费器 41.2单片机的发展及其应用范围 41.3出租车计费系统设计方案 52出租车计费系统 62.1计费系统的组成 62.2出租车行驶里程和费用计算 63出租车计费系统选用的器件 83.1AT89C51 单片机 83.2时钟芯片DS1302 103.3掉电保护芯片 AT24C02 113.4光电传感器 123.5 LED数码管 134出租车计费系统模块组成 14

3、4.1里程信息采集模块 144.2掉电保护模块 144.3按键模块 154.4实时时钟模块 164.5显示模块 165系统程序设计 185.1系统主程序流程框图 185.2里程和费率计算程序流程图 19总结 24致谢 25参考文献 261 前言1.1 出租车计费器出租车是现代的重要交通工具,出租车计费器是乘客与司机双方的交易准 则,而其安全性和先进性是人们普遍关心的问题, 要求计费器的稳定, 计费准确, 以及预防司机作弊等等都关系到乘客的切身利益。 它是出租车行业发展的重要标 志,是出租车中最重要的工具。出租车计费器关系着交易双方的利益,所以,具 有良好性能的计费器无论是对广大出租车司机还是乘

4、客来说都是很必要的。因 此,出租车计费器的研究也是十分有应用价值的。目前,普遍的出租车计费器具有时钟,起步价,里程计费,等待计费及显示 几个功能。 其发展前景是客观的, 将来的产品除了具有以上功能外, 另外还可增 加如下功能 :防作弊功能, IC 卡付费,语音播报:当乘客上车时可自动问好,当 到达目的地, 自动播报乘车费用并礼貌再见, 表达希望下次乘车的意思。 增加的 这些功能将会更好的服务乘客。1.2 单片机的发展及其应用范围单片机是单片微型计算机的简称。它不仅仅是完成某一个逻辑功能的芯片, 而是将中央处理器、存储器、输入输出接口、定时/计数器等微型计算机系统部 件集成到一个芯片上而构成的计

5、算机。自单片机诞生至今,已经走过 30 年的发 展历程。从30年发展历程可以看出,单片机技术的发展以微处理器(MPU技术 及超大规模集成电路技术的发展为先导, 以广泛的应用领欲为动力, 表现出较微 处理器更具个性的发展趋势。单片机在目前的发展趋势下,表现出几大趋势。1) 可靠性及应用水平越来越高,和 Internet 连接已是一种明显的趋势。2) 所集成的部件越来越多3) 功耗越来越低,和模拟电路结合越来越多 单片机在各个领域均得到了广泛地应用。1) 智能仪器仪表2) 实时工业控制3) 计算机智能终端4) 通讯设备5) 导航系统6) 家用电器1.3出租车计费系统设计方案出租车计费系统可以利用数

6、字电路来实现, 采用传感器件,输出脉冲信号放 大整形作为移位寄存器的脉冲,实现计价。该方案虽然电路简单,但是性能不够 稳定,而且不能调节单价,也不能根据时间来调节计费标准,电路不够实用。本出租车计费系统采用单片机控制,利用单片机丰富的 10端口,及其控制 的灵活性,实现里程计费功能和价格调节、时钟显示功能。其原理如图1-1所示。图1-1单片机控制方案所以,采用单片机设计方案有较大的活动空间, 不但能实现所要求的功能而 在很大的程度上扩展功能,而且还可以方便的对系统进行升级。2出租车计费系统2.1计费系统的组成出租车计费系统以单片机为系统核心,利用AT89C51单片机再配合六个数码 管组成的显示

7、模块等,实现出租车计价器功能。本系统是由AT89C51单片机、数码管显示模块、计数脉冲发生器、系统实时 时钟及语音等模块组成。系统框图如图 2-1所示:图2-1出租车计费系统功能图2.2出租车行驶里程和费用计算单片机对传感器输出脉冲进行计数,并将脉冲数换算成公里数每公里的脉冲 数:PulsePerKM=10 (个脉冲)(1) 汽车行驶里程。用四位数字显示,显示方式为“xxx . X”单位Km 精确到0.1Km(2)里程单价。用三位数字表示,显示方式为“XXX . X”,单位为元/ Km根据时间段不同有两种情况:当时间段为 5: 00-23 : 00时单价为2元/ Km 其他时间段为2.4元/

8、Km(3)低速等待时间和费用。用四位数字显示分钟和秒,显示方式为“XXX . X”,等候时间定义:当汽车行驶速度低于 6公里/小时为等候时间。低速等 待费用:累计每满 3 分钟加收 1 元。(4)费用的计算。出租车的起步价为7.00元,当总里程小于3Km时按起步 价计算费用。当总里程大于3Km时按下式计算费用:费用=起步价+里程X里程单价+低速等待时间X低速等待费用(5)费用显示。用四位数字显示,显示为“XXX . X”,单价为元。当出 租车运行时,应显示当前费用,在汽车熄火的情况下,时钟必须正常工作,但是 可以不显示。3出租车计费系统选用的器件3.1 AT89C51 单片机AT89C51是一

9、种带4K字节闪存可编程可擦除只读存储器(FPEROFlash Programmable and Erasable Read Only Memory )的低电压、高性能 CMOS 8& 微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除 1000次。该器件采用ATMEI高密度非易失存储器制造技术制造,与工业标准的 MCS-51指令集和输出管脚相兼容。由于将多功能 8位CPU和闪烁存储器组合在单个芯片中, ATMEL勺AT89C51是一种高效微控制器。AT89C51的管脚排列及描述如下图 3-1 所示AM?:!图3-1 AT89C51的管脚排列图AT89C51管脚说明VCC供电电源GND接

10、地P0 口 : P0 口为一个8位漏级开路双向I/O 口,每脚可吸收 8TTL门电流。 当P0 口的管脚第一次写 1时,被定义为高阻输入。 P0能够用于外部程序数据存储器,它可以被定义为数据 / 地址的第八位。、P1 口: P1 口是一个内部提供上拉电阻的 8位双向I/O 口,P1 口缓冲器能接收输出4TTL门电流。P1 口管脚写入1后,被内部上拉为高,可用作输 入, P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。P2 口: P2 口为一个内部上拉电阻的 8位双向I/O 口,P2 口缓冲器可接收,输出4个TTL门电流,当P2 口被写“ T时,其管脚被内部上拉电阻 拉高,且作

11、为输入。并因此作为输入时, P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。 P2 口当用于外部程序存储器或 16位地址外部数据存储器进行存取时, P2 口输出地址的高八位。 在给出地址“ T时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时, P2 口输出其特殊功能寄存器的内容。P3 口: P3 口管脚是8个带内部上拉电阻的双向 I/O 口,可接收输出 4个TTL门电流。当P3 口写入“ 1”后,它们被内部上拉为高电平,并用作 输入。作为输入,由于外部下拉为低电平, P3 口将输出电流(ILL )这是由于上拉的缘故。P3 口也可作为 AT89C51的一些特殊功能口,如

12、下表所示:P3.0 RXD (串行输入口)P3.1 TXD (串行输出口)P3.2 /INT0 (外部中断 0)P3.3 /INT1 (外部中断 1)P3.4 T0 (记时器 0外部输入)P3.5 T1 (记时器 1 外部输入)P3.6 /WR (外部数据存储器写选通)P3.7 /RD (外部数据存储器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号RST复位输入。当振荡器复位器件时,要保持 RST脚两个机器周期的高电平时间ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地 址的地位字节。PSEN :外部程序存储器的选通信号。在由外部程序存储器取指期间, 每个机器周期

13、两次/PSEN有效。但在访问外部数据存储器时,这两次有效的 /PSEN信号将不出现。EA/VPP:当/EA保持低电平时,贝U在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1时,/EA将内部锁定为 RESET当/EA端保持高电平时,此间内部程序存储器。XTAL1 :反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.2时钟芯片DS1302DS1302内含有一个实时时钟/日历和31字节静态RAM通过简单的串行接口 与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数 和闰年的天数可自动调整时钟操作可通过

14、AM/PM指示决定采用24或12小时格 式DS1302与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口 线1 RES复位2 I/O数据线3 SCL串行时钟时钟/RAM的读/写数据以一个字节或 多达31个字节的字符组方式通信DS1302工作时功耗很低保持数据和时钟信息 时功率小于1mW/ DS1302的管脚排列及描述如下图3-2及表所示DS13028-PIN DIP (300 MIL)RST 复位脚I/O 数据输入/输出引脚SCLK 串行时钟图3-2 DS1302管脚配置和管脚功能说明DS130特性:1)实时时钟具有能计算2100年之前的秒分时日日期星期月年的能力还有闰年调整的能力2

15、)318位暂存数据存储RAM串行I/O 口方式使得管脚数量最少3) 宽范围工作电压2.0到5.5V,工作电圧2.0V时电流小于300nA4) 读/写时钟或RA数据时有两种传送方式单字节传送和多字节传送字符组 方式,8脚DIP封装或可选的8脚SOIC封装根据表面装配5) 简单3线接口,与TTL兼容Vcc=5V,可选工业级温度范围-40 C、+85 C3.3掉电保护芯片AT24C02单片机实现的仪器仪表,家用电器,工业监控等系统中,对某些状态参数,不仅要求能够在线修改,而且断电能保持,以备上电后恢复系统的状态。断电数 据保护方法可选用具有断电保护功能的 RAI和电可擦存储器EEPROM/I具有断电

16、保 护功能的RA容量大,速度快,但占用线多,成本高,EEPROS合数据交换量少, 对传送速度要求不高的场合。AT24CX系列EEPROM串行的用电擦除的可编程CMO只读存储器。自定时写周 期包括自动擦除时间不超过10ms典型时间为5ms擦除/写入周期寿命一般都可 达到10万次以上。片内数据保存寿命可达40年以上。采用单一电压+5V,低功耗 工作电流1mA备用状态只有10uA,端口为三态门输出,与TTL电平兼容。一般商业 品工作温度为0+70C,工业品为-40+85C。这个系列的芯片有8脚DIP (双列 直插)封装,8脚SOIC(表面贴装)封装,一部分型号还有14脚 SOIC封装。ATC24C0

17、是目前最常用的型号,支持器件地址编码,统一串行总线最多时可 同时连接18片,支持硬件设置数据保护。AT24C0系列引脚结构如图3-3。图3-3 AT24C02引脚结构图AT24C0的 EEPROM引脚说明如下:SCL串行时钟端,用于对输入和输出数据的同步。写入串行 EEPRO的数据用SCLh升沿同步,输出数据用下降沿同步SDA串行数据输入/输出端,漏极开路结构。使用时该引脚必须接一个5.1KQ 左右的上拉电阻。SDA线上数据传送顺序是高位在先,低位在后。WP :写保护,用于硬件数据保护功能。当该引脚接地时,可以对整个存储 器进行正常读/写操作;当其接电源Vcc时,芯片就具有写保护功能,被保护的

18、区 域因型号而异。 被保护部分的读操作不受影响, 实际上这时被保护的区域就可以 作为串行只读存储器。应注意,对AT24C0芯片,虽然第7脚也定义为WP但实际 不起作用。A0, A1, A2:片选或以页面选择地址输入,用于EEPRO器I件地址编码。将这 3个引脚配置成不同的编码值,可选中不同的芯片。在同一串行总线上最多可扩 充8片同一容量或不同容量的芯片。但注意,有些型号的地址是无效的。例如, AT24C1所对应的3个引脚均无效,因此使用AT24C1时只能寻址1片,同样,使用 AT24C04寸刻寻址4片;使用AT24C0可寻址2片。TEST测试,用于对存储器的检测。VCC :电源电压 +5V。G

19、ND: 接地端3.4 光电传感器光电传感器是采用光电元件作为检测元件的传感器。 它首先把被测量的变化 转换成光信号的变化, 然后借助光电元件进一步将光信号转换成电信号。 光电传 感器一般由光源、光学通路和光电元件三部分组成。光电式传感器是以光电器件作为转换元件的传感器。 它可用于检测直接引起 光量变化的非电量,如光强、光照度、辐射测温等;也可用来检测能转换成光量 变化的其他非电量,如零件直径、表面粗糙度、位移、振动、速度、加速度,以 及物体的形状等。光电式传感器具有非接触、响应快、性能可靠等特点,因此获 得广泛应用。光敏二极管是最常见的光传感器。 光敏二极管的外型与一般二极管一样, 只 是它的

20、管壳上开有一个嵌着玻璃的窗口, 以便于光线射入, 为增加受光面积, PN 结的面积做得较大, 光敏二极管工作在反向偏置的工作状态下, 并与负载电阻相 串联,当无光照时,它与普通二极管一样,反向电流很小,称为光敏二极管的暗 电流;当有光照时,载流子被激发,产生电子 -空穴,称为光电载流子。在外电 场的作用下, 光电载流子参于导电, 形成比暗电流大得多的反向电流, 该反向电 流称为光电流。 光电流的大小与光照强度成正比, 于是在负载电阻上就能得到随 光照强度变化而变化的电信号。3.5 LED数码管发光二极管(LED是能将电信号转换成光信号的发光器件。如果把发光二 极管制成条状,再按照一定方式连接,

21、组成数字“ 8”,就构成LED数码管。使用 时按照一定规律使某些笔端上的发光二极管发光, 即可组成0到9的一系列数字。数码显示管有共阴极和共阳极接法。若采用共阴极接法,那么阴极公共点接 地,各阳极独立,当有高电平时发光。共阳极接地灯光显暗淡,本设计采用共阴 极接法。LEE显示器与单片机接口一般有静态显示和动态显示两种方式。 LED采用静态显示与单片机接口时,在位数比较多时,电路较复杂,需要的接口芯片也越多, 成本也就越高。动态LED显示接口由于各个数码管共用同一个段码输出口,从而 大大简化了硬件电路,降低了成本。LED显示器中每个发光二极管要通过5mA到 20mA勺电流二极管才能正常发光。在显

22、示过程中每位数码管的点亮时间为 2ms由于人的视觉暂留现象及发光二极管的余辉效应, 尽管实际上各个数码管并非同 时点亮,但只要扫描的速度足够快,给人们的印象就是一组稳定的显示数据, 不 会有闪烁感。动态显示和静态显示是一样的,能节省大量的I /O端口,而且功耗 低。本设计采用的是动态显示,目的就是为了节省硬件资源。AJrtBERCC1234f4,1寸-卜5-豪f167I1 iS6图3-4 LED管脚配置图4出租车计费系统模块分析4.1里程信息采集模块对射式光电传感器图4-1遮断式光电测量示意图本设计采用的是遮光式对射光电传感器,图 4-1是其示意图。遮光盘不管是什么材料,只要在遮光盘的同心圆上

23、均匀分布若干个通光的孔, 光电传感器固定在遮光盘工作的位置上,一般不能用在粉尘较多的场合。光电传感器电路图 如图4-2所示。图4-2光电传感器电路图本文选择了 P3.2 口作为信号的输入端,内部采用外部中断0,车轮每转一圈, 光电传感器就检测并输出信号,引起单片机的中断,对脉冲计数。通过计算将脉 冲增加体现在里程和金额上。4.2掉电保护模块本设计掉电保护电路采用了 AT24C02芯片来完成此部分功能。掉电存储单元 的作用是在电源断开的时候,存储当前设定的单价信息。 AT24C02是 2KB字节的 电可擦除存储芯片,芯片内的资料可以在断电的情况下保存 40年以上,而且采 用8脚的DIP封装,使用

24、方便。其电路如图4-3所示图4-3掉电存储电路原理图图中R8R10是上拉电阻,其作用是减少AT24C02的静态功耗,由于AT24C02 的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线 SCL(移位脉冲)和SDA(数据/地址)与单片机传送数据。每当设定一次单价,系 统就自动调用存储程序,将单价信息保存在芯片内;当系统重新上电的时候,自 动调用读存储器程序,将存储器内的单价等信息,读到缓存单元中,供主程序使 用。4.3按键扫描模块图4-4键盘接线图在单片机应用系统中,键盘是人机交互的重要组成部分,用于单片机应用系 统输入数据和控制信息。键盘实质上是一组按键组合开关的集合。本出租车

25、计费 系统当单价等信息需要修改时,就要用到键盘进行修改。由于调节的信息不多, 故采用五个键盘即可,一个“启动/停止”四个功能调整按键,分别实现清零、 切换、增加(空车)和减小(载客)作用。电路原理如图 4-4所示。4.4实时时钟模块用实时时钟芯片DS1302乍为时钟电路,产生年/月/日/时/分/秒等信 号,与AT89C5单片机P1.6、P1.7、P2.4接口相连供系统调用。时钟模块电路图 如图4 5所示。图4-5时钟模块电路图DS1302内部寄存器:CH:时钟停止位寄存器2的第7位12/24小时标志CH=0振荡器工作允许bit7=1,12 小时模式CH=1振荡器停止bit7=0,24 小时模式

26、WP:写保护位寄存器2的第5位:AM/PM定义WP=0寄存器数据能够写入AP=1下午模式WP=1寄存器数据不能写入AP=0上午模式TCS:涓流充电选择DS:二极管选择位TCS=1010使能涓流充电DS=01选择一个二极管TCS其它 禁止涓流充电DS=10选择两个二极管DS=00或11,即使TCS=1010,充电功能也被禁止4.5显示模块图4-6 LED显示器连线同键盘一样,显示器也是人机交流的重要组成部分。计算机运行结果和运行状态可以通过显示器显示出来。 所以为了直观的显示出系统数据, 本设计中采用7段LE显示器。字符和数字量与段编码关系如下:对应数据线D7D6D5D4D3D2D1D0对应显示

27、段E JfDP Jgcdr ba显示数字 段码03FH11001111106H0000001125BH0 11o :11r 1r 01 34FHo1o11r 0p 1厂466H1001001156DH1 J101101067DH110 111110 1707H01000P 0p 11 J87FH1 110 111r 1r 11 196FH11011011LED显示器与单片机电路连接图如图4-6所示5系统程序设计5.1系统主程序流程框图在本次设计中电路键盘用到了 P2 口,其中P2.0到P2.3 口作为键盘的输入, 里程信息采集电路的控制线用了 P3.2 口线,掉电电路的控制线用了 P2.5和P

28、2.6 口线,实时时钟电路控制线用了 P1.6、P1.7和P2.4 口线。P0和P1部分口线连 接显示电路和LED信号控制脚。其它口线连接单片机的基本电路。以下为出租车 计费器系统主程序流程图。开始单片机初始化 IC总线初始化 J 显示模块初始化5.2里程和费用等部分子程序程序流程图在单片机程序运行过程中,当有中断源产生中断信号,并且中断是允许的,就会进入中断处理过程。中断处理过程可分为中断响应、 中断服务和中断返回三在每个机械周期,单片机对所有中断源按顺序检测,找到所有的中断请求, 即检测是否有按键按下。当检测到 S4 按下时,启动计费系统,单片机采集里程 信息, 10 个脉冲为一公里,本程

29、序采用 5 个脉冲数增加一次总里程和总费用。 当单片机检测到 S3 按下时,乘客到达目的地,计费结束中断返回并显示总费用 和总里程。出租车进入空车状态,显示器显示时间,等待下一次中断。出租车计费系统程序编程如下:ORG 0000HLJMP MAINORG 0100HMAIN: MOVE R1,#00H ; 初始化MOV R2,#00HMOV R3,#00HMOV R4,#00HMOV R5,#00HXHPD: JNB P1.1,JSD JNB P1.0,XD ; LCALL PAND LCALL XIANS JMP XHPDXD: LCALL D2MS JNB P1.0,HF LJMP XHP

30、DHF: JNB P1.1,JSD LCALL PAND LCALL XIANS JNB P1.0,HF ;JB P1.4 ,JS JNB P1.4 , JSS LCALL PAND LCALL XIANS LJMP XHPD是否等待计价,若是调用计时子程序是否有信号; 确定有信号信号是否结束; 调用计数子程序计算部分程序流程图如下图所示:部分子程序编程1、 计时子程序编程:JSD: JB P2.4,XHPDLCALL D2SLCALL JSLCALL PANDLCALL XIANSJMP JSD2、 计数子程序编程如下:JS: INC R1CJNE R1,#0AH,JS1 ; 个位力卩 1MOV R1,#00HINC R2CJNE R2,#0AH,JS1 ; 十位力卩 1MOV R2,#00HINC

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1