《2022年ADDA转换电路设计调试及数据处理 .pdf》由会员分享,可在线阅读,更多相关《2022年ADDA转换电路设计调试及数据处理 .pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、AD、DA 转换电路设计、调试及数据处理实验报告老师: 仇国庆姓名:张露羲班级: 0811005 学号:2010212903 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 10 页 - - - - - - - - - 一、AD 转换电路设计、调试及数据处理1、实验器材带有 PROTUSE 和 KEIL 软件的 PC 机一台2、实验原理这次试验但中用到的A/D 转换芯片是 ADC0809ADC0809 是带有 8 位 A/D 转换器、 8 路多路开关以及微处理机兼容的控制
2、逻辑的 CMOS 组件。它是逐次逼近式A/D 转换器,可以和单片机直接接口。(1)ADC0809 的内部逻辑结构由下图可知, ADC0809 由一个 8 路模拟开关、一个地址锁存与译码器、一个 A/D 转换器和一个三态输出锁存器组成。多路开关可选通8 个模拟通道,允许 8 路模拟量分时输入, 共用 A/D 转换器进行转换。 三态输出锁器用于锁存A/D转换完的数字量,当 OE 端为高电平时,才可以从三态输出锁存器取走转换完的数据。(2)ADC0809 引脚结构ADC0809 各脚功能如下:D7-D0:8 位数字量输出引脚。IN0-IN7 :8 位模拟量输入引脚。VCC:+5V 工作电压。GND:
3、地。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 10 页 - - - - - - - - - REF(+) :参考电压正端。REF(-) :参考电压负端。START:A/D 转换启动信号输入端。ALE:地址锁存允许信号输入端。 (以上两种信号用于启动A/D 转换) . EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。OE:输出允许控制端,用以打开三态数据输出锁存器。CLK:时钟信号输入端(一般为500KHz) 。A、B、C:地址输入线。ADC0
4、809 对输入模拟量要求:信号单极性,电压范围是05V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变, 如若模拟量变化太快, 则需在输入前增加采样保持电路。地址输入和控制线: 4 条ALE 为地址锁存允许输入线,高电平有效。当ALE 线为高电平时,地址锁存与译码器将 A,B,C 三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B 和 C 为地址输入线,用于选通IN0IN7 上的一路模拟量输入。通道选择表如下表所示。数字量输出及控制线: 11条ST 为转换启动信号。 当 ST 上跳沿时,所有内部寄存器清零;下跳沿时,开始进行 A/D 转换;在转换
5、期间, ST 应保持低电平。EOC 为转换结束信号。当EOC 为高电平时,表明转换结束;否则,表明正在进行 A/D 转换。OE 为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。 OE1,输出转换得到的数据; OE0,输出数据线呈高阻状态。D7D0 为数字量输出线。CLK 为时钟输入信号线。 因 ADC0809 的内部没有时钟电路, 所需时钟信号必须由外界提供,通常使用频率为500KHZ,VREF() ,VREF()为参考电压输入。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - -
6、- - 第 3 页,共 10 页 - - - - - - - - - (3)ADC0809 应用说明1) ADC0809 内部带有输出锁存器,可以与AT89S51单片机直接相连。2) 初始化时,使 ST 和 OE 信号全为低电平。3) 送要转换的哪一通道的地址到A,B,C 端口上。4) 在 ST 端给出一个至少有100ns宽的正脉冲信号。5) 是否转换完毕,我们根据EOC 信号来判断。6) 当 EOC 变为高电平时,这时给OE 为高电平,转换的数据就输出给单片机了3、实验任务从 ADC0809 的通道 IN3 输入 05V 之间的模拟量,通过ADC0809 转换成数字量在数码管上以十进制形成显
7、示出来。ADC0809 的 VREF 接5V 电压。4、试验结果(1) 进行 A/D 转换时,采用查询 EOC 的标志信号来检测A/D 转换是否完毕,若完毕则把数据通过P3 端口读入,经过数据处理之后在数码管上显示。(2) 进行 A/D 转换之前,要启动转换的方法:ABC110 选择第三通道ST0,ST1,ST0 产生启动转换的正脉冲信号试验电路图如下名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 10 页 - - - - - - - - - C 语言源程序#includ
8、e unsigned char code dispbitcode=0 xfe,0 xfd,0 xfb,0 xf7, 0 xef,0 xdf,0 xbf,0 x7f; unsignedcharcodedispcode=0 x3f,0 x06,0 x5b,0 x4f,0 x66, 0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x00; unsigned char dispbuf8=10,10,10,10,10,0,0,0; unsigned char dispcount; sbit ST=P30; sbit OE=P31; sbit EOC=P32; unsigned char
9、channel=0 xbc; unsigned char getdata; void main(void) TMOD=0 x01; TH0=(65536-4000)/256; TL0=(65536-4000)%256; TR0=1; ET0=1; EA=1; P3=channel; while(1) ST=0; ST=1; ST=0; while(EOC=0); OE=1; getdata=P0; OE=0; dispbuf2=getdata/100; getdata=getdata%10; dispbuf1=getdata/10; dispbuf0=getdata%10; void t0(v
10、oid) interrupt 1 using 0 TH0=(65536-4000)/256; TL0=(65536-4000)%256; P1=dispcodedispbufdispcount; P2=dispbitcodedispcount; dispcount+; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 10 页 - - - - - - - - - if(dispcount=8) dispcount=0; 二、DA 转换电路设计、调试及数据处理1、实验器材带有
11、 PROTUSE 和 KEIL 软件的 PC 机一台2、实验原理这次试验但中用到的D/A 转换芯片是 DAC0832, DAC0832 是一个 8位并行、中速(建立时间 1us)、电流型、低廉的A/D 转换芯片。(1)引脚和逻辑结构( 20 个引脚、双列直插式)V cc:芯片电源电压 ,,+5V+15V VREF:参考电压, -10V+10V RFB:反馈电阻引出端 ,,此端可接运算放大器输出端AGND:模拟信号地DGND:数字信号地DI7 DI0:数字量输入信号,其中: DI0 为最低位, DI7 为最高位ILE:输入锁存允许信号 , 高电平有效CS:片选信号 , 低电平有效WR1:写信号
12、1,低电平有效当 ILE 、CS、WR1 同时有效时 , LE=1,输入寄存器的输出随输入而变化8位输入8位DAC 8位D/A VREF IOUT2RFBAGNDVCCDGNDDI7DI0 CS WR1 WR2 XFER ILE LE LE IOUT1& & & RFB名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 10 页 - - - - - - - - - WR1 , LE=0,将输入数据锁存到输入寄存器XFER:转移控制信号,低电平有效WR2:写信号 2,低电平有效
13、当 XFER、 WR2 同时有效时 , LE2=1, DAC 寄存器输出随输入而变化; WR1 , LE=0, 将输入数据锁存到DAC 寄存器,数据进入 D/A 转换器,开始 D/A 转换IOUT1:模拟电流输出端 1,当输入数字为全 ”1”时, 输出电流最大,全 ”0”时, 输出电流为 0 IOUT2:模拟电流输出端2 ,IOUT1 + I OUT2 = 常数(2)DAC0832 与微机系统的连接1)单缓冲工作方式一个寄存器工作于直通状态,另一个工作于受控锁存器状态,在不要求多相D/A 同时输出时, 可以采用单缓冲方式,此时只需一次写操作,就开始转换,可以提高 D/A 的数据吞吐量。单缓冲工
14、作方式: 输入寄存器工作于受控状态,DAC 寄存器工作于直通状态2) 双缓冲工作方式 : 两个寄存器均工作于受控锁存器状态+ - Vo port 数 据 线地址译码PC总线IOW A0 A9 D0 D7 +5V CS DAC0832DI0 IOUT1IOUT2RFBXFERWR2WR1 ILE 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 10 页 - - - - - - - - - 当要求多个模拟量同时输出时,可采用双重缓冲方式。3、试验结果试验电路图如下:DAC08
15、32PC总线数 据 线WR1IOW DI0 DI7 D0 D7 +5V ILE+ - Vo IOUT1 IOUT2 RFBWR2CS 地址译码A0 A9 XFERVREF - 5V port1port2DGND AGND地址译码port1XFERWR2CSWR1 ILE+D/A 转换DI7DI0 Vo1 port2XFERWR2CSWR1 ILE+D/A 转换DI7DI0 Vo2 port3DAC083DAC083D7 D0 A9 A0 IOWPC总线+5+5名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -
16、- - - - - 第 8 页,共 10 页 - - - - - - - - - C 语言源程序#include #include #include #include #define uchar unsigned char #define uint unsigned int #define XF XBYTE0 x0000 / /定义地址 0000 0000,XF 为低电平,使能数码管段选void delay_ms(uint); uchar count; void delay_ms(uint z) /延时函数 uint x,y; for(x=z;x0;x-) for(y=110;y0;y-);
17、void main() uchar num=0; /赋初值 0 while(1) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 10 页 - - - - - - - - - XF=255*(1+sin(2*3.14*num/64)/2; num+; if(num=64) num=0; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 10 页 - - - - - - - - -