| 补充:以下是SPI2配置的代码段 void spi2_config(void) {
 /* 使能GPIO和SPI2时钟 */
 
 spi_parameter_struct spi_init_struct;
 rcu_periph_clock_enable(RCU_GPIOC);   // 使能GPIOC时钟
 rcu_periph_clock_enable(RCU_GPIOA);   // 使能GPIOA时钟(PA15)
 rcu_periph_clock_enable(RCU_SPI2);    // 使能SPI2时钟
 
 
 
 
 /* 配置引脚复用功能 */
 // CS PA15 : 复用推挽输出
 gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_15);
 gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_15);
 gpio_af_set(GPIOA, GPIO_AF_6, GPIO_PIN_15);
 
 // SCK PC10 : 复用推挽输出
 gpio_mode_set(GPIOC, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_10);
 gpio_output_options_set(GPIOC, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_10);
 gpio_af_set(GPIOC, GPIO_AF_6, GPIO_PIN_10);
 // MISO PC11: 复用浮空输入
 gpio_mode_set(GPIOC, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_11);
 gpio_af_set(GPIOC, GPIO_AF_6, GPIO_PIN_11);
 
 // MOSI PC12: 复用推挽输出
 gpio_mode_set(GPIOC, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_12);
 gpio_output_options_set(GPIOC, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_12);
 gpio_af_set(GPIOC, GPIO_AF_6, GPIO_PIN_12);
 
 /* 复位并配置SPI2 */
 //spi_i2s_deinit(SPI2);
 
 /* configure SPI1 parameter */
 spi_init_struct.trans_mode           = SPI_TRANSMODE_FULLDUPLEX;
 spi_init_struct.device_mode          = SPI_MASTER;
 spi_init_struct.frame_size           = SPI_FRAMESIZE_16BIT;
 spi_init_struct.clock_polarity_phase = SPI_CK_PL_LOW_PH_1EDGE;
 spi_init_struct.nss                  = SPI_NSS_HARD;
 spi_init_struct.prescale             = SPI_PSC_64;
 spi_init_struct.endian               = SPI_ENDIAN_MSB;
 spi_init(SPI2, &spi_init_struct);
 //SPI_CTL0(SPI2) = ((uint32_t)0x0000084cU);
 spi_nss_output_enable(SPI2);
 
 /* 使能SPI2 */
 spi_enable(SPI2);
 }
 
 
 |