基于STM32和AD5791的高精度数模转换电路设计.docx

基于STM32和AD5791的高精度数模转换电路设计.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

?

?

基于STM32和AD5791的高精度数模转换电路设计

?

?

摘要:现在很多智能仪表中,要求有超高精度的电压信号输出,而且要求刷新率高、噪声低,常规的处理电路比较复杂,难以实现自动校准。为了解决该问题,采用了20位的高精度数模转换器(DAC)AD5791,并应用于基于STM32的测量仪表中。本文详细介绍了软硬件设计。此系统实现了超高精度的单路可调电压输出,精度高和噪声低。

关键词:数模转换器;STM32;AD5791

0引言

现在很多智能测量仪表要求具有超高精度的电压信号,同时要求高稳定性、高线形度和低噪声、低温度漂移。这样的模拟系统设计面临复杂的工程技术挑战,常规的方法是采用多个较低分辨率的DAC和大量分立元件与支持IC整合在一起,同时伴随着相当大的开发风险和高代价的修改时间,才能优化电路参数、减小误差和设计出复杂的自动校准电路,这样不仅增加了硬件设计的复杂性,通常达到的精度也不是很高。本系统设计的基于STM32微处理器和AD5791的20位超高精度测量系统中,实现了单路超高精度可调电压信号的输出,输出电压信号的幅值可以通过软件来设置。该系统可靠性高,不需要校准电路。

AD5791是美国ADI公司推出的一款高性能的单路20位电压输出数模转换器,它是业界首款具有真正1ppm(百万分之一)分辨率和精度的DAC器件[1-2]。双极工作电压高达33V。同时AD5791具有1ppm的分辨率和精度、低噪声1ppm以下)、快速刷新率(1us)和非常低的输出漂移(在1ppm以下)。该器件采用了多功能三线串行接口,并与SPI、QSPITM、MICROWIRETM和DSP接口标准兼容。该器件集成了一个上电复位电路,以确保DAC输出能达到OV,并保持在已知输出阻抗状态,直到有效写入为止。该器件还提供了一个输出钳位功能,这使得其输出在一个限定的负载状态。综上知,采用该款芯片,减少了复杂校准算法的必要性,能极大地简化设计任务、减少开发和维护成本,同时降低风险。国内相关学者在精密电压源和医疗仪器中也得到了应用[3-4]。

本系统的Cortex-M3处理器为意法半导体公司推出的32位RISC处理器STM32F103VCT6,主频最高可达72MHz,应用也比较广泛[5]。该处理器具有256KB的程序存储器,48KB的RAM,同时它有8个定时器、5路串口、3路SPI、2路I2C,具有独立看门狗和窗口看门狗,非常适合于与AD5791构成高精度的测量系统。

1硬件电路设计

数模转换电路中采用了1片参考电压基准产生芯片REF02AZ、1片超高精度双路轨至轨输出运算放大器AD8676、1片高精度单路轨至轨输出运算放大器AD8675和20位超高精度数模转换芯片AD5791构成。该电路性能稳定,运行效果非常好。下面对电路进行详细分析。

AD5791中,VDD为+15V,VSS为-15V。VREFPS和VREFPF用以提供AD5791的正参考电压输入,输入范围5V到VDD-2.5V,本测试系统中使用了+5V的参考电压。VREFNS和VREFNF用以提供AD5791的负参考电压输入,输入范围VSS+2.5到OV,本测试系统中使用了-5V的参考电压。AD5791的工作电压为3.3V。+5V参考电压由参考电压产生芯片REF02AZ产生,负电压是通过由OP177构成的单位增益反向放大器来实现。±SV电压产生电路如图1所示。

AD5791有7个用于与STM32处理器进行通讯的引脚,下面逐一作详细介绍:

RESET/:复位引脚,可以实现AD5791的复位;

CLR/:清零引脚,可以将AD5791内部DAC寄存器的值恢复到用户定义的值,并更新DAC的输出;

LDAC/:用于更新AD5791内部DAC寄存器的值,并更新DAC的输出;

SDO:串行数据输出引脚;

SDIN:串行数据输入引脚;

SCLK:串行通讯时钟信号输入引脚,最高频率可高达35MHz;

SYNC/:串行輸入数据的帧同步信号;

由于STM32处理器采用了I/O口模拟SPI通讯的方式,所以通讯控制引脚可以连接到空余的STM32处理器的任何一个I/O引脚上,只要做相应配置就可以。AD5791的应用电路图如图2所示。其中,AD8675构成电压跟随器,作为AD5791的输出缓冲。硬件电路上模拟地和数字地分开,并在一点接地,同时各个电源都加有滤波电容,以消除干扰。

2软件设计

系统采用模拟SPI总线通信,软件的关键是STM32处理器和AD5791之间的时序匹配,输出电压值到AD5791的DAC寄存器的值的计算,下面分别进行详细介绍。

2.1AD5791芯片配置

AD5791的配置,主要在于AD5791的控制寄存器的配置。为了使得AD5791和STM32处理器匹配使用

文档评论(0)

135****1100 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档