第二、在对AD7771完成初始化后 我想要读取AD转换的数据,采用轮询的方式 ,等待AD7771_DRDY跳变,开始读取,但最后获得都是0x00,下面是我的程序
void AD7771_Read_Data(void)
{
uint8_t i = 0;
uint8_t ch = 0;
uint32_t adcvalue;
while(!AD7771_DRDY);
while(AD7771_DRDY);
//总共八个通道,每个通道32bit数据=8Bit CRC头 + 24bit转换数据
for(i=0; i<8; i++)
{
//将片选信号拉低
AD7779_CS_LO;
HAL_Delay(10);
//读取32bit数据
adcvalue = SPI_Read();
//从CRC头中获取AD通道编号
ch = (adcvalue >> 28) & 0x07;
AD7771_BUFF[ch] = adcvalue & 0x00ffffff;
//将片选信号拉高
AD7779_CS_HI;
HAL_Delay(10);
}
}
第二、在对AD7771完成初始化后 我想要读取AD转换的数据,采用轮询的方式 ,等待AD7771_DRDY跳变,开始读取,但最后获得都是0x00,下面是我的程序
void AD7771_Read_Data(void)
{
uint8_t i = 0;
uint8_t ch = 0;
uint32_t adcvalue;
while(!AD7771_DRDY);
while(AD7771_DRDY);
//总共八个通道,每个通道32bit数据=8Bit CRC头 + 24bit转换数据
for(i=0; i<8; i++)
{
//将片选信号拉低
AD7779_CS_LO;
HAL_Delay(10);
//读取32bit数据
adcvalue = SPI_Read();
//从CRC头中获取AD通道编号
ch = (adcvalue >> 28) & 0x07;
AD7771_BUFF[ch] = adcvalue & 0x00ffffff;
//将片选信号拉高
AD7779_CS_HI;
HAL_Delay(10);
}
}
举报