随着现代工业技术的发展和对信号处理要求的不断提高,对于一个可靠稳定的系统来说,数据采集起着举足轻重的作用。数据采集及处理系统应用非常广泛,其基本原理是将外部模拟信号的电压量通过A/D转换器,转换成为数字量并存储在内部的RAM中,通过一系列的算法完成数据的处理。
本系统采用TI公司的TMS320F2812作为信号采集和处理的核心,通过TMS320F2812的McBSP模块外扩A/D转换器LTC1865进行采集。
系统硬件设计
TMS320F2812及其McBSP模块
TMS320F2812是TI公司的一款高性能、多功能、高性价比的32位定点DSP芯片。该芯片兼容TMS320LF2407指令系统,最高可在150MHz主频下工作,并带有18K&TImes;16位零等待周期片上SRAM和128K&TImes;16位片上Flash(存取时间为36ns)。TMS320F2812采用哈佛总线结构,具有密码保护机制,可进行双16×16乘加和32×32乘加操作,提供了足够的处理能力,使一些复杂实时控制算法的应用成为可能,因而具有控制和快速运算的双重功能。
TMS320F2812芯片的McBSP是一种同步串行接口,可以根据设计者的不同需求进行配置,使用非常灵活。McBSP的时钟停止模式可以提供与SPI兼容的协议。当McBSP配置为时钟停止模式时,发送器和接收器内不同步,这样McBSP可以作为一个SPI主设备或从设备。在这种模式下,McBSP的发送时钟信号CLKX相当于SPI总线的SCK信号,发送帧同步信号FSX可以作为SPI的片选使能信号SS使用。在时钟停止模式中,由于采用内部同步模式,不使用接收时钟信号CLKR和接收帧同步信号FSR。
串行A/D转换器LTC1865
本系统使用的数模转换器LTC1865是凌力尔特推出的16位SARADC,采用单5V电源工作,并能保证在-40℃~+125℃的温度范围内工作。每个器件最大电表1通道配置字选择单端输入差分输入地址选择10110001通道01+-+--+地--流为850μA,最大采样率达250kS/s,供电电流随着采样速率的降低而变小。MSOP-10封装的LTC1865提供2路软件可编程的通道,并且可以根据需求来调整参考电压的大小。3线SPI兼容串行接口通信,适用于高分辨率应用场合,如汽车温度检测、发动机油压测量或多普勒信号的采集等。
LIC1865的工作时序如图1所示。LTC1865转换周期开始于CONV信号的上升沿(即CONV为高电平时),经过一段tCONV后转换才结束。如果此时CONV还是高电平,LTC1865就拉低供电电流进入省电模式。当CONV变为低电平后,在SCK的上升沿依次从SDI引脚输入2个通道配置位(其他输入位被忽略),直到下一个CONV周期出现。SCK同步与数据的传输都为全双工工作模式。数据传送完后,如果CONV还是低电平,则SDO在SCK上升沿输出为0。
LTC1865的工作时序图
2个通道输入配置字决定了下一次转换的通道及其采样模式。如表1所示,如果配置字为10时,LTC1865将测CH0引脚对地的信号;如果配置字为11时,LTC1865将测量CH1引脚对地的信号;如果配置字为00时,LTC1865将测量CH0引脚对CH1引脚的信号;如果配置字为01时,LTC1865将测量CH1引脚对CH0引脚的信号。LTC1865采样的范围为VREF到VCC,其中VREF的电压由引脚VREF决定,可以通过硬件配置为1V~VCC。
硬件电路设计
运放调理电路的设计
信号调理电路就是放大、缓冲或标定传感器的模拟信号,使其适合于模/数转换器(ADC)的输入。本系统选用的运算放大器是TI公司的高CMR(共模抑制)、RRIO(轨到轨输入输出)OPA2364芯片,它具有单电源、低偏置和高性能等特性,完全符合本采集系统的设计要求。图2所示为通道0的电路原理图,为了最大限度地减小采集电路对传感器的影响,运放使用了具有高输入阻抗的同相放大接法。将信号从运放的输入范围±10V调理到适于ADC的输入范围。通道1的原理与通道0相同。
TMS320F2812与LTC1865接口电路设计
TMS320F2812与LTC1865的硬件电路连接如图3所示。由于LTC1865是5V电源的A/D转换器,而TMS320F2812是3V芯片,因此,TMS320F2812的McBSP模块中的串行数据接收引脚MDR必须要通过光耦TLP512与LTC1865的串行数据输出引脚ADSDO进行隔离,防止烧坏DSP。但McBSP的发送帧同步引脚MFSX、发送时钟引脚MCLKXA和串行数据发送引脚MDXA的数据传输方向是由DSP到ADC,所以无需光耦进行隔离。
技术专区
- LDO的PSRR测量及输入电压在测试
- 电子产品性能评估,快速进行温升测试
- 基于DSP和SD卡的生理信号数据采集系统设计
- matlab串口数据采集
- python串口接收数据