8位D/A转换器-DAC08321. 引脚及其功能 DAC0832是双列直插式8位D/A转换器。能完成数字量输入到模拟量(电流)输出的转换。图1-1和图1-2分别为DAC0832的引脚图和内部结构图。其主要参数如下:分辨率为8位,转换时间为1μs,满量程误差为±1LSB,参考电压为(+10~-10)V,供电电源为(+5~+15)V,逻辑电平输入与TTL兼容。从图1-1中可见,在DAC0832中有两级锁存器,第一级锁存器称为输入寄存器,它的允许锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号 /XFER。 file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png图1-1中,当ILE为高电平,片选信号 /CS 和写信号 /WR1为低电平时,输入寄存器控制信号为1,这种情况下,输入寄存器的输出随输入而变化。此后,当 /WR1由低电平变高时,控制信号成为低电平,此时,数据被锁存到输入寄存器中,这样输入寄存器的输出端不再随外部数据DB的变化而变化。 对第二级锁存来说,传送控制信号 /XFER 和写信号 /WR2同时为低电平时,二级锁存控制信号为高电平,8位的DAC寄存器的输出随输入而变化,此后,当 /WR2由低电平变高时,控制信号变为低电平,于是将输入寄存器的信息锁存到DAC寄存器中。 图1-1中其余各引脚的功能定义如下: (1)、DI7~DI0 :8位的数据输入端,DI7为最高位。 (2)、IOUT1 :模拟电流输出端1,当DAC寄存器中数据全为1时,输出电流最大,当 DAC寄存器中数据全为0时,输出电流为0。 (3)、IOUT2 :模拟电流输出端2, IOUT2与IOUT1的和为一个常数,即IOUT1+IOUT2=常数。 (4)、RFB :反馈电阻引出端,DAC0832内部已经有反馈电阻,所以 RFB端可以直接接到外部运算放大器的输出端,这样相当于将一个反馈电阻接在运算放大器的输出端和输入端之间。 (5)、VREF :参考电压输入端,此端可接一个正电压,也可接一个负电压,它决定0至255的数字量转化出来的模拟量电压值的幅度,VREF范围为(+10~-10)V。VREF端与D/A内部T形电阻网络相连。 (6)、Vcc :芯片供电电压,范围为(+5~ 15)V。 (7)、AGND :模拟量地,即模拟电路接地端。 (8)、DGND :数字量地。 file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg 图1-2、DAC0832内部结构图 2、 DAC0832的工作方式DAC0832可处于三种不同的工作方式: 1、 直通方式 :当ILE接高电平,file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png、file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png、file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image010.png和file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image012.png都接数字地时,DAC处于直通方式,8位数字量一旦到达DI7~DI0输入端,就立即加到8位D/A转换器,被转换成模拟量。例如在构成波形发生器的场合,就要用到这种方式,即把要产生基本波形的数据存在ROM中,连续取出送到DAC去转换成电压信号。 2、 单缓冲方式 :只要把两个寄存器中的任何一个接成直通方式,而用另一个锁存器数据,DAC就可处于单缓冲工作方式。一般的做法是将file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image010.png和file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image012.png都接地,使DAC寄存器处于直通方式,另外把ILE接高电平,file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png接端口地址译码信号,file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png接CPU的file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image014.png信号,这样就可以通过一条MOVX指令,选中该端口,使file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png和file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png有效,启动D/A转换。 3、 双缓冲方式 :主要在以下两种情况下需要用双缓冲方式的D/A转换。 l 需在程序的控制下,先把转换的数据输入输入缓存器,然后在某个时刻再启动D/A转换。这样,可先选中file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png端口,把数据写入输入寄存器;再选中file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image012.png端口,把输入寄存器内容写入DAC寄存器,实现D/A转换。 l 在需要同步进行D/A转换的多路DAC系统中,采用双缓冲方式,可以在不同的时刻把要转换的数据打入各DAC的输入寄存器,然后由一个转换命令同时启动多个DAC转换。先用3条输出指令选择3个端口,分别将数据写入各DAC的输入寄存器,当数据准备就绪后,再执行一次写操作,使file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image012.png变低同时选通3个D/A的DAC寄存器,实现同步转换。 3、DAC0832的应用图1-3为单片机和DAC0832直通方式输出连接图,运放输出电路输出电压为 UOUT=-(D/256)*VREF, 例如上图中向DAC0832传送的8位数据量40H(01000000B), 则输出电压UOUT=-(64/256)*5V=-1.25V,其输出过程可用MOV P1 , #40H一条指令完成。 file:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image016.jpg 图1-3、单片机和DAC0832直通方式输出连接图
|