收藏 分享(赏)

基于单片机的转速测量系统[1].doc

上传人:weiwoduzun 文档编号:3215034 上传时间:2018-10-07 格式:DOC 页数:43 大小:412.50KB
下载 相关 举报
基于单片机的转速测量系统[1].doc_第1页
第1页 / 共43页
基于单片机的转速测量系统[1].doc_第2页
第2页 / 共43页
基于单片机的转速测量系统[1].doc_第3页
第3页 / 共43页
基于单片机的转速测量系统[1].doc_第4页
第4页 / 共43页
基于单片机的转速测量系统[1].doc_第5页
第5页 / 共43页
点击查看更多>>
资源描述

1、 第 1 页 共 43 页基于单片机的转速测量系统设计【摘要】 介绍了一种基于 AT89C51 单片机平台,采用光电传感器实施电机转速测量的方法,硬件系统包括脉冲信号产生、脉冲信号处理和显示模块,并采用 C 语言编程,结果表明该方法具有简单、精度高、稳定性好的优点。介 绍了该测速法的基本原理、实现步骤和软硬件设计【关键词】转速测量; 单片机; 光电传感器;电机;脉冲。第 2 页 共 43 页1.概述1.1 数字式转速测量系统的发展背景目前国内外测量电机转速的方法很多,按照不同的理论方法,先后产生过模拟测速法(如离心式转速表、用电机转矩或者电机电枢电动势计算所得)、同步测速法(如机械式或闪光式频

2、闪测速仪)以及计数测速法。计数测速法又可分为机械式定时计数法和电子式定时计数法。传统的电机转速检测多采用测速发电机或光电数字脉冲编码器,也有采用电磁式(利用电磁感应原理或可变磁阻的霍尔元件等 )、电容式(对高频振荡进行幅值调制或频率调制)等,还有一些特殊的测速器是利用置于旋转体内的放射性材料来发生脉冲信号其中应用最广的是光电式,光电式测系统具有低惯性、低噪声、高分辨率和高精度的优点加之激光光源、光栅、光学码盘、CCD 器件、光导纤维等的相继出现和成功应用,使得光电传感器在检测和控制领域得到了广泛的应用。而采用光电传感器的电机转速测量系统测量准确度高、采样速度快、测量范围宽和测量精度与被测转速无

3、关等优点,具有广阔的应用前景。1.2 本设计课题的目的和意义在工程实践中,经常会遇到各种需要测量转速的场合, 例如在发动机、电动机、卷扬机、机床主轴等旋转设备的试验、运转和控制中,常需要分时或连续测量和显示其转速及瞬时转速。要测速,首先要解决是采样问题。在使用模技术制作测速表时,常用测速发电机的方法,即将测速发电机的转轴与待测轴相连,测速发电机的电压高低反映了转速的高低。为了能精确地测量转速外,还要保证测量的实时性,要求能测得瞬时转速方法。因此转速的测试具有重要的意义。这次设计内容包含知识全面,对传感器测量发电机转速的不同的方法及原理设计有较多介绍,在测量系统中能学到关于测量转速的传感器采样问

4、题,单片机部分的内容,显示部分等各个模块的通信和联调。全面了解单片机和信号放大的具体内容。进一步锻炼我们在信号采集,处理,显示发面的实际工作能力。第 3 页 共 43 页2.转速测量系统的原理2.1 转速测量方法转速是指作圆周运动的物体在单位时间内所转过的圈数,其大小及变化往往意味着机器设备运转的正常与否,因此,转速测量一直是工业领域的一个重要问题。按照不同的理论方法,先后产生过模拟测速法(如离心式转速表) 、同步测速法(如机械式或闪光式频闪测速仪) 以及计数测速法。计数测速法又可分为机械式定时计数法和电子式定时计数法。本文介绍的采用单片机和光电传感器组成的高精度转速测量系统,其转速测量方法采

5、用的就是电子式定时计数法。对转速的测量实际上是对转子旋转引起的周期脉冲信号的频率进行测量。在频率的工程测量中,电子式定时计数测量频率的方法一般有三种:测频率法:在一定时间间隔 t 内,计数被测信号的重复变化次数 N ,则被测信号的频率fx 可表示为f x =Nt(1)测周期法:在被测信号的一个周期内,计数时钟脉冲数 m0 ,则被测信号频率 fx = fc/ m0 ,其中, fc 为时钟脉冲信号频率。多周期测频法:在被测信号 m1 个周期内, 计数时钟脉冲数 m2 ,从而得到被测信号频率 fx ,则 fx 可以表示为 fx =m1 fcm2, m1 由测量准确度确定。电子式定时计数法测量频率时,

6、其测量准确度主要由两项误差来决定:一项是时基误差; 另一项是量化1 误差。当时基误差小于量化1 误差一个或两个数量级时,这时测量准确度主要由量化1 误差来确定。对于测频率法,测量相对误差为:Er1 =测量误差值实际测量值 100 % =1N100 % (2)由此可见,被测信号频率越高, N 越大, Er1 就越小,所以测频率法适用于高频信号(高转速信号 ) 的测量。对于测周期法,测量相对误差为:Er2 =测量误差值实际测量值 100 % =1m0100 % (3)对于给定的时钟脉冲 fc , 当被测信号频率越低时 ,m0 越大, Er2 就越小,所以测周期法适用于低频信号(低转速信号) 的测量

7、。对于多周期测频法,测量相对误差为:第 4 页 共 43 页Er3 =测量误差值实际测量值 100%=1m2100 % (4)从上式可知,被测脉冲信号周期数 m1 越大, m2 就越大,则测量精度就越高。它适用于高、低频信号(高、低转速信号) 的测量。但随着精度和频率的提高 , 采样周期将大大延长,并且判断 m1 也要延长采样周期,不适合实时测量。根据以上的讨论,考虑到实际应用中需要测量的转速范围很宽,上述的转速测量方法难以满足要求,因此,研究高精度的转速测量方法,以同时适用于高、低转速信号的测量,不仅具有重要的理论意义,也是实际生产中的需要。2.2 转速测量原理一般的转速长期测量系统是预先在

8、轴上安装一个有 60 齿的测速齿盘,用变磁阻式或电涡流式传感器获得一转 60 倍转速脉冲,再用测频的办法实现转速测量。而临时性转速测量系统,多采用光电传感器,从转轴上预先粘贴的一个标志上获得一转一个转速脉冲,随后利用电子倍频器和测频方法实现转速测量。不论长期或临时转速测量,都可以在微处理器的参与下,通过测量转轴上预留的一转一齿的鉴相信号或光电信号的周期,换算出转轴的频率或转速。即通过速度传感器,将转速信号变为电脉冲,利用微机在单位时间内对脉冲进行计数,再经过软件计算获得转速数据。即:n=N/ (mT) (1)n 转速、单位:转/ 分钟;N 采样时间内所计脉冲个数;T采样时间、单位:分钟;m 每

9、旋转一周所产生的脉冲个数(通常指测速码盘的齿数 ) 。如果 m=60, 那么 1 秒钟内脉冲个数 N 就是转速 n, 即:n=N/ (mT) =N/60 1/60=N (2)通常 m 为 60。在对转速波动较快系统或要求动态特性好而精度高的转速测控系统中,调节周期一般很短,相应的采样周期需取得很小,使得脉冲当量增高,从而导致整个系统测量精度降低,难以满足测控要求。提高采样速率通常就要减小采样时间 T, 而 T 的减小会使采到的脉冲数值 N 下降,导致脉冲当量(每个脉冲所代表的转速 ) 增高,从而使得测量精度变得粗糙。通过增加测速码盘的齿数可以提高精度,但是码盘齿数的增加会受到加工工艺的限制,同

10、时会使转速测量脉冲的频率增高,频率的提升又会受到传感器中光电器或磁敏器或磁电器件最高工作频率的限制。凡此种种因素限制了常规智能转速测量方法第 5 页 共 43 页的使用范围。而采用本文所提出的定时分时双频率采样法,可在保证采样精度的同时,提高采样速率,充分发挥微机智能测速方法的优越性及灵活性。图 2.1 系统原理图 各部分模块的功能:传感器:用来对信号的采样。放大、整形电路:对传感器送过来的信号进行放大和整形,在送入单片机进行数据的处理转换。单片机:对处理过的信号进行转换成转速的实际值,送入 LEDLED 显示:用来对所测量到的转速进行显示。第 6 页 共 43 页3.系统方案提出和论证转速测

11、量的方案选择,一般要考虑传感器的结构、安装以及测速范围与环境条件等方面的适用性;再就是二次仪表的要求,除了显示以外还有控制、通讯和远传方面的要求。本说明书中给出两种转速测量方案,经过我和伙伴查资料、构思和自己的设计,总体电路我们有两套设计方案,部分重要模块也考虑了其它设计方法,经过分析,从实现难度、熟悉程度、器件用量等方面综合考虑,我们才最终选择了一个方案。下面就看一下我们对两套设计方案的简要说明。方案一: 霍尔传感器测量方案霍尔传感器是利用霍尔效应进行工作的?其核心元件是根据霍尔效应原理制成的霍尔元件。本文介绍一种泵驱动轴的转速采用霍尔转速传感器测量。霍尔转速传感器的结构原理图如图 3.1,

12、 霍尔转速传感器的接线图如图 3.2 。传感器的定子上有 2 个互相垂直的绕组 A 和 B, 在绕组的中心线上粘有霍尔片HA 和 HB ,转子为永久磁钢,霍尔元件 HA 和 HB 的激励电机分别与绕组 A 和 B 相连,它们的霍尔电极串联后作为传感器的输出。图3.1 霍尔转速传感器的结构原理图第 7 页 共 43 页图 3.2 方案霍尔转速传感器的接线图缺点:采用霍尔传感器在信号采样的时候,会出现采样不精确,因为它是靠磁性感应才采集脉冲的,使用时间长了会出现磁性变小,影响脉冲的采样精度。方案二: 光电传感器 整个测量系统的组成框图如图 3.3 所示。从图中可见,转子由一直流调速电机驱动,可实现

13、大转速范围内的无级调速。转速信号由光电传感器拾取,使用时应先在转子上做好光电标记,具体办法可以是:将转子表面擦干净后用黑漆(或黑色胶布) 全部涂黑,再将一块反光材料贴在其上作为光电标记,然后将光电传感器(光电头) 固定在正对光电标记的某一适当距离处。光电头采用低功耗高亮度 LED ,光源为高可靠性可见红光,无论黑夜还是白天,或是背景光强有大范围改变都不影响接收效果。光电头包含有前置电路,输出 05V 的脉冲信号。接到单片机 89C51 的相应管脚上,通过 89C51 内部定时/计时器 T0、T1 及相应的程序设计,组成一个数字式转速测量系统。第 8 页 共 43 页图 3.3 测量系统的组成框

14、图优点:这种方案使用光电转速传感器具有采样精确,采样速度快,范围广的特点。综上所述,方案二使用光电传感器来作为本设计的最佳选择方案。第 9 页 共 43 页4.系统硬件设计随着超大规模集成电路技术提高,尤其是单片机应用技术以及功能强大,价格低廉的显著特点,是全数字化测量转度系统得一广泛应用。出于单片机在测量转速方面具有体积小、性能强、成本低的特点,越来越受到企业用户的青睐。对测量转速系统的硬件和编程进行研究,设计出一种以单片机为主的转速测量系统,保证了测量精度。4.1 转速信号采集在设计中采用光电传感器采集信号,这种传感器是把旋转轴的转速变为相应频率的脉冲,然后用测量电路测出频率,由频率值就可

15、知道所侧转素值。这种测量方法具有传感器结构简单、可靠、测量精度高的特点。是目前常用的一种测量转速的方法。从光源发出的光通过测速齿盘上的齿槽照射到光电元件上,使光电元件感光。测速齿盘上有 30 个齿槽,当测速齿槽旋转一周,光敏元件就能感受与开孔数相等次数的光次数。对于被测电机的转速在 901700r/min 的来说,每转一周产生 30 个电脉冲信号,因此,传感器输出波形的频率的大小为: 45Hzf850Hz (1)测速齿盘装在发射光源(红外线发光二极管)与接收光源的装置(红外线接收二极管)之间,红外线发光二极管(规格 IR3401)负责发出光信号,红外线接收三极管(规格 3DU12)负责接收发出

16、的光信号,产生电信号,每转过一个齿,光的明暗变化经历了一个正弦周期,即产生了正弦脉冲电信号。图 4.1 所示为转速传感器电路,由于红外光不可见,无法用肉眼识别发光信号是否在工作,故将红外线的输出回路串接了一个普通光电二极管作为判别光源发生回路是否为通路。所选用的红外二极管 IR3401,在正向工作电流为 20mA 时,其导通电压为 1.21.5V,所选用的发光二极管的正向压降一般为 1.52.0V,电流为 10-20Ma。R的计算公式为: 12CUI计算得:Rmin=425 ;Rmin=465。设定中所选阻值为 430(RminRRmax) 。转速传感器输出电压幅度在 01.6mV 呈正弦波变

17、化,由此可见,红外线接收三极管的光信号转化为电信号的电压 Uo 很微弱(一般为 mV 量级),需要进行信号处理.第 10 页 共 43 页图 4.1 转速传感器电路图(1) 光电传感器是应用非常广泛的一种器件,有各种各样的形式,如透射式、反射式等,基本的原理就是当发射管光照射到接收管时,接收管导通,反之关断。以透射式为例,如图 4.1 所示,当不透光的物体挡住发射与接收之间的间隙时,开关管关断,否则打开。为此,可以制作一个遮光叶片如图 4.2 所示,安装在转轴上,当扇叶经过时,产生脉冲信号。当叶片数较多时,旋转一周可以获得多个脉冲信号。图 4.2 光电传感器的原理图 图 4.3 遮光叶片(2)

18、选用的传感器型号为 SZGB-3(单向)SZGB-3 型传感器特点介绍如下: 1)供单向计数器使用,测量转速和线速度.2)采用密封结构性能稳定.3)光源用红外发光管,功耗小,寿命长.第 11 页 共 43 页4) SZGB-3, 20 电源电压为 12V DC SZGB-3 型传感器主要性能介绍如下:SZGB-3.型光电转速传感器,使用时通过连轴节与被测转轴连接,当转轴旋转时,将转角位移转换成电脉冲信号,供二次仪表计数使用。1)输出脉冲数:60 脉冲(每一转)2)输出信号幅值:50r/min 时 300mV3)测速范围 :50-5000r/min4)使用时间 :可连续使用,使用中勿需加润滑油5

19、)工作环境 :温度-10 40 ,相对湿度85%无腐蚀性气体 4.2 转速信号处理电路设计转速信号处理电路包括信号放大电路、整形及三极管整形电路。由于产生的电压信号很小,所以要进行放大处理,一般要放大至少 1000 倍(60dB) ,然后在进行信号处理工作。信号放大装置选用运算放大器 TL084 作为放大电压放大元件,采用两级放大电路,每一级都采用反响比例运算电路如图 4.4.设计的电压放大倍数为 3000 倍。其中第一级放大倍数为 30,第二级放大倍数为 100.放大后电压变化范围为04.8V 。TL084 采用 12V 双电源供电,由于电源的供电电压在一定范围内有副值上的波动,形成干扰信号

20、。为起到消除干扰,实现滤波作用,故供电电源两端需接 10UF的电容接地,电容选择金属化聚丙已烯膜电容。两级运放放大所采用的供电电源均采用此接法。图 4.4 信号处理电路图第 12 页 共 43 页整形电路的主要作用是将正弦波信号转化为方波脉冲信号,正弦波信号电压的最大幅值约为 4.8V,最小幅值为 0V。整形电路设计的是一种滞回电压比较器,它具有惯性,起到抗干扰的作用。从而向输入端输入的滞回比较器。在整形电路的输入端接一个电容 C7(103) ,起到的作用是阻止其他信号的干扰,并且将放大的信号进行滤波,解耦。R11 和 R17 是防止电路短路,起到保护电路的作用。一次整形后的信号基本上为5V

21、的电平的脉冲信号,在脉冲计数时,常用的是 +5V的脉冲信号。如果直接采用-5V 的脉冲计数,会增加电路的复杂性,故一般不直接使用,而是先进行二次整形。第二次用三极管整形电路,当输出为-5V 的信号时,三极管 VT2(8050)的基-射极和电阻 R18 组成并联电路电流经过 R18.R17,三极管 VT2 处于反向偏置状态,所以,VT2 的集 -射极未接通,故处于截止状态。电源回路由 R19,三极管 VT2 的集-射极组成,采用单电源+12V 供电,由于集射极截止,处于断路状态,故输出电压 U0 为 V。当第一次整形输出为+5V 的信号时,三极管 VT2 基-射极处于正向偏置状态,有电流I 通过

22、,故此时三极管的集-射极处于通路状态。电源电流流经电阻 R19,三极管的集-射极到地端,由于集-射极导通时的电阻很小,可以忽略不计。电源电压主要在 R19上,其输出电压约为 0V。综上所述,三极管整形的电路的输入关系是:信号为 -5V 时,U0=+12V;信号为 +5V 时, U0=0V。4.3 单片机 AT89C51 介绍AT89C51 是一种带 4K 字节闪烁可编程可擦除只读存储器( FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能 CMOS8 位微处理器,俗称单片机。该器件采用 ATMEL 高密度非易失存储器制

23、造技术制造,与工业标准的MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 AT89C51 是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。图 4.5 是常用的一种单片机,型号为 AT89C51,它将计算机的功能都集成到这个芯片内部去了,就这么一个小小的芯片就能构成一台小型的电脑,因此叫做单片机。第 13 页 共 43 页图 4.5 AT89C51 芯片它有 40 个管脚,分成两排,每一排各有 20 个脚,其中左下角标有箭头的为第 1脚,然后按逆时针方向依次为第 2 脚、第 3 脚第 40 脚。在 40 个管

24、脚中,其中有 32 个脚可用于各种控制,比如控制小灯的亮与灭、控制电机的正转与反转、控制电梯的升与降等,这 32 个脚叫做单片机的“端口” ,在单片机技术中,每个端口都有一个特定的名字,比如第一脚的那个端口叫做“P1.0” 。AT89C51 单片机的功能:1主要特性:与 MCS-51 兼容 4K 字节可编程闪烁存储器 寿命:1000 写/擦循环数据保留时间:10 年全静态工作:0Hz-24Hz三级程序存储器锁定128*8 位内部 RAM32 可编程 I/O 线两个 16 位定时器/计数器5 个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 2管脚说明(图 4.7):第 14

25、页 共 43 页图 4.7 AT89C51 管脚分布VCC:供电电压,GND:接地。 P0 口:P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。当 P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高。P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出4TTL 门电流。P1 口管脚写入 1 后,被内部上拉为高,可用作输入,P1 口被外部下拉为

26、低电平时,将输出电流,这是由于内部上拉的缘故。在 FLASH 编程和校验时,P1 口作为第八位地址接收。 P2 口:P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在 FLASH 编

27、程和校验时接收高八位地址信号和控制信号。 第 15 页 共 43 页P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。 P3 口也可作为 AT89C51 的一些特殊功能口。P3 口管脚备选功能:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断 0)P3.3 /INT1(外部中断 1)P3.4 T0(记时器 0 外部输入)P3.5 T1(记时器 1 外部输入)P3

28、.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时,

29、 ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出现。EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高电平时,此间内部程序存储器。在 FLASH编程期间,此引脚也用于施加 12V 编程电源(VPP)。XTA

30、L1:反向振荡放大器的输入及内部时钟工作电路的输入。第 16 页 共 43 页XTAL2:来自反向振荡器的输出。3振荡器特性:XTAL1 和 XTAL2 分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4芯片擦除:整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持 ALE 管脚处于低电平 10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重

31、复编程以前,该操作必须被执行。此外,AT89C51 设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU 停止工作。但 RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存 RAM 的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。4.4 最小系统的设计4.4.1 复位电路(图 4.8):MCS-51 单片机复位电路是指单片机的初始化操作。单片机启运运行时,都需要先复位,其作用是使 CPU 和系统中其他部件处于一个确定的初始状态,并从这个状态开始工作。因而,复位是一个很重要的操作方式。但单片机本身是不能自动进行复位的,

32、必须配合相应的外部电路才能实现。第 17 页 共 43 页图 4.8 复位电路复位功能: 复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分- 合过程中引起的抖动而影响复位。单片机的复位是由外部的复位电路来实现的。片内复位电路是复位引脚 RST 通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的 S5P2,由复位电路采样一次。复位电路通常采用上电自动复位(如图 4.9 (a))和按钮复位(如图 4.9(b)两种方式。图 4.9 RC 复位电路第 18

33、页 共 43 页单片机复位后的状态: 单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC 0000H,这表明程序从 0000H 地址单元开始执行。单片机冷启动后,片内 RAM为随机值,运行中的复位操作不改变片内 RAM 区中的内容,21 个特殊功能寄存器复位后的状态为确定值,见表 1。 值得指出的是,记住一些特殊功能寄存器复位后的主要状态,对于了解单片机的初态,减少应用程序中的初始化部分是十分必要的。 说明:表 4-1 中符号*为随机状态:表 4-1 寄存器复位后状态表特殊功能寄存器 初始状态 特殊功能寄存器 初始状态ABPSW00H00H00HTMODTCONTH000H00H

34、00HSPDPLDPHP0P3IPIE07H00H00HFFH*00000B0*00000BTL0TH1TL1SBUFSCONPCON00H00H00H不定00H0*BPSW00H,表明选寄存器 0 组为工作寄存器组; SP07H ,表明堆栈指针指向片内 RAM 07H 字节单元,根据堆栈操作的先加后压法则,第一个被压入的内容写入到 08H 单元中;Po-P3 FFH ,表明已向各端口线写入 1,此时,各端口既可用于输入又可用于输出 。IP00000B,表明各个中断源处于低优先级; IE000000B ,表明各个中断均被关断; 系统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状

35、态下。51 单片机的复位是由 RESET 引脚来控制的,此引脚与高电平相接超过 24 个振荡第 19 页 共 43 页周期后,51 单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到RESET 引脚转为低电平后,才检查 EA 引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。51 单片机在系统复位时,将其内部的一些重要寄存器设置为特定的值,至于内部 RAM 内部的数据则不变。4.4.2 晶振电路晶振(图 4.10)是晶体振荡器的简称,在电气上它可以等效成一个电容和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐振点,以频率的高低分其中较

36、低的频率是串联谐振,较高的频率是并联谐振。AT89C51 单片机内部有一个用于构成振荡器的高增益反相放大器。引脚 XTAL1和 XTAL2 分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容 C1 和 C2 构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为 12MHz,电容应尽可能的选择陶瓷电容,电容值约为30F。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄

37、生电容,更好地保证震荡器稳定和可靠地工作。晶体振荡电路如图 3-6:晶振有一个重要的参数,那就是负载电容值,选择与负载电容值相等的并联电容,就可以得到晶振标称的谐振频率。第 20 页 共 43 页图 4.10 晶振电路4.4.3 最小系统的仿真最小系统的仿真图 4.11图 4.11 最小系统的仿真附最小系统仿真程序如下:#include sbit LED=P10; /定义 LED 接 P1.0 口/void Delay () /延时函数/unsigned char i,j;for(i=255;i0;i-)for(j=255;j0;j-);void main () while(1)LED=0;

38、/ LED 灭/第 21 页 共 43 页Delay (); /返回延时函数/LED=1; /LED 亮/Delay (); /反回延时函数/4.5 显示部分设计 (1)许多电子产品上都有跳动的数码来指示电器的工作状态,其实数码管显示的数码均是由八个发光二极管构成的。每段上加上合适的电压,该段就点亮。LED 数码有共阳和共阴两种,把这些 LED 发光二极管的正极接到一块(一般是拼成一个 8 字加一个小数点)而作为一个引脚,就叫共阳的,相反的,就叫共阴的,那么应用时这个脚就分别的接 VCC 和 GND。再把多个这样的 8 字装在一起就成了多位的数码管了。实物如图 4.12图 4.12 数码管共阳

39、型(图 4.13)就是八个发光管的正极都连在一起 ,作为一条引线.AG 段用于显示数字,字符的笔画,(dp 显示小数点) ,每一段控制 AGdp 的亮与来。 内部结构:图 4.13 共阳型 LCD共阴型(图 4.14)就是七个发光管的负极都连在一起 ,作为一条引线。AG 段第 22 页 共 43 页用于显示数字,字符的笔画,(dp 显示小数点) ,每一段控制 AGdp 的亮与来.内部结构:4.14 共阴型 LCD数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。静态显示驱动:静态驱动也称直流驱动。静态驱动

40、是指每个数码管的每一个段码都由一个单片机的 I/O 端口进行驱动,或者使用如 BCD 码二- 十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 端口多,如驱动 5 个数码管静态显示则需要 5840 根 I/O 端口来驱动,要知道一个 89S51 单片机可用的 I/O端口才 32 个呢:) ,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的 8 个显示笔划“a,b,c,d,e,f,g,dp“的同名端连在一起,另外为每个数码管的公共极 COM 增加位选通

41、控制电路,位选通由各自独立的 I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为 12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大

42、量的 I/O 端口,而且功耗更低。(2)段码表表 4-2 为 LED 段码表第 23 页 共 43 页表 4-2 LED 段码表显示字符共阴极段选码共阳极段选码显示字符 共阴极段选码共阳极段选码012343FH06H5BH4FH66HC0HF9HA4HB0H99H567896DH7DH07H7BH6FH92H82HF8H80H90H(3)动态显示仿真(图 4.15)图 4.15 动态显示仿真图动态显示程序:#include#define uchar unsigned char#define uint unsigned intuint mm=1234; /显示 1234/uchar jj;第 2

43、4 页 共 43 页uchar code table=0xc0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,; delay(uint m) uint i,j;for(i=m;i0;i-)for(j=110;j0;j-);xian_shi() uchar qian,bei,shi,ge;qian=mm/1000; bei=mm%1000/100;shi=mm%100/10;ge=mm%10;P2=0x80;P0=tableqian;delay(50);P2=0;P2=0x40;P0=tablebei;delay(50);P2=0;P2=0x20;P0

44、=tableshi;delay(50);P2=0;P2=0x10;P0=tablege;delay(50);P2=0;第 25 页 共 43 页5.系统软件设计硬件电路完成以后,进行系统软件设计。首先要分析系统对软件的要求,然后进行软件的总体的设计,包括程序的总体设计和对程序的模块化设计。按整体功能分为多个不同的模块,单独设计、编程、调试,然后将各个模块装配联调,组成完整的软件。根据设计的要求,单片机的任务是:内部进行计数,在计算出速度后显示。软件编程用 C 语言完成的,需要能掌握 C 语言,还要熟练 AT89C51 单片机。从程序流程图、编写程序、编译,到最后的调试,是很复杂的。下面作简单介

45、绍:系统软件主程序的功能是完成系统的初始化、显示程序。5.1 主程序初始化(1).定时器的初始化AT89C51 有两个定时器/计数器 T0 和 T1,每个定时器/计数器均可设置成为 16位,也可以设置成为 13 位进行定时或计数。计数器的功能是对 T0 或 T1 外来脉冲的进行计数,外部输入脉冲负跳变时,计数器进行加 1。定时功能是通过计数器的计数来实现的,每个机器周期产生 1 个计数脉冲,即每个机器周期计数器加 1,因此定时时间等于计数个数乘以机器周期。定时器工作时,每接收到 1 个计数脉冲(或机器周期)则在设定的初值基础上自动加 1,当所有位都位 1 时,再加 1 就会产生溢出,将向 CP

46、U 提出定时器溢出中断身请。当定时器采用不同的工作方式和设置不同的初值时,产生溢出中断的定时值和计数值将不同,从而可以适应不同的定时或计数控制。定时器有 4 种工作方式:方式 0、方式 2、方式 2 和方式 3,在此对工作方式不做具体介绍。工作方式寄存器 TMOD 的设定:GATE C/T M1- M0 GATE C/T M1 M0TMOD 各位的含义如下:GATE:门控位,用于控制定时/计数器的启动是否受外部中断请求信号的影响。C/T:定时或计数方式选择位,当 C/T=1 时工作于计数方式;当 C/T=0 时工作于定时方式。第 26 页 共 43 页M1、M0 为工作方式选择位 ,用于对 T

47、0 的四种工作方式,T1 的三种工作方式进行选择,选择情况如下表 5-1:M1M0=00 为方式 0;M1M0=01 为方式 1; 表 5-1 M1、M0 为工作方式选择位MO M1 工作方式 方式说明00110101012313 位定时/计数器16 位定时/计数器8 位自动重置定时/计数器两个 8 位定时 /计数器(只有 T0 有)(2)中断允许控制MCS-51 单片机中没有专门的开中断和关中断指令,对各个中断源的允许和屏蔽是由内部的中断允许寄存器 IE 的各位来控制的。中断允许寄存器 IE 的字节地址为A8H,可以进行位寻址. 表 5-2 中断位寻址表IE D7 D6 D5 D4 D3 D

48、2 D1 D0(A8H) EA ET2 ES ET1 EX1 ET0 EX0EA:中断允许总控位。EA=0 ,屏蔽所有的中断请求;EA=1 ,开放中断。 ET2:定时器/计数器 T2 的溢出中断允许位 ES:串行口中断允许位。 ET1:定时器/计数器 T1 的溢出中断允许位。 EX1 :外部中断 INT1 的中断允许位。ET0:定时器/计数器 T0 的溢出中断允许位。 EX0 :外部中断 INT0 的中断允许位。 第 27 页 共 43 页5.2 主程序流程图程序流程图主程序流程图 5.1图 5.1 流程图显示子程序流程图 5.2开始显示缓存初始化LED 显示初始化数码显示图 5.2 显示子程序流程图定时计数子程序流程图 5.3显示开始初始化定时器计时器刷新数码管延时 2ms第 28 页 共 43 页开定时器 开计数器定时 0.5s 计数 0.5s读出计数器值并清零计数器定时重新装初始值并启动定时器开始图 5.3 定时计数子程序流程图第 29 页 共 43 页总 结采用单片机技术来实现转速的测量,可以

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报