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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

出租车计价器的设计与实现课程设计.docx

1、出租车计价器的设计与实现课程设计附件1:学 号: 0121109310631课 程 设 计题 目出租车计价器的设计与实现学 院信息工程学院专 业通信工程班 级 姓 名指导教师2013年 7月 5 日课程设计任务书学生姓名: 专业班级: 指导教师: 工作单位: 信息工程学院 题 目: 出租车计价器的设计与实现 初始条件:本设计既可以使用集成译码器、计数器、定时器、脉冲发生器和必要的门电路等,也可以使用单片机系统构建多功能数字钟。用数码管显示行驶里程、停车时间和计费值。要求完成的主要任务: (包括课程设计工作量及技术要求,以及说明书撰写等具体要求)1、课程设计工作量:1周。2、技术要求:1)设计一

2、个出租车计价器。要求用4位数码管显示行驶里程、停车时间和计费值,采用按键切换显示物理量。2)出租车的起步价为3元,当里程行驶到1km后,费用为4元;当里程行驶到1.5km后,费用为5元;,当里程行驶到2km后,费用为6元;当里程行驶到2.5km后,费用为7元;当里程行驶到3km后,费用为8元;此后每公里计费为0.7元/0.5km。停车每达3分钟,增加0.7元。3)具有秒、分为60进制计数功能,能显示分、秒停车状态的计时结果,格式为:00:00min。按照轮胎转动1圈为1m计算,计算并显示行驶的里程结果,格式为:000.0km。能显示乘车费用,格式为:000.0元。4)确定设计方案,按功能模块的

3、划分选择元、器件和中小规模集成电路,设计分电路,画出总体电路原理图,阐述基本原理。3、查阅至少5篇参考文献。按武汉理工大学课程设计工作规范要求撰写设计报告书。全文用A4纸打印,图纸应符合绘图规范。时间安排:1、 2103 年 5 月 16 日,布置课设具体实施计划与课程设计报告格式的要求说明。2、 2013 年 6 月 25 日至 2013 年 6 月 28 日,方案选择和电路设计。3、 2013 年 6 月 29 日至 2013 年 7 月 3 日,电路调试和设计说明书撰写。4、 2013 年 7 月 5 日,上交课程设计成果及报告,同时进行答辩。指导教师签名: 年 月 日系主任(或责任教师

4、)签名: 年 月 日摘要出租车计价器是乘客与司机双方的交易准则,它是出租车行业发展的重要标志,是出租车中最重要的工具。它关系着交易双方的利益。具有良好性能的计价器无论是对广大出租车司机朋友还是乘客来说都是很必要的。因此,汽车计价器的研究也是十分有一个应用价值的。 而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现。而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。针对计费模式的切

5、换,通过软件编程就可以轻易而举的实现。避免了机械开关带来的不稳定因素。另外在本方案中使用了四位数码管,可以实现更加友好的使用界面数据信息一目了然。关键词:出租车计价器 单片机 控制AbstractTaximeter is both passengers and drivers of the transaction criteria, it is the taxi industry an important symbol, it is the most important tool. It relates to the interests of both transactions. Having

6、 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 a study of very much 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 fai

7、lure 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, relatively powerful, with less hardware and appropriate software can easily coordinate wi

8、th 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

9、 this programme that the use of a dot-matrix LCD, can be friendlier 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 S52 MCU control1系统方案

10、设计与论证1.1系统方案设计方案一:采用数字电路控制,其实现方案框图,数字电路实现方案图,如图1-2所示。采用传感器件,输出脉冲信号,经过放大整形作为移位寄存器的脉冲,实现计价。采用传感器件,输出脉冲信号,经过放大整形作为移位寄存器的脉冲,实现计价,但是考虑到这种电路过于简单,性能不够稳定,而且电路不够实用。模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现。图1-1 数字电路实现方案框图方案二:采用单片机控制。利用单片机丰富的I/O端口,及其控制的灵活性,实现基本的里程计价功能,途

11、中等待等不同功能4。采用单片机控制。利用单片机丰富的I/O端口,及其控制的灵活性,有较大的活动空间,便于修改。不但能实现基本的里程计价功能和价格调节、显示功能,而且能在很大的程度上扩展功能,还可以方便的对系统进行升级。为此我们采用了单片机进行设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求。单片机控制实现方案框图,如图1-2所示。图2-2 单片机控制实现方案框图1.2系统方案论证采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现。为此我们采用了单片

12、机进行设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。综上对比,采用方案一数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现。而方案二单片机有较大的活动空间,利用单片机丰富的I/O端口,及其控制的灵活性,不但能实现基本的里程计价功能和价格调节、时钟显示功能,而且能在很大的程度上扩展功能,还可以方便的对系统进行升级。采用了单片机进行设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求。

13、因此采用方案二作为本次设计的实现方案。2系统原理与设计2.1系统硬件设计单片机控制模块设计本设计中,采取单片机最小系统作为系统中的控制模块。单片机最小系统,是指能维持单片机运行的最简单配置的系统。这种系统成本低廉、结构简单,常用来构成简单的控制系统。图2-1 单片机控制模块电路图AT89S52的管脚结构图及管脚说明:VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FLASH编程时,P0 口作为原码输入口,当FLASH进行校

14、验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时

15、,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如表3-1所示: P3口管脚 备选功能P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0

16、) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。图2-2 AT89S52管脚结构图表2-1 AT89S52部分引脚功能表 端口引脚 复用功能 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

17、 /RD (外部数据存储器读选通)RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止

18、,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。时钟电路AT89S52中有一个用于构成内部振荡器的高增益反相放

19、大器,引脚XTAL1和XTAL2分别为该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或8051单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。本设计主要是用内部振荡方式完成的9。在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。晶振频率,以19.2K波特率为例,19.2K波特率的晶振为19200(256-0FDH)3842 =11.0592 (SMOD=1)选用11.0592MHz只是为了得到精确的通信波特率,串口通信的可靠性高

20、。外接石英晶体及电容C2、C3接在放大器的反馈回路中构成并联谐振电路,起稳定振荡频率、快速起振的作用。对外接电容C2、C3虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度的稳定性,一般在2060pF之间选择,本次采用22pF10。时钟电路设计图,如图2-3所示。图2-3 时钟电路设计图复位电路单片机有一个复位引脚RST,它是施密特触发输入,当振荡器起振后,该引脚上出现2个机器周期以上的高电平,使器件复位,只要RST保持高电平,单片机保持复位状态11。此时ALE、PSEN、P0、P1、P2、P3口都输出高电平。RST变为低电平后,退出复位

21、,单片机从初始状态开始工作。对于复位电路,本设计采用上电复位电路,由于89C51是高电平复位,因此通过在RESET端接一个电阻到地,并接一个电容到电源的方式完成上电复位,上电时电源给电容充电,电容导通,因此RESET脚就相当于连接到+5V电源,开始复位,当电容充电完成后,电容断开,RESET脚被下拉电阻钳位在低电平,则退出复位状态。复位电路设计图,如图2-4所示。复位电路连接图如下图2-4 复位电路设计图单片机在启动运行时都需要进行复位操作,以便使CPU和系统中的其它部件都处于某一确定的初始状态,并从这个状态开始工作。AT89C51单片机有一个引脚RST,它是施密特触发器的输入端,其输出端接复

22、位电路的输入。复位信号是高电平有效,其有效时间应持续24个振荡脉冲周期(即二个机器周期)以上,若使用频率为6MHz的晶振,则复位信号持续时间应超过4s才能完成复位操作。复位之后,使ALE、PSEN、P0、P1、P2口的输出均为高电平(即为输入状态),复位后,内部寄存器的状态如表3、1所示。RST变为低电平后,便又退出复位状态。CPU从初始化工作,由状态表可知,复位后:程序寄存器为0000H开始执行程序,内部RAM不受复位影响。复位有电复位和按键手动复位两种。按键手动复有电平方式和脉冲方式两种。本次设计中,为方便人的操作,采用按键手动复位的按键电平复位。其复位电路如下表示:表2-2 复位电路表P

23、C0000HTCON00HACC00HTL000HPSW00HTH000HSP07HTL100HDPTR0000HTH100HP0-P30FFHSCON00HIPXX000000HSBUF00HIE0X000000HPCON不定TMOD00H0XXX0000B 键盘调整模块设计本设计中需要用到2个按键,驱动键盘,由于单片机的内部上拉,按键没按下时,处于稳定的高电平,当有按键按下时,单片机可扫描检查到低电平。而不会引起按键的误操作,提高按键电路的抗干扰能力。电路原理如图所示。 图2-5 键盘调整模块S1:触发开关,接P1.1口,对上一次的计费进行清零,为下次载客准备S2:单掷开关,接P1.2口,

24、实现暂停功能;当功能键S2按下时,开始暂停计费;直到S2弹起时,暂停结束。需要注意的时,当按键按下和释放的瞬间都有抖动现象,一般来说,抖动的时间长短与键盘的机械特性有关,大约为5-10ms。所以在实际编程时一定要注意键盘的去抖动。键盘去抖动有专用的延时电路,也有专门的延时芯片,也可以用软件去抖,考虑到电路的难易程度,从简化硬件的角度,本次设计采用软件去抖动,用一个短延时程序,进行键盘去抖操作。数据显示模块设计本设计中采用四位一体共阴的数码管,数码管的位选信号即每个数码管的公共端,用单片机一组I/O口作为数据口向数码管发送数据信息,而用另一组I/O口对数码管进行位选,通过同相电平驱动芯片74HC

25、573驱动,从而实现动态显示。由于是共阴的数码管,因此当P2.0-P2.7输出为高电平时,数码管位选位被关闭,当P2.0-P2.3输出为低电平时,数码管位选位被打开。前四个数码管分别接P2.0、P2.1和P2.2、P2.3,用于显示总金额;后面分别接P2.4、P2.5、P2.6和P2.7,用于显示里程。数码管显示电路图,如图3-6所示。图2-6 数据显示模块数码管部分数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a, b, c, d, e, f, g, dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I

26、/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果能够节省大量的I/O端口,而且功耗更低。图2-7 数据显示模块74HC57

27、3驱动部分显示单元由两个4位8段共阴数码管组成,电路连接时,公共端接低电平,由于数码管内部二极管点亮时需要5mA以上的电流,而单片机的输出电流还不到1mA,所以数码管与单片机连接时需加驱动电路,可以使用上拉电阻的方法,也可以使用专门的驱动芯片,考虑到复用单片机I/O接口,节省单片机I/O资源,此次设计采用74HC573锁存器,其输出电流较大,电路接口简单且可直接驱动数码管显示。74HC573的引脚分布图2-6如下。图2-10 74HC573的引脚分布:为三态允许输入端(低电平有效),也可称作输出允许端;1D-8D为数据输入端;1Q-8Q为数据输出端;LE为锁存允许端。74HC573所对应真值表

28、2-10如表。表2-10 74HC573真值表INPUTOUTPUT LE DQL H LL L XH X XHQ0Z由真值表可以看出,当 为高电平时,无论LE与D端为何电平状态,其输出均为高阻态,此时芯片处于不可控状态。做设计时必须使其处于可控状态,即 应该接低电平。当 为低电平时,若LE为H,则D与Q同时为H或者L,数据实现直通传送;而当LE为L时,无论D为何状态Q都保持上一次的数据状态,数据被锁存住,利用此特性即可实现对数码管的控制。其中 :H高电平;L低电平;X任意电平;Z高阻态,既不是高电平也不是低电平,其电平状态由与它相连接的其它电气状态决定;Q0上次的电平状态。本次设计中:段选信

29、号LE接P1.5,对应图中标号P1.5;位选信号LE接P1.6,对应图中标号P1.6。控制显示时先给P1.5高电平,使通道打开,接着送字码,然后把P1.5电平拉低,使字码保持住;之后打开P1.6(送高电平),紧接着送位码,控制要显示的位,然后把P1.6拉低,数据被保持。最后延时5ms;依次循环扫描;利用数码管点亮后的余晖和人眼视觉暂留效应即可实现动态显示。数码管动态显示电路如图2-10所示。2.2系统软件设计系统模块在主程序模块中,需要完成对各参量和接口的初始化、出租车起步价和单价的初始化以及中断、计算、循环等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器和价格寄存器,并

30、对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。当汽车运行起来时,就启动计价,根据里程寄存器中的内容计算和判断行驶里程是否已超过起步价公里数。若已超过,则根据里程值、每公里的单价数和起步价数来计算出当前的总金额,并将结果存于总金额寄存器中;中途等待时,脉冲输入小于设定值时,当时间超过等待设定值时,开始进行计时,并把等待价格加到总金额里,然后将总金额、里程送数码管显示出来。程序流程如图所示。图2-8 系统主程序流程图中断模块里程计数中断模块每当霍尔传感器输出一个低电平信号,单片机定时器0(工作在计数模式)就对其计数一次,相应的变量设为inter

31、就自加1,当里程计数器inter对里程脉冲计满500次时,对其自身进行清零操作,为下一次计数做准备,同时进入里程计数中断服务程序中,里程变量加1,总金额根据此时所设单价做出相应的变化。里程中断子程序如图2-9所示。图2-9 里程中断服务子程序中途等待中断模块在中途等待中断程序中,定时器1每50ms计一次数,每计够100次(5sec),便将当前里程值送入某个缓存变量,与前一个5秒的值进行比较,如果两者相同,则表明时钟中断没有输出信号,认为出租车停了下来,进入等待计时,计时中间变量dd自加1,计够12次为一分钟,dd自清零,同时根据所设的等待单价刷新总金额。计数初值可有以下公式获得:X=(65536-t)*11.0592*106/12;TH=X/256; TL=X%256;其中:X表示计数初值,TH、TL分别为16位计数器高8位和低8位应装入的初值。用定时器作为基准,可使测试的等待时间更为精确(可以精确到uS级);且每隔5秒比较一次,能有效减小误判率,避免把汽车低速行驶误认为静止等待处理。中途等待子程序流程图如图2-3所示。图2-10 中途等待

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2