S32 SDK
ADC Low Power

Demonstrates ADC trigger scheme using TRGMUX and LPIT, switches the power mode to stop and sends data using LPUART and DMA

Application description


The purpose of this demo application is to show you the usage of a subset of the peripherals found on the S32K144 SoC.

  • The application uses LPIT to trigger ADC conversions every 100ms via TRGMUX with the CPU in sleep mode. The ADC is using Hardware Compare feature to validate an conversion only if the value is greater than half of the reference voltage, in this case VDD/2. This way the CPU is woken up from sleep mode only if the condition is met.
  • When the conversion is complete the data is transformed into a bar graph and it is sent via LPUART using DMA memory to peripheral transfer to the host PC. This way, the CPU can be put into a low power mode to reduce the energy used.

Prerequisites


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

  • 1 S32K144 board
  • 1 Power Adapter 12V
  • 1 Personal Computer
  • 1 Jlink Lite Debugger (optional, users can use Open SDA)

Boards supported


The following boards are supported by this application:

  • S32K144EVB-Q100
  • S32K144-MB

Hardware Wiring


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

PIN FUNCTION S32K144EVB-Q100 S32K144-MB
LPUART1 TX (PTC7) UART_TX - wired on the board J11.26 - J20.2
LPUART1 RX (PTC6) UART_RX - wired on the board J11.25 - J20.5
ADC0 Input 12 (PTC14) POT - wired on the board J21.1 - J11.18

How to run


1. Importing the project into the workspace

After opening S32 Design Studio, go to File -> New S32DS Project From... and select adc_low_power_s32k144. 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(adc_low_power_s32k144). 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
adc_low_power_s32k144 Debug_RAM Jlink Debug the RAM configuration using Segger Jlink debuggers
adc_low_power_s32k144 Debug_FLASH Jlink Debug the FLASH configuration using Segger Jlink debuggers
adc_low_power_s32k144 Debug_RAM PEMicro Debug the RAM configuration using PEMicro debuggers
adc_low_power_s32k144 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.

Notes


For this example it is necessary to open a terminal emulator and configure it with:

  • 115200 baud
  • One stop bit
  • No parity
  • No flow control