基于ATmegal28控制器和CH375接口的高速数据采集系统
1 引言
在核探测领域中,需要对各种高速信号进行采集处理,目前常用的方式是在PC机中安装数据采集卡,如ISA卡、PCI卡。这些卡由于采用可编程逻辑器件(PLD)控制高速模数转换器进行转换,利用ISA总线(16 Mbit/s)、PCI总线(132 Mbit/s)进行数据传送,故具有采集速率高,数据传输速度快,支持“即插即用”等优点。但是其安装不方便,价格高,尤其是受计算机插槽数量、地址、中断资源的限制,可扩展性差。笔者设计的采集系统采用AVR单片机ATmegal28作为主控制器,取代了常用的5l系列单片机,控制高速模数转换器AD9220进行转换,采集速率高达5 Ms/s。采用通用串行总线(USB)进行数据传送,不仅继承了ISA卡、PCI卡采集速度快的优点,而且克服了它们的缺点,具有易用、可扩展、快速、传输可靠等优点。该系统现已应用到4 MeV正离子静电加速器的辐射防护中。
2 系统硬件设计
该数据采集系统硬件模块总体结构如图l所示,输入信号幅度的范围为0 V~5 V。
输入信号首先进入触发电路,该电路主要由比较器AD790和数字电位器X9241组成。AD790是一款高速、精密的电压比较器,反应时间为45ns。通过ATmegal28可控制多种采集模式,触发电压可调节,可实现软件触发(对输入信号进行无触发连续采集)、后触发(当输入信号上升沿电压大于触发电压时开始采集)和前触发(当输入信号上升沿电压小于触发电压时停止采集)三种采集模式。图2为后触发采集模式的电路原理简图,LM136-5.O为5 V基准源,ATmegal28通过I2C总线控制X924l设定触发电压,比较器AD790的输出连接到ATmegal28的中断输入端。当输入端电压大于触发电压时,AD790输出低电平,以中断的形式通知ATmega-128,使其开始数据采集。
当触发条件满足后,ATmegal28启动模数转换器AD9220进行转换,将转换后的数据存入数据存储器中,待上位机查询读取。ATmegal28控制模数转换与数据存储器扩展电路如图3所示。
ATmegal28是AVR系列中功能最强的单片机。该系列单片机运用Harvard结构(具有预取指令功能),即对程序存储器和数据存储器带有不同的存储器和总线,当执行某一指令时,下一指令预先从程序存储器中取出,使程序可以高效率地执行,其机器周期为1个时钟周期,绝大多数指令均为单周期指令,1 MHz的频率有接近1 MI/s的性能。
高速模数转换电路中,AD9220是ADI公司一款性能优良的12位高速模数转换器,速率高达10MS/s。选择内部参考源,用单端输入方式来进行采样,采样一次需要一个时钟周期,其速率取决于输入时钟的频率,电压输入范围为0 V~5 V。
评论