基于MCS-51单片机的里程表的设计与实现

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

中央民族大学本科生毕业论文(设计)1前言汽车是现代生活中不可或缺的一种重要交通工具,传统的指针式的里程表伴随着汽车的诞生就一直为人们接受,不过,新生事物不会因传统的存在而停止它前进的步伐,数码科技在今天已渗透到工业,农业,民用等产品的点点滴滴。新概念的车速里程表最直观的变化就是用大屏幕的液晶取代指针式表盘,直接用数字显示时速,里程,以及其他一些诸如油耗、时钟、环境温度等参数。直观的呈现给使用者。由于单片机体积小,可以把它做到产品的内部,取代老式机械零件,缩小产品体积,增强功能,实现智能化。因此广泛的被用在智能产品中。Intel公司的MCS-51系列单片机在近年来广泛流行。本文即介绍一种基于MCS-51单片机的里程表的设计与实现。本文先对里程表设计中所需设备作了详细介绍,对设计中存在的问题进行了说明;对硬件和软件部分的设计和实现作了认真的分析;给出了系统的建模过程及相应的系统模型,在Lab2000p仿真实验系统上进行了仿真,并对仿真结果进行了分析。中央民族大学本科生毕业论文(设计)2一系统概述本系统由信号采集处理模块、单片机8031、系统化LCD显示模块、系统软件组成。其中信号采集处理模块以霍尔传感器为核心器件,将不同的转速信号转换成相应的脉冲信号,并送到单片机的T1引脚;对单片机进行设置,使内部的定时器/计数器timer0工作在定时状态,timer1工作在计数状态,利用内部定时器T0对脉冲输入引脚T1进行控制,这样就能精确地检测到设定时间内加到T1引脚的脉冲数,一个脉冲即代表着车子前进一个轮长,对脉冲数进行处理就可得到里程和速度的数据;将数据送到LCD显示模块进行显示。该系统原理框图如图1所示。系统软件包括单片机和液晶模块的初始化模块、液晶模块的写数据/命令子模块、频率测量模块、速度里程计算模块、速度和里程显示数据LCD字库显示模块等。图1系统原理框图二基本原理与设计方案(一)元器件简介1霍尔传感器简介霍耳效应:1879年E.H.霍尔发现,如果对位于磁场(B)中的导体(d)施加一个电压(v),该磁场的方向垂直于所施加电压的方向,那么则在既与磁场垂直又和所施加电流方向垂直的方向上会产生另一个电压(UH),人们将这个电压叫做霍尔电压,产生这种现象被称为霍尔效应。霍尔效应从本质上讲是运动的带电粒子在磁场中受洛仑兹力作用而引起的偏转。当带电粒子(电子或空穴)被约束在固体材料中,这种偏转就导致在垂直电流和磁场的方向上产生正负电荷的积累,从而形成附加的横向电场。通有电流I的金属或半导体板置于磁感强度为B的均匀磁场中,磁场的方向和电流方向垂直,在金属板的第三对表面间就显示出横向电势差UH的现象称为霍耳效应。UH就称为霍耳电势差。实验测定,霍耳电势差的大小,和电流I及磁感强度B成正比,而与板的厚度d成反比。即霍耳电势差UH=RHIB/d,脉冲信号单片机LCD中央民族大学本科生毕业论文(设计)3霍尔转速传感器:霍尔转速传感器的外形图和与磁场的作用关系如2图所示。磁场由磁钢提供,所以霍尔传感器和磁钢需要配对使用。霍尔传感器检测转速示意图如图3。在非磁材料的圆盘边上粘贴一块磁钢,霍尔传感器固定在圆盘外缘附近。圆盘每转动一圈,霍尔传感器便输出一个脉冲。通过单片机测量产生脉冲的频率就可以得出圆盘的转速。霍尔电流传感器本身已经存在滤波电路,输出无须再加装滤波,可直接供单片机的0~5V的AD采集或直接送到单片机的中断输入引脚,信号非常稳定,而且抗干扰能力很强。霍尔电流传感器反应速度一般在7微妙,不用考虑单片机循环判断的时间.若在圆盘上贴上多块磁钢,则圆盘每转一圈,输出的脉冲信号将相应增加,单位时间内测到的脉冲数将增多,测出的转速也将更加精细。本设计建模时采用一个圆盘上贴一个磁钢进行模拟。实际制作中可以贴上多块磁钢,即可以克服因车轮转速太慢而在设定时间内测不到脉冲的问题。图2霍尔转速传感器的外形图中央民族大学本科生毕业论文(设计)4图3霍尔传感器检测转速示意图2AT89C51芯片简介AT89C51是一个低电压,高性能CMOS8位单片机,片内含4kbytes的可反复擦写的Flash只读程序存储器和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C51提供了高性价比的解决方案。AT89C51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。AT89C51具有如下功能特性:(1)兼容MCS—51指令系统;(2)32个双向I/O口;(3)两个16位可编程定时/计数器;(4)1个串行中断;(5)两个外部中断源;(6)4k可反复擦写(1000次)FlashROM;(7)128x8bit内部RAM;(8)6个中断源;(9)低功耗空闲和掉电模式;(10)软件设置睡眠和唤醒功能。3液晶显示模块SED1520芯片介绍本设计仿真实验系统采用的液晶显示屏内置控制器为SED1520,点阵为122x32,需要两片SED1520组成,由E1、E2分别选通,以控制显示屏的左右两半屏。图形液晶显示模块有两种连接方式。一种为直接访问方式,一种为间接控制方式。本设计采用直接控制方式。直接控制方式就是将液晶显示模块的接口作为存储器或I/O设备直接挂在计算机总线上。计算机通过地址译码控制E1和E2的选通;读/写操作信号R/W由地址线A1控制;命令/数据寄存器选择信号AO由地址线A0控制。实际电路如图4所示。地址映射如下(地址中的X由LCDCS决定,可参见地址译码部分说明)0X000H0X001H0X002H0X003H0X004H0X005H0X006H0X007H写E1指令写E1数据读E1状态读E1数据写E2指令写E2数据读E2状态读E2数据中央民族大学本科生毕业论文(设计)5图4液晶屏显示控制电路SED1520芯片介绍SED1520液晶显示驱动器是一种点阵图形式液晶显示驱动器,它可直接与8位微处理器相连,集行、列驱动器于一体,因此使用起来十分方便,作为内藏式控制器被广泛应用于点阵数较少的液晶显示模块。(1)SED1520的特性①内置显示RAM区RAM容量为2560(32行80列)位。RAM中的1位数据控制液晶屏上一个点的亮灭状态:“1”表示亮,“0”表示暗。②具有16个行驱动口和16个列驱动口,并可级联两个SED1520实现32行驱动。③可直接与80系列微处理器相连,亦可直接与68系列微处理器相连。④驱动占空比为1/16或1/32。⑤可以与SED1520配合使用,以便扩展列驱动口数目。(2)SED1520指令与显示RAM结构SED1520指令系统比较简单,共13条,除读状态指令、读显示RAM数据指令外,其他指令均为写操作,并且读写指令均为单字节指令。在送出每条指令时,必须进行控制器状态检测,状态字节的含义如下:D7:1/0,模块忙/准备就绪;D5:1/0,模块显示关/开;D4:1/0,模块复位/正常;D3-D0:未用在指令使用中,关键要分清显示行、列设置和显示页面设置的关系。单片SED1520可驱动61×16液晶屏,其内部显示RAM相对于COM0每8行为一个显示页面。本设计所用的字符液晶模块由两块SED1520级联驱动,其中一个工作在主工作方式下,另一个工作在从方式下,主工作方式SED1520负责上半屏16行的驱动和左半屏的61列驱动,从工作方式的SED1520则负责下半屏16行的驱动和右半屏的61列驱动,使能信号E1、E2用来区分具体控制的是那一片SED1520。这样两片SED1520级联可驱动122×32图形点阵液晶显示屏,可完成图形显示,也可显示七个半(16×16点阵)汉字。中央民族大学本科生毕业论文(设计)6(3)指令系统SED1520液晶显示驱动器共有13种显示指令。本文用到的部分指令见下表表1部分传送指令表指令代码功能R/WD/ID7D6D5D4D3D2D1D0显示开/关指令0010101111/0全部显示开关,0:关1:开显示开始行00110开始行(0~31)显示RAM中数据的起始行页地址设置001011100~3设置显示页地址Xaddress列地址设置000列地址(0~121)设置显示列地址Yaddress写显示数据01写入的数据写显示数据到RAM静态驱动0010100100/11:静态驱动,0:动态驱动刷新率设置0010101000/11:1/32,0:1/16结束0011101111释放读写复位0011100011设置为初始状态(二)设计方法151单片机定时器/计数器的基本结构及工作原理MCS-51单片机内部设有两个16位的可编程定时器/计数器。可编程的意思是指其功能(如工作方式、定时时间、启动方式等)均可由指令来确定和改变。在定时器/计数器中除了有两个16位的计数器之外,还有两个特殊功能寄存器(控制寄存器和方式寄存器)。(1)定时器/计数器的结构如下。中央民族大学本科生毕业论文(设计)7从上面定时器/计数器的结构图中我们可以看出,16位的定时/计数器分别由两个8位专用寄存器组成,即:T0由TH0和TL0构成;T1由TH1和TL1构成。其访问地址依次为8AH-8DH。每个寄存器均可单独访问。这些寄存器是用于存放定时或计数初值的。此外,其内部还有一个8位的定时器方式寄存器TMOD和一个8位的定时控制寄存器TCON。这些寄存器之间是通过内部总线和控制逻辑电路连接起来的。TMOD主要是用于选定定时器的工作方式;TCON主要是用于控制定时器的启动停止,此外TCON还可以保存T0、T1的溢出和中断标志。当定时器工作在计数方式时,外部事件通过引脚T0(P3.4)和T1(P3.5)输入。(2)定时计数器的原理16位的定时器/计数器实质上就是一个加1计数器,其控制电路受软件控制、切换。当定时器/计数器为定时工作方式时,计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。如果晶振为12MHz,则计数周期为:T=1/(12×106)Hz×1/12=1μs。这是最短的定时周期。若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如8位、13位、16位等)。当定时器/计数器为计数工作方式时,通过引脚T0和T1对外部信号计数,外部脉冲的下降沿将触发计数。计数器在每个机器周期的S5P2期间采样引脚输入电平。若一个机器周期采样值为1,下一个机器周期采样值为0,则计数器加1。此后的机器周期S3P1期间,新的计数值装入计数器。所以检测一个由1至0的跳变需要两个机器周期,故外部事件的最高计数频率为振荡频率的1/24。例如,如果选用12MHz晶振,则最高计数频率为0.5MHz。虽然对外部输入信号的占空比无特殊要求,但为了确保某给定电平在变化前至少被采样一次,外部计数脉冲的高电平与低电平保持时间均需在一个机器周期以上。当CPU用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计满溢出,才可能中断CPU当前操作。CPU也可以重新设置定时器工作方式,以改变定时器的操作。由此可见,定时器是单片机中效率高而且工作灵活的部件。中央民族大学本科生毕业论文(设计)8(3)控制寄存器定时器/计数器T0和T1有2个控制寄存器TMOD和TCON,它们分别用来设置各个定时器/计数器的工作方式,选择定时或计数功能,控制启动运行,以及作为运行状态的标志等。其中,TCON寄存器中另有4位用于中断系统。定时器/计数器方式寄存器TMOD定时器方式控制寄存器TMOD在特殊功能寄存

1 / 38
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功