S32K148EVB-Q176
Overview
NXP S32K148-Q176 [8] is a low-cost evaluation and development board for general-purpose industrial and automotive applications. The S32K148-Q176 is based on the 32-bit Arm Cortex-M4F NXP S32K148 [9] microcontroller. The onboard OpenSDA serial and debug adapter, running a mass storage device (MSD) bootloader and a collection of OpenSDA Applications, offers options for serial communication, flash programming, and run-control debugging. It is a bridge between a USB host and the embedded target processor.
Hardware
NXP S32K148
Arm Cortex-M4F @ up to 112 Mhz
1.5 MB Flash
256 KB SRAM
up to 127 I/Os
3x FlexCAN with FD
eDMA, 12-bit ADC, MPU, ECC and more.
Interfaces
CAN, LIN, UART/SCI
Ethernet connector compatible with different ethernet daughter cards
2 touchpads, potentiometer, user RGB LED and 2 buttons.
More information about the hardware and design resources can be found at NXP S32K148-Q176 [8] website.
Supported Features
The s32k148_evb board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo -
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
s32k148_evb/s32k148 target
Type |
Location |
Description |
Compatible |
|---|---|---|---|
CPU |
on-chip |
ARM Cortex-M4F CPU1 |
|
ADC |
on-chip |
NXP ADC122 |
|
CAN |
on-chip |
||
Clock control |
on-chip |
NXP S32 clock generator IP node1 |
|
Ethernet |
on-chip |
NXP ENET IP Module1 |
|
on-chip |
NXP ENET MAC/L2 Device1 |
||
on-chip |
NXP ENET PTP (Precision Time Protocol) Clock1 |
||
GPIO & Headers |
on-chip |
Kinetis GPIO5 |
|
I2C |
on-chip |
||
Input |
on-board |
Group of GPIO-bound input keys1 |
|
Interrupt controller |
on-chip |
ARMv7-M NVIC (Nested Vectored Interrupt Controller)1 |
|
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
on-board |
Group of PWM-controlled LEDs1 |
||
MDIO |
on-chip |
NXP ENET MDIO Features1 |
|
MMU / MPU |
on-chip |
NXP System Memory Protection Unit (SYSMPU)1 |
|
MTD |
on-chip |
Flash node1 |
|
Pin control |
on-chip |
NXP PORT Pin Controller5 |
|
on-chip |
NXP PORT Pin Controller1 |
||
PWM |
on-chip |
NXP FlexTimer Module (FTM) PWM controller1 |
|
RTC |
on-chip |
NXP Real Time Clock (RTC)1 |
|
Serial controller |
on-chip |
||
SPI |
on-chip |
||
SRAM |
on-chip |
Generic on-chip SRAM2 |
|
Timer |
on-chip |
ARMv7-M System Tick1 |
|
on-chip |
NXP FlexTimer Module (FTM)7 |
||
Watchdog |
on-chip |
NXP watchdog (WDOG32)1 |
Note
Before using the Ethernet interface, please take note of the following:
For boards with the part number
LSF24DatU16,R553needs to be depopulated.
Connections and IOs
This board has 5 GPIO ports named from gpioa to gpioe.
Pin control can be further configured from your application overlay by adding
children nodes with the desired pinmux configuration to the singleton node
pinctrl. Supported properties are described in
dts/bindings/pinctrl/nxp,port-pinctrl.yaml.
LEDs
The NXP S32K148-Q176 board has one user RGB LED that can be used either as a GPIO LED or as a PWM LED.
Devicetree node |
Devicetree alias |
Label |
Pin |
|---|---|---|---|
led1_red |
led0 |
LED1_RGB_RED |
PTE21 |
led1_green |
led1 |
LED1_RGB_GREEN |
PTE22 |
led1_blue |
led2 |
LED1_RGB_BLUE |
PTE23 |
Devicetree node |
Devicetree alias |
Label |
Pin |
|---|---|---|---|
led1_red_pwm |
pwm-led0 / red-pwm-led |
LED1_RGB_RED_PWM |
PTE21 / FTM4_CH1 |
led1_green_pwm |
pwm-led1 / green-pwm-led |
LED1_RGB_GREEN_PWM |
PTE22 / FTM4_CH2 |
led1_blue_pwm |
pwm-led2 / blue-pwm-led |
LED1_RGB_BLUE_PWM |
PTE23 / FTM4_CH3 |
The user can control the LEDs in any way. An output of 0 illuminates the LED.
Serial Console
The serial console is provided via lpuart1 on the OpenSDA adapter.
Pin |
Pin Function |
|---|---|
PTC7 |
LPUART1_TX |
PTC6 |
LPUART1_RX |
System Clock
The Arm Cortex-M4F core is configured to run at 80 MHz (RUN mode).
Programming and Debugging
The s32k148_evb board supports the runners and associated west commands listed below.
| flash | debug | rtt | attach | debugserver | |
|---|---|---|---|---|---|
| jlink | ✅ (default) | ✅ (default) | ✅ | ✅ | ✅ |
Applications for the s32k148_evb board can be built in the usual way as
documented in Building an Application.
This board configuration supports SEGGER J-Link [10] West runner for flashing and debugging applications. Follow the steps described in J-Link Debug Host Tools, to setup the flash and debug host tools for this runner.
Flashing
Run the west flash command to flash the application using SEGGER J-Link.
Debugging
Run the west debug command to start a GDB session using SEGGER J-Link.
Configuring a Console
We will use OpenSDA as a USB-to-serial adapter for the serial console.
Use the following settings with your serial terminal of choice (minicom, putty, etc.):
Speed: 115200
Data: 8 bits
Parity: None
Stop bits: 1
Support Resources for Zephyr
MCUXpresso for VS Code [2], wiki [3] documentation and Zephyr lab guides [4]
NXP’s Zephyr landing page [6] (including training resources)