MCU:STM32F103
ADC:ADS1299
SPI设置:CPOL=0&CPHA=1,速度为18MHz
设置RDATAC模式,/DRDY用逻辑分析仪看正确。
读写寄存器正确。用/DRDY下降沿触发中断,在中断程序内读取24+8*24Byte(1个状态+8个通道)
但是读出来的数据,只有第一个24位状态为0xC00000,后8个24位都是0xFFFFFF
下面是连续读取9个24bit数据的程序部分。
for(channel_num=0;channel_num<9;channel_num++)
{
sum[channel_num] |= (SPI1_ReadWriteByte(0xff)<<16);
sum[channel_num] |= (SPI1_ReadWriteByte(0xff)<<8);
sum[channel_num] |= SPI1_ReadWriteByte(0xff);
}
/**/SPI速度分别试过18MHz、9MHz、4.5MHz、2.25Mhz。情况还是如上述红色字体结果。
请问是什么情况!