1、关于GD32L233CCT6的SPI接口
可以看出 有两路spi,spi0和spi1,本节使用spi1。
2、开发板上SPI的引脚
3、spi1引脚复用
4、开发板与RC522模块连接
开发板 rc522
PB12 <----------------------------->SDA(NSS)
PB13 <----------------------------->SCK
PB14 <----------------------------->MISO
PB15 <----------------------------->MOSI
PB0 <----------------------------->RST
3.3V <----------------------------->3V3
GND <----------------------------->GND
5、与SPI相关操作代码
void SpiIoInit(void)
{
rcu_periph_clock_enable(RCU_GPIOB);
gpio_mode_set(GPIOB, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_0 );
gpio_output_options_set(GPIOB, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_0);
/* SPI1 GPIO configuration: NSS/PB12 */
gpio_mode_set(GPIOB, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_12 );
gpio_output_options_set(GPIOB, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_12);
/* SPI1 GPIO configuration: SCK/PB13, MISO/PB14, MOSI/PB15 */
gpio_af_set(GPIOB, GPIO_AF_6, GPIO_PIN_13 | GPIO_PIN_14 | GPIO_PIN_15)