【简介】
S32K3 的SPI 驱动配置可以使用S32DS 来进行配置。在S32DS 中可以添加LPSPI 外设来配置SPI驱动程序,可以添加以恶搞SPI外设。

SPI 的配置主要非为总线的配置和,外设的配置,通过SpiGeneral 窗口来配置SPI的总线配置配置SPI 的主从配置,是否使用DMA 等参数配置,SPI 传输的超时配置等参数。

Spi Driver 窗口可以用来配置设备的SPI传输参数配置。

以下是S32K3 RM文档中对SPI 模式配置说明如下:

上述配置CS 低电平,CPHA = 0,CPOL = 0 的参数配置好参数后我们就可以使用RTD 的驱动接口来验证SPI驱动功能,编写如下测试代码验证SPI驱动。
Lpspi_Ip_StatusType status;
uint8_t pTxBuffer[2] = {0x55};
uint8_t pRxBuffer[2] = {0};
status = Lpspi_Ip_Init(&Lpspi_Ip_PhyUnitConfig_SpiPhyUnit_FS26_Instance_0);
if(status != LPSPI_IP_STATUS_SUCCESS)
PRINTF("SPI init failed ret = %d\n",status);
status = Lpspi_Ip_SyncTransmit(&Lpspi_Ip_DeviceAttributes_SpiExternalDevice_FS26_Instance_0,
pTxBuffer,
pRxBuffer,
2,
0XFFFFFF);运行后抓取逻辑分析仪数据跟预期的保持一致,spi 已经按照预期的发出数据。

数据接收功能验证,通过该SPI总线发送数据给外设,从总线上也可以读取到数据,说明总线的双向通讯功能正常。

我要赚赏金
