《霍尔传感器测速系-硬件(共29页).doc》由会员分享,可在线阅读,更多相关《霍尔传感器测速系-硬件(共29页).doc(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上自行车测速系统设计 摘要随着居民生活水平的不断提高,自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。自行车的速度里程表能够满足人们最基本的需求,让人们能清楚地知道当前的速度、里程等物理量。本论文主要阐述一种基于霍尔元件的自行车的速度里程表的设计。以 STC89C52 单片机为核心,A44E霍尔传感器测转数,实现对自行车里程/速度的测量统计,单片机片内EEPROM实现在系统掉电的时候保存里程信息,并能将自行车的里程数及速度用1CD1602实时显示。文章详细介绍了自行车的速度里程表的硬件电路和软件设计。硬件部分利用霍尔元件将自行车每转一圈的脉冲
2、数传入单片机系统,然后单片机系统将信号经过处理送显示。软件部分用C语言进行编程,采用模块化设计思想。该系统硬件电路稳定性高,操作方便,完全符合设计要求。关键词:里程/速度;霍尔元件;单片机;LCD1602引言自行车被发明及使用到现在已有两百多年的历史,这两百年间人类在不断的尝试与研发过程中,将玩具式的木马车转换到今日各式新颖休闲运动自行车,自行车发展的目的也从最早的交通代步的工具转换成休闲娱乐运动的用途。随着居民生活水平的不断提高,自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。因此,人们希望自行车的功用更强大,能给人们带来更多的方便。自行车里程速度表作为自行车的一
3、大辅助工具也正是随着这个要求而迅速发展的,其功能也逐渐从单一的里程显示发展到速度、时间显示,甚至有的还具有测量骑车人的心跳、显示骑车人热量消耗等功能。本设计采用了STC89C52单片机设计一种体积小、操作简单的便携式自行车的速度里程表,它能自动地显示当前自行车行走的距离及运行的速度。 专心-专注-专业1 绪 论1.1 设计内容本课题主要任务是利用霍尔元件、单片机等部件设计一个可用LCD1602实时显示里程和速度的自行车的速度里程表。本文主要介绍了自行车的速度里程表的设计思想、电路原理、方案论证以及元件的选择等内容,整体上分为硬件部分设计和软件部分设计。本文首先扼要对该课题的任务进行方案论证,包
4、括硬件方案和软件方案的设计;继而具体介绍了自行车的速度里程表的硬件设计,包括传感器的选择、单片机的选择、显示电路的设计;然后阐述了该自行车的速度里程表的软件设计,包括数据处理子程序的设计、显示子程序的设计;最后针对仿真过程遇到的问题进行了具体说明与分析,对本次设计进行了系统的总结。 具体的硬件电路包括STC89C52单片机的外围电路以及LCD显示电路等。软件设计包括:芯片的初始化程序、定时中断采样子程序、显示子程序等,软件采用C语言编写,软件设计的思想主要是自顶向下,模块化设计,各个子模块逐一设计。 1.2 任务分析与实现本设计的任务是:以通用STC89C52单片机为处理核心,用传感器将车轮的
5、转数转换为电脉冲,进行处理后送入单片机。里程及速度的测量,是经过单片机的定时/计数器测出总的脉冲数和每转一圈的时间,再经过单片机的计算得出,其结果通过LCD显示器显示出来。本系统总体思路如下:假定轮圈的周长为L,在轮圈上安装m个永久磁铁,则测得的里程值最大误差为L/m。经综合分析,本设计中取m=1。当轮子每转一圈,通过开关型霍尔元件传感器采集到一个脉冲信号,并从引脚P3.2中断0端输入,传感器每获取一个脉冲信号即对系统提供一次计数中断。每次中断代表车轮转动一圈,中断数n轮圈的周长为L的乘积为里程值。计数器T1计算每转一圈所用的时间t,就可以计算出即时速度v。经过单片机的处理将当前速度与里程显示
6、出来。要求达到的各项指标及实现方法如下:1. 利用霍尔传感器产生里程数的脉冲信号。2. 对脉冲信号进行计数。实现:利用单片机自带的计数器对霍尔传感器脉冲信号进行计数。3. 对数据进行处理,要求用LCD显示里程总数和即时速度。实现:利用软件编程,对数据进行处理得到需要的数值。最终实现目标:自行车的速度里程表具有里程、速度测试与显示功能,采用单片机作控制,显示电路可显示里程及速度。1.2 方案分析论证1.2.1 霍尔测速模块论证与选择方案一:采用型号为A3144的霍尔片作为霍尔测速模块的核心,该霍尔片体积小,安装灵活,价格合理,可用于测速,可与普通的磁钢片配合工作。 方案二:采用型号为CHV-20
7、L的霍尔元器件作为霍尔测速模块的核心,该霍尔器件额定电流为100mA,输出电压为5V,电源为1215V。体积较大,价格昂贵。因此选择方案一。1.2.2 单片机模块论证与选择方案一:采用型号为STC89C52的单片机作为主器,使用霍尔传感器进行测量的直流电机转速测量系统。STC89C52是带8K字节闪烁可编程擦除只读存储器的低电压、高性能CMOS8位微处理器,且内部集成EEPROM它将多功能8位CPU和闪烁存储器组合在单个芯片中,为许多控制提供了灵活性高且价格低廉的方案。方案二:采用单片机C8051F060作为主器,使用霍尔进行测量的直流电机转速测量系统。C8051F060系列单片机是美国CYG
8、NAL公司推出的一种与51系列单片机内核兼容的单片机4。C8051F060作为新一代8051单片机,具有功能强大、体积小、工作稳定等特点,适用于复杂控制系统。因此选择方案一。1.2.3 显示模块论证与选择方案一:采用LED数码管动态扫描,LED数码管价格适中,亮度高,显示数字合适,但是连接复杂,耗电流大,驱动电路复杂。方案二:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示简单文字比较适合,如果显示数字则浪费资源,而且价格也相对较高。方案三:采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,并且连接很方便 ,所以在此设计中采用了L
9、CD液晶显示屏。因此选择方案三。1.2.4 电源模块论证与选择方案一:采用交流220V/50Hz电源转换为直流5V电源作为电源模块。该方案实施简单,电路搭建方便,可作为单片机开发常备电源使用。方案二:采用干电池串并联达到5V作为电源模块。该方案实施简单,无需搭建电路,但相对该方案不够稳定,电池耗电快,带负载后压降过高,可能无法使系统稳定持续运行。方案三:采用可充电锂电池结合稳压模块作为电源模块。该方案简单易行,而且相对稳定、误差小,但该方案相对价格过高,针对该设计要求性价比低。因此选择方案二。2 基于霍尔传感器的电机转速测量系统硬件设计2.1 电机转速测量系统的硬件电路设计2.1.1 总体硬件
10、设计使用单片机测量电机转速的基本结构如图2-1所示。该系统包括霍尔传感器、隔离整形电路、主CPU、显示电路、报警电路及电源等部分。图2-1 系统总体结构图其测量过程是测量转速的霍尔传感器和电机机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路输出。经过电耦合器后,即经过隔离整形电路后,成为转数计数器的计数脉冲。同时霍尔传感器电路输出幅度为12V的脉冲经光电耦合后降为5V,保持同单片机STC89C52逻辑电平相一致,控制计数时间,即可实现计数器的计数值对应机轴的转速值。主CPU将该值数据处理后,在LCD液晶显示器上显示出来。一旦超速,CPU通过喇叭和转灯发出声、光报警信号。1.传感
11、器部分主要分为两个部分。第一部分是利用霍尔器件将电机的转速转化为脉冲信号。霍尔测速模块由铁质的测速齿轮和带有霍尔元件的支架构成。测速齿轮如图2-2所示,齿轮厚度大约2mm,将其固定在待测电机的转轴上。将霍尔元件固定在距齿轮外圆1mm的探头上,霍尔元件的对面粘贴小磁钢,当测速齿轮的每个齿经过探头正前方时,改变了磁通密度,霍尔元件就输出一个脉冲信号。第二部分是使用六反相器和光耦,将传感器输出的信号进行整形隔离,减少计数的干扰。测速齿轮 霍尔元件图2-2 转速变换装置2.处理器采用STC89C52单片机作为系统的处理器。3.显示部分该部分有两个功能,在正常情况下,通过LCD液晶显示器显示当前的转速。
12、2.1.2 系统电路设计实际测量时,要把霍尔传感器固定在直流测速电机的底板上,与霍尔探头相对的电机的轴上固定着一片磁钢块,电机每转一周,霍尔传感器便发出一个脉冲信号,将此脉冲信号接到开发的多功能实验板上的P3.2上,设定0定时,每分钟所计的进入P3.2的脉冲个数即为直流电机的转速。由于在虚拟仿真电路图中,没有电机及传感器,所以就直接用一个脉冲信号代替,电路图如图2-3所示。图2-3 总体硬件电路图2.2 霍尔传感器测量电路设计2.2.1 霍尔元件根据霍尔效应,人们用半导体材料制成的元件叫霍尔元件。它具有对磁场敏感、结构简单、体积小、频率响应宽、输出电压变化大和使用寿命长等优点,因此,在测量、自
13、动化、计算机和信息技术等领域得到广泛的应用。霍尔传感器A3144是Allegro MicroSystems公司生产的宽温、开关型霍尔效应传感器,其工作温度范围可达-40150。它由电压调整电路、反相电源保护电路、霍尔元件、温度补偿电路、微信号放大器、施密特触发器和OC门输出极构成,通过使用上拉电阻可以将其输出接入CMOS逻辑电路。该芯片具有尺寸小、稳定性好、灵敏度高等特点,有两种封装形式,一种是3脚贴片微小型封装,后缀为“LH”;另一种是3脚直插式封装,后缀为“UA”5。A3144E系列单极高温霍尔效应集成传感器是由稳压电源,霍尔电压发生器,差分放大器,施密特触发器和输出放大器组成的磁敏传感电
14、路,其输入为磁感应强度,输出是一个数字电压讯号。它是一种单磁极工作的磁敏电路,适用于矩形或者柱形磁体下工作。可应用于汽车工业和军事工程中。霍尔传感器的外形图和与磁场的作用关系如图2-4所示。磁场由磁钢提供,所以霍尔传感器和磁钢需要配对使用。霍尔元件和磁钢 管脚图图2-4 霍尔传感器的外形图该霍尔传感器的接线图如图2-5所示。 图2-5 霍尔传感器的接线图2.2.2 霍尔传感器测量原理测量电机转速的第一步就是要将电机的转速表示为单片机可以识别的脉冲信号,从而进行脉冲计数。霍尔器件作为一种转速测量系统的传感器,它有结构牢固、体积小、重量轻、寿命长、安装方便等优点,因此选用霍尔传感器检测脉冲信号,其
15、基本的测量原理如图2-6所示,当电机转动时,带动传感器运动,产生对应频率的脉冲信号,经过信号处理后输出到计数器或其他的脉冲计数装置,进行转速的测量6。图2-6 霍尔器件测速原理2.2.3 转速测量方法 转速的测量方法很多,根据脉冲计数来实现转速测量的方法主要有M法(测频法)、T法(测周期法)和MPT法(频率周期法),该系统采用了M法(测频法)。由于转速是以单位时间内转数来衡量,在变换过程中多数是有规律的重复运动。根据霍尔效应原理,将一块永久磁钢固定在电机转轴上的转盘边沿,转盘随侧轴旋转,磁钢也将跟着同步旋转,在转盘下方安装一个霍尔器件,转盘随轴旋转时,受磁钢所产生的磁场的影响,霍尔器件输出脉冲
16、信号,其频率和转速成正比。脉冲信号的周期与电机的转速有以下关系:n= (2-1)式中:n为电机转速;P为电机转一圈的脉冲数;T为输出方波信号周期。根据式(2-1)即可计算出直流电机的转速7。 霍尔器件是由半导体材料制成的一种薄片,在垂直于平面方向上施加外磁场B,在沿平面方向两端加外电场,则使电子在磁场中运动,结果在器件的两个侧面之间产生霍尔电势。其大小和外磁场及电流大小成比例。霍尔开关传感器由于其体积小,无触点,动态特性好,使用寿命长等特点,故在测量转动物体旋转速度领域得到了广泛应用8。2.2.4 反相器74LS1474LS14是一个6反相器,引脚定义如图2-7所示:A端为输入端,Y端为输出端
17、,一片芯片一共6路,即1,3,5,9,11,13为输入端,2,4,6,8,10,12为输出端,输出结果与输入结果反相。即如果输入端为高电平,那么输出为低电平。如果输入低电平,输出为高电平。图2-7 反相器引脚图2.2.5 光电耦合器光电耦合器,是近几年发展起来的一种半导体光电器件,由于它具有体积小、寿命长、抗干扰能力强、工作温度宽及无触点输入与输出在电气上完全隔离等特点,被广泛地应用在电子技术领域及工业自动控制领域中,它可以代替继电器、变压器、斩波器等,而用于隔离电路、开关电路、数模转换、逻辑电路、过流保护、长线传输、高压控制及电平匹配等。光电耦合器是以光为媒介传输电信号的一种电光电转换器件。
18、它由发光源和受光器两部分组成。把发光源和受光器组装在同一密闭的壳体内,彼此间用透明绝缘体隔离。发光源的引脚为输入端,受光器的引脚为输出端,常见的发光源为发光二极管,受光器为光敏二极管、光敏三极管等。光电耦合器的种类较多,常见有光电二极管型、光电三极管型、光敏电阻型、光控晶闸管型、光电达林顿型、集成电路型等。光电耦合器件(简称光耦)是把发光器件(如发光二极管)和光敏器件(如光敏三极管)组装在一起,通过光线实现耦合构成电光和光电的转换器件。在光电耦合器输入端加电信号使发光源发光,光的强度取决于激励电流的大小,此光照射到封装在一起的受光器上后,因光电效应而产生了光电流,由受光器输出端引出,这样就实现
19、了电一光一电的转换9。光电耦合器分为很多种类,图2-8所示为常用的三极管型光电耦合器原理图。当电信号送入光电耦合器的输入端时,发光二极管通过电流而发光,光敏元件受到光照后产生电流,CE导通;当输入端无信号,发光二极管不亮,光敏三极管截止,CE不通。对于数位量,当输入为低电平“0”时,光敏三极管截止,输出为高电平“1”;当输入为高电平“1”时,光敏三极管饱和导通,输出为低电平“0”。若基极有引出线则可满足温度补偿、检测调制要求。这种光耦合器性能较好,价格便宜,因而应用广泛。图2-8 最常用的光电耦合器内部结构图光电耦合器的接线原理如图2-9所示。图2-9 光电耦合器接线原理2.2.6 蜂鸣器蜂鸣
20、器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。报警器的种类很多,比如:扬声器、蜂鸣器等,本设计中选用电磁式蜂鸣器作为报警器。电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声10。图2-10 电磁式蜂鸣器2.3 单片机STC89C52单片机(Single-Chip-Microcomputer)又称为单片微控制器,其基本结构是将微型计算机的基本功能部件:中央
21、处理器(CPU)、存储器、输入口、输出口、定时器/计数器、中断系统等全部集中在一个半导体芯片上。 单片机结构上的设计,在硬件、指令系统及I/O能力等方面都有独到之处,具有较强而有效的控制功能。虽然单片机只是一个芯片,但无论从组成还是从其逻辑功能上来看,都具有微机系统的含义。另一方面,单片机毕竟是一个芯片,只有外加所需的输入、输出设备,才可以构成实用的单片机应用系统11。2.3.1 STC89C52芯片AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位
22、微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容12。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价格低廉的方案。其引脚图如图2-11所示。图2-11 AT89C51引脚图2.3.2 定时器8051单片机内部有两个16位可编程定时器/计数器,记为T0和T1。它的工作方式可以通过指令对相应的特殊功能寄存器编程来设定,或作定时器用,或作外部事件计时器用。定时器/计数器在硬件上由双字节加法计数器TH和TL组成。作定时器使用时,计数脉冲由
23、单片机内部振荡器提供,计数频率为f/12,每个机器周期加113。8051单片机定时器/计数器的工作方式由特殊功能寄存器TMOD编程决定,定时器/计数器的启动运行由特殊功能寄存器TCON编程控制。不论用作定时器还是计数器,每当产生溢出时,都会向CPU发出中断请求。单片机的定时器的工作原理是利用了寄存器的溢出来触发中断的,所以在写定时器的时候就要去算计数的增量,再根据单片机的晶振的频率就可以算出确定的时间了。定时器主要用到了2个寄存器,一个为TCON,另一个为TMOD。TCON是用来控制定时器的启动与停止的。TMOD是用来设置定时器的模式的。8051单片机的定时器/计数器是可编程的,在进行定时或计
24、数操作之前要进行初始化编程。通常8051单片机定时器/计数器的初始化编程包括如下几个步骤:1.确定工作方式,即给方式控制寄存器TMOD写入控制字。2.计算定时器/计数器初值,并将初值写入TH和TL。3.根据需要对中断控制寄存器IE置初值,决定是否开放定时器中断。4.使运行控制寄存器TCON中的TR0或TR1置“1”,启动定时器/计数器。在初始化过程中,要设置定时或计数的初始值,这时需要进行一点运算。由于计数器是加法计数,并在溢出时产生中断,因此初始值不能是所需要的计数模值,而是要从最大计数值减去计数模值所得才是应当设置的计数初始值。假设计数器的最大计数值为M(根据不同工作方式,M可以是2、2或
25、2),则计算初值X的公式如下:计数方式:X=M-要求的计数值 (2-2)定时方式:X=M- (2-3)2.3.3 外部中断外部中断:对某个中央处理机而言,它的外部非通道式装置所引起的中断称为外部中断。51单片机的外部中断有两种触发方式可选:电平触发和边沿触发。选择电平触发时,单片机在每个机器周期检查中断源口线,检测到低电平,即置位中断请求标志,向CPU请求中断。选择边沿触发方式时,单片机在上一个机器周期检测到中断源口线为高电平,下一个机器周期检测到低电平,即置位中断标志,请求中断。应用时需要特别注意的几点:1电平触发方式时,中断标志寄存器不锁存中断请求信号。要使电平触发的中断被CPU响应并执行
26、,必须保证外部中断源口线的低电平维持到中断被执行为止。因此当CPU正在执行同级中断或更高级中断期间,产生的外部中断源(产生低电平)如果在该中断执行完毕之前撤销(变为高电平)了,那么将得不到响应,就如同没发生一样。同样,当CPU在执行不可被中断的指令(如RETI)时,产生的电平触发中断如果时间太短,也得不到执行。2边沿触发方式时,中断标志寄存器锁存了中断请求。中断口线上一个从高到低的跳变将记录在标志寄存器中,直到CPU响应并转向该中断服务程序时,由硬件自动清除。因此当CPU正在执行同级中断(甚至是外部中断本身)或高级中断时,产生的外部中断(负跳变)同样将被记录在中断标志寄存器中。在该中断退出后,
27、将被响应执行。如果不希望这样,必须在中断退出之前,手工清除外部中断标志。3中断标志可以手工清除。一个中断如果在没有得到响应之前就已经被手工清除,则该中断将被CPU忽略。就如同没有发生一样。2.4 显示电路设计2.4.1 1602字符型LCD简介1字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。下面以长沙太阳人电子有限公司的1602字符型液晶显示器为例,介绍其用法。字符型LCD1602通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完
28、全一样14。一般1602字符型液晶显示器实物如图2-12所示。图2-12 1602实物图2.4.2 1602LCD的基本参数及引脚功能1.1602LCD类型1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如图2-13所示。图2-13 1602带背光与不带背光差别图2.LCD1602主要技术参数显示容量:162个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm3.1602LCD引脚1602LCD采用标准的14脚(无背光)或16脚(
29、带背光)接口,各引脚接口说明如表2-1。表2-1 引脚接口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
30、第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。4.其与单片机的连接如图2-14所示。图2-14 1602与单片机接线图2.4.3 显示模式LCD1602是常见的162行,68字符点阵液晶模块,广泛应用于智能仪表、通信、办公自动化设备中,其字符发生器ROM中自带数字和英文字母及一些特殊
31、符号的字符库,没有汉字。本设计中LCD1602显示了英文字母和数字。由于Proteus库中没有16引脚,因此选用LCD1602的14引脚方式,即不带背光源部分。如图2-15所示。图2-15 LCD显示图2.5 系统软件设计2.5.1 设计思想本系统采用89C51中的中断对转速脉冲计数。定时器T0工作于定时方式,工作于方式1。每到1s读一次外部中断计数值,此值即为脉冲信号的频率,代表的即是电机的转速。2.5.2 总体软件流程先进行初始化设置各定时器初值,然后判断是否启动系统进行测量。如果是,就启动系统运行。如果不是就等待启动。启动系统后,霍尔传感器检测脉冲到来后,启动外部中断,每来一个脉冲中断一
32、次,记录脉冲个数。同时启动T0定时器工作,每1秒定时中断一次,读取记录的脉冲个数,即电机转速。连续采样三次,取平均值记为一次转速值。再进行数值的判断,若数值高于5000r/min则报警并返回初始化阶段,否则就进行正常速度液晶显示。如图2-16所示。图2-16 主流程图3 系统仿真和调试3.1 Proteus软件3.1.1 Proteus简介Proteus是基于SPICE3F5仿真引擎的混合电路仿真软件,不仅能够仿真模拟、数字电路以及模数混合电路,更具特色的是它能够仿真基于单片机的电子系统。Proteus不但完全支持MCS-51及其派生系列单片机的设计系统,另外也能仿真基于AVR和PIC系列的单
33、片机系统。Proteus的仿真资源Proteus软件可提供的模拟、数字、交(直)流等元器件达30多个元件库,共计数千种。此外,对于元件库中没有的器件,使用者也可依照需要自己创建。软件调试方面,其自身只带汇编编译器,不支持C语言。但可以将它与KeilC51集成开发环境连接,将用汇编和C语言编写的程序编译好之后,可以立即进行软、硬件结合的系统仿真,像使用仿真器一样来调试程序15。当然,软件仿真精度有限,而且不可能所有的器件都找得到相应的仿真模型,用开发板和仿真器当然是最好选择,可是对于单片机爱好者,或者简单的开发应该是比较好的选择。Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CP
34、U的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。3.1.2 用Proteus绘制原理图步骤原理图是在原理图编辑窗口中的蓝色方框内绘制完成的,通过文件中的“新建设计”选项,可以调整原理图设计页面大小。绘制原理图时首先应根据需要选取元器件,Proteus库中提供了大量元器件原理图符号,利用Proteus的搜索功能能很方便地查找需要的元器件。首先根据需要选择器件。
35、单击元器件列表窗口上边的按钮“P”,弹出如图3-1所示元器件选择窗口。在该窗口左上方的“关键字”栏内键入“AT89C51”,窗口中间的“结果”栏将显示出元器件库中所有AT89C51单片机芯片,选择其中的“AT89C51”,窗口右上方将显示出AT89C51图形符号,同时显示该器件的虚拟仿真模型,单击“确定”按钮后,AT89C51将出现在器件列表窗口。照此方法选择所有需要的元器件。图3-1 器件选择窗口器件选择完毕后,就可以开始绘制原理图了。先用鼠标从器件选择窗口选中需要的器件,预览窗口将出现该器件的图标。再将鼠标指向编辑窗口并单击左键,将选中的器件放置到原理图中。放置电源和地线端时,要从“终端”
36、按钮栏中选取。在两个元器件之间进行连线的方式很简单,先将鼠标指向第一个器件的连接点并单击左键,再将鼠标移到另一个器件的连接点并单击左键,这两个点就连接到一起了。对于相隔较远,直接连线不方便的器件,可以用标号的方式进行连接。连接后的部分硬件电路如图3-2所示。图3-2 硬件电路图3.2 硬件调试 按电路图买好元件后首先检查买回元件的好坏,按各元件的检测方法分别进行检测,一定要仔细认真。按电路图的位置将各元件安置好,首先放置核心元件,然后再放其他元件,特别注意顺序不能颠倒。在保证电路元器件完好及各元器件放置无误合理的情况下,开始对电路连接布线,由于本设计用面包板搭件,所以布线要无跨线并且工整。当硬
37、件设计从布线到焊接安装完成之后,就开始进入硬件调试阶段。3.2.1 硬件静态调试1排除逻辑故障显示器部分调试为了使调试顺利进行,首先将89C51与LCD显示分离,这样就可以用静态方法先测试LCD显示,用规定的电平加至位显示的引脚,看显示是否与理论上一致。不一致,一般为LCD显示器接触不良所致,必须找出故障,检测89C51电路工作是否正常。对89C51进行编程调试时,分为两个步骤:第一,对其进行初始化。第二,将89C51与LCD结合起来,借助开发机,通过编制程序进行调试。若调试通过后,就可以编制应用程序了16。对于一些逻辑故障来说,这类故障往往是由于设计和焊接过程中的失误所造成的。主要包括错线、
38、开路、短路。排除的方法是首先将焊接好的电路板认真对照原理图,看两者是否一致。应特别注意电源系统检查,以防止电源短路和极性错误,并重点检查系统总线是否存在相互之间短路或与其它信号线路短路。必要时利用数字万用表的短路测试功能,可以缩短排错时间。 2排除元器件失效 造成这类错误的原因有两个:一个是元器件买来时就已坏了另一个是由于安装错误,造成器件烧坏。可以采取检查元器件与设计要求的型号、规格和安装是否一致。在保证安装无误后,用替换方法排除错误。 3排除电源故障在通电前,一定要检查电源电压的幅值和极性,否则很容易造成集成块损坏。加电后检查各插件上引脚的电位,一般先检查VCC与GND之间电位,若在5V4
39、8V之间属正常。若有高压,联机仿真器调试时,将会损坏仿真器等,有时会使应用系统中的集成块发热损坏。3.2.2 虚拟仿真调试原理图绘制完成之后,给单片机添加应用程序,就可以进行虚拟仿真调试。先用鼠标右键选中AT89C51单片机,再单击左键,弹出如图3-3所示器件编辑窗口。图3-3 器件编辑窗口在器件编辑窗口中“Program File”栏单击文件夹浏览按钮,找到需要仿真的Hex文件,单击“确定”按钮完成添加文件,在“Clock Frequency”文本框中把频率改为12MHz,单击“确定”按钮退出。这时单击仿真工具栏中全速运行按钮即可开始进行虚拟仿真17。3.3 软件调试软件调试是通过对用户程序
40、的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。程序运行后编辑,查看程序是否有逻辑的错误。本系统的软件程序完全由C51编写,C语言效率高,但同时也存在一些缺点,比如严格定时比较困难。在调试过程中采取的是自上至下的调试方法,单独调试好每一个模块,然后再连接成一个完整的系统调试。3.4 软硬件联调使用Keil、Proteus软件进行单步调试仿真模拟,直到满足技术指标后,将程序烧到89C51片中进行软硬件联调。调试的过程及步骤如下:1.检测5v电源是否正常,并且是否加到单片机的电源引脚端。2.检测单片机的晶振电路是否正常工作,用万用表检测89C51片的18、19脚的电压分
41、别为3v、1.5v左右。3.检测复位信号输入端RST,高电平有效。在单片机正常工作时,此脚应为0.5V低电平。4.测试外部脉冲计数电路通过给CPU 施加固定脉冲,测试外部计数软件的正确与否。5.测试定时器中断系统6.检测液晶显示模式通过软件编程,给LCD输出指定数字,如“2501”,观察LCD上显示的也是“2501”,表明显示电路正确。如图3-4所示。图3-4 液晶显示模式测试电路4 结 论经过14周的辛勤努力,学习了霍尔传感器测速原理及相关器件的性能特点与用法等知识,查阅了关于单片机的各方面的资料,实现了“基于霍尔传感器的电机转速测量系统设计”的基本要求。所设计的系统具有以下功能:1.设计采
42、用89C51单片机作为测量转速的主CPU芯片,系统硬件设备结构简单合理,成本低,实时性好。2.测速系统采用霍尔传感器作为敏感速率信号,具有频率响应快,抗干扰能力强等特点。霍尔传感器的输出信号经信号调理后,通过单片机对连续脉冲计数来实现转速测量,充分利用了单片机的内部资源,有很高的性价比。3.采用1602LCD显示测速值,直观、稳定,易于实现,该显示方式可以推广到其他工程应用领域。4.采用Proteus进行了软仿真,绘制出电机转速测量系统的硬件电路,调试结果表明所设计的硬件电路正确。5.测速系统的功能还有待进一步扩充,如判别转速方向的能力,电路布局和抗干扰方面还有很大的提升空间。附录 硬件实物图
43、参考文献1于炳亮.电机转速测量方法研究J.山东科学.2005(05).74782成辉传感器的理论与设计基础及其应用M北京:国防工业出版社.1999.30323任小青,王晓娟.基于AT89C51单片机的频率计设计方法的研究J.青海大学学报.2009(02)4来清民.传感器与单片机接口及实例M.北京航空航天大学出版社.2008.2642665KUANG Fu Hua. Application of Hall-Effect Sensor A3144 in Precise Displacement Measurement. J PROCESS AUTOMATION INSTRUMENTATION.20
44、05(10)6邵显涛,陈明,李俊.基于霍尔传感器电机转速的单片机测量J.电子测试.2008(12)7牛洁,周静,苟娜.基于霍尔传感器的直流电机转速测量系统设计J.电子测试.2008(05)8姜文华.电动机测试系统及霍尔效应传感器在测试中的应用C.20039吴道悌.非电量电测技术M.西安:西安交通大学出版社.2006.20120310彭为,黄科,雷道仲.单片机典型系统设计实例精讲M.北京:电子工业出社.2007.31631711宋受俊.基于单片机的电机运动控制系统设计D.硕士.200612WU Xia, XU Hua, LI Qing. A method of measuring low rot
45、ation speeds based on 89C51 single-chipJ.JOURNAL OF CHINA INSTITUTE OF METROLOGY.2000(06)13张毅坤,陈善久,裘雪红.单片机原理及应用M.西安:西安电子科技大学出版社.2007.283014陈享成,耿长青.基于单片机的LCD显示终端设计J.电力自动化设备.2007(09)15李学礼.基于Proteus的8051单片机实例教程M.北京:电子工业出版社.200816陈兴文,刘燕.单片机应用系统硬件调试技巧J.中国测控网.200617徐爱钧.单片机原理实用教程基于Proteus虚拟仿真M.北京:电子工业出版社.2009.1921致 谢时光匆匆如流水,转眼便是大学毕业时节,春梦秋云,聚散真容易。毕业论文的完成也随之进入了尾声。当我在电脑上敲出了最后一个字,心中涌现的不是想象已久的欢欣,却是难以言喻的失落。是的,随着论文的终结,意味着我生命中最纯美的学生时代即将结束,尽管百般不舍,这一天终究会在熙熙攘攘的喧嚣中决绝的来临。 最后,我要向在百忙之中抽时间对本文进行审阅、评议和参加本人论文答辩的各位师长表示感谢!
限制150内