Nuvoton M0518 之 Slave SPI通信注意事项
使用0518芯片的SPI0中断来实现0518芯片模块作为Slave方,使用SPI0接口来接收打印“Master方”发送过来的一个字节数据。 1、SPI0中断处理以及初始化相关源码如下: uint32_t u32RecvData_spi = 0 ; // void SPI0_IRQHandler ( void ) { /* Check RX EMPTY flag */ while ( SPI_GET_RX_FIFO_EMPTY_FLAG ( SPI0 ) == 0 ) { /* Read RX FIFO */ u32RecvData_spi = SPI_READ_RX ( SPI0 ); printf ( "%X\n" , u32RecvData_spi ); } /* Check TX FULL flag and TX data count */ while (( SPI_GET_TX_FIFO_FULL_FLAG ( SPI0 ) == 0 )) { /* Write to TX FIFO */ SPI_WRITE_TX ( SPI0 , 0 ); //用0x00填满FIFO的TX缓存区。 } /* Check the RX FIFO time-out interrupt flag */ if ( SPI_GetIntFlag ( SPI0 , SPI_FIFO_TIMEOUT