基于ad7543和fpga的数/模转换电路设计
引 言
数/模转换(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器件产生,提高系统的可靠性。
ANC降噪耳机,给你想“静静”的机会
什么是信号回流路径?
小巧可靠的无源元件是医疗设备选择的关键
三面液冷“护航”快充 亿纬锂能大圆柱电池π系统亮相
LPC2141的无刷直流电机控制系统设计
基于AD7543和FPGA的数/模转换电路设计
一位工程师自述职场之见
比亚迪欲开辟电动汽车平价市场
面部表情识别技术在教育领域的应用前景
制作LED防爆灯需要应用哪些材料
四季沐歌荣获2021年度中国高端家电至高荣誉“红顶奖”
盘点校史馆中展厅多媒体技术的应用
解析存储服务器之间的区别和优势
单极天线与接地的操作实践
关于酒店客控系统应用方案的性能分析
针对射频(RF)的超高性能差分放大器——LMH3401
戴乐格半导体证实有意并购Synaptics
6.6kW车载充电机OBC,可用于新能源电动汽车动力电池车载充电
我比你多了六个曲面 荣耀Magic图赏
PCBA生产加工清尾反映厂家管理水平