基于数据采集系统中的DSP控制回路设计
1 引 言
随着信息技术的飞速发展,数字信号处理器(DSP)得到了广泛的应用,基于A/D,DSP,D/A的数据采集模式已经被大多数人所接受。在现代生物信号采集方案中,人们不仅要求系统有高速的数据处理能力,而且还要求其有高速的数据处理能力和高精度、多通道的D/A转换能力。
本文的目的是设计一个生物信号传感器的控制系统。在一些信号采集回路中,某些传感器的最佳工作电压随着环境的变化而变化,这就要求系统在正式采集有效信号前将传感器调到最佳工作电压。这时系统不仅要求高速的数字信号处理能力,而且要求对前端多路传感器的适时控制,于是选择由C5416和5633所组成的生物信号采集控制系统。以下重点分析SPI口的配置以及DSP通过SPI对进行数据传输的代码实现。
色环电感生产厂2 芯片介绍
C5416属于TI公司TMS320C54X系列DSP芯片,是一种低功耗、高性能的定点DSP芯片。它的主要特点有:运算速度快,可达160 MIPS。优化的CPU结构:内部有1个40位的算术逻辑单元(ALU)、2个40位的累加器、2个40位的加法器、1个乘法器和1个40位的桶型移位器、有4条内部总线和2个地址发生器。多总线结构:包括3条独立的16位数据总线和1条23位的地址总线。低功耗方式:TMS320C5416DSP可以在3.3 V,1.6 V的低电压下工作,3种低功耗方式(IDLE1,IDLE2和IDLE3)可以节省DSP功耗。智能外设:包括软件可编程等待状态寄存器、可编程PLL时钟发生器、1个16位的计塑封电感器数器、6个DMA控制器、3个多通道缓冲串行口(McBSP0-2)和与外部处理器通信的HPI(Host Post Interface)接口。
美国MAXIM公司生产的一种32通道高精度采样保持D/A转换器。它内含1个16位DAC、1个带内部时钟的时序控制器、1个片内RAM以及32路电感器生产采样保持放大器。其中DAC电路由2部分组成。在16位DAC中,高4位可通过15个同值电阻组成的权电阻网络完成相应的转换,其余位的转换则由1个12位R-2R梯形网络来完成。其32路带缓冲的采样保持电路通过内部保持电容来使输出压降维持在每秒1 mV的范围内,且不需要配置外部增益和偏置电路。能提供最大200μV的分辨率和0.015%FSR的高精度转换,其输出电压范围为-4.5~9.2 V。其理论输出电压由参考电压、增益以及输入的编码共同决定:
其中:code是5633输入的16位二进制代码;VREF是MAX 5633的输入参考电压;VGS是地的敏感输入电压,通常直接接地。具有工作温度范围宽以及串行接口灵活等特点,适用于处理大量模拟数据输出的场合。
3 系统工作模式
MAX 5633的转换过程是先从串行数据端DIN送进要转换的16位数据D15~D0(高位在前,低位在后),然后送进5位地址A4~A0(用这5位地址编码来选择输出的通道号)。地址的后2位是控制字C1和C0,其中C1为1是立即更新模式,为0则为触发模式;C0为1表示选择外部时钟序列,为0则选择内部时钟序列。C1,C0之后应补1位0。当片选CS变低后,系统将在每一个时钟的上升沿送进一位数据。送完最后一位数据(即第24个数据后)后片选CS变高。而当CS为高电平时,任何输入数据都无效。
MAX 5633有3种工作方式分别为顺序模模式、立即更新模式和碎发模式。其中顺序模式为默认工作模式。通过设定C1=1将MAX 5633配置成立即更新模式。立即更新模式用于更新单个SRAM的内容,同时更新相应的采样保持放大器输出。在这种模式下,所选择的通道输出会在顺序操作恢复前更新。用户可以通过设置IMMED或使C1为高电平选择立即更新模式。当片选CS为低电平时,原访模压电感问顺序被打断。输入字被存储在对应于被选择通道的SRAM中。此时DAC转换和相应的采样保持对输入串口完全差模电感透明。相应的输出通道将得到立即更新。更新后,时序将回到原来中断的SRAM地址重新开始顺序更新。立即更新操作需要占用2个时序周期,其中一个周期用来使时序控制器继续完成正在进行的操作,另一个用来进行新数据的更新。
MAX 5633的输入口为SPI接口,要实现与DSP通信,需将C5416的MCBSP0口配置成SPI口。MCBSP在结构上可分为1个数据通道和1个控制通道。表1给出了有关引脚的信号定义。DX引脚负责数据的发送,DR引脚负责数据的接收,另外4个引脚提供控制信号(时钟和帧同步)。C5416通过片内的外设总线访问串口的控制寄存器实现与MCBSP的通信和控制。平面变压器厂家 | 平面电感厂家
自动断电的CPLD今天,大多数的CPLD(复杂可编程逻辑器件)都采用可减少功耗的工作模式,但当系统未使用时,应完全切断电源以保存电池能量,从而实现很多设计者的终极节能目标。图1描述了如何在一片CPLD 上增加几只分立元
[充电器]LTC4054给电池充电时,芯片发热本帖最后由xw123789于2017-9-1708:05编辑
做了一个巡迹小车,用LTC4054芯片给3.7伏锂电池充电,之前调试的时候用的是手机锂电池,充电一直没有异常,接上电机以后,电机一启动电池就
怎么防止51单片机I/O口对外部电路的影响如图,我想用激光笔打在光敏电阻上,当激光笔被挡住的时候,中间点的电势就会变化,不接单片机的 时候是有很明显的变化的,接到单片机的I/O口上之后,挡不挡激光笔中间电势的变化都不大