AnsweredAssumed Answered

Can't get LPSPI example working on i.MXRT1064 EVK

Question asked by Nicholas Langrind on Mar 23, 2020
Latest reply on Mar 24, 2020 by Nicholas Langrind

I am using MCUXpresso with the i.MXRT1064 evaluation kit.

 

There is an SDK example called `evkmimxrt1064_lpspi_interrupt_b2b_master` which uses LPSPI (specifically LPSPI1.)

 

I don't have two boards, so instead I hooked up a logic analyzer. At this point, I just want to see the signals change state. The LPSPI master should be able to drive Chip Select low even if a slave isn't physically present.

When the example runs, the logic analyzer sees no activity on any of the four signals.

 

The i.MXRT1064 EVK brings `GPIO_SD_B0_00 - GPIO_SD_B0_03` out to J24 positions 6,3,4,5. 

To set up IOMUX control to use the above pins:

  IOMUXC_SetPinMux(
      IOMUXC_GPIO_SD_B0_00_LPSPI1_SCK,        /* GPIO_SD_B0_00 is configured as LPSPI1_SCK */
      0U);                                    /* Software Input On Field: Input Path is determined by functionality */
  IOMUXC_SetPinMux(
      IOMUXC_GPIO_SD_B0_01_LPSPI1_PCS0,       /* GPIO_SD_B0_01 is configured as LPSPI1_PCS0 */
      0U);                                    /* Software Input On Field: Input Path is determined by functionality */
  IOMUXC_SetPinMux(
      IOMUXC_GPIO_SD_B0_02_LPSPI1_SDO,        /* GPIO_SD_B0_02 is configured as LPSPI1_SDO */
      0U);                                    /* Software Input On Field: Input Path is determined by functionality */
  IOMUXC_SetPinMux(
      IOMUXC_GPIO_SD_B0_03_LPSPI1_SDI,        /* GPIO_SD_B0_03 is configured as LPSPI1_SDI */
      0U);                                    /* Software Input On Field: Input Path is determined by functionality */ 

Trying different pad configurations (pull up, drive strength) didn't make a difference.

 

I think I am missing something basic! Any advice appreciated.

 

Nik

Outcomes