GigaDevice Semiconductor Inc.
GD32F3x0
ARM
®
Cortex
™
-M4 32-bit MCU
用户手册
1.0 版本
(2017 年 6 月)
GD32F3x0 用户手册
2
目录
目录 ......................................................................................................................................... 2
图索引 .................................................................................................................................... 15
表索引 .................................................................................................................................... 21
1. 系统及存储器架构 .......................................................................................................... 23
1.1. ARM Cortex-M4 处理器 ........................................................................................................ 23
1.2. 系统架构 .............................................................................................................................. 24
1.3. 存储器映射 .......................................................................................................................... 25
1.3.1. 位带操作 ............................................................................................................................................. 28
1.3.2. 片上 SRAM 存储器 ........................................................................................................................... 28
1.3.3. 片上闪存 ............................................................................................................................................. 29
1.4. 引导配置 .............................................................................................................................. 29
1.5. I/O 补偿单元 ........................................................................................................................ 30
1.6. 系统配置寄存器 (SYSCFG) ................................................................................................... 30
1.6.1. 配置寄存器 0 (SYSCFG_CFG0) .................................................................................................... 30
1.6.2. EXTI 源选择寄存器 0 (SYSCFG_EXTISS0) ................................................................................. 31
1.6.3. EXTI 源选择寄存器 1 (SYSCFG_EXTISS1) ................................................................................. 32
1.6.4. EXTI 源选择寄存器 2 (SYSCFG_EXTISS2) ................................................................................. 34
1.6.5. EXTI 源选择寄存器 3 (SYSCFG_EXTISS3) ................................................................................. 35
1.6.6. 系统配置寄存器 2 (SYSCFG_CFG2) ............................................................................................. 36
1.6.7. I/O 补偿控制寄存器 (SYSCFG_CPSCTL) .................................................................................... 37
1.7. 设备电子签名 ...................................................................................................................... 38
1.7.1. 存储容量信息 ..................................................................................................................................... 38
1.7.2. 设备唯一 ID (96 位/位域) .................................................................................................................. 38
2. 闪存控制器(FMC) ...................................................................................................... 40
2.1. 简介...................................................................................................................................... 40
2.2. 主要特性 .............................................................................................................................. 40
2.3. 功能描述 .............................................................................................................................. 40
2.3.1. 闪存结构 ............................................................................................................................................. 40
2.3.2. 读操作 ................................................................................................................................................. 41
2.3.3. FMC_CTL 寄存器解锁 ...................................................................................................................... 41
2.3.4. 页擦除 ................................................................................................................................................. 41
2.3.5. 整片擦除 ............................................................................................................................................. 42
2.3.6. 主存储闪存块编程 ............................................................................................................................. 43
2.3.7. 选项字节擦除 ..................................................................................................................................... 44
2.3.8. 选项字节编程 ..................................................................................................................................... 45
GD32F3x0 用户手册
3
2.3.9. 选项字节说明 ..................................................................................................................................... 45
2.3.10. 页擦除/编程保护 ............................................................................................................................... 46
2.3.11. 安全保护 ............................................................................................................................................. 47
2.4. FMC 寄存器 .......................................................................................................................... 47
2.4.1. 等待状态寄存器 (FMC_WS) ........................................................................................................... 47
2.4.2. 解锁寄存器 (FMC_KEY) .................................................................................................................. 48
2.4.3. 选项字节解锁寄存器 (FMC_OBKEY) ............................................................................................ 48
2.4.4. 状态寄存器 (FMC_STAT) ................................................................................................................ 49
2.4.5. 控制寄存器 (FMC_CTL) .................................................................................................................. 49
2.4.6. 地址寄存器 0 (FMC_ADDR) ............................................................................................................ 51
2.4.7. 选项字节状态寄存器 (FMC_OBSTAT) .......................................................................................... 51
2.4.8. 写保护寄存器 (FMC_WP) ............................................................................................................... 52
2.4.9. 等待状态使能寄存器 (FMC_WSEN) .............................................................................................. 52
2.4.10. 产品 ID 寄存器 (FMC_PID) ............................................................................................................. 53
3. 电源管理单元(PMU) .................................................................................................. 54
3.1. 简介...................................................................................................................................... 54
3.2. 主要特性 .............................................................................................................................. 54
3.3. 功能描述 .............................................................................................................................. 54
3.3.1. 电池备份域 ......................................................................................................................................... 55
3.3.2. VDD/VDDA 电源域 ........................................................................................................................... 56
3.3.3. 1.2V 电源域 ........................................................................................................................................ 57
3.3.4. 省电模式 ............................................................................................................................................. 58
3.4. PMU 寄存器 ......................................................................................................................... 60
3.4.1. 控制寄存器 (PMU_CTL) .................................................................................................................. 60
3.4.2. 电源控制和状态寄存器 (PMU_CS) ................................................................................................ 62
4. 复位和时钟单元 (RCU) ................................................................................................. 65
4.1. 复位控制单元 (RCTL) ........................................................................................................... 65
4.1.1. 简介 ..................................................................................................................................................... 65
4.1.2. 功能描述 ............................................................................................................................................. 65
4.2. 时钟控制单元 (CCTL) ........................................................................................................... 66
4.2.1. 简介 ..................................................................................................................................................... 66
4.2.2. 主要特性 ............................................................................................................................................. 68
4.2.3. 功能描述 ............................................................................................................................................. 68
4.3. RCU 寄存器 ......................................................................................................................... 71
4.3.1. 控制寄存器 0 (RCU_CTL0) ............................................................................................................ 71
4.3.2. 配置寄存器 0 (RCU_CFG0) ............................................................................................................ 73
4.3.3. 中断寄存器 (RCU_INT) ................................................................................................................... 76
4.3.4. APB2 复位寄存器 (RCU_APB2RST) ............................................................................................ 79
4.3.5. APB1 复位寄存器 (RCU_APB1RST) ............................................................................................ 80
4.3.6. AHB 使能寄存器 (RCU_AHBEN) ................................................................................................... 82
GD32F3x0 用户手册
4
4.3.7. APB2 使能寄存器 (RCU_APB2EN) ............................................................................................... 84
4.3.8. APB1 使能寄存器 (RCU_APB1EN) ............................................................................................... 85
4.3.9. 备份域控制寄存器 (RCU_BDCTL) ................................................................................................. 87
4.3.10. 复位源/时钟寄存器 (RCU_RSTSCK) ............................................................................................ 89
4.3.11. AHB 复位寄存器 (RCU_AHBRST) ................................................................................................ 90
4.3.12. 配置寄存器 1 (RCU_CFG1) ............................................................................................................ 92
4.3.13. 配置寄存器 2 (RCU_CFG2) ............................................................................................................ 93
4.3.14. 控制寄存器 1 (RCU_CTL1) ............................................................................................................ 94
4.3.15. 附加时钟控制寄存器(RCU_ADDCTL) ............................................................................................ 94
4.3.16. 附加时钟中断寄存器(RCU_ADDINT) ............................................................................................. 95
4.3.17. APB1 附加使能寄存器 (RCU_ADDAPB1EN) .............................................................................. 96
4.3.18. APB1 附加复位寄存器 (RCU_ADD APB1RST) ........................................................................... 97
4.3.19. 电源解锁寄存器 (RCU_VKEY) ....................................................................................................... 97
4.3.20. 深度睡眠模式电压寄存器 (RCU_DSV) .......................................................................................... 98
5. 时钟校准控制器(CTC) .............................................................................................. 99
5.1. 简介...................................................................................................................................... 99
5.2. 主要特性 .............................................................................................................................. 99
5.3. 功能描述 .............................................................................................................................. 99
5.3.1. REF 同步脉冲发生器 ...................................................................................................................... 100
5.3.2. CTC 校准计数器 .............................................................................................................................. 100
5.3.3. 频率评估和自动校准过程 ............................................................................................................... 101
5.3.4. 软件编程指南 ................................................................................................................................... 102
5.4. CTC 寄存器 ......................................................................................................................... 102
5.4.1. 控制寄存器 0 (CTC_CTL0) ............................................................................................................ 102
5.4.2. 控制寄存器 1 (CTC_CTL1) ............................................................................................................ 104
5.4.3. 状态寄存器 (CTC_STAT) .............................................................................................................. 105
5.4.4. 中断清除寄存器 (CTC_INTC) ....................................................................................................... 107
6. 中断/事件控制器(EXTI) ........................................................................................... 108
6.1. 简介.................................................................................................................................... 108
6.2. 主要特性 ............................................................................................................................ 108
6.3. 中断功能描述 .................................................................................................................... 108
6.4. 外部中断及事件(EXTI)结构框图 ......................................................................................... 111
6.5. 外部中断及事件功能概述 .................................................................................................. 111
6.6. 寄存器定义 ........................................................................................................................ 112
6.6.1. 中断使能寄存器(EXTI_INTEN) ................................................................................................ 112
6.6.2. 事件使能寄存器(EXTI_EVEN) ................................................................................................. 113
6.6.3. 上升沿触发使能寄存器(EXTI_RTEN) ..................................................................................... 113
6.6.4. 下降沿触发使能寄存器(EXTI_FTEN) ...................................................................................... 114
6.6.5. 软件中断事件寄存器(EXTI_SWIEV) ....................................................................................... 114
GD32F3x0 用户手册
5
6.6.6. 挂起寄存器(EXTI_PD) .............................................................................................................. 115
7. 通用和备用输入/输出接口(GPIO 和 AFIO) ............................................................ 116
7.1. 简介.................................................................................................................................... 116
7.2. 主要特性 ............................................................................................................................ 116
7.3. 功能描述 ............................................................................................................................ 116
7.3.1. GPIO 引脚配置 ................................................................................................................................ 117
7.3.2. 备用功能(AF) .............................................................................................................................. 118
7.3.3. 附加功能 ........................................................................................................................................... 118
7.3.4. 输入配置 ........................................................................................................................................... 118
7.3.5. 输出配置 ........................................................................................................................................... 119
7.3.6. 模拟配置 ........................................................................................................................................... 119
7.3.7. 备用功能(AF)配置 ...................................................................................................................... 120
7.3.8. GPIO 锁定功能 ................................................................................................................................ 120
7.3.9. GPIO 单周期输出翻转功能 ............................................................................................................ 121
7.3.10. GPIO 超高速驱动能力 .................................................................................................................... 121
7.4. GPIO 寄存器 ....................................................................................................................... 121
7.4.1. 端口控制寄存器(GPIOx_CTL, x=A..D,F) ................................................................................ 121
7.4.2. 端口输出模式寄存器(GPIOx_OMODE, x=A..D,F) ................................................................ 123
7.4.3. 端口输出速度寄存器 0(GPIOx_OSPD0, x=A..D,F) ............................................................... 124
7.4.4. 端口上拉/下拉寄存器(GPIOx_PUD, x=A..D,F) ...................................................................... 126
7.4.5. 端口输入状态寄存器(GPIOx_ISTAT, x=A..D,F) ..................................................................... 128
7.4.6. 端口输出控制寄存器(GPIOx_OCTL, x=A..D,F) ..................................................................... 128
7.4.7. 端口位操作寄存器(GPIOx_BOP, x=A..D,F) ........................................................................... 129
7.4.8. 端口配置锁定寄存器(GPIOx_LOCK, x=A,B) ......................................................................... 129
7.4.9. 备用功能选择寄存器 0(GPIOx_AFSEL0, x=A,B,C) .............................................................. 130
7.4.10. 备用功能选择寄存器 1(GPIOx_AFSEL1, x=A,B,C) .............................................................. 131
7.4.11. 位清除寄存器(GPIOx_BC, x=A..D,F) ...................................................................................... 132
7.4.12. 端口位翻转寄存器(GPIOx_TG, x=A..D,F) .............................................................................. 133
7.4.13. 端口输出速度寄存器 1(GPIOx_OSPD1, x=A..D,F) ............................................................... 133
8. 循环冗余校验计算单元 (CRC) .................................................................................... 135
8.1. 简介.................................................................................................................................... 135
8.2. 主要特性 ............................................................................................................................ 135
8.3. 功能描述 ............................................................................................................................ 136
8.4. CRC 寄存器 ......................................................................................................................... 136
8.4.1. 数据寄存器 (CRC_DATA).............................................................................................................. 136
8.4.2. 独立数据寄存器 (CRC_FDATA) ................................................................................................... 137
8.4.3. 控制寄存器 (CRC_CTL) ................................................................................................................ 137
8.4.4. 初值寄存器 (CRC_IDATA) ............................................................................................................ 138
8.4.5. 多项式寄存器 (CRC_POLY) ......................................................................................................... 138