TI 公司的ADS1256芯片,是一款24BIT delta-sigma ADC.转换速度为30kSPS.
上图为ADS1256芯片结构和引脚图,从图可以看出ADS1256的通道资源比较丰富,可以配置成8个单端ADC通道,也可以配置成4个差分通道。ADS1256的通信接口为串行接口,同时还有4个通用的IO口,不过这四个IO口不经常用到。
ADS1256内部有许多寄存器需要配置,相较于ADS1232用起来要复杂的多。
下面介绍一下ADS1256的初始化。
void bsp_InitADS1256(void)
{
//SYNC_1();
GPIO_SetBits(GPIOD,GPIO_Pin_1);
//RST_1();
GPIO_SetBits(GPIOB,GPIO_Pin_10);
//CS_1();
GPIO_SetBits(GPIOE,GPIO_Pin_9);
//SCK_0(); /* SPI总线空闲时,钟线是低电平 */
GPIO_ResetBits(GPIOE,GPIO_Pin_15);
//DI_1();
GPIO_SetBits(GPIOC,GPIO_Pin_9);
ADS1256_CfgADC(ADS1256_GAIN_1, ADS1256_30000SPS); /* 配置ADC参数: 增益1:1, 数据输出速率 1KHz */
}
ADS1256_CfgADC(ADS1256_GAIN_1, ADS1256_30000SPS)的代码如下:
void ADS1256_CfgADC(ADS1256_GAIN_E _gain, ADS1256_DRATE_E _drate)
{
g_tADS1256.Gain = _gain;
g_tADS1256.DataRate = _drate;
//ADS1256_StopS