LPI2C SLAVE

Driver example that will show the LPI2C Slave functionality

Application description


The purpose of this demo application is to show you the usage of the LPI2C module available on the S32K118 MCU as a slave using S32 SDK.

  • The application uses S32 SDK API to initialize the LPI2C module as a slave node after configuring the clocks and pins needed to use the I2C. example uses the LPI2C callback to respond to requests such as:
    • data receive
    • data transmit
    • buffer full or empty.

To check if the transmission is successful the user has to verify that the master rx buffer has the same elements as slave tx buffer and slave rx buffer has the same elements as master tx buffer after running the example.

Prerequisites


To run the example you will need to have the following items:

  • 1 S32K118 board
  • 2 Dupont cables (male to male or female to female depending on the boards)
  • 1 Personal Computer
  • 1 Jlink Lite Debugger (optional, users can use Open SDA)

Boards supported


The following boards are supported by this application:

  • S32K118EVB-Q064

Hardware Wiring


The following connections must be done to for this example application to work:

PIN FUNCTION S32K118EVB-Q064
LPI2C SCL (PTA3) J1.3 - Master SCL
LPI2C SDA (PTA2) J1.1 - Master SDA
GND (GND) J2.6 - Master GND

How to run


1. Importing the project into the workspace

After opening S32 Design Studio, go to File -> New S32DS Project From... and select lpi2c_slave_s32k118. Then click on Finish.
The project should now be copied into you current workspace.

2. Generating the Processor Expert configuration

First go to Project Explorer View in S32 DS and select the current project(lpi2c_slave_s32k118). 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.

3. Building the project

Select the configuration to be built FLASH (Debug_FLASH) or RAM (Debug_RAM) 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.

4. Running the project

Go to Run and select Debug Configurations. There will be four debug configurations for this project:

Configuration Name Description
lpi2c_slave_s32k118_debug_ram_jlink Debug the RAM configuration using Segger Jlink debuggers
lpi2c_slave_s32k118_debug_flash_jlink Debug the FLASH configuration using Segger Jlink debuggers
lpi2c_slave_s32k118_debug_ram_pemicro Debug the RAM configuration using PEMicro debuggers
lpi2c_slave_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.

Note
For more detailed information related to S32 Design Studio usage please consult the available documentation.