|
本帖最后由 eoorosy 于 2024-5-13 14:52 编辑
各位大佬,请教想要读取两个ADC芯片的数据,一个ADC单独使用一个SPI端口,ADC设置64KSPS,SPI为8M,ADC数据为24bit,想要根据DRDY信号读取数据。
目前使用下列最简单的收发方式,
uint8_t spi_read_write_byte(enum adcId id, uint8_t data)
{
while(RESET == spi_i2s_flag_get(ADC_SPI_PERIPH[id], SPI_FLAG_TBE) );
spi_i2s_data_transmit(ADC_SPI_PERIPH[id], data);
while(RESET == spi_i2s_flag_get(ADC_SPI_PERIPH[id], SPI_FLAG_RBNE) );
return spi_i2s_data_receive(ADC_SPI_PERIPH[id]);
}这种方式会导致读取另一个ADC时进中断慢,使用什么方式比较好,SPI中断?DMA?有没有例程呀
|
|