GD32F403Z-EVAL

Overview

The GD32F403Z-EVAL board is a hardware platform that enables design and debug of the GigaDevice F403 Cortex-M4F High Performance MCU.

The GD32F403ZE features a single-core ARM Cortex-M4F MCU which can run up to 168-MHz with flash accesses zero wait states, 512kiB of Flash, 96kiB of SRAM and 112 GPIOs.

Hardware

  • USB interface with mini-USB connector

  • 4 user LEDs

  • 4 user push buttons

  • Reset Button

  • CAN port

  • ADC connected to a potentiometer

  • 2 DAC channels

  • GD25Q40 4Mib SPI Flash

  • HY27UF081G2A 1GiB NAND Flash

  • AT24C02C 2KiB EEPROM

  • 3.2 TFT LCD (320x240)

  • PCM1770 Stereo DAC with Headphone Amplifier

  • Micro-SDHC interface

  • GD-Link interface

    • CMSIS-DAP swd debug interface over USB HID.

For more information about the GD32F403 SoC and GD32F403Z-Eval board:

Supported Features

The gd32f403z_eval 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.

Serial Port

The GD32F403Z-EVAL board has 5 serial communication ports. The default port is UART0 at PIN-9 and PIN-10.

Programming and Debugging

The gd32f403z_eval board supports the runners and associated west commands listed below.

flash debug

Before program your board make sure to configure boot setting and serial port. The default serial port is USART0. This port uses header JP-5/6 to route signals between USB VBUS/ID and USART J2.

Boot-0

Boot-1

Function

1-2

1-2

SRAM

1-2

2-3

Bootloader

2-3

Any

Flash

JP-5

JP-6

Function

1-2

1-2

USART0 / J2

2-3

2-3

USB VBUS/ID

open

open

Free

Using ROM bootloader

The GD32F403 MCU have a ROM bootloader which allow flash programming. User should install GD32 ISP Console software at some Linux path. The recommended is $HOME/.local/bin.

  1. Build the Zephyr kernel and the Hello World sample application:

    west build -b gd32f403z_eval samples/hello_world
    
  2. Enable board bootloader:

    • Remove boot-0 jumper

    • press reset button

  3. To flash an image:

    west build -b gd32f403z_eval samples/hello_world
    west flash -r gd32isp [--port=/dev/ttyUSB0]
    
  4. Run your favorite terminal program to listen for output. Under Linux the terminal should be /dev/ttyUSB0. For example:

    $ minicom -D /dev/ttyUSB0 -o
    

    The -o option tells minicom not to send the modem initialization string. Connection should be configured as follows:

    • Speed: 115200

    • Data: 8 bits

    • Parity: None

    • Stop bits: 1

    Press reset button

    You should see “Hello World! gd32f403z_eval” in your terminal.