2401401_en-US

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2401401_en-US

2401401_en-US

S32K324 FlexIO SPI Master Emulation (S32DS 3.5 / RTD 4.0.0 )

Hello,

I am configuring a FlexIO-emulated SPI Master on an S32K324 to communicate with an external SPI slave device. Due to trace routing on our custom board, the physical lines targeting this device are wired to the chip's default FlexSPI0 pins. Therefore, I must use the emulated Flexio_Spi driver stack.


this is my setup
BUS_FLEXSPI0_UP_SBC_CS PTD8 fxio_d11
BUS_FLEXSPI0_UP_SBC_CLK PTD9 fxio_d0
BUS_FLEXSPI0_UP_SBC_MOSI PTD15 fxio_d10
BUS_FLEXSPI0_UP_SBC_MISO PTD22 fxio_d27

My Environment:

IDE:S32 Design Studio for S32 Platform (Version: 3.5, Build id: 240726 Update 13)
CPU : S32K324
SDK: Real-Time Drivers (RTD) Version 4.0.0 (Production Release)

Is there an official NXP application note or guide that illustrates the end-to-end integration stack specifically for RTD 4.0.0? I need a reference that covers everything from assigning the pins in the tool, mapping the shifters/timers, up to initializing the driver in the main application code.

Re: S32K324 FlexIO SPI Master Emulation (S32DS 3.5 / RTD 4.0.0 )

Hello @Kazarian ,

There is no dedicated application note, to my knowledge, that describes the full end-to-end integration of FlexIO-emulated SPI specifically for S32K324 with RTD 4.0.0 and with this exact pin assignment.

The closest official reference is the example project included in the S32K3 RTD package. Please check the RTD example similar to  Lpspi_Flexio_Ip_Transfer_S32K344.

This example demonstrates the intended RTD integration flow for FlexIO-based SPI transfer, including the FlexIO SPI driver initialization and the relation between LPSPI and FlexIO SPI instances.
 
For your custom board, the main points to adapt are the following (as a general guidance):
  1. Pins configuration

    • Configure the listed pins in the Pins tool as FlexIO signals:
      • PTD8 → FXIO_D11, chip select
      • PTD9 → FXIO_D0, clock
      • PTD15 → FXIO_D10, MOSI
      • PTD22 → FXIO_D27, MISO
    • Make sure the MISO pin has the input buffer enabled.
    • Also verify in the S32K324 IOMUX/pinout documentation that these FlexIO functions are available for your exact package.
  2. FlexIO SPI configuration

    • In the FlexIO SPI configuration, map the SPI signals to the corresponding FlexIO pin numbers, not only to the physical MCU pins:
      • SCK = FXIO_D0
      • MOSI = FXIO_D10
      • CS = FXIO_D11
      • MISO = FXIO_D27
    • Assign the required FlexIO timers and shifters consistently with the generated configuration.

Best regards,

Pavel

Tags (1)
No ratings
Version history
Last update:
16 hours ago
Updated by: