数据采集及处理系统的设计_第1页
数据采集及处理系统的设计_第2页
数据采集及处理系统的设计_第3页
数据采集及处理系统的设计_第4页
数据采集及处理系统的设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

学 号:14课 程 设 计题 目数据采集及处理系统的设计学 院自动化学院专 业自动化班 级0902班姓 名何润指导教师张丹红2012年07月03日课程设计任务书学生姓名: 何润 专业班级: 自动化0902班 指导教师: 张丹红 工作单位: 自动化学院 题 目: 数据采集及处理系统的设计初始条件:设计一个64路巡回数据采集及处理系统,系统循环周期为1秒,16路模拟信号输入,16路开关信号输入,16路模拟输出,16路数字输出。要求完成的主要任务: 1 输入通道及输出通道设计(020mV输入),(010V输出)2 每周期内各通道采样10次;3 对模拟信号采用一种数字滤波算法; 4 完成系统硬件电路设计,软件流程及各程序模块设计;5 完成符合要求的设计说明书。时间安排:2012年6月25日2010年7月4日指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日 摘要数据采集及处理系统是指从传感器和其它待测设备等模拟和数字被测单元中自动采用非电量或者电量信号,送到上位机中进行分析,处理的过程。数据采集系统是结合基于计算机或者其他专用测试平台的测量软硬件产品来实现灵活的、用户自定义的测量系统。而数据处理就是通过一些滤波算法,删除原始数据中的干扰和不必要的信息,分离出反映被测对象的特征的重要信息。本次课程设计采用A/D和D/A转换器和MCS-51单片机组成数据采集系统,数据采集系统可以通过A/D转换把模拟信号转换成数字信号,并且可以方便的实现数字信号存储。该设计具有结构简单、操作方便、高性价比、具有显示、记录存储功能,能够适应油田野外恶劣环境,;具有性能稳定、可靠性高、响应速度快操作简单、费用低廉、回放过程的信号可以直观的观察。它与有线数传相比主要有布线成本低、安装简便、便于移动等性能。数据采集器的市场需求量大,以数据采集器为核心构成的小系统在工农业控制系统、医药、化工、食品等领域得到了广泛的应用。数据采集器具有良好的市场前景,在我们工业生产和生活中有着举足轻重的地位,因此,本次课程设计数据采集及处理系统有着一定的实际意义关键词:数据采集,处理,A/D转换,D/A转换,采样保持 目录1 方案论述11.1 方案要求11.2 任务分析12 方案对比及认证23 方案设计思路34 硬件电路原理541 多路采样开关54.2 模拟通道及处理64.2.1 模拟输入通道64.2.2 模拟输出通道84.3 数字通道及处理94.3.1 数字输入通道94.3.2 数字输出通道105 软件设计和程序流程115.1 软件设计流程115.1.1 设计思想115.1.2 模拟通道流程图115.1.3 数字通道设计流程125.2 程序设计135.2.1 主程序流程图135.2.1 A/D转换程序145.2.2 数字滤波程序165.2.3 D/A转换程序186 心得体会197 参考文献20附录一 硬件电路图21附录二 芯片资料22附录三 程序清单2632 武汉理工大学计算机控制技术课程设计说明书 数据采集及处理系统的设计1 方案论述1.1 方案要求本课题要求设计一个64路巡回数据采集及处理系统,系统循环周期为1秒,16路模拟信号输入,16路开关信号输入,16路模拟输出,16路数字输出。输入020mV,输出010V;每周期内各通道采样10次,并对模拟信号采用一种数字滤波算法。设计系统硬件电路、软件流程及各程序模块。1.2 任务分析数据采集系统的任务,具体地说,就是传感器从被测对象获取有用信息,并将其输出信号转换为计算机能识别的数字信号,然后送入计算机进行相应的处理,得出所需的数据。同时,将计算得到的数据进行显示、储存或打印,以便实现对某些物理量的监视,其中一部分数据还将被生产过程中的计算机控制系统用来进行某些物理量的控制。 数据采集系统一般由数据输入通道、数据存储与管理、数据处理、数据输出及显示这五个部分组成。输入通道要实现对被测对象的检测、采样和信号转换等工作。数据处理就是从采集到的原始数据中,删除干扰噪声、无关信息和不必要的信息,提取出反映被测对象特征的重要信息。另外,就是对数据进行统计分析,以便于检索;或者把数据恢复成原来的物理量形式,以可输出的形态在输出设备上输出,如打印、显示、绘图等。数据输出及显示就是把数据以适当的形式进行输出和显示。 数据采集及数据处理的过程,可以理解为先采集数据,然后将数据输入到CPU,最后输出数据。在这一过程中,还要选择数据通道。为了适应芯片的电压值,还可能需要把传入的模拟电压放大或缩小,转换成模拟信号后,驱动相应的执行机构,达到控制的目的。在输出过程中,芯片输出可能为电流信号,也可能为电压信号。2 方案对比及认证数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口,数据采集系统主要需要解决的是模拟量输入通道问题,根据设计要求,16路的模拟量输入,需要确定模拟量输入通道的结构。模拟量通道结构有两种,一种单通道模拟量输入,即每路模拟量均有各自独立的A/D转换器、采样/保持器,另一种是多通道模拟量输,即模拟量通过多路开关,共用一套采样/保持器、A/D转换器。在两种结构中,前者电路结构简单,程序设计方便。由于每路模拟量均需各自独立的A/D转换器,因此尽管只有一个处理器,但A/D转换是并行的,具有很快的转换速度。由于使用的A/D转换器数量多,造成了总体成本高昂,这种并行结构一般用在高速数据采集系统中;后者共用一套A/D转换器和保持器,主要特点是经济实用等。如果能够达到题目所需的要求时,一般采用该方案。当前随着高性能的A/D转换器件不断推出,选择一种A/D转换器满足多路数据采集还是比较容易的。D/A转换部分主要解决数字到模拟的功能,最常用的数模转换器为DAC0832,将输入的数字量转换成差动的输出。为了使其能变成电压输出,又要经过运算放大器。模拟输出通道同样也有两种基本结构形式:每一个通道使用一个D/A转换器,速度快,工作可靠,缺点是较多的D/A转换器会提高成本;另外一种就是多个通道共用一个D/A转换器,即转换成模拟电压后,通过多路模拟开关传送给输出采样保持器。这种结构形式的优点是节省了D/A转换器,由于每个转换器要分时工作,所以这种结构只适用于通路数量过多且对转换速度要求不高的场合。3 方案设计思路数据采集及处理系统是指模拟量采集转换成数字量后,再由计算机进行存储、处理、显示或打印的过程。数据采集系统的任务,具体地说,就是传感器从被测对象获取有用信息,并将其输出信号转换为计算机能识别的数字信号,然后送入计算机进行相应的处理,得出所需的数据。本次设计的系统原理框图如图1所示。 . 图1 系统原理图(1)数据采集数据采集系统一般由数据输入通道、数据存储与管理、数据处理、数据输出及显示这五个部分组成。输入通道要实现对被测对象的检测、采样和信号转换等工作,这一过程需要用到多路开关对数据进行采样。为满足设计要求的16路模拟信号输入,需要一片16路8位A/D转换器ADC0816来实现。ADC0816是逐次比较式16路8位A/D转换器,包含有一个8位A/D转换器和16路单端模拟信号多路转换开关。16路的多路转换开关由4位地址编码选通,可直接接通16个模拟通道中的任意一个,并提供通道扩展功能。对任何模拟信号的调节工作可在多路转换器输出和8位A/D转换器之间经行。该器件不需要在外部进行锁存和译码,而且地址线为三态输入,转换后的数据为带锁存的三态输出,因此容易与多种控制机联接使用也可独立工作。由于ADC0816自带一个16路复用器,且有以上优点,故选用ADC0816来实现16路模拟信号输入。(2)数据存储数据存储与管理要用存储器把采集到的数据存储起来,建立相应的数据库,并进行管理和调用。为实现一个采集频率高,采集速度快,稳定高的数据采集系统。有效的方法就是用单片机来实现,以前数据采集器采用模拟电路组成,电路复杂且采集信号速度慢,精确度低,抗干扰性不强。而采用单片机和相关硬软件组成不但结构简单、操作方便、高性价比、具有显示、记录存储功能,能够适应油田野外恶劣环境,;具有性能稳定、可靠性高、响应速度快操作简单、费用低廉、回放过程的信号可以直观的观察。80C51提供4K字节闪速存储器,128字节内部的RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个双全工串行通信口,片内振荡器及时钟电路。同时,80C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。在此选择AT89C51作为控制芯片。(3)数据处理输出数据处理就是从采集到的原始数据中,删除干扰噪声、无关信息和不必要的信息,输出重要信息,或者把数据恢复成原来的物理量形式输出。数据处理可以通过数字滤波算法,数字滤波是通过一定的计算或判断程序减少干扰信号在有用信号中的比重,它实际上是一种程序滤波,不需要增加硬件设备,可靠性高、稳定性好。16路开关信号输出和16路数字信号输出,也可选用16路复用器4067。所谓多路复用是指两个或多个用户共享公用信道的一种机制。通过多路复用技术,多个终端能共享一条高速信道,从而达到节省信道资源的目的。通道的选择取决于4067的4位地址输入编码。 16路模拟信号输出选用一片8位D/A转换器DAC0832和一片多路复用器4067组成。DAC0832将输入的数字量转换成差动的电流输出,为使其变成电压输出,要经过运算放大器。运放的输出通过4067变成16路模拟信号输出,输出通道号由多路复用器的地址端决定。4 硬件电路原理41 多路采样开关设计要求的每个周期对各通道采样10次,计算机的运算速度远远快于采样参数的变化,因此一台计算机系统可供几十个检测回路使用,但计算机在某一时刻只能接收一个回路的信号。所以,必须通过多路模拟开关实现多选1的操作,将多路输入信号依次地切换到后级。 模拟开关不同于一般的数字开关,它所切换的是模拟量,理想状态应该是开断电阻无穷大,导通电阻为零;频带宽度无穷大,功耗为零;开通和断开无过渡过程。当开关导通时应只允许有用信号通过,不允许无用信号或干扰耦合到输出端。实际使用中,上述理想状态是不存在的,只能根据使用场合进行合理的选择。除了在芯片内集成的少量模拟开关外,在微机控制系统中,广泛使用的是多路模拟开关。在模拟量输入通道中,它把多个输入信号接到一个公共点上,以便进行放大或数字化 处理。在模拟量输出通道中,它把D/A转化器输出的模拟信号按一定的顺序输出到不同的控制回路,此时模拟开关是一对多的转换,故又称多路分配器。由于题目中有16路模拟输入信号,为了方便,避免还要将多路模拟开关扩展,直接选用了4067。4067是16路双向模拟开关,所谓双向,就是该芯片既可以实现多到一的切换,也可以完成一到多的切换;而单向则只能完成多到一的切换。其内部包括一个16选1的译码器和被译码输出所控制的16个双向模拟开关,当禁止端为低电平0时,X0X15中被选中的一个输入端与输出公共端接通,被选通端由时钟脉冲信号决定,当为高电平1时,处于禁止状态,所有模拟开关均不接通。4076允许的输入电压范围为0V-Vcc,题目要求的只有0-20mv,所以可以选用。4.2 模拟通道及处理4.2.1 模拟输入通道模拟量输入通道一般由多路转换器,采样保持器,A/D转换器等组成,组成框图如图2所示。 图2 模拟输入通道 输入通道模块使用十六复合器芯片,通过ABCD端口地址选择输入路,再将此路信号根据要求放大处理后输入到A/D转换器AD0809中转换为数字信号,输入到单片机中进行处理。模拟信号的输入模块由8位A/D转换器ADC0809实现。将4767复合器输出连接到ADC0809的INO通道,将ADC0809选择通道地址设为000,所以多路复合器采样到的信号通过IN0通道输入到ADC0809进行A/D转换,4067输入通道由4位地址编码选通,地址可由单片机的I/O口控制。80C51的P2口是数据和地址分时复用口,可以控制4067的地址端口,例如,当80C51的P2口低4位输出为1000时,4067地址端ABCD=0001,模拟信号输入通道IN1被选中,模拟信号由此输入。由于输入的模拟信号范围为020mV,而A/D转换器的输入电压范围为05V,因此需要对输入信号放大250倍再输入ADC。需要用方法器对电压进行放大,选择中等精度运算放大器OP07对输入信号进行放大。运放按同相放大器的接线方法接线,反馈电阻取反相端接地电阻的250倍,同相端接平衡电阻,阻值可与反相端接地电阻相同。另外ADC0809的数据输出端直接与80C51的P0口相连,输出转换后的数字量。其EOC为A/D转换结束信号的输出端,可作为中断请求或查询信号。输入通道模块的原理图如图3所示。 图3 模拟输入通道原理图4.2.2 模拟输出通道模拟量输出通道是计算机控制系统实现输出控制的关键,多个通道共用一个D/A转换器的组成框图如图4所示。 图4 模拟共用输出通道结构图模拟信号输出模块用一片8位D/A转换器DAC0832和一片多路复用4067实现。DAC0832的输出电压与参考电压相反,即输出0-5V电压,而要求输出模拟电压为010V,故应将其输出反相放大2倍后接16路复用器。运算放大器仍使用OP07,按同相放大器接法接线,反馈电阻阻值取反相端电阻阻值的2倍,同相端接地平衡电阻的阻值取前两者的并联阻值。输出的模拟信号反相放大后由16路复用器输出,那么,80C51的P2口低4位将控制模拟量输出通道的选择。模拟输出通道原理图如图5所示。 图 5 模拟信号输出电路图 4.3 数字通道及处理4.3.1 数字输入通道数字量输入通道主要由输入缓冲器、输入调理电路、输入口地址译码电路等组成,组成框图如图6所示.图6 数字量输入通道结构数字输入信号一般都是以二进制的逻辑“1”和“0”出现,采取到的状态信号通过调理电路转换、保护、隔离等措施将信号转换成计算机机能够接收的逻辑信号,转换的信号直接输入16路复用器4067。80C51的P2口控制输入通道地址选择通道号, 4067的输出接P1.0将数字信号送到控制器。开关信号输入电路图如图7所示。图7 数字量输入通道原理图 4.3.2 数字输出通道数字量输出通道只要由锁存器、输出驱动电路、输出口地址译码电路等组成,主要框图如图8所示。 图8 数字量输出通道结构图将单片机存储的数据通过十六选一的多路开关输出,80C51的P3口控制通道地址的选择,为了让输出端的信号准确稳定,应加上光电耦合器,是输入输出信号完全隔离。这里用到MDC3031M,输出的电压为10V。数字输出通道原理图如图9所示。 图9 数字通道输出原理图5 软件设计和程序流程5.1 软件设计流程5.1.1 设计思想本次数据采集及处理系统分为模拟通道和数据通道两部分,二者相互独立,并无内在的联系。5.1.2 模拟通道流程图 图10 模拟通道设计流程图5.1.3 数字通道设计流程图 11 数字通道设计流程图5.2 程序设计5.2.1 主程序流程图 图12 主程序流程图5.2.1 A/D转换程序程序流程图 图13 A/D转换程序流程图A/D转换子程序:TEST: MOV R0,#70H ;显示数据初值(70H-77H) MOV R5,#0F ;十六路信号循环控制 MOV DPTR,#0CFA0H ;选中通道0LOOP: MOVX DPTR,A ;启动A/D MOV R4,#8FH ;延时子程序LOOP11: DJNZ R4,LOOP11 MOV R4,#0FHLOOP22: DJNZ R4,LOOP22 MOVX A,DPTR ;读取A/D转换值 MOV R0,A ;把采集数据送到指定位置 INC R0 ;移动存储位置 INC DPTR ;指向下一通道 MOV 7BH,R5 DJNZ R5,LOOP ;判定采集十六通道5.2.2 数字滤波程序一般微机应用系统的模拟输入信号中,均含有种种噪声和干扰,它们将直接影响转换精度,使采集的数据不可信。这些干扰信号一般在A/D转换前用RC滤波器加以过滤,但由于滤波电容C不能取得太大,而难以滤去频率较低的干扰。数字滤波通过计算或程序减少干扰信号在有用信号中的比重。它是用程序实现的,不需要增加硬件设备,可靠性高,稳定性好;也可对频率低的信号实现滤波。对于变化较缓慢的一次参数,可使用一阶滞后滤波,而对于变化较快的参数,可使用算数平均值滤波。算数平均值的算法是: (3-1)本计算是通过将每一路的值输入后除以10,然后相加,得到每一路通道的平均值为算数平均值数字滤波算法 。同时也减少了存储单元的个数,仅用16个,70H到7FH。本段程序将中断时钟设置为100ms,每秒采集10次,并将每路采集一次,共160次。由于单片机能用的存储单元仅为80个,所以将每路信号除10然后加在同一个单元里。这同时也实现的数字滤波的功能。程序流程图如图14所示 图 14 数字滤波程序流程图子程序MOV A,R0 ;本模块为数字滤波MOV B,#10 ;将转换后的数字量除以10DIV ABADD R0,A INC R0 ;指向下一个存储单元POP ACC 5.2.3 D/A转换程序程序流程图 图 15 D/A转换程序流程图子程序START3: MOV DPTR,#0FEFFH ;置DAC0832的地址 LP1: MOV A,#0FFH ;设定高电平 MOVX DPTR,A ;启动D/A转换,输出高电平 LCALL DELAY ;延时50ms MOV A,#00H ;设定低电平 MOVX DPTR,A ;启动D/A转换,输出低电平 LCALL DELAY ;延时 MOV R7,#4 MOV R1,#A1H ;输入通道的选择 MOV R2,#80H ;P0.0数字通道为数字信号的起始地址A2: MOV A,0000H MOV DPTR,R1 MOVX DPTR,A ;将p2.1输出,来控制十六选一输出 INC R1 ; 指向下一个端口 JMP A1 ; 将片选到通,使逐路信号输出SJMP LP 6 心得体会刚拿到课设题目时,我显得很茫然,由于理论知识欠缺,不知道怎么去入手,只有一个很模糊的概念,只知道应该各个模块用到哪些芯片,但是对于芯片之间的连接不是很了解。后来,我图书馆查阅了相关方面的书籍,在网上也找了大量的资料,通过几天的钻研学习,我对单片机AT89C51、ADC0809、DAC0832等各个模块设计中需要的核心芯片有了一定层次的了解,对系统的组成也有了一定的了解。后来又通过和我组员的讨论,最终完成了硬件电路的设计和程序的编写。总的来说,这次课设让我学到了很多,主要分为以下三个方面。(1)学会更有效地查阅资料。这次课设的题目对于我来说不是很好入手,所以我自己先设计出一套方案,然后对于各个模块进行各个击破。比如我首先要了解模拟量输入输出通道和数字量输入输出通道的原理,分析其工作流程,然后针对A/D转换,数字滤波、D/A转换各个模块进行单独分析和查阅资料。像这种带有目的性的查阅资料,让我提高了做事的效率和条理性。(2)对知识和软件应用更加熟练。之前由于对题目不熟悉,我去图书馆查阅了很多资料。让我对很多一些常用的芯片如74HC4067、ADC0809等有了一定的了解;对电路原理的分析也让我对采样处理系统有了更深的认识,巩固了我的专业知识;绘制电路图使我更加熟练的掌握了protuese的操作技巧。编写课程设计说明书让我对word的操作更加熟悉。(3)明白要将学会将理论应用于实践当中。这次课程设计让我们设计了数据采样及处理系统,让我们从原理上对电路进行了剖析,我觉得要将自己所学到的理论知识应用与实践,那么能为我们将来工作铺下一定的基础。总之,在这次课程设计过程中,我既学习到了计算机控制技术的知识,又学到了许多书本之外宝贵的分析动手能力。与其临渊羡鱼,不如退而结网。这次课程设计给我的最大的印象就是如果自己有了兴趣,就动手去做,困难在你的勇气和毅力下是抬不了头的。在设计过程中遇到的问题是很多的,但我想难免会遇到这样或那样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。通过这次课程设计之后,一定把以前所学过的知识重新温故。7 参考文献1 于海生.计算机控制技术.北京:机械工业出版社,2007. 2 陈立周,陈宇编.单片机原理及其应用 . 北京:机械工业出版社,2006. 3 彭虎,周佩玲,傅忠谦.微机原理与接口技术.北京:电子工业出版社,2008. 4 潘新民,王燕.微型计算机控制技术.北京:电子工业出版社,2011 5 胡汉才.单片机原理及其接口技术.北京:清华大学出版社,2006. 6 李光飞. 51系列单片机设计实例.北京:北京航空航天大学版社.2005附录一 硬件电路图 图 16 电路硬件原理图附录二 芯片资料(1) 多路转换器数据采集端口为16路多路开关,可以按照需要选定其中1路端口,为实现此功能,采用了4067芯片, 4067用来切换信号的传输十分方便。此芯片可以正反两用。MC14067B芯片具备1个使能端,4路地址码端,构成16状态,控制16路信号的输入。根据要求,输入模拟信号为020mV,而A/D转换芯片0808输入为-5V+5V,为了提高分辨率,我们将输入信号进行放大,采用了同相比例放大电路。图17 4067的管脚图和通道选择通过ABCD,的值可以选择十六路通道中的某一路输入到AD0809中,进行AD转换。也可以将DA0832转换后的数据输出。(2) A/D转换器ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。 ADC0809的内部逻辑结构 由下图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。 图18 ADC0809内部逻辑结构图其引脚图如图19所示 图19 ADC0809引脚图ADC0809引脚结构 ADC0809各脚功能如下:D7-D0:8位数字量输出引脚。IN0-IN7:8位模拟量输入引脚。VCC:+5V工作电压。GND:地。REF(+):参考电压正端。REF(-):参考电压负端。START:A/D转换启动信号输入端。ALE:地址锁存允许信号输入端。(以上两种信号用于启动A/D转换).EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。OE:输出允许控制端,用以打开三态数据输出锁存器。CLK:时钟信号输入端(一般为500KHz)。A、B、C:地址输入线。(3) D/A转换器实现数字量转换成模拟量的设备,DAC0832是美国国家半导体公司生产的8位D/A芯片,共有20个引脚。它具有与微机连接简单、转换控制方便、价格低廉等特点,微机系统中得到广泛的应用。 图20 DAC0832功能示意图0832各主要引脚功能: 8位数据输入端。 ILE: 输入寄存器允许信号, 输入,高电平有效。 CS:片选信号,输入,低电平有效。 :输入寄存器写信号,输入,低电平有效。由ILE、CS、的逻辑组合产生输入寄存器控制信号 。 当为低电平时,输入寄存器内容随数据线变化,的正跳变将输入数据锁存。 XFER : 数据传送信号, 输入, 低电平有效。 : DAC寄存器的写信号, 输入, 低电平有效。 由XFER、组成DAC寄存器的控制信号。 的正跳变将输入数据锁存到DAC寄存器。:电流输出1。当DAC寄存器中全为“1”时,输出电流最大,当DAC寄存器中全为“0”时,输出电流最小。:电流输出2。它与的关系是:+=常数Rfb:内部反馈电阻引脚,该电阻在芯片内,Rfb端可以直接接到外部运算放大器的输出端。这样,相当于将一个反馈电阻接在运算放大器的输入端和输出端。VREF:参考电压输入端,可接正电压,也可接负电压,范围为-10V+10V。DAC0832内部有两个寄存器,能实现三种工作方式: 双缓冲、 缓冲和直通方式,直通方式是将两个寄存器的五个控制端预先置为有效,两个寄存器都开通只要有数字信号输入就立即进入D/A转换。单缓冲方式使DAC0832的两个输入寄存器中有一个处于直通方式,另一个处于受控方式,可以将WR2和Xfer相连在接到地上,并把WR1接到80C51的WR上,ILE接高电平,CS接高位地址或地址译码的输出端上。双缓冲方式把DAC0832的输入寄存器和DAC寄存器都接成受控方式,这种方式可用于多路模拟量要求同时输出的情况下。本次设计采用单缓冲方式。附录三 程序清单ORG 0000HLJMP STARTORG 03HLJMP INT0P ;AD转换程序初始化MOV R7,#4MOV R1,#A1H ;将P2.1的地址输入R1中,控制输入通道的选择MOV R2,#80H ;P0.0数字通道为数字信号的起始地址A1: MOV A,0000H MOV DPTR,R1 MOVX DPTR,A ;将p2.1输出,来控制十六选一那一路进入 INC R1 ;指向下一个端口 JMP A1 LJMP INT0P ;将选通的信号进行AD转换START0: MOV R0,#70H ;RAM首地址 MOV R7,#16 MOV SP,#3FH SETB IT0 SETB EX0 SETB EAMAIN0: MOV DPTR,#7FF8H ; AD通道首地址MAIN: CLR F0 MOVC DPTR,ATEST: JNB F0,DONE DJNZ R7,MAIN DONE:SJMP TEST ; 循环16次,采集各路信号INT0P: PUSH ACC SETB F0 MOV R0,A MOV A,R0 ;本模块为数字滤波MOV B, #10 ;将转换后的数字量除以10DIV AB ADD R0,A ;将转换后的数值相加,得到INC R0 ;指向下一个存储单元POP ACCOR

温馨提示

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

评论

0/150

提交评论