STM32控制片外AD采集问题

2019-12-25 18:51发布

本帖最后由 qmmdzd 于 2017-8-14 10:38 编辑

新手一枚,想用STM32控制ADS8363进行数据采集,看时序图有些疑问:如果用硬件SPI模式操作的话,RD/CONVST信号该如何控制呢(就是如何配合SPI信号进行开始采集和读写呢)?
我定义了GPIO引脚控制,就是简单的写高低电平  并没有反应。贴下代码

u16 SPI_ADC_SendHalfWord(u16 HalfWord)
{  

        SPI_ADC_CS_LOW();
        SPI_ADC_RDCO_HIGH();
        SPI_ADC_RDCO_LOW();

  /* Loop while DR register in not emplty */
  while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);

  /* Send Half Word through the SPI1 peripheral */
  SPI_I2S_SendData(SPI1, HalfWord);

  /* Wait to receive a Half Word */
  while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);

  /* Return the Half Word read from the SPI bus */
  return SPI_I2S_ReceiveData(SPI1);
}

void  ADC_Init()
{

        SPI_ADC_CS_LOW(); //片选
        Delay( 200 );
       SPI_ADC_SendHalfWord(0x1002);//选中ADC1
        SPI_ADC_SendHalfWord(0x03ff);//配置ADC1的基准电压
        SPI_ADC_SendHalfWord(0x1020);//更新整个寄存器
         Delay( 200 );
          //SPI_ADC_CS_HIGH();

}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。