MCS-51与DA、AD的接口-杭电_第1页
MCS-51与DA、AD的接口-杭电_第2页
MCS-51与DA、AD的接口-杭电_第3页
MCS-51与DA、AD的接口-杭电_第4页
MCS-51与DA、AD的接口-杭电_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

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

文档简介

1、8.3 D/A转换器的接口与应用概述概述为什么要用为什么要用D/A、A/D转换器件转换器件 能将模拟量转换为数字量的电路称为模数转换器,简称A/D转换器或ADC;能将数字量转换为模拟量的电路称为数模转换器,简称D/A转换器或DAC。ADC和DAC是沟通模拟电路和数字电路的桥梁,也可称之为两者之间的接口。多路开关数字控制计算机DACADC功率放大功率放大执行机构执行机构加热炉加热炉温度传感器温度传感器信号放大信号放大多路开关8.3.1 DAC的转换原理及分类 1.转换原理 DAC的基本原理是把数字量的每一位按照权重转换成相应的模拟分量,然后根据叠加定理将每一位对应的模拟分量相加,输出相应的电流或

2、电压。 uo或 io输出D/Ad0d1dn1输入)2222(00112211oddddKunnnnu 2.DAC的分类的分类 1)根据)根据DAC内部结构不同内部结构不同 权电阻网络型权电阻网络型 “T”型电阻网络型型电阻网络型 2)根据输出结构的不同根据输出结构的不同 电压输出型(如电压输出型(如TLC5620) 电流输出型电流输出型 (如如THS5661A) 3)根据与单片机接口方式不同根据与单片机接口方式不同 并行接口并行接口DAC(如如DAC0832、DAC0808) 串行接口串行接口DAC(TLC5615等等)1.权电阻型权电阻型DAC 权电阻型权电阻型DAC核心思想在于用核心思想在

3、于用等比例的电阻等比例的电阻在在参考电压的作用下产生和权重对应的权电流,权电参考电压的作用下产生和权重对应的权电流,权电流在数字开关的作用下进行合成模拟信号。流在数字开关的作用下进行合成模拟信号。 参考电压源、参考电压源、模拟开关、模拟开关、比例电阻、比例电阻、求和放大器求和放大器8.3.1 四位权电阻网络四位权电阻网络DAC结构结构权电阻网络型DAC优缺点: 优点:是电路结构简单,使用电阻数量较少;各位数码同时转换,速度较快。 缺点:是电阻译码网络中电阻种类较多、取值相差较大,随着输入信号位数的增多,电阻网络中电阻取值的差距加大;在相当宽的范围内保证电阻取值的精度较困难,对电路的集成化不利。

4、该电路比较适用于输入信号位数较低的场合。 2. T型电阻网络型型电阻网络型DAC T型电阻网络型DAC克服了权电阻型DAC电阻阻值较多的缺点,如图8.3.3所示,S0S3为模拟开关,R2R电阻解码网络呈倒T形,运算放大器A构成求和电路。 图图8.3.3 倒倒T形电阻网络形电阻网络D/A转换器转换器D/A转换原理-倒T型电阻网络D/A转换电路原理倒倒T T型电阻网络型电阻网络D/AD/A转换原理图转换原理图R2R2R2R2RRRRRD0D1D2D3节点3节点2节点1节点0IVREF+-VOUTI3I2I1I0图中 D3 D2 D1 D0是4位二进制数字量输入,当D3 D2 D1 D0中的某一位状

5、态为1时,图中开关打向右方,为0 时,开关打向左方。RFIOUT1IOUT2VREF为基准电压输入,Vout是电压模拟量输出。由运算放大器概念可知:Vout= RFIout1Iout1Iout1是开关打向右端的各支路电流I Ii i之和,实际上301iOUTDiIiI(其中 就是数字量D3 D2 D1 D0的某一位)Di(b) 等效电路图R2R2R2R2RRRRRD0D1D2D3节点3节点2节点1节点0IVREFI3I2I1I0由等效电路图(b)可知,各支路电流分别为: RVREFI42RVREFI81RVREFI160RVREFI23iiiRVFOUTDRVREF30162上式右边iiiD3

6、02表示的就是数字量D3 D2 D1 D0的值(按权展开),而左边是模拟量输出值,可见模拟模拟量输出正比于数字量输入,即实现了量输出正比于数字量输入,即实现了D/AD/A转转换。换。D/A转换器的主要技术指标: 1)分辩率)分辩率(Resolution) 指最小模拟输出量(对应数字量指最小模拟输出量(对应数字量仅最低位为仅最低位为1)与最大量(对应数字量所有有效位为)与最大量(对应数字量所有有效位为1)之比。)之比。 分辨率也可以用分辨率也可以用D/A转换器的最小输出电压与最大输出电转换器的最小输出电压与最大输出电压的比值来表示。压的比值来表示。10位位D/A转换器的分辨率为:转换器的分辨率为

7、:001. 01023112110 2)建立时间)建立时间(Setting Time) 是将一个数字量转换是将一个数字量转换为稳定模拟信号所需的时间,也可以认为是转换为稳定模拟信号所需的时间,也可以认为是转换时间。时间。D/A中常用建立时间来描述其速度,而不中常用建立时间来描述其速度,而不是是A/D中常用的转换速率。中常用的转换速率。 一般地,电流输出一般地,电流输出D/A建立时间较短,电压输出建立时间较短,电压输出D/A则较长。则较长。 其他指标还有线性度其他指标还有线性度(Linearity)、转换精度、温、转换精度、温度系数度系数/漂移等。漂移等。8.3.2 并行接口DAC 并行DAC按

8、照转换位数分为8位、10位、12位、16位等,考虑单片机接口便利程度这里以经典的DAC0832 D/A转换器介绍并行接口DAC。DAC0832特点特点:DAC0832是一个是一个8位通用型位通用型D/A转换器,该芯片具有以下特点:转换器,该芯片具有以下特点:单电源供电,从单电源供电,从+5V+15V均可正常工作均可正常工作基准电压的范围为基准电压的范围为1010V;电流建立时间为电流建立时间为1uS;四象限电流输出型;四象限电流输出型;CMOS 工艺,低功耗工艺,低功耗20mW。DAC0832芯片及其与单片机接口与应用一一. .DAC0832的引脚(20PIN)及结构0832-80832-8位

9、位D/AD/A08320832引脚功能引脚功能I IOUT2OUT2电流输出电流输出2 2 CS CS选片选片 WR1 WR1输入写输入写DI0DI0DI7DI7数据线数据线CSWR1AGNDDI3DI2DI1DI0VREFRFRDGNDVccILEWR2XFERDI4DI5DI6DI7IOUT2IOUT1DAC0832DACDAC写写 WR2 WR2I IOUT1OUT1电流输出电流输出1 1数据锁存数据锁存 ILE ILE数据传送数据传送 XFER XFER图 9-4 DAC0832的引脚分布图二、二、DAC0832的控制信号引脚功能电流输出电流输出1 1输入写输入写DACDAC写写数据传

10、送数据传送输入寄存器的使用输入寄存器的使用1、ILE=1, WR1=0 输入寄存器直通输入寄存器直通2、 ILE=1, WR1=1 输入寄存器锁存输入寄存器锁存DAC寄存器的使用寄存器的使用1、XFER=0, WR2=0 DAC寄存器直通寄存器直通2、 XFER=0, WR2=1 DAC寄存器锁存寄存器锁存已知:已知:cs = 0三三DAC0832的工作方式的工作方式DAC0832有三种方式:直通方式、单缓冲方式和双缓冲方式。1直通方式:直通方式: 、 、 、 直接接地,ILE接电源,DAC0832工作于直通方式,此时,8位输入寄存器和8位DAC寄存器都直接处于导通状态,8位数字量到达DI0D

11、I7,就立即进行D/A转换,从输出端得到转换的模拟量。 WR1 WR2 CS XFER 当引脚8031P2.7P1DI7DI0CSXFERWR1WR2DAC0832IOUT2IOUT1+-RFRILE+5V8031P3.6P2.7P1DI7DI0CSXFERWR1WR2DAC0832IOUT2IOUT1+-RFRDAC0832单缓冲方式接口电路ILE+5V2单缓冲方式:单缓冲方式: WR1 WR2 CS XFER 当连接引脚 、 、 、 ,使得两个锁存器的一个处于直通状态,另一个处于受控制状态,或者两个被控制同时导通,DAC0832就工作于单缓冲方式,例如下图就是一种单缓冲方式的连接 对于下图

12、的单缓冲连接,只要数据DAC0832写入8位输入锁存器,就立即开始转换,转换结果通过输出端输出。3双缓冲方式:双缓冲方式:当8位输入锁存器和8位DAC寄存器分开控制导通时,DAC0832工作于双缓冲方式,双缓冲方式时单片机对DAC0832的操作分两步,第一步,使8位输入锁存器导通,将8位数字量写入8位输入锁存器中;第二步,使8位DAC寄存器导通,8位数字量从8位输入锁存器送入8位DAC寄存器。第二步只使DAC寄存器导通,在数据输入端写入的数据无意义。下图就是一种双缓冲方式的连接。P2.7P2.6P3.6P1.0P1.7 8051 Vout-VCCILECSXFERWR1WR2DI0DI7DGN

13、D AGNDVREFRfbIOUT1IOUT2+5V-5V-A+ -四、电压输出方法四、电压输出方法DAC0832是一个电流输出型是一个电流输出型DAC,要想输出电,要想输出电压要增加电流压要增加电流/电压变换环节,常用运算放大器电压变换环节,常用运算放大器实现转换(如图实现转换(如图8.3.6所示,图中所示,图中DAC0832工作工作于直通方式),图中于直通方式),图中图8.3.6 单极性输出图8.3.7 双极性输出五五DAC0832的应用的应用 D/A转换器在实际中经常作为波形发生器使用,通过它转换器在实际中经常作为波形发生器使用,通过它可以产生各种各样的波形。它的基本原理如下:利用可以产

14、生各种各样的波形。它的基本原理如下:利用D/A转换器输出模拟量与输入数字量成正比这一特点,通过程转换器输出模拟量与输入数字量成正比这一特点,通过程序控制序控制CPU向向D/A转换器送出随时间呈一定规律变化的数转换器送出随时间呈一定规律变化的数字,则字,则D/A转换器输出端就可以输出随时间按一定规律变转换器输出端就可以输出随时间按一定规律变化的波形。化的波形。00H0FFHA=00A=0FFHA=00A=0FFH直通方式举例直通方式举例 程序实例程序实例1:输出正锯齿波:输出正锯齿波 Main()() While(1)P1+;/这里假设这里假设P1口接数据输入口接数据输入 程序实例程序实例2:输

15、出负锯齿波:输出负锯齿波 Main()() While(1) P1-; /这里假设这里假设P1口接数据输入口接数据输入 程序实例程序实例3:输出三角波:输出三角波 Main()() P1=0; While(1) While(1) If(P1!=0 xFF) P1+;/这里假设这里假设P1口接数据输入口接数据输入 Else Break; While(1) If(P1!=0 x00) P1-; /这里假设这里假设P1口接数据输入口接数据输入 Else Break; 8.3.3 串行接口串行接口DAC 近年来,随着串行总线(近年来,随着串行总线(SPI、IIC、QSPI等)的飞速发展及串行总线在单片

16、机的普等)的飞速发展及串行总线在单片机的普及,采用串行接口的低成本及,采用串行接口的低成本DAC越来越多。越来越多。这里以这里以TLC5615为例介绍串行接口为例介绍串行接口DAC。 TLC5615的特点:的特点:(1)10位位CMOS电压输出;电压输出;(2)5V单电源供电;单电源供电;(3)与)与CPU三线串行接口;三线串行接口;(4)最大输出电压可达基准电压的二倍;)最大输出电压可达基准电压的二倍;(5)输出电压具有和基准电压相同极性;)输出电压具有和基准电压相同极性;(6)建立时间)建立时间12.5uS;(7)内部上电复位;)内部上电复位;(8)低功耗,最大仅)低功耗,最大仅1.75m

17、W。图图8.3.10 TLC5615内部结构内部结构TLC5615工作时序:工作时序:当片选当片选为低电平时,输入数据为低电平时,输入数据DIN由时钟由时钟SCLK同步输入,同步输入,而而且最高有效位在前,低有效位在后且最高有效位在前,低有效位在后。输入时。输入时SCLK的的上升沿上升沿把把串行输入数据串行输入数据DIN移入内部的移入内部的16位移位寄存器,位移位寄存器,片选片选的上升沿的上升沿把数据传送至把数据传送至DAC寄存器。寄存器。图图8.3.11 TLC5615典型工作时序典型工作时序结论: 要想串行输入数据和输出数据必须满足两个条件: 1、时钟SCLK的有效跳变; 2、片选CS为低

18、电平。 Note:为了使时钟的内部馈通最小,当片选为高电平时,输入时钟SCLK应当为低电平。 例:在电路中,例:在电路中,AT89S51单片机的单片机的P3.0P3.2分别控制分别控制TLC5615的片选,串行时钟输入的片选,串行时钟输入SCLK和串行数据输入和串行数据输入DIN。电路的连接采用非级联方式(电路的连接采用非级联方式(12位方式),参考电压位方式),参考电压2V,最大输出电压最大输出电压4V。 /TI 10位DAC TLC5615的示例程序 #define SPI_CLK P3_1 #define SPI_DATA P3_2 #define CS_DA P3_0 void da5

19、615(unsigned int dat) unsigned char i; dat=6;/D/A数据最高位移到数据最高位移到dat最高位,低最高位,低6位补零位补零 CS_DA=0; SPI_CLK=0; for(i=0;i12;i+) SPI_DATA=(bit)(dat&0 x8000); SPI_CLK=1; dat=1; SPI_CLK=0; CS_DA=1; SPI_CLK=0; for (i=0;i100;i+); 8.4 A/D转换器的接口与应用转换器的接口与应用 A/D转换器(转换器(Analog to Digital Converter)是将是将模拟量模拟量转换成转

20、换成数字量数字量的器件,通常也的器件,通常也用用ADC表示,它可以将模拟量比例地转换表示,它可以将模拟量比例地转换成数字量,是模拟量测量的基本器件。成数字量,是模拟量测量的基本器件。 8.4.1 ADC的转换原理及分类的转换原理及分类 8.4.2 并行接口并行接口ADC(ADC0809) 8.4.3 串行接口串行接口ADC(TLC549)1A/D 转换器的基本原理dn-1d1d0数字量输出(n位)ADC的数字化编码电路 CPS SCADC采样-保持电路采样展宽信号输入模拟电压ui(t)us(t)模拟电子开关S在采样脉冲CPS的控制下重复接通、断开的过程。S接通时,ui(t)对C充电,为采样过程

21、;S断开时,C上的电压保持不变,为保持过程。在保持过程中,采样的模拟电压经数字化编码电路转换成一组n位的二进制数输出。8.4.1 ADC的转换原理及分类2. ADC的分类 ADC的种类很多,根据转换原理,常见的ADC主要有逐次逼近式和双积分式等类型。 1) 逐次逼近式原理逐次逼近式原理 逐次逼近转换过程与用天平称物重过程非常相似,按照天逐次逼近转换过程与用天平称物重过程非常相似,按照天平称重的思路,逐次比较型平称重的思路,逐次比较型A/D转换器,就是将输入模拟转换器,就是将输入模拟信号与不同的参考电压做多次比较,使转换所得的数字量信号与不同的参考电压做多次比较,使转换所得的数字量在数值上逐次逼

22、近输入模拟量的对应值。逐次逼近式在数值上逐次逼近输入模拟量的对应值。逐次逼近式ADC具有较快的转换速率和较高的精度,转换速率介于全并式具有较快的转换速率和较高的精度,转换速率介于全并式和双积分式之间,应用非常广泛,常用的集成逐次比较型和双积分式之间,应用非常广泛,常用的集成逐次比较型A/D转换器有转换器有ADC0808/0809系列(系列(8)位、)位、AD575(10位)、位)、AD1674A(12位)等。位)等。输出数字量输入模拟电压uoui顺序脉冲发生器逐次逼近寄存器D/A转换器电压比较器转换开始前先将所有寄存器清零。开始转换以后,时钟脉冲首先将寄存器最高位置成1,使输出数字为1000。

23、这个数码被D/A转换器转换成相应的模拟电压uo,送到比较器中与ui进行比较。若uoui,说明数字过大了,故将最高位的1清除;若uoui,说明数字还不够大,应将这一位保留。然后,再按同样的方式将次高位置成1,并且经过比较以后确定这个1是否应该保留。这样逐位比较下去,一直到最低位为止。比较完毕后,寄存器中的状态就是所要求的数字量输出。Q1 Q2 Q3 Q4 Q5ui1D C11D C11D C11D C11D C1&11FF1 FF2 FF3 FF4 FF5&uoCP +Cucd2(22)d1(21)d0(20)FFA Q FFB Q FFCG1 G2 G3G4 G5QG6G7G8

24、=1(ui uo)=0(uiuo)uc=1S C1 1R1S C1 1R1S C1 1R3 位D/A 转换器转换开始前,先使Q1=Q2=Q3=Q4=0,Q5=1,第一个CP到来后,Q1=1,Q2=Q3=Q4=Q5=0,于是FFA被置1,FFB和FFC被置0。这时加到D/A转换器输入端的代码为100,并在D/A转换器的输出端得到相应的模拟电压输出uo。uo和ui在比较器中比较,当若uiuo时,比较器输出uc=1;当uiuo时,uc=0。第二个CP到来后,环形计数器右移一位,变成Q2=1,Q1=Q3=Q4=Q5=0,这时门G1打开,若原来uc=1,则FFA被置0,若原来uc=0,则FFA的1状态保

25、留。与此同时,Q2的高电平将FFB置1。第三个CP到来后,环形计数器又右移一位,一方面将FFC置1,同时将门G2打开,并根据比较器的输出决定FFB的1状态是否应该保留。第四个CP到来后,环形计数器Q4=1,Q1=Q2=Q3=Q5=0,门G3打开,根据比较器的输出决定FFC的1状态是否应该保留。第五个CP到来后,环形计数器Q5=1,Q1=Q2=Q3=Q4=0,FFA、FFB、FFC的状态作为转换结果,通过门G6、G7、G8送出。1)1)并联比较型并联比较型A/D转换器转换器: :转换速度快,主要缺点是转换速度快,主要缺点是要使用的比较器和触发器很多,随着分辨率的提高,要使用的比较器和触发器很多,

26、随着分辨率的提高,所需元件数目按几何级数增加。所需元件数目按几何级数增加。2)2)双积分型双积分型A/D转换器转换器: :性能比较稳定,转换精度高,性能比较稳定,转换精度高,具有很高的抗干扰能力,电路结构简单,其缺点是具有很高的抗干扰能力,电路结构简单,其缺点是工作速度较低,在对转换精度要求较高,而对转换工作速度较低,在对转换精度要求较高,而对转换速度要求较低的场合,如数字万用表等检测仪器中速度要求较低的场合,如数字万用表等检测仪器中. .3)3)逐次逼近型逐次逼近型A/D转换器转换器: :分辨率较高、误差较低、分辨率较高、误差较低、转换速度较快,在一定程度上兼顾了以上两种转换转换速度较快,在

27、一定程度上兼顾了以上两种转换器的优点,因此得到普遍应用。器的优点,因此得到普遍应用。 ADC转换器比较8.4.2 并行接口并行接口ADC一一. ADC0809的特点和结构的特点和结构(1)主要特性:)主要特性: 8路路8位位AD转换器,即分辨率转换器,即分辨率8位。位。 具有转换起停控制端。具有转换起停控制端。 转换时间为转换时间为100s。 单个单个5V电源供电。电源供电。 模拟输入电压范围模拟输入电压范围05V,不需零点和满,不需零点和满刻度校准。刻度校准。 工作温度范围为工作温度范围为.4085摄氏度。摄氏度。 低功耗,约低功耗,约15mW。图图3 3 ADC0809的结构框图8路模拟量

28、开关地址锁存与译码8位A/D转换器三态输出锁存器STARTCLKIN0 IN7D0 D7ABCALEVR(+)VR(-)EOCOE二二ADC0809的引脚的引脚ADC0809芯片有芯片有28个引脚,采用双列直插式封装,如图。个引脚,采用双列直插式封装,如图。 IN3 IN4 IN5 IN6 IN7 START EOC D3 OE CLOCK VCC VREF+ GND D1 IN2 IN1 IN0 ADDA ADDB ADDC ALE D7 D6 D5 D4 D0 VREF- D2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 28 27 26 25 24 23 22 21

29、 20 19 18 17 16 15 2 其中:其中:IN0IN7:8路模拟量输入端。路模拟量输入端。D0D7:8位数字量输出端。位数字量输出端。ADDA、ADDB、ADDC:3位地址输入线,用于选择位地址输入线,用于选择8路模拟通路模拟通道中的一路,选择情况见表。道中的一路,选择情况见表。 ADDCADDBADDA选择通道选择通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7ALE:地址锁存允许信号,输入,高电平有效。:地址锁存允许信号,输入,高电平有效。START:A/D转换启动信号,输入,高电平有效。转换启动信号,输入,高电平有效。EOC

30、:A/D转换结束信号,输出。当启动转换时,该引转换结束信号,输出。当启动转换时,该引脚为低电平,当脚为低电平,当A/D转换结束时,该线脚输出高电平。转换结束时,该线脚输出高电平。OE:数据输出允许信号,输入,高电平有效。当转换:数据输出允许信号,输入,高电平有效。当转换结束后,如果从该引脚输入高电平,则打开输出三态门,结束后,如果从该引脚输入高电平,则打开输出三态门,输出锁存器的数据从输出锁存器的数据从D0D7送出。送出。CLK:时钟脉冲输入端。要求时钟频率不高于:时钟脉冲输入端。要求时钟频率不高于640KHZ,通常使用频率为通常使用频率为500kHz.REF+、REF-:基准电压输入端。:基

31、准电压输入端。Vcc:电源,接:电源,接+5V电源。电源。GND:地。:地。ADC0809的工作流程如图所示:的工作流程如图所示:1输入输入3位地址,并使位地址,并使ALE=1,将地址存入地址锁存器中,经,将地址存入地址锁存器中,经地址译码器译码从地址译码器译码从8路模拟通道中选通一路模拟量送到比较器。路模拟通道中选通一路模拟量送到比较器。2送送START一高脉冲,一高脉冲,START的的上升沿上升沿使逐次逼近寄存器复使逐次逼近寄存器复位,位,下降沿下降沿启动启动A/D转换,并使转换,并使EOC信号为低电平。信号为低电平。3当转换结束时,转换的结果送入到输出三态锁存器,并使当转换结束时,转换的

32、结果送入到输出三态锁存器,并使EOC信号回到高电平,通知信号回到高电平,通知CPU已转换结束。已转换结束。4CPU使使OE为高电平,从输出端为高电平,从输出端D0D7读入数据。读入数据。三三ADC0809的工作流程的工作流程2. ADC0809的接口的接口(模拟时序方式模拟时序方式)和编程和编程#define ALEP2_4#define STARTP2_5#define OEP2_6#define EOCP2_7#include #include unsigned char adc_0809(unsigned char chanel) /地址信息放在地址信息放在chanel变量中变量中uns

33、igned char dd; /临时变量临时变量P2&=0Xf8;P2|=chanel;/P2低三位输出地址低三位输出地址ALE=1;/锁存地址锁存地址START=1;/复位逐次逼近寄存器复位逐次逼近寄存器ALE=0;START=0;/开始转换开始转换_nop_();_nop_();/延时延时while(EOC=0);/等待转换结束,转换时间等待转换结束,转换时间100usOE=1;/输出使能输出使能dd=P1;/数据暂存数据暂存OE=0;Return(dd);/返回转换值返回转换值 8.4.3 串行接口串行接口ADC TLC549是德州仪器公司推出的广泛应用的是德州仪器公司推出的广泛

34、应用的CMOS 8位位A/D转换器。该芯片有一个模拟输入端转换器。该芯片有一个模拟输入端口,口,3态的数据串行输出接口可以方便的和微处态的数据串行输出接口可以方便的和微处理器或外围设备连接。理器或外围设备连接。TLC549仅仅使用输入仅仅使用输入输出时钟(输出时钟(I/O CLOCK)和芯片选择()和芯片选择(cs)信号)信号控制数据。最大的输入输出时钟(控制数据。最大的输入输出时钟(I/O CLOCK)为为1.1MHz。 图图8.4.4 TLC549内部结构图内部结构图一组通常的控制时序为:一组通常的控制时序为:(1)将将CS置低。内部电路在测得置低。内部电路在测得CS下降沿后,再等待下降沿

35、后,再等待两个内部时钟上升沿和一个两个内部时钟上升沿和一个下降沿下降沿后,然后确认这一变化,最后自动将前一次转换结果的最高位后,然后确认这一变化,最后自动将前一次转换结果的最高位(D7)位输出位输出到到DATA OUT端上。端上。(2) 前四个前四个I/O CLOCK周期的下降沿依次移出第周期的下降沿依次移出第2、3、4和第和第5个位个位(D6、D5、D4、D3),片上采样保持电路在第,片上采样保持电路在第4个个I/O CLOCK下降沿开始采样模拟输入。下降沿开始采样模拟输入。(3)接下来的接下来的3个个I/O CLOCK周期的下降沿移出第周期的下降沿移出第6、7、8(D2、D1、D0)个转换

36、位,个转换位,(4)最后,片上采样保持电路在第最后,片上采样保持电路在第8个个I/O CLOCK周期的下降沿开始保持周期的下降沿开始保持, CS必须必须为高,或为高,或I/O CLOCK保持低电平保持低电平,这种状态需要维持,这种状态需要维持36个内部系统时钟周期个内部系统时钟周期以以等待保持和转换工作的完成。等待保持和转换工作的完成。NOTE:如果如果CS为低时为低时I/O CLOCK上出现一个有效干扰脉冲,则微处理器上出现一个有效干扰脉冲,则微处理器/控控制器将与器件的制器将与器件的I/O时序失去同步;若时序失去同步;若CS为高时出现一次有效低电平,为高时出现一次有效低电平,则将使引脚重新

37、初始化,从而脱离原转换过程。则将使引脚重新初始化,从而脱离原转换过程。在在36个内部系统时钟周期结束之前,实施步骤个内部系统时钟周期结束之前,实施步骤(1)(4),可重新启动,可重新启动一次新的一次新的A/D转换,与此同时,正在进行的转换终止,此时的输出是转换,与此同时,正在进行的转换终止,此时的输出是前一次的转换结果而不是正在进行的转换结果。前一次的转换结果而不是正在进行的转换结果。若要在特定的时刻采样模拟信号,应使第若要在特定的时刻采样模拟信号,应使第8个个I/O CLOCK时钟的下降时钟的下降沿与该时刻对应,因为芯片虽在第沿与该时刻对应,因为芯片虽在第4个个I/O CLOCK时钟下降沿开

38、始采时钟下降沿开始采样,却在第样,却在第8个个I/O CLOCK的下降沿开始保存。的下降沿开始保存。 举例举例 #include intrins.h #define Wait1us_nop_(); #define Wait2us_nop_();_nop_(); #define Wait4usWait2us;Wait2us; #define Wait8usWait4us;Wait4us; #define Wait10usWait8us;Wait2us; #define Wait30usWait10us; Wait10us;Wait10us; /*定义接口总线定义接口总线*/ sbit Clock

39、 = P1 2; /时钟口线时钟口线 sbit DataOut = P1 3; /数据输出口线数据输出口线 sbit ChipSelect = P1 4; /片选口线片选口线unsigned char ADCSelChannel(void) unsigned char ConvertValue = 0; unsigned char i; ChipSelect = 1; /芯片复位芯片复位 ChipSelect = 0; ChipSelect = 1; Clock = 0; Wait4us; ChipSelect = 0; /芯片起始芯片起始 Wait4us; /等待延时等待延时 for (i

40、= 0; i 8; i +) /输入采样转换时钟输入采样转换时钟 Clock = 1; Clock = 0; ChipSelect = 1; /开始转换开始转换 Wait30us; /等待转换结束等待转换结束 ChipSelect = 0; /读取转换结果读取转换结果 Wait4us; for (i = 0; i 8; i +) /读取读取8位串行数据位串行数据 Clock = 1; ConvertValue = 1; if (DataOut) ConvertValue |= 0 x1; Clock = 0; ChipSelect = 1; return (ConvertValue); /返回

41、转换结返回转换结果果作业 P223 第6题8031WRP2.7P0DI7DI0CSXFERWR1WR2DAC0832IOUT2IOUT1+-RFRDAC0832单缓冲方式接口电路ILE+5V【补充举例【补充举例1】 利用单缓冲方式利用单缓冲方式(总线方式总线方式),编程从,编程从DAC0832输出端分别产生锯齿波、三角波和方波。输出端分别产生锯齿波、三角波和方波。 分析:根据单缓冲方式图的连接,DAC0832的口地址为7FFFH。汇编语言编程:锯齿波锯齿波 MOV DPTR,#7FFFH CLR ALOOP:MOVX DPTR,A INC A SJMP LOOP三角波:三角波: MOV DPT

42、R,#7FFFH CLR ALOOP1:MOVX DPTR,A INC A CJNE A,#0FFH,LOOP1LOOP2:MOVX DPTR,A DEC A JNZ LOOP2 SJMP LOOP1方波:方波: MOV DPTR,#7FFFHLOOP:MOV A,#00H MOVX DPTR,A ACALL DELAY MOV A,#FFH MOVX DPTR,A ACALL DELAY SJMP LOOPDELAY:MOV R7,#0FFH DJNZ R7,$ RETC语言编程:锯齿波:#include /定义绝对地址访问#define uchar unsigned char#define

43、 DAC0832 XBYTE0 x7FFFvoid main()uchar i;while(1)for (i=0;i0 xff;i+)DAC0832=i;三角波:#include /定义绝对地址访问#define uchar unsigned char#define DAC0832 XBYTE0 x7FFFvoid main()uchar i;while(1)for (i=0;i0;i-)DAC0832=i;方波:方波:#include /定义绝对地址访问定义绝对地址访问#define uchar unsigned char#define DAC0832 XBYTE0 x7FFFvoid delay(void);void main()uchar i;while(1)DAC0832=0; /输出低电平输出低电平delay(); /延时延时DAC0832=0 xff; /输出高电平输出高电平delay(); /延时延时void delay() /延时函数延时函数uchar i;for (i=0;i0 xff;i+) ;四四ADC0809与与MCS-51单片机的接口(总线方式)单片机的接口(总线方式)下图是一个ADC0809与8051的一个接口电路图。1硬件连接硬件连接P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7ALE WR P2.7R

温馨提示

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

评论

0/150

提交评论