有时,系统需要几个数字可编程电压输出通道。这种输出通道通常提供对机器人定位,工业过程甚至家庭自动化的控制。图1中的电路控制来自pc并行端口的32个电压输出通道。该电路包括8个dac7615四路电压输出,串行数据可编程,12位dac。控制pc分别对32个dac通道中的每个通道进行编程,并且所有dac输出同时更新。
并行端口的8条数据输出线为8个四通道dac7615中的每一个提供串行数据。并行端口的其余四条控制线提供串行数据时钟,输入寄存器时钟,dac寄存器时钟和dac复位功能。每个dac7615都有一个参考高低输入,电路分别连接到2.5v和-2.5v的外部参考电压。两个opa4277四通道运算放大器缓冲±2.5v dac参考电压。由于所有dac均使用相同的±2.5v基准电压,因此所有dac输出均作为这些基准电压的函数一起跟踪。所有32个通道的最终dac输出电压范围为-2.5v至+ 2.5v。
该电路通过移入包含两个串行16位字的串行16位字对八个dac7615中的每一个进行编程地址位,两个哑位和dac 12位数据字。每个dac7615的v outa 通道的串行数据首先移位,然后是v outb ,v outc ,以及v outd 个通道。 dac7615具有双缓冲数据输入,因此电路可以将所有dac通道的编程数据加载到输入寄存器,而无需更改先前设置的dac输出电压。在每个16位字移入相应的dac7615后,dac控制线瞬间产生低电平脉冲,将移位后的数据锁存到每个dac的内部输入寄存器中。最后,当电路对所有dac输入寄存器进行编程时,信号为低电平,以更新内部dac寄存器并更改所有dac输出。
使用并行端口同时进行串行数据传输到所有dac7615,软件必须首先操纵数字输出数据,使其以可以流出并行端口的形式放置。控制软件将一组8个16位字(代表移入每个dac7615的代码)转换为一组16个8位字(图2)。得到的16个8位字的向量表示16位串行数据流,该电路同时移入dac7615的四个寄存器中。此转置重复四次以对每个dac7615的所有四个通道进行编程。
随附的程序“writedac32”,这是用borland turbo pascal编写,接受一组32个12位代码,用于编程每个dac通道。 writedac32使用汇编语言程序重复左移每个12位dac代码的前导位,然后重建12个8位字,表示pc在所有8个并行端口数据线上输出的流数据。要对所有32个dac通道进行编程,需要4x16个数据时钟周期。如果以菊花链方式连接dac,则所需的时钟周期数为4x8x16。
中芯国际“内讧”:复牌后直线暴跌超6%
iOS5 beta3推出触摸操控区
盘点最新光纤终端盒的作用
华为云CDN+芒果TV,是如何做出“云”榜样?
大疆Mavic Mini 2无人机真机爆照: 249克超轻、4K视频录制
如何通过并行端口控制32个DAC通道
区块链+足球带来将会是什么
500块的三星S8已在华强北提前发布:3D曲面机身+后置双摄像头!
手机没电了,没充电器怎么办?手机日常维护必用
喜报频传!安富利揽获英飞凌多项大奖
基于ARM7的LCD显示电压示波系统的设计
电机的旋转速度为什么能够自由地改变(电机与变频器的关系)?
大功率白光死灯不良分析报告分析
售价2199元起 iQOO Neo5 SE全渠道热销中
如何制作可跟踪200Hz脉冲红外光源的摄像机支架
MPSoC设计中USB Phy的复位信号
锂电池内阻多大就报废_18650内阻简单测试方法
推荐这十个用于机器学习的优秀软件,可用于运行ML代码
Socionext最新开发时间敏感网络IP,助力推进智慧工厂
诺基亚将牵头欧盟6G研究项目