Driver example using I2C
The purpose of this application is to show you how to use the LPI2C and FLEXIO Interfaces on the S32K118 using the S32 SDK API.
The application uses one board instance of LPI2C in slave configuration and one board instance of FLEXIO in master configuration to communicate data via the I2C bus using interrupts. If transfer succeeded, which means that slave rx buffer have the same elements as master tx buffer, the RGB_GREEN led wired on the board will be on, otherwise if the transfer failed the RGB_RED led will be on.
To run the example you will need to have the following items:
The following boards are supported by this application:
The following connections must be done to for this example application to work:
PIN FUNCTION | S32K118EVB-Q064 |
---|---|
FLEXIO SDA (PTD0) | J1.9 - J1.1 |
FLEXIO SCL (PTD1) | J1.11 - J1.3 |
LPI2C SDA (PTA2) | J1.1 - J1.9 |
LPI2C SCL (PTA3) | J1.3 - J1.11 |
After opening S32 Design Studio, go to File -> New S32DS Project From... and select i2c_pal. Then click on Finish.
The project should now be copied into you current workspace.
First go to Project Explorer View in S32 DS and select the current project(i2c_pal). Then go to Project and click on Generate Processor Expert Code
Wait for the code generation to be completed before continuing to the next step.
Select the configuration to be built FLASH (Debug_FLASH) by left clicking on the downward arrow corresponding to the build button(. Wait for the build action to be completed before continuing to the next step.
Go to Run and select Debug Configurations. There will be four debug configurations for this project:
Configuration Name | Description |
---|---|
i2c_pal_s32k118_debug_flash_jlink | Debug the FLASH configuration using Segger Jlink debuggers |
i2c_pal_s32k118_debug_flash_pemicro | Debug the FLASH configuration using PEMicro debuggers |
Select the desired debug configuration and click on Launch. Now the perspective will change to the Debug Perspective.
Use the controls to control the program flow.