数模转换器DAC7724与AT89S51单片机的接口及程序设计
扫描二维码
随时随地手机看文章
摘要:介绍了一种性能优良的低功耗4通道12位并行D/A转换器DAC7724的功能特点和工作过程,给出了DAC7724与51单片机的接口电路及其汇编语言应用程序,最后提出了一种利用DAC输出大范围电压(-20V~+20V)的实现方法。
关键词:数/模转换;单片机;汇编语言;DAC7724
0 引言
在微计算机电机控制的机电设备中,常常需要把数字信号变成模拟信号,以驱动机电设备的运行。在这个过程中,D/A转换是一个十分重要的环节,同时也是微计算机电机控制系统重要的组成部分。
1 DAC7724的主要特点
DAC7724是TI公司生产的12位并行输入4通道D/A转换器,该转换器具有以下特征:
◇±15V以内的双电源工作;
◇输出电压:VREFL~VREFH,VREF:-10~+10V;
◇采用12位并口输入和4通道隔离输出方式;
◇可以上电自动复位;
◇转换速率快,更新率为1 MHz;
◇工作温度范围在-40~85℃的范围内。
2 内部结构及引脚说明
2.1 结构原理
DAC7724的内部结构如图1所示,它带有双缓冲区的逻辑电路,可以同时更新4个通道的数据,另外,它还具有回读电路,可以读取内部寄存器的内容。器件中的各输入寄存器(Input Register)均为电平触发,并可由A0、A1、和四个信号控制。当、为低电平时,可以向输入寄存器写数据,具体写入哪个数据由A0和A1决定。DAC寄存器(DAC Register)随着输入寄存器的更新而更新,输出通道(Vout)是否输出则由控制信号决定,当为低电平时,各通道皆输出相应电压,而当为高电平时,各通道的输入数据便被锁存在DAC寄存器中。因此,设计时可以通过控制A0、A1、、和来使为高电平,再依次修改A、B、C、D四通道数据;然后再使为低电平,从而完成四通道同时输出。每个通道的输出电压为:
其中,VREFL为负参考电压,VREFH为正参考电压,N为微处理器输出二进制数,N的取值范围是0~4096。
2.2 引脚说明
DAC7724有PLCC-28和SO-28两种封装,其中SO-28封装的引脚排列如图2所示,各引脚的定义见表1所列。
3 DAC7724与89S51单片机的并行接口
考虑到DAC7724为并行输入,需要占用12位I/O引脚,因此,在电路设计时,可以扩展一片8255来丰富单片机的I/O资源,其电路如图3所示。图3中,8255A的PA、PB、PC及控制寄存器的地址分别是7FFCH、7FFDH、7FFEH和7FFFH;DAC7724输出VOUTA~V0UTD的选择则由8255的PC1和PC2两位来控制。
该电路可在A、B、C、D四个通道分别输出-10~+10V的电压,也可利用其中两个通道输出-20~+20V电压。现以A、B通道为例,并以VA为VOUT+、以VB为VOUT-,则VOUT的输出范围可达-20~+20V,具体见表2所列。
设A通道数字信号在片内40H、41H单元中,其中40H为低8位、41H为高4位;B通道数字信号在片内42H、43H单元中,其中42H为低8位、43H为高4位。那么,VOUTA~VOUTB轮流输出电压的汇编语言程序为:
若使用中还需要VOUTC、VOUTD通道输出,也可以参照上面的程序来编写。
4 结束语
DAC7724具有4个输出通道,每个通道可独立控制,且均可直接输出电压信号,这一特点与电流输出模式的数模转换器相比具有很大的优势,因为若输出为电流模式,则需要另外设计专门的电路来将输出的小电流转换成所需的电压信号,这样不但会浪费系统的硬件资源,同时也给软件设计增加了麻烦,而附加的电路还可能成为噪声和干扰的来源。而选用DAC7724则可节省系统资源,大大简化了电路设计的复杂程度,也避免了噪声的串入。