红外光学应用.doc_第1页
红外光学应用.doc_第2页
红外光学应用.doc_第3页
红外光学应用.doc_第4页
红外光学应用.doc_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

红外光与单片机系统的传输与控制设计 摘 要 本文介绍了以AT89S52单片机为核心部件开发的光传感器实验系统。该系统能实现对光照度的测量以及控制,并能与PC机进行串行通信。本实验系统主要包括光源、测量放大电路、A/D转换、单片机、LED显示、D/A转换、串行通信接口、软件等部分。主要功能包括:通过LED显示器显示测得的光照度,并能通过D/A转换来控制光源(发光二极管)的发光强度;可实现单片机与PC机的串行通信,通过PC机对从单片机采集的数据进行处理并控制发光二极管的发光强度;单片机也可自动控制发光二极管的发光强度,使光敏二极管的光照度达到设定值。本文首先介绍了系统的总体组成,然后分硬件和软件两部分进行阐述,最后对调试过程进行介绍。硬件部分先描述了整体结构和各模块的相互关系,然后分模块进行具体分析,对于部分元器件做了简要的介绍。软件部分采用模块化设计。在主程序模块下分成若干彼此独立的分模块,对各个分模块进行设计,最后由各分模块构成系统软件。本系统中,单片机的程序设计采用汇编语言,PC机上的通信软件采用Visual Basic 6.0设计。ABSTRACT This paper introduces the experimental system of optical sensor which developed by using SCM AT89S52 as a hard core. This system is able to measure and control the illumination intensity, and communicate with Personal Computer by COM port. This system includes light source, measure and enlarge electrocircuit, A/D exchange, SCM, LED display, D/A exchange, COM port, software and so on. The main function includes: displaying illuminating value of photosensitive diode by using LED Display, controlling illumination intensity of light source (LBD) by using D/A exchange; implementing serial communication between SCM and PC, processing the data gathered from SCM by PC and controlling illumination intensity of LBD, the SCM in this system can also auto-controls illumination intensity of LBD, achieving the illuminating value of photosensitive diode to the set value. In this paper, firstly, the whole components of this system are introduced, then the hardware and the software are explained respectively and the debug process is introduced briefly. The hardware part depicts the relation between the whole structure and modules at first, and then introduces each module concretely, including brief presentation of some components. The software part is designed on modules which could be divided into sub modules in the main program. Those modules are designed firstly, and then, the software system is constructed by those modules. In this system, assemble language is used for programming SCM, and Visual Basic 6.0 is used for programming communication software on PCKeywords: Optical Sensor; Illumination intensity; SCM; Serial communication 华工继续教育学院2005届电信毕业设计 第38页目 录1 绪论11.1 开发背景11.2 开发动机及目的11.3 研究手段及可行性分析22 系统组成及工作原理33 硬件设计43.1光源43.1.1光源选取43.1.2光源电路53.2测量放大电路53.2.1光传感器选取53.2.2集成运算放大器选取63.2.3测量放大电路63.3 A/D转换83.3.1 A/D转换芯片选取83.3.2 AD转换电路93.4单片机103.4.1单片机选取103.4.2 AT89S52单片机简介103.4.3 AT89S52单片机电路123.5 LED显示133.5.1 LED显示器选取133.5.2 驱动器选取143.5.3 LED显示电路153.6 D/A转换153.6.1 D/A转换芯片选取153.6.2 DAC0832简介163.6.3 D/A转换电路173.7 串行通信接口183.7.1 AT89S52单片机的串行I/O口183.7.2 RS-232C标准203.7.3 MAX232203.7.4 串行通信接口电路213.8 其他部分电路223.8.1 外部中断控制按键223.8.2 指示灯223.8.3系统电源223.9 自制AT89S52单片机编程器223.10 系统PCB设计234 软件部分264.1 AT89S52单片机程序264.1.1延时模块264.1.2 A/D转换模块264.1.3 二进制码向BCD码转换模块264.1.4 十进制乘法模块274.1.5 LED显示模块274.1.6 D/A转换模块274.1.7 外部中断响应模块274.1.8 控制模块284.1.9 串行通信模块284.2 PC机通信软件294.2.1 主窗口294.2.2 参数设置窗口314.2.3 光照度变化曲线窗口314.2.4 采集数据存储窗口324.2.5 自动控制窗口334.2.6 动画演示窗口335 系统调试355.1 系统主要调试设备355.1.1 硬件设备355.1.2 软件环境355.2 系统主要调试过程355.2.1 单片机程序调试355.2.2 测量放大电路的调试355.2.3 LED显示电路的调试355.2.4 A/D转换电路的调试365.2.5 串行通信的调试365.2.6 D/A转换的调试365.2.7 其它部分的调试365.3 调试总结36结论381 绪论1.1 开发背景 现代的计算机技术和通信技术由于超大规模集成电路的飞速发展,而已经充分发达后,不仅对传感器的精度、可靠性、响应速度、获取的信息量要求越来越高,还要求其成本低廉且使用方便。显然传统传感器因功能、特性、体积、成本等已难以满足而逐渐被淘汰。世界许多发达国家都在加快对传感器新技术的研究与开发,并且都已取得极大的突破1。 为了适应当前传感器技术的快速发展,国内许多高校的相关专业都相继开设了传感器课程。目前我院传感器课程的实验设备还相对短缺,学生在传感器课程学习的过程中,只是掌握了传感器的相应理论,很少有机会去通过实践更深入的学习传感器,以至于有的同学在学习完传感器课程后还不知道传感器到底是什么样子的。1.2 开发动机及目的本系统的设计目的主要是为传感器课程中的光传感器实验提供一个多功能的实验系统,通过实验达到对光传感器有一个更深入理解的目的。本实验系统要具备的功能主要包括基本功能和扩展功能两大部分。基本功能包括: (1)具有一个可调节的光源为光传感器实验创造可变的实验环境。 (2)利用光传感器采集光照度值,将其转换成相应的电压值并经放大后提交A/D转换器进行A/D转换。 (3)将A/D转换后的数字量通过单片机处理后得到光照度值,并通过LED显示器显示测得的光照度值。扩展功能包括: (1)单片机将采集到的A/D转换后的数字量通过串行通信提交给PC机,PC机对该值进行处理后得到相应的光照度值并显示出来。 (2)PC机上的通信软件能将每次采集的光照度值进行存储,同时可以绘制光照度变化曲线图。 (3)通过D/A转换来控制光源,从而改变实验环境。包括通过电路板上的相应按键和PC机上的通信软件两种方式来实现。 (4)可以在PC机上的通信软件中设定希望的光照度值,由单片机进行自动控制,使光照度达到设定值。 (5)PC机上的通信软件带有一个演示动画,用于演示光传感器实验的基本过程。1.3 研究手段及可行性分析本实验系统的开发所需要的专业知识比较多,工作量也较大,所需知识主要包括: (1)了解计算机控制技术。 (2)熟悉模拟电子技术和数字电子技术。 (3)熟悉单片机的应用,包括汇编语言的编写。 (4)熟悉光传感器的原理与应用。 (5)掌握相关的原理图设计和PCB设计工具。 (6)掌握一定的焊接技术。 (7)熟悉一种Windows软件开发工具。 (8)熟悉数字系统设计方法等等。 本实验系统主要利用Protel DXP进行原理图设计和PCB图设计,使用EWB对部分电路进行仿真,用Keil uVision2进行单片机编程和仿真,用Visual Basic开发PC机上的通信软件,最后购买相应的元器件进行电路板焊接,并进行系统调试。本实验系统在理论上是可行的,目前光传感器以及单片机的技术应用在国内外都已比较成熟,这方面知识也较容易查阅,电路板所需元器件采购方便,成本较低,最终应该能得到成型系统。2 系统组成及工作原理根据本实验系统要具备的功能进行系统的总体设计,可以将本系统分成多个模块来实现。本实验系统主要由光源、测量放大电路、A/D转换、单片机、LED显示、D/A转换、串行通信接口、软件等部分构成,其系统原理框图如图2.1所示。当用电位器来控制光源时,首先由测量放大电路通过光传感器将其感受到的光照度值转换成电压值传送给放大电路,经过放大电路放大之后进行A/D转换,将A/D转换后的数字量送到单片机,单片机对A/D转换后的值进行处理得到光照度值,最后通过LED显示器进行显示。单片机也可将A/D转换后的值通过串行通信提交给PC机,利用PC机上的通信软件对该值进行处理得到光照度值并对光照度值进行处理,包括显示光照度值、存储光照度值、绘制光照度变化曲线等。当用D/A转换来控制光源时,可以通过电路板上的按键或PC机上的通信软件来控制光源的强弱。另外,可以在PC机上的通信软件中设定希望的光照度值,由单片机进行自动控制光源,使光照度达到设定值。AT89S52光源测量放大电路A/D转换LED显示D/A转换串行通信接口PC机图2.1 光传感器实验系统框图3 硬件设计 本实验系统的原理图设计是在Protel DXP中完成的,整体电路由多个模块构成,主要包括光源、测量放大电路、A/D转换、单片机、LED显示、D/A转换、串行通信接口等。原理图的绘制过程中,有一些元器件的原理图是Protel DXP中没有的,需要自己创建。系统整体原理图如图3.1所示,下面就各个电路模块分别进行介绍。图3.1系统整体电路原理图3.1光源3.1.1光源选取本系统采用的光源是发光波长在900nm左右的砷化镓红外发光二极管。发光二极管的管芯是一个PN结,并具有单向导电性。PN结加上正向电压时,电子由N区扩散到空间电荷区与空穴复合而释放出能量。这些能量大部分以发光的形式出现,因此,可以直接将电能转换成光能。发光二极管的发光颜色(波长),因半导体材料及掺杂成分不同而不同。常用的有黄、绿、红等颜色的发光二极管2。发光二极管工作电压很低(1.5-3.0伏),工作电流很小(10-30毫安),耗电极少。可作灯光信号显示、快速光源,也可同时起整流和发光两种作用。3.1.2光源电路对光源采用电位器及D/A转换两种方式来控制,其电路如图3.2所示。图3.2 光源电路图当双向开关拨到3时,通过改变电位器Rs1的阻值来控制发光二极管的发光强度。 当双向开关拨到1时,通过D/A转换来控制发光二极管的发光强度。由于砷化镓红外发光二极管的最大工作电流为10mA,在电路中串联一个0.5K的限流电阻R1。3.2测量放大电路3.2.1光传感器选取光电传感器是采用光电元件作为检测元件的传感器。它首先把被测量的变化转换成光信号的变化,然后借助光电元件进一步将光信号转换成电信号。光电传感器一般由光源、光学通路和光电元件三部分组成。光电检测方法具有精度高、反应快、非接触等优点,而且可测参数多,传感器的结构简单,形式灵活多样,因此在检测和控制领域内得到广泛应用2。光传感器的种类繁多,主要有:光电管、光电倍增管、光敏电阻、光敏二极管、光敏三极管、光电池、光纤传感器、光栅式传感器、电荷耦合器件(CCD)和激光式传感器等。光敏二极管是用硅材料制造,具有良好的光强饱和导通性能,对光的响应速度因工艺的不同,一般在2s3ms之间。PN结可以光电导效应工作,也可以光生伏特效应工作。处于反向偏置的PN结,在无光照时具有高阻特性,反向暗电流很小。当光照时,结区产生电子空穴对,在结电场作用下,电子向N区运动,空穴向P区运动,形成光电光敏电阻梳状电极流,方向与反向电流一致。光的照度愈大,光电流愈大。由于无光照时的反偏电流很小,一般为纳安数量级,因此光照时的反向电流基本上与光照度成正比。本系统选取的是硅光敏二极管,它对波长900nm的光最为敏感,灵敏度约为0.1A/lx。3.2.2集成运算放大器选取本实验系统的测量放大电路中选用的是LM324四运算放大器,LM324是内含四个特性近乎相同的高增益、内补偿放大器的单电源(也可以是双电源)运算放大器。电路可以在+5V或15V下工作,功耗低,每个运放静态功耗约0.8mA,但驱动电流可达40mA。LM324的引脚排列图如图3.3所示。图3.3 LM324引脚排列图3.2.3测量放大电路本实验系统的测量放大电路如图3.4所示。硅光电二极管工作在反向偏置状态下,产生与光照度成正比的光电流。光电流通过电位器Rs2,在Rs2上产生一个电压值,将该电压值经放大电路放大后传送到A/D转换电路。本系统中LM324是在15V下工作。LM324的放大器A连接的是一电压跟随电路,放大器D连接的是一减法电路。 图3.4 测量放大电路图假设光敏二极管的光照度为L、电位器Rs2的有效阻值为Rs2、放大器A的输出端的电压值为VS1、电位器Rs3的滑动端的电压值为VS2、放大器D的同相端和反相端的电压分别为VP和VN、输出端电压值为Vo、电位器Rs6的有效阻值为Rs6、电位器Rs4的有效阻值为Rs4、电位器Rs3的滑动端与接地端之间的阻值为Rx。 (3.2.1) (3.2.2)放大器D连接的是一减法电路,在理想运放的情况下,有VP=VN ,电路中存在虚断现象,同时运放两输入端的输入电流i=0,由此可得下列方程式: (3.2.3) (3.2.4)由式(3.2.3)解得VP,然后代入式(3.2.4),可得 (3.2.5)本系统中选取电阻值满足Rs4/R6=Rs6/R3的关系,输出电压Vo可简化为: (3.2.6)将式(3.2.1)、(3.2.2)代入式(3.2.6)可得 (3.2.7)由于光敏二极管的光照度L是由自然光产生的光照度L1和发光二极管产生的光照度L2组成的。假设实验过程中自然光产生的光照度是基本恒定的,在发光二极管未发光的情况下调节Rx,使Vo=0。则有: (3.2.8)则当发光二极管正常工作时,将式(3.2.8)代入(3.2.7)可得 (3.2.9)本系统中各变量取值分别为Rs2=2、Rs4=Rs6=5、R3=R6=1、R5=2.2。将变量值代入式(3.2.9)可得 (3.2.10) 3.3 A/D转换3.3.1 A/D转换芯片选取 目前常用的A/D转换芯片有ADC0809、ADC0804等,由于本系统只需要一路模拟量的输入,所以选用的A/D转换芯片为ADC0804。ADC0804是CMOS 集成工艺制成的逐次比较型A/D 转换器芯片。分辨率为8 位,转换时间为100s,输入电压范围为05V,增加某些外部电路后,输入模拟电压可为5V。该芯片内有输出数据锁存器,当与计算机连接时,转换电路的输出可以直接连接到CPU 的数据总线上,无需附加逻辑接口电路。 ADC0804的引脚图及控制信号的时序图分别如图3.5和图3.6所示。 图3.5 ADC0804引脚图 图3.6 ADC0804控制信号的时序图 3.3.2 AD转换电路本系统的A/D转换部分的电路如图3.7所示。图3.7 A/D转换部分电路本电路中,ADC0804内部的转换频率fck是由CLKR、CLK IN所连接的R10、C1来决定。频率的计算公式是:fck=1/(1.1RC)本实验系统中ADC0804内部的转换频率是:fck=1/(1.110k150PF)606KHz更换不同的R、C值,会有不同的转换频率,而且频率愈高代表转换速度愈快。但是频率范围应该控制在100kHz1460kHz之间。VIN+接测量放大电路的输出端,CS接AT89S52单片机的P2.0,RD接AT89S52单片机的RD,WR接AT89S52单片机的WR,INTR接AT89S52单片机的P2.1,D0D7分别接AT89S52单片机的P0.0P0.7。当CS=0、WR=0、RD=1时,由单片机发出信号要求ADC0804开始进行A/D转换;当CS=1、WR=1、RD=1时,ADC0804进行A/D转换,转换完毕后INTR输出低电平;当CS=0、WR=1、RD=0时,单片机发出信号读取ADC0804转换结果;3.4单片机3.4.1单片机选取 目前,市场上有众多类型的单片机。“由于种种原因,国内广泛使用的是Intel公司生产的MCS-48、MCS-51、MCS-96等三个系列的几十种产品。由于MCS-48单片机初步趋于淘汰,而MCS-51系列单片机基本上可以满足用户的一般要求,另外MCS-96系列的应用也日趋广泛”21 本实验系统中,选取8位的单片机就可以满足要求,而8位的单片机又包括多个型号,经过相互比较,最终确定选用AT89S52型号的单片机。3.4.2 AT89S52单片机简介(1)AT89S52单片机的主要性能特点:与MCS51兼容;8K Bytes,Flash存储器,在线编程;4.0-5.5V工作电压; 晶振:0-33MHz;3层可编程加密;自带2568bit,RAM;32个可编程I/O管脚;3个16-bit定时器/计数器; 8个中断源; 图3.8 AT89S52单片机引脚图全双工UART;具有休眠节电模式;节电模式中断唤醒;自带看门狗(2)AT89S52单片机芯片管脚说明 AT89S52单片机有双列直插封装(DIP)方式和方形封装方式。本系统采用的是DIP的,其引脚如图3.8所示。下面分别叙述这些引脚的功能。1.电源引脚;VCC 电源端GND 接地端2.时钟振荡电路引脚XTAL1和XTAL2XTAL1 片内振荡器的反相放大器输入端,是外接晶体的一个引脚。若采用外部震荡电路时,XTAL1必须接地。XTAL2 片内振荡器的反相放大器输入端,是外接晶体的另一个引脚。若采用外部震荡器,次引脚接外部振荡源,用于输入外部振荡脉冲,该信号直接送至内部时钟电路。在使用内部振荡电路时,XTAL1、XTAL2这两个端用来外接石英晶体,振荡频率为晶振频率,振荡信号送至内部时钟电路产生时钟脉冲信号。3.控制总线ALE/PROG 访问外部存储器时,ALE(地址锁存允许)的输出用于锁存地址的低位字节。即使不访问外部存储器,ALE 端仍以不变的频率输出脉冲信号(此频率是振荡器频率的1/6)。在访问外部数据存储器时,出现一个ALE 脉冲。RST 在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此管脚时,将使单片机复位,只要这个管脚保持高电平,51 芯片便循环复位。复位后P0P3 口均置1,管脚表现为高电平,程序计数器和特殊功能寄存器SFR 全部清零。当复位脚由高电平变为低电平时,芯片为ROM 的00H 处开始运行程序。PSEN 该引脚是外部程序存储器的选通信号输出端。当AT89C51 由外部程序存储器取指令或常数时,每个机器周期输出2个脉冲即两次有效。但访问外部数据存储器时,将不会有脉冲输出。EA/Vpp EA访问外部程序存储器控制信号。只访问内部程序存储器或内外程序存储器时,此引脚必须保持高电平。只访问外部程序存储器时,引脚必须保持低电平。4.I/O线P0、P1、P2、P3P0口(P0.0P0.7)是一个8位漏极开路的双向I/O口,每位能驱动八个LSTTL负载。第二功能是在访问外部存储器时,它分时作为低8位地址线和8位双向数据线。当P0口作为普通输入口使用时,应先向口锁存写“1”。P1口(P1.0P1.7)是一个内部带上拉电阻的准双向I/O口,每位能驱动四个LSTTL负载。当P1口作为普通输入口使用时,应先向口锁存器写“1”。P2口(P2.0P2.7)也是一个内部带上拉电阻的8位准双向I/O口,每位能驱动四个LSTTL负载。第二功能是在访问外部存储器时,作为高8位地址线。P3口(P3.0P3.7)也是一个内部带上拉电阻的8位准双向I/O口,每位能驱动四个LSTTL负载。P3口除了作为一般准双向口使用外,每个引脚还有各自的第二功能,详见表3.120表3.1 P3口各位的第二功能P3口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外部中断0输入)P3.3INT1(外部中断1输入)P3.4T0(定时器0外部输入)P3.5T1(定时器1外部输入)P3.6WR(外部数据存储器写脉冲输出)P3.7RD(外部数据存储器读脉冲输出)3.4.3 AT89S52单片机电路本实验系统采用AT89S52单片机为核心部件,AT89S52单片机的连接电路如图3.9所示。本实验系统中,AT89S52单片机使用的是振荡频率为11.0592MHz的晶振,因为11.0592MHz的晶振便于串行通信过程中的波特率设置,而且可以使串行通信更加稳定。与晶振相连的电容C2、C3均为30pF。复位电路包括上电复位和按键复位两部分。上电时,C9有一个充电过程,RST管脚在这段时间里维持高电平,当C9充电完成之后,RST管脚恢复低电平,完成对AT89S52单片机的复位。当按下复位开关时,RST管脚为高电平,也可以实现对AT89S52单片机复位。其中C9=10F、R12=8.2K、R13=0.1K。 图3.9 单片机连接电路3.5 LED显示3.5.1 LED显示器选取 (1)LED显示器结构与工作原理在单片机系统中,显示器可反映系统工作状态和运行结果,是人机对话的输出设备。通常所说的LED显示器是由七个发光二极管组成的七段数码显示器。通过七段发光二极管亮暗的不同组合,可以显示多种数字、字母以及其它符号,LED显示器中的发光二极管有两种连接方法: 共阳极接法:把发光二极管的阳极连在一起构成公共阳极,使用时,公共阳极接+5V。这样,阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不点亮。 共阴极接法:把发光二极管的阴极连在一起构成公共阴极,使用时,公共阴极接地。这样,阳极端输入高电平的段发光二极管就导通点亮,而输入低电平的则不点亮。使用LED显示器时,要注意区分这两种不同的接法。七段发光二极管再加上一个小数点位,共记11段,因此,提供给LED显示器的字形代码正好一个字节,各代码对应关系如下:代码位 D7 D6 D5 D4 D3 D2 D1 D0显示段 dp g f e d c b a用LED显示器显示十六进制数的字型代码如表3.2所示。表3.2 LED显示器的字型代码表21字型共阳极代码共阴极代码字型共阳极代码共阴极代码0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHB83H7CH3B0H4FHCC6H39H499H66HDA1H5EH592H6DHE86H79H682H7DHF84H71H7F8H07H灭FFH00H880H7FH (2)LED显示器的显示方式LED的显示常用两种方式:静态显示和动态显示。所谓静态显示,就是当显示器显示某一字符时,相应的发光二极管恒定地导通和截止。LED显示器工作在静态显示方式下时,每一个显示器都要占用单独的具有锁存功能的I/O接口。这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中CPU的开销小。所谓动态显示,将所有位的段选码并联在一起,由一个8位I/O口控制,而共阴极点或共阳极点由一个I/O口线控制。程序控制每个时刻只一位LED显示一个字符,循环控制选择每位LED轮流显示不同字符,通过适当的延时,利用人眼的视觉暂留特征,可以获得多位LED同时稳定的显示不同字符的视觉效果。 (3)本系统所选用的是四位共阴极LED显示器,采用动态显示的方式。四位共阴极LED显示器的接口电路是把四位LED显示器的7个笔划段a-g以及小数点位的同名端连在一起,而每一个显示器的共阴极点是各自独立地受I/O线控制的。CPU向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟是那个显示器亮,则取决于共阴极点,而这一端是由I/O控制的,所以我们就可以自行决定何时显示哪一位了。3.5.2 驱动器选取 (1) CD4511: CD4511是BCD锁存/七段译码/驱动器,CD4511能将BCD码译成共阴极七段LED显示码驱动共阴极LED显示器。CD4511从D、C、B、A输入BCD码,当LE0时输入数据,当LE1时数据锁存,数据输入后立即在ag引脚输出驱动共阴极LED显示器的段信号。 (2)MC1413(ULN2003):MC1413是六反相线驱动器,用于驱动LED显示器各位的共阴极端。3.5.3 LED显示电路本系统的LED显示部分的电路如图3.10所示。图3.10系统LED显示电路本系统中,四位LED显示器的段选由CD4511来驱动,位选由MC1413来驱动,CD4511的输入管脚及MC1413的低四位输入管脚分别与AT89S52单片机的P0口的低四位和高四位相连。显示时,AT89S52单片机将段选码和位选码分别作为一个字节的低四位和高四位从P0口输出,LED显示器的四位均接收到相同的段选码,但只有一位被选通,即只有一位被点亮。依次循环点亮四位LED显示器,通过适当的延时,利用人眼的视觉暂留特征,可以获得四位LED同时稳定显示的视觉效果。3.6 D/A转换3.6.1 D/A转换芯片选取在单片机控制系统中,根据被控装置的要求,单片机输出的控制信号除了数字量形式以外,还有模拟量形式。在输出通道中,将单片机内部处理加工的数据变换成模拟量输出的通道称之为模拟量输出通道。模拟量输出通道中主要的器件就是模数(D/A)转换器,它的功能是将单片机输出的数字量转换成与之对应的模拟量。D/A转换器根据分辨率、转换精度等性能指标可分为多种型号,应用比较多的有DAC0808、DAC0832等,本实验系统中选用的是DAC0832。3.6.2 DAC0832简介 DAC0832是8位分辨率的D/A转换集成芯片,与微处理器完全兼容。此芯片价格低廉、接口简单、转换控制容易等,在单片机应用系统中得到了广泛的应用。它由8位输入锁存器、8位DAC寄存器、8位D/A转换器电路及转换控制电路构成。 1. DAC0832的主要特性 分辨率为8位; 转换时间为1S; 可单缓冲、双缓冲或直接数字输入; 只需在满量程下调整其线性度; 逻辑电平输入与TTL兼容; 单一电源供电(+5 +15V); 低功耗(0.2mW)。 2. DAC0832的引脚功能 DAC0832芯片的引脚排列如图3.12所示。 (1)CS:片选信号,低电平有效。与ILE信号配合,决定WR1信号是否能起到锁存作用。 (2)ILE:允许锁存信号,高电平有效。输入寄存器的锁存信号IE1由ILE、CS、WR1、的逻辑组合产生,当ILE为高电平、CS为低电平时,WR1输入的负脉冲在IE1上产生正脉冲,IE1的负跳变将数据线(DI7-DI0)上的数据打入输入寄存器。 (3)WR1:写信号1,低电平有效。当WR1、CS、ILE都有效时,输入数据打入8位输入寄存器。 (4)WR2:写信号2,低电平有效。与数据传送信号XFER同时有效时,将舒服寄存器中的8位数据送入DAC寄存器。 (5)XFER:数据传送信号,低电平有效。在XFER、WR2都有效时,IE2上产生正脉冲,IE2负跳变时将输入寄存器内容打入DAC寄存器。 (6)VREF:基准电压输入。它与DAC内的电阻网络相连,VREF可在10V范围内调节。 (7)DI7DI8:8位数据输入端。 (8)IOUT1:DAC的电流输出1。当DAC寄存器各位全为1时,输出电流最大;当DAC寄存器全为0时,输出电流为0。 (9)IOUT2:DAC的电流输出2。它使IOUT1+ IOUT2恒为一个常数。 (10)RFB:反馈电阻。DAC0832芯片内有一个反馈电阻,可用作外部运放的反馈电阻。 (11)VCC:电源引脚。 (12)DGND:数字地引脚。 (13)AGND:模拟地引脚。 3. DAC0832的工作方式DAC0832有两级可控制的输入缓冲锁存器。根据对两级输入缓冲锁器的不同控制方法,DAC0802有直通、单缓冲、双缓冲三种工作方式。 (1)直通方式: 在直通方式下,输入寄存器和DAC寄存器都一直处于选通状态,输入的数据直接送到D/A转换器进行转换。此方法使用于连续反馈控制电路中。 (2)单缓冲方式:单缓冲方式是使输入寄存器和DAC寄存器中的一个处于直通状态,另一个处于可控状态,或者使两个寄存器同时选通锁存。在单缓冲方式下,只需对DAC0832执行一次写操作,数据写入输入寄存器后就直接经过DAC寄存器进入D/A转换器进行转换。此方式适用于只有一路模拟量输出或几路模拟量非同步输出的情况。 (3)双缓冲方式:双缓冲方式下,输入寄存器和DAC寄存器分别处于可控状态。双缓冲方式下的数据写入要分两次进行,第一次将待转换的数据写入输入寄存器,第二次再对DAC寄存器进行一次写操作,这一次的写操作是“虚拟写”,即写入何数据并无意义,仅是为了是WR信号再次有效,从而使DAC寄存器写选通有效,把第一次写入输入寄存器的数据锁存到DAC寄存器,并送入D/A转换器进行转换。3.6.3 D/A转换电路本系统的D/A转换电路部分如图3.11所示。图3.11 D/A转换电路本系统中,DAC0832工作于单缓冲方式,ILE接+5V,CS和XFER由AT89S52单片机的P2.2控制,WR1和WR2由AT89S52单片机的WR控制。AT89S52单片机对DAC0832一次写操作就把一个数据直接写入DAC寄存器,并送D/A转换器转换,输出模拟量。VREF接+5V。运算放大器B的输出电压表示形式为:VOUT1=VREFD/256式中D为输入数字量的十进制值,DAC0832输出的电流信号IOUT1连接运算放大器B的反向输出端,所以转换结果为负。若VREF=+5V,当D=0255(即00HFFH)时,由上式可得VOUT1=04.98V。VOUT1再经过运算放大器C反向放大之后变成正值,其表示形式为:本系统中,取R25=R26=1K,故VOUT1=VREFD/256,若VREF=+5V,当D=0255(即00HFFH)时,由可得VOUT1=04.98V。3.7 串行通信接口3.7.1 AT89S52单片机的串行I/O口AT89S52内部有一个全双工串行通信接口,具有UART功能。该串行口除了用于数据通信外,还可作为同步移位寄存器使用。用于控制串行口工作方式和波特率的特殊功能寄存器有SCON和PCON。 (1)串行口的专用寄存器 串行数据缓冲器(SBUF)AT89S52的串行口有两个物理上相互独立的数据缓冲器。一个用于发送数据,另一个用于接收数据,它们可同时发送和接收数据。但发送缓冲器只能写入数据,不能读出数据;而接收缓冲器正好相反,它只能读出数据,不能写入数据。尽管发送缓冲器和接收缓冲器具有同一个地址(99H),但由于根据读、写指令来确定访问哪一个缓冲器,所以并不会造成使用上的混乱串行口控制寄存器SCON特殊功能寄存器SCON用于控制串行口的通信,它的地址为98H,可以对它进行位寻址,位地址为98H9FH。各位的定义如下:SM0SM1SM2RENTB8RB8TIRISM0、SM1:为串行口工作方式控制位,如表3.3所示表3.3 串行口工作方式SM0 SM1工作方式功 能波特率0 0方式0移位寄存器输入输出fosc/120 1方式18位UARTT1溢出率/N,N=16、321 0方式29位UARTfosc/N,N=32、641 1方式39位UARTT1溢出率/N,N=16、32SM2:允许方式2和方式3进行多机通信的控制位。REN:允许接收控制位,REN=0,则禁止串行口接收,REN=1允许串行口接收。TB8: 是工作方式2和方式3中要发送的第9位数据,由软件置位或复位。该位可作为奇偶校验位。TI:发送中断标志位,在方式0中当发送完第8位数据时,TI由硬件置位;在其它方式中,TI在开始发送停止位时由硬件置位。TI=1时申请中断,CPU响应中断后,再发送下一帧数据。在任何方式下,都必须用软件对TI清零。RI:接收中断标志位,在方式0中当接收到第8位数据时,RI由硬件置位;在其它方式中,TI在接收到停止位时由硬件置位。RI=1时申请中断,CPU响应中断后,从SBUF中取出数据。在任何方式下,都必须用软件对RI清零。PCON各位的定义PCON字节地址为87H,不能对它进行位寻址。只有第7位SMOD用于方式1、方式2、方式3中的波特率控制。 (2)串行口四种工作方式串行口有四种工作方式,但串行通信主要使用方式1、方式2、方式3。方式0主要用于扩展并行输入输出口。方式0:在方式0下,串行口的SBUF作为同步移位寄存器使用,发送SBUF相当于一个并入串出的移位寄存器。接收SBUF相当于一个串入并出的移位寄存器。方式1:串行口在方式1下工作于异步通信方式,一帧数据有10位,包括8位数据位,1位起始位和一位停止位。方式2和方式3:串行口工作在方式2和方式3都为8位异步通信,且用于多机通信,仅波特率不同。在方式2和方式3下一帧数据有11位组成,包括1位起始位、8位数据位、一位可编程位、1位停止位,接收数据时,可编程位送入SCON中的RB8。3.7.2 RS-232C标准RS-232C是美国电气工业协会(EIA)推荐的通信接口标准,是最常用的串行接口标准。用来实现计算机与计算机之间,计算机与外设之间的串行数据传输。RS-232C定义了20根信号线,包括主信道和辅助信道信号。使用25针D型插座实现RS-232C标准接口的连接。由于常用的信号线是9根,所以RS-232C标准也常用9芯D型插座。本系统使用的是9针D型插座,其信号对应管脚如表3.4所示。表3.4 9针RS-232通信口引脚表连接器引脚信号线1载波检测DCD2接收数据RXD3发送数据TXD4数据终端就绪DTR5地GND6数据置位就绪DSR7请求发送RTS8允许发送CTS9振铃指示RI使用RS-232C标准,数据通信的波特率允许范围为02Kbps,最大传送距离在15m之内,降低波特率可以增加传送距离。RS-232C是异步串行通信标准,数据传输格式与AT89S52串行口数据传输格式相同,但采用负逻辑,512V表示逻辑“1”;+5+12V表示逻辑“0”。3.7.3 MAX232MAX232芯片可完成TTL和RS-232C的双向电平转换。MAX232的引脚图如图3.12所示。图3.12 MAX232引脚图MAX232的引脚主要分为5个部分。外接电容:有5个外接电容,进行电压匹配和电源去耦。TTL的输入:两路TTL电平的输入引脚11和10引脚,连接单片机的TXD端口。TTL的输出:两路TTL电平的输出引脚12和9引脚,连接单片机的RXD端口。RS-232C的输入:两路RS-23C2电平的输入引脚13和8引脚,连接RS-232的TXD端口。RS-232C的输出:两路RS-232C电平的输出引脚14和7引脚,连接RS-232C的RXD端口。通过MAX232的TTL和RS-232C的输入/输出端口,自动地调节了单片机串口的TTL电平信号和RS-232C的串行通信信号的电平匹配。3.7.4 串行通信接口电路本系统串行通信接口的电路如图3.13所示。图3.13 串行通信接口图7由于RS-232C使用的逻辑电平与单片机逻辑电平不同,不是TTL电平,因此当AT89S52单片机与RS-232C接口时必须进行电平转换。本系统中,AT89S52单片机与PC机的通信属于近程通信,可用RS-232C电缆直接连接,最简单的用法是将“发送数据”和“接收数据”交叉连接,再加上信号地线。本系统采用的是9针D型插座,通过MAX232进行电平转换,AT89S52单片机的TXD、RXD分别与MAX232的T1IN、R1OUT相连。9针D型插座的2、3针分别与MAX232的T1OUT、R1IN相连。在串行通信过程中,当AT89S52单片机向PC机发送数据时,由AT89S52单片机的TXD脚发送的TTL电平信号通过MAX232转换为RS-232C电平之后进入9针D型插座。当PC机向AT89S52单片机发送数据时,由9针D型插座进入MAX232的RS-232C电平通过MAX232转换为TTL电平之后进入AT89S52单片机的RXD脚。3.8 其他部分电路3.8.1 外部中断控制按键本系统中,AT89S52单片机的两个外部中断输入引脚分别与两个复位按键相连,当按键按下时产生的相应外部中断。当产生外部中断0时,将增大D/A转换的输出值,从而增加发光二极管的发光强度。当产生外部中断1时,将减小D/A转换的输出值,从而降低发光二极管的发光强度。3.8.2 指示灯本系统中,有红、黄、绿三个发光二极管作为指示灯。当接通电源时,红灯亮;当单片机正常运行时,绿灯亮;当单片机复位按键被按下时,黄灯亮;3.8.3系统电源本系统中,所采用的电源包括+5V、+15V、-15V三种电源,通过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论