论文部分内容阅读
模数转换器(ADC)是把模拟信号转换成为数字信号的专用器件,广泛地应用于各种数据采集系统中。对于需要实现多路模拟信号采集的系统,采用多路开关和单个ADC搭配使用的方案相比于使用多路ADC的方案,可以大幅度地降低系统功耗,减小电路尺寸和简化电路设计。在课题的研究中,所设计的数据采集系统需要对八路低频模拟信号进行采集。由于电路中使用的ADC有效位数只有16位,有限的分辨率并不能准确地反映出输入信号的微弱变化,因此,在软件设计中提高了采样频率,利用过采样和求均值技术改善了ADC的实际分辨率。在硬件设计方面,时间常数大的RC滤波电路可以有效地滤除模拟信号中的高频噪声,但也会为电压的建立带来延时;同时多路开关切换后,当前的通道电压从选通到在ADC模拟输入端建立至稳定状态也需要花费较长的时间,这就致使当前通道的前几次电压采样值仍保留有上个通道电压的信息,不能准确地反应出当前通道的电压状态,影响ADC采集的结果。如何有效地抑制由多路开关和RC滤波电路引入的电压建立时间的影响,需要合理地设计多路开关控制下的采样方案,在新的通道选通之后,牺牲一定的时间用于电压建立,以保证ADC采集的准确性。另外对多路数据采集系统中的通道间电压干扰现象也需要进行测试和分析。在软件设计方面,FPGA控制多路开关完成通道循环选通,并生成ADC控制逻辑,控制ADC对输入电压进行采样、转换和编码,同时读取转换码字在FPGA内部进行初步的数据累加处理。系统选用了NAND Flash作为存储介质,对实验过程中生成的数据进行存储,FPGA需要控制Flash Memory进行读、写和擦除操作,以便完成数据的读取、记录和清空。实验利用VC程序编写了应用于PC端的控制软件,用于FPGA软件系统控制,利用FPGA中的通信控制模块,通过串行端口实现了PC与FPGA之间的通信,不仅能够在PC上实现采集数据的实时显示和存储,也可以在实验完毕后读取Flash中的数据进行后期的处理和分析。