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

上传人:woxinch****an2018 文档编号:38970353 上传时间:2018-05-10 格式:DOC 页数:38 大小:404.29KB
返回 下载 相关 举报
基于MCS-51单片机的里程表的设计与实现_第1页
第1页 / 共38页
基于MCS-51单片机的里程表的设计与实现_第2页
第2页 / 共38页
基于MCS-51单片机的里程表的设计与实现_第3页
第3页 / 共38页
基于MCS-51单片机的里程表的设计与实现_第4页
第4页 / 共38页
基于MCS-51单片机的里程表的设计与实现_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《基于MCS-51单片机的里程表的设计与实现》由会员分享,可在线阅读,更多相关《基于MCS-51单片机的里程表的设计与实现(38页珍藏版)》请在金锄头文库上搜索。

1、前前 言言汽车是现代生活中不可或缺的一种重要交通工具,传统的指针式的里程表伴随着汽车的诞生就一直为人们接受,不过,新生事物不会因传统的存在而停止它前进的步伐,数码科技在今天已渗透到工业,农业,民用等产品的点点滴滴。新概念的车速里程表最直观的变化就是用大屏幕的液晶取代指针式表盘,直接用数字显示时速,里程,以及其他一些诸如油耗、时钟、环境温度等参数。直观的呈现给使用者。由于单片机体积小,可以把它做到产品的内部,取代老式机械零件,缩小产品体积,增强功能,实现智能化。因此广泛的被用在智能产品中。Intel 公司的 MCS-51 系列单片机在近年来广泛流行。本文即介绍一种基于 MCS-51 单片机的里程

2、表的设计与实现。本文先对里程表设计中所需设备作了详细介绍,对设计中存在的问题进行了说明;对硬件和软件部分的设计和实现作了认真的分析;给出了系统的建模过程及相应的系统模型,在 Lab2000p 仿真实验系统上进行了仿真,并对仿真结果进行了分析。一一 系统概述系统概述本系统由信号采集处理模块、单片机 8031、系统化 LCD 显示模块、系统软件组成。其中信号采集处理模块以霍尔传感器为核心器件,将不同的转速信号转换成相应的脉冲信号,并送到单片机的 T1 引脚;对单片机进行设置,使内部的定时器/计数器 timer0 工作在定时状态,timer1 工作在计数状态,利用内部定时器 T0 对脉冲输入引脚 T

3、1 进行控制,这样就能精确地检测到设定时间内加到 T1 引脚的脉冲数,一个脉冲即代表着车子前进一个轮长,对脉冲数进行处理就可得到里程和速度的数据;将数据送到 LCD 显示模块进行显示。该系统原理框图如图 1 所示。系统软件包括单片机和液晶模块的初始化模块、液晶模块的写数据命令子模块、频率测量模块、速度里程计算模块、速度和里程显示数据 LCD 字库显示模块等。图 1 系统原理框图二二 基本原理与设计方案基本原理与设计方案 (一)元器件简介 1 霍尔传感器简介霍耳效应:1879 年 E.H. 霍尔发现,如果对位于磁场(B)中的导体(d)施加一个电压(v), 该磁场的方向垂直于所施加电压的方向,那么

4、则在既与磁场垂直又和所施加电流方向垂 直的方向上会产生另一个电压(UH),人们将这个电压叫做霍尔电压,产生这种现象被称为 霍尔效应。 霍尔效应从本质上讲是运动的带电粒子在磁场中受洛仑兹力作用而引起的偏转。当 带电粒子(电子或空穴)被约束在固体材料中,这种偏转就导致在垂直电流和磁场的方 向上产生正负电荷的积累,从而形成附加的横向电场。 通有电流 I 的金属或半导体板置于磁感强度为 B 的均匀磁场中,磁场的方向和电 流方向垂直,在金属板的第三对表面间就显示出横向电势差 U H 的现象称为霍耳效应。U H 就称为霍耳电势差。 实验测定,霍耳电势差的大小,和电流 I 及磁感强度B成正比,而与板的厚度d

5、 成反比。即霍耳电势差 UH = RHIB/d ,脉冲信号单片机LCD霍尔转速传感器: 霍尔转速传感器的外形图和与磁场的作用关系如 2 图所示。磁场 由磁钢提供,所以霍尔传感器和磁钢需要配对使用。霍尔传感器检测转速示意图如图 3。 在非磁材料的圆盘边上粘贴一块磁钢,霍尔传感器固定在圆盘外缘附近。圆盘每转动一 圈,霍尔传感器便输出一个脉冲。通过单片机测量产生脉冲的频率就可以得出圆盘的转 速。 霍尔电流传感器本身已经存在滤波电路,输出无须再加装滤波,可直接供单片机的 05V 的 AD 采集或直接送到单片机的中断输入引脚,信号非常稳定,而且抗干扰能力 很强。 霍尔电流传感器反应速度一般在 7 微妙,

6、不用考虑单片机循环判断的时间. 若在圆盘上贴上多块磁钢,则圆盘每转一圈,输出的脉冲信号将相应增加,单位时 间内测到的脉冲数将增多,测出的转速也将更加精细。本设计建模时采用一个圆盘上贴 一个磁钢进行模拟。实际制作中可以贴上多块磁钢,即可以克服因车轮转速太慢而在设 定时间内测不到脉冲的问题。图 2 霍尔转速传感器的外形图图 3 霍尔传感器检测转速示意图2 AT89C51 芯片简介 AT89C51 是一个低电压,高性能 CMOS 8 位单片机,片内含 4k bytes 的可反复擦写 的 Flash 只读程序存储器和 128 bytes 的随机存取数据存储器(RAM) ,器件采用 ATMEL 公司的高

7、密度、非易失性存储技术生产,兼容标准 MCS-51 指令系统,片内置通用 8 位中 央处理器和 Flash 存储单元,内置功能强大的微型计算机的 AT89C51 提供了高性价比的 解决方案。AT89C51 是一个低功耗高性能单片机,40 个引脚,32 个外部双向输入/输出(I/O)端 口,同时内含 2 个外中断口,2 个 16 位可编程定时计数器,2 个全双工串行通信口, AT89C51 可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和 Flash 存 储器结合在一起,特别是可反复擦写的 Flash 存储器可有效地降低开发成本。 AT89C51 具有如下功能特性: (1)兼容 M

8、CS51 指令系统; (2)32 个双向 I/O 口; (3)两个 16 位可编程定时/计数器; (4)1 个串行中断; (5)两个外部中断源; (6)4k 可反复擦写(1000 次)Flash ROM; (7)128x8bit 内部 RAM; (8)6 个中断源; (9)低功耗空闲和掉电模式; (10)软件设置睡眠和唤醒功能。3 液晶显示模块 SED1520 芯片介绍本设计仿真实验系统采用的液晶显示屏内置控制器为SED1520,点阵为122x32,需要 两片SED1520组成,由E1、E2分别选通,以控制显示屏的左右两半屏。图形液晶显示模块 有两种连接方式。一种为直接访问方式,一种为间接控制

9、方式。本设计采用直接控制方 式。直接控制方式就是将液晶显示模块的接口作为存储器或IO 设备直接挂在计算机总 线上。计算机通过地址译码控制 E1和 E2的选通;读写操作信号 RW由地址线 A1控 制;命令/数据寄存器选择信号 AO 由地址线 A0控制。实际电路如图4所示。地址映射如 下(地址中的X由LCD CS决定,可参见地址译码部分说明)0X000H0X001H0X002H0X003H0X004H0X005H0X006H0X007H写E1指令写E1数据读E1状态读E1数据写E2指令写E2数据读E2状态读E2数据图 4 液晶屏显示控制电路SED1520 芯片介绍SED1520液晶显示驱动器是一种

10、点阵图形式液晶显示驱动器,它可直接与8位微处理器相 连,集行、列驱动器于一体,因此使用起来十分方便,作为内藏式控制器被广泛应用于 点阵数较少的液晶显示模块。 (1)SED1520的特性 内置显示RAM区RAM容量为2560(32行80列)位。RAM中的1位数据控制液晶屏上一个 点的亮灭状态:“1”表示亮, “0”表示暗。 具有16个行驱动口和16个列驱动口 ,并可级联两个SED1520实现32行驱动。 可直接与80系列微处理器相连,亦可直接与68系列微处理器相连。 驱动占空比为116或132。 可以与SED1520配合使用,以便扩展列驱动口数目。(2)SED1520 指令与显示 RAM 结构

11、SED1520 指令系统比较简单,共 13 条,除读状态指令、读显示 RAM 数据指令外, 其他指令均为写操作,并且读写指令均为单字节指令。在送出每条指令时,必须进行控制 器状态检测,状态字节的含义如下:D7:1/0,模块忙/准备就绪;D5:1/0,模块显示关/开;D4:1/0,模块复位/正常;D3-D0:未用在指令使用中,关键要分清显示行、列设置和显示页面设置的关系。单片 SED1520 可驱动 6116 液晶屏,其内部显示 RAM 相对于 COM0 每 8 行为一个显示页面。本设计所用的字符液晶模块由两块 SED1520 级联驱动,其中一个工作在主工作方式下,另一个工 作在从方式下,主工作

12、方式 SED1520 负责上半屏 16 行的驱动和左半屏的 61 列驱动,从 工作方式的 SED1520 则负责下半屏 16 行的驱动和右半屏的 61 列驱动,使能信号 E1、E2 用来区分具体控制的是那一片 SED1520。这样两片 SED1520 级联可驱动 12232 图形点 阵液晶显示屏,可完成图形显示,也可显示七个半(1616 点阵)汉字。(3)指令系统 SED1520液晶显示驱动器共有13种显示指令。本文用到的部分指令见下表 表 1 部分传送指令表代 码功 能 指 令 R/WD/ID7D6D5D4D3D2D1D0 显示开/关指令0010101111/0全部显示开关,0:关 1:开显

13、示开始行00110开始行(031)显示 RAM 中数据的起始行页地址设置0010111003设置显示页地址 X address列地址设置000列地址(0121)设置显示列地址 Y address写显示数据01 写入的数据写显示数据到 RAM静态驱动0010100100/11:静态驱动,0:动态驱动刷新率设置0010101000/11:1/32,0:1/16结束0011101111释放读写复位0011100011设置为初始状态(二) 设计方法 1 51 单片机定时器/计数器的基本结构及工作原理 MCS-51 单片机内部设有两个 16 位的可编程定时器/计数器。可编程的意思是指其功 能(如工作方式

14、、定时时间、启动方式等)均可由指令来确定和改变。在定时器/计数器 中除了有两个 16 位的计数器之外,还有两个特殊功能寄存器(控制寄存器和方式寄存器) 。(1) 定时器/计数器的结构如下。从上面定时器/计数器的结构图中我们可以看出,16 位的定时/计数器分别由两个 8 位 专用寄存器组成,即:T0 由 TH0 和 TL0 构成;T1 由 TH1 和 TL1 构成。其访问地址依次为 8AH-8DH。每个寄存器均可单独访问。这些寄存器是用于存放定时或计数初值的。此外, 其内部还有一个 8 位的定时器方式寄存器 TMOD 和一个 8 位的定时控制寄存器 TCON。这些 寄存器之间是通过内部总线和控制

15、逻辑电路连接起来的。TMOD 主要是用于选定定时器的 工作方式;TCON 主要是用于控制定时器的启动停止,此外 TCON 还可以保存 T0、T1 的溢出 和中断标志。当定时器工作在计数方式时,外部事件通过引脚 T0(P3.4)和 T1(P3.5) 输入。(2)定时计数器的原理 16 位的定时器/计数器实质上就是一个加 1 计数器,其控制电路受软件控制、切换。 当定时器/计数器为定时工作方式时,计数器的加 1 信号由振荡器的 12 分频信号产生,即 每过一个机器周期,计数器加 1,直至计满溢出为止。显然,定时器的定时时间与系统的振 荡频率有关。因一个机器周期等于 12 个振荡周期,所以计数频率

16、fcount=1/12osc。如果 晶振为 12MHz,则计数周期为: T=1/(12106)Hz1/12=1s 。这是最短的定时周期。 若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如 8 位、13 位、16 位等)。当定时器/计数器为计数工作方式时,通过引脚 T0 和 T1 对外部信号计数, 外部脉冲的下降沿将触发计数。计数器在每个机器周期的 S5P2 期间采样引脚输入电平。 若一个机器周期采样值为 1,下一个机器周期采样值为 0,则计数器加 1。此后的机器周期 S3P1 期间,新的计数值装入计数器。所以检测一个由 1 至 0 的跳变需要两个机器周期,故 外部事件的最高计数频率为振荡频率的 1/24。例如,如果选用 12MHz 晶振,则最高计数频 率为 0.5MHz。虽然对外部输入信号的占空比无特殊要求,但为了确保某给定电平在变化前 至少被采样一次,外部计数脉冲的高电平与低电平保持时间均需在一个机器周期以上。 当 CPU 用软件给定时器设置了某种

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号