Skip to content

NXP UCANS32K146

NXP UCANS32K146 is a CAN Node reference design and development platform for mobile robotics applications, such as drones and rovers. It features the NXP S32K146 MCU based on an Arm Cortex-M4F core. There exist a few different revisions/variants of this board. All variants with the S32K146 microcontroller are supported.

Features

NXP FS32K146UAT0VLHT MCU

:   -   112 MHz Clock (Max.)
    -   1024 Kb Flash
    -   128 Kb SRAM
    -   4 Kb EEPROM
  • NXP UJA1169TK/F System Basis Chip

Connectivity:

:   -   Console UART (Console @ 115,200 baud)
    -   2x CAN FD
    -   I/O headers with GPIO, I2C, SPI, etc.

Serial Console

By default, the serial console will be provided on the DCD-LZ UART (available on the 7-pin DCD-LZ debug connector P6):


DCD-LZ UART RX PTC6 LPUART1_RX DCD-LZ UART TX PTC7 LPUART1_TX


LEDs and Buttons

Leds

The UCANS32K146 has one RGB LED:


RedLED PTD15 FTM0 CH0 GreenLED PTD16 FTM0 CH1 BlueLED PTD0 FTM0 CH2


An output of '0' illuminates the LED.

If CONFIG_ARCH_LEDS is not defined, then the user can control the LEDs in any way. The following definitions are used to access individual RGB components (see ucans32k146.h):

  • GPIO_LED_R
  • GPIO_LED_G
  • GPIO_LED_B

The RGB components could, alternatively, be controlled through PWM using the common RGB LED driver.

If CONFIG_ARCH_LEDs is defined, then NuttX will control the LEDs on board the UCANS32K146. The following definitions describe how NuttX controls the LEDs:

State Description RED GREEN BLUE


LED_STARTED NuttX has been started OFF OFF OFF LED_HEAPALLOCATE Heap has been allocated OFF OFF ON LED_IRQSENABLED Interrupts enabled OFF OFF ON LED_STACKCREATED LED_INIRQ LED_SIGNAL LED_ASSERTION Idle stack created In an interrupt In a signal handler An assertion failed OFF ON OFF LED_PANIC LED_IDLE The system has crashed S32K146 in sleep mode FLASH OFF OFF

Buttons

The UCANS32K146 supports one button:

SW3 PTC14


Confi gurations

Each UCANS32K146 configuration is maintained in a sub-directory and can be selected as follows:

tools/configure.sh ucans32k146:<subdir>

Where <subdir> is one of the sub-directories listed in the next paragraph.

NOTES (common for all configurations):

This configuration uses the mconf-based configuration tool. To change this configuration using that tool, you should:

:   a.  Build and install the kconfig-mconf tool. See
        nuttx/README.txt. Also see additional README.txt files in
        the NuttX tools repository.
    b.  Execute \'make menuconfig\' in nuttx/ in order to start the
        reconfiguration process.
  1. Unless otherwise stated, the serial console used is LPUART1 at 115,200 8N1.

nsh

Configures the NuttShell (nsh) located at apps/examples/nsh. Support for builtin applications is enabled, but in the base configuration the only application selected is the "Hello, World!" example.

can

Besides the NuttShell this configuration also enables (Socket)CAN support, as well as I2C and SPI support. It includes the SLCAN and can-utils applications for monitoring and debugging CAN applications.