EDN China > 技术文章 > 可编程器件 > PLD > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

(多图) MAX1032结合CPLD的应用

国外电子元器件 戴佳璐?? 2010年11月16日 ?? 收藏0

  3 硬件设计

  图3所示是本系统的结构框图。由图3可见,模拟采样信号先经过一个运放。运放的作用是降低输入阻抗。以达到MAX1032输入阻抗小于17kΩ的要求。之后,再将利用CPLD控制MAX1032进行采样,采样结果回送至CPLD,之后经过处理后的数据传到系统,由系统再将一系列二进制数换算成最终的结果。框图里的系统可以是嵌入式微控制器,也可以是数字输入输出卡等控制系统。

本系统的结构框图

  图4所示是MAX1032的应用电路图。由于MAX1032只允许输入阻抗小于17 kΩ,而有的采样信号不一定能满足这一要求,故需要对采样信号进行一定处理,以降低信号的输出阻抗。由于射极跟随器的输出阻抗趋于零,故将待采样信号连到射极跟随器上可以有效降低其输出阻抗。本文选用的运放为OP07,该运放具有很低的输入失调电压和漂移,而且精度相当高,适合作为模拟信号前置运放。如将OP07接成负反馈模式,使输出等于1+R1/R2,并将滑动变阻器R1调至0Ω,那么它就可以当做电压跟随器使用。

MAX1032的应用电路图

  图4中,MAX1032的外部参考电压由LTC6652提供。LTC6652是高精度电位参考芯片,本文使用4.096 V作为MAX1032外部参考电压。REFCAP在此模式下可接到5 V电源。由于MAX1032是由CPLD控制,故将DVDDO连到3.3 V。

  4 CPLD逻辑设计

  CPLD和MAX1032的连接图如图5所示。其中,CPLD可以选用Ahera公司的MAXII系列器件EPM240或EPM570。

CPLD和MAX1032的连接图

  CPID的程序设计主要由两部分组成,第一部分是产生MAX1032的控制信号,第二部分是对MAX1032的输出结果进行处理。

  clk_1MHZ为CPLD时钟,选1 MHz。通过CPLD可在内部对时钟进行分频,输出SCLK可作为MAX1032的输入时钟。DI由系统给CPLD输入,作用是选择MAX1032的控制字,同时也是CPLD的复位控制。DIN_out是给MAX1032加载的串行控制字,其加载时序可利用计数器控制。本例采用外部时钟模式,模拟输入配置字为10000110。第七位1是字开始标志;六到四位为0表示选择CH0通道输入,第三位为0表示采样信号单端输入;二到零位为110,表示量程选择0~12 V。模式控制字为10001000,第七位1是字开始标志,六到四位为0表示使用外部时钟模式。三到零位为100 0是芯片强制输入。加载完模拟输入配置字和模式控制字之后,就可以启动采样,以加载转换启动字开始采样。转换启动字为10000000时,第七位1是字开始标志,六到四位为0表示选择CH0通道输入,三到零位为0000是芯片强制输入。MAX1032控制协议和SPI类似,在SCLK的上跳沿输入,下跳沿输出。片选信号CSn时序利用计数器控制,每个控制字之间的CSn必须有一个高脉冲,脉宽至少40 ns(tCSPW),每个控制字输入完后,CSn可以立即拉高(tCSH)。以下是可综合的MAX1032控制程序的主要代码:

程序

程序

程序

  图6所示是Modelsim的仿真波形。SCLK上跳沿DIN_out的数据被MAX1032读取。

Modelsim的仿真波形

点击看原图

  程序的第二部分的作用是将MAX1032输出的串行采样结果存入CPLD内部的一个14位寄存器。采样结果DOUT_in_S是14位的串行序列。CPLD在SCLK的上跳沿读取数据后,可将其存到一个内部寄存器,再由DOUT选择输出寄存器的高或低八位数据读出。最后的采样结果是并行输出的。总共2个字节,末两位数据无效。对于外部时钟模式,可从加载转换启动字开始计算,在第16个SCLK下跳沿,芯片将输入采样结果。得到结果即可按照公式(采样电压=12x(转换成十进制的输出结果)/16384)进行计算。以下是这部分功能的可综合代码:

程序

程序

程序

  图7所示是Moddsim仿真的CPLD读取MAX1032的采样结果并将其存入寄存器DOUT_P_buf的仿真图。由图可见,在启动采样后的第16个SCLK的下跳沿,MAX1032输出14位串行采样结果,CPLD将其存入内部寄存器中以待系统读取。一般在下一次采样之前,需要将CPLD复位来清除上一次采样的数据。由于外部时钟模式下的SSTRB始终为低,故本例没有对该信号进行处理。

Moddsim仿真的CPLD读取MAX1032的采样结果并将其存入寄存器DOUT

点击看原图

  5 结束语

  本文介绍了利用CPLD控制MAX1032进行采样的实现方法,包括CPLD的内部逻辑设计和对采样信号的处理等。实验证明,该方法能够适用需要使用CPLD控制外围电路的场合。


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

MAX1032? CPLD? Moddsim仿真? ADC?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈