GD32A503V-EVAL

Overview

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

The GD32A503VD features a single-core ARM Cortex-M4F MCU which can run up to 120-MHz with flash accesses zero wait states, 384kiB of Flash, 48kiB of SRAM and 88 GPIOs.

Hardware

  • 2 user LEDs

  • 2 user push buttons

  • Reset Button

  • ADC connected to a potentiometer

  • 1 DAC channels

  • GD25Q16 2Mib SPI Flash

  • AT24C02C 2KiB EEPROM

  • CS4344 Stereo DAC with Headphone Amplifier

  • GD-Link interface

    • CMSIS-DAP swd debug interface over USB HID.

  • 2 CAN FD ports

For more information about the GD32A503 SoC and GD32A503V-EVAL board:

Supported Features

The gd32a503v_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.
gd32a503v_eval
/
gd32a503

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M33F CPU1

arm,cortex-m33f

ADC

on-chip

GigaDevice GD32 ADC1 1

gd,gd32-adc

Clock control

on-chip

Gigadevice Reset and Clock Unit (RCU) if a multi-function peripheral in charge of reset control (RCTL) and clock control (CCTL) for all SoC peripherals1

gd,gd32-cctl

Counter

on-chip

GigaDevice GD32 timer7

gd,gd32-timer

DAC

on-chip

GigaDevice GD32 series DAC module1

gd,gd32-dac

DMA

on-chip

GD32 DMA controller2

gd,gd32-dma

Flash controller

on-chip

There are three types GD32 FMC1

gd,gd32-flash-controller

GPIO & Headers

on-chip

GD32 GPIO6

gd,gd32-gpio

I2C

on-chip

GigiDevice GD32 I2C2

gd,gd32-i2c

Interrupt controller

on-chip

ARMv8-M NVIC (Nested Vectored Interrupt Controller)1

arm,v8m-nvic

on-chip

GigaDevice External Interrupt Controller1

gd,gd32-exti

LED

on-board

Group of GPIO-controlled LEDs1

gpio-leds

Multi-Function Device

on-chip

Gigadevice Reset and Clock Unit (RCU) if a multi-function peripheral in charge of reset control (RCTL) and clock control (CCTL) for all SoC peripherals1

gd,gd32-rcu

Miscellaneous

on-chip

GigaDevice GD32 System Configuration Registers1

gd,gd32-syscfg

MMU / MPU

on-chip

ARMv8-M MPU (Memory Protection Unit)1

arm,armv8m-mpu

MTD

on-chip

Flash memory binding of GD32 FMC v21

gd,gd32-nv-flash-v2

on-board

Properties supporting Zephyr spi-nor flash driver (over the Zephyr SPI API) control of serial flash memories using the standard M25P80-based command set1

jedec,spi-nor

Pin control

on-chip

The GD32 pin controller (AF model) is a singleton node responsible for controlling pin function selection and pin properties1

gd,gd32-pinctrl-af

PWM

on-chip

GigaDevice GD32 PWM5

gd,gd32-pwm

Reset controller

on-chip

Gigadevice Reset and Clock Unit (RCU) if a multi-function peripheral in charge of reset control (RCTL) and clock control (CCTL) for all SoC peripherals1

gd,gd32-rctl

Serial controller

on-chip

GigaDevice USART1 2

gd,gd32-usart

SPI

on-chip

GigaDevice GD32 SPI1 1

gd,gd32-spi

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

Timer

on-chip

ARMv8-M System Tick1

arm,armv8m-systick

Watchdog

on-chip

GD32 free watchdog timer1

gd,gd32-fwdgt

on-chip

GD32 window watchdog timer1

gd,gd32-wwdgt

Serial Port

The GD32A503V-EVAL board has 3 serial communication ports. The default port is UART0 at PIN-72 and PIN-73.

Programming and Debugging

Before program your board make sure to configure boot setting and serial port. The default serial port is USART0.

Boot-0

Boot-1

Function

1-2

1-2

SRAM

1-2

2-3

Bootloader

2-3

Any

Flash

Using ROM bootloader

The GD32A503 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 gd32a503v_eval samples/hello_world
    
  2. Enable board bootloader:

    • Remove boot-0 jumper

    • press reset button

  3. To flash an image:

    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! gd32a503v_eval” in your terminal.