DAC0832转换器

D/A转换器简介

D/A转换器的类型很多。输入数据一般为并行数据,也有串行数据。并行输入的数据有8位、10位、12位等。D/A转换器的直接输出是电流量,若片内有输出放大器,则能输出电压量,并能实现单极性或双极性电压输出。D/A转换器的转换速度较快,一般其电流建立时间为1μs。有些D/A转换器具有其它功能,如能输出多路模拟量、输出工业控制用的标准电流信号。典型的D/A转换器如8位通用型DAC0832、12位的DAC1208、电压输出型的AD558和多路输出型AD7528。

DAC0832外部特性

DAC0832是8位分辨率的D/A转换集成芯片,由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成,外部是20引脚的双列直插式芯片,片内有三态输入缓冲器(可以直接连接CPU的数据总线,使工作方式更加灵活)。因为其转换控制方便、价格低廉等特点,在微机系统中得到广泛应用。

DAC0832管脚定义:
DAC0832转换器_第1张图片

  • D0~D7:8位数据输入线
  • ILE:数据锁存允许控制输入线,高电平有效
  • CS#:片选信号
  • WR1#:数据锁存器写选通输入线
  • XFER#:数据传输控制信号输入线,低电平有效
  • WR2#:DAC寄 存器选通输入线,负脉冲有效
  • IOUT1:电流输出端1,一般IOUTI+IOUT2=常数
  • IOUT2:电流输出端2
  • RFB:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度
  • Vcc:接电源
  • DGND:接数字地,芯片数字信号接地点
  • AGND:接模拟地,芯片模拟信号接地点
  • VREF:参考电压输入端,可接正电压,也可接负电压,范围为-10V~+10V。

内部结构和工作方式

DAC0832内部有两个寄存器,能实现三种工作方式。在双缓冲工作方式下,利用输入寄存器暂存数据,给使用带来方便,可以实现多路数字量的同步转换输出。(地是点位零点,但电平的高低是相对而言的,对于负电平来说地就是高电平。一般来说,接地就是低电平。)

  • 双缓冲方式:控制选通1和2。
  • 单缓冲方式:控制选通1或2,即一个控制选通,另一个接低电平。
  • 直通方式:不控制选通1和2,两个直接接低电平。
    DAC0832转换器_第2张图片
    当ILE高电平,CS低电平, WR1低电平时,数据被所存到第一个8位的锁存器中,LE2的控制引脚分别是WR2HE,XFER,当这两个引脚都为低电平时,数据被所存到DAC寄存器,然后数据被送到8位转换器中被转换。0832是电流型,若需要电压信号,可用运算放大器将电流信号转换成电压信号:
    DAC0832转换器_第3张图片

电压输出电路的连接

DAC0832以电流形式输出转换结果,得到电压形式需外加I/V转换的电路,常采用运算放大器。下图是DAC0832的电压输出电路。
DAC0832转换器_第4张图片
(a) 单极性输出; (b) 双极性输出

  • DAC转化器转换的是数字量来自8位的数据输入引脚D0—D1,这样的DA转化器转换的最小的数字量是0,最大数字量为255,。那么在这个最大量和最小量之间的数字量的转换电流和电压,对于单极性输出电路,输出电压的格式为:Vout=(D/256)×Vref
  • 式中D为输入数字量的十进制值。因为转换结果Iout1接运算放大器的反相端,所以式中有一个负号。若VREF=+5V,D= 0~255 (00H~FFH) 时,Vout=- (0~4.98) V。
  • 通过调整运算放大器的调零电位器,可以对D/A芯片进行零点补偿。通过调节外接于反馈回路的电位器RP1,可以调整满量程。

单缓冲方式的电路连接图

把LE2的引脚直接接地了,LE1信号的引脚是可控制的,其中ILE直接接高电平,WR1和CS是可以控制的,输出端有放大器,输出电压信号。
DAC0832转换器_第5张图片

单缓冲方式程序段

利用DAC0832实现D/A变换。0832工作在单缓冲方式,设0832端口地址PORT,待转换数据在DATA单元中,这个芯片不需要初始化,就是将数据送到接口芯片的端口就按照其工作方式开始转换了。
程序段:

MOV AL, DATA
MOV DX, PORT
OUT DX, AL
HLT          ;暂停

双缓冲方式的电路连接图

CS,WR1,ILE这三个引脚控制了第一个寄存器的开关,XFER,WR2这两个引脚控制了第二个寄存器的输入开关,所以这两组开关在这个线路中都是可控的,因此是双缓冲工作方式。
DAC0832转换器_第6张图片

双缓冲方式下工作的时序图

(1)当被转化的数据放到数据线上,片选信号开关打开即CS来一个低脉冲,CPU再给WR1一个低脉冲信号,这两个信号是同时,ILE一直保持高电平,这时数据就被锁存到第一个寄存器中了。WR2和XEFR同时给个低脉冲数据被锁存到第二个寄存器即DAC寄存器,进而被送到转换寄存器转换。

(2)双缓冲工作方式

  • 在这种工作方式下,CPU要对0832进行两步写操作:
    ①将数据写人输人寄存器
    ②将输入寄存器的内容写入DAC寄存器。具体过程为:当ILE=1,CS=WR1=0时,待转换的数据被写人输人寄存器;随后,WR1由低变高,数据出现在输人寄存器的输出端。在整个WR1为高电平期间,输人寄存器的输出端将不再随其输人端的变化而变化,从而保证了在数模转换时数据稳定不变。
  • 锁存在输入寄存器中的数据此时并不能进人DAC寄存器,只有当XFER=WR2=0时,数据才能写人DAC寄存器,并同时启动变换。双缓冲的工作时序如图8-10所示。其连接方法是: ILE固定接+ 5V,WR1、WR2均接到 IOW,而CS和XFER分别接到两个端口的地址译码信号线,即0832占用两个端口地址。

DAC0832转换器_第7张图片

双缓冲方式程序段

MOV AL DATA
MOV DX, PORT1
OUT DX,AL
MOV DX, PORT2
OUT DX,AL
HLT

DAC0832的应用

DAC0832的应用一:
根据下图的电路连接,编写一个输出锯齿波的程序,周期任意。DC0832工作在单缓冲方式,端口地址为0278H。
DAC0832转换器_第8张图片
题目分析:
正向锯齿波的规律是电压从最小值开始逐渐上升,上升到最大值时立刻跳变为最小值,如此循环(反向锯齿波正好相反,先从最小值跳变为最大值,然后逐渐下降到最小值)。所以只要从0开始往0832输人数据,每次加1,直到最大值FFH,然后再从0开始下一个周期。这个过程循环执行即可在0832输出端得到一个正向锯齿波。以下是产生反向锯齿波的程序段,这里使用了一个技巧,用0减1直接得到最大值FFH,这样在锯齿波的齿
根部可以少做一次判断。

程序设计如下:

      MOV DX, 0278H          ;端口地址送DX
      MOV AL,0               ;初始值送AL
NEXT: OUT DX,AL              ;输出数字量到D/A转换器
      DEC AL                 ;数字量减1
      JMP NEXT               ;循环

DAC0832的应用二:

已知0832输出电压范围为0~5V,现希望输出电压为1-4V,周期任意的正向锯齿波。如何输出正向锯齿波?

题目分析:
考虑到输出波形应能够停止,程序中增加了在有任意键按下时则停止输出的功能。由题知,已知当输出为5V时,输入数字量为最大值255,则1V电压对应的数字量=1X255/5=51=33H,4V电压对应的数字量是4*255/5=204=CCH

程序设计如下:

       MOV  DX, 0278H      ;0832的端口地址送DX
NEXT1: MOV  AL, 33H         ;最低输出电压对应的数字量送AL
NEXT2: OUT  DX, AL          ;输出数字量到0832
       INC  AL              ;数字量加1
       CALL DELAY           ;调用延时子程序
       CMP  AL, OCCH        ;到最大值(输出4V电压)?
	   JNA  NEXT2			;若没有到最大值继续输出
       MOV  AH, 1			;达到最大输出则判断有无任意键按下
 	   INT  16H				;键盘中断调用
 	   J2   NEXT1			;若无任意键按下则重新开始下一个周期
	   HLT					;有键按下则退出
DELAY  PROC
	   MOV  CX,100			;延时子程序(延时常数可修改)
DELAYI:LOOP DELAY1
	   RET
DELAY  ENDP

DAC0832的应用三:
(1)D/A转换产生一个如图所示踞齿波:

   MOV DX,PORTA
   MOV AL,OFFH
ROTATE: INC AL
   OUT DX,AL
   JMP ROTATE

DAC0832转换器_第9张图片
(2)D/A转换产生一个如图所示踞齿波:

   MOV DX,PORTA
   MOV AL,O0H
ROTATE: DEC AL
   OUT DX,AL
   JMP ROTATE

DAC0832转换器_第10张图片
(3)产生周期性三角波:

	  MOV DX,PORT 
	  MOV AL,OFFH
DON1: INC AL
	  OUT DX,AL
 	  CMP AL,0FFH   ;直接比较是否相等,不相等循环
	  JNZ DON1
DON2: DEC AL
	  OUT DX, AL
	  CMP AL, 0
	  JNZ DON2
	  JMP DON1      ;无条件跳变,产生周期波型

DAC0832转换器_第11张图片

你可能感兴趣的:(微型计算机技术及应用笔记)