This is the documentation for the latest (main) development branch of Zephyr. If you are looking for the documentation of previous releases, use the drop-down menu on the left and select the desired version.

GigaDevice 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.

gd32f403z_eval

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 board configuration supports the following hardware features:

Interface

Controller

Driver/Component

NVIC

on-chip

nested vectored interrupt controller

SYSTICK

on-chip

system clock

UART

on-chip

serial port-polling

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

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.