6 Revision history ..................................................................................................................... 51
2/ 51
User Manual
GD32450I-EVAL
List of Tables
Table 1 Function pin assign ........................................................................................................................... 4
Table 2 Revision history ............................................................................................................................... 51
3/ 51
User Manual
Function
Pin
Description
LED
PE2
LED1
PE3
LED2
PF10
LED3
RESET
K1-Reset
KEY
PA0
K2-Warkup
PC13
K3-Tamper
PB14
K4-User key
USART0
PA9
USART0_TX
PA10
USART0_RX
ADC
PC3
ADC012_IN13
DAC
PA4
DAC_OUT0
I2C
PB6
I2C0_SCL
PB7
I2C0_SDA
SPI
PG10
SPI5_IO2
PG11
SPI5_IO3
PG13
SPI5_SCK
PG14
SPI5_MOSI
PG12
SPI5_MISO
PI8
SPI5_CS
I2S
PA6
I2S1_MCK
PI1
I2S1_CK
PI0
I2S1_WS
PC1
I2S1_SD
CAN
PB8
CAN0_RX
PB9
CAN0_TX
Nand Flash
PD0
EXMC_D2
PD1
EXMC_D3
PD4
EXMC_NOE
PD5
EXMC_NWE
GD32450I-EVAL
1 Summary
GD32450I-EVAL uses GD32F450IGH6 as the main controller. It uses Mini USB interface
or DC-005 connector to supply 5V power. SWD, Reset, Boot, User button key, LED,
CAN, I2C, I2S, USART, RTC, LCD, SPI, ADC, DAC, EXMC, CTC, SDIO, DCI, ENET,
USBFS, USBHS, GD-Link and Extension Pins are also included. For more details
please refer to GD32450I-EVAL-V1.1 schematic.
2 Function Pin Assign
Table 1 Function pin assign
4/ 51
User Manual
PD6
EXMC_NWAIT
PD7
EXMC_NCE1
PD11
EXMC_CLE
PD12
EXMC_ALE
PD14
EXMC_D0
PD15
EXMC_D1
PE7
EXMC_D4
PE8
EXMC_D5
PE9
EXMC_D6
PE10
EXMC_D7
SDRAM
PC2
EXMC_SDNE0
PC5
EXMC_SDCKE0
PD0
EXMC_D2
PD1
EXMC_D3
PD8
EXMC_D13
PD9
EXMC_D14
PD10
EXMC_D15
PD14
EXMC_D0
PD15
EXMC_D1
PE0
EXMC_NBL0
PE1
EXMC_NBL1
PE7
EXMC_D4
PE8
EXMC_D5
PE9
EXMC_D6
PE10
EXMC_D7
PE11
EXMC_D8
PE12
EXMC_D9
PE13
EXMC_D10
PE14
EXMC_D11
PE15
EXMC_D12
PF0
EXMC_A0
PF1
EXMC_A1
PF2
EXMC_A2
PF3
EXMC_A3
PF4
EXMC_A4
PF5
EXMC_A5
PF11
EXMC_NRAS
PF12
EXMC_A6
PF13
EXMC_A7
PF14
EXMC_A8
PF15
EXMC_A9
PG0
EXMC_A10
GD32450I-EVAL
5/ 51
User Manual
PG1
EXMC_A11
PG2
EXMC_A12
PG4
EXMC_A14
PG5
EXMC_A15
PG8
EXMC_SDCLK
PG15
EXMC_NCAS
PH5
EXMC_SDNWE
SDIO
PD2
SDIO_CMD
PC12
SDIO_CK
PC8
SDIO_D0
PC9
SDIO_D1
PC10
SDIO_D2
PC11
SDIO_D3
DCI
PB6
DCI_I2C0_SCL
PB7
DCI_I2C0_SDA
PA4
DCI_HSYNC
PG9
DCI_VSYNC
PA6
DCI_PIXCLK
PA8
DCI_XCLK
PB9
DCI_D7
PB8
DCI_D6
PD3
DCI_D5
PC11
DCI_D4
PC9
DCI_D3
PC8
DCI_D2
PC7
DCI_D1
PC6
DCI_D0
LCD
PI3
LCD_Touch_PENIRQ
PF9
LCD_SPI4_MOSI
PF8
LCD_SPI4_MISO
PF7
LCD_SPI4_SCK
PF6
LCD_SPI4_NSS
PB15
LCD_PWM_BackLight
PH7
LCD_Touch_Busy
PH2
LCD_R0
PH3
LCD_R1
PH8
LCD_R2
PH9
LCD_R3
PH10
LCD_R4
PH11
LCD_R5
PH12
LCD_R6
PG6
LCD_R7
GD32450I-EVAL
6/ 51
User Manual
PE5
LCD_G0
PE6
LCD_G1
PH13
LCD_G2
PH14
LCD_G3
PH15
LCD_G4
PI0
LCD_G5
PI1
LCD_G6
PI2
LCD_G7
PE4
LCD_B0
PG12
LCD_B1
PG10
LCD_B2
PG11
LCD_B3
PI4
LCD_B4
PI5
LCD_B5
PI6
LCD_B6
PI7
LCD_B7
PG7
LCD_CLK
PI10
LCD_HSYNC
PI9
LCD_VSYNC
Ethernet
PA1
ETH_RMII_REF_CLK
PA2
ETH_MDIO
PA7
ETH_RMII_CRS_DV
PG11
ETH_RMII_TX_EN
PG13
ETH_RMII_TXD0
PG14
ETH_RMII_TXD1
PC1
ETH_MDC
PC4
ETH_RMII_RXD0
PC5
ETH_RMII_RXD1
PA8
ETH_RMII_REF_CLK
USB_FS
PA9
USB_VBUS
PA11
USB_DM
PA12
USB_DP
USB_HS
PH4
USB_HS_ULPI_NXT
PI11
USB_HS_ULPI_DIR
PC0
USB_HS_ULPI_STP
PA5
USB_HS_ULPI_CK
PB5
USB_HS_ULPI_D7
PB13
USB_HS_ULPI_D6
PB12
USB_HS_ULPI_D5
PB11
USB_HS_ULPI_D4
PB10
USB_HS_ULPI_D3
PB1
USB_HS_ULPI_D2
GD32450I-EVAL
7/ 51
User Manual
PB0
USB_HS_ULPI_D1
PA3
USB_HS_ULPI_D0
GD32450I-EVAL
3 Getting started
The EVAL board uses Mini USB connecter or DC-005 connector to get power DC +5V,
which is the hardware system normal work voltage. Three kinds of different USB power
supply which are USB_FS, USB_HS_ULPI, GD-Link can be chosen through JP4. A
J-Link tool or GD-Link on board is necessary in order to download and debug programs.
Select the correct boot mode and then power on, the LED5 will turn on, which indicates
that the power supply is OK.
There are Keil version and IAR version of all projects. Keil version of the projects are
created based on Keil MDK-ARM 4.74 uVision4. IAR version of the projects are created
based on IAR Embedded Workbench for ARM 7.40.2. In Firmware folder, Addon and
Software Pack are used to add the devices, peripherals and others to IDE. During use,
the following points should be noted:
1. If you use Keil uVision4 to open the project, install the GD32F4xx_Addon.1.0.0.exe
which is in \Library\Firmware to load the associated files.
2. If you use Keil uVision5 to open the project, there are two ways to solve the "Device
Missing (s)" problem. One is to install GigaDevice.GD32F4xx_DFP.1.0.0.pack which is
in \Library\Firmware. In Project menu, select the Manage sub menu, click on the
“Version Migrate 5 Format...” menu, the Keil uVision4 project will be converted to Keil
uVision5 project. Then add “C:\Keil_v5\ARM\Pack\ARM\CMSIS\4.2.0\CMSIS\Include” to
C/C++ in Option for Target. The other is to install Addon directly. Select the installation
directory of Keil uVision5 software, such as C:\Keil_v5, in Destination Folder of Folder
Selection. Select the corresponding device in Device of Option for Target and add
“C:\Keil_v5\ARM\Pack\ARM\CMSIS\4.2.0\CMSIS\Include” to C/C++ in Option for Target.
3. If you use IAR to open the project, install IAR_GD32F4xx_Addon.exe which is in
\Library\Firmware to load the associated files.
8/ 51
User Manual
G
1
Vout
2
Vin
3
4
U2 AMS1086CD-3.3
E1
16V/10uF,AVX
C17
50V/0.1uF
C18
50V/0.1uF
+3V3
LED5
LED0603
R7
470Ω
1
TP1
TP +3V3
P1
SMD1812P150TF/24
5
S2
3
S
2
S1
1
4
SW1
SS12D07VG4
1
3
2
CN1
DC-005
GND
VCC
+5V
GND
E2
16V/10uF,AVX
POWER
V_USB_5V
R4
10KΩ
1
2
3
JP2
BOOT0
GND
R5
10KΩ
1
2
3
JP3
BOOT1
GND
BOOT0
PB2
+3V3
+3V3
BOOT1
BOOT1
BOOT0
Boot Mode
Any
2-3
User memory
2-3
1-2
System memory
1-2
1-2
SRAM memory
LED1
LED0603
LED2
LED0603
LED3
LED0603
R13
470Ω
R14
470Ω
R15
470Ω
LED
LED1
LED2
LED3
GND
PE2
PE3
PF10
GD32450I-EVAL
4 Hardware layout overview
4.1 Power
4.2 Boot
4.3 LED
9/ 51
User Manual
KEY1
K2
K-1102B
R17
10KΩ
+3V3
GND
C28
50V/0.1uF
KEY2
K3
K-1102B
R18
10KΩ
+3V3
GND
C29
50V/0.1uF
KEY3
K4
K-1102B
R19
10KΩ
+3V3
GND
C30
50V/0.1uF
PA0PC13PB14
KEY
WakeupTamperUSER
C1+
1
V+
2
C1-
3
C2+
4
C2-
5
V-
6
T2OUT
7
R2IN
8
R2OUT
9
T2IN
10
T1IN
11
R1OUT
12
R1IN
13
T1OUT
14
GND
15
VCC
16
U3
MAX3232CSE+
+3V3
GND
C23
50V/0.1uF
C25
50V/0.1uF
C24
50V/0.1uF
C22
50V/0.1uF
C21
50V/0.1uF
GND
USART0_TX
USART0_RX
USART0_TX
1
6
2
7
3
8
4
9
5
J1
COM1
GND
1
2
3
JP5
HEADER 3
PA9
PA10
USB_FS_VBUS
Short JP5(2,3)for USB_FS function
RS232_TX0
RS232_RX0
Short JP5(1,2)for USART0 function
USART0
USART0_RX
GD32450I-EVAL
4.4 KEY
4.5 USART
10/ 51
User Manual
+3V3
GND
ADC
PC3
VR1
10K
1
TP2
TP ADin
ADC012_IN13
DAC
DAC_OUT0
GND
1
2
JP7
DAC
PA4
PA4 is an AFIO, please refer to DCI Schematic for right config
PC1 is an AFIO, please refer to ETHNET Schematic for right config
Pi1
Pi0
I2S1_SD
I2S1_CK
I2S1_WS
I2S1_MCKPA6
PC1
Pi1
LCD_G6
I2S1_CK
Pi0
LCD_G5
I2S1_WS
PA6
DCI_PIXCLK
I2S1_MCK
R43
0Ω
R44
0Ω
R55
0Ω
I2S
I2S1_MCK
I2S1_WS
I2S1_CK
I2S1_SD
C27
50V/0.1uF
GND
E7
16V/10uF,AVX
C34
50V/0.1uF
GND
E8
16V/10uF,AVX
GND
5
4
3
2
1
J2
HeadPhone
E4
16V/3.3uF,AVX
E6
16V/3.3uF,AVX
GND
R91
10KΩ
R24
10KΩ
GND
GND
R25
470Ω
R54
470Ω
SDIN
1
SCLK
2
LRCK
3
MCLK
4
VQ5FILT+
6
AOUTL
7
GND
8
AOUTR
10
VA
9
U7
CS4344
+3V3
GD32450I-EVAL
4.6 ADC
4.7 DAC
4.8 I2S
11/ 51
User Manual
A0
1
A1
2
A2
3
GND
4
SDA
5
SCL
6
WP
7
VCC
8
U4
AT24C02C-SSHM-T
+3V3
GND
R10
4.7KΩ
R11
4.7KΩ
I2C0_SCL
I2C0_SDA
I2C
C26
50V/0.1uF
GND
PB7
PB6
CS
1
SO
2
WP
3
GND4SI
5
SCLK
6
HOLD
7
VCC
8
U5
GD25Q16BS
+3V3
GND
SPIFlash_CS
R21
10KΩ
+3V3
C32
50V/0.1uF
GND
SPI5_MISO_IO1
SPI5_WP_IO2
SPI5_MOSI_IO0
SPI5_SCK
SPI5_HOLD_IO3
Standard & Quad SPI Flash
SPI5_MOSI_IO0
SPI5_MISO_IO1
SPI5_WP_IO2SPI5_HOLD_IO3
SPI5_SCK
SPIFlash_CS
PG14
PG12
PG10
PG11
PG13
Pi8
1
2
3
JP12
HEADER 3
1
2
3
JP13
HEADER 3
1
2
3
JP20
HEADER 3
RMII_TX_EN
RMII_TXD0
RMII_TXD1
Short JP12(1,2) for Ethnet function
Short JP12(2,3) for SPI & TLI function
Short JP13(1,2) for Ethnet function
Short JP13(2,3) for SPI function
Short JP20(1,2) for Ethnet function
Short JP20(2,3) for SPI function
PG10
SPI5_#WP_IO2
LCD_B2
SPI5_#HOLD_IO3
PG12
SPI5_MISO_IO1
LCD_B1
LCD_B3
D
1
GND
2
VCC
3
R
4
Vref
5
CANL
6
CANH
7
RS
8
U6
SN65HVD230
CAN0H
CAN0L
R22
0Ω
GND
R23
120Ω
1
2
JP14
HEADER 2
CAN0_TX
CAN0_RX
GND
+3V3
C33
50V/0.1uF
GND
CAN
PB9
PB8
GD32450I-EVAL
4.9 I2C
4.10 SPI
4.11 CAN
12/ 51
User Manual
TX_CLK
1
TX_EN
2
TXD_0
3
TXD_1
4
TXD_2
5
TXD_3/SNI_MODE
6
PWR_DOWN/INT
7
NC
8
NC
9
NC
10
NC
11
NC
12
RD-
13
RD+
14
AGND
15
TD-
16
TD+
17
PFBIN1
18
AGND
19
NC
20
NC
21
AVDD33
22
PFBOUT
23
RBIAS
24
25MHz_OUT
25
LED_ACT/COL/AN_EN
26
LED_SPEED/AN1
27
LED_LINK/AN0
28
RESET_N
29
MDIO
30
MDC
31
IOVDD33
32
X2
33
X1
34
IOGND
35
DGND
36
PFBIN2
37
RX_CLK
38
RX_DV/MII_MODE
39
CRS/CRS_DV/LED_CFG
40
RX_ER/MDIX_EN
41
COL/PHYAD0
42
RXD_0/PHYAD1
43
RXD_1/PHYAD2
44
RXD_2/PHYAD3
45
RXD_3/PHYAD4
46
IOGND
47
IOVDD33
48
U8
DP83848CVV
+3V3
R32
2.2KΩ
RMII MODE
R33
1.5KΩ
+3V3
NRST
R40
2.2KΩ
+3V3
R41
4.87KΩ
GND
E3
16V/10uF,AVX
C37
50V/0.1uF
C38
50V/0.1uF
C39
50V/0.1uF
GND
GND
+3V3
R38
2.2KΩ
R39
2.2KΩ
+3V3
R34
2.2KΩ
R35
2.2KΩ
R36
2.2KΩ
+3V3
TD+
1
4
TD-
2
RD+
3
5
RD-
6
L+
9
L-
10
R+
12
R-
11
GND1
13
GND2
14
JP16
HR911105A
GND
+3V3
R26
49.9Ω
R27
49.9Ω
R28
49.9Ω
R29
49.9Ω
C36
50V/0.1uF
C35
50V/0.1uF
GNDGND
R30
240Ω
R31
240Ω
C40
50V/0.1uF
C41
50V/0.1uF
C42
50V/0.1uF
+3V3
GND
PC4
PC5
PA1
MCO
RMII_TX_EN
RMII_TXD0
RMII_TXD1
RMII_RXD0
RMII_RXD1
RMII_CRS_DV
RMII_MDC
RMII_MDIO
RMII_REF_CLK
RMII_TX_EN
RMII_TXD0
RMII_TXD1
RMII_RXD0
RMII_RXD1
RMII_MDC
RMII_MDIO
RMII_REF_CLK
RMII_CRS_DV
RP2
33Ω
RP3
33Ω
PA8
PA8 is an AFIO, refer to DCI schematic for right config
Ethernet
PA7
PA2
PG11
PG13
PG14
PG11、PG13、PG14 are AFIOs, please refer to SPI schematic for right config
1
2
3
JP17
HEADER 3
EXMC_SDCKE0
Short JP17(1,2) for Ethnet function
Short JP17(2,3) for SDRAM function
PC1
1
2
3
JP18
HEADER 3
Short JP18(1,2) for Ethnet function
Short JP18(2,3) for I2S function
I2S1_SD
R37
10KΩ
R42
10KΩ
R45
10KΩ
R46
10KΩ
+3V3
+3V3
E5
16V/10uF,AVX
GND
PD2
PC12
SDIO_DAT3
SDIO_CMD
SDIO_CLK
SDIO_DAT0
SDIO_DAT1
SDIO_DAT3
SDIO_CMD
SDIO_CLK
SDIO_DAT0
SDIO_DAT1
SDIO_DAT2
D2
1
D3
2
CMD
3
VCC
4
CLK
5
GND
6
D0
7
D1
8
CD
9
JP32
TF_CARD_SOCKET
+3V3
SDIO
GND
SDIO_DAT2PC10
PC8
PC9
PC11
PC8
SDIO_DAT0
DCI_D2
PC9
SDIO_DAT1
DCI_D3
PC11
SDIO_DAT2
DCI_D4
GD32450I-EVAL
4.12 Ethernet
4.13 SDIO
13/ 51
User Manual
EXMC_D0
EXMC_D1
EXMC_D2
EXMC_D3
EXMC_D4
EXMC_D5
EXMC_D6
EXMC_D7
EXMC_NWE
EXMC_NOE
PD14
PD15
PE7
PE8
PE9
PE10
PD4
CL
16
AL
17
W
18
R
8
E
9
VSS2
36
VSS1
13
VDD2
37
VDD1
12
IO7
44
IO6
43
IO5
42
IO4
41
IO3
32
IO2
31
IO1
30
IO0
29
WP
19
RB
7
U11
HY27UF081G2A
EXMC_A16
EXMC_A17
EXMC_NWE
EXMC_NOE
R64
10KΩ
+3V3
R63
10KΩ
+3V3
R66
10KΩ
+3V3
EXMC_NWAIT
GND
+3V3
Nand Flash
EXMC_D7
EXMC_D6
EXMC_D5
EXMC_D4
EXMC_D3
EXMC_D2
EXMC_D1
EXMC_D0
C50
50V/0.1uF
C51
50V/0.1uF
+3V3
GND
EXMC_A17
EXMC_A16
EXMC_NWAIT
EXMC_NCE1
PD11
PD12
PD7
EXMC_NCE1
PD5
PD6
PD0
PD1
VDD
1
DQ0
2
VDDQ
3
DQ1
4
DQ2
5
VSSQ
6
DQ3
7
DQ4
8
VDDQ
9
DQ5
10
DQ6
11
VSSQ
12
DQ7
13
VDD
14
LDQM
15
WE
16
CAS
17
RAS
18
CS
19
BA0
20
BA1
21
A10/AP
22
A0
23
A1
24
A2
25
A3
26
VDD
27
VSS
28
A4
29
A5
30
A6
31
A7
32
A8
33
A9
34
A11
35
A12
36
CKE
37
CLK
38
UDQM
39
NC
40
VSS
41
DQ8
42
VDDQ
43
DQ9
44
DQ10
45
VSSQ
46
DQ11
47
DQ12
48
VDDQ
49
DQ13
50
DQ14
51
VSSQ
52
DQ15
53
VSS
54
U9
MT48LC16M16A2P-6AIT
+3V3
GND
+3V3
+3V3
+3V3
+3V3
+3V3GND
GND
GND
GND
GND
GND
GND
EXMC_D0
EXMC_D1
EXMC_D2
EXMC_D3
EXMC_D4
EXMC_D5
EXMC_D6
EXMC_D7EXMC_D8
EXMC_D9
EXMC_D10
EXMC_D11
EXMC_D12
EXMC_D13
EXMC_D14
EXMC_D15
EXMC_NBL0
EXMC_NBL1EXMC_SDNWE
EXMC_SDNCAS
EXMC_SDNRAS
EXMC_SDNE0
EXMC_BA0
EXMC_BA1
EXMC_A0
EXMC_A1
EXMC_A2
EXMC_A3EXMC_A4
EXMC_A5
EXMC_A6
EXMC_A7
EXMC_A8
EXMC_A9
EXMC_A10
EXMC_A11
EXMC_A12
EXMC_SDCKE0
EXMC_SDCLK
EXMC_D0
PE11
PE12
PE13
PE14
PE15
PD8
PD9
PD10
+3V3
+3V3
PH5
PC2
EXMC_SDNWE
EXMC_SDNE0
EXMC_SDCKE0
PE0
PE1
PF0
PF1
PF2
PF3
PF4
PF5
PF14
PF15
PF11
PF12
PF13
PG0
PG1
PG2
PG4
PG5
PG15
PG8
EXMC_NBL0
EXMC_NBL1
EXMC_SDNCAS
EXMC_SDNRAS
EXMC_BA0
EXMC_BA1
EXMC_SDCLK
EXMC_A0
EXMC_D1
EXMC_D2
EXMC_D3
EXMC_D4
EXMC_D5
EXMC_D6
EXMC_D7
EXMC_D8
EXMC_D9
EXMC_D10
EXMC_D11
EXMC_D12
EXMC_D13
EXMC_D14
EXMC_D15
EXMC_A1
EXMC_A2
EXMC_A3
EXMC_A4
EXMC_A5
EXMC_A6
EXMC_A7
EXMC_A8
EXMC_A9
EXMC_A10
EXMC_A11
EXMC_A12
SDRAM
DCI_8bit, TLI and SDRAM can be used at the same time
C52
50V/0.1uF
C53
50V/0.1uF
C54
50V/0.1uF
C55
50V/0.1uF
C56
50V/0.1uF
C57
50V/0.1uF
C58
50V/0.1uF
PD0
PD1
PE7
PE8
PE9
PE10
PD14
PD15
R8
10KΩ
PC5
PC5 is AFIO, please refer to ETHNET schematic for right config
GD32450I-EVAL
4.14 NAND Flash
4.15 SDRAM
14/ 51
User Manual
DCI 8bit
+3V3
DCI_I2C0_SCL
DCI_VSYNC
DCI_PIXCLK
DCI_D7
DCI_D5
DCI_D3
DCI_D1
GND
DCI_I2C0_SDA
DCI_HSYNC
DCI_XCLK
DCI_D6
DCI_D4
DCI_D2
DCI_D0
DCI_I2C0_SCL
DCI_I2C0_SDA
DCI_VSYNC
DCI_HSYNC
DCI_PIXCLK
DCI_XCLK
DCI_D5
DCI_D4
DCI_D3
DCI_D2
DCI_D1
DCI_D0
PG9
PA6
PA8
PC6
PC7
PC8
PC9
PC11
PD3
DCI_8bit, TLI and SDRAM can be used at the same time
1
2
3
JP22
HEADER 3
Short JP22(1,2) for Ethnet function
Short JP22(2,3) for DCI function
RMII_REF_CLK
PB9
PB8
1
2
3
JP19
HEADER 3
1
2
3
JP21
HEADER 3
CAN0_TX
CAN0_RX
Short JP19(1,2) for CAN function
DCI_D6
DCI_D7
Short JP19(2,3) for DCI function
Short JP21(1,2) for CAN function
Short JP21(2,3) for DCI function
OV2640
PB7
PB6
PA4
1
2
3
JP23
HEADER 3
Short JP23(1,2) for DAC function
Short JP23(2,3) for DCI function
DAC_OUT0
R20
0Ω
R16
0Ω
R12
0Ω
PC8
SDIO_DAT0
DCI_D2
PC9
SDIO_DAT1
DCI_D3
PC11
SDIO_DAT2
DCI_D4
12
34
56
78
910
11 12
13 14
15 16
JP27
8×2P2.54
PA6
DCI_PIXCLK
I2S1_MCK
TLI
PG12
PG10
PE4
Pi5
Pi4
Pi6
Pi7
LCD_B1
LCD_B2
LCD_B3
LCD_B4
LCD_B5
LCD_B6
LCD_B7
LCD_B0
PE5
PE6
PH13
Pi2
PH15
Pi0
Pi1
PH14
LCD_G0
LCD_G1
LCD_G2
LCD_G3
LCD_G4
LCD_G5
LCD_G6
LCD_G7
PH9
PH12
PG6
PH3
PH2
PH10
PH11
PH8
LCD_R0
LCD_R1
LCD_R2
LCD_R3
LCD_R4
LCD_R5
LCD_R6
LCD_R7
PG7
Pi10
Pi9
LCD_CLK
LCD_HSYNC
LCD_VSYNC
LCD_SPI4_NSS
LCD_SPI4_SCK
LCD_SPI4_MISO
LCD_SPI4_MOSI
PH7
LCD_Touch_PENIRQ
LCD_PWM_BackLight
LCD_Touch_Busy
12
34
56
78
910
1112
1314
1516
1718
1920
2122
2324
2526
2728
2930
3132
3334
3536
3738
3940
JP30
20X2P2.54
LCD_Touch_PENIRQ
+5V
LCD_SPI4_MOSI
LCD_SPI4_SCK
LCD_PWM_BackLight
LCD_Touch_Busy
LCD_R0LCD_R1
LCD_R2LCD_R3
LCD_R4LCD_R5
LCD_R6LCD_R7
LCD_G0LCD_G1
LCD_G2LCD_G3
LCD_G4LCD_G5
LCD_G6LCD_G7
LCD_B0LCD_B1
LCD_B2LCD_B3
LCD_B4LCD_B5
LCD_B6LCD_B7
LCD_CLK
LCD_HSYNC
LCD_SPI4_MISO
LCD_SPI4_NSS
GND
LCD_VSYNC
GND
DCI_8bit, TLI and SDRAM can be used at the same time
R117
0Ω
R118
0Ω
R119
0Ω
SPI5_HOLD_IO3PG11
PG10
SPI5_#WP_IO2
LCD_B2
PG12
SPI5_MISO_IO1
LCD_B1
LCD_DE
GND
PG10、PG11、PG12 are AFIO, please refer to SPI Schematic for right config
Pi3
PB15
PF7
PF9
PF8
PF6
Pi1
LCD_G6
I2S1_CK
Pi0
LCD_G5
I2S1_WS
GD32450I-EVAL
4.16 DCI
4.17 LCD
15/ 51
User Manual
GND
R58
22Ω
R59
22Ω
E10
16V/10uF,AVX
GND
PA11
PA12
R62
1MΩ
C49
50V/4.7nF
USB_FS_VBUS
USB_FS_DM
USB_FS_DP
VBUS
1
DM
2
DP
3
ID
4
GND
5
Shield
6
USB_MiniAB receptacle
CN2
Mini_USB
PA9
PA9 is AFIO, please refer to USART schematic for right config
GND
VBUS_FS_5V
R120
10KΩ
"VBUS_FS_5V control( active HIGH)" see USB_HS schematic
This demo includes the following functions of GD32 MCU:
Learn to use GPIO control the LED
Learn to use SysTick to generate 1ms delay
GD32450I-EVAL board has three LEDs. The LED1, LED2 and LED3 are controlled by
GPIO. This demo will show how to light the LEDs.
17/ 51
User Manual
GD32450I-EVAL
5.1.2 DEMO Running Result
Download the program <01_GPIO_Runing_Led> to the EVAL board, LED1, LED2,
LED3 will turn on in sequence with interval of 200ms, and turn off together, 200ms later,
repeat the process.
5.2 GPIO_Keyboard_Polling_mode
5.2.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use GPIO control the LED and the KEY
Learn to use SysTick to generate 1ms delay
GD32450I-EVAL board has four keys and three LEDs. The four keys are Reset key,
Tamper key, Wakeup key and User key. The LED1, LED2 and LED3 are controlled by
GPIO.
This demo will show how to use the Tamper key to control the LED1.When press down
the Tamper Key, it will check the input value of the IO port. If the value is 0 and will wait
for 100ms.Check the input value of the IO port again. If the value still is 0, it indicates
that the button is pressed successfully and toggle LED1.
5.2.2 DEMO Running Result
Download the program <02_GPIO_KeyBoard_Polling_mode> to the EVAL board, press
down the Tamper Key, LED1 will be turned on. Press down the Tamper Key again, LED1
will be turned off.
5.3 GPIO_KeyBoard_Interrupt_mode
5.3.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use GPIO control the LED and the KEY
Learn to use EXTI to generate external interrupt
GD32450I-EVAL board has four keys and three LEDs. The four keys are Reset key,
Tamper key, Wakeup key and User key. The LED1, LED2 and LED3 are controlled by
GPIO.
18/ 51
User Manual
GD32450I-EVAL
This demo will show how to use the EXTI interrupt line to control the LED1.When press
down the Tamper Key, it will produce an interrupt. In the interrupt service function, the
demo will toggle LED1.
5.3.2 DEMO Running Result
Download the program <03_GPIO_KeyBoard_Interrupt_mode> to the EVAL board,
Press down the Tamper Key, LED1 will be turned on. Press down the Tamper Key again,
LED1 will be turned off.
5.4 USART_Printf
5.4.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use GPIO control the LED
Learn to retarget the C library printf function to the USART
5.4.2 DEMO Running Result
Download the program < 04_USART_Printf > to the EVAL board, jump the JP5 to
USART with the jumper cap and connect serial cable to EVAL_COM1. This
implementation outputs “USART printf example: please press the Tamper key” on the
HyperTerminal using EVAL_COM1. Press the Tamper key, serial port will output “USART
printf example”.
The output information via the serial port is as following.
5.5 USART_Echo_Interrupt_mode
5.5.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the USART transmit and receive interrupts to communicate with the
serial terminal tool
19/ 51
User Manual
GD32450I-EVAL
5.5.2 DEMO Running Result
Download the program < 05_USART_Echo_Interrupt_mode > to the EVAL board, jump
the JP5 to USART with the jumper cap and connect serial cable to EVAL_COM1. Firstly,
all the LEDs are turned on and off for test. Then, the EVAL_COM1 sends the tx_buffer
array (from 0x00 to 0xFF) to the serial terminal tool supporting hex format
communication and waits for receiving data of BUFFER_SIZE bytes from the serial
terminal. The data MCU have received is stored in the rx_buffer array. After that,
compare tx_buffer with rx_buffer. If tx_buffer is same with rx_buffer, LED1, LED2, LED3
flash by turns. Otherwise, LED1, LED2, LED3 toggle together.
The output information via the serial port is as following.
5.6 USART_DMA
5.6.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the USART transmit and receive data using DMA
5.6.2 DEMO Running Result
Download the program < 06_USART_DMA > to the EVAL board, jump the JP5 to
USART with the jumper cap and connect serial cable to EVAL_COM1. Firstly, all the
LEDs are turned on and off for test. Then, the EVAL_COM1 sends the tx_buffer array
(from 0x00 to 0xFF) to the serial terminal tool supporting hex format communication and
waits for receiving data of same bytes as tx_buffer from the serial terminal. The data
MCU have received is stored in the rx_buffer array. After that, compare tx_buffer with
rx_buffer. If tx_buffer is same with rx_buffer, LED1, LED2, LED3 flash by turns.
Otherwise, LED1, LED2, LED3 toggle together.
20/ 51
User Manual
GD32450I-EVAL
5.7 ADC_Temperature_Vrefint_Vbat
5.7.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the ADC to convert analog signal to digital data
Learn to get the value of inner channel 16(temperature sensor channel), channel 17
(VREFINT channel) and channel 18(VBAT/4 channel)
5.7.2 DEMO Running Result
Jump the JP5 to USART with the jumper cap, and then download the program
<07_ADC_Temperature_Vrefint_Vbat> to the GD32450I-EVAL board. Connect serial
cable to EVAL_COM1, open the HyperTerminal.
When the program is running, HyperTerminal display the value of temperature, internal
voltage reference (VREFINT) and external battery voltage V
Notice: because there is an offset, when inner temperature sensor is used to detect
accurate temperature, an external temperature sensor part should be used to calibrate
the offset error.
BAT
.
21/ 51
User Manual
GD32450I-EVAL
5.8 ADC0_ADC1_Follow_up_mode
5.8.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the ADC to convert analog signal to digital data
Learn to use ADC0 and ADC1 follow-up mode
5.8.2 DEMO Running Result
Jump the JP5 to USART with the jumper cap, and then download the program
<08_ADC0_ADC1_Follow_up_mode> to the GD32450I-EVAL board. Connect serial
cable to EVAL_COM1, open the HyperTerminal. PC5 pin connect to the external voltage
input. PC3 is the output voltage of the slide rheostat VR1 on board. Keep PC5 pin
should not be reused by other peripherals. JP17 should not be connected.
TIMER1_CH1 is the trigger source of ADC0 and ADC1. When the rising edge of
TIMER1_CH1 coming, ADC0 starts immediately and ADC1 starts after a delay of
several ADC clock cycles. The values of ADC0 and ADC1 are transmitted to array
adc_value[0] and adc_value [1] by DMA.
When the first rising edge of TIMER1_CH1 coming, the value of the ADC0 conversion of
PC3 pin is stored into the low half word of adc_value [0], and after a delay of several
ADC clock cycles the value of the ADC1 conversion of PC5 pin is stored into the high
half word of adc_value [0]. When the second rising edge of TIMER1_CH1 coming, the
value of the ADC0 conversion of PC5 pin is stored into the low half word of adc_value [1],
and after a delay of several ADC clock cycles the value of the ADC1 conversion of PC3
pin is stored into the high half word of adc_value [1].
When the program is running, HyperTerminal display the regular value of ADC0 and
ADC1 by adc_value [0] and adc_value [1].
22/ 51
User Manual
GD32450I-EVAL
5.9 ADC0_ADC1_Regular_Parallel_mode
5.9.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the ADC to convert analog signal to digital data
Learn to use ADC0 and ADC1 regular parallel mode
5.9.2 DEMO Running Result
Jump the JP5 to USART with the jumper cap, and then download the program
<09_ADC0_ADC1_Regular_Parallel_mode> to the GD32450I-EVAL board. Connect
serial cable to EVAL_COM1, open the HyperTerminal. PC5 pin connect to the external
voltage input. PC3 is the output voltage of the slide rheostat VR1 on board. Keep PC5
pin should not be reused by other peripherals. JP17 should not be connected.
TIMER1_CH1 is the trigger source of ADC0 and ADC1. When the rising edge of
TIMER1_CH1 coming, ADC0 and ADC1 convert the regular channel group parallelly.
The values of ADC0 and ADC1 are transmitted to array adc_value[0] and adc_value [1]
by DMA.
When the first rising edge of TIMER1_CH1 coming, the value of the ADC0 conversion of
PC3 pin is stored into the low half word of adc_value [0], the value of the ADC1
conversion of PC5 pin is stored into the high half word of adc_value [0]. When the
second rising edge of TIMER1_CH1 coming, the value of the ADC0 conversion of PC5
pin is stored into the low half word of adc_value [1], the value of the ADC1 conversion of
PC3 pin is stored into the high half word of adc_value [1].
When the program is running, HyperTerminal displays the regular value of ADC0 and
23/ 51
User Manual
GD32450I-EVAL
ADC1 stored in adc_value [0] and adc_value [1].
5.10 DAC_Output_Voltage_Value
5.10.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use DAC to output voltage on DAC0 output
5.10.2 DEMO Running Result
Jump the JP23 to DAC with the jumper cap, download the program
<10_DAC_Output_Voltage_Value> to the EVAL board and run, all the LEDs will turn on
and turn off for test. The digital value is 0x7FF0, its converted analog voltage should be
1.65V(VREF/2), using the voltmeter to measure PA4 or JP7, its value is 1.65V.
5.11 I2C_EEPROM
5.11.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the master transmitting mode of I2C module
Learn to use the master receiving mode of I2C module
Learn to read and write the EEPROM with I2C interface
24/ 51
User Manual
GD32450I-EVAL
5.11.2 DEMO Running Result
Jump the JP5 to USART with the jumper cap, and download the program
<11_I2C_EEPROM> to the EVAL board and run. Connect serial cable to COM1, and
open the HyperTerminal to show the print message.
Firstly, the data of 256 bytes will be written to the EEPROM from the address 0x00 and
printed by the serial port. Then, reading the EEPROM from address 0x00 for 256 bytes
and the result will be printed. Finally, compare the data that were written to the EEPROM
and the data that were read from the EEPROM. If they are the same, the serial port will
output "I2C-AT24C02 test passed!" and the three LEDs lights flashing, otherwise the
serial port will output "Err: data read and write aren't matching." and all the three LEDs
light.
The output information via the serial port is as following.
25/ 51
User Manual
GD32450I-EVAL
5.12 SPI_QSPI_Flash
5.12.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the Quad-SPI mode of SPI unit to read and write NOR Flash with the
SPI interface
GD32450I-EVAL board integrates SPI5 module with Quad-SPI mode and the mode can
communicate with external NOR Flash devices. The SPI NOR FLASH is a serial FLASH
memory chip GD25Q16B which size is 16Mbit, the chip supports standard SPI and quad
SPI operation instructions.
5.12.2 DEMO Running Result
The computer serial port line connected to the COM1 port of development board, set the
baud rate of HyperTerminal software to 115200, 8 bits data bit, 1 bit stop bit. At the same
time you should jump the JP5 to USART, and jump the JP12,JP13,JP20 to SPI.
Download the program <12_SPI_QSPI_Flash> to the EVAL board, the HyperTerminal
software can observe the operation condition and will display the ID of the flash, 256
bytes data which are written to and read from flash. Compare the data that were written
to the flash and the data that were read from the flash. If they are the same, the serial
port will output “SPI-GD25Q16 Test Passed!”, otherwise, the serial port will output “Err:
Data Read and Write aren't Matching.”. At last, turn on and off the leds one by one. The
following is the experimental results.
26/ 51
User Manual
GD32450I-EVAL
5.13 I2S_Audio_Player
5.13.1 DEMO Purpose
This Demo includes the following functions of GD32 MCU:
Learn to use I2S module to output audio file
Parsing audio files of wav format
GD32450I-EVAL board integrates the I2S(Inter-IC Sound) module, and the module can
communicate with external devices using the I2S audio protocol. This Demo mainly
shows how to use the I2S interface of the board for audio output.
5.13.2 DEMO Running Result
Download the program<13_I2S_Audio_Player>to the EVAL board, jump the JP18 to I2S
27/ 51
User Manual
GD32450I-EVAL
with the jumper cap, insert the headphone into the audio port, and then listen to the
audio file.
5.14 EXMC_SDRAM
5.14.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use EXMC control the SDRAM
5.14.2 DEMO Running Result
GD32450I-EVAL board has EXMC module to control SDRAM. Before running the demo,
JP17 must be fitted to SDRAM, JP5 must be fitted to USART. Download the program
<14_EXMC_SDRAM> to the EVAL board. This demo shows the write and read
operation process of SDRAM memory by EXMC module. If the test succeed, LED1 will
be turned on. Otherwise, turn on the LED3. Information via a HyperTerminal output as
following:
5.15 EXMC_SDRAM_DeepSleep
5.15.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use EXMC control the SDRAM
Learn to use deepsleep mode
5.15.2 DEMO Running Result
GD32450I-EVAL board has EXMC module to control SDRAM. Before running the demo,
28/ 51
User Manual
GD32450I-EVAL
JP17 must be fitted to SDRAM, JP5 must be fitted to USART. Download the program
<15_EXMC_SDRAM_DeepSleep> to the EVAL board. This demo shows how to use
SDRAM in the deepsleep mode. Firstly, MCU works in the normal mode, SDRAM
auto-refresh cycles are performed by MCU, we write the specified data to the SDRAM.
Secondly, we make the MCU to deepsleep mode, at the time, SDRAM auto-refresh
cycles are performed by itself and LED2 will light on. Thirdly, press the user key to wake
up MCU, compare the data which read from SDRAM with the write data, if the test pass,
LED1 will be turned on. Otherwise, turn on the LED3. Information via a HyperTerminal
output as following:
5.16 EXMC_NandFlash
5.16.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use EXMC control the NAND flash
5.16.2 DEMO Running Result
GD32450I-EVAL board has EXMC module to control NAND flash. Before running the
demo, JP5 must be fitted to USART. Download the program <16_EXMC_NandFlash> to
the EVAL board. This demo shows the write and read operation process of NAND flash
memory by EXMC module. If the test pass, LED1 will be turned on. Otherwise, turn on
the LED3. Information via a HyperTerminal output as following:
29/ 51
User Manual
GD32450I-EVAL
5.17 SDIO_SDCardTest
5.17.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use SDIO to single block or multiple block write and read
Learn to use SDIO to erase, lock and unlock a SD card
GD32450I-EVAL board has a secure digital input/output interface (SDIO) which defines
the SD/SD I/O /MMC CE-ATA card host interface. This demo will show how to use SDIO
to operate on SD card.
5.17.2 DEMO Running Result
Jump the JP5 to USART to show the print message through HyperTerminal, and
download the program <17_SDIO_SDCardTest> to the EVAL board and run. Connect
serial cable to EVAL_COM1, open the HyperTerminal. Firstly, all the LEDs are turned on
and off for test. Then initialize the card and print out the information of the card. After that,
test the function of single block operation, lock and unlock operation, erase operation
and multiple blocks operation. If any error occurs, print the error message and turn on
LED1, LED3 and turn off LED2. Otherwise, turn on all the LEDs.
Uncomment the macro DATA_PRINT to print out the data and display them through
HyperTerminal. Set bus mode(1-bit or 4-bit) and data transfer mode(polling mode or
DMA mode) by comment and uncomment the related statements.
Information via a serial port output as following.
30/ 51
User Manual
GD32450I-EVAL
5.18 CAN_Network
5.18.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the CAN0 communication between two boards
GD32450I-EVAL development board integrates the CAN(Controller Area Network) bus
controller, which is a common industrial control bus. CAN bus controller follows the CAN
bus protocol of 2.0 A and 2.0 B. This demo mainly shows how to communicate between
two EVAL boards through CAN0.
5.18.2 DEMO Running Result
This example is tested with two GD32F450I-EVAL boards. Jump the JP5 to USART and
JP19, JP21 to CAN with the jumper cap. Connect L pin to L pin and H pin to H pin of
JP11 on the boards for sending and receiving frames. Download the program
<18_CAN_Network> to the two EVAL boards, and connect serial cable to EVAL_COM1.
Firstly, the EVAL_COM1 sends “please press the Tamper key to transmit data!” to the
HyperTerminal. The frames are sent and the transmit data are printed by pressing
Tamper Key push button. When the frames are received, the receive data will be printed
and the LED2 will toggle a time.
The output information via the serial port is as following.
31/ 51
User Manual
GD32450I-EVAL
5.19 RCU_Clock_Output
5.19.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use GPIO control the LED
Learn to use the clock output function of RCU
Learn to communicate with PC by USART
5.19.2 DEMO Running Result
Jump the JP5 to USART with the jumper cap, and download the program
<19_RCU_Clock_Out> to the EVAL board and run. Connect serial cable to
EVAL_COM1, open the HyperTerminal. When the program is running, HyperTerminal
will display the initial information. Then user can choose the type of the output clock by
pressing the TAMPER button. After pressing, the corresponding LED will be turned on
and HyperTerminal will display which mode be selected. The frequency of the output
clock can be observed through the oscilloscope by PA8 and PC9 pin.
Information via a serial port output as following:
5.20 CTC_Calibration
5.20.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use external low speed crystal oscillator (LXTAL) to implementthe CTC
calibration function
32/ 51
User Manual
GD32450I-EVAL
Learn to use clock trim controller (CTC) to trim internal 48MHz RC oscillator (IRC48M)
clock
The CTC unit trim the frequency of the IRC48M based on an external accurate reference
signal source. It can automaticly adjust the trim value to provide a precise IRC48M
clock.
5.20.2 DEMO Running Result
Download the program <20_CTC_Calibration > to the GD32450I-EVAL board and run.
The LED1 will turn on if the internal 48MHz RC oscillator (IRC48M) clock trim is OK.
5.21 PMU_sleep_wakeup
5.21.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the USART receive interrupt to wake up the PMU from sleep mode
5.21.2 DEMO Running Result
Download the program < 21_PMU_sleep_wakeup > to the EVAL board, jump the JP5 to
USART with the jumper cap and connect serial cable to EVAL_COM1. After power-on,
all the LEDs are off. The mcu will enter sleep mode and the software stop running. When
the USART0 receives a byte of data from the HyperTerminal, the mcu will wake up from
a receive interrupt. And all the LEDs will flash together.
5.22 RTC_Calendar
5.22.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use RTC module to implement calendar function
Learn to use USART module to implement time display
5.22.2 DEMO Running Result
Jump the JP5 to USART with the jumper cap, and download the program
33/ 51
User Manual
GD32450I-EVAL
<22_RTC_Calendar> to the EVAL board and run. Connect serial cable to EVAL_COM1,
open the HyperTerminal. When the program is running, HyperTerminal display the
default time. When you press wakeup key, time will be reconfigured and display.
5.23 TIMER_Breath_LED
5.23.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use Timer output PWM wave
Learn to update channel value
5.23.2 DEMO Running Result
Use the DuPont line to connect the TIMER1_CH2 (PB10) and LED1 (PE2), and then
download the program <23_TIMER_Breath_LED> to the GD32450I-EVAL board and
run. PB10 should not be reused by other peripherals, such as USB_HS_ULPI.
When the program is running, you can see LED1 lighting from dark to bright gradually
and then gradually darken, ad infinitum, just like breathing as rhythm.
34/ 51
User Manual
GD32450I-EVAL
5.24 TLI_IPA
5.24.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use TLI to control LCD for displaying different images
Learn to use IPA to process image data
5.24.2 DEMO Running Result
Jump the JP12 to LCD, and download the program <24_TLI_IPA> to the EVAL board
and run. After downloading program to board, a running cheetah on the background of
GD logo is appeared on the LCD, which outputs as following.
5.25 DCI_OV2640
5.25.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use DCI interface capture image from OV2640 camera
Learn to use TLI interface display the captured image
35/ 51
User Manual
GD32450I-EVAL
5.25.2 DEMO Running Result
Connect jumper JP19,JP21,JP22,JP23 to DCI, jumper JP12 to LCD, jumper JP17 to
SDRAM. Download the program<25_DCI_OV2640>to the GD32450I-EVAL board, the
correct installation of LCD display and OV2640 camera to the development board. After
power on, you can observe the capture image of camera displayed on the LCD screen,
you can press the user key to take photo and press tamper key to display photo. You
can also return to the camera capture state when press the wakeup key on the
development board.
5.26 TRNG_Get_Random
5.26.1 DEMO Purpose
This demo includes the following functions of GD32 MCU:
36/ 51
User Manual
GD32450I-EVAL
Learn to use TRNG generate the random number
Learn to communicate with PC by USART
5.26.2 DEMO Running Result
Jump the JP5 to USART with the jumper cap, and download the program
<26_TRNG_Get_Random> to the EVAL board and run. Connect serial cable to
EVAL_COM1, open the serial terminal tool supporting hex format communication. When
the program is running, the serial terminal tool will display the initial information. User
can use the serial terminal tool to input the minimum and maximum values (for example,
the minimum value is 0x03, the maximum value is 0x0F), then application will generate
random number in the input range and display it by the serial terminal tool.
Information via a serial port output as following:
5.27 ENET
5.27.1 FreeRTOS_tcpudp
DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use Lwip stack
Learn to use FreeRTOS operation system
Learn to use netconn and socket API to handle with a task
Learn how to realize a tcp server
Learn how to realize a tcp client
Learn how to realize a udp server/client
37/ 51
User Manual
GD32450I-EVAL
Learn how to use DHCP to allocate ip address automatically
This demo is based on the GD32450I-EVAL board, it shows how to configure the enet
peripherals to send and receive frames in normal mode and use lwip tcp/ip stack to
realize ping, telnet and server/client functions.
JP12, JP13, JP17, JP18, JP20, JP22 must be fitted. JP5 jump to Usart.
It is configured in RMII mode, and 25MHz oscillator is used, the system clock is
configured to 200MHz.
This demo realizes three applications:
1) Telnet application, the eval board acts as tcp server. Users can link the client with
the eval board server, using 8000 port. Users can see the reply from the server, and can
send the name(should input enter key) to server.
2) tcp client application, the eval board acts as tcp client. Users can link the eval board
client with the server, using 1026 port. Users can send information from server to client,
then the client will send back the information.
3) udp application. Users can link the eval board with another station, using 1025 port.
Users can send information from station to board, then the board will send back the
information.
If users need dhcp function, it can be configured from the private defines in main.h. This
function is closed by default.
Note: Users should configure ip address, mask and gw of GD32450I-EVAL board or
served according to the actual net situation from the private defines in main.h.
DEMO Running Result
Download the program <FreeRTOS_tcpudp> to the EVAL board, LED3 will light every
500ms.
Using Network assistant software, configure the pc side to tcp client, using 8000 port,
and when send something through the assistant, users can see the reply from the
server:
Using Network assistant software, configure the pc side to tcp server, using 1026 port,
and when send something through the assistant, users can see the echo reply from the
38/ 51
User Manual
GD32450I-EVAL
client:
Using Network assistant software, configure to use udp protocol, using 1025 port, and
when send something through the assistant, users can see the echo reply from the
board:
Open the DHCP function in main.h, using a router to connect the board with the pc,
users can see the automatic allocated ip address of the board from the HyperTerminal.
5.27.2 Raw_tcpudp
DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use Lwip stack
Learn to use raw API to handle with a task
Learn how to realize a tcp server
Learn how to realize a tcp client
Learn how to realize a udp server/client
Learn how to use DHCP to allocate ip address automatically
Learn to handle with received packet in polling mode and in interrupt mode
39/ 51
User Manual
GD32450I-EVAL
This demo is based on the GD32450I-EVAL board, it shows how to configure the enet
peripherals to send and receive frames in normal mode and use lwip tcp/ip stack to
realize ping, telnet and server/client functions.
JP12, JP13, JP17, JP18, JP20, JP22 must be fitted. JP5 jump to Usart.
It is configured in RMII mode, and 25MHz oscillator is used, the system clock is
configured to 200MHz.
This demo realizes three applications:
1) Telnet application, the eval board acts as tcp server. Users can link the client with
the eval board server, using 8000 port. Users can see the reply from the server, and can
send the name(should input enter key) to server.
2) tcp client application, the eval board acts as tcp client. Users can link the eval board
client with the server, using 1026 port. Users can send information from server to client,
then the client will send back the information. If the server is not online at first,or is break
during process, when the server is ready again, users can press tamper key to
reconnect with server, and communicate.
3) udp application. Users can link the eval board with another station, using 1025 port.
Users can send information from station to board, then the board will send back the
information.
By default, the packet reception is polled in while(1). If users want to receive packet in
interrupt service, uncomment the macro defined USE_ENET_INTERRUPT in main.h.
If users need dhcp function, it can be configured from the private defines in main.h. This
function is closed in default.
Note: Users should configure ip address, mask and gw of GD32450I-EVAL board, or
server according to the actual net situation from the private defines in main.h.
DEMO Running Result
Download the program <Raw_tcpudp> to the EVAL board.
Using Network assistant software, configure the pc side to tcp client, using 8000 port,
and when send something through the assistant, users can see the reply from the
server:
40/ 51
User Manual
GD32450I-EVAL
Using Network assistant software, configure the pc side to tcp server, using 1026 port,
press the Tamper key, and when send something through the assistant, users can see
the echo reply from the client:
Using Network assistant software, configure to use udp protocol, using 1025 port, and
when send something through the assistant, users can see the echo reply from the
board:
Open the DHCP function in main.h, using a router to connect the board with the pc,
41/ 51
User Manual
GD32450I-EVAL
users can see the automatic allocated ip address of the board from the HyperTerminal.
5.27.3 Raw_webserver
DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use Lwip stack
Learn to use raw API to handle with a task
Learn how to realize a web server
Learn how to use a web server to control LEDs
Learn how to use a web server to monitor the board V
Learn how to use DHCP to allocate ip address automatically
Learn to handle with received packet in polling mode and in interrupt mode
This demo is based on the GD32450I-EVAL board, it shows how to configure the enet
peripherals to send and receive frames in normal mode and use lwip tcp/ip stack to
realize webserver application.
JP12, JP13, JP17, JP18, JP20, JP22 must be fitted. JP5 jump to Usart.
It is configured in RMII mode, and 25MHz oscillator is used, the system clock is
configured to 200MHz.
This demo realizes webserver application:
Users can visit the eval board through Internet Explorer, the eval board acts as a
webserver, and the url is the local ip address of the eval board. There are two
experiments realized, one is the LEDs control, the other one is the ADC monitoring
V
voltage in real-time.
REFINT
If users need dhcp function, it can be configured from the private defines in main.h. This
function is closed by default. Users can use a router to connect the eval board, and use
the COM port to print the automatic allocated ip address, then connect your mobile
phone to the wifi which the router send. Users can visit the eval board and control it on
your mobile phone.
By default, the packet reception is polled in while(1). If users want to receive packet in
interrupt service, uncomment the macro define USE_ENET_INTERRUPT in main.h.
Note: Users should configure ip address, mask and gw of GD32450I-EVAL board
according to the actual net situation from the private defines in main.h.
REFINT
voltage
DEMO Running Result
Download the program <Raw_webserver> to the EVAL board, using Internet Explorer
software, enter in the ip address of the board, click on the LED control linker, choose the
LED checkboxes users want to light, and “send”, the corresponding LEDs will light. Click
on the ADC monitor linker, the real-time V
the data refreshes every second automatically.
The web home page shows as below:
voltage is showed on the webpage, and
REFINT
42/ 51
User Manual
GD32450I-EVAL
The LED control page shows as below:
The ADC monitor page shows as below:
Open the DHCP function in main.h, using a router to connect the board, and use the
43/ 51
User Manual
GD32450I-EVAL
HyperTerminal to print the automatic allocated ip address, then connect your mobile
phone to the wifi which the router send. Users can visit the eval board and control it on
your mobile phone.
5.28 USB_Device
5.28.1 HID_Keyboard
DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn how to use the USBFS peripheral mode
Learn how to implement USB HID(human interface) device
GD32450I-EVAL board has four keys and one USB_FS interface. The four keys are
Reset key, Wakeup key, User key and Tamper key. In this demo, the GD32450I-EVAL
board is enumerated as an USB Keyboard, which uses the native PC Host HID driver,
as shown below. The USB Keyboard uses three keys(wakeup key, tamper key and user
key) to output three characters (‘b’, ‘a’ and ‘c’). In addition, the demo also supports
remote wakeup which is the ability of a USB device to bring a suspended bus back to
the active condition, and the wakeup key is used as the remote wakeup source.
DEMO Running Result
According to the VBUSIG bit in USBFS_GCCFG register, user can decide whether or
not to jump JP5 to USB_FS. Then connect the EVAL board to the PC through USB cable
to the USB_FS connector. After doing this, download the program
<28_USB_Device\HID_Keyboard> to the EVAL board and run. If you press the Wakeup
key, will output ‘b’. If you press the User key, will output ‘c’. If you press the Tamper key,
will output ‘a’.
If you want to test USB remote wakeup function, you can do as follows:
- Manually switch PC to standby mode
- Wait for PC to fully enter the standby mode
44/ 51
User Manual
GD32450I-EVAL
- Push the Wakeup key
- If PC is ON, remote wakeup is OK, else failed.
5.28.2 MSC_Udisk
DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn how to use the USBFS/USBHS peripheral mode
Learn how to implement USB MSC(mass storage) device
This demo mainly implements a U disk. U disk is currently very widely used removable
MSC devices. MSC, the Mass Storage device Class, is a transport protocol between a
computer and mobile devices, which allow a universal serial bus (USB) equipment to
access a host computing device, file transfer between them, mainly including mobile
hard disk, mobile U disk drive, etc... The MSC device must have a storage medium, and
this Demo uses the MCU's internal SRAM as the storage medium. For more details of
the MSC protocol please refer to the MSC protocol standard.
MSC device will use a variety of transport protocols and command formats for
communication, so it need to choose the appropriate protocol and command format in
the realization of the application. This Demo selects the BOT (bulk only transport)
protocol and the required SCSI (small computer interface) command, and is compatible
with a wide variety of Window operating systems. Specific BOT protocol and SCSI
command specification please refer to the standard of their agreement.
In the workspace toolbar, user should select the project configuration,
In the keil4:
- GD32450I_EVAL_USBFS: to configure the project for GD32F450I devices using
USBFS peripheral
- GD32450I_EVAL_USBHS (ULPI): to configure the project for GD32F450I devices
using USBHS peripheral
In the IAR:
- USBFS: to configure the project for GD32F450I devices using USBFS peripheral
- USBHS: to configure the project for GD32F450I devices using USBHS peripheral
DEMO Running Result
45/ 51
User Manual
GD32450I-EVAL
According to the VBUSIG bit in USBFS_GCCFG register, user can decide whether or
not to jump JP5 to USB_FS if user use USBFS core. Then connect the EVAL board to
the PC through USB cable to the USB_FS connector if user use USBFS core or the
USB_HS_ULPI connector if use USBHS core. After doing this, download the program
<28_USB_Device\MSC_Udisk> to the EVAL board and run. When the EVAL board
connect to the PC, you will find a USB large capacity storage device is in the universal
serial bus controller, and there is 1 more disk drives in the equipment manager of PC, as
shown below:
Then, after opening the resource manager, you will see more of the 1 disk, as shown in
the following diagram:
46/ 51
User Manual
GD32450I-EVAL
At this point, the write/read/formatting operation can be performed as the other mobile
devices.
5.29 USB_Host
5.29.1 HID_Host
DEMO Purpose
This demo includes the following functions of GD32 MCU:
Learn to use the USBFS as a HID host
Learn the operation between the HID host and the mouse device
Learn the operation between the HID host and the keyboard device
GD32450I-EVAL board integrates the USBFS module, and the module can be used as a
USB device, a USB host or an OTG device. This demo mainly shows how to use the
USBFS as a USB HID host to communicate with external USB HID device.
DEMO Running Result
Jump the JP5 to USB_FS and jump the JP17 to SDRAM. Insert the OTG cable to the
USB_FS port. Then, download the program <29_USB_Host\HID_Host> to the EVAL
board and run.
If a mouse has been attached, the user will see the information of mouse enumeration.
47/ 51
User Manual
GD32450I-EVAL
First pressing the user key will see the inserted device is mouse, and then moving the
mouse will move the 'x' in the LCD screen and pressing the button will show the
magenta color rectangle in the LCD screen.
If a keyboard has been attached, the user will see the information of keyboard
enumeration.
48/ 51
User Manual
GD32450I-EVAL
First pressing the user key will see the inserted device is keyboard, and then pressing
the keyboard will print the char of the button in the LCD screen.
5.29.2 MSC_Host
DEMO Purpose
49/ 51
User Manual
GD32450I-EVAL
This demo includes the following functions of GD32 MCU:
Learn to use the USBFS as a MSC host
Learn the operation between the MSC host and the Udisk
GD32450I-EVAL board integrates the USBFS and USBHS module, and the modules
can be used as a USB device, a USB host or an OTG device. This demo mainly shows
how to use the USBFS or the USBHS as a USB MSC host to communicate with external
Udisk.
DEMO Running Result
Jump the JP5 to USB_FS and jump the JP17 to SDRAM.
Insert the OTG cable to the USB_FS port and choose the ‘GD32450I_EVAL_Fullspeed’
project in the program <29_USB_Host\MSC_Host>, or insert the OTG cable to the
USB_HS_ULPI port and choose the ‘GD32450I_EVAL_Highspeed’ project in the
program <29_USB_Host\MSC_Host>. Then download it to the EVAL board and run.
If an Udisk has been attached, the user will see the information of Udisk enumeration.
First pressing the user key will see the Udisk information, next pressing the tamper key
will see the root content of the Udisk, then press the wakeup key will write file to the
Udisk, finally the user will see information that the msc host demo is end.
50/ 51
User Manual
Revision No.
Description
Date
1.0
Initial Release
Oct. 19, 2016
GD32450I-EVAL
6 Revision history
Table 2 Revision history
51/ 51
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.