logo资料库

基于AT89C52单片机测速仪的课程设计报告.docx

第1页 / 共20页
第2页 / 共20页
第3页 / 共20页
第4页 / 共20页
第5页 / 共20页
第6页 / 共20页
第7页 / 共20页
第8页 / 共20页
资料共20页,剩余部分请下载后查看
课程设计报告 (嵌入式系统课程设计)
目 录 第一章 设计报告摘要 ................................................ 1 第二章 设计内容及要求 .............................................. 1 第三章 设计流程框图 ................................................ 1 第四章 硬件设计 .................................................... 2 4.1 硬件设计思路 ................................................2 4.2 AT89C52 单片机介绍 .......................................... 2 4.3 OPTC 光断续器介绍 ........................................... 4 4.4 LCD 显示器介绍 .............................................. 5 4.5 晶振电路设计 ................................................6 第五章 软件设计 .................................................... 7 5.1 软件应用介绍 ................................................7 5.1.1 Proteus ............................................... 7 5.1.2 Keil C51 .............................................. 8 5.2 软件程序分析 ................................................8 5.3 软件主程序分析 ..............................................9 第六章 设计心得 ................................................... 11 附录 1:仿真运行图 .................................................12 附录 2:完整程序代码 ...............................................13
基于 AT89C52 单片机测速仪的设计 第一章 设计报告摘要 随着居民生活水平的不断提高,家用轿车开始普及为人们娱乐、休闲代步的 工具。测速仪能够满足人们最基本的需求,让人们能清楚地知道当前的速度、里 程、时间等物理量。以便做出判断和采取必要的措施,以防止交通事故的发生。 测速仪作为汽车最基本、最重要的部件之一,在汽车的运行过程中起着至关重要 的作用。一个性能良好、测量精确、稳定的测速系统,从某种意义上说,直接影 响着汽车乃至司乘人员的生命安全。而速度的最直接的体现就是提供动力的轴承 的转速,如果能准确的获知这个转速物理量然后经过一系列的换算,就能够计算 出被测物的速度。早期的测量系统,虽然技术比较成型,但一般是采用分立元件 构成的,其结果是测量精度低,稳定性差,成本高,抗干扰能力差等。随着电子 技术和计算机技术的发展,测量系统也逐步向智能化转化。单片机应用技术以其 功能强大,价格低廉的显著特征,使得全数字化测速系统得以广泛运用,由于单 片机在测速方面具有体积小、成本低、功能强等特点,越来越受到用户的亲睐。 本次课程设计利用 AT89C52 单片机实现了转速的实时测量,本设计硬件结构设计 简单,测量速度快,精度高,运行可靠,可以满足人们越来越高的对速度准确性 和实时性的要求。 第二章 设计内容及要求 本次设计的主要内容是利用 OPTC 光断续器、AT89C52 单片机、LCD 显示器等 部件设计一个可以实时将速度显示在液晶屏上的测速仪。以 AT89C52 单片机为核 心处理器,用 OPTC 光断续器作为测速仪的信号源,当车轮转动一周是 OPTC 光断 续器将会产生一个感应信号,再将产生的感应信号转换为数字信号输入单片机, 经过数据处理和算法处理后得到车的实际速度,再将其结果显示在 LCD 显示器上, 从而实现对车子速度的测量。 第三章 设计流程框图 按照系统设计的要求和功能,将系统分为主控模块、信号输入模块、LCD 显 1
示模块、电源电路、复位电路、晶振电路等几个模块。主控模块采用 AT89C52 单片机,信号输入模块采用 OPTC 光断续器。系统组成如图一所示: 电源电路 主控模块 AT89C52 复位电路 晶振电路 OPTC 光断续器 LCD 显示模块 图 1:基于 AT89C52 单片机 LCD 数字测速仪系统框图 第四章 硬件设计 4.1 硬件设计思路 对于汽车等车辆的速度测定可以转化为对其轮胎的转速的测定,即对信号频 率的检测。本次设计采用 OPTC 光断续器实现对信号的输入,通过光电效应,将 光信号转化为电信号,送入单片机中进行数据算法处理,最后通过 LCD 显示器进 行输出。 4.2 AT89C52 单片机介绍 AT89C52 单片机是美国 Atmel 公司生产的低电压、高性能 CMOS 8 位单片机, 片内含 8KB 的可反复檫写的程序存储器和 12kB 的随机存取数据存储器(RAM), 器件采用 Atmel 公司的高密度、非易失性存储技术生产,兼容标准 MCS-51 指令 系统,片内配置通用 8 位中央处理器(CPU)和 Flash 存储单元,功能强大的 AT89C52 单片机可灵活应用于各种控制领域。AT89C52 单片机属于 AT89C51 单片 机的增强型,与 Intel 公司的 80C52 在引脚排列、硬件组成、工作特点和指令系 统等方面兼容。其主要工作特性是: 1、片内程序存储器内含 8KB 的 Flash 程序存储器,可擦写寿命为 1000 次。 2、片内数据存储器内含 256 字节的 RAM。 3、具有 32 根可编程 I/O 口线。 4、具有 3 个可编程定时器。 5、中断系统是具有 8 个中断源、6 个中断矢量、2 个级优先权的中断结构。 2
6、串行口是具有一个全双工的可编程串行通信口。 7、具有一个数据指针 DPTR。 8、低功耗工作模式有空闲模式和掉电模式。 9、具有可编程的 3 级程序锁定位。 10、AT89C52 工作电源电压为 5(1+0.2)V,且典型值为 5V。 11、AT89C52 最高工作频率为 24MHz。 AT89C52 为 40 脚双列直插封装的 8 位通用微处理器,采用工业标准的 C51 内核,在内部功能及管脚排布上与通用的 8xc52 相同,其主要用于会聚调整时 的功能控制。功能包括对会聚主 IC 内部寄存器、数据 RAM 及外部接口等功能部 件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号 IR 的接收解码及 与主板 CPU 通信等。主要管脚有:XTAL1(19 脚)和 XTAL2(18 脚)为振荡器 输入输出端口,外接 12MHz 晶振。RST/Vpd(9 脚)为复位输入端口,外接电阻 电容组成的复位电路。VCC(40 脚)和 VSS(20 脚)为供电端口,分别接+5V 电源的正负端。 P0~P3 为可编程通用 I/O 脚,其功能用途由软件定义,在本设 计中,P0 端口(32~39 脚)被定义为 N1 功能控制端口,分别与 N1 的相应功能 管脚相连接,13 脚定义为 IR 输入端,10 脚和 11 脚定义为 I2C 总线控制端口, 分别连接 N1 的 SDAS(18 脚)和 SCLS(19 脚)端口,12 脚、27 脚及 28 脚定 义为握手信号功能端口,连接主板 CPU 的相应功能端,用于当前制式的检测及 会聚调整状态进入的控制功能。 相对于 AT89C51 单片机来说,AT89C52 单片机有以下几个优点: 1、RAM 空间增大:AT89C51 有 128 字节的内部 RAM,AT89C52 的内部 RAM 扩展为 256 字节。 2、内部 FLASH 变大:AT89C51 有 4K 字节的内部 FLASH PERAM,而 AT89C52 的内部 FLASH PERAM 增加 1 倍,达到 8K。 3、中断源增加:AT89C52 除了具备 AT89C51 的定时器/计数器 T0 和定时 器/计数器 T1,还额外增加了一个定时器/计数器 T2。 3
图 2:AT89C52 单片机及引脚 4.3 OPTC 光断续器介绍 光断续器是以光电效应为基础,将光信号转换为电信号的传感器。光断续器 是采用光电元件作为检测元件的传感器。它首先把被测量的变化转换成光信号的 变化,然后借助光电元件进一步将光信号转换成电信号。 所谓光电效应,即是当用光照射物体时,物体受到一连串具有能量光子的轰 击,于是物体材料中的电子吸收光子能量而发生的相应的电效应,如电导率变化、 发射电子或产生电动势等。通常将光电效应分三类:其一,光照在光电材料上, 材料表面的电子吸收能量,若电子吸收的能量足够大时,电子会克服束缚脱离材 料表面而进入外界空间,从而改变光电子材料的导电性,这种现象称为外光电效 应。基于外光电效应的光电元件有光电管、光电倍增管等。其二,当受到光照射 时,吸收电子能量,其电阻率降低的导电现象称为光导效应。它属于内光电效应, 这种光电元件有光敏电阻等。其三,在光线作用下能使物体产生一定方向电动势 的现象称为光生伏特效应。 光断续器发射、接收器做在体积很小的同一塑料壳体中,所以两者能可靠对 准。可分为遮断式和反射式两种。遮断式的槽宽,深度及光敏元件各不同,反射 式的检测距离较短,多用于安装空间较小的场合。由于检测范围小,光电断续器 的发光二极管可用直流电驱动,红外 LED 的正向压降约 1.2 到 1.5V,驱动电流 控制在几十毫安。光电断续器是较便宜,简单,可靠的光电器件,广泛用于自动 4
控制系统,机电一体化设备,办公设备和家用电器中。 图 3:光断续器实物图 4.4 LCD 显示器介绍 LM016L 液晶模块采用 HD44780 控制器。HD44780 具有简单而功能较强的指令 集,可以实现字符移动、闪烁等功能。LM016L 与单片机通讯可采用 8 位或者 4 位并行传输两种方式。HD44780 控制器由两个 8 位寄存器、指令寄存器(IR)和 数据寄存器(DR)、忙标志(BF)、显示数据 RAM(DDRAM)、字符发生器 ROM(CGROM)、 字符发生器 RAM(CGRAM)、地址计数器(AC)。IR 用于寄存指令码,只能写入不 能读出;DR 用于寄存数据,数据由内部操作自动写入 DDRAM 和 CGRAM,或者暂存 从 DDRAM 和 CGRAM 读出的数据。BF 为 1 时,液晶模块处于内部处理模式,不响 应外部操作指令和接受数据。DDRAM 用来存储显示的字符,能存储 80 个字符码。 CGRAM 是为用户编写特殊字符留用的,它的容量仅 64 字节。可以自定义 8 个 5*7 点阵字符或者 4 个 5*10 点阵字符。AC 可以存储 DDRAM 和 CGRAM 的地址,如果地 址码随指令写入 IR,则 IR 自动把地址码装入 AC,同时选择 DDRAM 或者 CGRAM 单元。LM016L 液晶模块的引脚功能见表 1: 管脚号 名称 1 2 3 4 5 6 VSS VDD VEE RS RW E 7~14 DB0~DB7 电平 0V 5.0V — II/L II/L II/L II/L 表 1:LM016L 引脚说明 功能描述 II:数据线上为数据信号;L:数据线上为指令信号 II:读数据模式;L:写数据模式 使能信号端 数据线 5
通过对 HD44780 写入控制指令,HD44780 产生显示驱动信号来驱动 LM016L。 HD44780 的控制指令主要有:清除显示(Clear Display)、地址归位(Return Home)、 输入模式设定(Entry Mode Set)、显示开/关控制(Display On/Off Control)、 功能设定(Function Set)、设定 CGRAM 的地址(Set CGRAM Address)、设定 DDRAM 的地址(Set DDRAM Address)、写 DDRAM/CGRAM(Write Date to DDRAM/CGRAM)、 读忙标志和地址(Read Busy Flag and Address)以及从 DDRAM 和 CGRAM 中读数 据(Read Date from DDRAM/CGRAM)。以下是实现这些功能的详细指令: (1)void Clear_display(); //清显示屏指令 (2)void Return_home(); //光标归位指令 (3)void Entry_mode_set(); //输入模式设置指令 (4)void Display_on_or_off(); //显示屏的开关控制指令 (5)void Cursor_or_Display_shift();//设定显示屏或光标移动方向指令 (6)void Function_set(); //功能设定指令 (7)void Set_character_address(); //设定 CGRAM 地址指令 (8)void Set_display_address(); //设定 DDRAM 地址指令 (9)void Read_busy_flag(); //读取忙信号或 AC 地址指令 (10)void Write_data(); //将数据写入 DDRAM 或 CGRAM 指令 (11)void Read_data(); //从 CGRAM 或 DDRAM 读出数据的指令 在本设计中,我们将 LCD 的 D0—D7 口分别与单片机的 p1.0—p1.7 口相连接, 因 p1 口是一个准双向口,可用作通用 I/O 口。内部有上拉电阻与电源相连。 图 4:LM016L 引脚图 4.5 晶振电路设计 每个单片机系统里都有晶振,全程是叫晶体震荡器,在单片机系统里晶振的 作用非常大,他结合单片机内部的电路,产生单片机所必须的时钟频率,单片机 的一切指令的执行都是建立在这个基础上的,晶振的提供的时钟频率越高,那单 片机的运行速度也就越快。 晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供 稳定,精确的单频振荡。在通常工作条件下,普通的晶振频率绝对精度可达百万 分之五十。 6
分享到:
收藏