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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于单片机的出租车计价器的设计Word格式文档下载.docx

1、Key words: AT89C51 microcontroller; LCD; digital clock DS1302目录1 课题背景1.1 研究背景随着我国经济的快速发展,人民的生活水平有了很大的改善,旅游已经成为一种时尚,旅游业的发展,让人们对交通和服务行业的要求越来越高,而出租车就成为了外出旅游的重要工具之一。当然,出租车计价就成为了最重要的问题,也是广大消费者最关心的问题。随着出租车行业的迅猛发展,出租车成为了日常生活中重要的交通工具,只有安装了计价器的出租车才可以使用。计价器是出租车公司和消费者之间公平交易的重要工具,所以计价器的性能一定要稳定,准确。近年来,依据国家有关法律、法

2、规。出租车计价器已经被列为国家强制检定的计量器具之一。出租车作为重要的交通工具,其行业的发展也早已备受关注,出租车能否准确的计价,是乘客和司机一直关注的重点,而良好性能的计价器无论是对汽车司机还是对广大消费者都是很重要的。我国最早的生产计价器的是重庆市起重机厂,那时的计价器都是采用机械齿轮钩,只能完成简单的计程功能,但它是早期计价器的一个里程碑。随着科学技术的飞速发展,第二代半机械化、半电子化的计价器产生,这时的计价器不但可以计程,还可计价。当大规模集成电路发展时,第三代计价器很快问世,即全电子化的计价器,它利用了功能强大的单片机,可轻易的完成计程,计价,显示等基本工作。1.2 研究内容计价器

3、是主要负责出租车收费的职能仪表,它关系到消费者的经济利益,所以它对稳定性,准确性,精确性的要求非常的高。本设计利用AT89C51作为核心控制中心,使计价器具有计价、计程、停车时间计价,时钟显示等相关功能。2 硬件平台2.1 单片机概述单片机又称为单片微型计算机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文缩写字母MCU来表示单片机,单片机最早被用在工业控制领域。单片机主要由中央处理器(CPU)、内部数据存储器(内部RAM)、内部程序存储器(内部ROM)、I/O口、串行口、定时器、终端程序等系统组成。AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPE

4、ROMFalsh Programmable and Erasable Read Only Memory),高性能CMOS8位微处理器,单片机的可擦除只读存储器可以反复擦除100次。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。2.1.1 AT89C51单片机的中央处理器单片机的核心部分是CPU,它相当于单片机的大脑和心脏。CPU的主要功能是产生各种控制信号,以控制存储器、输入/输出端口的数据传送、数据的算术运算和逻辑预算以及位操作处理等。AT89C51的中央处理器主要由运

5、算器和控制逻辑组成,其中包括一些特殊功能寄存器(SFR)。算术逻辑单元ALU能对数据进行加、减、乘、除等算术运算;“和”、“或”、“异或”等逻辑运算以及位操作运算。ALU只进行运算,运算的操作数可以事先存放到累加器ACC或寄存器TMP中,运算结果可以送回ACC或通用寄存器或存储单元中, ACC也可简写为A。寄存器B在乘法指令中用来存放一个乘数,在除法指令中用来存放除数,运算后B中为部分运算结果。2.1.2 AT89C51单片机引脚介绍AT89C51有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89

6、C51可以按照常规方法进行编程,也可在线编程。它将通用的微处理器和Flash存储器结合在一起,可反复擦写的Flash存储器可有效地降低开发成本。 AT89C51单片机是高性能单片机,因为受引脚数目限制,所以有许多引脚具有第二功能,各引脚功能如图2-1所示。图2-1 AT89C51的引脚图电源引脚VCC和VSS VSS:接地端。VCC:+5V电源端。时钟信号引脚XTAL1和XTAL2XTAIL1、XTAL2:当使用单片机内部振荡电路时,用外接石英晶振和微调电容,XTAL1是内部振荡电路反相放大器的输入端,XTAL2是片内振荡电路反相放大器的输出端,振荡电路的频率就是晶振的固有频率。当使用外部时钟

7、时,XTAL1接地,XTAL2接外部时钟信号源。控制信号引脚RST/VPD、ALE/、和EA/VPPRST/VPD:RET是复位信号输入端。当输入的复位信号保持两个机器周期(24个时钟周期)以上的高电平时有效,用来完成复位操作;第二功能VPD作为备用电源输入端,当电源VCC发生故障,电压降低到低电平规定值时,可通过VPD为单片机内部RAM提供电源,以保护片内RAM中的信息不丢失,使系统在上电后能继续正常运行。ALE/:ALE为地址锁存允许输出信号。在访问外部存储器时,ALE用来锁存P0口扩展低8位地址的控制信号。在不访问外部存储器时,ALE也以时钟振荡频率的1/6的固定频率输出,因而它又可以作

8、对外输出时钟信号或其他需要,例如可以示波器查看ALE是否有脉冲信号输出来确定89C51芯片的好坏;第二功能PROG是对内部有EPROM的单片机的EPROM编程脉冲输入端,它和31号引脚的第二功能VPP一起使用。外部ROM的读选通信号输出端。在访问外部ROM时,PSEN产生负脉冲作为读外部ROM的选通信号。而在访问外部RAM或片内ROM时,不会产生有效PSEN信号。/VPP:EA是访问外部ROM的控制信号。EA为低电平时,CPU只执行外部ROM中的程序。EA为高电平且PC值小于0FFF(4K)时,CPU执行内部ROM的程序,但当PC的值超出4K时将自动转去执行片外ROM的程序。对于无片内ROM的

9、8031或不使用内部ROM的89C51,EA必须接地;第二种功能VPP是作为8751的片内EPROM的+21V编程电源输入端。并行I/O端口P0、P1、P2和P3P0口(P0.0P0.7):P0口是一个8位双向I/O端口(无需外接上拉电阻)。在访问外存储器时,分时提供低8位地址线和8位双向数据线。P0口先输出片外存储器的低8位地址并锁存在地址锁存器中,然后再输入或输出数据。P1口(P1.0P1.7):P1口是一个内部带有上拉电阻的8位准双向I/O端口。且P1口只能作为一般I/O口使用。P2口(P2.0P2.7):P2口是一个内部带有上拉电阻的8位准双向I/O端口。在访问外部ROM或外部RAM时

10、,输出高8位地址,和P0口提供的低8位地址一起组成16位地址总线。P0口和P2口用作数据/地址线后,不能再作为通用I/O口使用。P3口(P3.0P3.7):P3口是一个内部带有上拉电阻的8位准双向I/O端口,在系统中8个引脚都有各自的第二功能。2.2 硬件电路的组成2.2.1 复位电路的设计单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC0000H,使单片机从第一个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。本设计所用的复位电路如图2-2所示。图2-2 复位电路2.2.2时钟电路的设计AT89C51系列单

11、片机内部有一个可控制的反相放大器,引脚XTAL1、XTAL2为反相放大器的输入端和输出端,在XTAL1、XTAL2上外接晶振和电容便组成振荡器。具体的时钟电路如图2-3所示。振荡器频率主要取决和晶振的频率,但小于器件所允许的最高频率。振荡器的工作可由软件置1,使振荡器停止振荡,从而使整个单片机停止工作,以达到节电的目的。图2-3 时钟电路2.3 单片机最小系统电路单片机最小系统是指用最少的元件组成的单片机可以工作的系统。对于AT89C51单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路等。它们是AT89C51工作所需的最简外围电路。单片机最小系统电路如图2-4所示。图2-4 单片机

12、最小系统电路图2.4 A44E霍尔传感器2.4.1 A44E霍尔传感器简介A44E霍尔传感器是一种磁传感器。可以检测磁场及其变化,可在各种磁场有关的场合中使用。以霍尔效应为其工作基础。它结构牢固,体积小,重量轻,寿命长,安装方便,功耗小,频率高,耐震动不怕一些污染和腐蚀,而且精度高工作温度范围宽。这种霍尔元件大量用于直流无刷电机和测磁仪表。A44E集成霍尔开关由稳压器,霍尔电势发生器(即硅霍尔片)B,差分放大器C,施密特触发器D和OC门输出E五个基本部分组成。(a)1VCC 2GND (b) 3OUT 图2-5 集成霍尔开关外形及引线在输入端 输入电压VCC,经稳压器稳压后加在霍尔电势发生器的

13、两端,根据霍尔效应原理,当霍尔片处在磁场中时,在垂直于磁场的方向通以电流,则和这二者相垂直的方向上将会产生霍尔电势差VH输出,该VH信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC门输出。当施加的磁场达到工作点(即Bop)时,触发器输出高电压(相对于地电位),使三极管导通,此时OC门输出端输出低电压,三极管截止,使OC门输出高电压,这种状态为关。这样两次电压变换,使霍尔开关完成了一次开关动作。集成开关型霍尔传感器原理如图2-6所示。图2-6 集成开关霍尔传感器原理2.4.2 里程计算、计价单元设计里程计算是通过安装在车轮上的霍尔传感器A44E检测到的信号,送到单片机,经处理计算,

14、送给显示单元的,其原理如图2-7所示。图2-7传感器测距示意图由于A44E属于开关型的霍尔传感器件,其工作电压范围比较宽(4.5V18V),其输出的信号符合TTL电平标准,可以直接接到单片机的I/O端口上,而且其最高检测频率可达到1MHZ。我们选择了P3.2口作为信号的输入端,内部采用外部中断0(这样可以减少程序设计的麻烦),车轮每转一圈,霍尔开关就检测并输出信号,引起单片机的中断,对脉冲计数,当计数达到1000次时,也就是1公里,单片机就控制将金额自动的增加,其计算公式:当前单价公里数=金额。由于在仿真过程中不能直接用霍尔传感器,所以仿真时使用了系统中的频率来模拟霍尔传感器脉冲。仿真时共用了

15、四个不同频率的脉冲模拟传感器脉冲。2.5 液晶显示简介LM016L是一款较常用的液晶。通常有16条引脚线,其中有8位数据总线D0-D7,和RS、R/W、EN三个控制端口,还有两个脚为背光源正负极,工作电压为5V。液晶显示原理:液晶显示的原理是利用液晶的物理性质,通过电压对其显示区域进行控制,有电就可显示出图形。液晶显示具有厚度薄,使用于大规模集成电路进行驱动,目前已被广泛使用于众多领域,例如便携式电脑,数字摄像机,PDA移动通信工具等。引脚如下:第1脚:VSS为地第2脚:VDD接5V正电源第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,

16、使用时可以通过一个10K的电位器调整对比度,或直接通过一个电阻到地.第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第1516脚:背光源正负极。2.6时钟芯片DS13022.6.1 DS1302的简介DS1302是美国DALLAS公司推出的一种高性能、低功耗、带R

17、AM的实时时钟芯片,它可以对年、月、日、周日、时、分、秒进行计时,且具有闰年补偿功能,工作电压宽达2.55.5V。采用三线接口和CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302的管脚如图2-8所示。图 2-8 DS1302管脚引脚介绍:VCC1后背电源 VCC2主电源X1,X2振荡源 RST复位/片选线2.6.2 DS1302的电路在DS1302电路(如图2-9)中,VCC2是主电源,VCC1是后备电源。当主电源关闭时,后背电源 同样能保持时钟的连续运行。DS1302由VCC1或VCC2中的

18、电压较大的一个供电。RST的输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,就会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在VCC2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。 图2-9 DS1302电路2.6.3 DS1302的控制字节DS1302 的控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日

19、历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。1RAN/CKA4A3A2A1A0RAN/K图 2-10 DS1302的控制字节3 软件平台3.1 Proteus ISIS 仿真软件简介Proteus ISIS是一种操作简便而又功能强大的原理图编辑工具,它运行于Windows操作系统上,可以仿真、分析各种模拟器件和集成电路,该软件的特点有:(1)实现了单片机仿真和SPICE电路仿真的结合具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统仿真、RS232动态仿真、I2C调试器、

20、SPI调试器、键盘和LCD系统仿真等功能。(2)支持主流单片机系统的仿真目前支持的单片机类型有68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。(3)提供软件调试功能在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能。(4)具有强大的原理图绘制功能目前支持的单片机类型有:68000 系列、8051 系列、AVR 系列、PIC12 系列等。3.2 Proteus ISIS 的仿真步骤Proteus仿真时,单片机需要加载程序,加载程

21、序为.HEX文件。在Proteus ISIS中,选中AT89C51并单击鼠标左键,对AT89C51进行设置,设置单片机时钟频率为12MHz,按照正确的文件路径加载.HEX文件,对单片机设置完毕后就可以开始仿真了。Proteus ISIS仿真界面如图3-1所示。图3-1 Proteus ISIS仿真界面运行Proteus程序后,进入软件的主界面。通过左侧工具栏中的P(从库中选择元件命令)命令,在Pick Devices 左侧窗口中选择所需元件的关键字,然后放置元件并调整方向和位置以及参数设置。元件的选取界面如图3-2所示。 图3-2 元件选取界面3.3 Keil uVision2 调试软件Kei

22、l uVision2是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统C语言的语法来开发,提供丰富的库函数和功能强大的集成开发调试工具,和汇编相比,C语言在功能性、结构性、可读性、可维护性上有明显的优势。Keil uVision2 的使用流程如图3-3所示。 图 3-3 Keil的基本使用流程Keil uVision软件的调试界面如图3-4所示。图3-4 Keil uVision2 程序调试界面本设计利用软件Keil uVision2,在新建Keil项目时选择AT89C51单片机作为CPU,将源程序导入,在“Options For Target”对话

23、窗口中,选中“Output”选项中的“Create HEX File”,在编译链接后就可以生成.HEX文件。此文件的选取界面如图3-5所示。 图 3-5 可执行的.HEX 文件的选取界面4 软硬件设计4.1 电路的总体设计4.1.1 电路设计方案如果我们在设计电路时用的是传统的数字电路或者模拟电路的话,那么可用的显示器就只能是LED显示,VFD显示,分段式数码管等这些传统的显示器,这样的话,仅显示电路框图和实际电路就已经非常得复杂,整体电路更是非常的麻烦。此外,当进行计费模式切换时所用的按键是机械按键,而机械按键用久了很容易老化,会造成接触不良,容易导致功能不易实现。和此相比,单片机的功能就强

24、大很多,只需用较少的硬件和少量的软件就可以实现较复杂的设计要求,还可以添加更多的其他功能,灵活性很强,计费模式切换通过软件就可轻易实现,避免了因机械开关的老化而造成的潜在危险。因此本电路以AT89C51单片机为中心,实现对出租车路程的统计,输出采用液晶显示器LM016L。4.1.2 计价器总体设计图图4-1 计价器设计原理框图图4-2 计价器设计原理图原理图功能分析:本设计一共采用了四个频率开关,每个开关对应的频率分别为5Hz,50Hz,150Hz,211Hz,这些频率是采用系统中的频率来模拟的霍尔传感器脉冲。当选择低于10Hz的频率的时候,所表示的是出租车停止行驶,此时采用的是计时收费模式,

25、即100s按照1km收费,1km收费1.4元,起步价为6元(含3km)。当选择50Hz,150Hz,211Hz时,表示出租车分别行驶在中速,高速,超高速的行驶状态下,这是计价器的收费为计价收费,起步价为6元(含3km),行驶1km收费1.4元。时间显示部分是用DS1302为时间基准计时的,N键和P键是调整时间的导航键,N键是顺序,P键是倒序,+ 键和- 键是调节时间和日期的,E/C键是选择时间显示还是计费显示的按键。Pause键是暂停计费的按键,当出租车正在行驶的过程中,也就是说计价器正在计价的时候,按下该按键,计费就会停止。4. 2 计价器系统软件的设计4. 2.1主程序模块在主程序模块设计

26、中,要设置启动/清除标志寄存器、里程寄存器,然后对它们进行初始化,这时,主程序就会根据需要完成启动、清除、计程等各种操作。初次之外还要对各接口芯片初始化,对中断向量的设计,开中断和循环等待的工作。4. 2.2 定时中断服务程序在定时中断服务程序中,每1ms就会产生一次中断,当产生1000次中断的时候,也就是一秒,然后把数据送到相应的显示缓冲单元,并调用显示子程序即可显示。4. 2.3 液晶驱动程序主程序的实现是用LCD驱动,系统初始化时涉及的硬件、键盘的控制,根据按键来启动或者停止里程的测量,然后调用用户界面程序定时更新日期和时间的显示,及时的更新价格、里程、费用等一些信息显示,文本、图形显示

27、等功能。4. 2.4 计价管理程序计价管理程序主要作用是对脉冲的计量并转换为公里数,计算出所需费用,同时,测出出租车的行驶速度,统计低速行驶的时间和费用,并把检测到的结果传送给液晶显示器,及时的更新函数,以便主函数可以及时的控制用户界面,计时费用,行驶路程等信息。计价管理程序主要包括PWM管理程序、里程计量程序、时间管理程序、费用管理程序、用户界面控制程序等部分。4. 3 主程序设计及程序流程图程序开始运行后,首先初始化各个硬件部分,同时打开时基中断,准备好为键盘扫描和时间管理做好服务工作,程序进入主循环之后会不断的对按键进行扫描,随时准备根据按键的启动、停止里程计量,或者是转换显示模式和进入设置模式,主循环时,时间也会及时更新。主程序流程图如下图所示:图4-3 主程序流程图主程序见附录5 Proteus ISIS 仿真结果5.1 出租车停止行驶时图5-1 出租车停止时当频率选择在10Hz以下的情况时,出租车停止行驶,按一下按键E/C,切换至计费模式,LOW灯点亮,采用计时收费

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

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