完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
数/模转换(D/A)电路,是数字系统中常用的电路之一,其主要作用是把数字信号转换成模拟信号,通常是利用专用的数/模转换(D/A)芯片来实现的。AD7543是Analog Device公司生产的的12位数/模转换(D/A)芯片,它采用串行数据输入形式,即数字信号被一位一位地写入AD7543数/模转换(D/A)芯片中,因此,AD7543要与一个控制器配合使用才能发挥作用。常规的方法,是以CPU作为控制部件,通过软件编程的方式来控制AD7543,从而实现数/模转换功能的。软件实现法虽然简单,但必将会占用大量的CPU时间,削弱了CPU实时处理能力,降低了系统的可靠性。针对以上情况,在此设计了基于可编程逻辑器件(FPGA)数/模转换电路,利用可编程逻辑器件(FP-GA)直接控制模转换(D/A)芯片AD7543进行数/模(D/A)转换,取代传统的“CPU+专用的数/模转换(D/A)芯片”设计结构,有利于提高系统的抗干扰能力和可靠性。
1 AD7543简介 1.1 AD7543主要特性 AD7543主要特性为: 分辨率:12位; 非线性误差:±1/2 LSB; 输入方式:串行正或负选通; 初始化:异步输入清零方式; 工作电压:+5 V; 最大功耗:40 mW。 1.2 封装形式和引脚功能 AD7543有三种封装形式:16引脚的DIP和20引脚的PCCC与PLCC,其封装形式如图1所示,设计者可根据实现需求进行选择,其引脚功能说明如下: OUT1:数/模转换(D/A)器电流输出端,通常接到放大器正输入端; OUT2:数/模转换(D/A)器电流输出端,通常接到模拟地; AGND:模拟地端,接到模拟地; STB1:寄存器A选通1信号输入端; LD1:寄存器B装人选通1输入端,LD1和LD2都为低电平时,寄存器A的内容被装入到寄存器B中; N/C:悬空; SRI:串行数据输入端,与寄存器A低位相连; STB2:寄存器A选通2信号输入端; LD2:寄存器B装入选通2输入端,LD1和LD2都为低电平时,寄存器A的内容被装入到寄存器B中; STB3:寄存器A选通3信号输入端; STB4:寄存器A选通4信号输入端; DGND:数字地端; CLR:异步清寄存器B输入端,当为低电平时,清寄存器B内容,寄存器A内容不变; VDD:5 V供电输入端; VREF:参考电压输入端; RBF:反馈输入端。 1.3 数/模转换芯片AD7543器件工作原理 在AD7543器件内部,有两个寄存器:寄存器A和寄存器B。寄存器A是12位串行输入并行输出的移位寄存器,其低位与SRI引脚相连。在STB1,STB2和STB4上升沿或STB3下沿作用下,移位寄存器A发生移位,SRI引脚上的串行数据被装进寄存器A中,当要写入数据全部被装进寄存器A时,再给AD7543一个装载负脉冲(LD1和LD2均为低电平),把移位寄存器A的内容装到寄存器B中,通过后续电路完成D/A转换。当CLR为低电平时,寄存器B的数据被清零,输出的电压为零,简化初始化过程。图2为AD7543数/模转换(D/A)的工作时序图。 2 基于AD7543的数/模转换器电路设计 图3为基于AD7543数/模转换芯片的数/模转换器电路,由于AD7543的内部无运算大器,输出为电流形式,在应用中,必须外接一个运放器,因此,AD7543的第1和2脚分别接在LM324运放的反向输入口与同相输入口,AD7543的第15脚(参考电压输入端)接在-10 V的电源上,当寄存器B的位数全为高电平时,输出电平接近10 V。AD7543的输入时序信号CLR,STB2,LD和SRI由外接的可编程逻辑器件(FPGA)产生。AD7543的第8脚和11脚接地。运放器LM324正负电源引脚分别接在正负12 V的电源上。 3 AD7543工作时序FPGA实现 AD7543是串行输入数/模转换芯片,被转换数据是逐位写进AD7543中,因此,AD7543工作时,要有正确的工作时序,工作时序在QuartusⅡ开发环境中利用硬件描述语言Verilog HDL描述。QuartusⅡ是Altera公司的EDA开发工具,它是集设计输入、编译、逻辑综合、器件引脚管理、功能仿真、定时分析、编程下载等于一体的可编程逻辑器件设计环境。 在设计中,为了降低设计成本,FPGA采用Altera公司的Cyclone系列的EP1C6Q240C8芯片。。EP1C6Q240C8芯片,不仅集成了5 980个逻辑单元 (LEs),还集成了20个4 KB双口存储单元(M4KRAM BLock)和92 160 b的普通高速RAM等资源。 打开Quartus II软件,新建一个工程管理文件。在工程管理文件中,新建一个Verilog HDL源程序文件,用硬件描述语言Verilog HDL编写程序,实现控制功能,其代码如下: 4 FPGA时序模块仿真 为了进一步的验证FPGA控制器模块的正确性,在下载到目标器件之前,可以对此模块进行时序仿真。在工程文件中,首先要新建一个以vwf结尾的波形文件。在弹出的对话框中添加要观察的引脚,然后再设定时钟相关参数和保存波形文件,最后在编译顶层文件之后,可对此模块进行仿真。如图4为FPGA控制器模块仿真波形,CLOCK为此模块的工作时钟,时间周期设为40 ns;ida为并行输入数据,STI为串行输出,STB1为选通脉冲信号。由图可知,STB1的上升沿把STI引脚上的数据装入寄存器A中,装满寄存器A后,LOD设为低电平,把寄存器A的内容装入寄存器B中。仿真时序与图1的时序一致,满足设计要求。 5 结 语 针对采用软件控制AD7543数/模转换芯片所具有的缺点的基础上,采用硬件(FPGA)直接对AD7543转换芯片进行控制的方式来设计数/模转换电路,给出具体的硬件实现电路和控制器的Verilog HDL实现代码。因为FPGA控制器是一个独立单元,它几乎不需要CPU的干预就能工作,在电路中分担了CPU的工作量,这不仅提高CPU实时处理信号能力,还会提高系统的可靠性,具有一定的实用价值与参考价值。在此设计了基于FPGA与AD7543转换芯片的数/模转换电路,AD7543的工作时序全部用FPGA器件产生,提高系统的可靠性。 |
|
|
|
只有小组成员才能发言,加入小组>>
869 浏览 2 评论
12806 浏览 0 评论
4103 浏览 7 评论
2324 浏览 9 评论
2143 浏览 2 评论
442浏览 2评论
742浏览 2评论
869浏览 2评论
591浏览 1评论
648浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 00:39 , Processed in 0.577972 second(s), Total 74, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号