|
基于GD32F103的SPI0配置,用逻辑分析仪开始触发,啥也采集不到。
void MX_SPI0_INIT(void)
{
/* RCU */
rcu_periph_clock_enable(RCU_GPIOA);
rcu_periph_clock_enable(RCU_GPIOB);
rcu_periph_clock_enable(RCU_SPI0);
rcu_periph_clock_enable(RCU_AF);
gpio_pin_remap_config(GPIO_SPI0_REMAP, ENABLE);//REMAP SPI0
/* GPIO */
gpio_init(GPIOA, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, Vol_CS_PIN);//CS
gpio_init(SPI_PORT, GPIO_MODE_AF_PP, GPIO_OSPEED_50MHZ, Vol_SCK_PIN | Vol_SDI_PIN);//SCLK 3 MOSI 5
gpio_init(SPI_PORT, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, Vol_SDO_PIN);//MISO 4
spi_parameter_struct spi_init_struct;
spi_i2s_deinit(SPI0);
/*初始化SPI参数结构体*/
spi_struct_para_init(&spi_init_struct);
/* configure SPI0 parameter */
spi_init_struct.trans_mode = SPI_TRANSMODE_FULLDUPLEX;
spi_init_struct.device_mode = SPI_MASTER;
spi_init_struct.frame_size = SPI_FRAMESIZE_8BIT;
spi_init_struct.clock_polarity_phase = SPI_CK_PL_LOW_PH_1EDGE;
spi_init_struct.nss = SPI_NSS_SOFT;
spi_init_struct.prescale = SPI_PSC_8;
spi_init_struct.endian = SPI_ENDIAN_MSB;
spi_init(SPI0, &spi_init_struct);
#if SPI_CRC_ENABLE
/* configure SPI CRC function */
spi_crc_polynomial_set(SPI0, 7);
spi_crc_on(SPI0);
#endif /* enable CRC function */
spi_enable(SPI0);
}
系统时钟96MHZ。完全无法通信,找半天。各位大神有没有什么思路。
|
|