《采用光电编码器来实现位移测量及其仿真.doc》由会员分享,可在线阅读,更多相关《采用光电编码器来实现位移测量及其仿真.doc(42页珍藏版)》请在三一办公上搜索。
1、摘 要在控制领域中,经常需要进行各种位移量的测量。在实际的工业位置控制领域中,为了提高控制精度,准确地对控制对象进行检测是十分重要的。传统的机械测量位移装置已远远不能满足现代生产的需要,而数字式传感器光电编码器,能将角位移量转换为与之对应的电脉冲输出, 主要用于机械位置和旋转速度的检测,具有精度高,体积小等特点,因此本设计决定采用光电编码器进行位移检测。 本设计为采用光电编码器来实现位移测量及其仿真,实现测量来自外部的不同的位移值及显示。具体应用AT89C51单片机为核心,光电编码器进行位移测量,同时以LCD液晶显示模块显示。本设计采用的光电编码器输出电压为5V,输出信号经四倍频电路处理后送入
2、单片机进行计数处理,最后送入LCD模块显示。本文从位移测量原理入手,详细阐述了位移测量系统的工作过程,以及硬件电路的设计、显示效果。本文吸收了硬件软件化的思想,实现了题目要求的功能。关键词:位移测量,光电编码器,单片机,LCD显示模块AbstractIn the control field, a variety of displacement measurements often need to be carried out. In actual industry position control domain, to increase the control precision, carri
3、es on the examination to the controlled member is accurately very important.The traditional machinery survey displacement installs has not been able to satisfy the modern production by far the need, but the digital sensor electro-optic encoder, can transform the angular displacement into with it cor
4、respondence electricity pulse output, mainly uses in the mechanical position and the velocity of whirl examination, has the precision to be high, volume small and so on characteristics, therefore this design decided that uses the electro-optical encoder to carry on the displacement to examine.This d
5、esign to use the electro-optical encoder to realize the displacement survey and the simulation, realizes the survey from the exterior different displacement value and the demonstration. Makes concrete using at89C51 monolithic integrated circuit is the core, the electro-optical encoder carries on the
6、 displacement to survey, simultaneously by LCD liquid crystal display module demonstration. This design uses the electro-optical encoder output voltage is 5V, the output signal after four doubling circuit processing sends in the monolithic integrated circuit to carry on counting processing, finally
7、sends in the LCD module demonstration. In this paper, detailed working process of displacement measurement system is started with principle of displacement measurement, and hardware circuit design and display. This paper has absorbed the idea of hardware and software to achieve with the subject requ
8、ired functionality. Key words: The displacement surveys, electro-optical encoder, microcontroller, LCD display module目 录第一章 绪论1.1位移测量及其传感器简介1.2国内外位移测量技术简介第二章 原理说明及方案选择2.1 位移测量理论的简要介绍2.2 方案选择及原理2.2.1鉴相原理2.2.2用软件实现脉冲的鉴相和计数2.2.3用硬件实现脉冲的鉴相和计数2.2.4用单片机内部计数器实现可逆计数2.3 位移测量参数及电路参数分析2.3.1MCS-51的定时器/计数器简介2.3.
9、2定时器模式选择位第三章 系统电路的设计3.1 硬件电路的设计3.1.1 单片机的选择3.1.2 AT89C51的介绍3.1.3 光电编码器的选择3.1.4 1XP8001-1简介3.2 软件的设计第四章 显示部分4.1 LED显示器4.2 LCD显示器4.2.1 LCD的分类及特点4.2.1笔段式LCD液晶显示器的驱动4.2.2 LCD显示模块LCDM(LIQUID CRYSTAL DISPLAY MODULE)4.3 LCD显示器的驱动接口第五章 仿真实现5.1 PROTEUS仿真软件简介5.2 KEIL与PROYEUS的联合使用结论谢辞参考文献附录一 系统电路原理图附录二 程序清单附录三
10、 仿真电路图第一章 绪论1.1位移测量及其传感器简介位移是线位移和角位移的统称。位移测量在机械工程中应用很广,在机械工程中不仅经常要求精确地测量零部件的位移和位置,而且力、扭矩、速度、加速度、流量等许多参数的测量,也是以位移测量为基础的。 位移是向量,除了确定其大小之外,还应确定其方向。一般情况下,应使测量方向与位移方向重合,这样才能真实地测量出位移量的大小。如测量方向和位移方向不重合,则测量结果仅是该位移在测量方向的分量。 位移测量时,应当根据不同的测量对象,选择适当的测量点、测量方向和测量系统。位移测量系统是由位移传感器、相应的测量放大电路和终端显示装置组成。位移传感器的选择恰当与否,对测
11、量精度影响很大,必须特别注意。 针对位移测量的应用场合,可采用不同用途的位移传感器。表1.1-1中列出了较常见的位移传感器的主要特点和使用性能。表1.1-1 常用位移传感器一览表 型式测量范围精确度直线性特点电阻式滑线式线位移1300mm0.1%0.1%分辨力较好,可静态或动态测量。机械结构不牢固角位移03600.1%0.1%变阻器式线位移11000mm0.5%0.5%结构牢固,寿命长,但分辨力差,电噪声大角位移060r0.5%0.5%应变式非粘贴的0.15%应变0.1%1%不牢固粘贴的0.3%应变2%3%使用方便,需温度补偿半导体的0.25%应变2%3%满刻度 20% 输出幅值大,温度灵敏性
12、高电感式自感式变气隙型0.2mm1%3%只宜用于微小位移测量螺管型1.52mm测量范围较前者宽,使用方便可靠,动态性能较差特大型3002000mm0.15% 1%差动变压器0.0875mm0.50.5%分辨力好,受到磁场干扰时需屏蔽涡电流式2.5250mm 1% 3%3%分辨力好,受被测物体材料、形状、加工质量影响同步机3600.170.5%可在1200r/min转速工作,坚固,对温度和湿度不敏感微动同步器101%0.05%非线性误差与变压比和测量范围有关旋转变压器600.1%电容式变面积10-3103mm0.005%1%受介电常数因环境温度、湿度而变化的影响变间距10-310mm0.1%分辨
13、力很好,但测量范围很小,只能在小范围内近似地保存线性霍尔元件1.5mm0.5%结构简单,动态特性好感应同步器直线式10-3104mm2.5m 250mm模拟和数字混合测量系统,数字显示(直线式感应同步器的分辨力可达1m)旋转式0o3600.5计量光栅长光栅10-3103mm3m 1m同上(长光栅分辨力可达1m)圆光栅0o3600.5”磁尺长磁尺10-3104mm5m 1m测量时工作速度可达12m/min圆磁尺0o3601”角度编码器接触式0o36010-6rad分辨力好,可靠性高光电式0o36010-6rad本设计使用了其中可直接转换成数字量的角度编码器中的光电编码器。光电编码器是一种高精度的
14、角位移传感器。它在角度测量、位移测量和速度测量中有着广泛的应用。因其具有直接输出数字量、响应快、精度高、抗干扰能力强、分辨率高、输出稳定等特点,其应用范围不仅仅局限于角位移,角速度测量等场合,在直线位移,尤其是大位移测量领域也越来越广泛的应用。本课题即是用单片机与光电编码器来实现大位移的测量。1.2 国内外位移测量技术简介第九届CIMT2005中国国际机床展览会上展示了当今世界位移测量技术最新的发展和最新型的位移传感器,并将数控技术和数控机床推向更高精度、更高速度、更高可靠、更高效率的发展,也将数显技术和数显量具推向一个新的高度。其中最新发展主要体现在三个方面:(1)绝对式光栅尺在控制系统中逐
15、步取代现在通用的增量式光栅尺,并广泛应用于反馈控制系统和数控机床。(2)单场扫描光栅尺将逐步取代现在通用的四场扫描光栅尺。(3)目前普遍采用的增量式容栅测量系统是不能防水的,在不改变数显卡尺的栅式结构条件下采用变电感的测量系统,就能防水,容栅的防护等级也提高了。另外在增量式码道旁边再增加绝对式码道,采用绝对式编码技术通电后不需要对零,在点位测量时也不会产生超速错误。今后普及型的量具仍会采用容栅测量系统,而防水型的都会采用电磁感应测量系统。现代位移测量系统普遍采用光栅、磁栅、感应同步器、球栅和容栅等栅式测量系统,都是应用了重复周期的结构设计,位移的测量都是采用增量测量方法,也就是在确定初始点后要
16、用读出从初始点到所在位置的增量数(步距)来确定位置。因此设备在开机后每个轴需要移动一个位置寻找参考标记。近几年来为了解决开机后机床各个轴在不移动的情况下,光栅尺就能够提供当前绝对位置的数据,德国HEIDENHAIN、日本三丰(MITUYOYO)、西班牙FAGOR等公司都开发了绝对式光栅尺,并成功用于数控机床,配备了绝对式光栅尺的机床或生产线在重新开机后立刻重新获得各个轴的绝对位置以及刀具的空间指向,因此可以立刻从中断处开始继续原来的加工程序,这就大大地提高了数控机床的有效加工时间。绝对式测量是现代测量技术发展的趋势,在位移移传感器上会得到普遍的应用,日本三丰公司已将增量式容栅数显卡尺用新一代绝
17、对式容栅数显卡尺替代,新推出的防水数显卡尺也采用绝对式电磁感应测量系统。日本KF-G公司正在研发绝对式磁栅尺,即将推出新产品。英国-ALCMM公司也在推出绝对式球栅传感器。总之绝对式直线传感器有显著优点,是当前发展起来的新一代产品,将使数控机床反馈控制系统提高到一个新的高度。本设计使用的是光栅式光电轴角编码器。光栅式光电编码器正向着高分辨力的方向发展。如日本尼康公司生产的2HR32400 轴角编码器, 每转可输出1296万个脉冲(0.1),可谓日本的最高分辨力。我国在光电轴角编码器的开发方面上也已经取得了长足的进展,1985年航天部一院计量站研制的精密数显转台,分辨力0.01;1995年中科院
18、长春光机所和中国计量科学研究院联合研制出的角度基准,分辨力0.001,精度P+V=0.05(误差修正后);成都光电所研制的JC21精密测角仪的增量式光电轴角编码器分辨力达到了0.02,测角精度R0.04。目前市场上有销售的光电编码器按现有产品的主要构成元件分类,可分为晶体管式、集成电路式和单片机式。晶体管式所采用的元件主要是晶体管,有的晶体管式转速测量仪设有记忆电路,其数码管无闪烁现象,显示效果较好,而且测量速度较高。顾名思义集成电路式转速测量仪,所采用的元件是集成电路元件。由于集成电路具有重量轻、体积小、功耗小等优点,而且集成电路元件内设有显示电路,这使得转速测量仪实现小型化。单片机的出现使
19、得这种仪表的设计变得更加灵活。 第二章 原理说明及方案选择2.1 位移测量理论的简要介绍位移测量的应用系统在工业生产、科技教育、民用电器等各领域的应用极为广泛,往往成为某一产品或控制系统的核心部分,其各种参数在不同的应用中有其侧重,但转速测量系统作为普遍的应用在国民经济发展中,有重要的意义。在位移控制系统中,为了提高控制精度,准确测量控制对象的位移是十分重要的。目前,检测位移的方法有两种:(1)使用位置传感器,测量到的位移量由变送器经A/ D 转换成数字量,送至系统进行进一步处理。此方法虽然检测精度高,但在多路、长距离位置监控系统中,由于其成本昂贵、安装困难,因此并不适用。(2)使用光电编码器
20、。光电编码器是高精度控制系统常用的位移检测传感器。当控制对象发生位置变化时,光电编码器便会发出A、B 两路相位差90的数字脉冲信号。正转时A 超前B 为90,反转时B 超前A 为90。脉冲的个数与位移量成比例关系,因此,通过对脉冲计数就能计算出相应的位移。该方法不仅使用方便、测量准确,而且成本较低,在电力拖动系统中经常采用这种位置测量方法。2.2 方案选择及原理使用光电编码器测量位移,准确无误的计数起着决定性作用。由于在位置控制系统中,电机既可以正转,又可以反转,所以要求计数器既能实现加计数,又能实现减计数。相应的计数方法可以用软件实现,也可以用硬件实现。使用软件方式对光电编码器的脉冲进行方向
21、判别和计数降低了系统控制的实时性,尤其当使用光电编码器的数量较多时,且其可靠性也不及硬件电路。但其外围电路比较简单,所以在计数频率不高的情况下,使用软件计数仍有一定的优势。对编码器中输出的两路脉冲进行计数主要分两个步骤:首先要对编码器输出的两路脉冲进行鉴相,即判别电机是正转还是反转;其次是进行加减计数,正转时加计数,反转时减计数。2.2.1鉴相原理脉冲鉴相的方法比较多,既可以用软件实现,也可以用一个D 触发器实现。图1 是编码器正反转时输出脉冲的相位关系。图2.2-1 编码器输出波形由图1 中编码器输出波形可以看出,编码器正转时A 相超前B 相90,在A 相脉冲的下降沿处,B 相为高电平;而在
22、编码器反转时,A 相滞后B 相90,在A 相脉冲的下降沿处,B 相输出为低电平。这样,编码器旋转时通过判断B 相电平的高低就可以判断编码器的旋转方向。2.2.2用软件实现脉冲的鉴相和计数编码器输出的A 向脉冲接到单片机的外部中断INT0 ,B 向脉冲接到I/ O 端口P1. 0 ,如图2 所示。当系统工作时,首先要把INT0 设置成下降沿触发,并开相应中断。当有效脉冲触发中断时,执行中断处理程序,判别B 脉冲是高电平还是低电平。若是高电平,则编码器正转,加1 计数;若是低电平,则编码器反转,减1计数。图2是软件方法的计数与判向电路。图2.2-2 软件方法的计数与判向电路2.2.3用硬件实现脉冲
23、的鉴相和计数硬件计数在执行速度上有软件计数不可比拟的优势,通常采用多个可预置4 位双时钟加减计数器74LS193 级联组成的加减计数电路。如图3 所示,P0、P1、P2、P3 为计数器的4 位预置数据端,与数据输入锁存器相接;QA、QB、QC、QD 为计数器的4 位数据输出端,与数据输出缓冲器相接;MR为清零端,与上电清零脉冲相接;PL 为预置允许端,由译码控制电路触发;CU 为加脉冲输入端,CD 为减脉冲输入端;TCU 为进位输出端;TCD 为借位输出端。图2.2-3 加减计数芯片74LS193当CU 和CD 中一个输入脉冲时,另一个必须处于高电平,才能进行计数工作。而从编码器直接输出的A、
24、B 两路脉冲不符合要求,不能直接接到计数器的输入端,但可以利用这两路脉冲之间的相位关系对其进行鉴相后再计数。图4 给出了光电编码器实际使用的鉴相与双向计数电路,鉴相电路用1 个D 触发器和2 个与非门组成,计数电路用3 片74LS193 组成。当光电编码器顺时针旋转时, A 相超前B 相90,D 触发器输出Q(W1) 为高电平,Q(W2) 为低电平,与非门N1 打开, 计数脉冲通过(W3) , 送至双向计数器74LS193 的加脉冲输入端CU ,进行加法计数;此时,与非门N2 关闭,其输出为高电平(W4) 。当光电编码器逆时针旋转时, A 相比B 相延迟90,D 触发器输出Q(W1) 为低电平
25、,Q(W2) 为高电平,与非门N1 关闭,其输出为高电平(W3) ;此时,与非门N2 打开,计数脉冲通过(W4) ,送至双向计数器74LS193 的减脉冲输入端CD ,进行减法计数。图4是光电编码器输出脉冲的鉴相及其计数。 图2.2-4 光电编码器输出脉冲的鉴相及其计数2.2.4用单片机内部计数器实现可逆计数 对以上两种计数方法进行分析可知,用纯软件计数虽然电路简单,但是计数速度慢,难以满足实时性要求,而且容易出错,用外接加减计数芯片的方法,虽然速度快,但硬件电路复杂,由图4 可以看出,要制作一个12 位计数器需要5 个外围芯片,成本较高。我们可以用单片机内部的计数器来实现加减计数。单片机80
26、51 片内有2 个16 位定时器(定时器0 和定时器1) ,单片机8052 还有一个定时器(定时器2) ,这3 个定时器都可以作为计数器使用。但单片机8051 内部的计数器是加1 计数器,所以不能直接应用,必须经过适当的软件编程来实现其“减”计数功能。硬件电路如图5所示。图2.2-5 单片机内部计数器加减计数的硬件结构我们可以把经过D触发器之后的脉冲,即方向控制脉冲(DIR)接到单片机的外部中断INT0端,同时经过反向器后再接到另一个外部中断INT1,并且把计数脉冲A接到单片机的片内计数器T0端即可,相对外部计数芯片来说,使用这种方法电路相对要简单的多。系统工作时,先要把两个中断设置成下降沿触
27、发,并打开相应的中断。当方向判别脉冲(DIR)由低高跳变时,INT1中断,执行相应的中断程序,进行加计数;而当方向判别脉冲由高低跳变时,INT0中断,执行相应的中断程序,进行“减”计数(实际是重新复值,进行加计数)。下面是软件编程思路(在C语言环境下来实现计数功能):#includeint data k=1;void service_int0() interrupt 0 using 0 k- ;/*标志位减1*/TR0=0 ;/*停止计数*/TH0= -TH0 ;TL0= -TL0 ;/*把计数器重新复值,此时相当于减计数*/TR0=1 ;/*开始计数*/void service_int1()
28、 interrupt 2 using 1 k+ ;/*标志位加1*/TR0=0 ;/*停止计数*/TH0= -TH0 ;TL0= -TL0 ;/*把计数器重新复值,此时相当于加计数*/TR0=1 ;/*开始计数*/void timer0(void) interrup 1 using2 if(k=0)/*反向计数满*/else if(k=1)/*计数为0*/else/*正向计数满*/void main(void)TCON=0X05 ;/*设置下降沿中断*/TMOD=0X05 ;/*T0为16位计数方式*/IE=0X87 ;/*开中断*/TH0=0 ;TL0=0 ;/*预置初值*/此方法采用中断的
29、形式进行计数,硬件电路比较简单,程序也不复杂,执行速度较快。以上分别介绍了利用软件、外接计数芯片及单片机内部计数器实现对编码器输出脉冲进行计数的方法。利用软件计数,硬件电路简单,但占用了较多的CPU 资源,执行速度较慢。利用外接计数芯片的方法计数,计数速度较快,但要用较多的外围芯片,硬件电路复杂。利用单片机内部计数器实现加减计数,在编码器旋转方向不频繁改变的情况下,计数速度很快,而且外围电路简单,编程也不复杂,只是占用了2 个外部中断和1 个内部计数器。综上所述选用第三种计数方法,即利用单片机内部计数器实现可逆计数。2.3 位移测量参数及电路参数分析在本设计的仿真中,光电编码器产生的A,B相方
30、波用PROTUES中的信号源加不同的起始时间来模拟。一个用原始的,还有一个用延时1/4周期。方向时将两个信号调换就行了。2.3.1MCS-51的定时器/计数器简介2个16位的定时/计数器,有多种工作方式。定时/计数器工作在定时模式时,计数脉冲信号来自单片机的内部,计数速率是晶振频率的1/12,当计数器启动后,每个机器周期计数器自动加1。 定时/计数器工作在计数模式时,计数器对外部脉冲进行计数,计数器计P3.4(T0脚)P3.5(T1脚)负跳变次数。每产生一次负跳变,计数器自动加1。如图2.3-1及表2.3-1图2.3-1 TMOD寄存器用于定时/计数的操作方式及工作模式指令格式表2.3-1操作
31、方式选择位说 明0 0013位定时器/计数器,由TL0低五位和TH0高八位组成工作方式0 1116位定时器/计数器,由TL0低八位和TH0高八位组成1 0 28位定时器/计数器,由TL0低八位组成1 1 3TL0低八位和TH0高八位分别位8位定时器/计数器2.3.2定时器模式选择位C/T0,定时器模式,每一个机器周期计数器自动加1。C/T1,计数器模式,在单片机T0引脚上每发生一次负跳变,计数器自动加1。GATE0,定时/计数器工作不受外部控制。GATE1,定时/计数器T0的起停受INT0引脚的控制。1.计算计数初始值 因为系统的晶振频率为fosc=12MHz,则机器周期Tm=12/fosc=
32、1s。设计数初始值为X:X=216-td/Tm=216-1105/1=15535则(TH0)=00111100B3CH,(TL0)=10101111B=AFH2.设置工作方式方式0:M1M0=01; 定时器模式:C/T=1;定时/计数器启动不受外部控制: GATE=0;因此,(TMOD)=05H。关于测速电路的参数,本次设计采用了如下方案:AT89C51单片机属于CMOS型8位单片机,其在片内的振荡器电路由晶体控制的单极线性反相器组成,同HMOS型所用方法一样,要求用晶体控制的感性阻抗方波振荡器,但也存在一些差别,其一为89C51可在软件的控制下关闭振荡器,其二为89C51的内部时钟电路由XT
33、AL2引脚上的信号来驱动。本次设计中的振荡器可用晶体作为感性电抗与外部电容组成并联共振槽路。晶体的特性与电容值的大小(C1、C2)并不严格,高质量的晶体对任何频率都可取用30pF的电容,对于廉价应用中,可采用陶瓷共振器,这时C1、C2一般取47pF;这里选取频率12MHZ晶振,电容C1、C2为30pF。看门狗电路电路参见图2.3-2图2.3-2 MAX813L看门狗电路图中,电阻R1和R2分压产生1.25V电源门限值。当此脚的电压低于1.25V时,即电源电压低于额定值时,PFO将产生一个脉冲信号,可以用于向CPU发出中断申请,使CPU完成应急处理。此功能可完成电源电压的监测。P1.0喂狗信号,
34、在软件的编制中通过对P1.0的位操作向MAX813L的看门狗输入端输入一个负脉冲。如果程序出现“跑飞”现象,程序将不能正常运行,这个定时发出的脉冲也得不到保障。当单片机超过1.6秒未向MAX813L的看门狗输入端发脉冲信号,MAX813L内部的定时器将会强制将WDO拉到低电平,这个低电平通过MR产生复位信号。单片机复位后从初始状态开始运行,从而保证系统的可靠性,起到了看门狗的作用。此电路同时兼有上电复位和按键复位功能。第三章 系统电路的设计3.1 硬件电路的设计位移测量设计的整个系统框图如下:光电编码器四倍频电路CPUAT89C51看门狗电路数码显示A相B相图 3.1-1 系统硬件组成图在上面
35、的系统硬件组成图中A相、B相都是光电编码器产生的,这两个信号的前沿和后沿都对应着光电码盘的1/4节距的信息。因此在实际中为了提高光电编码器的定位精度通常采用四倍频方法进行处理。本系统设计了一种四倍频电路,其原理图如图3.1-2所示,相应的时序图如图3.1-2所示。由时序图3.1-2可以看出,A和B信号经四倍频电路后,输出信号为XA,XB两个信号,在同一时刻,XA,XB只有一个是脉冲信号,另一个是高电平。因此,将XA,XB两个信号连接到单片机相应的端口上,对这两个信号分别进行判断、计数和计算,就可以得出相应的电机转向和位移量。图 3.1-2 四倍频电路原理图3.1-3 四倍频电路时序图3.1.1
36、 单片机的选择随着大规模集成电路(LSI)制造技术的飞速发展,单片机也随之迅猛发展,其发展历史大致分为三个阶段:第一阶段(1976年1978年):初级单片微处理器阶段。以Intel公司的MCS-48为代表。此系列的单片机具有8位CPU,并行I/O端口,8位时序同步计数器,寻址范围不大于4KB,但是没有串行口。第二阶段(1978年现在):高性能单片机微处理器阶段,如Intel公司MCS-5,Motorola公司的6801和Zilog公司的Z8等,该类型单片机具有串行I/O端口,有多种中断处理系统,16位时序同步计数器,RAM,ROM容量加大,寻址范围可达64KB,有的芯片甚至还有A/D转换接口。
37、由于该系列单片机应用领域极其广泛,各公司正大力改进其结构与性能。第三阶段(1982年现在):8位单片机,经处理器改良型及16位单片机微处理器阶段。在本次设计中,有多种型号的单片机可供选择,具体型号如89C2051,89C51,89C52,80C51,89S52单片机都可以较好地完成本次设计的要求,因此设计者选用了近来应用较为广泛的89C51型单片机。一个单片机应用系统的硬件电路设计应包含有两个部分内容:第一是系统扩展,即当单片机内部的功能单元,如ROM、RAM、I/O 口、定时/计数器、中断系统等容量不能满足应用系统要求时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。第二是系统配置,即
38、按照系统功能要求配置外围设备,如键盘、显示器、打印机、D/A、A/D转换器等,并设计相应的接口电路。因此,系统的扩展和配置应遵循下列原则:1.尽可能选择典型电路,并符合单片机的常规用法。2.系统的扩展与外围设备配置应满足系统功能的要求,并留有适当的余量,以便进行二次开发。3.硬件结构应与应用软件方案统一考虑,软件能实现的硬件功能尽可能用软件来实现,但需注意的是软件实现占用CPU的时间,而且,响应时间比硬件长。4.单片机外接电路较多时,应考虑其驱动能力,减少芯片功耗,降低总线负载。3.1.2 AT89C51介绍 AT89C51是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含4
39、k bytes的可反复擦写的只读程序存储器(PEROM)和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C51提供了高性价比的解决方案。 AT89C51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flas
40、h存储器可有效地降低开发成本。此外,89C51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电模式。89C51的芯片引脚图如下所示:主要特性:与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定1288位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 图 3.1-4 AT89C51引脚图管脚说明:Vcc:电源电压GND:地P0口:P0口是一组8位漏极开路型双向I0口,也即地址数据总线复用口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“l”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在F1ash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电