S32 SDK
FLASH Partitioning

Example application which shows the basic operations of the FLASH driver

Application description


The purpose of this demo application is to show you the usage of the FLASH driver with the S32 SDK API.

The examples does the following operations:

  • Erases flash
  • Partitions the flash
  • Configures FlexNVM region as EEPROM
    Note
    The FlexNVM memory is partitioned to EEPROM use and is blocked for some erase commands (Erase Sector and Erase Block). As a consequence, loading the program to flash memory may fail on some debuggers. Please perform a mass erase operation on Flash to remove this partitioning after running the example to be able to update your application on target.

    Prerequisites


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

  • 1 S32K148 board
  • 1 Power Adapter 12V (if the board cannot be powered from the USB port)
  • 1 Personal Computer
  • 1 Jlink Lite Debugger (optional, users can use Open SDA)

Boards supported


The following boards are supported by this application:

  • S32K148EVB-Q100
  • S32K148-MB

Hardware Wiring


No connections are required for this example.

How to run


1. Importing the project into the workspace

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