0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
HC32F002C4PB-TSSOP20

HC32F002C4PB-TSSOP20

  • 厂商:

    XHSC(小华半导体)

  • 封装:

    TSSOP-20

  • 描述:

    CPU内核:ARM Cortex-M0;CPU最大主频:48MHz;程序存储容量:18KB;程序存储器类型:FLASH;RAM总容量:2KB;GPIO端口数量:18;

  • 数据手册
  • 价格&库存
HC32F002C4PB-TSSOP20 数据手册
i m 立 i 创 na 商 ry 城 HC32F002 系列 32 位 ARM® Cortex®-M0+ 微控制器 el 用户手册 to Pr Beta 版本,仅供参考 声 明 ➢ 华大半导体有限公司(以下简称:“HDSC”)保留随时更改、更正、增强、修改华大半导 体产品和/或本文档的权利,恕不另行通知。用户可在下单前获取最新相关信息。HDSC i m 立 i 创 na 商 ry 城 产品依据购销基本合同中载明的销售条款和条件进行销售。 ➢ 用户对 HDSC 产品的选择和使用承担全部责任,用户将 HDSC 产品用于其自己或指定第 三方产品上的,HDSC 不提供服务支持且不对此类产品承担任何责任。 ➢ HDSC 在此确认未以明示或暗示方式授予任何知识产权许可。 el ➢ HDSC 产品的转售,若其条款与此处规定不同,HDSC 对此类产品的任何保修承诺无效。 ➢ 任何带有“®”或“™”标识的图形或字样是 HDSC 的商标。所有其他在 HDSC 产品上显示的 Pr 产品或服务名称均为其各自所有者的财产。 to ➢ 本通知中的信息取代并替换先前版本中的信息。 HC32F002 系列用户手册 Beta1.0 ©2019 华大半导体有限公司 - 保留所有权利 Page 2 of 415 目 录 声 明 ..........................................................................................................................................................................2 目 录 ..........................................................................................................................................................................3 产品特性 低功耗 MCU ...........................................................................................................................................22 功能模块.............................................................................................................................................................23 功能模块框图......................................................................................................................................23 1.2 32 位 Cortex M0+ 内核 ....................................................................................................................24 1.3 存储器..................................................................................................................................................24 i m 立 i 创 na 商 ry 城 1.1 1.3.1 18 Kbytes FLASH ....................................................................................................................... 24 1.3.2 2 Kbytes RAM ............................................................................................................................. 24 1.4 时钟系统..............................................................................................................................................24 1.5 工作模式..............................................................................................................................................25 1.6 端口控制器 GPIO ..............................................................................................................................25 1.7 中断控制器 NVIC ..............................................................................................................................25 1.8 复位控制器 RESET ...........................................................................................................................25 1.9 定时器 TIM ........................................................................................................................................25 1.10 看门狗 WDT ......................................................................................................................................26 1.11 低功耗同步异步收发器 LPUART ....................................................................................................26 1.12 串行外设接口 SPI ..............................................................................................................................27 1.13 I2C 总线..............................................................................................................................................27 1.14 时钟校准器 CTRIM ...........................................................................................................................27 1.15 蜂鸣器 Buzzer ....................................................................................................................................28 1.16 模数转换器 ADC ...............................................................................................................................28 1.17 低电压检测器 LVD ............................................................................................................................28 1.18 嵌入式调试系统..................................................................................................................................29 1.19 编程模式..............................................................................................................................................29 1.20 器件电子签名......................................................................................................................................29 1.21 高安全性..............................................................................................................................................29 Pr el 1 3 4 引脚配置及功能 .................................................................................................................................................30 2.1 引脚配置图..........................................................................................................................................30 2.2 引脚功能说明......................................................................................................................................33 2.3 模块信号说明......................................................................................................................................35 to 2 系统结构.............................................................................................................................................................36 3.1 概述......................................................................................................................................................36 3.2 存储器和模块地址分配......................................................................................................................37 工作模式.............................................................................................................................................................38 4.1 工作模式概述......................................................................................................................................38 4.2 工作模式切换......................................................................................................................................38 4.3 运行模式(Active Mode) .................................................................................................................41 4.4 休眠模式(Sleep Mode) ..................................................................................................................41 4.5 深度休眠模式(Deep Sleep Mode) .................................................................................................41 HC32F002 系列用户手册 Beta1.0 Page 3 of 415 4.6 功能模块工作状态..............................................................................................................................42 4.7 寄存器..................................................................................................................................................43 4.7.1 系统控制器(SYSCTRL) ...............................................................................................................................44 5.1 5.2 系统时钟介绍......................................................................................................................................44 5.1.1 时钟架构图 ................................................................................................................................. 45 5.1.2 内部高速 RC 时钟 RCH.......................................................................................................... 45 5.1.3 内部低速 RC 时钟 RCL .......................................................................................................... 46 5.1.4 外部输入时钟 EXTCLK ............................................................................................................ 46 系统时钟切换......................................................................................................................................47 i m 立 i 创 na 商 ry 城 5 系统控制寄存器(SCB_SCR) ................................................................................................ 43 5.2.1 标准的时钟切换流程 ................................................................................................................. 47 5.2.2 RCH 不同输出频率间切换流程 ................................................................................................ 48 5.2.3 从其它时钟切换到 RCL 示例 ................................................................................................... 48 5.2.4 从其它时钟切换到 RCHCLKD 示例 ........................................................................................ 49 5.3 片内外设时钟控制..............................................................................................................................50 5.4 中断唤醒控制 .....................................................................................................................................51 从深度休眠模式唤醒后执行中断服务程序的方法 ................................................................. 51 5.4.2 从深度休眠模式唤醒后不执行中断服务程序的方法 ............................................................. 51 5.4.3 退出休眠 ..................................................................................................................................... 52 寄存器 .................................................................................................................................................54 5.5.1 系统控制寄存器 0(CR0) ....................................................................................................... 55 5.5.2 系统控制寄存器 1(CR1) ....................................................................................................... 56 5.5.3 系统控制寄存器 2(CR2) ....................................................................................................... 57 5.5.4 系统控制寄存器 3(CR3) ....................................................................................................... 58 el 5.5 5.4.1 RCH 控制寄存器(RCH)....................................................................................................... 59 5.5.6 RCL 控制寄存器(RCL) ........................................................................................................ 60 5.5.7 片内外设时钟控制寄存器 0(PeriClkEn0) ............................................................................ 61 Pr 5.5.5 6 5.5.8 片内外设时钟控制寄存器 1(PeriClkEn1) ............................................................................ 63 5.5.9 调试模式模块工作状态控制寄存器(DebugActive) ............................................................ 64 复位控制器(RESET).....................................................................................................................................65 复位控制器介绍..................................................................................................................................65 6.1.1 上电下电复位 POR .................................................................................................................... 65 6.1.2 外部复位管脚复位 ..................................................................................................................... 66 6.1.3 WDT 复位 ................................................................................................................................... 66 6.1.4 LVD 低电压复位 ........................................................................................................................ 66 6.1.5 Cortex-M0+ SYSRESETREQ 复位............................................................................................ 66 6.1.6 Cortex-M0+ LOCKUP 复位 ....................................................................................................... 66 to 6.1 6.2 7 寄存器..................................................................................................................................................67 6.2.1 复位标识寄存器(Reset_Flag) ............................................................................................... 67 6.2.2 片内外设复位控制寄存器 0(PeriReset0) ............................................................................. 69 6.2.3 片内外设复位控制寄存器 1(PeriReset1) ............................................................................. 71 中断控制器(NVIC) .......................................................................................................................................72 HC32F002 系列用户手册 Beta1.0 Page 4 of 415 7.1 概述......................................................................................................................................................72 7.2 中断优先级..........................................................................................................................................73 7.3 中断向量表..........................................................................................................................................74 7.4 中断输入和挂起行为..........................................................................................................................75 7.5 中断等待..............................................................................................................................................78 7.6 中断源..................................................................................................................................................79 7.7 中断结构图..........................................................................................................................................80 7.8 软件基本操作......................................................................................................................................82 外部中断使能 ............................................................................................................................. 82 7.8.2 NVIC 中断使能和清除使能 ..................................................................................................... 82 7.8.3 NVIC 中断挂起和清除挂起 ..................................................................................................... 82 7.8.4 NVIC 中断优先级 ..................................................................................................................... 82 7.8.5 NVIC 中断屏蔽 ......................................................................................................................... 83 i m 立 i 创 na 商 ry 城 7.9 7.8.1 寄存器..................................................................................................................................................84 7.9.1 中断使能设置寄存器(NVIC_ISER) ..................................................................................... 84 7.9.2 中断使能清除寄存器(NVIC_ICER) .................................................................................... 85 7.9.3 中断挂起状态设置寄存器(NVIC_ISPR) ............................................................................. 85 7.9.4 中断挂起状态清除寄存器(NVIC_ICPR) ............................................................................. 86 7.9.5 中断优先级寄存器(NVIC_IPR0) ......................................................................................... 87 7.9.6 中断优先级寄存器(NVIC_IPR1) ......................................................................................... 88 7.9.7 中断优先级寄存器(NVIC_IPR2) ......................................................................................... 89 7.9.8 中断优先级寄存器(NVIC_IPR3) ......................................................................................... 90 7.9.9 中断优先级寄存器(NVIC_IPR4) ......................................................................................... 91 el 7.9.10 中断优先级寄存器(NVIC_IPR5) ......................................................................................... 92 7.9.11 中断优先级寄存器(NVIC_IPR6) ......................................................................................... 93 7.9.12 中断优先级寄存器(NVIC_IPR7) ......................................................................................... 94 Pr 7.9.13 中断屏蔽特殊寄存器(PRIMASK) ....................................................................................... 95 通用输入输出端口控制器(GPIO)................................................................................................................96 8.1 简介......................................................................................................................................................96 8.2 主要特性..............................................................................................................................................96 8.3 功能描述..............................................................................................................................................97 8.3.1 端口电路框图 ............................................................................................................................. 97 8.3.2 端口模式配置 ............................................................................................................................. 98 8.3.3 端口复位状态 ............................................................................................................................. 99 8.3.4 端口模拟功能 ............................................................................................................................. 99 8.3.5 端口通用输入输出功能 ........................................................................................................... 100 to 8 8.3.5.1 输入模式 ......................................................................................................................... 101 8.3.5.2 输出模式 ......................................................................................................................... 102 8.3.6 端口复用功能 ........................................................................................................................... 103 8.3.7 端口时钟输出 ........................................................................................................................... 105 8.3.7.1 输出 HCLK...................................................................................................................... 105 8.3.7.2 输出 TCLK ...................................................................................................................... 105 HC32F002 系列用户手册 Beta1.0 Page 5 of 415 8.3.8 寄存器描述........................................................................................................................................107 8.4.1 寄存器列表 ............................................................................................................................... 107 8.4.2 端口数模配置寄存器(GPIOx_ADS) .................................................................................. 109 8.4.3 端口方向配置寄存器(GPIOx_DIR) .........................................................................................110 8.4.4 端口输出类型寄存器(GPIOx_OpenDrain) ......................................................................... 111 8.4.5 端口上拉寄存器(GPIOx_PU) .............................................................................................. 111 8.4.6 端口数据输入寄存器(GPIOx_IN).......................................................................................112 8.4.7 端口数据输出寄存器(GPIOx_OUT) ...................................................................................112 8.4.8 端口复位寄存器 (GPIOx_BRR) ..............................................................................................113 8.4.9 端口置位复位寄存器(GPIOx_BSRR) .................................................................................114 i m 立 i 创 na 商 ry 城 8.4 端口外部中断 ........................................................................................................................... 106 8.4.10 端口复用功能低位寄存器(GPIOx_AFRL) ........................................................................115 8.4.11 端口高电平中断使能配置寄存器(GPIOx_HIGHIE) ..............................................................116 8.4.12 端口低电平中断使能配置寄存器(GPIOx_LOWIE) ...............................................................116 8.4.13 端口上升沿中断使能配置寄存器(GPIOx_RISEIE) ...............................................................117 8.4.14 端口下降沿中断使能配置寄存器(GPIOx_FALLIE) ..............................................................117 8.4.15 端口中断状态寄存器(GPIOx_IFR) .........................................................................................118 8.4.16 端口中断清除寄存器(GPIOx_ICR) .........................................................................................119 8.4.17 端口辅助功能配置寄存器 1(GPIOx_CR1) ............................................................................ 120 8.4.18 端口辅助功能配置寄存器 4 (GPIO_CR4) ............................................................................. 121 FLASH 控制器(FLASH).............................................................................................................................122 9.1 概述....................................................................................................................................................122 9.2 容量划分............................................................................................................................................122 9.3 读等待周期........................................................................................................................................122 el 9 FLASH 操作(读、写、擦) ..........................................................................................................123 9.4.1 页擦除(Sector Erase) ........................................................................................................... 123 9.4.2 全片擦除(Chip Erase) ......................................................................................................... 123 Pr 9.4 写操作(Program) ................................................................................................................. 124 9.4.4 读操作(Read) ....................................................................................................................... 126 FLASH 安全保护 ..............................................................................................................................127 9.5.1 页面擦写保护 ........................................................................................................................... 127 9.5.2 PC 地址擦写保护 ..................................................................................................................... 127 9.5.3 寄存器写保护 ........................................................................................................................... 127 9.5.4 数据读出保护 ........................................................................................................................... 128 to 9.5 9.4.3 9.6 寄存器描述........................................................................................................................................129 9.6.1 控制寄存器列表 ....................................................................................................................... 129 9.6.2 控制寄存器(FLASH_CR) ................................................................................................... 130 9.6.3 中断标志寄存器(FLASH_IFR) .......................................................................................... 131 9.6.4 中断标志清除寄存器(FLASH_ICLR)................................................................................ 131 9.6.5 序列寄存器(FLASH_BYPASS) .......................................................................................... 132 9.6.6 擦写保护寄存器(FLASH_SLOCK) ................................................................................... 132 9.6.7 读等待周期寄存器(FLASH_WAIT) ................................................................................... 133 HC32F002 系列用户手册 Beta1.0 Page 6 of 415 9.6.8 读保护状态寄存器(FLASH_LockState) ............................................................................ 133 10 RAM 控制器(RAM)....................................................................................................................................134 10.1 概述....................................................................................................................................................134 10.2 功能描述............................................................................................................................................134 10.2.1 RAM 地址范围 ......................................................................................................................... 134 10.2.2 读写位宽 .................................................................................................................................. 134 11 基本定时器(BTIM) .....................................................................................................................................135 概述....................................................................................................................................................135 11.2 主要特性............................................................................................................................................135 11.3 功能描述............................................................................................................................................136 i m 立 i 创 na 商 ry 城 11.1 11.3.1 功能框图................................................................................................................................... 136 11.3.2 滤波单元................................................................................................................................... 136 11.3.3 计数单元................................................................................................................................... 136 11.3.4 定时器模式............................................................................................................................... 137 11.3.5 计数器模式............................................................................................................................... 138 11.3.6 触发启动模式........................................................................................................................... 138 11.3.7 门控模式................................................................................................................................... 139 11.3.8 定时器级联............................................................................................................................... 140 11.4 寄存器描述........................................................................................................................................141 11.4.1 重载寄存器(BTIMx_ARR)(x=3,4,5) .................................................................................. 142 11.4.2 计数寄存器(BTIMx_CNT)(x=3,4,5) .................................................................................. 142 11.4.3 控制寄存器(BTIMx_CR) (x=3,4,5)................................................................................... 143 11.4.4 中断使能(BTIMx_IER) (x=3,4,5) ..................................................................................... 144 el 11.4.5 中断标志寄存器(BTIMx_IFR) (x=3,4,5) .......................................................................... 144 11.4.6 中断标志清除寄存器(BTIMx_ICR)(x=3,4,5) ................................................................... 145 11.4.7 复合中断标志寄存器(BTIM345_AIFR) ............................................................................ 146 Pr 11.4.8 复合中断标志清除寄存器(BTIM345_AICR) ................................................................... 147 12 通用定时器(GTIM).....................................................................................................................................148 12.1 概述....................................................................................................................................................148 12.2 主要特性............................................................................................................................................148 12.3 功能描述............................................................................................................................................149 12.3.1 功能框图 .................................................................................................................................. 149 12.3.2 滤波单元 .................................................................................................................................. 149 to 12.3.3 计数单元 .................................................................................................................................. 150 12.3.4 定时器模式 .............................................................................................................................. 151 12.3.5 计数器模式 .............................................................................................................................. 151 12.3.6 触发启动模式........................................................................................................................... 151 12.3.7 门控模式 .................................................................................................................................. 152 12.3.8 比较捕获功能........................................................................................................................... 153 12.3.8.1 捕获功能........................................................................................................................ 153 12.3.8.2 比较功能........................................................................................................................ 154 12.3.9 定时器级联 .............................................................................................................................. 155 HC32F002 系列用户手册 Beta1.0 Page 7 of 415 12.3.10 片内外设互联......................................................................................................................... 155 12.4 寄存器描述........................................................................................................................................156 12.4.1 重载寄存器(GTIM_ARR) .................................................................................................. 157 12.4.2 计数寄存器(GTIM_CNT) .................................................................................................. 157 12.4.3 控制寄存器 1(GTIM_CR1) ................................................................................................ 158 12.4.4 控制寄存器 0(GTIM_CR0) ................................................................................................ 159 12.4.5 中断使能控制寄存器(GTIM_IER) .................................................................................... 160 12.4.6 中断标志寄存器(GTIM_IFR) ............................................................................................ 161 12.4.7 中断标志清除寄存器(GTIM_ICR) .................................................................................... 162 i m 立 i 创 na 商 ry 城 12.4.8 比较捕获控制寄存器(GTIM_CMMR) .............................................................................. 163 12.4.9 比较捕获寄存器(GTIM_CCRy)(y=0,1,2,3) ....................................................................... 164 13 高级定时器(ATIM) .....................................................................................................................................165 13.1 概述....................................................................................................................................................165 13.2 主要特性............................................................................................................................................165 13.3 功能描述............................................................................................................................................167 13.3.1 定时器时钟 .............................................................................................................................. 167 13.3.2 定时计数器 .............................................................................................................................. 167 13.3.3 定时器预分频........................................................................................................................... 167 13.3.4 模式 0 计数定时器功能.......................................................................................................... 168 13.3.4.1 功能框图........................................................................................................................ 168 13.3.4.2 计数波形........................................................................................................................ 169 13.3.4.3 计数功能........................................................................................................................ 170 13.3.4.4 定时功能........................................................................................................................ 170 el 13.3.4.5 时序图............................................................................................................................ 170 13.3.4.6 Buzzer 功能 .................................................................................................................... 171 13.3.4.7 设置示例........................................................................................................................ 171 Pr 13.3.5 模式 1 脉宽测量 PWC ............................................................................................................ 172 13.3.5.1 PWC 功能框图 ............................................................................................................... 172 13.3.5.2 PWC 波形测量时序图 ................................................................................................... 173 13.3.5.3 PWC 单次触发模式 ....................................................................................................... 175 13.3.5.1 设置示例........................................................................................................................ 175 13.3.6 模式 2/3 比较捕获模式 ........................................................................................................... 177 13.3.6.1 计数器............................................................................................................................ 177 to 13.3.6.2 计数器波形.................................................................................................................... 178 13.3.6.3 重复计数........................................................................................................................ 181 13.3.6.4 数据缓存........................................................................................................................ 183 13.3.6.5 比较输出 OCREF .......................................................................................................... 186 13.3.6.6 独立 PWM 输出 ............................................................................................................ 189 13.3.6.7 互补 PWM 输出 ............................................................................................................ 190 13.3.6.8 有死区的 PWM 输出 .................................................................................................... 191 13.3.6.9 单脉冲输出.................................................................................................................... 192 13.3.6.10 比较中断...................................................................................................................... 193 HC32F002 系列用户手册 Beta1.0 Page 8 of 415 13.3.6.11 捕获输入...................................................................................................................... 194 13.3.6.12 设置示例...................................................................................................................... 197 13.3.7 模式 2/3 从模式 ....................................................................................................................... 200 13.3.7.1 门控计数........................................................................................................................ 200 13.3.7.2 触发功能........................................................................................................................ 201 13.3.7.3 复位计数........................................................................................................................ 201 13.3.8 正交编码计数功能................................................................................................................... 202 13.3.9 Timer 触发 ADC ....................................................................................................................... 204 13.3.10 刹车控制 ................................................................................................................................ 205 i m 立 i 创 na 商 ry 城 13.3.11 定时器互联............................................................................................................................. 205 13.3.12 CH0B 捕获输入互联 .............................................................................................................. 205 13.4 寄存器描述........................................................................................................................................206 13.4.1 模式 0 寄存器描述................................................................................................................... 207 13.4.1.1 16 位模式重载寄存器(ATIMx_ARR) ...................................................................... 207 13.4.1.2 16 位模式计数寄存器(ATIMx_CNT) ...................................................................... 207 13.4.1.3 32 位模式计数寄存器(ATIMx_CNT32) .................................................................. 208 13.4.1.4 控制寄存器(ATIMx_M0CR) ................................................................................... 209 13.4.1.5 中断标志寄存器(ATIMx_IFR) .................................................................................211 13.4.1.6 中断标志清除寄存器(ATIMx_ICLR) ......................................................................211 13.4.1.7 死区时间寄存器(ATIMx_DTR) .............................................................................. 212 13.4.2 模式 1 寄存器描述................................................................................................................... 213 13.4.2.1 16 位模式计数寄存器(ATIMx_CNT) ...................................................................... 213 13.4.2.2 控制寄存器(ATIMx_M1CR) ................................................................................... 214 el 13.4.2.3 中断标志寄存器(ATIMx_IFR) ................................................................................ 216 13.4.2.4 中断标志清除寄存器(ATIMx_ICLR) ..................................................................... 216 13.4.2.5 主从模式控制寄存器(ATIMx_MSCR) ................................................................... 217 Pr 13.4.2.6 输出控制滤波(ATIMx_FLTR)................................................................................. 218 13.4.2.7 控制寄存器(ATIMx_CR0) ....................................................................................... 219 13.4.2.8 比较捕获寄存器 (ATIMx_CCR0A ) ............................................................................ 219 13.4.3 模式 2,3 寄存器描述................................................................................................................ 220 13.4.3.1 16 位模式重载寄存器(ATIMx_ARR) ...................................................................... 220 13.4.3.2 16 位模式计数寄存器(ATIMx_CNT) ...................................................................... 220 13.4.3.3 控制寄存器(ATIMx_M23CR) ................................................................................. 221 to 13.4.3.4 中断标志寄存器(ATIMx_IFR) ................................................................................ 224 13.4.3.5 中断标志清除寄存器(ATIMx_ICLR) ..................................................................... 226 13.4.3.6 主从模式控制寄存器(ATIMx_MSCR) ................................................................... 227 13.4.3.7 输出控制/输入滤波(ATIMx_FLTR)........................................................................ 229 13.4.3.8 ADC 触发控制寄存器(ATIMx_ADTR) ................................................................... 232 13.4.3.9 通道 0 控制寄存器(ATIMx_CRCH0) ..................................................................... 233 13.4.3.10 通道 1/2 控制寄存器(TIM3_CRCH1/2) ............................................................... 235 13.4.3.11 死区时间寄存器(ATIMx_DTR) ............................................................................ 237 13.4.3.12 重复周期设置值寄存器(ATIMx_RCR) ................................................................ 238 HC32F002 系列用户手册 Beta1.0 Page 9 of 415 13.4.3.13 通道 0 比较捕获寄存器 (ATIMx_CCR0A/B) ........................................................... 238 13.4.3.14 通道 1/2 比较捕获寄存器 (TIM3_CCR1/2 A/B) ...................................................... 239 13.4.3.15 通道 3 比较捕获寄存器 (TIM3_CCR3) .................................................................... 239 13.4.3.16 通道 3 控制寄存器(ATIM3_CRCH3) ................................................................... 240 14 时钟校准模块 (CTRIM)..................................................................................................................................241 14.1 概述....................................................................................................................................................241 14.2 主要特性............................................................................................................................................241 14.3 功能描述............................................................................................................................................241 14.3.1 RCH 时钟校准模式 .................................................................................................................. 241 i m 立 i 创 na 商 ry 城 14.3.2 RCL 时钟校准模式 .................................................................................................................. 242 14.3.3 低功耗定时器模式................................................................................................................... 243 14.4 软件操作流程....................................................................................................................................244 14.4.1 RCH 时钟自动校准示例 .......................................................................................................... 244 14.4.2 RCL 时钟自动校准示例 .......................................................................................................... 244 14.5 寄存器描述........................................................................................................................................246 14.5.1 自动装载寄存器(CTRIM_ARR) ........................................................................................ 246 14.5.2 误差计数器寄存器(CTRIM_CNT) .................................................................................... 247 14.5.3 控制寄存器 0(CTRIM_CR0) .............................................................................................. 248 14.5.4 控制寄存器 1(CTRIM_CR1) .............................................................................................. 249 14.5.5 中断使能寄存器(CTRIM_IER).......................................................................................... 250 14.5.6 中断和状态寄存器(CTRIM_ISR) ...................................................................................... 251 14.5.7 中断状态清除寄存器(CTRIM_ICR) ................................................................................. 252 14.5.8 误差结果寄存器(CTRIM_FCAP) ...................................................................................... 252 el 14.5.9 TrimCode 寄存器(CTRIM_TVAL) ..................................................................................... 253 14.5.10 误差上限寄存器(CTRIM_FLIM) .................................................................................... 253 15 独立看门狗(IWDT) ....................................................................................................................................254 概述....................................................................................................................................................254 Pr 15.1 15.2 主要特性............................................................................................................................................254 15.3 功能描述............................................................................................................................................255 15.3.1 功能框图 .................................................................................................................................. 255 15.3.2 窗口看门狗模式....................................................................................................................... 255 15.3.3 独立看门狗模式....................................................................................................................... 255 15.3.4 看门狗溢出处理....................................................................................................................... 255 to 15.3.5 看门狗暂停 .............................................................................................................................. 256 15.3.6 看门狗停止及再次运行........................................................................................................... 256 15.3.7 寄存器写保护........................................................................................................................... 256 15.4 编程示例............................................................................................................................................257 15.4.1 配置 IWDT 为窗口看门狗 ...................................................................................................... 257 15.4.2 配置 IWDT 为独立看门狗 ...................................................................................................... 257 15.5 寄存器描述........................................................................................................................................258 15.5.1 键值寄存器(IWDT_KR)..................................................................................................... 258 15.5.2 控制寄存器(IWDT_CR) ..................................................................................................... 259 HC32F002 系列用户手册 Beta1.0 Page 10 of 415 15.5.3 重载寄存器(IWDT_ARR) .................................................................................................. 260 15.5.4 窗口寄存器(IWDT_WINR)................................................................................................ 261 15.5.5 状态寄存器(IWDT_SR) ..................................................................................................... 262 16 窗口看门狗(WWDT) ..................................................................................................................................263 16.1 概述....................................................................................................................................................263 16.2 主要特性............................................................................................................................................263 16.3 功能描述............................................................................................................................................264 16.3.1 功能框图 .................................................................................................................................. 264 16.3.2 使能看门狗 .............................................................................................................................. 264 i m 立 i 创 na 商 ry 城 16.3.3 配置看门狗超时....................................................................................................................... 264 16.3.4 更新递减计数器....................................................................................................................... 264 16.3.5 预溢出中断 .............................................................................................................................. 265 16.4 编程示例............................................................................................................................................265 16.5 寄存器描述........................................................................................................................................266 16.5.1 控制寄存器 0(WWDT_CR0) ............................................................................................. 266 16.5.2 控制寄存器 1(WWDT_CR1) ............................................................................................. 267 16.5.3 配置寄存器(WWDT_SR) ................................................................................................... 268 17 低功耗同步异步收发器(LPUART) ...........................................................................................................269 17.1 概述....................................................................................................................................................269 17.2 主要特性............................................................................................................................................269 17.3 功能描述............................................................................................................................................270 17.3.1 功能框图 .................................................................................................................................. 270 17.3.2 时钟说明 .................................................................................................................................. 270 el 17.3.3 工作模式 .................................................................................................................................. 271 17.3.3.1 四种工作模式对比........................................................................................................ 271 17.3.3.2 Mode0 数据收发说明 .................................................................................................... 273 Pr 17.3.3.3 Mode1 数据收发说明 .................................................................................................... 273 17.3.3.4 Mode2/Mode3 数据收发说明 ........................................................................................ 274 17.3.3.5 单总线数据收发说明.................................................................................................... 275 17.3.4 波特率生成 .............................................................................................................................. 276 17.3.4.1 传输时钟为 4MHz 波特率设置示例(Mode1 / Mode3) .......................................... 276 17.3.4.2 传输时钟为 8MHz 波特率设置示例(Mode1 / Mode3) .......................................... 277 17.3.4.3 传输时钟为 16MHz 波特率设置示例(Mode1 / Mode3) ........................................ 277 to 17.3.4.4 传输时钟为 24MHz 波特率设置示例(Mode1 / Mode3) ........................................ 278 17.3.4.5 传输时钟为 32MHz 波特率设置示例(Mode1 / Mode3) ........................................ 278 17.3.4.6 传输时钟为 48MHz 波特率设置示例(Mode1 / Mode3) ........................................ 279 17.3.5 帧错误检测 .............................................................................................................................. 280 17.3.6 多机通讯 .................................................................................................................................. 280 17.3.6.1 主机发送地址帧及数据帧............................................................................................ 280 17.3.6.2 从机接收地址帧及数据帧............................................................................................ 280 17.3.6.3 从机地址配置................................................................................................................ 280 17.3.7 硬件流控 .................................................................................................................................. 281 HC32F002 系列用户手册 Beta1.0 Page 11 of 415 17.3.7.1 RTS 流控 ........................................................................................................................ 281 17.3.7.2 CTS 流控 ........................................................................................................................ 281 17.4 编程示例............................................................................................................................................283 17.4.1 发送数据示例........................................................................................................................... 283 17.4.2 接收数据示例........................................................................................................................... 283 17.5 寄存器描述........................................................................................................................................285 17.5.1 数据寄存器(LPUARTx_DR) .............................................................................................. 285 17.5.2 控制寄存器(LPUARTx_CR) .............................................................................................. 286 17.5.3 地址寄存器(LPUARTx_ADDR) ........................................................................................ 288 i m 立 i 创 na 商 ry 城 17.5.4 地址掩码寄存器(LPUARTx_AddrMask) .......................................................................... 288 17.5.5 标志位寄存器(LPUARTx_ISR) ......................................................................................... 289 17.5.6 标志位清除寄存器(LPUARTx_ICR) ................................................................................. 290 17.5.7 波特率寄存器(LPUARTx_BRR) ....................................................................................... 291 18 串行外设接口(SPI) .....................................................................................................................................292 18.1 概述....................................................................................................................................................292 18.2 主要特性............................................................................................................................................292 18.3 功能描述............................................................................................................................................293 18.3.1 功能框图 .................................................................................................................................. 293 18.3.2 通信格式和时序....................................................................................................................... 293 18.3.3 从机选择管脚配置................................................................................................................... 295 18.3.4 全双工通信 .............................................................................................................................. 296 18.3.5 单线半双工通信....................................................................................................................... 297 18.3.6 单工通信 .................................................................................................................................. 298 el 18.3.7 多机通信 .................................................................................................................................. 299 18.3.8 状态标志和错误标志............................................................................................................... 300 18.3.9 中断的产生和清除................................................................................................................... 303 编程示例............................................................................................................................................304 Pr 18.4 18.4.1 主机全双工收发数据示例....................................................................................................... 304 18.4.2 从机全双工收发数据示例....................................................................................................... 305 18.4.3 单线半双工发送接收数据示例............................................................................................... 306 18.6 寄存器描述........................................................................................................................................307 18.6.1 SPI 控制寄存器 0(SPI_CR0) .................................................................................................... 308 18.6.2 SPI 控制寄存器 1(SPI_CR1) .................................................................................................... 310 to 18.6.3 SPI 单线半双工输出使能寄存器(SPI_HDOE) ....................................................................... 312 18.6.4 SPI 内部从机选择寄存器(SPI_SSI) ........................................................................................ 313 18.6.5 SPI 状态寄存器(SPI_SR) ......................................................................................................... 314 18.6.6 SPI 中断清除寄存器(SPI_ICR) ............................................................................................... 316 18.6.7 SPI 数据寄存器(SPI_DR) ........................................................................................................ 317 19 I2C 总线(I2C) .............................................................................................................................................318 19.1 概述....................................................................................................................................................318 19.2 主要特性............................................................................................................................................318 19.3 协议描述............................................................................................................................................318 HC32F002 系列用户手册 Beta1.0 Page 12 of 415 19.3.1 I2C 总线上数据传输 ............................................................................................................... 319 19.3.2 I2C 总线上的应答 ................................................................................................................... 320 19.3.3 I2C 总线上的仲裁 ................................................................................................................... 321 19.4 功能描述............................................................................................................................................322 19.4.1 功能框图 .................................................................................................................................. 322 19.4.2 串行时钟发生器....................................................................................................................... 323 19.4.3 输入滤波器 .............................................................................................................................. 323 19.4.4 地址比较器 .............................................................................................................................. 323 19.4.5 应答标志位 .............................................................................................................................. 324 i m 立 i 创 na 商 ry 城 19.4.6 中断产生器 .............................................................................................................................. 324 19.4.7 工作模式 .................................................................................................................................. 324 19.4.8 状态码表述 .............................................................................................................................. 330 19.5 编程示例............................................................................................................................................333 19.5.1 主机发送示例........................................................................................................................... 333 19.5.2 主机接收示例........................................................................................................................... 334 19.5.3 从机接收示例........................................................................................................................... 335 19.5.4 从机发送示例........................................................................................................................... 336 19.6 寄存器描述........................................................................................................................................337 19.6.1 寄存器列表 .............................................................................................................................. 337 19.6.2 波特率发生器使能寄存器(I2C_BRREN) ............................................................................... 337 19.6.3 波特率计数器配置寄存器(I2C_BRR) .................................................................................... 338 19.6.4 配置寄存器(I2C_CR)............................................................................................................... 339 19.6.5 数据寄存器(I2C_DR) .............................................................................................................. 340 el 19.6.6 状态寄存器(I2C_STAT) ........................................................................................................... 340 19.6.7 从机地址 0 寄存器(I2C_ADDR0) ........................................................................................... 341 19.6.8 从机地址 1 寄存器(I2C_ADDR1) ........................................................................................... 342 Pr 19.6.9 从机地址 2 寄存器(I2C_ADDR2) ........................................................................................... 342 19.6.10 从机地址匹配寄存器(I2C_MATCH) .................................................................................... 343 20 模数转换器(ADC) ......................................................................................................................................344 模块简介............................................................................................................................................344 20.2 ADC 框图 ...........................................................................................................................................345 20.3 转换时序及转换速度........................................................................................................................346 20.4 单次转换模式....................................................................................................................................347 20.5 外部触发转换模式 ...........................................................................................................................348 20.6 持续转换模式 ...................................................................................................................................349 20.7 测量 AVCC 电压...............................................................................................................................350 20.8 ADC 中断 ..........................................................................................................................................351 20.9 ADC 模块寄存器 .............................................................................................................................352 to 20.1 20.9.1 ADC 配置寄存器 0(ADC_CR0) ........................................................................................ 353 20.9.2 ADC 配置寄存器 1(ADC_CR1) ........................................................................................ 354 20.9.3 ADC 转换结果寄存器(ADC_Result) ................................................................................ 355 20.9.4 ADC 中断标志寄存器(ADC_IFR) .................................................................................... 355 HC32F002 系列用户手册 Beta1.0 Page 13 of 415 20.9.5 ADC 中断使能寄存器(ADC_IER) .................................................................................... 356 20.9.6 ADC 标志清除寄存器(ADC_ICR) .................................................................................... 356 20.9.7 ADC 外部触发配置寄存器(ADC_ExtTrigger) ................................................................. 357 20.9.8 ADC 转换启动控制寄存器(ADC_Start) ........................................................................... 358 20.9.9 ADC 持续转换控制寄存器(ADC_AllStart) ...................................................................... 358 21 低电压检测器(LVD)...................................................................................................................................359 LVD 简介 ..........................................................................................................................................359 21.2 LVD 框图 ..........................................................................................................................................359 21.3 迟滞功能............................................................................................................................................360 21.4 数字滤波............................................................................................................................................360 21.5 配置示例............................................................................................................................................361 i m 立 i 创 na 商 ry 城 21.1 21.5.1 LVD 配置为低电压复位 ......................................................................................................... 361 21.5.2 LVD 配置为电压变化中断 ..................................................................................................... 362 21.6 LVD 寄存器 ......................................................................................................................................363 21.6.1 LVD 配置寄存器(LVD_CR) .............................................................................................. 364 21.6.2 LVD 中断寄存器(LVD_IFR) ............................................................................................. 366 22 器件电子签名 ...................................................................................................................................................367 22.1 产品唯一身份标识码(UID)寄存器.............................................................................................367 22.2 产品型号寄存器................................................................................................................................368 22.3 FLASH 容量寄存器 ..........................................................................................................................368 22.4 RAM 容量寄存器..............................................................................................................................369 22.5 管脚数量寄存器................................................................................................................................369 22.6 一次性编程区域(OTP 区域) .......................................................................................................370 el 23 SWD 调试接口 ................................................................................................................................................371 SWD 调试附加功能.........................................................................................................................371 23.2 ARM® 参考文档 .............................................................................................................................372 23.3 调试端口管脚....................................................................................................................................373 Pr 23.1 23.3.1 SWD 端口管脚 ........................................................................................................................ 373 23.3.2 SW-DP 管脚分配..................................................................................................................... 373 23.3.3 SWD 管脚上的内部上拉 ........................................................................................................ 373 23.4 SWD 端口.........................................................................................................................................374 23.4.1 SWD 协议简介 ........................................................................................................................ 374 23.4.2 SWD 协议序列 ........................................................................................................................ 374 to 23.4.3 SW-DP 状态机(复位、空闲状态、ID 代码) ................................................................... 375 23.4.4 DP 和 AP 读/写访问 .............................................................................................................. 375 23.4.5 SW-DP 寄存器 ......................................................................................................................... 376 23.4.6 SW-AP 寄存器 ......................................................................................................................... 377 23.5 内核调试............................................................................................................................................378 23.6 BPU(断点单元) ............................................................................................................................378 23.6.1 BPU 功能 ................................................................................................................................. 378 23.7 DWT(数据观察点).......................................................................................................................379 23.7.1 DWT 功能 ................................................................................................................................ 379 HC32F002 系列用户手册 Beta1.0 Page 14 of 415 23.7.2 DWT 程序计数器采样寄存器 ................................................................................................ 379 23.8 调试组件(DBG) ...........................................................................................................................380 23.8.1 对低功耗模式的调试支持....................................................................................................... 380 23.8.2 对定时器、看门狗的调试支持............................................................................................... 380 24 典型应用电路图 ...............................................................................................................................................381 25 电气特性...........................................................................................................................................................382 25.1 测试条件............................................................................................................................................382 25.1.1 最小和最大数值....................................................................................................................... 382 25.1.2 典型数值 .................................................................................................................................. 382 绝对最大额定值................................................................................................................................383 25.3 工作条件............................................................................................................................................385 i m 立 i 创 na 商 ry 城 25.2 25.3.1 通用工作条件........................................................................................................................... 385 25.3.2 上电和掉电时的工作条件....................................................................................................... 385 25.3.3 内嵌复位和 LVD 模块特性 ..................................................................................................... 386 25.3.4 内置的参考电压....................................................................................................................... 388 25.3.5 供电电流特性........................................................................................................................... 388 25.3.6 从低功耗模式唤醒的时间....................................................................................................... 391 25.3.7 外部时钟源特性....................................................................................................................... 392 25.3.7.1 外部输入高速时钟........................................................................................................ 392 25.3.8 内部时钟源特性....................................................................................................................... 393 25.3.8.1 内部 RCH 振荡器 ........................................................................................................ 393 25.3.8.2 内部 RCL 振荡器 ......................................................................................................... 393 25.3.9 存储器特性 .............................................................................................................................. 394 el 25.3.10 EFT 特性 ................................................................................................................................. 394 25.3.11 ESD 特性 ................................................................................................................................. 395 25.3.12 I/O 端口特性 ........................................................................................................................... 395 Pr 25.3.12.1 输出特性——端口...................................................................................................... 395 25.3.12.2 输入特性——端口 PA,PB,PC,PD ............................................................................. 397 25.3.12.3 端口外部输入采样要求——Timer Clock.................................................................. 397 25.3.12.4 端口漏电特性——PA,PB,PC,PD ............................................................................... 398 25.3.13 RESETB 引脚特性.................................................................................................................. 398 25.3.14 ADC 特性 ................................................................................................................................ 398 25.3.15 TIM 定时器特性 ..................................................................................................................... 401 to 25.3.16 通信接口 ................................................................................................................................ 403 25.3.16.1 I2C 特性........................................................................................................................ 403 25.3.16.2 SPI 特性 ........................................................................................................................ 404 26 封装尺寸...........................................................................................................................................................407 27 附录 A SysTick 定时器 ................................................................................................................................411 27.1 SysTick 定时器简介 ........................................................................................................................ 411 27.2 设置 SysTick ..................................................................................................................................... 411 27.3 SysTick 寄存器 ................................................................................................................................412 27.3.1 SysTick 控制和状态寄存器(CTRL) .................................................................................. 412 HC32F002 系列用户手册 Beta1.0 Page 15 of 415 27.3.2 SysTick 重载寄存器(LOAD) ............................................................................................. 412 27.3.3 SysTick 当前值寄存器(VAL)............................................................................................. 412 27.3.4 SysTick 校准值寄存器(CALIB) ........................................................................................ 413 28 附录 B 文档约定 ...........................................................................................................................................414 28.1 寄存器相关缩写词列表....................................................................................................................414 28.2 词汇表................................................................................................................................................414 to Pr el i m 立 i 创 na 商 ry 城 版本记录 & 联系方式 ...........................................................................................................................................415 HC32F002 系列用户手册 Beta1.0 Page 16 of 415 表目录 表 2-1 模块信号说明 ............................................................................................................................................ 35 表 3-1 地址划分表 ................................................................................................................................................ 37 表 7-1 Cortex-M0+ 处理器中断一览 .................................................................................................................. 72 表 7-2 外部中断与 NVIC 中断输入对应关系................................................................................................... 79 表 8-1 端口功能配置表 ........................................................................................................................................ 98 表 8-2 GPIO 寄存器一览表 ................................................................................................................................ 108 表 9-1 FLASH 容量划分 .................................................................................................................................... 122 i m 立 i 创 na 商 ry 城 表 10-1 RAM 地址映射 ...................................................................................................................................... 134 表 11-1 BTIM 寄存器列表 ................................................................................................................................ 141 表 12-1 Timer 寄存器列表................................................................................................................................. 156 表 13-1 Timer 寄存器列表................................................................................................................................. 206 表 14-1 CTRIM 寄存器 ...................................................................................................................................... 246 表 15-1 IWDT 寄存器列表................................................................................................................................ 258 表 16-1 WWDT 寄存器列表 ............................................................................................................................. 266 表 17-1 Mode0/1/2/3 数据结构........................................................................................................................... 271 表 17-2 B8 数据含义 .......................................................................................................................................... 272 表 17-3 SCL 为 4MHz 波特率计算表................................................................................................................ 276 表 17-4 SCLK 为 8MHz 波特率计算表 ............................................................................................................. 277 表 17-5 SCLK 为 16MHz 波特率计算表 ........................................................................................................... 277 表 17-6 SCLK 为 24MHz 波特率计算表 ........................................................................................................... 278 表 17-7 SCLK 为 32MHz 波特率计算表 ........................................................................................................... 278 el 表 17-8 SCLK 为 48MHz 波特率计算表 ........................................................................................................... 279 表 18-1 SPI 中断 ................................................................................................................................................. 303 表 18-2 SPI 寄存器列表 ..................................................................................................................................... 307 Pr 表 19-1 I2C 时钟信号波特率 ............................................................................................................................ 323 表 20-1 ADC 寄存器........................................................................................................................................... 352 表 21-1 LVD 寄存器 .......................................................................................................................................... 363 表 25-1 工作电流特性 ........................................................................................................................................ 390 表 25-2 高级定时器(ADVTIM)特性 ............................................................................................................ 401 表 25-3 通用定时器特性 .................................................................................................................................... 401 表 25-4 低功耗定时器特性 ................................................................................................................................ 402 to 表 25-5 IWDT 特性............................................................................................................................................. 402 表 25-6 WWDT 特性 .......................................................................................................................................... 402 表 25-7 I2C 接口特性 ......................................................................................................................................... 403 HC32F002 系列用户手册 Beta1.0 Page 17 of 415 图目录 图 2-1 管脚配置图 ................................................................................................................................................ 32 图 3-1 系统架构示意图 ........................................................................................................................................ 36 图 4-1 工作模式状态转换图 ................................................................................................................................ 38 图 5-1 时钟控制模块框图 .................................................................................................................................... 45 图 5-2 时钟切换示意图 ........................................................................................................................................ 48 图 6-1 复位来源示意图 ........................................................................................................................................ 65 图 7-1 只使用了高两位的优先级寄存器 ............................................................................................................ 73 i m 立 i 创 na 商 ry 城 图 7-2 中断向量表 ................................................................................................................................................ 74 图 7-3 中断激活和挂起状态 ................................................................................................................................ 75 图 7-4 中断挂起状态被清除然后被重新确认 .................................................................................................... 76 图 7-5 中断退出时若中断请求保持高电平就会引起中断处理的再次执行..................................................... 76 图 7-6 中断处理中产生的中断挂起也可以被确认 ............................................................................................ 77 图 7-7 中断结构图 ................................................................................................................................................ 80 图 8-1 通用端口电路示意图 ................................................................................................................................ 97 图 8-2 高阻-模拟配置示意图 ............................................................................................................................... 99 图 8-3 输入悬空/上拉来配置示意图 ................................................................................................................. 101 图 8-4 读取端口管脚数据同步图 ...................................................................................................................... 101 图 8-5 输出配置示意图 ...................................................................................................................................... 102 图 8-6 复用功能配置示意图 .............................................................................................................................. 103 图 11-1 BTIM 框图 ............................................................................................................................................ 136 计数器波形 ............................................................................................................................................ 137 图 11-3 定时模式框图 ........................................................................................................................................ 138 el 图 11-2 计数器模式框图 .................................................................................................................................... 138 图 11-5 触发启动器模式框图 ............................................................................................................................ 139 图 11-6 触发启动模式计数示意图 .................................................................................................................... 139 Pr 图 11-4 图 11-7 门控模式框图 ........................................................................................................................................ 140 图 11-8 门控模式计数示意图 ............................................................................................................................ 140 图 12-1 GTIM 框图 ............................................................................................................................................. 149 图 12-2 计数器波形 ............................................................................................................................................ 150 图 12-3 定时模式框图 ........................................................................................................................................ 151 图 12-4 计数器模式框图 .................................................................................................................................... 151 to 图 12-5 触发启动器模式框图 ............................................................................................................................ 152 图 12-6 触发启动模式计数示意图 .................................................................................................................... 152 图 12-7 门控模式框图 ........................................................................................................................................ 153 图 12-8 门控模式计数示意图 ............................................................................................................................ 153 图 12-9 捕获功能示意图 .................................................................................................................................... 154 图 12-10 比较功能示意图 .................................................................................................................................. 155 图 13-1 ATIM3 框图 .......................................................................................................................................... 166 图 13-2 自由计数框图 ........................................................................................................................................ 168 图 13-3 重载计数波形 ........................................................................................................................................ 168 HC32F002 系列用户手册 Beta1.0 Page 18 of 415 图 13-4 16 位重载计数波形 ............................................................................................................................... 169 图 13-5 32 位自由计数波形 ............................................................................................................................... 169 图 13-6 自由计数时序图 .................................................................................................................................... 170 图 13-7 重载计数时序图(预分频设置为 2) ................................................................................................. 170 图 13-8 PWC 测量框图 ...................................................................................................................................... 172 图 13-9 高电平脉冲宽度测量 ............................................................................................................................ 173 图 13-10 下降沿到下降沿周期测量 .................................................................................................................. 173 图 13-11 上升沿到上升沿周期测量 .................................................................................................................. 173 图 13-12 上升沿到上升沿周期测量单次模式 .................................................................................................. 175 i m 立 i 创 na 商 ry 城 图 13-13 计数器框图 .......................................................................................................................................... 177 图 13-14 无预分频的向上计数 .......................................................................................................................... 178 图 13-15 带预分频的上计数 .............................................................................................................................. 179 图 13-16 不带预分频的下计数 .......................................................................................................................... 179 图 13-17 带预分频的下计数 .............................................................................................................................. 180 图 13-18 带预分频的上下计数 .......................................................................................................................... 180 图 13-19 边沿对齐计时器波形( DIR =1) .......................................................................................................... 180 图 13-20 边沿对齐计时器波形( DIR =0) .......................................................................................................... 181 图 13-21 中心对齐计数器波形 .......................................................................................................................... 181 图 13-22 重复计数器产生更新时序(RCR.UD=0 RCR.OV=0) ................................................................... 182 图 13-23 三角波模式下缓存使能 ...................................................................................................................... 183 图 13-24 三角波模式下缓存无效 ...................................................................................................................... 183 图 13-25 锯齿波模式下上计数缓存使能 .......................................................................................................... 184 图 13-26 锯齿波模式下上计数缓存无效 .......................................................................................................... 184 el 图 13-27 锯齿波模式下计数缓存使能 .............................................................................................................. 184 图 13-28 锯齿波模式下计数缓存无效 .............................................................................................................. 185 图 13-29 锯齿波模式下计数比较缓存使能 ...................................................................................................... 185 Pr 图 13-30 OCREF 输出框图 ................................................................................................................................ 186 图 13-31 锯齿波计数单点比较 OCREF 输出波形(OCMx=111) ............................................................... 187 图 13-32 三角波计数单点比较 OCREF 输出波形(OCMx=111)................................................................. 187 图 13-33 锯齿波计数双点比较 OCREF 输出(OCMx=111) ........................................................................ 188 图 13-34 三角波计数双点比较 OCREF 输出(OCMx=111) ........................................................................ 188 图 13-35 独立 PWM 输出框图........................................................................................................................... 189 图 13-36 CCPx=0 时 PWM 输出波形 ................................................................................................................ 189 to 图 13-37 CCPx=1 时 PWM 输出波形 ................................................................................................................ 189 图 13-38 互补 PWM 输出框图........................................................................................................................... 190 图 13-39 互补 PWM 输出波形图....................................................................................................................... 190 图 13-40 互补 PWM 输出波形图....................................................................................................................... 191 图 13-41 死区时间 .............................................................................................................................................. 191 图 13-42 三角波模式单脉冲计数 ...................................................................................................................... 192 图 13-43 锯齿波上计数单脉冲模式 .................................................................................................................. 193 图 13-44 锯齿波下计数单脉冲模式 .................................................................................................................. 193 图 13-45 中断示意图 .......................................................................................................................................... 194 HC32F002 系列用户手册 Beta1.0 Page 19 of 415 图 13-46 捕获功能框图 ...................................................................................................................................... 195 图 13-47 捕获时序图 .......................................................................................................................................... 195 图 13-48 CHA 端口选择..................................................................................................................................... 195 图 13-49 CHB 端口选择 ..................................................................................................................................... 196 图 13-50 从模式示意图 ...................................................................................................................................... 200 图 13-51 门控功能 .............................................................................................................................................. 201 图 13-52 触发和复位功能 .................................................................................................................................. 201 图 13-53 编码计数 .............................................................................................................................................. 203 图 13-54 ADC 触发............................................................................................................................................. 204 i m 立 i 创 na 商 ry 城 图 17-1 结构框图 ................................................................................................................................................ 270 图 17-2 Mode0 发送数据 .................................................................................................................................... 273 图 17-3 Mode0 接收数据 .................................................................................................................................... 273 图 17-4 Mode1 发送数据 .................................................................................................................................... 274 图 17-5 Mode1 接收数据 .................................................................................................................................... 274 图 17-6 Mode2 发送数据 .................................................................................................................................... 274 图 17-7 Mode2 接收数据 .................................................................................................................................... 275 图 17-8 RTS 硬件流控信号 ................................................................................................................................ 281 图 17-9 CTS 硬件流控信号 ................................................................................................................................ 282 图 18-1 SPI 框图 ................................................................................................................................................. 293 图 18-2 SPI 通信格式时序图 ............................................................................................................................. 294 图 18-5 从机选择 NSS 管脚配置 ....................................................................................................................... 295 图 22-6 SPI 全双工通信 ..................................................................................................................................... 296 图 22-7 SPI 单线半双工通信 ............................................................................................................................. 297 el 图 22-8 SPI 单工发送通信示意 ......................................................................................................................... 298 图 18-9 SPI 多机系统 ......................................................................................................................................... 299 图 18-3 SPI 主机模式一般标志位说明图 ......................................................................................................... 302 Pr 图 18-4 SPI 从机模式一般标志位说明图 ......................................................................................................... 302 图 19-1 I2C 传输协议 ........................................................................................................................................ 319 图 20-1 ADC 示意框图....................................................................................................................................... 345 图 20-2 ADC 转换时序图................................................................................................................................... 346 图 20-3 ADC 转换外部触发源示意图 ............................................................................................................... 348 图 21-1 LVD 框图 .............................................................................................................................................. 359 图 21-2 LVD 迟滞响应 ...................................................................................................................................... 360 to 图 21-3 LVD 滤波输出 ...................................................................................................................................... 360 图 23-1 调试支持框图 ........................................................................................................................................ 371 图 25-1 POR/Brown Out 示意图 ........................................................................................................................ 386 图 25-2 输出端口 VOH/VOL 实测曲线 .......................................................................................................... 396 图 25-3 I2C 接口时序 ......................................................................................................................................... 403 HC32F002 系列用户手册 Beta1.0 Page 20 of 415 简介 HC32F002 系列是一款旨在延长便携式测量系统的电池使用寿命的低功耗、宽电压工作范围的 MCU。集成 10 位 1Msps 高精度 SARADC,内置高性能 PWM 定时器,UART、SPI、I2C 等 丰富的通讯外设,具有高整合度、高抗干扰、高可靠性和低功耗的特点。本产品内核采用 Cortex- i m 立 i 创 na 商 ry 城 M0+ 内核,配合成熟的 Keil & IAR 调试开发软件,支持 C 语言及汇编语言。 低功耗 MCU 典型应用 传感器应用、物联网应用  智能仪表、无线模块、温控器、货架标签  智能交通、报警系统  智能家居、医疗设备 to Pr el  HC32F002 系列用户手册 Beta1.0 Page 21 of 415 产品特性 低功耗 MCU ⚫ 48MHz Cortex-M0+ 32 位 CPU 平台 ⚫ HC32F002 系列具有灵活的功耗管理系统 – 提供 WDT 计数 5μA @ 3V 深度休眠模式:所有时钟关闭, – 1 个窗口看门狗电路,使用系统时钟 上电复位有效,IO 状态保持,IO 中断有效, – 1 个低功耗 16 位定时器,支持自动唤醒 所有寄存器、RAM 和 CPU 数据保存状态 – 1 个 CM0+ 内置 24 位 SysTick 定时器 ⚫ 时的功耗 – 1 个独立看门狗电路,内部低速时钟振荡器 i m 立 i 创 na 商 ry 城 – – 通讯接口 15μA/MHz@3V@48MHz 休眠模式: CPU 停 – 2 路 LPUART 通讯接口 止,外设处于可运行状态,主时钟运行 – 1 路 SPI 标准通讯接口 100μA/MHz@3V@48MHz 工作模式:CPU – 1 路 I2C 标准通讯接口 ⚫ 定时器作为蜂鸣器频率发生器 18K 字节 FLASH 存储器,具有擦写保护功能, ⚫ 全球唯一 10 字节 ID 号 支持 ISP、ICP、IAP,4 级安全保护 ⚫ 128 字节 OTP 存储器,只能通过编程器写入 ⚫ 2K 字节 RAM 存储器 ⚫ 10 位高达 1Msps 采样速率的 SARADC ⚫ 通用 I/O 管脚 (22IO/24PIN,18IO/20PIN) ⚫ 集成低电压侦测器,可配置 16 阶比较电压,可 ⚫ 时钟 和外设可运行,从 FLASH 运行程序 监控端口电压以及电源电压 – 内部高速时钟 44.24/48MHz ⚫ SWD 调试解决方案,提供全功能调试器 – 内部低速时钟 32.8/38.4KHz ⚫ 工作条件:-40 ~ 105℃,1.7V ~ 5.5V – 外部输入 1-16MHz ⚫ 封装形式:QFN24/20,TSSOP24/20 Pr el ⚫ ⚫ 定时器/计数器 – 1 个高级 16 位定制器,支持 3 相互补 PWM – to 输出 1 个复合定时器,可配置为通用 16 位定时 器/计数器或 3 个 16 位基本定时器;作为通 用定时器时支持 4 通道捕获比较,4 通道 PWM 输出;作为基本定时器时,每个定时 器支持两路翻转输出 HC32F002 系列用户手册 Beta1.0 Page 22 of 415 1 功能模块 1.1 功能模块框图 PA00 ······ PA04 PB00 ······ PB05 PC03 ······ PC07 PD01 ······ PD06 NVIC SWD Bus Matrix SRAM Up to 2 KB SysCtrl GPIO PortA GPIO PortB ATIM3 y=0,1,2 GPIO PortC el I2C SPI Pr SPI_NSS SPI_SCK SPI_MOSI SPI_MISO ADC_AIN00 ······ ADC_AIN13 ADC_ExRef ATIM3_BK ATIM3_ETR ATIM3_CHyA ATIM3_CHyB GPIO PortD AHB to APB Bridge I2C_SCL I2C_SDA AVCC AVSS RESETB i m 立 i 创 na 商 ry 城 SWDIO SWCLK POR BOR RCH RCL LDO Flash Up to 18 KB ARM Cortex-M0+ ADC(10bit) GTIM / BTIMx x=3,4,5; y=0-3 GTIM_CHy GTIM_ETR GTIM_TOGP GTIM_TOGN BTIM_ETR BTIMx_TOGP BTIMx_TOGN CTRIM CTRIM_ETR CTRIM_TOG LPUARTx x=0,1 LPUARTx_TXD LPUARTx_RXD LPUARTx_CTS LPUARTx_RTS IWDT @AVCC LVD WWDT to LVD_IN0 LVD_IN1 LVD_IN2 LVD_OUT HC32F002 系列用户手册 Beta1.0 Page 23 of 415 1.2 32 位 Cortex M0+ 内核 ARM® Cortex®-M0+ 处理器源于 Cortex-M0,包含了一颗 32 位 RISC 处理器,运算 能力达到 0.95 Dhrystone MIPS/MHz。同时加入了多项全新设计,改进调试和追踪能力、 减少每条指令循环(IPC)数量和改进 Flash 访问的两级流水线等,更纳入了节能降耗 技术。Cortex-M0+ 处理器全面支持已整合 Keil & IAR 调试器。 i m 立 i 创 na 商 ry 城 Cortex-M0+ 包含了一个硬件调试电路,支持 2-pin 的 SWD 调试界面。 ARM Cortex-M0+ 特性: 指令集 Thumb / Thumb-2 流水线 2级流水线 性能效率 2.46 CoreMark / MHz 性能效率 0.95 DMIPS / MHz in Dhrystone 中断 15个快速中断 中断优先级 可配置4级中断优先级 增强指令 多周期32位乘法器 调试 Serial-wire 调试端口,支持4个硬中断(break point)以及1个观察点 (watch point) 1.3 存储器 el 1.3.1 18 Kbytes FLASH Pr 内建全集成 FLASH 控制器,无需外部高压输入,由全内置电路产生高压来编程。支持 ISP、IAP、ICP 功能。具有 4 级安全保护等级。 1.3.2 2 Kbytes RAM 任意功耗模式,RAM 数据均不会丢失。 时钟系统 to 1.4 一个频率为 44 ~ 48MHz 的高精度内部时钟 RCH。出厂已预置 44.24MHz、48MHz 校 准值。 一个频率为 32.8KHz / 38.4KHz 的内部时钟 RCL。 HC32F002 系列用户手册 Beta1.0 Page 24 of 415 工作模式 1.5  运行模式(Active Mode):CPU 运行,片内外设运行。  休眠模式(Sleep Mode):CPU 停止运行,片内外设运行。  深度休眠模式(Deep sleep Mode):CPU 停止运行,低功耗片内外设运行。 i m 立 i 创 na 商 ry 城 端口控制器 GPIO 1.6 最多可提供 22 个 GPIO 端口,其中部分 GPIO 与模拟端口复用。每个端口由独立的 控制寄存器位来控制。所有管脚支持边沿触发中断和电平触发中断,可从各种休眠模式 下将 MCU 唤醒到工作模式。支持位置位、位清零、位置位清零操作。支持 Push-Pull CMOS 推挽输出、Open-Drain 开漏输出。内置上拉电阻,带有施密特触发器功能。每 个 IO 最大支持 18mA 的电流驱动能力,20 管脚及以下封装其中 4 个 IO 支持大驱动输 出。 中断控制器 NVIC 1.7 Cortex-M0+处理器内置了嵌套向量中断控制器(NVIC),支持最多 15 个中断请求(IRQ) el 输入;有四个中断优先级,可处理复杂逻辑,能够进行实时控制和中断处理。 复位控制器 RESET Pr 1.8 本产品具有 7 个复位信号来源,每个复位信号可以让 CPU 重新运行,绝大多数寄存器 会被重新复位,程序计数器 PC 会指向起始地址。 定时器 TIM 1.9 名称 位宽 预除频 计数方向 PWM 捕获 互补输出 高级定时器 ATIM3 16/32 1/2/4/8/16/ 上计数/ 6 6 3 32/64/256 下计数/ to 类型 通用定时器 低功耗定时器 上下计数 GTIM 16 1~32768 上计数 4 4 无 BTIM3-5 16 1~32768 上计数 无 无 无 CTRIM 16 1~32768 上计数 无 无 无 通用定时器是支持 4 路比较捕获功能的定时器,可以配置成 3 个基本定时器。 低功耗定时器是异步 16 位定时/计数器,在系统时钟关闭后仍然可以通 RCL 进行计时/ HC32F002 系列用户手册 Beta1.0 Page 25 of 415 计数。通过中断在低功耗模式下唤醒系统。 高级定时器包含定时器 ATIM3,其特性如下: PWM 独立输出,互补输出  捕获输入  死区控制  刹车控制  边沿对齐、对称中心对齐与非对称中心对齐 PWM 输出  正交编码计数功能  单脉冲模式  外部计数功能 i m 立 i 创 na 商 ry 城  ATIM3 是多通道的通用定时器,可以产生 3 组 PWM 互补输出或 6 路 PWM 独立输出, 最多 6 路输入捕获。具有死区控制功能。 1.10 看门狗 WDT IWDT 是一个可配置的 12 位定时器,在 MCU 异常的情况下提供复位;RCL 时钟输入 el 作为计数器时钟。只有写入特定序列才能重启 WDT。 WWDT 是一个 7 位定时器,通常被用来监测,由外部干扰或不可预见的逻辑条件造成 Pr 的应用程序背离正常的运行序列而产生的软件故障。 1.11 低功耗同步异步收发器 LPUART 2 路低功耗模式下可以工作的同步异步收发器(Low Power Universal Asynchronous Receiver/Transmitter),LPUART0/LPUART1,其基本功能如下所示: to  传输时钟 SCLK(SCLK 可选择 RCL 或 PCLK)  系统低功耗模式下收发数据  半双工和全双工传输  8/9-Bit 传输数据长度  硬件奇偶校验  1/1.5/2-Bit 停止位  四种不同传输模式 HC32F002 系列用户手册 Beta1.0 Page 26 of 415  16-Bit 波特率计数器  多机通讯  硬件地址识别  硬件流控  支持单线模式 i m 立 i 创 na 商 ry 城 1.12 串行外设接口 SPI  可配置为主机或者从机,支持多机模式  主机模式最大分频系数为 PCLK/2,最高通信速率为 12M bps  从机模式最大分频系数为 PCLK/4,最高通信速率为 8M bps  多种通信模式:全双工、单线半双工、单工  两种传输顺序:先收发 MSB 或先收发 LSB  多种数据帧长度:4bit ~ 16bit  两种 NSS 方式:硬件控制、软件控制  可配置的串行时钟极性和相位 el 1.13 I2C 总线 1 路 I2C,采用串行同步时钟,可实现设备之间以不同的速率传输数据。 Pr I2C 基本特性:  支持主机发送/接收,从机发送/接收四种工作模式  支持标准(100Kbps) / 快速(400Kbps) / 高速(1Mbps) 三种工作速率  支持 7 位寻址功能 to  支持噪声过滤功能  支持广播地址  支持中断状态查询功能 1.14 时钟校准器 CTRIM 时钟校准定时器可以调整校准 RC 时钟频率,也可以调整校准其他 RC 振荡的时钟频 率,还可以作为一个通用定时器或者自动唤醒定时器来使用。 HC32F002 系列用户手册 Beta1.0 Page 27 of 415 1.15 蜂鸣器 Buzzer 定时器功能复用输出为 Buzzer 提供可编程驱动频率。该蜂鸣器端口可提供 18mA 的 sink 电流,互补输出,不需要额外的三极管。 1.16 模数转换器 ADC i m 立 i 创 na 商 ry 城 外部的模拟信号需要转变成数字信号才能由 MCU 进一步处理。内部集成了一个 10 位 高精度、高转换速率的逐次逼近型模数转换器(SAR ADC)模块。具有以下特性:  10 位转换精度;  1M SPS 转换速度;  支持单次转换及持续转换;  2 种参考源:AVCC 电压、ExRef 管脚;  15 路输入通道,包括 14 路外部管脚输入、1 路内建 BGR 0.9V 电压; 注:选择 AVCC 作为参考源,测量 BGR 0.9V;可计算出 AVCC 电压。  ADC 的电压输入范围:0~Vref; el  支持片内外设自动触发 ADC 转换,有效降低芯片功耗并提高转换的实时性。 1.17 低电压检测器 LVD Pr 对芯片电源电压或芯片管脚电压进行检测。16 档电压监测值(1.8 ~ 3.3V)。可根据上升 /下降边沿产生异步中断或复位。具有硬件迟滞电路和可配置的软件防抖功能。 LVD 基本特性:  4 路监测源,AVCC、PA03、PC03、PD04; to  16 阶阈值电压,1.8~3.3V 可选;  8 种触发条件,高电平、上升沿、下降沿组合;  2 种触发结果,复位、中断;  8 阶滤波配置,防止误触发;  具备迟滞功能,强力抗干扰。 HC32F002 系列用户手册 Beta1.0 Page 28 of 415 1.18 嵌入式调试系统 嵌入式调试解决方案,提供全功能的实时调试器,配合标准成熟的 Keil/IAR 等调试开 发软件。支持 4 个硬断点以及多个软断点。 1.19 编程模式 i m 立 i 创 na 商 ry 城 支持两种编程模式:在线编程、离线编程。 支持两种编程协议:ISP 协议、SWD 协议。 支持统一编程接口:ISP 协议与 SWD 协议共用 SWD 端口。 1.20 器件电子签名 每颗芯片出厂前具备唯一的 10 字节设备标识号,包括 wafer lot 信息,以及芯片坐标 信息等。内建 128 字节 OTP,仅可通过编程器写入一次。 1.21 高安全性 to Pr el 加密型嵌入式调试解决方案,提供全功能的实时调试器。 HC32F002 系列用户手册 Beta1.0 Page 29 of 415 2 引脚配置及功能 2.1 引脚配置图 HC32F002D4PB-TSSOP24 24 PD03/AIN3 AIN5/PD05 2 23 PD02/AIN2 AIN6/PD06 3 22 PD01/SWCLK RESETB/PA00 4 21 PC07/SWDIO AIN7/PA01 5 AIN8/PA02 6 AVSS/DVSS 7 PA04 8 AVCC/DVCC 9 TSSOP24 i m 立 i 创 na 商 ry 城 AIN4/LVDIN2/PD04 1 20 PC06/AIN1 19 PC05 18 PC04/AIN0 17 PB00/AIN13 16 PC03/LVDIN1/ExRef LVDIN0/PA03 10 15 PB01/AIN12 AIN9/PB05 11 14 PB02/AIN11 PB03 12 13 PB04/AIN10 el HC32F002C4PB-TSSOP20 20 PD03/AIN3 AIN5/PD05 2 19 PD02/AIN2 AIN6/PD06 3 18 PD01/SWCLK RESETB/PA00 4 AIN7/PA01 5 AIN8/PA02 6 Pr 1 AVSS/DVSS 7 PA04 8 AVCC/DVCC 9 注: to LVDIN0/PA03 10 TSSOP20 AIN4/LVDIN2/PD04 17 PC07/SWDIO 16 PC06/AIN1 15 PC05 14 PC04/AIN0 13 PC03/LVDIN1/ExRef 12 PB04/AIN10 11 PB05/AIN9 - 在应用中,需要将该封装未引出的 IO 管脚设为输入并使能上拉。 - 该封装未引出的 IO 详见引脚功能说明。 HC32F002 系列用户手册 Beta1.0 Page 30 of 415 PD01/SWCLK PD02/AIN2 PD03/AIN3 PD04/AIN4/LVDIN2 PD05/AIN5 19 20 21 22 23 24 i m 立 i 创 na 商 ry 城 PD06/AIN6 HC32F002D4UB-QFN24TR RESETB/PA00 1 18 PC07/SWDIO AIN7/PA01 2 17 PC06/AIN1 AIN8/PA02 3 16 PC05 AVSS/DVSS 4 15 PC04/AIN0 PA04 5 14 PB00/AIN13 AVCC/DVCC 6 13 PC03/LVDIN1/ExRef 7 8 9 10 11 12 AIN9/PB05 PB03 AIN10/PB04 AIN11/PB02 AIN12/PB01 to Pr el LVDIN0/PA03 Exposed Thermal Pad HC32F002 系列用户手册 Beta1.0 Page 31 of 415 1 AIN7/PA01 2 PD06/AIN6 PD05/AIN5 PD04/AIN4/LVDIN2 PD03/AIN3 PD02/AIN2 19 18 17 16 15 PD01/SWCLK 14 PC07/SWDIO 13 PC06/AIN1 i m 立 i 创 na 商 ry 城 注: RESETB/PA00 20 HC32F002C4UB-ZFN20TR Exposed Thermal Pad 10 PC04/AIN0 LVDIN1/ExRef/PC03 11 9 5 AIN10/PB04 PA04 8 PC05 AIN9/PB05 12 7 4 LVDIN0/PA03 AVSS/DVSS 6 3 AVCC/DVCC AIN8/PA02 - 在应用中,需要将该封装未引出的 IO 管脚设为输入并使能上拉。 - 该封装未引出的 IO 详见引脚功能说明。 to Pr el 图 2-1 引脚配置图 HC32F002 系列用户手册 Beta1.0 Page 32 of 415 引脚功能说明 QFN20 QFN24 TSSOP20 TSSOP24 NAME DIGITAL ANALOG 1 1 4 4 PA00 - RESETB 2 2 5 5 PA01 LPUART0_RXD I2C_SDA GTIM_TOGP HCLK_OUT ADC_AIN7 3 3 6 6 PA02 LPUART0_TXD I2C_SCL GTIM_TOGN LVD_OUT ADC_AIN8 4 7 7 AVSS/DVSS 5 8 8 PA04 GTIM_TOGP LVD_OUT SPI_NSS - 6 9 9 AVCC/DVCC 7 10 10 PA03 GTIM_CH2 SPI_NSS CTRIM_ETR CTIRM_TOG LVD_IN0 8 11 11 PB05 I2C_SDA ATIM3_BK CTRIM_ETR CTIRM_TOG ADC_AIN9 12 PB03 ATIM3_ETR GTIM_CH0 LPUART1_CTS - 13 PB04 I2C_SCL ATIM3_CH2B LPUART0_CTS ADC_AIN10 11 14 PB02 ATIM3_CH2B GTIM_CH1 LPUART1_RTS ADC_AIN11 12 15 PB01 ATIM3_CH1B GTIM_CH2 LPUART0_CTS ADC_AIN12 4 5 6 7 Pr el 8 i m 立 i 创 na 商 ry 城 2.2 9 10 12 to 9 HC32F002 系列用户手册 Beta1.0 Page 33 of 415 QFN20 QFN24 10 TSSOP20 TSSOP24 13 13 14 12 13 14 14 17 PC03 ATIM3_CH2A ATIM3_CH0B LPUART0_RTS LVD_IN1 ADC_ExRef 17 PB00 ATIM3_CH0B GTIM_CH3 LPUART0_RTS ADC_AIN13 18 PC04 ATIM3_CH0B ATIM3_CH1B TCLK_OUT ADC_AIN0 19 PC05 SPI_SCK GTIM_CH3 ATIM3_ETR - 17 16 20 PC06 SPI_MOSI ATIM3_CH0A LPUART1_RTS ADC_AIN1 18 17 21 PC07 SWDIO SPI_MISO ATIM3_CH1A LPUART0_RXD - 19 18 22 PD01 SWCLK GTIM_ETR ATIM3_BK LPUART0_TXD - 19 23 PD02 GTIM_CH2 ATIM3_CH2A LPUART1_CTS ADC_AIN2 21 20 24 PD03 GTIM_CH1 ATIM3_CH1A LPUART1_RXD ADC_AIN3 22 1 1 PD04 GTIM_CH0 LPUART1_TXD SPI_SCK ADC_AIN4 LVD_IN2 20 to 18 16 15 Pr 16 ANALOG 16 el 15 15 DIGITAL i m 立 i 创 na 商 ry 城 11 NAME 19 23 2 2 PD05 LPUART1_TXD ATIM3_CH0A SPI_MISO ADC_AIN5 20 24 3 3 PD06 LPUART1_RXD GTIM_ETR SPI_MOSI ADC_AIN6 每个管脚的数字功能由 AFRx 寄存器进行控制,详见 GPIO 章节。 HC32F002 系列用户手册 Beta1.0 Page 34 of 415 模块信号说明 2.3 模块 管脚名称 描述 电源 DVCC 数字电源 AVCC 模拟电源 DVSS 数字地 AVSS 模拟地 ADC_AIN0~13 ADC输入通道0~13 ADC_ExRef ADC外部参考电压 LVD_IN0 电压侦测输入0 LVD_IN1 电压侦测输入1 LVD_IN2 电压侦测输入2 LVD_OUT 电压侦测输出 LPUARTx_TXD LPUART数据发送端 LPUARTx_RXD LPUART数据接收端 LPUARTx_CTS LPUART CTS LPUARTx_RTS LPUART RTS CTRIM_ETR CTRIM外部同步信号 CTRIM_TOG CTRIM的翻转输出信号 SPI_MISO SPI模块主机输入从机输出数据信号 SPI_MOSI SPI模块主机输出从机输入数据信号 SPI_SCK SPI模块时钟信号 LVD LPUART x=0,1 CTRIM el SPI i m 立 i 创 na 商 ry 城 ADC I2C SPI片选 I2C_SDA I2C模块数据信号 I2C_SCL I2C模块时钟信号 Pr 基本定时器 SPI_NSS BTIMx BTIMx_TOGP BTIMx的翻转输出信号 BTIMx_TOGN x = 3,4,5 通用定时器 GTIM GTIM的捕获输入比较输出 GTIM_ETR GTIM的外部计数输入信号 GTIM_TOGP GTIM的翻转输出信号 to y=0,1,2,3 GTIM_CHy GTIM_TOGN 高级定时器 ATIM3_CHyA ATIM3的捕获输入比较输出A ATIM3 ATIM3_CHyB ATIM3的捕获输入比较输出B ATIM3_ETR ATIM3的外部计数输入信号 ATIM3_BK ATIM3的刹车信号 y=0,1,2 表 2-1 模块信号说明 注意: – IO 端口复位为输入高阻状态,休眠模式和深度休眠模式保持之前的端口状态。 HC32F002 系列用户手册 Beta1.0 Page 35 of 415 3 系统结构 3.1 概述 本产品系统由以下部分组成:  1 个 AHB 总线 Master: i m 立 i 创 na 商 ry 城 – Cortex-M0+  4 个 AHB 总线 Slaves: – FLASH 存储器 – SRAM 存储器 – AHB0,AHB to APB Bridge 包含所有 APB 接口外设 – AHB1,包含所有 AHB 接口外设 整个系统总线结构采用多层次 AHB-lite 总线互连实现。如下图所示: AHB to APB Bridge0 el AHB to APB Bridge1 AHB bus HC32F002 系列用户手册 Beta1.0 APB bus1 Flash Ctrl Flash / OTP RAM Ctrl SRAM GTIM ATIM3 CTRIM WWDT LPUART1 SPI I2C IWDT SysCtrl LPUART0 LDO ADC(10b) LVD/LVR POR/BOR RCH/RCL PORTA PORTB PORTC PORTD to Pr ARM Cortex-M0+ core AnalogCtrl APB bus0 图 3-1 系统架构示意图 Page 36 of 415 3.2 存储器和模块地址分配 类别 APB0 外设 APB1 外设 AHB 外设 Size Memory Area 0x0000_0000 – 0x0000_47FF 18K Byte FLASH 0x0010_0F00 –0x0010_0F7F 128 Byte OTP 0x2000_0000 – 0x2000_07FF 2K Byte SRAM 0x4000_0000 – 0x4000_03FF 1K Byte LPUART0 0x4000_0400 – 0x4000_07FF 1KByte I2C 0x4000_0800 – 0x4000_0BFF 1KByte SPI 0x4000_0F80 – 0x4000_0FFF 128Byte IWDT 0x4000_2000 – 0x4000_23FF 1KByte SYSCTRL 0x4000_2400 – 0x4000_27FF 1KByte ANALOGCTRL 0x4000_4000– 0x4000_43FF 1KByte LPUART1 0x4000_5000– 0x4000_53FF 1KByte CTRIM 0x4000_5800– 0x4000_5BFF 1KByte ATIM3 0x4000_6800 – 0x4000_6BFF 1KByte WWDT 0x4000_7400 – 0x4000_77FF 1KByte GTIM 0x4002_0000 - 0x4002_03FF 1KByte FLASH CTRL 0x4002_0C00 - 0x4002_0FFF 1KByte PORT CTRL i m 立 i 创 na 商 ry 城 存储器 Boundary Address to Pr el 表 3-1 地址划分表 HC32F002 系列用户手册 Beta1.0 Page 37 of 415 4 工作模式 4.1 工作模式概述 本产品在电源管理模块的控制下可实现三种工作模式。各工作模式下可工作的功能模块 及功耗各不相同。    4.2 i m 立 i 创 na 商 ry 城 本产品的工作模式如下所示: 运行模式(Active Mode): CPU 运行,片内外设运行。 休眠模式(Sleep Mode) : CPU 停止,片内外设运行。 深度休眠模式(Deep Sleep Mode): CPU 停止,低功耗片内外设运行。 工作模式切换 本产品工作时可在三种工作模式之间自由切换。在运行模式下执行 WFI 指令,可使本 产品进入休眠模式或深度休眼模式。从休眠模式或深度休眼模式通过中断唤醒,回到运 行模式。 el 运行模式 Active Mode 休眠模式 Sleep Mode 硬件中断唤醒 深度休眠模式 Deep Sleep Mode 图 4-1 工作模式状态转换图 to Pr 执行WFI指令 HC32F002 系列用户手册 Beta1.0 Page 38 of 415 在各种工作模式下,CPU 可响应的中断见下方表格。 中断向量号 中断来源 运行模式 休眠模式 深度休眠模式 GPIO_PA ✔ ✔ ✔ [1] GPIO_PB ✔ ✔ ✔ [2] GPIO_PC ✔ ✔ ✔ [3] GPIO_PD ✔ ✔ ✔ [4] - [5] ATIM3 ✔ ✔ [7] - [8] LPUART0 ✔ ✔ ✔ [9] LPUART1 ✔ ✔ ✔ [10] SPI ✔ ✔ [11] - [12] I2C ✔ ✔ [13] - [14] - [15] GTIM / BTIM3-5 ✔ ✔ [17] - [20] - [21] - IWDT ✔ ✔ WWDT ✔ ✔ ✔ ✔ i m 立 i 创 na 商 ry 城 [0] [22] - [24] ADC [27] - [28] LVD ✔ ✔ [30] FLASH / RAM ✔ ✔ [31] CTRIM ✔ ✔ ✔ ✔ to Pr el [23] ✔ HC32F002 系列用户手册 Beta1.0 Page 39 of 415 在各种工作模式下,可响应的复位信号见下方下表。 复位源 [0] [1] POR / BOR 硬件复位 RESETB管脚 硬件复位 LVD 硬件复位 休眠模式 深度休眠模式 ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ i m 立 i 创 na 商 ry 城 [2] 上电掉电复位 运行模式 [3] IWDT ✔ ✔ ✔ 硬件复位 [4] Cortex-M0+ ✔ LOCKUP 软件复位 [5] Cortex-M0+ ✔ SYSRESETREQ 硬件复位 WWDT ✔ ✔ to Pr el [6] HC32F002 系列用户手册 Beta1.0 Page 40 of 415 4.3 运行模式(Active Mode) 在该工作模式 MCU 所有功能模块均正常工作,功耗最大。 系统复位后或从中断唤醒后,MCU 均工作于运行模式。 在运行模式下可通过一定的措施降低运行功耗: 为系统时钟(SystemClk)选择更低的频率,修改 SysCtrl.CR0.ClkSrc  降低系统的内核时钟(HCLK)的频率,修改 SysCtrl.CR0.HclkPrs  降低系统的片内外设时钟(PCLK)的频率,修改 SysCtrl.CR0.PclkPrs  关闭未使用的片内外设的时钟,修改 SysCtrl.PeriClkEnx i m 立 i 创 na 商 ry 城 4.4  休眠模式(Sleep Mode) 在该工作模式下 CPU 停止运行,其它片内外设均正常工作,功耗低于运行模式。 在运行模式下,设置 SCB->SCR.SLEEPDEEP 为 0,执行 WFI 指令即可使 MCU 工作于 休眠模式。当 MCU 响应硬件中断时,即可退出休眠模式回到运行模式。 在休眠模式下可通过一定的措施降低运行功耗: 为系统时钟(SystemClk)选择更低的频率,修改 SysCtrl.CR0.ClkSrc  降低系统的内核时钟(HCLK)的频率,修改 SysCtrl.CR0.HclkPrs  降低系统的片内外设时钟(PCLK)的频率,修改 SysCtrl.CR0.PclkPrs  关闭未使用的片内外设的时钟,修改 SysCtrl.PeriClkEnx  设置 SCB_SCR.SLEEPONEXIT 为 1,使 MCU 执行完成中断服务程序后自动进入休 Pr el  眠模式。 深度休眠模式(Deep Sleep Mode) to 4.5 在该工作模式下 CPU 停止运行,片内高速时钟 RCH 自动关闭。如果 HCLK 来源为片 内高速时钟,则片内高速外设停止运行,仅片内低功耗外设正常工作;如果 HCLK 来源 为片内低速时钟 RCL,则片内外设均正常工作。该模式下功耗远低于休眠模式下的功 耗。 若设置 SysCtrl.CR1.AutoSwitch 为 1,则 MCU 退出深度休眠模式时的系统时钟的来源 为 RCH,以实现快速唤醒。 HC32F002 系列用户手册 Beta1.0 Page 41 of 415 在运行模式下,设置 SCB_SCR.SLEEPDEEP 为 1,执行 WFI 指令即可使 MCU 工作于 深度休眠模式。当 MCU 响应硬件中断时,即可退出深度休眠模式回到运行模式。 在休眠模式下可通过一定的措施降低运行功耗: 选择高速时钟作为系统时钟(SystemClk),修改 SysCtrl.CR0.ClkSrc  关闭未使用的片内低功耗外设的时钟,修改 SysCtrl.PeriClkEnx  设置 SCB_SCR.SLEEPONEXIT 为 1,使 MCU 执行完成中断服务程序后自动进入休 i m 立 i 创 na 商 ry 城  眠模式。 4.6 功能模块工作状态 在三种工作模式下功能模块的工作状态对比如下表所示: 功能模块 CPU 运行模式 休眠模式 深度休眠模式 ✔ WWDT ✔ ✔ GTIM / BTIM3-5 ✔ ✔ ATIM3 ✔ ✔ SPI ✔ ✔ ✔ ✔ ADC ✔ ✔ GPIO_PA ✔ ✔ ✔ GPIO_PB ✔ ✔ ✔ GPIO_PC ✔ ✔ ✔ GPIO_PD ✔ ✔ ✔ IWDT ✔ ✔ ✔ LPUART0 / LPUART1 ✔ ✔ ✔ CTRIM ✔ ✔ ✔ LVD ✔ ✔ ✔ to Pr el I2C HC32F002 系列用户手册 Beta1.0 Page 42 of 415 寄存器 4.7 4.7.1 系统控制寄存器(SCB_SCR) 地址:0xE000ED10 复位值:0x0000 0000 标记 功能描述 31:5 RESERVED 保留 4 SEVONPEND 3 RESERVED 读写 i m 立 i 创 na 商 ry 城 位 设置为1时,每次新的中断挂起都会产生一个事件,如果使用了 WFE 休眠,它可用于唤醒处理器 RW 保留 设为1时,执行 WFI 进入深度休眠,本产品进入 Deep Sleep 2 SLEEPDEEP 模式 RW 设置为0时,执行 WFI 进入休眠,本产品进入 sleep/Idle 模式 设为1时,当退出异常处理并返回程序线程时,处理器自动进入休 1 SLEEPONEXIT 眠模式(WFI) RW 设置为0时,该特性就会被自动禁止 RESERVED 保留 to Pr el 0 HC32F002 系列用户手册 Beta1.0 Page 43 of 415 5 系统控制器(SYSCTRL) 5.1 系统时钟介绍 时钟控制模块主要控制系统时钟以及外设时钟,可以配置不同的时钟源作为系统时钟、 可以配置不同的系统时钟分频、可以启动或禁用外设时钟。为了确保振荡器精度,内部时 i m 立 i 创 na 商 ry 城 钟均具有校准功能。 本产品支持以下三个不同的时钟源作为系统时钟:  内部高速 RC 时钟 RCH(输出频率为 44~48MHz)  内部低速 RC 时钟 RCL(38.4K 与 32.8K 可配置)  外部管脚 PA01 输入的时钟信号(频率为 1~16MHz) 注 1:切换系统时钟的时钟源时,请严格按照操作步骤进行切换,详见 5.2 章节。 通过 HCLK_OUT 管脚,可以输出 HCLK 时钟信号;通过 TCLK_OUT 管脚可以输出 to Pr el RCH/RCL/HCLK/PCLK 时钟信号。 HC32F002 系列用户手册 Beta1.0 Page 44 of 415 5.1.1 时钟架构图 SysCtrl.CR2[5] SysCtrl.CR0[5:3] EXCLK 外部时钟 SystemClk HCLK /1,.../128 44M-48M DIV RCH i m 立 i 创 na 商 ry 城 校准的内 部振荡器 32K/38K RCL SysCtrl.CR0[2:0] HCLK_OUT TCLK_OUT SysCtrl.CR0[7:6] PCLK /1,.../8 Cortex M0+ HCLK GPIOA_AFRL[7:4] /1,.../256 RCH RCL PCLK HCLK HCLK SysTick PCLK RCL LPUARTx RCH RCL CTRIM RCL LVD SysCtrl.PeriClkEn1.14 To To To To To To To To To To To To To To To GTIM WWDT GPIO.PD GPIO.PC GPIO.PB GPIO.PA FLASH CTRIM ADC IWDT ATIM3 SPI I2C LPUART1 LPUART0 SysCtrl.PeriClkEn0.1 图 5-1 时钟控制模块框图 5.1.2 内部高速 RC 时钟 RCH 芯片上电或复位后的默认时钟源为频率为 4MHz 的 RCHCLKD;当系统进入 DeepSleep, el 此高速时钟会自动关闭。内部高速时钟从唤醒到稳定仅需 5us,在进入深度休眠模式前 将系统时钟切换为 RCHCLKD 则系统可快速响应中断。 Pr 更改寄存器 SysCtrl.RCH.TRIM 的数值即可微调 RCH 的振荡频率。寄存器数值每增加 1 则 RCH 的振荡频率增加约 0.2%,RCH 振荡频率的安全工作范围为 44~48MHz,若 将 RCH 的振荡频率调到大于 48MHz,则芯片可能出现异常。芯片在出厂时已预调好 的 2 个频率点 44.24MHz 和 48MHz;如需其它频率请手动调整该寄存器的数值。若在 to CTRIM 模块中使能 RCH 实时校准功能,则 RCH 在全工作范围内的精度均可达 0.5%, 详见 CTRIM 章节。 更改寄存器 SysCtrl.RCH.DIV 的数值即可调整 RCH 振荡频率与 RCHCLKD 的分频比, 调整范围为 1 – 16。 HC32F002 系列用户手册 Beta1.0 Page 45 of 415 5.1.3 内部低速 RC 时钟 RCL 内部低速时钟可以通过寄存器 SysCtrl.RCL.TRIM 来选择其输出频率,可供选择的频率 为 38.4KHz、32.768KHz。当系统进入 DeepSleep,此低速时钟不会自动关闭,超低功耗 外设模块可以选择 RCL 作为其时钟。 i m 立 i 创 na 商 ry 城 5.1.4 外部输入时钟 EXTCLK 可以从 PA1 管脚输入频率为 1~16MHz 时钟信号作为系统时钟。从 PA1 管脚输入时钟 to Pr el 信号的方法为:配置管脚为 GPIO 输入;设置 SysCtrl.CR2.EXTEN 为 1。 HC32F002 系列用户手册 Beta1.0 Page 46 of 415 5.2 系统时钟切换 系 统 时 钟 可 选 3 种 时 钟 源 : RCHCLKD 、 RCL 、 外 部 管 脚 输 入 时 钟 , 由 寄 存 器 SysCtrl.CR0.ClkSrc 及 SysCtrl.CR2.EXTEN 进行控制。RCHCLKD、RCL、外部时钟这 3 个时钟源中的任意两者可以相互切换,切换过程中需确保 HCLK 不大于 48MHz。建议 按照下文所描述的时钟切换流程进行时钟切换,以减少时钟切换出错的机率。 i m 立 i 创 na 商 ry 城 时钟切换时需要同步配置 FLASH_WAIT 寄存器。时钟频率不大于 24MHz 则应设置 FLASH_WAIT 为 0;时钟频率大于 24MHz 则应设置 FLASH_WAIT 为 1。 注:设置 FLASH_WAIT 的值,需要先向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5 然后再对 FLASH_WAIT 进行赋值,详见 FLASH 控制器章节。 5.2.1 标准的时钟切换流程 操作流程如下: Step1:如新时钟源需要外部管脚,则将该管脚设置为适当的模式。 注:接外部时钟输入时需要 GPIO 输入并使能外部时钟输入。 Step2:配置新时钟源的的工作参数。 el Step3:使能新时钟源的振荡器。 Step4:根据当前时钟源和新时钟源两者中较高的频率,按 Flash 控制器章节流程配置 Pr FLASH_WAIT 寄存器。 Step5:等待新时钟源输出稳定的频率。 Step6:配置 SysCtrl.CR0.ClkSrc 及 SysCtrl.CR2.EXTEN,选择新时钟源作为系统时钟。 Step7:根据新时钟源的频率,按 Flash 控制器章节流程配置 FLASH_WAIT 寄存器。 to Step8:关闭不再使用的时钟源。 HC32F002 系列用户手册 Beta1.0 Page 47 of 415 下图为时钟切换时序图: 系统时钟:RCH切换RCL 内部RCL启动 RCL时钟 i m 立 i 创 na 商 ry 城 RCL 稳定信号 内部RCH使能 信号 内部RCH 时钟 时钟切换信号 系统时钟 图 5-2 时钟切换示意图 5.2.2 RCH 不同输出频率间切换流程 el 配置 SysCtrl.RCH.DIV 即可使 RCH 输出不同的时钟频率。 操作流程如下方所示: Pr Step1:根据当前 RCHCLKD 与目标 RCHCLKD 两者中较高的频率,按 Flash 章节流 程配置 FLASH_WAIT 寄存器。 Step2:配置 SysCtrl.RCH.DIV,选择 RCH 振荡频率与 RCHCLKD 频率的分频比。 Step3:根据当前 RCHCLKD 的频率,按 Flash 章节流程配置 FLASH_WAIT 寄存器。 to 5.2.3 从其它时钟切换到 RCL 示例 操作流程如下: Step1:配置 SysCtrl.RCL.TRIM 及 SysCtrl.RCL.WaitCycle。 Step2:向 SysCtrl.CR3 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step3:设置 SysCtrl.CR2. RCLEN 为 1,使能 RCL 振荡电路。 Step4:查询等待 SysCtrl.RCL.Stable 标志变为 1,RCL 输出稳定时钟。 HC32F002 系列用户手册 Beta1.0 Page 48 of 415 Step5:向 SysCtrl.CR3 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step6:设置 SysCtrl.CR0.ClkSrc 为 2,将系统时钟切换为 RCL。 Step7:按 Flash 控制器章节流程设置 FLASH_WAIT 为 0。 Step8:向 SysCtrl.CR3 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step9:设置 SysCtrl.CR2. xxxEN 为 0,关闭不再使用的时钟源。 i m 立 i 创 na 商 ry 城 5.2.4 从其它时钟切换到 RCHCLKD 示例 操作流程如下: Step1:配置 SysCtrl.RCH.TRIM 及 SysCtrl.RCH.DIV。 Step2:向 SysCtrl.CR3 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step3:设置 SysCtrl.CR2.RCHEN 为 1,使能 RCH 振荡电路。 Step4:查询等待 SysCtrl.RCH.Sable 标志变为 1,RCH 输出稳定时钟。 Step5:根据当前时钟与目标 RCHCLKD 两者中较高的频率,按 Flash 章节流程配置 FLASH_WAIT 寄存器。 Step6:向 SysCtrl.CR3 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 el Step7:设置 SysCtrl.CR0.ClkSrc 为 0,将系统时钟切换为 RCHCLKD。 Step8:根据 RCHCLKD 的频率,按 Flash 章节流程配置 FLASH_WAIT。 Pr Step9:向 SysCtrl.CR3 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 to Step10:设置 SysCtrl.CR2. xxxEN 为 0,关闭不再使用的时钟源。 HC32F002 系列用户手册 Beta1.0 Page 49 of 415 5.3 片内外设时钟控制 大多数片内外设都需要有时钟才能正常工作。当使能片内外设的配置时钟(PCLK)时, 用户程序可以正常读写片内外设的寄存器;当使能片内外设的工作时钟时,片内外设可 以正常工作。部分片内外设的工作时钟固定为 PCLK,其它片内外设的工作时钟可以由 用户程序自行配置。 to Pr el i m 立 i 创 na 商 ry 城 通过设置 SysCtrl_Peri.ClkEnx 的控制位为 1,即可使能相应片内外设的配置时钟。 HC32F002 系列用户手册 Beta1.0 Page 50 of 415 5.4 中断唤醒控制 当处理器执行 WFI 指令进入休眠状态时,会停止执行指令。在休眠状态下发生了中断 请求(更高优先级)且需要处理时,处理器就会被唤醒。 休眠状态下的处理器收到中断请求时的行为如下表所示: WFI 行为 唤醒 ISR 执行 0 IRQ 优先级>当前等级 Y Y 0 IRQ 优先级≦当前等级 N N 1 IRQ 优先级>当前等级 Y N 1 IRQ 优先级≦当前等级 N N i m 立 i 创 na 商 ry 城 PRIMASK 状态 5.4.1 从深度休眠模式唤醒后执行中断服务程序的方法 Step1. 使能需要唤醒处理器的模块所对应的 NVIC Step2. 使能需要唤醒处理器的模块所对应的中断 Step3. 设置 SCB->SCR.SLEEPDEEP 为 1 Step4. 执行 WFI 指令以进入深度休眠模式 el Step5. 系统进入深度休眠模式等待中断唤醒,唤醒后执行中断服务程序 例程: Pr SCB->SCR |= 0x04; while(1) { __asm("WFI"); to } 5.4.2 从深度休眠模式唤醒后不执行中断服务程序的方法 Step1. 使能需要唤醒处理器的模块所对应的 NVIC Step2. 使能需要唤醒处理器的模块所对应的中断 Step3. 设置 PRIMASK 为 1 Step4. 设置 SCB->SCR.SLEEPDEEP 为 1 HC32F002 系列用户手册 Beta1.0 Page 51 of 415 Step5. 执行 WFI 指令以进入深度休眠模式 Step6. 系统进入深度休眠模式等待中断唤醒,唤醒后执行下一条指令 Step7. 清除中断标志,清除中断挂起状态 Step8. 执行用户定义的操作 例程: //Set PRIMASK i m 立 i 创 na 商 ry 城 __asm("CPSID I"); SCB_SCR |= 0x04; while(1) { __asm("WFI"); M0P_TIMx->ICLR = 0x00; //Clear Int Flag NVIC_ClearPendingIRQ(TIMx_IRQn); //Clear Pending Flag … //执行用户定义的操作 } el 5.4.3 退出休眠 退出休眠(sleep-on-exit)非常适合中断驱动的应用程序。当该特性使能时,只要完成异 Pr 常处理并且返回到了线程模式,处理器就会进入休眠模式。利用退出休眠特性,处理器 可以尽可能多的处于休眠模式。 Cortex-M0 利用退出休眠特性进入休眠,这种情况同执行完异常退出后立即执行 WFI 的效果差不多。不过,为了下次进入异常时,不用再进行压栈操作,处理器不会执行出 栈的过程。 to 1. 使能需要唤醒处理器的模块所对应的 NVIC 2. 使能需要唤醒处理器的模块所对应的中断 3. 设置 SCB->SCR.SLEEPDEEP 为 1 4. 设置 SCB->SCR.SLEEPONEXIT 为 1 5. 执行 WFI 指令以进入深度休眠模式 6. 系统进入深度休眠模式等待中断唤醒,唤醒后执行中断服务子程序 HC32F002 系列用户手册 Beta1.0 Page 52 of 415 7. 退出中断服务时自动进入休眠模式 例程: SCB_SCR |= 0x04; SCB_SCR |= 0x02; while(1) i m 立 i 创 na 商 ry 城 { __asm("WFI"); to Pr el } HC32F002 系列用户手册 Beta1.0 Page 53 of 415 5.5 寄存器 基地址 0x40002000 寄存器 偏移地址 描述 CR0 0x000 系统控制寄存器0 CR1 0x004 系统控制寄存器1 CR2 0x008 系统控制寄存器2 CR3 0x00C 系统控制寄存器3 RCH 控制寄存器 0x018 RCL 控制寄存器 PeriClkEN0 0x030 片内外设时钟控制寄存器0 PeriClkEN1 0x034 片内外设时钟控制寄存器1 DebugActive 0x044 调试模式模块工作状态控制寄存器 RCL i m 立 i 创 na 商 ry 城 0x010 RCH to Pr el 表 5-1 系统控制寄存器表格 HC32F002 系列用户手册 Beta1.0 Page 54 of 415 5.5.1 系统控制寄存器 0(CR0) 偏移地址:0x000 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 Reserved 位 标记 功能描述 31:8 Reserved 保留 PclkPrs HclkPrs ClkSrc RW RW RW PCLK时钟来源选择 00:HCLK 7:6 PclkPrs 01:HCLK / 2 10:HCLK / 4 11:HCLK / 8 HCLK时钟来源选择 000:SystemClk el 001:SystemClk / 2 010:SystemClk / 4 5:3 HclkPrs 011:SystemClk / 8 Pr 100:SystemClk / 16 101:SystemClk / 32 110:SystemClk / 64 111:SystemClk / 128 当CR2.EXTEN为0时,SystemClk时钟来源选择 2:0 ClkSrc x0x:内部高速时钟 RCHCLKD to x1x:内部低速时钟 RCL 注意: – 每次改写 CR0 / CR1 / CR2 的值,均需要先对 CR3 依次写入 0x5A5A、 0xA5A5。 这样的步骤可有效防止对 CR0 / CR1 / CR2 寄存器的误操作。 HC32F002 系列用户手册 Beta1.0 Page 55 of 415 5.5.2 系统控制寄存器 1(CR1) 偏移地址:0x004 复位值:0x0000 0200 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 WakeU Lock SWD pClk UpEn IO RW RW RW Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 GTIM RESIO Reserved CFG Reserved RW 位 标记 功能描述 31:9 Reserved 内部保留位,请勿更改其值。 RW GTIM / BTIM3-5定时器功能配置 8 GTIMCFG 0:GTIM有效,BTIM3/4/5无效 1:BTIM3/4/5有效,GTIM无效 7:4 Reserved 保留位 RESET管脚功能配置 3 RESIO 1:RESET管脚配置为IO输入管脚,不再具有复位功能 el 0:RESET管脚配置为复位功能,无IO输入功能 DeepSleep唤醒时,系统时钟的来源配置 2 WakeUpClk 1:切换系统时钟来源为RCHCLKD,原系统时钟来源保持使能 Pr 0:保持原系统时钟来源 1 0 LockUpEn SWDIO Cortex-M0+ LockUp 功能配置 0:关闭 1:使能 注:使能该功能,则CPU读到无效指令时会复位MCU。 SWD端口功能配置 0:PC07、PD01作为SWD端口,GPIO功能不可用。 to 1:PC07、PD01作为GPIO端口,SWD功能不可用。 注意: – 每次改写 CR0 / CR1 / CR2 的值,均需要先对 CR3 依次写入 0x5A5A、0xA5A5。 这样的步骤可有效防止对 CR0 / CR1 / CR2 寄存器的误操作。 HC32F002 系列用户手册 Beta1.0 Page 56 of 415 5.5.3 系统控制寄存器 2(CR2) 偏移地址:0x008 复位值:0x0000 0081 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 EXT Reserved EN RCL Reserved RW 位 标记 功能描述 31:6 Reserved 保留 EN Res RW RCH EN RW SystemClk时钟来源选择 5 EXTEN 0:SystemClk来源由CR0.ClkSrc决定 1:SystemClk来自PA1管脚输入的时钟 注意:使能该控制位前,应确保PA1已设为数字输入并已输入时钟信号 4:3 Reserved 保留 内部低速时钟 RCL 使能控制 RCLEN 0:关闭 1:使能 el 2 注:当系统进入DeepSleep,此低速时钟保持之前状态。 1 Reserved 保留 Pr 内部高速时钟 RCH 使能控制 0 RCHEN 0:关闭 1:使能 注:当系统进入DeepSleep,此高速时钟会自动关闭。 注意: to – 每次改写 CR0 / CR1 / CR2 的值,均需要先对 CR3 依次写入 0x5A5A、 0xA5A5。 这样的步骤可有效防止对 CR0 / CR1 / CR2 寄存器的误操作。 HC32F002 系列用户手册 Beta1.0 Page 57 of 415 5.5.4 系统控制寄存器 3(CR3) 偏移地址:0x00C 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 CR3 WO 位 标记 功能描述 31:16 Reserved 保留位 寄存器 CR0 / CR1 / CR2 写保护寄存器,对 CR3 依次写入 0x5A5A、0xA5A5, 15:0 CR3 则可解除 CR0 / CR1 / CR2 的写保护;当对 CR0 / CR1 / CR2 进行了写操作,则 写保护自动复位。每次写数据到 CR0 / CR1 / CR2 之前,均需要对 CR3 依次写入 to Pr el 0x5A5A、0xA5A5 序列。 HC32F002 系列用户手册 Beta1.0 Page 58 of 415 5.5.5 RCH 控制寄存器(RCH) 偏移地址:0x010 复位值:0x0000 0B47 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 Stable 13 12 Reserved RO 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 DIV TRIM RW RW 位 标记 功能描述 31:16 Reserved 保留位 RCH 时钟稳定标志位 15 Stable 1:代表 RCH 已经稳定,可以被内部电路使用 0:代表 RCH 未稳定,不可以被内部电路使用 14:13 Reserved 保留位 RCHCLKD 输出频率与RCH振荡频率分频比配置 0000:RCHCLKD = RCH / 2 0001:RCHCLKD = RCH / 4 0010:RCHCLKD = RCH / 6 0011:RCHCLKD = RCH / 8 el 12:9 DIV 0100:RCHCLKD = RCH / 10 Pr 0101:RCHCLKD = RCH / 12 TRIM 0111:RCHCLKD = RCH / 16 1000:RCHCLKD = RCH / 1 时钟频率调整,更改该寄存器的数值即可调整RCH的振荡频率。寄存器数值 每增加1则RCH的振荡频率增加约0.2%,总调整范围为 44 - 48MHz。 Flash中已保存了44.24MHz和48MHz的校准值,将Flash内的校准值读出并写 入SysCtrl.RCH.TRIM即可获得精准的频率。 to 8:0 0110:RCHCLKD = RCH / 14 44.24M校准值地址:0x00100DF0 - 0x00100DF1 48.00M校准值地址:0x00100DF2 - 0x00100DF3 HC32F002 系列用户手册 Beta1.0 Page 59 of 415 5.5.6 RCL 控制寄存器(RCL) 偏移地址:0x018 复位值:0x0000 033F 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 Stable 13 12 Res. RO 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 WaitCycle TRIM RW RW RW 位 标记 功能描述 31:16 Reserved 保留位 RCL 时钟稳定标志位 15 Stable 1:代表 RCL 已经稳定,可以被内部电路使用 0:代表 RCL 尚未稳定,不可以被内部电路使用 14:12 Reserved 保留位 内部低速时钟 RCL 稳定时间选择 11:256个周期 11:10 WaitCycle 10:64个周期 01:16个周期 el 00:4个周期 内部低速时钟频率调整,Flash中保存了2组频率的校准值。 TRIM 将Flash内的校准值读出并写入RCL.TRIM即可获得精准的频率。 32.8K校准值地址:0x00100DF4 - 0x00100DF5 38.4K校准值地址:0x00100DF6 - 0x00100DF7 to Pr 9:0 HC32F002 系列用户手册 Beta1.0 Page 60 of 415 5.5.7 片内外设时钟控制寄存器 0(PeriClkEn0) 复位值:0x8080_0000 偏移地址:0x030 31 30 29 28 27 FLASH 26 25 24 23 22 14 13 IWDT 12 11 10 ATIM3 Reserved RW 18 17 标记 9 8 7 6 SPI Reserved Res. 5 RW 4 3 2 LPUA LPUA RT1 RT0 RW RW RW 1 FLASH Res. RW RW Reserved 功能描述 1:FLASH寄存器可以读写 0:FLASH寄存器不能读写 30:22 Reserved 保留 CTRIM 模块配置时钟使能控制 21 CTRIM 1:使能 0:关闭 Reserved 保留 el 20:17 ADC 模块配置时钟及工作时钟使能控制 16 ADC 1:使能 Pr 0:关闭 15 IWDT 14:12 ATIM3 IWDT 模块配置时钟使能控制 1:使能 0:关闭 保留位 ATIM3 模块配置时钟及工作时钟使能控制 1:使能 to 11 Reserved 0:关闭 10:7 Reserved 保留位 SPI 模块配置时钟及工作时钟使能。 6 SPI 1:使能 0:关闭 5 Reserved 保留位 I2C 模块配置时钟及工作时钟使能控制 4 I2C 1:使能 0:关闭 HC32F002 系列用户手册 Beta1.0 0 I2C FLASH 模块配置时钟使能控制 31 16 ADC Reserved RW Res. RW 位 19 i m 立 i 创 na 商 ry 城 15 20 CTRIM Reserved RW 21 Page 61 of 415 LPUART1 模块配置时钟使能控制 3 LPUART1 1:使能 0:关闭 LPUART0 模块配置时钟使能控制 2 LPUART0 1:使能 0:关闭 Reserved 保留位 to Pr el i m 立 i 创 na 商 ry 城 1:0 HC32F002 系列用户手册 Beta1.0 Page 62 of 415 5.5.8 片内外设时钟控制寄存器 1(PeriClkEn1) 复位值: 0x0000_0000 偏移地址:0x034 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 PD PC PB PA R/W R/W R/W R/W Reserved 14 13 GTIM Res. R/W 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 WWDT Reserved R/W 位 标记 功能描述 31:15 Reserved 保留位 Reserved GTIM / BTIM3 - 5模块配置时钟及工作时钟使能控制 14 GTIM 1:使能 0:关闭 13:11 Reserved 保留位 WWDT模块配置时钟及工作时钟使能控制 10 WWDT 1:使能 0:关闭 9:4 Reserved 保留位 3 el PD 端口配置时钟时钟使能控制 PD 1:使能 Pr 0:关闭 2 1 PC PB PC端口配置时钟时钟使能控制 1:使能 0:关闭 PB端口配置时钟时钟使能控制 1:使能 0:关闭 0 to PA端口配置时钟时钟使能控制 PA 1:使能 0:关闭 HC32F002 系列用户手册 Beta1.0 Page 63 of 415 5.5.9 调试模式模块工作状态控制寄存器(DebugActive) 复位值 0x0001_4980 (仅在 SWD 调试模式下,此寄存器设置才起作用) 偏移地址:0x4000_2044 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 WWDT Reserved 15 14 GTIM i m 立 i 创 na 商 ry 城 RW 13 12 11 RW 9 ATIM3 Reserved Res. 10 8 7 IWDT Ctim RW rw 6 5 Reserved RW 位 标记 功能描述 31:17 Reserved 保留 4 3 2 1 Reserved 调试时, WWDT 计数功能配置 16 WWDT 1:在 SWD 调试界面下,暂停 WWDT 计数功能 0:在 SWD 调试界面下,WWDT 正常计数功能 15 Reserved 保留 调试时, GTIM / BTIM3 - 5 计数功能配置 14 GTIM 1:在 SWD 调试界面下,暂停 GTIM / BTIM3 - BTIM5 计数功能 0:在 SWD 调试界面下,GTIM / BTIM3 - BTIM5 正常计数功能 保留 el 13:12 Reserved 调试时, ATIM3 计数功能配置 ATIM3 Pr 11 10:9 8 Reserved IWDT 1:在 SWD 调试界面下,暂停 ATIM3 计数功能 0:在 SWD 调试界面下,ATIM3 正常计数功能 保留 调试时, IWDT 计数功能配置 1:在 SWD 调试界面下,暂停 IWDT 计数功能 0:在 SWD 调试界面下,IWDT 正常计数功能 调试时, CTRIM 计数功能配置 CTRIM 1:在 SWD 调试界面下,暂停 CTRIM 计数功能 to 7 0:在 SWD 调试界面下,CTRIM 正常计数功能 6:0 Reserved HC32F002 系列用户手册 Beta1.0 保留 Page 64 of 415 0 6 复位控制器(RESET) 6.1 复位控制器介绍 本产品具有 7 个复位信号来源,每个复位信号都可以让 CPU 重新运行,绝大多数寄存 器会被复位到复位值,程序会从复位向量处开始执行。 i m 立 i 创 na 商 ry 城  数字区域上电掉电复位 POR  外部 Reset PAD,低电平为复位信号  IWDT 复位  WWDT 复位  LVD 低电压复位  Cortex-M0+ SYSRESETREQ 软件复位  Cortex-M0+ LOCKUP 硬件复位 每个复位源由相应的复位标志进行指示;复位完成时查询 ResetFlag 寄存器即获取上一 次的复位来源。每当完成对 ResetFlag 寄存器的查询后,应将该寄存器清零,以便下一 次复位时该寄存器能正常指示其复位源。 el 下图描述各区域的复位来源。 POR Pr Reset_pad IWDT_Reset WWDT Reset OR MCU LVD_Reset Cortex-M0+ SYSRESETREQ Reset to Cortex-M0+ LOCKUP Reset 图 6-1 复位来源示意图 6.1.1 上电下电复位 POR 本产品有两个供电区域:VCC 区域、Vcore 区域。所有的模拟模块及 IO 工作于 VCC 区域;其它模块工作于 Vcore 区域。 VCC 区域上电时,当 VCC 电压低于 POR 阈值电压时(典型值为 1.65V),会产生 POR5V HC32F002 系列用户手册 Beta1.0 Page 65 of 415 信号;VCC 区域下电时,当 VCC 电压低于 BOR 阈值电压时(典型值为 1.5V),会产生 POR5V 信号。 Vcore 区域上电时,当 Vcore 电压低于 POR 阈值电压时,会产生 POR15V 信号;Vcore 区域下电时,当 Vcore 电压低于 BOR 阈值电压时,会产生 POR15V 信号。 POR5V 信号和 POR15V 信号均会将芯片的寄存器复位到初始化状态。 i m 立 i 创 na 商 ry 城 6.1.2 外部复位管脚复位 当外部复位管脚检测到低电平时会产生一个系统复位。该复位管脚已内置上拉电阻,并 集成了一个毛刺过滤电路。毛刺过滤电路会过滤小于 20uS(典型值)的毛刺信号,因 此,加到复位管脚上的低电平信号必须大于 20uS,才能确保芯片可靠复位。 6.1.3 WDT 复位 看门狗复位,请参看 IWDT / WWDT 章节说明。 6.1.4 LVD 低电压复位 el LVD 复位,请参考 LVD 章节说明。 6.1.5 Cortex-M0+ SYSRESETREQ 复位 Pr Cortex-M0+ 软件复位 6.1.6 Cortex-M0+ LOCKUP 复位 当 Cortex-M0+ 遇到严重的异常时,它会将自己的 PC 指针停在当前地址处,并锁死自 to 己,并在几个时钟周期延时之后复位整个内核区域。 HC32F002 系列用户手册 Beta1.0 Page 66 of 415 6.2 寄存器 6.2.1 复位标识寄存器(Reset_Flag) 复位值:0x0000 0003 地址:0x40002040 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 i m 立 i 创 na 商 ry 城 Reserved 13 12 11 10 9 8 7 6 5 4 3 2 1 0 RSTB SysReq Lockup WWDT IWDT LVD Vcore Vcc RW0 RW0 RW0 RW0 RW0 RW0 RW0 RW0 Reserved 位 标记 功能描述 31:8 Reserved 保留位 RESETB 端口复位标志 7 RSTB 1:已发生端口复位 0:未发生端口复位 写0清除,写1无效 Cotrex-M0+ CPU 软件复位标志 SysReq 1:已发生 Cotrex-M0+ CPU 软件复位 0:未发生 Cotrex-M0+ CPU 软件复位 el 6 写0清除,写1无效 Pr Cotrex-M0+ CPU Lockup 复位标志 5 4 Lockup WWDT 1:已发生 Cotrex-M0+ CPU Lockup 复位 0:未发生 Cotrex-M0+ CPU Lockup 复位 写0清除,写1无效 WWDT 复位标志,需要软件初始化及清除 1:已发生 WWDT 复位 0:未发生 WWDT 复位 to 写0清除,写1无效 IWDT 复位标志 3 IWDT 1:已发生 IWDT 复位 0:未发生 IWDT 复位 写0清除,写1无效 LVD 复位标志 2 LVD 1:已发生 LVD 复位 0:未发生 LVD 复位 写0清除,写1无效 HC32F002 系列用户手册 Beta1.0 Page 67 of 415 Vcore域复位标志 1:Vcore域已发生复位 1 Vcore 0:Vcore域发生未复位 写 0 清除,写 1 无效 Vcc电源域复位标志 0 Vcc 1:VCC电源域已发生复位 0:VCC电源域未发生复位 写0清除,写1无效 i m 立 i 创 na 商 ry 城 注意:上电复位时复位值为 0x03。程序判断本次复位源后应该清除该寄存器,以便下 to Pr el 次发生复位后判断复位源。 HC32F002 系列用户手册 Beta1.0 Page 68 of 415 6.2.2 片内外设复位控制寄存器 0(PeriReset0) 复位值:0x0021_0ADC 地址:0x40002038 31 30 29 28 27 26 25 24 23 22 21 20 CTRIM Reserved 19 18 17 16 ADC Reserved 15 14 RW i m 立 i 创 na 商 ry 城 RW 13 12 11 10 9 8 ATIM3 Res. 7 6 SPI Res. RW 位 标记 功能描述 31:22 Res. 保留位 5 4 2 LPUA LPUA RT1 RT0 RW RW 1 0 I2C Res. RW 3 RW Res. CTRIM 模块复位控制 21 CTrim 1:模块正常工作 0:模块处于复位状态 20:17 Res. 保留位 ADC 模块复位控制 16 ADC 1:模块正常工作 el 0:模块处于复位状态 15:12 Res. 保留位 ATIM3 模块复位控制 ATIM3 1:模块正常工作 Pr 11 0:模块处于复位状态 10:7 Res. 保留位 SPI 模块复位控制 6 SPI 1:模块正常工作 0:模块处于复位状态 Res. 保留位 to 5 I2C 模块复位控制 4 I2C 1:模块正常工作 0:模块处于复位状态 LPUART1 模块复位控制 3 LPUART1 1:模块正常工作 0:模块处于复位状态 2 LPUART0 LPUART0 模块复位控制 1:模块正常工作 HC32F002 系列用户手册 Beta1.0 Page 69 of 415 0:模块处于复位状态 Res. 保留位 to Pr el i m 立 i 创 na 商 ry 城 1:0 HC32F002 系列用户手册 Beta1.0 Page 70 of 415 6.2.3 片内外设复位控制寄存器 1(PeriReset1) 复位值:0x0000 440F 地址:0x4000203C 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 PD PC PB PA R/W R/W R/W R/W Reserved 14 13 GTIM Res. R/W 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 WWDT Reserved 位 标记 功能描述 31:15 Reseved 保留位 RW Reserved GTIM / BTIM3 - 5模块复位控制 GTIM 14 1:模块正常工作 0:模块处于复位状态 13:11 Reseved 保留位 WWDT模块复位控制 10: WWDT 1:模块正常工作 0:模块处于复位状态 9:4 Reseved 保留位 3 el PD端口复位控制 PD 1:模块正常工作 0:模块处于复位状态 Pr PC端口复位控制 2 PC 1:模块正常工作 0:模块处于复位状态 PB端口复位控制 1 PB 1:模块正常工作 0:模块处于复位状态 0 to PA端口复位控制 PA 1:模块正常工作 0:模块处于复位状态 HC32F002 系列用户手册 Beta1.0 Page 71 of 415 7 中断控制器(NVIC) 7.1 概述 Cortex-M0+ 处理器内置了嵌套向量中断控制器(NVIC),支持最多 32 个中断请求(IRQ) 输入,以及 1 个不可屏蔽中断(NMI)输入(在本产品系统中并未使用)。另外,处理 i m 立 i 创 na 商 ry 城 器还支持多个内部异常。 每个异常源都有一个单独的异常编号,每种异常类型都有对应的优先级,有些异常的优 先级是固定的,而有些则是可编程的。具体如下表所示: 异常编号 异常类型 优先级 描述 1 复位 -3(最高) 复位 NMI -2 硬件错误 -1 错误处理异常 保留 NA … SVC 可编程 通过SVC指令调用管理程序 保留 NA … PendSV 可编程 系统服务的可挂起请求 SysTick 可编程 SysTick定时器 中断#0 可编程 外部中断#0 中断#1 可编程 外部中断#1 … … … 中断#31 可编程 外部中断#31 2 3 4-10 11 12-13 14 15 16 el 17 … Pr 47 表 7-1 不可屏蔽中断(在本系统中没有使 用) Cortex-M0+ 处理器中断一览 本章节只对处理器的 32 个外部中断请求(中断#0 到中断#31)做详细介绍,处理器内部 异常的具体情况可参考其他相关文档。同时,本章节只讨论处理器内核中 NVIC 的中 to 断处理机制,外设模块自身的中断产生机制不在这里展开讨论。 HC32F002 系列用户手册 Beta1.0 Page 72 of 415 7.2 中断优先级 每一个外部中断都对应一个优先级寄存器,每个优先级都是 2 位宽,并且使用中断优先 级寄存器的最高两位,每个寄存器占 1 个字节(8 位)。在这个设定下,可以使用的优先 级为 0x00(最高)、0x40、0x80 和 0xc0(最低)。 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 未使用,读出为 0 i m 立 i 创 na 商 ry 城 已使用 图 7-1 只使用了高两位的优先级寄存器 如果处理器已经在运行另外一个中断处理,而新中断的优先级大于正在执行的,这时就 会发生抢占。正在运行的中断处理会被暂停,转而执行新的中断,这个过程通常被称为 中断嵌套。新的中断执行完毕后,之前的中断处理会继续执行,并且在其结束后返回到 程序线程中。 如果处理器正在运行的另外一个中断处理的优先级相同或者更高,新的中断将会等待并 且进入挂起状态。挂起的中断将会一直等到当前中断等级改变,例如,当前运行的中断 处理完成返回后,当前优先级降低到了比挂起中断还要小。 如果两个中断同时发生,并且它们的优先级相同,中断编号较小的中断将会首先执行。 el 例如,如果中断#0 和中断#1 使能且具有相同的优先级,在它们同时被触发时,中断#0 to Pr 会首先执行。 HC32F002 系列用户手册 Beta1.0 Page 73 of 415 7.3 中断向量表 当 Cortex-M0+处理器要处理中断服务请求时,它需要首先确定异常处理的起始地址,所 需的信息叫做向量表,如图 7-2 所示。向量表存储在存储器空间的开始位置,包含了系 统中可用异常(中断)的异常(中断)向量,以及主栈指针(MSP)的初始值。 异常编号 i m 立 i 创 na 商 ry 城 存储器地址 0x0000004C 0x00000048 0x00000044 0x00000040 0x0000003C 0x00000038 0x00000034 0x00000030 0x0000002C 0x00000028 0x00000024 0x00000020 0x0000001C 0x00000018 0x00000014 0x00000010 0x0000000C 0x00000008 0x00000004 0x00000000 中断#3向量 中断#2向量 中断#1向量 中断#0向量 SysTick向量 PendSV向量 未使用 未使用 SVC向量 未使用 未使用 未使用 未使用 未使用 未使用 未使用 硬件错误异常 NMI向量 复位向量 MSP初始值 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 el 图 7-2 中断向量表 其中,中断向量的存储顺序同中断编号一致,由于每个向量都是 1 个字(4 字节),中断 to Pr 向量的地址为中断编号乘 4,每个中断向量都是中断处理的起始地址。 HC32F002 系列用户手册 Beta1.0 Page 74 of 415 7.4 中断输入和挂起行为 Cortex-M0+ 处理器的 NVIC 模块中,每一个中断输入都对应着一个挂起状态寄存器, 且每个寄存器只有 1 位,用于保存中断请求,而不管这个请求有没有得到确认。当处理 器开始处理这个中断时,硬件将会自动清除挂起状态位。 本系统的外设使用电平触发中断输出,当中断事件发生时,由于外设连接到了 NVIC 上, i m 立 i 创 na 商 ry 城 中断信号会得到确认。在处理器执行中断服务并且清除外设的中断信号以前,该信号会 保持高电平。在 NVIC 内部,当检测到有中断发生时,该中断的挂起状态会被置位,当 处理器接收该中断并且开始执行中断服务程序后,挂起状态就会被清除。该过程如图 7-3 所示: 中断请求的确认会引起 挂起状态置位 中断服务程序清除外设 的中断请求 中断请求X 进入中断处理会引起挂 起状态清除 中断挂起状态X 异常处理 处理器模式 处理器操作 线程 线程 线程 中断处理X 压栈 取向量 线程 异常返回 出栈 el 图 7-3 中断激活和挂起状态 Pr 如果中断请求没有立即执行,并且在确认之前被软件清除了,这样处理器会忽略掉本次 请求,并且不会执行中断处理。可以通过写 NVIC_ICPR 寄存器来清除中断挂起状态, 这种处理在设置外设时非常有用,因为在设置以前,该外设可能已经产生了一个中断请 to 求。 HC32F002 系列用户手册 Beta1.0 Page 75 of 415 如果在软件清除挂起状态时,外设仍然保持着中断请求,挂起状态还会立即生成。该过 程如图 7-4 所示: 中断请求的确认会 引起挂起状态置位 中断请求X 挂起状态被重新确认 中断挂起状态X 软件清除挂起状态 线程 i m 立 i 创 na 商 ry 城 线程 线程(由于被禁止或被PRIMASK屏蔽,中断X未被接受) 图 7-4 中断挂起状态被清除然后被重新确认 如果外设产生的中断请求在异常处理时没有被清除,异常返回后挂起状态就会被又一次 激活,这样中断服务程序会再次执行。该过程如图 7-5 所示: 中断请求的确认会 引起挂起状态置位 中断请求保持为高 中断请求X 中断挂起状态X 线程 异常处理 el 处理器模式 线程 Pr 处理器操作 重新进入中断处理 并清除挂起状态 进入中断处理会引 起挂起状态清除 中断确认引发挂起 状态被激活的同时 异常返回 中断处理X 压栈 取向量 异常返回 重新使能中断 中断处理X 取向量 to 图 7-5 中断退出时若中断请求保持高电平就会引起中断处理的再次执行 HC32F002 系列用户手册 Beta1.0 Page 76 of 415 如果在中断服务程序执行的过程中产生外设中断请求,该请求会被当作新的中断请求, 并且在本次中断退出后,还会引起中断服务程序的再次执行。该过程如图 7-6 所示: 中断请求的确认会 引起挂起状态置位 中断请求X 异常处理执行过程中,新的中断 请求会引起挂起状态的重新置位 中断挂起状态X 线程 线程 异常处理 i m 立 i 创 na 商 ry 城 处理器模式 处理器操作 线程 中断处理X 压栈 取向量 异常返回 中断处理X 取向量 线程 出栈 to Pr el 图 7-6 中断处理中产生的中断挂起也可以被确认 HC32F002 系列用户手册 Beta1.0 Page 77 of 415 7.5 中断等待 通常情况下,NVIC 的中断等待时间为 16 个周期。这个等待时间从中断确认的处理器 时钟周期开始,一直到中断处理开始执行结束。计算中断等待需要具备以下前提:  该中断使能并且没有被 PRIMASK 或是其他正在执行的异常处理所屏蔽。  存储器系统没有任何等待状态,在中断处理、压栈、取向量或者中断处理开始时的取 i m 立 i 创 na 商 ry 城 指都会用到总线传输,如果存储器系统需要等待,那么发生总线传输时产生的等待状 态则可能使得中断延迟。 下面的几种情况可能会导致不同的中断等待:  中断的末尾连锁,如果中断返回时产生了另外一个中断请求,处理器就会跳过出栈和 压栈过程,这样就减少了中断等待时间。  延迟到达,如果中断发生时,另外一个低优先级的中断正在进行压栈处理,由于延迟 到达机制的存在,高优先级的中断会首先执行,这样也会导致高优先级中断的等待时 to Pr el 间减小。 HC32F002 系列用户手册 Beta1.0 Page 78 of 415 7.6 中断源 因为 Cortex-M0+ 处理器的 NVIC 支持最多 32 个外部中断,而在本系统中,外部中断 源为 15 个,所以部分外部中断复用在同一个 NVIC 中断输入上,其中 NMI(不可屏蔽 中断)并没有使用。本系统所有外部中断源和 NVIC 中断输入的对应关系如下表所示: NVIC中断输入 外部中断源 中断#0 PORTA 中断#1 Sleep模式 DeepSleep模式 ✔ ✔ ✔ PORTB ✔ ✔ ✔ 中断#2 PORTC ✔ ✔ ✔ 中断#3 PORTD ✔ ✔ ✔ 中断#4 - - - - 中断#5 ATIM3 ✔ ✔ - 中断#6 - #7 - - - - 中断#8 LPUART0 ✔ ✔ ✔ 中断#9 LPUART1 ✔ ✔ ✔ 中断#10 SPI ✔ ✔ - 中断#11 - - - - 中断#12 I2C ✔ ✔ - 中断#13 - #14 - - - - 中断#15 GTIM / BTIM3 - 5 ✔ ✔ - 中断#16 - #21 - - - - IWDT ✔ ✔ ✔ WWDT ✔ ✔ - - - - 中断#24 ADC ✔ ✔ - 中断#25 - #27 - - - - 中断#28 LVD ✔ ✔ - 中断#29 - - - - 中断#30 FLASH ✔ ✔ - 中断#31 CTRIM ✔ ✔ ✔ el i m 立 i 创 na 商 ry 城 Active模式 中断#22 to Pr 中断#23 表 7-2 外部中断与 NVIC 中断输入对应关系 注意: – 由于某些模块中断被复用于同一个 IRQ 中断源,当 CPU 进入该中断操作时,必 须先判断是哪个模块产生的中断,再进行相对应的中断操作。 HC32F002 系列用户手册 Beta1.0 Page 79 of 415 7.7 中断结构图 外设中断产生源 中断挂起标志 ISPR寄存器 中断使能 ISER寄存器 中断优先级设置 IPR0-IPR7寄存器 B0 B1 B2 B3 B0 B1 B2 B3 IRQ0 IRQ1 IRQ2 IRQ3 IRQ4 IRQ5 IRQ6 IRQ7 B4 B5 B6 B7 B4 B5 B6 B7 IRQ4 IRQ5 IRQ6 IRQ7 IRQ8 IRQ9 IRQ10 IRQ11 B8 B9 B10 B11 B8 B9 B10 B11 IRQ8 IRQ9 IRQ10 IRQ11 IRQ12 IRQ13 IRQ14 IRQ15 B12 B13 B14 B15 B12 B13 B14 B15 IRQ12 IRQ13 IRQ14 IRQ15 IRQ16 IRQ17 IRQ18 IRQ19 B16 B17 B18 B19 B16 B17 B18 B19 IRQ16 IRQ17 IRQ18 IRQ19 IRQ20 IRQ21 IRQ22 IRQ23 B20 B21 B22 B23 B20 B21 B22 B23 IRQ20 IRQ21 IRQ22 IRQ23 IRQ24 IRQ25 IRQ26 IRQ27 B24 B25 B26 B27 B24 B25 B26 B27 IRQ24 IRQ25 IRQ26 IRQ27 B28 B29 B30 B31 IRQ28 IRQ29 IRQ30 IRQ31 00 01 10 IPR0 11 IPR1 i m 立 i 创 na 商 ry 城 IRQ0 IRQ1 IRQ2 IRQ3 IPR2 IPR3 el 中断响应 Pr IRQ28 IRQ29 IRQ30 IRQ31 B28 B29 B30 B31 IPR4 IPR5 IPR6 IPR7 NVIC 图 7-7 中断结构图 本系统的中断结构框图如图 7-7 所示。需要注意几点: to  外设中断源各自的中断使能没有在图中标出,这里只包括外设中断产生之后的中断 信号逻辑框图。  IRQ 有多于 1 个外设中断输入复用,必须分别读取这些外设的中断标志位来判定是 哪个外设的中断。  如果外设中断源有高电平产生,无论 NVIC 中断使能寄存器 SCS_SETENA 置位与 否,中断挂起寄存器 SCS_SEPEND 都会被置位,表示相应的外设中断源有中断产生。  只有中断使能寄存器 NVIC_ISER 置位,相应的中断 IRQ 才会给处理器相应,执行 HC32F002 系列用户手册 Beta1.0 Page 80 of 415 相应的中断程序。  在中断程序中必须清除外设中断源高电平中断信号,中断挂起寄存器 NVIC_ISPR 由硬件自动清除。  中断优先级寄存器 NVIC_IPR0- NVIC_IPR7 设置了 32 个中断源的优先级,00 优先 级最高,11 优先级最低。当优先级相同时,优先级由中断编号决定,编号越小优先级 to Pr el i m 立 i 创 na 商 ry 城 越高。 HC32F002 系列用户手册 Beta1.0 Page 81 of 415 7.8 软件基本操作 7.8.1 外部中断使能 在每一个外设模块内部都有各自的中断使能寄存器,在需要进行中断操作时,必须首先 打开外设自己的中断使能。该使能位的操作没有在本章节讨论,请参考外设模块各自的 i m 立 i 创 na 商 ry 城 章节描述。 7.8.2 NVIC 中断使能和清除使能 Cortex-M0+ 处理器支持最多 32 个中断源,每个中断源都对应有一个中断使能位和清零 使能位。这样就有了 32 位的中断使能寄存器 NVIC_ISER 和 32 位的中断请求清除寄 存器 NVIC_ICER。如果想使能某一个中断,则对 NVIC_ISER 寄存器的相应位置 1。如 果想清零某一个中断,则对 NVIC_ICER 寄存器的相应位置 1。 注意,这里提到的中断使能仅仅是针对处理器 NVIC 而言的,每个外设的中断生成与 否,是由外设的中断控制寄存器决定,与 NVIC_ISER 和 NVIC_ICER 无关。 el 7.8.3 NVIC 中断挂起和清除挂起 如果一个中断发生了,却无法立即处理,这个中断请求将会被挂起。挂起状态保存在一 Pr 个寄存器中,如果处理器的当前优先级还没有降低到可以处理挂起的请求,并且没有手 动清除挂起状态,该状态将会一直保持合法。 当处理器开始进入中断处理,硬件会自动清除挂起状态。 可以通过操作中断设置挂起 NVIC_ISPR 和中断清除挂起 NVIC_ICPR 这两个寄存器 to 来访问或修改中断挂起状态。中断挂起状态寄存器允许使用软件来触发中断。 7.8.4 NVIC 中断优先级 设置 NVIC_IPR0- NVIC_IPR7 寄存器决定 SCS_IRQ0- SCS_IRQ32 的优先级。中断优 先级寄存器的编程应该在中断使能之前,其通常是在程序开始时完成的。应该避免在中 断使能之后改变中断优先级,这种情况的结果不可预知,并且不被 Cortex-M0+ 处理器 支持。 HC32F002 系列用户手册 Beta1.0 Page 82 of 415 7.8.5 NVIC 中断屏蔽 有些对时间敏感的应用,需要在一段较短的时间内禁止所有中断,可以利用中断屏蔽寄 存器 SCS_PRIMASK 实现。特殊寄存器 SCS_PRIMASK 只有 1 位有效,并且在复位 后默认为 0。该寄存器为 0 时,所有的中断和异常都处于允许状态;而设为 1 后,只有 NMI(本系统不支持)和硬件错误异常处于使能。实际上,当 SCS_PRIMASK 设置为 i m 立 i 创 na 商 ry 城 1 后,处理器的当前优先级就降到了 0(可配值的最高优先级)。 可以通过多种方法编程 SCS_PRIMASK 寄存器,使用汇编语言,可以利用 MS R 指令 在设置和清除 SCS_PRIMASK 寄存器。若使用 C 语言以及 CMSIS 设备驱动库,用户 可以使用以下函数来设置和清除 PRIMASK。 void __enable_irq(void); //清除 PRIMASK to Pr el void __disable_irq(void); //设置 PRIMASK HC32F002 系列用户手册 Beta1.0 Page 83 of 415 7.9 寄存器 基地址:0xE000 E000 寄存器 偏移地址 描述 0x100 中断使能设置寄存器 NVIC_ICER 0x180 中断使能清除寄存器 NVIC_ISPR 0x200 中断挂起状态设置寄存器 NVIC_ICPR 0x280 中断挂起状态清除寄存器 NVIC_IPR0 NVIC_IPR1 NVIC_IPR2 NVIC_IPR3 NVIC_IPR4 NVIC_IPR5 NVIC_IPR6 NVIC_IPR7 PRIMASK i m 立 i 创 na 商 ry 城 NVIC_ISER 0x400 中断优先级寄存器0 0x404 中断优先级寄存器1 0x408 中断优先级寄存器2 0x40C 中断优先级寄存器3 0x410 中断优先级寄存器4 0x414 中断优先级寄存器5 0x418 中断优先级寄存器6 0x41C 中断优先级寄存器7 - 中断屏蔽特殊寄存器 7.9.1 中断使能设置寄存器(NVIC_ISER) 偏移地址:0x100 el 复位值:0x0000 0000 30 29 28 Pr 31 位 31:0 14 13 12 26 11 标记 SETENA [31:0] 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 SETENA[31:16] RW 10 to 15 27 9 8 7 SETENA[15:0] RW 功能描述 设置使能中断#0到中断#31;写“1”置位,写“0”无效 [0]:IRQ0 [1]:IRQ1 [2]:IRQ2 …… [31]:IRQ31 HC32F002 系列用户手册 Beta1.0 Page 84 of 415 7.9.2 中断使能清除寄存器(NVIC_ICER) 偏移地址:0x180 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 22 21 20 19 18 17 16 6 5 4 3 2 1 0 CLRENA RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 CLRENA RW 位 标记 31:0 CLRENA 功能描述 清除使能中断#0到中断#31; 写“1”清零,写“0”无效 7.9.3 中断挂起状态设置寄存器(NVIC_ISPR) 偏移地址:0x200 复位值:0x0000 0000 30 29 28 27 26 el 31 14 13 12 Pr 15 标记 31:0 SETPEND 10 24 23 SETPEND[31:16] RW 9 8 7 SETPEND[15:0] RW 功能描述 设置中断#0到中断#31的挂起状态;写“1”置位,写“0”无效 to 位 11 25 [0]:IRQ0 [1]:IRQ1 [2]:IRQ2 …… [31]:IRQ31 HC32F002 系列用户手册 Beta1.0 Page 85 of 415 7.9.4 中断挂起状态清除寄存器(NVIC_ICPR) 偏移地址:0x280 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 CLRPEND[31:16] RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 CLRPEND[15:0] RW 位 标记 31:0 CLRPEND 描述 清除中断#0到中断#31的挂起状态;写“1”清零,写“0”无效 [0]:IRQ0 [1]:IRQ1 [2]:IRQ2 …… to Pr el [31]:IRQ31 HC32F002 系列用户手册 Beta1.0 Page 86 of 415 7.9.5 中断优先级寄存器(NVIC_IPR0) 偏移地址:0x400 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 IPR0[31:16] RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 IPR0[15:0]] RW 位 标记 31:0 IPR0[31:0] 功能描述 中断#0到中断#3的优先级; [31:30]:中断#3 的优先级 [23:22]:中断#2 的优先级 [15:14]:中断#1 的优先级 [7:6]: 中断#0 的优先级 to Pr el 其中,00 优先级最高,11 优先级最低 HC32F002 系列用户手册 Beta1.0 Page 87 of 415 7.9.6 中断优先级寄存器(NVIC_IPR1) 偏移地址:0x404 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 IPR1[31:16] RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 IPR1[15:0]] RW 位 标记 31:0 IPR1[31:0] 功能描述 中断#4到中断#7的优先级; [31:30]:中断#7 的优先级 [23:22]:中断#6 的优先级 [15:14]:中断#5 的优先级 [7:6]: 中断#4 的优先级 to Pr el 其中,00 优先级最高,11 优先级最低 HC32F002 系列用户手册 Beta1.0 Page 88 of 415 7.9.7 中断优先级寄存器(NVIC_IPR2) 偏移地址:0x408 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 IPR2[31:16] RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 IPR2[15:0]] RW 位 标记 31:0 IPR2[31:0] 功能描述 中断#8到中断#11的优先级; [31:30]:中断#11 的优先级 [23:22]:中断#10 的优先级 [15:14]:中断#9 的优先级 [7:6]: 中断#8 的优先级 to Pr el 其中,00 优先级最高,11 优先级最低 HC32F002 系列用户手册 Beta1.0 Page 89 of 415 7.9.8 中断优先级寄存器(NVIC_IPR3) 偏移地址:0x40C 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 IPR3[31:16] RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 IPR3[15:0]] RW 位 标记 31:0 IPR3[31:0] 功能描述 中断#12到中断#15的优先级; [31:30]:中断#15 的优先级 [23:22]:中断#14 的优先级 [15:14]:中断#13 的优先级 [7:6]: 中断#12 的优先级 to Pr el 其中,00 优先级最高,11 优先级最低 HC32F002 系列用户手册 Beta1.0 Page 90 of 415 7.9.9 中断优先级寄存器(NVIC_IPR4) 偏移地址:0x410 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 IPR4[31:16] RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 IPR4[15:0]] RW 位 标记 31:0 IPR4[31:0] 功能描述 中断#16到中断#19的优先级; [31:30]:中断#19 的优先级 [23:22]:中断#18 的优先级 [15:14]:中断#17 的优先级 [7:6]: 中断#16 的优先级 to Pr el 其中,00 优先级最高,11 优先级最低 HC32F002 系列用户手册 Beta1.0 Page 91 of 415 7.9.10 中断优先级寄存器(NVIC_IPR5) 偏移地址:0x414 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 IPR5[31:16] RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 IPR5[15:0]] RW 位 标记 31:0 IPR5[31:0] 功能描述 中断#20到中断#23的优先级; [31:30]:中断#23 的优先级 [23:22]:中断#22 的优先级 [15:14]:中断#21 的优先级 [7:6]: 中断#20 的优先级 to Pr el 其中,00 优先级最高,11 优先级最低 HC32F002 系列用户手册 Beta1.0 Page 92 of 415 7.9.11 中断优先级寄存器(NVIC_IPR6) 偏移地址:0x418 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 IPR6[31:16] RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 IPR6[15:0]] RW 位 标记 31:0 IPR6[31:0] 功能描述 中断#24到中断#27的优先级; [31:30]:中断#27 的优先级 [23:22]:中断#26 的优先级 [15:14]:中断#25 的优先级 [7:6]: 中断#24 的优先级 to Pr el 其中,00 优先级最高,11 优先级最低 HC32F002 系列用户手册 Beta1.0 Page 93 of 415 7.9.12 中断优先级寄存器(NVIC_IPR7) 偏移地址:0x41C 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 IPR7[31:16] RW 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 IPR7[15:0] RW 位 标记 31:0 IPR7[31:0] 功能描述 中断#28到中断#31的优先级; [31:30]:中断#31 的优先级 [23:22]:中断#30 的优先级 [15:14]:中断#29 的优先级 [7:6]: 中断#28 的优先级 to Pr el 其中,00 优先级最高,11 优先级最低 HC32F002 系列用户手册 Beta1.0 Page 94 of 415 7.9.13 中断屏蔽特殊寄存器(PRIMASK) 偏移地址:--复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 Reserved 位 标记 31:1 Reserved 0 PRIMASK PRIM ASK RW 功能描述 置位后,除了 NMI 和硬件错误异常外的其他中断都会被屏蔽掉 清零后,所有异常和中断都不会被屏蔽掉 该特殊寄存器需要通过 MSR 和 MRS 特殊寄存器操作指令访问,也可以用改变处理器状态指令 to Pr el CPS 访问。在处理对时间敏感的应用时,需要操作 PRIMASK 寄存器。 HC32F002 系列用户手册 Beta1.0 Page 95 of 415 8 通用输入输出端口控制器(GPIO) 8.1 简介 GPIO 是 MCU 最基本的输入输出通道。本产品包含四组输入输出端口,其中 PA 为 5 位,PB 为 6 位,PC 为 5 位,PD 为 6 位。实际可用的 GPIO 端口数量请参考相应的规 i m 立 i 创 na 商 ry 城 格书以获得更多信息。 每个管脚都有相关的控制和配置寄存器,以满足特定应用的需求。通过配置相应的寄 存器,管脚可以被配置为以下三类工作模式:模拟外设的输入输出、数字外设的输入 输出、GPIO 的输入输出。 主要特性  功能复用:每只管脚可配置为多种数字或模拟功能,PA00 除外  输入模式:模拟输入、高阻输入、上拉输入  输出模式:模拟输出、推挽输出、开漏输出;可使能上拉  信号输入:输入信号到达数据输入寄存器(GPIOx_IN)及片内外设  信号输出:输出信号来源为数据输出寄存器(GPIOx_OUT)或片内外设 el 8.2 原子操作:位操作寄存器(GPIOx_BSRR、GPIOx_BRR)实现 IO 操作原子化  中断类型:上升沿中断、下降沿中断、高电平中断、低电平中断 Pr  辅助功能:输出各种内部内钟、片内外设输入信号重定向  双倍驱动:TSSOP20 和 QFN20 的 PB04-05、PC03-04 具有双倍驱动能力 to  HC32F002 系列用户手册 Beta1.0 Page 96 of 415 8.3 功能描述 8.3.1 端口电路框图 Vcc 模拟功能输入输出 Vcc 输入驱动器 保护 二极管 读 PU ADS IN 中断 i m 立 i 创 na 商 ry 城 外设复用功能输入 Q D Q HCLK Q D IO 引脚 Q 保护 二极管 读/写 Vcc PMOS OUT BRR BSRR 输出驱动器 写 输出控制 NMOS 推挽/开漏/禁止 Vss 外设复用功能输出 el Vss to Pr 图 8-1 通用端口电路示意图 HC32F002 系列用户手册 Beta1.0 Page 97 of 415 8.3.2 端口模式配置 通过控制寄存器,可以将端口配置为多种工作模式,其真值表如下方所示: IN ADS AFRL DIR Open Drain OUT BRR.BR BSRR.BR BSRR.BS PU 模拟 0 1 - - - - - - - - 高阻输入 X 0 0 1 - - - - - 0 上拉输入 1 0 0 1 - - - - - 1 高阻输出 高阻输出 高阻输出 上拉输出 上拉输出 上拉输出 输出 0 输出 0 输出 0 输出 0 输出 0 输出 0 输出 1 输出 1 X 0 0 0 1 1 0 0 0 0 X 0 0 0 1 - 0 0 1 0 X 0 0 0 1 - 0 1 1 0 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 - 0 0 1 1 1 0 0 0 1 - 0 1 1 1 0 0 0 0 1 0 0 0 0 - 0 0 0 0 1 - 1 0 0 - 0 0 0 0 1 - 0 1 0 - 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 - 1 0 0 - 0 0 0 0 0 - 0 1 0 - 0 0 0 0 0 1 0 0 0 - 0 0 0 0 0 - 0 0 1 - 0 0 0 0 0 - 0 1 1 - X 0 >0 0 0 - - - - - X 0 >0 1 0 - - - - 1 el 输出 1 i m 立 i 创 na 商 ry 城 管脚模式 外设输出 外设上拉输入 表 8-1 端口功能配置表 to Pr 注:-代表任意值;X 代表不确定 HC32F002 系列用户手册 Beta1.0 Page 98 of 415 8.3.3 端口复位状态 在复位期间及复位完成未配置 GPIO 寄存器之前,大多数 I/O 端口被配置为模拟输入 无上下拉状态;其它管脚的状态如下: SWCLK( PD01 ): 数字输入+上拉  SWDIO( PC07): 数字输入+上拉  PC06: 数字输入无上拉 i m 立 i 创 na 商 ry 城 8.3.4  端口模拟功能 当需要使用模拟外设(ADC、LVD……)的相应功能时,需要配置端口为模拟功能。 实现方法为设置 GPIOx_ADS 寄存器相应的位为 1,使片内模拟外设连接到该端口。 在该配置下,端口具有如下特性:  模拟外设连接到端口  端口数字功能关闭:不能输出电平;读取管脚电平恒为 0;无内置上拉及下拉 Vcc 模拟功能输入输出 el 输入驱动器 保护 二极管 外设复用功能输入 Pr 中断 Q to HCLK ADS Q IN 读 IO 引脚 D Q D 保护 二极管 Q Vss 图 8-2 高阻-模拟配置示意图 HC32F002 系列用户手册 Beta1.0 Page 99 of 415 8.3.5 端口通用输入输出功能 当需要使用端口的通用输入输出功能时,需要配置端口为数字功能并设置 AFRL 的值 为 0。实现方法为设置 GPIOx_ADS 寄存器相应的位为 0,设置 GPIOx_AFRL 寄存器 相应的位为 0。在该配置下,端口具有如下特性: 输入模式:可使能上拉  推挽输出:可使能上拉;支持位操作  开漏输出:可使能上拉;支持位操作 i m 立 i 创 na 商 ry 城  每个 GPIO 具有 4 个控制寄存器,其功能描述如下:  GPIOx_ADS 寄存器可配置端口为数字端口  GPIOx_DIR 寄存器可配置端口为输入或输出  GPIOx_PU 寄存器可使能端口的上拉  GPIOx_OpenDrain 寄存器可配置端口的输出类型为推挽或开漏 每个 GPIO 具有 2 个数据寄存器,其功能描述如下: GPIOx_IN 寄存器存储通过 I/O 输入的数据,只可进行读操作  GPIOx_OUT 寄存器存储待输出数据,可对其进行读/写访问 el  Pr 注意:对 GPIOx_OUT 寄存器进行【读-修改-写】的过程不是原子操作,不建议采用 该方式修改 GPIOx_OUT 寄存器的值。 每个 GPIO 有 2 个位操作寄存器,其功能描述如下: GPIOx_BSRR 寄存器的 BS 位可将 GPIOx_OUT 相应的比特置 1 to  寄存器的 BR 位可将 GPIOx_OUT 相应的比特清 0  GPIOx_BRR 寄存器位可将 GPIOx_OUT 相应的比特清 0 注意:通过位操作寄存器对 GPIOx_OUT 的值进行修改的过程为原子操作,建议采用 位操作的方式修改 GPIOx_OUT 寄存器的值。 HC32F002 系列用户手册 Beta1.0 Page 100 of 415 8.3.5.1 输入模式 当 GPIO 被配置为输入模式下,其简化框图如下所示: Vcc 模拟功能输入输出 Vcc 输入驱动器 保护 二极管 中断 i m 立 i 创 na 商 ry 城 外设复用功能输入 PU ADS Q IN 读 Q HCLK D Q D IO 引脚 Q 保护 二极管 Vss 图 8-3 输入悬空/上拉来配置示意图 每一个端口可以通过读取 GPIOx_IN 寄存器来获得端口管脚电平。如图 8-4 所示, GPIOx_IN 寄存器的各个位与其前面的锁存器组成了一个同步器从而避免了系统时钟状 态发生改变时在短时间内管脚电平变化而造成的信号不稳定,但是同时也引入了延 el 迟。读取端口管脚数据的同步图如下: HCLK Pr PIN voltage GPIOx_IN Tpd,max Tpd,min to 图 8-4 读取端口管脚数据同步图 在系统时钟上升沿之后的时钟时期,管脚电平信号会锁存在内部寄存器,如阴影部分 所示,在下一次系统时钟上升沿之后,稳定的管脚电平信号能够被读取。之后在系统 时钟上升沿时,数据锁存到 GPIOx_IN 寄存器中。信号转换延迟 Tpd 为 1-2 个系统时 钟。 HC32F002 系列用户手册 Beta1.0 Page 101 of 415 8.3.5.2 输出模式 当 GPIO 被配置为输出模式下,其简化框图如下所示: Vcc 模拟功能输入输出 Vcc 保护 二极管 输入驱动器 PU IN i m 立 i 创 na 商 ry 城 ADS 读 Q D Q HCLK Q D IO 引脚 Q 保护 二极管 读/写 OUT BRR BSRR 输出驱动器 写 Vcc PMOS 输出控制 NMOS 推挽/开漏/禁止 Vss 外设复用功能输出 Vss 图 8-5 输出配置示意图 el 每一个端口可以通过向 GPIOx_BRR、GPIOx_BSRR 或 GPIOx_OUT 写入数据以控制 IO 口的输出电平。 Pr GPIOx_BRR、GPIOx_BSRR 为位操作寄存器,每次可修改同一组端口中 IO 的数量为 1~6 个,且同一组端口中未被修改的 IO 保持其状态不变,使用该两个寄存器对 IO 进 行修改的过程为原子操作。对寄存器 GPIOx_OUT 的写入值即为每个位所对应的输出 to PIN 脚的输出值。 HC32F002 系列用户手册 Beta1.0 Page 102 of 415 端口复用功能 8.3.6 当需要使用数字外设(GPIO、LPUART、SPI……)的相应功能时,需要配置端口为数 字功能。操作方法为设置 GPIOx_ADS 相应的位为 0 并配置 GPIOx_AFRL,以实现将 特定的片内外设连接到端口。 在该配置下,端口具有如下特性: 输入模式: 可使能上拉;外部信号输入到片内外设;GPIOx_IN 可读取外部信号 i m 立 i 创 na 商 ry 城  可以产生端口中断  输出模式: 可选择开漏或推挽;可使能上拉 片内外设输出信号到端口;不可以产生端口中断 Vcc 模拟功能输入输出 Vcc 输入驱动器 保护 二极管 外设复用功能输入 读 PU ADS IN 中断 Q D el Q 读/写 IO 引脚 Q 保护 二极管 输出驱动器 Vcc PMOS OUT 写 D BRR BSRR Pr HCLK Q 输出控制 NMOS 推挽/开漏/禁止 Vss to 外设复用功能输出 Vss 图 8-6 复用功能配置示意图 HC32F002 系列用户手册 Beta1.0 Page 103 of 415 本芯片每一个端口的数字复用功能如下表所示。 数字功能 管脚名称 AF0 AF1 AF2 AF3 AF4 PA01 GPIO LPUART0_RXD I2C_SDA GTIM_TOGP HCLK_OUT PA02 GPIO LPUART0_TXD I2C_SCL GTIM_TOGN LVD_OUT PA03 GPIO GTIM_CH2 SPI_NSS PB00 PB01 PB02 PB03 PB04 PB05 PC03 PC04 GPIO GTIM_TOGP LVD_OUT SPI_NSS GPIO ATIM3_CH0B GTIM_CH3 LPUART0_RTS GPIO ATIM3_CH1B GTIM_CH2 LPUART0_CTS GPIO ATIM3_CH2B GTIM_CH1 LPUART1_RTS GPIO ATIM3_ETR GTIM_CH0 LPUART1_CTS GPIO I2C_SCL ATIM3_CH2B LPUART0_CTS GPIO I2C_SDA ATIM3_BK GPIO ATIM3_CH2A ATIM3_CH0B LPUART0_RTS GPIO ATIM3_CH0B ATIM3_CH1B TCLK_OUT GPIO SPI_SCK GTIM_CH3 ATIM3_ETR CTRIM_ETR CTRIM_TOG GPIO SPI_MOSI ATIM3_CH0A LPUART1_RTS GPIO SPI_MISO ATIM3_CH1A LPUART0_RXD Pr el PC05 CTRIM_TOG i m 立 i 创 na 商 ry 城 PA04 CTRIM_ETR GPIO GTIM_ETR ATIM3_BK LPUART0_TXD GPIO GTIM_CH2 ATIM3_CH2A LPUART1_CTS GPIO GTIM_CH1 ATIM3_CH1A LPUART1_RXD GPIO GTIM_CH0 LPUART1_TXD SPI_SCK PD05 GPIO LPUART1_TXD ATIM3_CH0A SPI_MISO GTIM_ETR SPI_MOSI PC06 PC07 PD01 PD02 PD03 to PD04 PD06 GPIO HC32F002 系列用户手册 Beta1.0 LPUART1_RXD Page 104 of 415 8.3.7 端口时钟输出 8.3.7.1 输出 HCLK 配置 GPIO 的寄存器,可以输出 HCLK,下方示例从 PA01 输出 HCLK: Step1. 设置 GPIOA_ADS.PIN1 为 0,配置 PA01 为数字端口。 Step2. 设置 GPIOA_DIR.PIN1 为 0,配置 PA01 为输出模式。 i m 立 i 创 na 商 ry 城 Step3. 设置 GPIOA_AFRL.AFSEL1 为 4,配置 PA01 的复用功能为 HCLK。 8.3.7.2 输出 TCLK 配置 GPIO 的寄存器,可以输出 RCH/RCL/PCLK/HCLK,下方示例从 PC04 输出 RCH/8: Step1. 设置 GPIOC_ADS.PIN4 为 0,配置 PC04 为数字端口。 Step2. 设置 GPIOC_DIR.PIN4 为 0,配置 PC04 为输出模式。 Step3. 设置 GPIOC_AFRL.AFSEL4 为 3,配置 PC04 的复用功能为 TCLK。 Step4. 设置 GPIOC_CR1.TCLKSRC 为 0,选择 TCLK 时钟源为 RCH。 to Pr el Step5. 设置 GPIOC_CR1.TCLKDIV 为 1,输出 TCLK 的 8 分频。 HC32F002 系列用户手册 Beta1.0 Page 105 of 415 端口外部中断 8.3.8 当端口被配置为数字功能(GPIOx_ADS 为 0)且工作于输入模式(GPIOx_DIR 为 1) 时,每一个端口均具有中断功能。每个端口支持 4 种类型的中断:上升沿中断、下降 沿中断、高电平中断、低电平中断;对应的中断使能寄存器分别为:GPIOx_RISEIE、 GPIOx_FALLIE、GPIOx_HIGHIE、GPIOx_LOWIE。当中断触发时,通过查询中断状 i m 立 i 创 na 商 ry 城 态寄存器(GPIOx_IFR)即可判断是哪一个端口触发了中断,通过中断清除寄存器 (GPIOx_ICR)就可以清除相应的中断状态标志位。 GPIO 外部中断相关的简化框图如下所示: Vcc Vcc 输入驱动器 保护 二极管 中断 PU IN 读 ADS Q Q Q D IO 引脚 Q 保护 二极管 Vss to Pr el HCLK D HC32F002 系列用户手册 Beta1.0 Page 106 of 415 8.4 寄存器描述 8.4.1 寄存器列表 基地址: GPIOA:0x4002 0C00 i m 立 i 创 na 商 ry 城 GPIOB:0x4002 0D00 GPIOC:0x4002 0E00 GPIOD:0x4002 0F00 注: – GPIOA 有 5 比特有效位(PA00-40) ,GPIOB 有 6 比特有效位(PB00-05) ,GPIOC 有 5 比特有 效位(PC03-07) ,GPIOD 有 6 比特有效位(PD01-06)。对不存在的位,写操作无效,读出值 始终为 0。 其中 2 个辅助功能寄存器(CR1, CR4)为共享寄存器,GPIOA / GPIOB / GPIOC / GPIOD 均可 使用并且对 4 个端口均有效,即 0x4002 0CA4、0x4002 0DA4、0x4002 0EA4 和 0x4002 0FA4 是同一个寄存器。 to Pr el 下面表中 x = A、B、C、D HC32F002 系列用户手册 Beta1.0 Page 107 of 415 寄存器名 偏移地址 0x00 端口数模配置寄存器(GPIOx_ADS) 复位值 (PA)0x0000 001E (PB)0x0000 003F (PC)0x0000 0038 (PD)0x0000 007C 端口输入输出配置寄存器(GPIOx_DIR) 0x04 (PA)0x0000 001F i m 立 i 创 na 商 ry 城 (PB)0x0000 003F (PC)0x0000 00F8 (PD)0x0000 007E 端口输出类型寄存器(GPIOx_OpenDrain) 0x08 0x0000 0000 端口上拉寄存器(GPIOx_PU) 0x18 (PA)0x0000 0001 (PB/C/D)0x0000 0000 0x1C 0x0000 xxxx 端口数据输出寄存器(GPIOx_OUT) 0x20 0x0000 xxxx 端口复位寄存器(GPIOx_BRR) 0x24 0x0000 0000 端口置位/复位寄存器(GPIOx_BSRR) 0x28 0x0000 0000 端口复用功能低位寄存器(GPIOx_AFRL) 0x30 0x0000 0000 端口高电平中断使能配置寄存器(GPIOx_HIGHIE) 0x38 0x0000 0000 端口低电平中断使能配置寄存器(GPIOx_LOWIE) 0x3C 0x0000 0000 端口上升沿中断使能配置寄存器(GPIOx_RISEIE) 0x40 0x0000 0000 端口下降沿中断使能配置寄存器(GPIOx_FALLIE) 0x44 0x0000 0000 端口中断状态寄存器(GPIOx_IFR) 0x48 0x0000 0000 端口中断清除寄存器(GPIOx_ICR) 0x4C (PA)0x0000 001F Pr el 端口数据输入寄存器(GPIOx_IN) to (PB)0x0000 003F 端口辅助功能配置寄存器1(GPIOx_CR1) 0xA4 0x0000 0000 端口辅助功能配置寄存器4(GPIOx_CR4) 0xB0 0x0000 0000 (PC)0x0000 00F8 (PD)0x0000 007E 表 8-2 GPIO 寄存器一览表 HC32F002 系列用户手册 Beta1.0 Page 108 of 415 8.4.2 端口数模配置寄存器(GPIOx_ADS) 地址偏移量:0x00 复位值:(PA) 0x0000 001E (PB) 0x0000 003F (PC) 0x0000 0038 31 30 i m 立 i 创 na 商 ry 城 (PD) 0x0000 007C 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 15 14 13 12 11 10 9 8 7 PIN[7:0] Reserved RW 位 符号 功能描述 31:8 Reserved 保留 7:0 PIN 端口数字功能或模拟功能控制 1:将端口配置为模拟功能 0:将端口配置为数字功能 注:PA 端口有效位[4:1],PA[0]仅作为数字端口用,PB 端口有效位[5:0],PC 端口有效位 to Pr el [7:3],PD 端口有效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 109 of 415 8.4.3 端口方向配置寄存器(GPIOx_DIR) 地址偏移量:0x04 复位值:(PA)0x0000 001F (PB )0x0000 003F i m 立 i 创 na 商 ry 城 (PC)0x0000 00F8 (PD)0x0000 007E 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 15 14 13 12 11 10 9 8 7 PIN[7:0] Reserved RW 位 符号 功能描述 31:8 Reserved 保留 7:0 PIN 端口输入输出方向控制 1:将端口配置成输入 0:将端口配置成输出 注:PA 端口有效位[4:1],PA[0]仅输入,PB 端口有效位[5:0],PC 端口有效位[7:3],PD 端口有 to Pr el 效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 110 of 415 8.4.4 端口输出类型寄存器(GPIOx_OpenDrain) 地址偏移量:0x08 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 15 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 PIN[7:0] Reserved RW 位 符号 功能描述 31:8 Reserved 保留 7:0 PIN 端口输出方式控制位 0:推挽输出(复位值) 1:开漏输出 注:PA 端口有效位[4:1],PB 端口有效位[5:0],PC 端口有效位[7:3],PD 端口有效位[6:1] 8.4.5 端口上拉寄存器(GPIOx_PU) el 地址偏移量:0x18 复位值:(PA)0x0000 0001 Pr (PB/C/D)0x0000 0000 31 15 30 14 29 13 28 12 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 11 10 9 8 7 PU[7:0] Reserved 位 31:8 7:0 to RW 符号 Reserved 保留 PUx 端口上位电阻使能控制 功能描述 0:禁止上拉电阻 1:使能上拉电阻 注:PA 端口有效位[4:0],PA[0]作为 RESET PAD 时自动上拉,PB 端口有效位[5:0],PC 端口有 效位[7:3],PD 端口有效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 111 of 415 8.4.6 端口数据输入寄存器(GPIOx_IN) 地址偏移量:0x1C 复位值:0x0000 XXXX 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 15 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 PIN[7:0] Reserved RO 位 符号 功能描述 31:8 Reserved 保留 7:0 PIN 端口输入数据 PA 端口有效位[4:0],PB 端口有效位[5:0],PC 端口有效位[7:3],PD 端口有效位[6:1] 8.4.7 端口数据输出寄存器(GPIOx_OUT) 地址偏移量:0x20 复位值:0x0000 XXXX 30 29 28 27 26 el 31 14 13 12 11 10 Pr 15 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 9 8 7 PIN[7:0] Reserved 位 符号 Reserved 保留 7:0 PIN 端口输出数据 功能描述 to 31:8 RW 注:PA 端口有效位[4:1],PB 端口有效位[5:0],PC 端口有效位[7:3],PD 端口有效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 112 of 415 8.4.8 端口复位寄存器 (GPIOx_BRR) 地址偏移量:0x24 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 15 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 PIN[7:0] Reserved WO 位 符号 功能描述 31:8 Reserved 保留 7:0 PIN 端口位清零控制 0:不影响 GPIOx_OUT 寄存器相应的比特 1:设置 GPIOx_OUT 寄存器相应的比特为 0 to Pr el 注:PA 端口有效位[4:1],PB 端口有效位[5:0],PC 端口有效位[7:3],PD 端口有效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 113 of 415 8.4.9 端口置位复位寄存器(GPIOx_BSRR) 地址偏移量:0x28 复位值:0x00000000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 2 1 0 BR[7:0] Reserved 14 13 12 11 10 9 8 7 6 5 4 3 i m 立 i 创 na 商 ry 城 15 BR9 WO BS[7:0] Reserved WO 位 符号 功能描述 31:24 Reserved 保留 23:16 BR 端口位清零控制 0:不影响 GPIOx_OUT 寄存器相应的比特 1:设置 GPIOx_OUT 寄存器相应的比特为 0 注:PA 端口有效位[20:17],PB 端口有效位[21:16],PC 端口有效位[23:19],PD 端口有效位 [22:17] 15:8 Reserved 保留 7:0 BS 端口位置位控制 0:不影响 GPIOx_OUT 寄存器相应的比特 el 1:设置 GPIOx_OUT 寄存器相应的比特为 1 to Pr 注:PA 端口有效位[4:1],PB 端口有效位[5:0],PC 端口有效位[7:3],PD 端口有效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 114 of 415 8.4.10 端口复用功能低位寄存器(GPIOx_AFRL) 地址偏移量:0x30 复位值:0x0000 0000 31 30 29 28 27 AFSEL7 26 25 24 23 AFSEL6 22 21 20 19 AFSEL5 18 17 16 AFSEL4 RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 i m 立 i 创 na 商 ry 城 RW AFSEL3 RW 位 31:0 RW RW AFSEL2 RW RW RW 符号 AFSELy y = 0-7 RW AFSEL1 RW RW RW RW AFSEL0 RW RW RW RW RW 功能描述 端口复用功能控制 0000:GPIO 0001:AF1 0010:AF2 0011:AF3 0100:AF4 0101-1111:保留位 注 1:AF1 – AF4 的具体功能详见【端口复用功能】章节 注 2:PA 端口有效位[19:4],PB 端口有效位[23:0],PC 端口有效位[31:12],PD 端口有效位 to Pr el [27:4] HC32F002 系列用户手册 Beta1.0 Page 115 of 415 8.4.11 端口高电平中断使能配置寄存器(GPIOx_HIGHIE) 地址偏移量:0x38 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 PIN[7:0] Reserved 位 RW 标记 31:8 功能描述 保留 Reserved 端口高电平中断使能控制 1:使能相应端口的高电平中断 7:0 PIN 0:禁止相应端口的高电平中断 注:PA 端口有效位[4:0],PB 端口有效位[5:0],PC 端口有效位[7:3],PD 端口有效位 [6:1] el 8.4.12 端口低电平中断使能配置寄存器(GPIOx_LOWIE) 地址偏移量:0x3C Pr 复位值:0x0000 0000 31 30 15 14 29 13 28 12 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 11 10 9 8 7 PIN[7:0] to Reserved 位 31:8 标记 Reserved RW 功能描述 保留 端口低电平中断使能控制 7:0 PIN 1:使能相应端口的低电平中断 0:禁止相应端口的低电平中断 注:PA 端口有效位[4:0],PB 端口有效位[5:0],PC 端口有效位[7:3],PD 端口有效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 116 of 415 8.4.13 端口上升沿中断使能配置寄存器(GPIOx_RISEIE) 地址偏移量:0x40 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 PIN[7:0] Reserved 位 31:8 RW 标记 功能描述 保留 Reserved 端口上升沿中断使能控制 7:0 PIN 1:使能相应端口的上升沿中断 0:禁止相应端口的上升沿中断 注:PA端口有效位[4:0],PB端口有效位[5:0],PC端口有效位[7:3],PD端口有效位[6:1] el 8.4.14 端口下降沿中断使能配置寄存器(GPIOx_FALLIE) 地址偏移量:0x44 Pr 复位值:0x0000 0000 31 15 30 14 29 13 28 12 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 11 10 9 8 7 PIN[7:0] Reserved 31:8 to 位 RW 标记 Reserved 功能描述 保留 端口下降沿中断使能控制 7:0 PIN 1:使能相应端口的下降沿中断 0:禁止相应端口的下降沿中断 注:PA 端口有效位[4:0],PB 端口有效位[5:0],PC 端口有效位[7:3],PD 端口有效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 117 of 415 8.4.15 端口中断状态寄存器(GPIOx_IFR) 地址偏移量:0x48 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 PIN[7:0] Reserved 位 31:8 RO 标记 Reserved 功能描述 保留 端口中断状态标志 7:0 PIN 1:已发生符合条件的中断 0:未发生符合条件的中断 to Pr el 注:PA端口有效位[4:0],PB端口有效位[5:0],PC端口有效位[7:3],PD端口有效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 118 of 415 8.4.16 端口中断清除寄存器(GPIOx_ICR) 地址偏移量:0x4C 复位值:(PA)0x0000 001F (PB)0x0000 003F (PC)0x0000 00F8 31 30 i m 立 i 创 na 商 ry 城 (PD)0x0000 007E 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 15 14 13 12 11 10 9 8 7 PIN[7:0] Reserved 位 31:8 RW 标记 Reserved 功能描述 保留 端口中断标志清除 7:0 PIN 1:无功能 0:清除相应的中断标志位 to Pr el 注:PA端口有效位[4:0],PB端口有效位[5:0],PC端口有效位[7:3],PD端口有效位[6:1] HC32F002 系列用户手册 Beta1.0 Page 119 of 415 8.4.17 端口辅助功能配置寄存器 1(GPIOx_CR1) 地址偏移量:0xA4 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 TCLKDIV Reserved 位 31:5 标记 Reserved RW Res. TCLKSRC RW 功能描述 保留 TCLK_OUT输出分频控制 00:TCLK 4:3 TCLKDIV 01:TCLK/8 10:TCLK/64 11:TCLK/256 2 Reserved 保留 TCLK_OUT输出信号选择 00:RCH TCLKSRC 01:RCL el 1:0 10:PCLK to Pr 11:HCLK HC32F002 系列用户手册 Beta1.0 Page 120 of 415 8.4.18 端口辅助功能配置寄存器 4 (GPIO_CR4) 地址偏移量:0xB0 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 8 GTIMCH0 Reserved 位 9 7 i m 立 i 创 na 商 ry 城 15 RW 标记 31:10 Reserved 9:8 GTIMCH1 7:6 Reserved ATIM3CH0B Reserved RW Reserved 功能描述 保留 GTimer 定时器CH0输入来源配置 详见 GPIO_CR4[5:4] 保留 ATimer3 定时器CH0B输入来源配置 00:由GPIOx_AFRL决定 5:4 ATIM3CH0B 01:LPUART0_RXD 10:LPUART1_RXD 11:LVD_OUT 保留 el Reserved to Pr 3:0 HC32F002 系列用户手册 Beta1.0 Page 121 of 415 9 FLASH 控制器(FLASH) 9.1 概述 本系统包含一块 18k 字节(Byte)容量的 FLASH 存储器,共划分为 36 个页(Sector), 每个页(Sector)的容量为 512 字节(Byte)。 i m 立 i 创 na 商 ry 城 本控制器支持对 FLASH 存储器的擦除、编程以及读操作。本控制器支持的读写位宽 为 Byte(8 位)、half-word(16 位)和 word(32 位)。注意,Byte 操作的目标地址 必须按字节对齐,half-word 操作的目标地址必须按半字对齐(地址最低比特为 0), word 操作的地址必须按字对齐(地址最低两比特均为 0)。如果目标地址没有按照位 宽对齐,则该操作无效,并且 CPU 会进入 Hard Fault 出错中断。 9.2 容量划分 本控制器支持的 FLASH 容量为 18KB,每个页(Secotr)的容量为 512 字节(Byte), 其组成方式如下方所示。 序号 0x0E00 – 0x0FFF Sector7 el 地址 序号 …… 0x4600 – 0x47FF Sector35 Sector6 …… 0x4200 – 0x43FF Sector34 0x0A00 – 0x0BFF Sector5 …… 0x4400 – 0x45FF Sector33 0x0800 – 0x09FF Sector4 …… 0x4000 – 0x41FF Sector32 0x0600 – 0x07FF Sector3 …… 0x3E00 – 0x3FFF Sector31 0x0400 – 0x05FF Sector2 …… 0x3C00 – 0x3DFF Sector30 0x0200 – 0x03FF Sector1 …… 0x3A00 – 0x3BFF Sector29 …… 0x3800 – 0x39FF Sector28 to Pr 0x0C00 – 0x0DFF 0x0000 – 0x01FF 9.3 地址 Sector0 表 9-1 FLASH 容量划分 读等待周期 本设备内置的 FLASH 支持的最快取指频率为 24MHz,故当 CPU 频率(HCLK)大 于 24MHz 时,CPU 从 FLASH 取指必需要插入等待周期(设置 FLASH_WAIT 大于 0)。当 FLASH_WAIT 等于 1 时,每两个 HCLK 可以完成一次 FLASH 取指操作。 HC32F002 系列用户手册 Beta1.0 Page 122 of 415 9.4 FLASH 操作(读、写、擦) 9.4.1 页擦除(Sector Erase) 页擦除每次可以擦除用户指定的一个页(Sector)。擦除操作完成后,页(Sector)内的 数据均为 0xFF。如果该擦除操作是从 FLASH 内执行,则 CPU 会停止取指,硬件自动 i m 立 i 创 na 商 ry 城 等待该操作完成(FLASH_CR.BUSY 变为 0);如果该擦除操作是从 RAM 内执行,则 CPU 不会停止取指,用户软件应等待该操作完成(FLASH_CR.BUSY 变为 0)。 Sector 擦除操作步骤如下: Step1:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step2:配置 FLASH_CR.OP 为 2,设置 Flash 操作模式为 Sector 擦除。 Step3:检查 FLASH_CR.OP 是否为 2,如不为 2 则跳转到 Step1。 Step4:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step5:设置 FLASH_SLOCK 相应的比特为 1,去除该 Sector 的擦写保护。 Step6:检查 FLASH_SLOCK 相应的比特是否为 相应的比特是否为 1,如不为 1 则 跳转到 Step4。 el Step7:对待擦除的 Sector 内的任意地址进行写入任意数据,触发 Sector 擦除。 例:*((unsigned char *)0x00000200)= 0x00。 Pr Step8:等待 FLASH_CR.BUSY 变为 0,Sector 擦除操作完成。 Step9:如需擦除其它 Sector,重复 Step4 – Step8。 9.4.2 全片擦除(Chip Erase) to 全片擦除可以一次性擦除全部的页(Sector)。擦除操作完成后,所有页(Sector)内的 数据均为 0xFF。如果该擦除操作是从 FLASH 内执行,则该操作会被禁止,并置起相 应的出错标志位;如果该擦除操作是从 RAM 内执行,则 CPU 不会停止取指,用户 软件应等待该操作完成(FLASH_CR. BUSY 变为 0)。 Chip 擦除操作步骤如下: Step1:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step2:配置 FLASH_CR.OP 为 3,设置 Flash 操作模式为 Chip 擦除。 HC32F002 系列用户手册 Beta1.0 Page 123 of 415 Step3:检查 FLASH_CR.OP 是否为 3,如不为 3 则跳转到 Step1。 Step4:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step5:设置 FLASH_SLOCK 为 0xFFFFFFFF,去除所有 Sector 的擦写保护。 Step6:检查 FLASH_SLOCK 是否为 0xFFFFFFFF,如不为 0xFFFFFFFF 则跳转到 则 跳转到 Step4。 i m 立 i 创 na 商 ry 城 Step7:对待擦除的 Chip 内的任意地址进行写操作,触发 Chip 擦除。 例:*((unsigned char *)0x00000000)= 0x00。 Step11:等待 FLASH_CR.BUSY 变为 0,Chip 擦除操作完成。 9.4.3 写操作(Program) 写操作只能将 FLASH 内的比特数据由 1 写成 0,故写入数据前应确保待写入的地址内 的数据为 0xFF。支持写入 3 种数据长度:Byte(8bits)、Half-word(16bits)、Word(32bits), 写入的数据以小端模式存放在 FLASH 中,即低地址存放数据的低字节。如果写操作 是从 FLASH 内执行,则 CPU 会停止取指,硬件自动等待该操作完成(FLASH_CR. BUSY 变为 0);如果该写操作是从 RAM 内执行,则 CPU 不会停止取指,用户软件应 el 等待该操作完成(FLASH_CR.BUSY 变为 0)。 Byte 写操作步骤如下: Pr Step1:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step2:配置 FLASH_CR.OP 为 1,设置 Flash 操作模式为写入。 Step3:检查 FLASH_CR.OP 是否为 1,如不为 1 则跳转到 Step1。 Step4:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step5:设置 FLASH_SLOCK 相应的比特为 1,去除擦写保护。 to Step6:检查 FLASH_SLOCK 相应的比特是否为 1,如不为 1 则跳转到 Step4。 Step7:对待写入的目标地址进行 Byte 写操作,触发写入操作。 例:*((unsigned char *)0x00001231)= 0x5A。 Step8:等待 FLASH_CR. BUSY 变为 0,写入操作完成。 Step9:如需写 Byte 到其它地址,重复 Step7 – Step8。 HC32F002 系列用户手册 Beta1.0 Page 124 of 415 Half-word 写操作步骤如下: Step1:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step2:配置 FLASH_CR.OP 为 1,设置 Flash 操作模式为写入。 Step3:检查 FLASH_CR.OP 是否为 1,如不为 1 则跳转到 Step1。 Step4:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 i m 立 i 创 na 商 ry 城 Step5:设置 FLASH_SLOCK 相应的比特为 1,去除擦写保护。 Step6:检查 FLASH_SLOCK 相应的比特是否为 1,如不为 1 则跳转到 Step4。 Step7:对待写入的目标地址进行 Half-word 写操作,触发写入操作。 例:*((unsigned short int *)0x00001232)= 0xABCD。 Step8:等待 FLASH_CR.BUSY 变为 0,写入操作完成。 Step9:如需写 Half-word 到其它地址,重复 Step7 – Step8。 Word 写操作步骤如下: Step1:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Step2:配置 FLASH_CR.OP 为 1,设置 Flash 操作模式为写入。 el Step3:检查 FLASH_CR.OP 是否为 1,如不为 1 则跳转到 Step1。 Step4:向 FLASH_BYPASS 寄存器依次写入 0x5A5A、0xA5A5,使能寄存器改写。 Pr Step5:设置 FLASH_SLOCK 相应的比特为 1,去除擦写保护。 Step6:检查 FLASH_SLOCK 相应的比特是否为 1,如不为 1 则跳转到 Step4。 Step7:对待写入的目标地址进行 Word 写操作,触发写入操作。 例:*((unsigned int *)0x00001234)= 0x55667788。 to Step8:等待 FLASH_CR.BUSY 变为 0,写入操作完成。 Step9:如需写 Word 到其它地址,重复 Step7 – Step8。 HC32F002 系列用户手册 Beta1.0 Page 125 of 415 9.4.4 读操作(Read) 支持读出 3 种数据长度:Byte(8bits)、Half-word(16bits)、Word(32bits),读出的数 据为小端模式,即低地址存放数据的低字节。读操作无需操作步骤,任何时刻都可以 读出 FLASH 内的数据。 例: temp = *((unsigned char *)0x00001231) Half-word 读操作 temp = *((unsigned short int *)0x00001232) Word 读操作 temp = *((unsigned int *)0x00001234) to Pr el i m 立 i 创 na 商 ry 城 Byte 读操作: HC32F002 系列用户手册 Beta1.0 Page 126 of 415 9.5 FLASH 安全保护 9.5.1 页面擦写保护 FLASH 存储器共 18K 字节,被划分为 36 个页,每 4 个页共用一个擦写保护位。当 页被保护时,对该页进行的擦写操作均无效并产生报警标志位和中断信号。当 FLASH i m 立 i 创 na 商 ry 城 存储器中的任意页被保护时,对该 FLASH 的全片擦写无效,并产生报警标志位和中 断信号。 9.5.2 PC 地址擦写保护 若 CPU 在 FLASH 中执行程序且当前 PC 指针正好落在待擦写的页地址范围之内, 那么该擦写操作无效并产生报警标志位和中断信号。基于该特性,只有从 RAM 中执 行代码时,才可以对 FLASH 进行片擦操作。 9.5.3 寄存器写保护 本模块的重要控制器屏蔽普通的写操作,必须用写序列方式才能修改。 el 需要通过写序列方式才能更改的寄存器如下所示: FLASH_CR、FLASH_SLOCK。 不需要通过写序列方式即可更改的寄存器如下所示: Pr FLASH_ICLR、FLASH_BYPASS。 通过写序列方式修改寄存器值的具体操作步骤如下所示: Step1:向 FLASH_BYPASS 寄存器写入 0x5A5A。 Step2:向 FLASH_BYPASS 寄存器写入 0xA5A5。 to Step3:对待修改的寄存器写入目标值。 Step4:验证待修改的寄存器当前值是否与目标相同,如不则跳转到 Step1。 Step5:执行其他操作。 注意: - 写 0x5A5A 和写 0xA5A5 这两步操作之间不可插入任何写操作,否则无法改写目 标寄存器的数值。如改写失败,需要重新进行这三步操作。 HC32F002 系列用户手册 Beta1.0 Page 127 of 415 9.5.4 数据读出保护 本芯片内置 FLASH 支持 4 级读保护,当前保护等级可通过 FLASH_LockState 寄存 器读出。使用编程器对芯片进行编程时,可配置 FLASH 的读保护等级。 芯片在各保护等级下的功能如下表所示。 芯片功能 Level0 可以通过 ISP 及 SWD 对 FLAH 进行读写 Level1 数据不可读出 i m 立 i 创 na 商 ry 城 保护等级 可以通过 ISP 及 SWD 降级到 Level0,降级后 FLASH 内容全为 FF Level2 数据不可读出 可以通过 ISP 降级到 Level0,降级后 FLASH 内容全为 FF SWD 接口被禁止,数据不可读出 Level3 数据不可读出 to Pr el ISP 及 SWD 接口均被禁止,即芯片只能进行一次编程 HC32F002 系列用户手册 Beta1.0 Page 128 of 415 9.6 寄存器描述 9.6.1 控制寄存器列表 基地址:0x4002 0000 偏移地址 描述 FLASH_CR 0x20 控制寄存器 FLASH_IFR 0x24 中断标志寄存器 FLASH_ICLR 0x28 中断标志清除寄存器 FLASH_BYPASS 0x2C 序列寄存器 FLASH_SLOCK 0x30 擦写保护寄存器 FLASH_WAIT 0x50 读等待周期寄存器 FLASH_LockState 0x54 读保护状态寄存器 to Pr el i m 立 i 创 na 商 ry 城 寄存器 HC32F002 系列用户手册 Beta1.0 Page 129 of 415 9.6.2 控制寄存器(FLASH_CR) 偏移地址:0x20 复位值:0x0000 0200 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 15 14 13 12 11 10 9 8 7 FLASH i m 立 i 创 na 商 ry 城 Lp PCIE Reserved Mode Reserved RW 位 标记 31:10 Reserved 保留位 9 LpMode FLASH 低功耗控制 BUSY IE RW OP Reserved RW RO RW 功能描述 0:当系统进入 DeepSleep 模式,FLASH 不进入低功耗模式; 1:当系统进入 DeepSleep 模式,FLASH 进入低功耗模式; 注:保持该寄存器值为 1 8:7 Reserved 保留位 6 FLASHIE FLASH 被保护地址擦写中断使能控制 0:禁止 1:使能 PCIE 擦写 PC 所在FLASH页面中断使能控制 el 5 0:禁止 1:使能 BUSY FLASH擦写状态标志 Pr 4 0:擦写操作已完成 1:擦写操作未完成 3:2 Reserved 1:0 OP 保留位 FLASH 操作模式配置 00:读(Read) to 01:写(Program) 10:页擦除(Sector Erase) 11:全片擦除(Chip Erase) HC32F002 系列用户手册 Beta1.0 Page 130 of 415 中断标志寄存器(FLASH_IFR) 9.6.3 偏移地址:0x24 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 FLASH PC RO RO Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 Reserved 位 标记 描述 31:2 Reserved 保留位 1 FLASH FLASH擦写保护报警中断标志位 0 PC FLASH擦写 PC 地址报警中断标志位 中断标志清除寄存器(FLASH_ICLR) 9.6.4 偏移地址:0x28 el 复位值:0x0000 000F 31 14 29 13 28 12 27 11 26 10 Pr 15 30 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 FLASH PC R1W0 R1W0 Reserved 9 8 7 Reserved 标记 31:2 Reserved 保留位 1 FLASH 清除保护报警中断标志位 功能描述 to 位 写0清除 写1无效 0 PC 清除 PC 地址报警中断标志位 写0清除 写1无效 HC32F002 系列用户手册 Beta1.0 Page 131 of 415 序列寄存器(FLASH_BYPASS) 9.6.5 偏移地址:0x2C 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 15 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 BYPASS WO 位 标记 描述 31:16 Reserved 保留位 15:0 BYPASS 在修改本模块特定寄存器之前,必须对本寄存器写入 0x5A5A - 0xA5A5 序列。每次写入该 Bypass 序列后,只可以修改一次寄存器。如需再次修改寄存器,必须再次输入 0x5A5A - 0xA5A5 序列。 擦写保护寄存器(FLASH_SLOCK) 9.6.6 偏移地址:0x30 el 复位值:0x0000 0000 31 14 29 13 28 12 Pr 15 30 27 11 26 10 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 9 8 7 SLOCK [8:0] Reserved 标记 31:9 Reserved 保留位 SLOCK FLASH页面擦写保护配置 8:0 描述 to 位 RW 0:不允许擦写 1:允许擦写 Bit0 对应:Sector0 - Sector3 Bit1 对应:Sector4 - Sector7 Bit2 对应:Sector8 - Sector11 …… Bit8 对应:Sector32 – Sector35 HC32F002 系列用户手册 Beta1.0 Page 132 of 415 9.6.7 读等待周期寄存器(FLASH_WAIT) 偏移地址:0x50 复位值:0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 WAIT Reserved 位 标记 31:2 Reserved 1:0 WAIT RW 功能描述 保留位 FLASH取指等待周期配置 00:1个周期,适用于HCLK = CCR0输出高电平) to 111:PWM反向输出(CNT < CCR输出高电平) HC32F002 系列用户手册 Beta1.0 Page 163 of 415 12.4.9 比较捕获寄存器(GTIM_CCRy)(y=0,1,2,3) 偏移地址:0x320 / 0x324 / 0x328 / 0x32C 复位值: 0xFFFF / 0x0000 / FFFF / 0x0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 CCR RW 符号 描述 31:16 Reserved 保留位 15:0 CCR 16位比较捕获寄存器 to Pr el 位 HC32F002 系列用户手册 Beta1.0 Page 164 of 415 13 高级定时器(ATIM) 13.1 概述 ATIM3 是由 1 个计数单元和 7 个比较单元组成的定时器,支持 6 个独立 PWM 输出或 3 对互补 PWM 输出。支持 6 个捕获输入。 i m 立 i 创 na 商 ry 城 使用定时器预分频、系统预分频器和系统时钟选择,可灵活的调整脉冲宽度和波形周 期;可以方便的测量脉冲宽度。 13.2 主要特性  6 路独立 PWM 输出 CH0A,CH0B, CH1A,CH1B, CH2A,CH2B  3 路互补 PWM 输出(CHxA,CHxB)  3 路互补 PWM 输出(CHxA,CHxB)  最多 6 路捕获输入  脉冲宽度测量  死区控制 el  刹车控制  边沿对齐、对称中心对齐与非对称中心对齐 PWM 输出 Pr  正交编码计数功能  单脉冲模式 to  外部输入计数功能 HC32F002 系列用户手册 Beta1.0 Page 165 of 415 CR.CT Period reload ARR Tclk ETR PRS M U X Edge det MS ctrl clk counter M U X trgo trig ETFP GND Gate ctrl CH0A IA0FP IB0FP Edge det Capture /compare flt Edge det Capture /compare flt Edge det Capture /compare flt Edge det Capture /compare flt Edge det Capture /compare flt Edge det Capture /compare flt Pol flt OCRRE0A DTG CH1A CH1B CH2A CH2B BK CH0A Output control CH0B Output control CH1A Output control CH1B Output control CH2A Output control CH2B i m 立 i 创 na 商 ry 城 xor CH0B Output control OCRRE1A DTG OCRRE1B OCRRE2A OCRRE2B DTG ATIM3 框图 to Pr el 图 13-1 OCRRE0B HC32F002 系列用户手册 Beta1.0 Page 166 of 415 13.3 功能描述 13.3.1 定时器时钟 定时器使用 PCLK 作为定时器时钟,下文定时器时钟使用 TCLK 标示。 i m 立 i 创 na 商 ry 城 13.3.2 定时计数器 高级定时器的主要模块是一个 16 位计数器及其相关的自动重载寄存器。计数器可递 增计数、递减计数或交替进行递增和递减计数。计数器的时钟可通过预分频器进行分 频。 计数器、自动重载寄存器和预分频器寄存器可通过软件进行读写。即使在计数器运行 时也可执行读写操作。 13.3.3 定时器预分频 使用 TCLK 做为 Timer 定时器时钟时,可以使用预分频。预分频设置如下: 000 001 010 011 100 101 110 111 分频比 1 2 4 8 16 32 64 256 el PRS to Pr 预分频器没有预装载缓存,因此对预分频进行更改,预分频将会立刻生效。 HC32F002 系列用户手册 Beta1.0 Page 167 of 415 13.3.4 模式 0 计数定时器功能 这种模式下,计数器向上计数。计数器支持两种计数模式,重载模式与自由计数模式, 可以选择外部时钟 ETR 计数或系统时钟计数。计数到最大值溢出产生中断。翻转输出 端口 CHA,CHB,这种模式下 CHA,CHB 反相。 重载模式计数范围从 ARR 向上计数到 0xFFFF 溢出,然后从 ARR 再开始计数,计数 i m 立 i 创 na 商 ry 城 周期为 0xFFFF-ARR+1;自由计数模式从设置计数值计数到 0xFFFFFFFF 后溢出,溢 出后计数值从 0x0 重新开始计数。 13.3.4.1 功能框图 Prs[2:0] Tclk 自由计数模式 Pre_cnt C/T=0 ETR C/T=1 CR.CTEN CR.gate GND CNT(32bit) TF interrupt CHA CHB CR.Gate_p Pr el Dbg_active Prs[2:0] Tclk ETR 图 13-2 自由计数框图 重载模式 Pre_cnt C/T=0 C/T=1 CNT(16bit) TF interrupt CR.CTEN to CR.gate GND ARR(16bit) CHA CHB CR.Gate_p Dbg_active 图 13-3 重载计数波形 HC32F002 系列用户手册 Beta1.0 Page 168 of 415 13.3.4.2 计数波形 CNT[15:0] 0xFFFF ARR 0x0000 T i m 立 i 创 na 商 ry 城 CR.CTEN 图 13-4 16位重载计数波形 CNT32[31:0] 0xFFFFFFFF 0x00000000 T CR.CTEN to Pr el 图 13-5 32位自由计数波形 HC32F002 系列用户手册 Beta1.0 Page 169 of 415 13.3.4.3 计数功能 计数功能用于测定某个事件发生的次数。在计数功能中,计数器在每个相应的输入时 钟的下降沿累加一次。输入信号被内部的 TCLK 采样,因此外部输入时钟频率不能超 过系统的 TCLK 时钟。计数到最大值会溢出并且产生中断。中断标志需要软件清除。 13.3.4.4 定时功能 i m 立 i 创 na 商 ry 城 定时功能用于产生间隔定时。在定时功能中,定时器有预除频,定时器在每个预除频 的一个时钟累加一次,计数到最大值会溢出并且产生中断。中断标志需要软件清除。 13.3.4.5 时序图 自由计数(max=0xFFFF_FFFF) Tclk CTEN T+1 T Count(32) OverFlow UIF TOG T+2 T+3 T+4 ... max 0 1 2 ... ... 0 max 1 2 ... ... max 0 1 2 ... Soft clear el 图 13-6 自由计数时序图 重载计数(max=0xFFFF) Pr Tclk CTEN pre Count(16) ovt UIF 0 1 0 1 0 1 0 1 0 1 TL TL+ 1 TL+ 2 TL+ 3 TL+ 4 ... 0 1 0 1 0 1 0 1 ... ... 0 1 0 1 0 1 0 1 ... ... 0 1 0 1 0 1 0 1 ... ... max ... ... max ... ... max ... TH TH+1 TH+2 TH TH+1 TH+2 TH TH+1 TH+2 to TOG Soft clear 图 13-7 重载计数时序图(预分频设置为2) HC32F002 系列用户手册 Beta1.0 Page 170 of 415 13.3.4.6 Buzzer 功能 通过定时器的翻转输出功能可以实现驱动 Buzzer 的功能。使用 toggle 输出需要使能 DTR.MOE 控制位。设置 CR.TOGEN 为 0 可以同时设置端口 CHA,CHB 输出为 0。在 计数时钟为 4M 情况下 Buzzer 输出不同频率的 timer 重载模式配置如下: 计数器周期 计数器计数值 计数器重载值 CNTL 初始值 CNTH 重载值 1000Hz 0.5ms 2000 63536 0xF830 0xF830 2000Hz 4000Hz i m 立 i 创 na 商 ry 城 Buzzer 频率 0.25ms 1000 64536 0xFC18 0xFC18 0.125ms 500 65036 0xFE0C 0xFE0C 13.3.4.7 设置示例 重载定时器设置 1. 设置定时器模式 M0CR.MODE=0 2. 设置装载值 ARR 3. 设置计数器初值 CNT 4. 清除中断标志 el 5. 使能中断 M0CR.UIE 6. 使能重载模式 M0CR.MD Pr 7. 开启定时器 M0CR.CTEN BUZZER 输出控制 1. 根据输出频率设置合适的 ARR 值 2. 设置定时器为重载模式,参考重载定时器设置 3. 使能输出使能 DTR.MOE to 4. 启动另外一个定时器控制 M0CR.TOGEN 实现频率的间隔输出。 HC32F002 系列用户手册 Beta1.0 Page 171 of 415 13.3.5 模式 1 脉宽测量 PWC 这种模式下可以自动测量输入脉冲的高电平低电平或者周期宽度。 第一个有效边沿计数器初始化为 0x0001,第二个有效边沿将停止计数,并将当前计数 值存入 CMAR,并且产生捕获中断 CAF,如果计数器发生溢出,会产生溢出标志。设 置溢出中断使能会产生溢出中断。 0 0 1 1 M1CR.edg2nd 0 1 0 1 脉宽测量 上沿~上沿 上沿~下沿 下沿~上沿 下沿~下沿 周期宽度 高电平宽度 低电平宽度 周期宽度 i m 立 i 创 na 商 ry 城 M1CR.edg1st 周期测量时,会间隔一个周期测量一个周期。 13.3.5.1 PWC 功能框图 Edge sel counter MSCR.TS Edge det Pr el ITR MSCR.TS Edge sel CCR 图 13-8 PWC测量框图 触发选择 000:端口ETR的滤波相位选择后的信号ETFP ; 001:内部互联信号 ITR0 010:内部互联信号 ITR1; to 011:内部互联信号 ITR2; 100:内部互联信号 ITR3; 101:无效 110:端口CH0A的滤波后的信号IAFP(极性选择在脉宽测量模式下无效) 111:端口CH0B的滤波后的信号IBFP(极性选择在脉宽测量模式下无效) HC32F002 系列用户手册 Beta1.0 Page 172 of 415 13.3.5.2 PWC 波形测量时序图 CNT[15:0] 0xFFFF 0x0001 IN UIF CAF i m 立 i 创 na 商 ry 城 CTEN 图 13-9 高电平脉冲宽度测量 CNT[15:0] 0xFFFF 0x0001 CTEN el IN UIF Pr CAF 图 13-10 下降沿到下降沿周期测量 CNT[15:0] to 0xFFFF 0x0001 CTEN IN UIF CAF 图 13-11 上升沿到上升沿周期测量 通过寄存 MSCR.TS 选择测量信号源。 HC32F002 系列用户手册 Beta1.0 Page 173 of 415 000 ETFP: ETR 外部输输入滤波后的相位选择信号,可选择外部滤波与输入反向 001 ITR0: Timer 内部互联信号 0,其他 timer 的 TRGO 输出 010 ITR1: Timer 内部互联信号 1,其他 timer 的 TRGO 输出 011 ITR2: Timer 内部互联信号 2,其他 timer 的 TRGO 输出 100 ITR3: Timer 内部互联信号 3,其他 timer 的 TRGO 输出 ATIM3 i m 立 i 创 na 商 ry 城 101 IA0ED: 无效 110 IAFP: CH0A 外部输输入滤波后的相位选择信号,可选择外部滤波与输入反向 111 IBFP: CH0B 外部输输入滤波后的相位选择信号,可选择外部滤波与输入反向 ITR0 ITR1 ITR2 ITR3 - - GTIM_OV - to Pr el 注:关于 TRGO 输出参考寄存器 MSCR.MMS 描述。 HC32F002 系列用户手册 Beta1.0 Page 174 of 415 13.3.5.3 PWC 单次触发模式 设置 M1CR.ONESHOT=1 可以设置 PWC 单次测量,测量完成后 CTEN 将被清除。 CNT[15:0] 0XFFFF i m 立 i 创 na 商 ry 城 0X0001 CTEN IN UIF CAF 图 13-12 上升沿到上升沿周期测量单次模式 13.3.5.1 设置示例 脉冲低电平测量设置 1. 设置为脉冲测量模式 M1CR.MODE=1 2. 设置 MSCR.TS 选择测量的信号 3. 设置 M1CR.edg2dn=0,M1CR.edg1st=1 选择测量低电平 el 4. 清除中断标志 5. 使能溢出中断 M1CR.UIE Pr 6. 使能测量结束中断 CR0.CIEA 7. 使能定时器 M1CR.CTEN 8. 中断服务程序中读取 CCR0A 及溢出次数并清除中断标志 9. 等待下次测量 to 脉冲高电平单次测量设置 1. 设置为脉冲测量模式 M1CR.MODE=1 2. 设置 MSCR.TS 选择测量的信号 3. 设置脉冲单次测量模式 M1CR.ONESHOT=1 4. 设置 M1CR.edg2dn=1, M1CR.edg1st=0 选择测量低电平 5. 清除中断标志 6. 使能溢出中断 M1CR.UIE HC32F002 系列用户手册 Beta1.0 Page 175 of 415 7. 使能测量结束中断 CR0.CIEA 8. 使能定时器 M1CR.CTEN 9. 中断服务程序中读取 CCR0A 及溢出次数并清除中断标志 to Pr el i m 立 i 创 na 商 ry 城 10. 测量结束 HC32F002 系列用户手册 Beta1.0 Page 176 of 415 13.3.6 模式 2/3 比较捕获模式 13.3.6.1 计数器 Period reload ARR RW TCLK flt FLT.FLTET ETR CH0A CH0B Level Sel nedg gen clk CR.CT counter Ov/ud RCR uev i m 立 i 创 na 商 ry 城 ETR ARR buffer Prs flt FLT.FLTET FTL.FLTA0 FTL.FLTB0 FLT.ETP Pedg gen Level Sel FLT.ETP FTL.CCPA0 FLT.CCPB0 MSCR.SMS=3 MSCR.TS 图 13-13 计数器框图 计数器主要部分是一个 16 位计数器与相关的自动装载寄存器。这个计数器可以向上计 数(模式 2),向下计数(模式 2)或向上向下双向计数(模式 3)。计数器的时钟可以 由预分频器 PRS 分频得到,也可以选择 ETR 输入外部时钟或者通过 MSCR.TS 选择的 外部输入信号和内部互联信号。  计数器基本单元包括: el  计数器寄存器 CNT  预分频寄存器 CR.PRS Pr  自动装载寄存器 ARR  重复次数寄存器 RCR  时钟选择控制寄存器 FLT,CR0,MSCR,CR 自动装载寄存器具有缓存功能,计数器产生事件更新后重载值从缓存寄存器更新到计 to 数器。当计数器停止状态或者缓存功能关闭状态,自动装载寄存器立刻更新到缓存寄 存器。当定时器处于运行状态并且缓存功能有效时,写入到自动装载寄存器的值不会 立刻更新到缓存寄存器,当事件更新后才从自动装载寄存器更新到缓存寄存器。 时钟选择及门控功能,触发功能,复位功能参考模式 2/3 从模式章节。 HC32F002 系列用户手册 Beta1.0 Page 177 of 415 13.3.6.2 计数器波形 模式 2 为锯齿波计数波形,通过设置 CR.DIR 可以更改计数方向。 设置 CR.DIR 为 0 时,计数器为递增计数模式,这种模式下,计数器从 0 计数到自动 重载值(ATIMx_ARR),然后重新 从 0 开始计数并生成计数器上溢事件。如果使用 重复计数器,则当递增计数的重复次数达到重复计数器寄存器中编程的次数加一次 i m 立 i 创 na 商 ry 城 (ATIMx_RCR+1) 后,将生成更新事件 (UEV)。否则,将在每次计数器上溢时产生更 新事件。 将 ATIMx_CR 寄存器的 UG 位置 1(通过软件或使用从模式控制器)时,也将产生 更新事件。 发生更新事件时,将更新所有寄存器且将更新标志(ATIMx_IFR 寄存器中的 UIF 位) 置 1(取决于 URS 位):  自动重载缓存值将以 ARR 寄存器值进行更新  比较缓存值将以比较寄存器 CCRxy 进行更新 以下图示显示 ARR=0x2C 时不同计数方向的计数器波形: el clk Pr cten count 29 2A 2B 2C 0 1 2 3 4 5 overlow uev to UIF 图 13-14 无预分频的向上计数 计数溢出周期时钟个数为 ARR+1, HC32F002 系列用户手册 Beta1.0 Page 178 of 415 clk cten count 2A 2B 2C 0 1 2 3 4 i m 立 i 创 na 商 ry 城 overlow uev UIF 图 13-15 带预分频的上计数 clk cten 3 2 1 0 2c 2b 2a 29 28 27 el count overlow Pr uev 图 13-16 不带预分频的下计数 to UIF HC32F002 系列用户手册 Beta1.0 Page 179 of 415 clk cten count 2 1 0 2C 2B 2A 29 28 i m 立 i 创 na 商 ry 城 overlow uev UIF 图 13-17 带预分频的下计数 clk cten count overlow 2B 2C 2B 2A 2 1 0 1 2 3 el underflow 2A Pr uev UIF 图 13-18 带预分频的上下计数 CNT[15:0] to FFFFH ARR 0000H T CR.CTEN 图 13-19 边沿对齐计时器波形( DIR =1) HC32F002 系列用户手册 Beta1.0 Page 180 of 415 CNT[15:0] FFFFH ARR 0000H T CR.CTEN i m 立 i 创 na 商 ry 城 图 13-20 边沿对齐计时器波形( DIR =0) 模式 3 为三角波计数波形,计数方向控制位只读,不可以更改计数方向。 中心对齐(三角波)模式下 CR.DIR 方向位是只读的。写值无效。从其他模式切换到 中心对齐模式 DIR 自动清 0。软件事件更新和从模式外部触发复位模式 DIR 自动清零。 FFFFH CNT[15:0] ARR 0000H T CR.CTEN el 图 13-21 中心对齐计数器波形 13.3.6.3 重复计数 Pr 重复计数器使用计数器的溢出进行向下计数。计数到 0 时,即计数器发生重复寄存器 设置的值加一次溢出时。当缓存寄存器使能时,周期重载寄存器更新到周期缓存寄存 器。比较模式下比较寄存的值更新到比较缓存寄存中。 重复计数器在下面条件成立时递减 to  上计数模式下每次计数器溢出时  下计数模式下每次计数器下溢时  三角波模式下每次上溢出和每次下溢出时 HC32F002 系列用户手册 Beta1.0 Page 181 of 415 中心对齐 count 边沿对齐上计数 边沿对齐下计数 RCR=0 UEV RCR=1 UEV RCR=2 i m 立 i 创 na 商 ry 城 UEV RCR=3 UEV RCR=4 UEV Pr el 图 13-22 重复计数器产生更新时序(RCR.UD=0 RCR.OV=0) 图 13-23 重复计数器产生更新时序(RCR.UD!=0 RCR.OV!=0) to 除了上下溢出通过重复计数器可以产生事件更新 UEV 外,还可以通过写寄存器 CR.UG 产生软件及从模式复位事件更新 UEV;这时需要配置 CR.URS。 HC32F002 系列用户手册 Beta1.0 Page 182 of 415 13.3.6.4 数据缓存 自动重载数据 ARR 与比较寄存器都可以配置缓存功能,当缓存功能有效时,当发生 UEV 事件更新时,写入的周期值 ARR 与比较值 CCR 才会生效。 0xA00 0x800 0x600 CTEN UEV ARR ARRBUF i m 立 i 创 na 商 ry 城 自动重载值在不同计数模式下的更新时序图如下 0x800 0xA00 0x800 0x600 0xA00 0x600 图 13-24 三角波模式下缓存使能 Pr el 0xA00 0x800 0x600 CTEN UEV 0x800 0xA00 0x600 ARRBUF 0x800 0xA00 0x600 ARR to 图 13-25 三角波模式下缓存无效 HC32F002 系列用户手册 Beta1.0 Page 183 of 415 0xA00 0x800 0x600 CTEN ARR ARRBUF i m 立 i 创 na 商 ry 城 UEV 0x800 0xA00 0x800 0x600 0xA00 0x600 图 13-26 锯齿波模式下上计数缓存使能 0xA00 0x800 0x600 CTEN UEV 0xA00 0x600 ARRBUF 0x800 0xA00 0x600 el 0x800 Pr ARR 图 13-27 锯齿波模式下上计数缓存无效 to 0xA00 0x800 0x600 CTEN UEV ARR ARRBUF 0x800 0x800 0xA00 0x600 0xA00 0x600 图 13-28 锯齿波模式下计数缓存使能 HC32F002 系列用户手册 Beta1.0 Page 184 of 415 0xA00 0x800 0x600 CTEN i m 立 i 创 na 商 ry 城 UEV 0x800 0xA00 0x600 ARRBUF 0x800 0xA00 0x600 ARR 图 13-29 锯齿波模式下计数缓存无效 在三角波模式与锯齿波上计数模式时,如果缓存不使能,更改的 ARR 时,当前计数器 的值要小于要更改的 ARR 周期值,否则当前周期会计数到 0xFFFF。 比较缓存与周期缓存更新状态一致,这里不一一列出时序图。 el 0x800 0x600 0x400 Pr CTEN UEV ARR CCR 0x800 0x600 0x400 0x600 0x400 0x600 to CCRBUF 0x600 OCREF 图 13-30 锯齿波模式下计数比较缓存使能 HC32F002 系列用户手册 Beta1.0 Page 185 of 415 13.3.6.5 比较输出 OCREF 比较输出 OCREFA 可以配置为单点比较,使用比较寄存器 CCRA 控制 OCREFA 的输 出;OCREFA 的比较输出也可以配置为双点比较,使用比较寄存器 CCRA,CCRB 一起 控制 OCREFA 的比较输出。 OCREFB 的比较输出只能使用单点比较,使用比较寄存器 CCRB 控制 OCREFB 的比 i m 立 i 创 na 商 ry 城 较输出。 CR.OCCS ForceA CCPA REF_CLR ETFP CNT>CCRA CNT=CCRA CNT>CCRB Output mode ctrl FLT.OCMA OCREFA Comp& Dead-time generate Brake ctrl CHA Brake ctrl CHB COMP CR.PWM2S CR.OCCS ForceB REF_CLR CCPB ETFP CNT>CCRB Output mode ctrl OCREFB OCMx=000/001时为强制输出(Forcex) el CNT=CCRB FLT.OCMB Pr 图 13-31 OCREF 输出框图 OCREF 输出使用 OCMx 选择 000:强制为 0 001:强制为 1 to 010:比较匹配时强制为 0 011:比较匹配时强制为 1 100:比较匹配时翻转 101:比较匹配时输出一个计数周期的高电平 110:PWM 模式 1 单点比较: 上计数时 CNTCCRxy 输出为低电平 HC32F002 系列用户手册 Beta1.0 Page 186 of 415 双点比较: 1)锯齿波上计数 CCRxACCRA CNT=CCRA Output mode ctrl CNT>CCRB FLT.OCMA CR.OCCS REF_CLR ETFP CNT>CCRB CNT=CCRB CHA i m 立 i 创 na 商 ry 城 Brake ctrl OCREFA Comp& Dead-time generate COMP Brake ctrl CR.PWM2S ForceB Output mode ctrl OCREFB CHB CCPB OCMx=000/001时为强制输出(Forcex) FLT.OCMB el 图 13-39 互补 PWM 输出框图 Pr OCREFA CHA CHB to 图 13-40 互补PWM输出波形图 HC32F002 系列用户手册 Beta1.0 Page 190 of 415 13.3.6.8 有死区的 PWM 输出 在互补 PWM 输出模式下可以设置死区功能。 OCREFA CHA dt dt dt CHB dt dt i m 立 i 创 na 商 ry 城 图 13-41 互补PWM输出波形图 死区时间使用 8 位 DTR 控制,死区时间 dt 与 DTR 的关系如下 DTR[7] =0 T=DTR[6:0]+2 2-129 step=1 DTR[7:6] =10 T={DTR[5:0]+64}*2 +2 130-256 step=2 DTR[7:5] =110 T={DTR[4:0]+32}*8 +2 258-506 step=8 DTR[7:5] =111 T={DTR[4:0]+32}*16 +2 514-1010 step=16 时钟 周期 Pr el 1010 506 to 256 129 2 0x7F 0xBF 0xDF 0xFF DTR 100M clock 死区时间由2.56us调整为10.1us 图 13-42 死区时间 HC32F002 系列用户手册 Beta1.0 Page 191 of 415 13.3.6.9 单脉冲输出 单脉冲模式 (ONE SHOT) 是上述 PWM 模式的一个特例。在这种模式下,计数器可以 在一个激励信号的触发下启动,并可在一段可编程的延时后产生一个脉宽可编程的脉 冲。 可以通过从模式控制器启动计数器。可以在输出比较模式或 PWM 模式下生成波形。 i m 立 i 创 na 商 ry 城 将 ATIMx_M23CR 寄存器中的 ONESHOT 位置 1,即可选择单脉冲模式。这样,发生下 一更新事件 UEV 时,计数器将自动停止。 单脉冲模式在锯齿波下计数模式计数器初值不要设置为 0,上计数模式计数值不要设置 到大于等于 ARR。 只有当比较值与计数器初始值不同时,才能正确产生输出脉冲。启动前(定时器等待 触发时),必须进行如下配置:  递增计数时:CNT1时有 效),下一个uev事件后继续比较输出 CSG 保留 14 Oneshot 单次触发模式选择 el 15 1:发生事件更新后定时器停止。 Pr 0:循环计数 13:12 MODE 工作模式 00 定时器模式0; 01 PWC模式 10 锯齿波模式; 11三角波模式 11 UDE 保留位 10 UIE UIE 更新中断使能 to 1:使能更新中断 0:禁止更新中断 9 8 7 CFG 保留位 CRG 保留位 BUFPEN 重载缓存使能 1:周期缓存使能,写入后下个事件更新后才影响到周期值。 0:周期缓存无效,写入后立刻影响周期值 6:4 PRS 内部时钟分频选择 000:1; 100:16; HC32F002 系列用户手册 Beta1.0 001:2; 101:32; 010:4; 110:64; 011:8; 111:256; Page 222 of 415 3 PWM2S OCREFA双点比较选择(缺省值为1) 0:双点比较使能,使用CCRA,CCRB比较控制OCREFA输出 1:单点比较使能,只使用CCRA比较控制OCREFA输出 注:OCREFB不受影响,仍然使用CCRB控制OCREFB输出 2 计数时钟选择 CT 0: 内部计数时钟TCLK 1: 外部计数时钟ETR; 1 Comp PWM互补输出模式选择 i m 立 i 创 na 商 ry 城 0:独立PWM输出 1:互补PWM输出 0 CTEN 定时器使能 0:禁止; 1:使能 to Pr el 可以外部触发使能,在oneshot模式下结束时该位自动清零 HC32F002 系列用户手册 Beta1.0 Page 223 of 415 13.4.3.4 中断标志寄存器(ATIMx_IFR) 偏移地址:0x010 复位值: 0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 17 16 CA3F UndF OVF RO RO RO 1 0 i m 立 i 创 na 商 ry 城 Reserved 18 15 14 13 12 11 10 9 8 7 6 5 4 3 2 TIF BIF CB2E CB1E CB0E CA2E CA1E CA0E CB2F CB1F CB0F CA2F CA1F CA0F RO RO RO RO RO RO RO 位 符号 描述 31:19 Reserved 保留位 18 CA3F 通道CH3比较匹配标志 17 UndF 下溢出中断标志 16 OVF 上溢出中断标志 15 TIF 触发中断标志 14 BIF 13 CB2E RO RO RO RO RO RO UIF Res. RO 刹车中断标志 通道CH2B捕获数据丢失标志 0:无数据丢失;1:数据丢失 CB1E 通道CH1B捕获数据丢失标志 el 12 0:无数据丢失;1:数据丢失 11 CB0E 通道CH0B捕获数据丢失标志 0:无数据丢失;1:数据丢失 通道CH2A捕获数据丢失标志 Pr 10 CA2E 0:无数据丢失;1:数据丢失 9 CA1E 通道CH1A捕获数据丢失标志 0:无数据丢失;1:数据丢失 8 CA0E 通道CH0A捕获数据丢失标志 0:无数据丢失;1:数据丢失 通道CH2B发生捕获/比较匹配标志 to 7 CB2F 0:没有发生 1:发生 6 CB1F 通道CH1B发生捕获/比较匹配标志 0:没有发生 1:发生 5 CB0F 通道CH0B发生捕获/比较匹配标志 0:没有发生 1:发生 4 CA2F 通道CH2A发生捕获/比较匹配标志 0:没有发生 1:发生 3 CA1F 通道CH1A发生捕获/比较匹配标志 HC32F002 系列用户手册 Beta1.0 Page 224 of 415 RO 0:没有发生 1:发生 2 CA0F 通道CH0A发生捕获/比较匹配标志 0:没有发生 1:发生 1 Reserved 保留位 0 UIF 事件更新中断标志 to Pr el i m 立 i 创 na 商 ry 城 0:没有发生 1:发生 HC32F002 系列用户手册 Beta1.0 Page 225 of 415 13.4.3.5 中断标志清除寄存器(ATIMx_ICLR) 偏移地址:0x014 复位值: 0x0000 FFFF 31 30 29 28 27 26 25 24 23 22 21 20 19 15 14 TIF BIF R1W0 R1W0 16 CA3F UndF OVF R1W0 R1W0 R1W0 1 0 13 12 11 10 9 8 7 6 5 4 3 2 CB2E CB1E CB0E CA2E CA1E CA0E CB2F CB1F CB0F CA2F CA1F CA0F R1W0 R1W0 R1W0 R1W0 R1W0 R1W0 R1W0 R1W0 位 符号 描述 31:19 Reserved 保留位 18 CA3F 通道CH3比较匹配标志清除,写0清除 17 UndF 下溢出中断标志清除 16 OVF 上溢出中断标志清除 15 TIF 触发中断标志清除,写0清除 14 BIF 13 CB2E 通道CH2B捕获数据丢失标志清除,写0清除 12 CB1E 通道CH1B捕获数据丢失标志清除,写0清除 11 CB0E 通道CH0B捕获数据丢失标志清除,写0清除 R1W0 R1W0 R1W0 UIF Res. R1W0 el 刹车中断标志清除,写0清除 10 CA2E 通道CH2A捕获数据丢失标志清除,写0清除 9 CA1E 通道CH1A捕获数据丢失标志清除,写0清除 CA0E 通道CH0A捕获数据丢失标志清除,写0清除 Pr 8 17 i m 立 i 创 na 商 ry 城 Reserved 18 CB2F 通道CH2B捕获/比较匹配标志清除,写0清除 6 CB1F 通道CH1B捕获/比较匹配标志清除,写0清除 5 CB0F 通道CH0B捕获/比较匹配标志清除,写0清除 4 CA2F 通道CH2A捕获/比较匹配标志清除,写0清除 3 CA1F 通道CH1A捕获/比较匹配标志清除,写0清除 2 CA0F 通道CH0A捕获/比较匹配标志清除,写0清除 1 0 to 7 Reserved 保留 UIF 事件更新中断清除,写0清除 HC32F002 系列用户手册 Beta1.0 Page 226 of 415 R1W0 13.4.3.6 主从模式控制寄存器(ATIMx_MSCR) 偏移地址:0x018 复位值: 0x0000 0000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 6 5 4 3 2 1 0 Reserved 14 13 12 11 10 9 8 7 i m 立 i 创 na 商 ry 城 15 Resverved IB0S IA0S SMS TS MSM CCDS MMS RW RW RW RW RW RW RW 位 符号 描述 31:13 Reserved 保留位 12 IB0S CH0B 输入选择 0:CH0B; 1:内部触发TS选择信号; 11 IA0S IA0 输入选择 0: CH0A 1: CH0A CH1A CH2A XOR 注:设置为1后端口的任意一个端口变化将导致输入变化 10:8 SMS 从模式功能选择 000: 使用内部时钟; el 001: 复位功能; 010: 触发模式; 011: 外部时钟模式 Pr 100: 正交编码计数模式1 ; 101: 正交编码计数模式2; 110: 正交编码计数模式3; 111: 门控功能 7:5 TS 触发选择 to 000:端口ETR的滤波相位选择后的信号ETFP ; 001:内部互联信号 ITR0 010:内部互联信号 ITR1; 011:内部互联信号 ITR2; 100:内部互联信号 ITR3; 101:端口CH0A的边沿信号; 110:端口CH0A的滤波相位选择后的信号IAFP 111:端口CH0B的滤波相位选择后的信号IBFP; 4 MSM 主从选择 HC32F002 系列用户手册 Beta1.0 Page 227 of 415 0:无延时 1:延时使能,使主送计数器同时启动. 注:使用触发模式时,从模式设置为0,主模式设置为1,可以使主从计数同时启动 3 CCDS 比较模式下 DMA 比较触发选择; 0 :比较匹配触发DMA; 1: 比较匹配不触发DMA,事件更新代替比较匹配触发DMA 2:0 MMS 主模式输出选择,用于内部互联,连接到其他定时器的ITRx 000:软件更新UG,写CR.UG i m 立 i 创 na 商 ry 城 001:定时器使能CTEN 010:定时器事件更新UEV; 011:比较匹配选择输出CMPSO; 100:定时器比较参数输出OCREF0A 101:定时器比较参数输出OCREF1A 110:定时器比较参数输出OCREF2A to Pr el 111:定时器比较参数输出OCREF0B HC32F002 系列用户手册 Beta1.0 Page 228 of 415 13.4.3.7 输出控制/输入滤波(ATIMx_FLTR) 偏移地址:0x01C 复位值:0x00000000 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 FLTET BKP FLTBK CCPB2 OCMB2 CCPA2 OCMA2 - - - - - FLTB2 - FLTA2 RW RW RW RW RW RW RW RW 15 14 CCPB1 RW i m 立 i 创 na 商 ry 城 ETP 13 12 11 10 9 8 7 6 5 4 3 2 1 OCMB1 CCPA1 OCMA1 CCPB0 OCMB0 CCPA0 OCMA0 FLTB1 - FLTA1 CCPB0 FLTB0 CCPA0 FLTA0 RW RW RW RW RW RW RW 位 符号 描述 31 ETP ETR 输入相位选择 0:同相位; 1:反向输入; 30:28 FLTET ETR滤波控制 滤波设置 0xx:滤波无效 el 100:pclk 3个连续有效; 101:pclk/4 3个连续有效 110:pclk/16 3个连续有效; 111:pclk/64 3个连续有效 BKP 刹车BK输入相位选择 Pr 27 0:同相位; 1:反向输入; 26:24 FLTBK 刹车输入滤波控制 滤波设置 0xx:滤波无效 to 100:pclk 3个连续有效; 101:pclk/4 3个连续有效 110:pclk/16 3个连续有效; 111:pclk/64 3个连续有效 23 CCPB2 比较功能:CH2B通道比较输出相位控制 0:正常输出; 1:反向输出 22:20 OCMB2 比较功能:CH2B通道比较控制;参考OCMB0 HC32F002 系列用户手册 Beta1.0 Page 229 of 415 16 0 19 FLTB2 捕获功能:CH2B输入通道滤波设置,参考FLTBK CCPA2 比较功能:CH2A通道比较输出相位控制 0:正常输出; 1:反向输出 18:16 15 OCMA2 比较功能:CH2A通道比较控制;参考OCMB0 FLTA2 捕获功能:CH2A输入通道滤波设置,参考FLTBK CCPB1 比较功能:CH1B通道比较输出相位控制 0:正常输出; 14:12 11 i m 立 i 创 na 商 ry 城 1:反向输出 OCMB1 比较功能:CH1B通道比较控制;参考OCMB0 FLTB1 捕获功能:CH1B输入通道滤波设置,参考FLTBK CCPA1 比较功能:CH1A通道比较输出相位控制 0:正常输出; 1:反向输出 10:8 7 OCMA1 比较功能:CH1A通道比较控制;参考OCMB0 FLTA1 捕获功能:CH1A输入通道滤波设置,参考FLTBK CCPB0 比较功能:输出比较模式 CCPBx比较输出CHBx端口极性控制 0:正常输出; 1:反向输出 编码计数与从模式门控功能:输入相位控制 CCPB0从模式门控,复位,外部触发,外部时钟使用CH0B端口输入极性控制 0:正常输入; el 1:反向输入 6:4 OCMB0 比较功能:CH0B通道比较控制 FLTB0 000:强制为0 Pr 001:强制为1 010:比较匹配时强制为0 011:比较匹配时强制为1 100:比较匹配时翻转 101:比较匹配时输出一个计数周期的高电平 110:PWM 模式1 to 单点比较: 上计数时CNTCCRxy输出为低电平 双点比较: 1)锯齿波上计数 CCRxA=1.7V ENOB 9.5 Bit 9.4 Bit 63 dB 63 dB REF=EXREF Effective Bits 1Msps@VCC>=2.7V i m 立 i 创 na 商 ry 城 500Ksps@VCC>=2.4V 200Ksps@VCC>=1.7V REF=VCC 1Msps@VCC>=2.7V 500Ksps@VCC>=2.4V 200Ksps@VCC>=1.7V SNR Signal to Noise REF=EXREF Ratio 1Msps@VCC>=2.7V 500Ksps@VCC>=2.4V 200Ksps@VCC>=1.7V REF=VCC DNL(1) INL(1) 500Ksps; linearity VREF=EXREF/AVCC -1 1 LSB -2 2 LSB Offset error -1 1 LSB Gain error -1 1 LSB 500Ksps; Integral non-linearity VREF=EXREF/AVCC el Eo(1) Differential non- Eg(1) Pr 1. 由设计保证,不在生产中测试。 2. ADC 的典型应用如下图所示: VAIN VCC RAIN RADC AINX 12 bit converter Ileak ag e:+ /-50nA Cpara siti c CADC to 12 bit SAR ADC 对于 0.5LSB 采样误差精度要求的条件下,外部输入阻抗的计算公式如下: R AIN = M − R ADC 𝐹𝐴𝐷𝐶 ∗ 𝐶𝐴𝐷𝐶 ∗ (N + 1) ∗ ln(2) 其中𝐹𝐴𝐷𝐶 为 ADC 时钟频率,寄存器 ADC_CR0[4:2]可设定其与 PCLK 的关系,如下 HC32F002 系列用户手册 Beta1.0 Page 399 of 415 表。 下表为 ADC 时钟频率𝐹𝐴𝐷𝐶 和 PCLK 分频比关系: ADC_CR0[4:2] N 000 1 001 2 010 4 011 8 i m 立 i 创 na 商 ry 城 …… 111 128 M 为采样周期个数,由寄存器 ADC_CR0[13:12]设定。 下表为采样时间𝑡𝑠𝑎 和 ADC 时钟频率𝐹𝐴𝐷𝐶 的关系: ADC_CR0[13:12] M 00 6 01 8 10 11 11 12 下表为 ADC 时钟频率𝐹𝐴𝐷𝐶 和外部电阻𝑅𝐴𝐼𝑁 的关系(M=12,采样误差 0.5LSB 的条件 下): 𝐹𝐴𝐷𝐶 (KHz) 10 24000 30 22000 50 14000 80 9000 100 7000 120 6000 150 5000 Pr el 𝑅𝐴𝐼𝑁 (KOhm) 对于上述典型应用,应注意: to - 尽量减小 ADC 输入端口𝐴𝐼𝑁𝑋 的寄生电容𝐶𝑃𝐴𝑅𝐴𝐶𝐼𝑇𝐼𝐶 ; - 除了考虑𝑅𝐴𝐼𝑁 值外,如果信号源𝑉𝐴𝐼𝑁 的内阻较大时,也需要加入考虑。 HC32F002 系列用户手册 Beta1.0 Page 400 of 415 25.3.15 TIM 定时器特性 有关输入输出复用功能引脚(输出比较、输入捕获、外部时钟、PWM 输出)的特性 详情,参见下表。 参数 tres 定时器分辨时间 fext 外部时钟频率 ResTim Tcounter TMAX_COUNT 条件 fTIMCLK=48MHz 最小值 最大值 单位 1 tTIMCLK 20.8 ns 0 fTIMCLK/2 MHz 0 24 MHz 16 位 32 位 1 65536 tTIMCLK 0.0208 1363 us 16777216 tTIMCLK 349.5 ms 最大值 单位 i m 立 i 创 na 商 ry 城 符号 fTIMCLK=48MHz 定时器分辨率 自由计数 选择内部时钟时,16 位计数 器时钟周期 fTIMCLK=48MHz 最大可能计数 fTIMCLK=48MHz 表 25-2 高级定时器(ATIM)特性 1. 由设计保证,不在生产中测试。 符号 参数 条件 定时器分辨时间 fTIMCLK=48MHz el tres 外部时钟频率 fext Tcounter TMAX_COUNT 1 tTIMCLK 20.8 ns 0 fTIMCLK/2 MHz 0 24 MHz 16 位 1 65536 tTIMCLK 0.0208 1363 us 2147483648 tTIMCLK 44.7 s 定时器分辨率 Pr ResTim fTIMCLK=48MHz 最小值 选择内部时钟时,16 位计数 器时钟周期 fTIMCLK=48MHz 最大可能计数 fTIMCLK=48MHz 表 25-3 通用定时器特性 to 1. 由设计保证,不在生产中测试。 HC32F002 系列用户手册 Beta1.0 Page 401 of 415 符号 参数 tres 定时器分辨时间 fext 外部时钟频率 ResTim 定时器分辨率 TMAX_COUNT 最小值 fTIMCLK=48MHz fTIMCLK=48MHz 选择内部时钟时,16 位计数 器时钟周期 fTIMCLK=48MHz 最大可能计数 最大值 单位 1 tTIMCLK 20.8 ns 0 fTIMCLK/2 MHz 0 24 MHz 16 位 1 65536 tTIMCLK 0.0208 1363 us 2147483648 tTIMCLK i m 立 i 创 na 商 ry 城 Tcounter 条件 fTIMCLK=48MHz 44.7 s 表 25-4 低功耗定时器特性 1. 由设计保证,不在生产中测试。 符号 参数 条件 最小值 最大值 单位 tres WDT 溢出时间 fWDTCLK=32.8KHz 0.13 64000 ms 表 25-5 IWDT 特性 1. 由设计保证,不在生产中测试。 参数 条件 最小值 最大值 单位 tres WDT 溢出时间 fWDTCLK=48MHz 0.085 699 ms el 符号 表 25-6 WWDT 特性 to Pr 1. 由设计保证,不在生产中测试。 HC32F002 系列用户手册 Beta1.0 Page 402 of 415 25.3.16 通信接口 25.3.16.1 I2C 特性 I2C 接口特性如下表: 符号 标准模式(100K) 快速模式(400K) 高速模式(1M) 单 最小值 最小值 最小值 位 参数 最大值 最大值 最大值 SCL 时钟低时间 4.7 1.25 0.5 us tSCLH SCL 时钟高时间 4.0 0.6 0.26 us tSU.SDA SDA 建立时间 250 100 50 ns tHD.SDA SDA 保持时间 0 0 0 us tHD.STA 开始条件保持时间 4.0 0.6 0.26 us tSU.STA 重复的开始条件建立时间 2.5 0.6 0.25 us tSU.STO 停止条件建立时间 4.0 0.6 0.26 us 4.7 1.3 0.5 us i m 立 i 创 na 商 ry 城 tSCLL 总线空闲(停止条件至开 tBUF 始条件) I2C 接口特性 el 表 25-7 开始条件 Pr SDA tHD.STA 。。。 tSU.SDA tHD.SDA 。。。 SCL 重复开始条件 tSCLH tSCLL 。。。SDA to tSU.STA 停止条件 开始条件 tBUF tSU.STO 。。。SCL 1. 由设计保证,不在生产中测试。 图 25-3 HC32F002 系列用户手册 Beta1.0 I2C 接口时序 Page 403 of 415 25.3.16.2 SPI 特性 符号 参数 条件 主机模式 从机模式 tc(SCK) 串行时钟的周期 fPCLK = 48MHz 从机模式 fPCLK = 16MHz 主机模式 串行时钟的高电平时间 tw(SCKL) 串行时钟的低电平时间 最大值 单位 62.5 ns 125 ns 250 ns 0.5×tc(SCK) ns i m 立 i 创 na 商 ry 城 tw(SCKH) 最小值 从机模式 0.5×tc(SCK) ns 主机模式 0.5×tc(SCK) ns 从机模式 0.5×tc(SCK) ns tsu(NSS) 从机选择的建立时间 从机模式 0.5×tc(SCK) ns th(NSS) 从机选择的保持时间 从机模式 0.5×tc(SCK) ns tv(MO) 主机数据输出的生效时间 fPCLK = 48MHz th(MO) 主机数据输出的保持时间 fPCLK = 48MHz tv(SO) 从机数据输出的生效时间 fPCLK = 48MHz th(SO) 从机数据输出的保持时间 fPCLK = 48MHz tsu(MI) 3 2 50 ns ns ns ns 主机数据输入的建立时间 10 ns th(MI) 主机数据输入的保持时间 2 ns tsu(SI) 从机数据输入的建立时间 10 ns th(SI) 从机数据输入的保持时间 2 ns Pr el 30 1. 由设计保证,不在生产中测试。 SPI 接口特性 to 表 25-8 HC32F002 系列用户手册 Beta1.0 Page 404 of 415 SPI 接口信号的波形和时序参数如下: tc(SCK) CPHA = 0 CPOL = 0 tw(SCKH) tw(SCKL) CPHA = 0 CPOL = 1 i m 立 i 创 na 商 ry 城 CPHA = 1 CPOL = 0 CPHA = 1 CPOL = 1 tsu(MI) th(MI) MISO INPUT tv(MO) th(MO) 图 25-4 SPI 时序图(主机模式) MOSI OUTPUT el NSS tsu(NSS) CPHA = 0 CPOL = 0 tc(SCK) th(NSS) Pr tw(SCKH) tw(SCKL) CPHA = 0 CPOL = 1 th(SO) tv(SO) MISO OUTPUT th(SI) to tsu(SI) th(MO) MOSI INPUT 图 25-5 HC32F002 系列用户手册 Beta1.0 SPI 时序图(从机模式 CPHA=0) Page 405 of 415 NSS tsu(NSS) tc(SCK) th(NSS) CPHA = 1 CPOL = 0 tw(SCKL) tw(SCKH) CPHA = 1 CPOL = 1 th(SO) i m 立 i 创 na 商 ry 城 tv(SO) MISO OUTPUT tsu(SI) th(SI) MOSI INPUT SPI 时序图(从机模式 CPHA=1) to Pr el 图 25-6 HC32F002 系列用户手册 Beta1.0 Page 406 of 415 封装尺寸 26 QFN20 封装 D QFN20 (3x3) millimeter 20 Symbol A Max 0.70 0.75 0.80 A1 -- 0.02 0.05 b 0.15 0.20 0.25 c 0.18 0.20 0.25 D 2.90 3.00 3.10 D2 1.55 1.65 1.75 E 2 Nom i m 立 i 创 na 商 ry 城 1 Min 0.40BSC Ne 1.60BSC Nd 1.60BSC el A1 A e E 2.90 3.00 3.10 E2 1.55 1.65 1.75 L 0.35 0.40 0.45 h 0.20 0.25 0.30 20 L Pr Nd h h 1 L/F 载体尺寸 (Mil) 75 x 75 to E2 Ne 2 e EXPOSED THERMAL PAD ZONE HC32F002 系列用户手册 Beta1.0 b BOTTOM VIEW Page 407 of 415 QFN24 封装 D QFN24 (4x4) millimeter Symbol Nom Max A 0.70 0.75 0.80 A1 0 0.02 0.05 i m 立 i 创 na 商 ry 城 E Min b 0.20 0.25 0.30 c 0.18 0.20 0.25 D 3.90 4.00 4.10 D2 2.40 2.50 2.60 0.50BSC Ne 2.50BSC Nd 2.50BSC A1 C A e E 3.90 4.00 4.10 E2 2.40 2.50 2.60 L 0.35 0.40 0.45 h 0.30 0.35 0.40 D2 Pr EXPOSED THERMAL PAD ZONE h E2 Ne el L h L/F 载体尺 寸(Mil) e 110 x 110 b Nd to BOTTOM VIEW HC32F002 系列用户手册 Beta1.0 Page 408 of 415 TSSOP20 封装 TSSOP20 millimeter D Symbol A3 Min Nom Max A -- -- 1.20 A1 0.05 -- 0.15 A2 A i m 立 i 创 na 商 ry 城 A1 A2 0.80 1.00 1.05 A3 0.39 0.44 0.49 b 0.20 -- 0.28 b1 0.19 0.22 0.25 c 0.13 -- 0.18 c1 0.12 0.13 0.14 D 6.40 6.50 6.60 E 6.20 6.40 6.60 E1 4.30 4.40 4.50 0.25 c θ L L1 E1 E el e b B B Pr e 0.65BSC L 0.45 L1 θ 0.60 0.75 1.00REF 0 -- 8° NOTE: - Dimensions “D” and “E1” do not include mold to flash. HC32F002 系列用户手册 Beta1.0 Page 409 of 415 TSSOP24 封装 TSSOP24 millimeter Symbol Nom Max A -- -- 1.20 A1 0.05 -- 0.15 A2 0.80 0.90 1.00 Pr el i m 立 i 创 na 商 ry 城 Min to θ HC32F002 系列用户手册 Beta1.0 A3 0.34 0.39 0.44 b 0.20 -- 0.29 b1 0.19 0.22 0.25 c 0.10 -- 0.19 c1 0.10 0.13 0.15 D 7.70 7.80 7.90 E 6.20 6.40 6.60 E1 4.30 4.40 4.50 e 0.55 0.65 0.75 L 0.45 0.60 0.75 L1 1.00REF L2 0.25BSC θ 0 -- 8° NOTE: - Dimensions “D” and “E1” do not include mold flash. Page 410 of 415 27 附录 A SysTick 定时器 27.1 SysTick 定时器简介 OS 要想支持多任务,就需要周期执行上下文切换,这样就需要有定时器之类的硬件资 源打断程序执行。当定时器中断产生时,处理器就会在异常处理中进行 OS 任务调度, i m 立 i 创 na 商 ry 城 同时还会进行 OS 维护的工作。Cortex-M0 处理器中有一个称为 SysTick 的简单定时器, 用于产生周期性的中断请求。 SysTick 为 24 位的定时器,并且向下计数。定时器的计数减到 0 后,就会重新装载一 个可编程的数值,并且同时产生 SysTick 异常(异常编号为 15),该异常事件会引起 SysTick 异常处理的执行,这个过程是 OS 的一部分。 对于不需要 OS 的系统,SysTick 定时器也可以用作其他用途,比如定时、计时或者为 需要周期执行的任务提供中断源。SysTick 异常的产生是可控的,如果异常被禁止,仍 然可以用轮询的方法使用 SysTick 定时器,比如检查当前的计数值或者轮询计数标志。 27.2 设置 SysTick el 由于 SysTick 定时器的重载值和当前值在复位时都是未定义的,为了防止产生异常结 果,对 SysTick 的配置需要遵循一定的流程: Pr Step1:配置 SysTick->CTRL.ENABLE 为 0,禁止 SysTick。 Step2:配置 SysTick->CTRL.CLKSOURCE,选择 SysTick 的时钟源。 Step3:配置 SysTick->LOAD,选择 SysTick 的溢出周期。 Step4:向 SysTick->VAL 写入任意值,清零 SysTick->VAL 及 SysTick->CTRL. to COUNTFLAG。 Step5:配置 SysTick->CTRL.TICKINT 为 1,使能 SysTick 中断。 Step6:配置 SysTick->CTRL.ENABLE 为 1,使能 SysTick。 Step7:在中断服务程序中读取 SysTick->CTRL 以清除溢出标志。 注意:SysTick 溢出周期为 SysTick->LOAD+1,配置示例如下: 时钟源 HCLK 4MHz HC32F002 系列用户手册 Beta1.0 SysTick->LOAD 溢出周期 3999 1ms Page 411 of 415 27.3 SysTick 寄存器 地址 名称 CMSIS 符号 全名 0xE000 E010 SYS_CSR SysTick->CTRL SysTick控制和状态寄存器 0xE000 E014 SYS_RVR SysTick->LOAD SysTick重装载寄存器 0xE000 E018 SYS_CVR SysTick->VAL SysTick当前值寄存器 0xE000 E01C SYS_CALIR SysTick->CALIB SysTick校准值寄存器 i m 立 i 创 na 商 ry 城 27.3.1 SysTick 控制和状态寄存器(CTRL) 位 符号 功能描述 类型 复位值 31:17 Reserved - - - 16 COUNTFLAG SysTick定时器溢出标志 RO 0 1:SysTick定时器发生下溢出 0:SysTick定时器未发生溢出 读该寄存器,可清除COUNTFLAG标志 15:3 Reserved - - - 2 CLKSOURCE SysTick时钟源选择 RW 0 RW 0 RW 0 无参考时钟,始终以系统时钟作为SysTick时钟 1 TICKINT SysTick中断使能 1:使能中断 0 el 0:禁止中断 ENABLE SysTick定时器使能 1:使能SysTick Pr 0:禁止SysTick 27.3.2 SysTick 重载寄存器(LOAD) 符号 功能描述 类型 复位值 31:24 Reserved - - - 23:0 RELOAD SysTick 定时器重载值 RW 未定义 to 位 27.3.3 SysTick 当前值寄存器(VAL) 位 符号 功能描述 类型 复位值 31:24 Reserved - - - 23:0 CURRENT 读取该寄存器,获取SysTick定时器的当前计数值 RW 未定义 写任意值到该寄存器,清零该寄存器及COUNTFLAG HC32F002 系列用户手册 Beta1.0 Page 412 of 415 27.3.4 SysTick 校准值寄存器(CALIB) 位 符号 功能描述 类型 复位值 31 NOREF SysTick当前计数时钟标志 RO - 1:当前计数时钟为内核时钟 0:无功能 30 SKEW TENMS精度指示 RO 1:TENMS值代表粗略的10ms i m 立 i 创 na 商 ry 城 0:TENMS值代表精确的10ms Reserved - - 23:0 TENMS 10ms校准值 RO - to Pr el 29:24 HC32F002 系列用户手册 Beta1.0 Page 413 of 415 28 附录 B 文档约定 28.1 寄存器相关缩写词列表 寄存器说明中使用以下缩写词: 读写,软件可以读写这些位。 RO 只读,软件只能读取这些位。 WO W1 i m 立 i 创 na 商 ry 城 RW 只写,软件只能写入该位。读取该位时将返回无效数据。 只写 1,硬件自动清 0,写 0 无效 R0W1 软件读取该位为 0,写入 1 将该位清零。写入 0 对该位的值无影响。 RW0 软件可以读写该位,写 1 无效,写 0 清除 R1W0 软件读取该位为 1,,写入 0 将该位清零。写入 1 对该位的值无影响。 RC 软件可以读取该位。读取该位时,将自动清零。 写入“0”对该位的值无影响。 Res, Reserverd 保留位,必须保持复位值。 词汇表 el 28.2 本节简要介绍本文档中所用首字母缩略词和缩写词的定义: Pr Word:32 位数据。 Half Word:16 位数据。 Byte:8 位数据。 IAP(在应用中编程):IAP 是指可以在用户程序运行期间对微控制器的 Flash 进行重 to 新编程。 ICP(在电路编程):ICP 是指可以在器件安装于用户应用电路板上时使用 JTAG 协议、 SWD 协议或自举程序对微控制器的 Flash 进行编程。 AHB:高级高性能总线。 APB:高级外设总线。 DMA:直接存储器访问。 TIM:定时器 HC32F002 系列用户手册 Beta1.0 Page 414 of 415 版本记录 & 联系方式 修订日期 Beta1.0 2020/8/14 修订内容摘要 初稿发布。 i m 立 i 创 na 商 ry 城 版本 Pr el Beta 版本,仅供参考 如果您在购买与使用过程中有任何意见或建议,请随时与我们联系。 to Email:mcu@hdsc.com.cn 网址:http://www.hdsc.com.cn/mcu.htm 通信地址:上海市浦东新区中科路 1867 号 A 座 10 层 邮编:201203 HC32F002 系列用户手册 Beta1.0 Page 415 of 415
HC32F002C4PB-TSSOP20 价格&库存

很抱歉,暂时无法提供与“HC32F002C4PB-TSSOP20”相匹配的价格&库存,您可以联系我们找货

免费人工找货
HC32F002C4PB-TSSOP20
    •  国内价格
    • 1+3.34800
    • 10+2.64600
    • 30+2.33280
    • 74+1.95480
    • 518+1.79280
    • 1036+1.68480

    库存:0