PY32F403 系列
32 位 ARM
®
Cortex
®
-M4F 微控制器
参考手册
PY32F403 系列
32 位 ARM
®
Cortex
®
M4F 微控制器
参考手册
Puya Semiconductor (Shanghai) Co., Ltd
PY32F403 参考手册
2/589
目录
1. 简介 ..................................................................................................................................................... 15
2. 系统及存储器架构 ............................................................................................................................... 17
2.1. Arm® Cortex®-M4 处理器简介 .................................................................................................... 17
2.2. 系统架构 ...................................................................................................................................... 17
2.2.1. I_bus .................................................................................................................................... 18
2.2.2. D_bus ................................................................................................................................... 18
2.2.3. S_bus ................................................................................................................................... 18
2.2.4. DMA1/DMA2 BUS................................................................................................................ 18
2.2.5. 总线矩阵 ............................................................................................................................... 18
2.2.6. AHB/APB 总线桥 .................................................................................................................. 18
2.3. 存储器组织架构 ........................................................................................................................... 18
2.3.1. 简介 ...................................................................................................................................... 18
2.3.2. 存储器映射 ........................................................................................................................... 19
2.4. 嵌入式 SRAM .............................................................................................................................. 21
2.5. 嵌入式 FLASH ............................................................................................................................. 21
2.6. 位段 ............................................................................................................................................. 21
2.7. 启动配置 ...................................................................................................................................... 22
2.7.1. 嵌入式启动程序 .................................................................................................................... 23
2.7.2. 物理重映射 ........................................................................................................................... 23
3. 嵌入式闪存 .......................................................................................................................................... 24
3.1. 简介 ............................................................................................................................................. 24
3.1.1. 主要特征 ............................................................................................................................... 24
3.1.2. 模块框图 ............................................................................................................................... 24
3.2. 功能描述 ...................................................................................................................................... 24
3.2.1. 闪存结构 ............................................................................................................................... 24
3.2.2. 闪存读操作和访问延迟 ......................................................................................................... 25
3.2.3. 自适应实时存储器加速器(ART Accelerator™) ..................................................................... 26
3.2.4. 擦除和编程操作 .................................................................................................................... 27
3.2.5. 闪存擦除操作 ....................................................................................................................... 27
3.2.6. 闪存写操作 ........................................................................................................................... 28
3.2.7. Flash 选项字节 ..................................................................................................................... 29
3.2.8. Flash 配置字节 ..................................................................................................................... 31
3.2.9. 闪存中断 ............................................................................................................................... 33
3.3. 寄存器描述(基址 0x4002_2000) ............................................................................................. 33
3.3.1. FLASH access control register(FLASH_ACR) .................................................................... 33
3.3.2. FLASH key register(FLASH_KEYR) .................................................................................... 34
3.3.3. FLASH option key register(FLASH_OPTKEYR) ................................................................. 34
3.3.4. FLASH status register(FLASH_SR)..................................................................................... 34
3.3.5. FLASH control register(FLASH_CR) ................................................................................... 35
3.3.6. FLASH option register(FLASH_OPTR) ............................................................................... 36
3.3.7. FLASH WRP register(FLASH_WRPR) ................................................................................ 37
3.3.8. FLASH sleep time config register(FLASH_STCR) .............................................................. 37
3.3.9. FLASH TS0 register(FLASH_TS0) ...................................................................................... 38
3.3.10. FLASH TS1 register(FLASH_TS1) ...................................................................................... 38
3.3.11. FLASH TS2P register(FLASH_TS2P) ................................................................................. 38
3.3.12. FLASH TPS3 register(FLASH_TPS3) ................................................................................. 38
3.3.13. FLASH TS3 register(FLASH_TS3) ...................................................................................... 39
3.3.14. FLASH ERASE TPE register(FLASH_ERSTPE) ................................................................ 39
3.3.15. FLASH PROGRAM TPE register(FLASH_PRGTPE) .......................................................... 39
3.3.16. FLASH PRE-PROGRAM TPE register (FLASH_PRETPE) ................................................ 39
3.3.17. FLASH 寄存器映像............................................................................................................... 40
4. 电源控制(PWR) .............................................................................................................................. 42
4.1. 功能描述 ...................................................................................................................................... 42
4.1.1. 电源结构 ............................................................................................................................... 42
4.1.2. 系统低功耗模式 .................................................................................................................... 45
4.2. 寄存器描述(基址 0x4000_7000) ............................................................................................. 50
PY32F403 参考手册
3/589
4.2.1. 电源控制寄存器(PWR_CR)(0x00) ....................................................................................... 50
4.2.2. 电源控制/状态寄存器(PWR_CSR)(0x04) ............................................................................. 52
4.2.3. PWR 寄存器映像 .................................................................................................................. 53
5. 复位与时钟控制(RCC) .................................................................................................................... 55
5.1. 复位功能描述 ............................................................................................................................... 55
5.1.1. 系统复位 ............................................................................................................................... 55
5.1.2. 电源复位 ............................................................................................................................... 55
5.1.3. 备份域复位 ........................................................................................................................... 55
5.1.4. 备份域复位之外的复位的统一处理 ....................................................................................... 55
5.2. 时钟功能描述 ............................................................................................................................... 56
5.2.1. 时钟结构 ............................................................................................................................... 56
5.2.2. 时钟源(时钟信号和参数以模拟模块需求为准) ................................................................. 57
5.3. 寄存器(base:0x40021000) ................................................................................................... 59
5.3.1. 时钟控制寄存器(RCC_CR) ............................................................................................. 59
5.3.2. 时钟配置寄存器(RCC_CFGR) ........................................................................................ 60
5.3.3. 时钟中断寄存器(RCC_CIR) ............................................................................................ 62
5.3.4. APB2 外设复位寄存器(RCC_APB2RSTR) ..................................................................... 63
5.3.5. APB1 外设复位寄存器(RCC_APB1RSTR) ..................................................................... 64
5.3.6. AHB1 外设时钟使能寄存器(RCC_AHB1ENR) ................................................................ 66
5.3.7. APB2 外设时钟使能寄存器(RCC_APB2ENR) ................................................................ 67
5.3.8. APB1 外设时钟使能寄存器(RCC_APB1ENR) ................................................................ 67
5.3.9. RTC domain 控制寄存器(RCC_BDCR)........................................................................... 69
5.3.10. 控制/状态寄存器(RCC_CSR) .......................................................................................... 70
5.3.11. 时钟复位配置寄存器 1(RCC_CFGR1) ............................................................................ 71
5.3.12. AHB1 外设复位寄存器(RCC_AHB1RSTR) ..................................................................... 72
5.3.13. AHB2 外设复位寄存器(RCC_AHB2RSTR) ..................................................................... 72
5.3.14. AHB2 外设时钟使能寄存器(RCC_AHB2ENR) ................................................................ 73
5.3.15. 时钟复位配置寄存器 2(RCC_CFGR2) ............................................................................ 73
5.3.16. RCC 寄存器映像 .................................................................................................................. 74
6. 备份寄存器(BKP) ........................................................................................................................... 76
6.1. 简介 ............................................................................................................................................. 76
6.1.1. 主要特性 ............................................................................................................................... 76
6.2. 功能描述 ...................................................................................................................................... 76
6.2.1. 侵入检测 ............................................................................................................................... 76
6.2.2. RTC 校准 .............................................................................................................................. 76
6.3. BKP 寄存器(基址=0x40006C00) ............................................................................................. 79
6.3.1. 6.3.1 备份数据寄存器(BKP_DRx)(x=1…42) .............................................................. 80
6.3.2. RTC 时钟校准寄存器(BKP_RTCCR) .............................................................................. 80
6.3.3. 备份控制寄存器(BKP_CR) .............................................................................................. 81
6.3.4. 备份控制/状态寄存器(BKP_CSR) ................................................................................... 81
6.3.5. BKP 寄存器映射 ................................................................................................................... 82
7. CRC 计算单元(CRC) ...................................................................................................................... 90
7.1. 简介 ............................................................................................................................................. 90
7.2. CRC 主要特征 .............................................................................................................................. 90
7.3. CRC 功能描述 .............................................................................................................................. 90
7.3.1. CRC 框图 ............................................................................................................................. 90
7.4. CRC 寄存器 ................................................................................................................................. 90
7.4.1. 数据寄存器(CRC_DR) ..................................................................................................... 91
7.4.2. 独立数据寄存器( CRC_IDR) ........................................................................................... 91
7.4.3. 控制寄存器(CRC_CR) ..................................................................................................... 91
7.4.4. CRC 寄存器映像 .................................................................................................................. 92
8. 通用 I/O(GPIO) ............................................................................................................................... 93
8.1. 简介 ............................................................................................................................................. 93
8.2. 主要特征 ...................................................................................................................................... 93
8.3. 功能描述 ...................................................................................................................................... 93
8.3.1. 通用 I/O(GPIO) ................................................................................................................ 95
PY32F403 参考手册
4/589
8.3.2. I/O 引脚复用器和映射........................................................................................................... 95
8.3.3. I/O 端口控制寄存器 .............................................................................................................. 96
8.3.4. I/O 端口数据寄存器 .............................................................................................................. 96
8.3.5. I/O 数据位操作 ..................................................................................................................... 96
8.3.6. GPIO 锁定机制 ..................................................................................................................... 96
8.3.7. I/O 复用功能输入/输出模式配置 ........................................................................................... 97
8.3.8. 外部中断线/唤醒线 ............................................................................................................... 97
8.3.9. I/O 输入配置 ......................................................................................................................... 97
8.3.10. 输出配置 ............................................................................................................................... 97
8.3.11. 复用功能配置 ....................................................................................................................... 97
8.3.12. 模拟配置 ............................................................................................................................... 98
8.3.13. HSE 或者 LSE 引脚配置为 GPIO ......................................................................................... 98
8.3.14. BKP 区域 GPIO 使用 ............................................................................................................ 98
8.4. 寄存器描述 ................................................................................................................................... 98
8.4.1. GPIO 端口模式寄存器(GPIOx_MODER)(x= A..E) .......................................................... 98
8.4.2. GPIO 端口输出类型寄存器(GPIOx_OTYPER)(x= A..E) ................................................. 98
8.4.3. GPIO 端口输出速度寄存器(GPIOx_OSPEEDR)(x= A..E) ............................................... 99
8.4.4. GPIO 端口上拉/下拉寄存器(GPIOx_PUPDR)(x= A..E) ................................................... 99
8.4.5. GPIO 端口输入数据寄存器(GPIOx_IDR)(x= A..E) ........................................................ 100
8.4.6. GPIO 端口输出数据寄存器(GPIOx_ODR)(x= A..E) ...................................................... 100
8.4.7. GPIO 端口置位/复位寄存器(GPIOx_BSRR)(x= A..E) ................................................... 100
8.4.8. GPIO 端口配置锁定寄存器(GPIOx_LCKR)(x= A..E) ..................................................... 101
8.4.9. GPIO 复用功能低寄存器(GPIOx_AFRL)(x= A..E) ......................................................... 101
8.4.10. GPIO 复用功能高寄存器(GPIOx_AFRH)(x= A..E) ........................................................ 102
8.4.11. GPIO 端口位复位寄存器(GPIOx_BRR)(x= A..E) .......................................................... 102
8.4.12. GPIO 寄存器地址映射 ........................................................................................................ 102
9. 系统配置控制器(SYSCFG) ........................................................................................................... 105
9.1. 概述 ........................................................................................................................................... 105
9.2. SYSCFG 寄存器(baseaddr=0x40010000) ................................................................................. 105
9.2.1. SYSCFG 配置寄存器 1(SYSCFG_CFGR1) .................................................................. 105
9.2.2. SYSCFG 配置寄存器 2 (SYSCFG_CFGR2) ...................................................................... 105
9.2.3. SYSCFG 配置寄存器 3 (SYSCFG_CFGR3) ...................................................................... 106
9.2.4. SYSCFG 配置寄存器 4 (SYSCFG_CFGR4) ...................................................................... 108
9.2.5. SYSCFG 配置寄存器 5 (SYSCFG_CFGR5) ...................................................................... 108
9.2.6. 外部中断配置寄存器 1(SYS_EXTICR1) ........................................................................ 108
9.2.7. 外部中断配置寄存器 2(SYS_EXTICR2) ........................................................................ 109
9.2.8. 外部中断配置寄存器 3(SYS_EXTICR3) ........................................................................ 109
9.2.9. 外部中断配置寄存器 4(SYS_EXTICR4) ........................................................................ 110
9.2.10. GPIOA 滤波使能(PA_ENS) ........................................................................................... 110
9.2.11. GPIOB 滤波使能(PB_ENS) ........................................................................................... 110
9.2.12. GPIOC 滤波使能(PC_ENS) .......................................................................................... 111
9.2.13. GPIOD 滤波使能(PD_ENS) .......................................................................................... 111
9.2.14. GPIOE 滤波使能(PE_ENS) ........................................................................................... 111
9.2.15. GPIO 模拟通道使能(GPIO_ENA) .................................................................................. 111
9.2.16. Timer 时钟扩展控制(TIM_CLK_EXT) ............................................................................ 112
9.2.17. SYSCFG 寄存器映像 ......................................................................................................... 112
10. DMA 控制器(DMA) ................................................................................................................... 116
10.1. 概述 ........................................................................................................................................ 116
10.1.1. 主要特性 ............................................................................................................................. 116
10.2. 功能描述 ................................................................................................................................ 116
10.2.1. DMA 传输 ........................................................................................................................... 116
10.2.2. 仲裁器 ................................................................................................................................ 117
10.2.3. DMA 通道 ........................................................................................................................... 117
10.2.4. 数据传输宽度/对齐方式/大小端 .......................................................................................... 120
10.2.5. 错误处理 ............................................................................................................................. 121
10.2.6. 中断 .................................................................................................................................... 121
PY32F403 参考手册
5/589
10.2.7. DMA 外设请求映射............................................................................................................. 121
10.3. 寄存器描述(0x40020000) .................................................................................................. 122
10.3.1. DMA 中断状态寄存器(DMA_ISR) .................................................................................. 122
10.3.2. DMA 中断标志清零寄存器(DMA_IFCR) ........................................................................ 124
10.3.3. DMA 通道 1 配置寄存器(DMA_CCR1) .......................................................................... 126
10.3.4. DMA 通道 1 数据传输个数寄存器(DMA_CNDTR1) ....................................................... 127
10.3.5. DMA 通道 1 外设地址寄存器(DMA_CPAR1) ................................................................. 127
10.3.6. DMA 通道 1 存储器地址寄存器(DMA_CMAR1) ............................................................ 127
10.3.7. DMA 通道 2 配置寄存器(DMA_CCR2) .......................................................................... 128
10.3.8. DMA 通道 2 数据传输个数寄存器(DMA_CNDTR2) ....................................................... 129
10.3.9. DMA 通道 2 外设地址寄存器(DMA_CPAR2) ................................................................. 129
10.3.10. DMA 通道 2 存储器地址寄存器(DMA_CMAR2) ........................................................ 129
10.3.11. DMA 通道 3 配置寄存器(DMA_CCR3) ...................................................................... 130
10.3.12. DMA 通道 3 数据传输个数寄存器(DMA_CNDTR3) ................................................... 131
10.3.13. DMA 通道 3 外设地址寄存器(DMA_CPAR3) ............................................................. 131
10.3.14. DMA 通道 3 存储器地址寄存器(DMA_CMAR3) ........................................................ 131
10.3.15. DMA 通道 4 配置寄存器(DMA_CCR4) ...................................................................... 132
10.3.16. DMA 通道 4 数据传输个数寄存器(DMA_CNDTR4) ................................................... 133
10.3.17. DMA 通道 4 外设地址寄存器(DMA_CPAR4) ............................................................. 133
10.3.18. DMA 通道 4 存储器地址寄存器(DMA_CMAR4) ........................................................ 133
10.3.19. DMA 通道 5 配置寄存器(DMA_CCR5) ...................................................................... 134
10.3.20. DMA 通道 5 数据传输个数寄存器(DMA_CNDTR5) ................................................... 135
10.3.21. DMA 通道 5 外设地址寄存器(DMA_CPAR5) ............................................................. 135
10.3.22. DMA 通道 5 存储器地址寄存器(DMA_CMAR5) ........................................................ 135
10.3.23. DMA 通道 6 配置寄存器(DMA_CCR6) ...................................................................... 135
10.3.24. DMA 通道 6 数据传输个数寄存器(DMA_CNDTR6) ................................................... 136
10.3.25. DMA 通道 6 外设地址寄存器(DMA_CPAR6) ............................................................. 137
10.3.26. DMA 通道 6 存储器地址寄存器(DMA_CMAR6) ........................................................ 137
10.3.27. DMA 通道 7 配置寄存器(DMA_CCR7) ...................................................................... 137
10.3.28. DMA 通道 7 数据传输个数寄存器(DMA_CNDTR7) ................................................... 138
10.3.29. DMA 通道 7 外设地址寄存器(DMA_CPAR7) ............................................................. 139
10.3.30. DMA 通道 7 存储器地址寄存器(DMA_CMAR7) ........................................................ 139
10.3.31. DMA 寄存器映像 ............................................................................................................ 139
11. 中断和事件 .................................................................................................................................... 142
11.1. 简介 ........................................................................................................................................ 142
11.1.1. 主要特征 ............................................................................................................................. 142
11.1.2. 模块框图 ............................................................................................................................. 142
11.2. 功能说明 ................................................................................................................................ 142
11.2.1. 中断和异常向量表 .............................................................................................................. 142
11.2.2. 外部中断/事件控制器(EXIT) .......................................................................................... 144
11.3. 寄存器描述 ............................................................................................................................. 146
11.3.1. 中断屏蔽寄存器(EXTI_IMR) .......................................................................................... 146
11.3.2. 事件屏蔽寄存器( EXTI_EMR) ....................................................................................... 147
11.3.3. 上升沿触发选择寄存器(EXTI_RTST) ............................................................................ 147
11.3.4. 下降沿触发选择寄存器(EXTI_FTSR) ............................................................................ 147
11.3.5. 软件中断事件寄存器(EXTI_SWIER) ............................................................................. 148
11.3.6. 挂起寄存器(EXTI_PR) ................................................................................................... 148
11.3.7. EXTI 寄存器地址映射 ......................................................................................................... 148
12. 模拟/数字转换(ADC) ................................................................................................................. 150
12.1. 简介 ........................................................................................................................................ 150
12.1.1. 主要特征 ............................................................................................................................. 150
12.1.2. 模块框图 ............................................................................................................................. 151
12.2. ADC 引脚定义 ........................................................................................................................ 151
12.3. 功能说明 ................................................................................................................................ 151
12.3.1. ADC 校准 ........................................................................................................................... 152
12.3.2. ADC 开-关控制 ................................................................................................................... 152