HR8P506_Datasheet_C
32 位 MCU
HR8P506
数 据 手 册
产品简介
数据手册
产品规格
上海东软载波微电子有限公司
2016 年 1 月 27 日
V1.0
版权所有©上海东软载波微电子有限公司
1/309
http://www.essemi.com
HR8P506_Datasheet_C
东软载波 MCU 芯片使用注意事项
关于芯片的上/下电
东软载波 MCU 芯片具有独立电源管脚。当 MCU 芯片应用在多电源供电系统时,应先对 MCU 芯片上电,再对系统
其他部件上电;反之,下电时,先对系统其他部件下电,再对 MCU 芯片下电。若操作顺序相反则可能导致芯片内
部元件过压或过流,从而导致芯片故障或元件退化。具体可参照芯片的数据手册说明。
关于芯片的复位
东软载波 MCU 芯片具有内部上电复位。对于不同的快速上/下电或慢速上/下电系统,内部上电复位电路可能失效,
建议用户使用外部复位、下电复位、看门狗复位等,确保复位电路正常工作。在系统设计时,若使用外部复位电路,
建议采用三极管复位电路、RC 复位电路。若不使用外部复位电路,建议采用复位管脚接电阻到电源,或采取必要
的电源抖动处理电路或其他保护电路。具体可参照芯片的数据手册说明。
关于芯片的时钟
东软载波 MCU 芯片具有内部和外部时钟源。内部时钟源会随着温度、电压变化而偏移,可能会影响时钟源精度;
外部时钟源采用陶瓷、晶体振荡器电路时,建议使能起振延时;使用 RC 振荡电路时,需考虑电容、电阻匹配;采
用外部有源晶振或时钟输入时,需考虑输入高/低电平电压。具体可参照芯片的数据手册说明。
关于芯片的初始化
东软载波 MCU 芯片具有各种内部和外部复位。对于不同的应用系统,有必要对芯片寄存器、内存、功能模块等进
行初始化,尤其是 I/O 管脚复用功能进行初始化,避免由于芯片上电以后,I/O 管脚状态的不确定情况发生。
关于芯片的管脚
东软载波 MCU 芯片具有宽范围的输入管脚电平,建议用户输入高电平应在 VIHMIN 之上,低电平应在 VILMAX 之
下。避免输入电压介于 VIHMIN 和 VILMAX 之间,以免波动噪声进入芯片。对于未使用的输入/输出管脚,建议用户
设为输入状态,并通过电阻上拉至电源或下拉至地,或设置为输出管脚,输出固定电平并浮空。对未使用的管脚处
理因应用系统而异,具体遵循应用系统的相关规定和说明。
关于芯片的 ESD 防护措施
东软载波 MCU 芯片具有满足工业级 ESD 标准保护电路。
建议用户根据芯片存储/应用的环境采取适当静电防护措施。
应注意应用环境的湿度;建议避免使用容易产生静电的绝缘体;存放和运输应在抗静电容器、抗静电屏蔽袋或导电
材料容器中;包括工作台在内的所有测试和测量工具必须保证接地;操作者应该佩戴静电消除手腕环手套,不能用
手直接接触芯片等。
关于芯片的 EFT 防护措施
东软载波 MCU 芯片具有满足工业级 EFT 标准的保护电路。当 MCU 芯片应用在 PCB 系统时,需要遵守 PCB 相关
设计要求,包括电源、地走线(包括数字/模拟电源分离,单/多点接地等)
、复位管脚保护电路、电源和地之间的去
耦电容、高低频电路单独分别处理以及单/多层板选择等。
关于芯片的开发环境
东软载波 MCU 芯片具有完整的软/硬件开发环境,并受知识产权保护。选择上海东软载波微电子有限公司或其指定
的第三方公司的汇编器、编译器、编程器、硬件仿真器开发环境,必须遵循与芯片相关的规定和说明。
注:在产品开发时,如遇到不清楚的地方,请通过销售或其它方式与上海东软载波微电子有限公司联系
V1.0
版权所有©上海东软载波微电子有限公司
2/309
http://www.essemi.com
HR8P506_Datasheet_C
产品订购信息
型号
FLASH RAM I/O
HR8P506FHLQ
HR8P506FHLP
HR8P506FHN
46
36KB
HR8P506FHS
Example:
8KB
42
30
26
Timer
RTC UART SPI I2C
16-bit X
4, 32-bit
1
2
2
X1
HR8P
ADC
LCD/LEDC
LVD
12bit×16 8COM X 28SEG
1
12bit×12 8COM X 24SEG
12bit×10 8COM X 13SEG
12bit×11 8COM X 10SEG
506
F
H
封装类型
LQFP48
√
LQFP44
QFN32
SOP28
LQ
Package
LQ
LP
NK
SH
—
—
—
—
LQFP48
LQFP44
QFN32
SOP28
Code Size
H — 36K Bytes
Code MEM Type
F — FLASH
Part No.
Device Family
HR8P — 32-Bit MCU based on ARM Cortex-M0 CPU Core
地 址:中国上海市龙漕路 299 号天华信息科技园 2A 楼 5 层
邮 编:200235
E-mail:support@essemi.com
电 话:+86-21-60910333
传 真:+86-21-60914991
网 址:http://www.essemi.com
版权所有©
上海东软载波微电子有限公司
本资料内容为上海东软载波微电子有限公司在现有数据资料基础上慎重且力求准确无误编制而成,本资料中所记载
的实例以正确的使用方法和标准操作为前提,使用方在应用该等实例时请充分考虑外部诸条件,上海东软载波微电
子有限公司不担保或确认该等实例在使用方的适用性、适当性或完整性,上海东软载波微电子有限公司亦不对使用
方因使用本资料所有内容而可能或已经带来的风险或后果承担任何法律责任。基于使本资料的内容更加完善等原因,
上海东软载波微电子有限公司保留未经预告的修改权。使用方如需获得最新的产品信息,请随时用上述联系方式与
上海东软载波微电子有限公司联系。
V1.0
版权所有©上海东软载波微电子有限公司
3/309
http://www.essemi.com
HR8P506_Datasheet_C
修订历史
版本
修改日期
更改概要
V1.0
2016-04-15
初版发布
V1.0
版权所有©上海东软载波微电子有限公司
4/309
http://www.essemi.com
HR8P506_Datasheet_C
目 录
内容目录
第 1 章
1. 1
1. 2
1. 3
1. 4
1. 5
第 2 章
2. 1
2. 2
2. 3
2. 4
2. 5
2. 6
芯片简介 ................................................................................................................... 15
概述 .......................................................................................................................... 15
应用领域 ................................................................................................................... 18
结构框图 ................................................................................................................... 18
管脚分配图 ............................................................................................................... 20
1. 4. 1 LQFP48 封装图 ................................................................................................. 20
1. 4. 2 LQFP44 封装图 ................................................................................................. 21
1. 4. 3 QFN32 封装图 ................................................................................................... 22
1. 4. 4 SOP28 封装图 ................................................................................................... 23
管脚说明 ................................................................................................................... 23
1. 5. 1 管脚说明............................................................................................................ 23
1. 5. 2 管脚对照表 ........................................................................................................ 24
系统控制及操作特性 ................................................................................................. 27
系统控制保护 ............................................................................................................ 27
2. 1. 1 概述 ................................................................................................................... 27
2. 1. 2 特殊功能寄存器 ................................................................................................. 27
系统电源 ................................................................................................................... 28
2. 2. 1 结构框图............................................................................................................ 28
2. 2. 2 芯片供电电源 .................................................................................................... 28
系统复位 ................................................................................................................... 28
2. 3. 1 概述 ................................................................................................................... 28
2. 3. 2 结构框图............................................................................................................ 28
2. 3. 3 复位时序图 ........................................................................................................ 29
2. 3. 4 外部复位 MRSTN 参考...................................................................................... 29
2. 3. 5 特殊功能寄存器 ................................................................................................. 30
低电压监测(LVD) ................................................................................................. 31
2. 4. 1 概述 ................................................................................................................... 31
2. 4. 2 特殊功能寄存器 ................................................................................................. 31
系统低功耗操作模式 ................................................................................................. 32
2. 5. 1 概述 ................................................................................................................... 32
2. 5. 2 浅睡眠模式 ........................................................................................................ 33
2. 5. 3 深度睡眠模式 .................................................................................................... 33
2. 5. 4 睡眠模式的唤醒 ................................................................................................. 33
2. 5. 5 FLASH 存储器等待功能 .................................................................................... 34
2. 5. 6 特殊功能寄存器 ................................................................................................. 34
系统时钟 ................................................................................................................... 35
2. 6. 1 概述 ................................................................................................................... 35
2. 6. 2 结构框图............................................................................................................ 36
2. 6. 3 功能说明............................................................................................................ 36
2. 6. 3. 1 外部时钟 XTAL....................................................................................... 36
V1.0
版权所有©上海东软载波微电子有限公司
5/309
http://www.essemi.com
HR8P506_Datasheet_C
2. 6. 3. 2 内部高速时钟 HRC ................................................................................ 37
2. 6. 3. 3 内部低速时钟 LRC ................................................................................. 37
2. 6. 3. 4 锁相环 PLL............................................................................................. 37
2. 6. 3. 5 外部时钟停振检测 CCM......................................................................... 39
2. 6. 3. 6 时钟滤波 CLKFLT .................................................................................. 39
2. 6. 3. 7 睡眠模式时钟状态 .................................................................................. 39
2. 6. 3. 8 浅睡眠模式............................................................................................. 40
2. 6. 3. 9 深度睡眠模式 ......................................................................................... 40
2. 6. 4 特殊功能寄存器 ................................................................................................. 40
2. 6. 5 系统时钟应用说明 ............................................................................................. 47
2. 6. 5. 1 外部时钟 XTAL....................................................................................... 47
2. 6. 5. 2 内部高速时钟 HRC ................................................................................ 47
2. 6. 5. 3 内部低速时钟 LRC ................................................................................. 48
2. 6. 5. 4 锁相环 PLL............................................................................................. 48
2. 6. 5. 5 时钟滤波 CLKFLT .................................................................................. 50
2. 7
中断和异常处理 ........................................................................................................ 50
2. 7. 1 中断和异常 ........................................................................................................ 50
2. 7. 2 中断和异常向量的分配 ...................................................................................... 52
2. 7. 3 中断向量表的重映射 ......................................................................................... 53
2. 7. 4 特殊功能寄存器 ................................................................................................. 53
2. 8
系统控制块(SCB)................................................................................................. 62
2. 8. 1 概述 ................................................................................................................... 62
2. 8. 2 特殊功能寄存器 ................................................................................................. 62
2. 9
系统定时器(SYSTICK)......................................................................................... 65
2. 9. 1 概述 ................................................................................................................... 65
2. 9. 2 特殊功能寄存器 ................................................................................................. 66
2. 10
配置字软件控制 ........................................................................................................ 67
2. 11
定时器(T16N/T32N)同步启动关停控制 ............................................................... 68
2. 11. 1 概述 ................................................................................................................. 68
2. 11. 2 特殊功能寄存器 ............................................................................................... 68
第 3 章
存储器资源 ............................................................................................................... 71
3. 1
内部存储器地址映射 ................................................................................................. 71
3. 2
FLASH 存储器 .......................................................................................................... 71
3. 2. 1 芯片配置字 ........................................................................................................ 71
3. 2. 2 程序区 FLASH................................................................................................... 73
3. 2. 3 自编程操作(IAP) ........................................................................................... 74
3. 2. 3. 1 IAP 概述 .................................................................................................. 74
3. 2. 3. 2 IAP 操作流程 .......................................................................................... 74
3. 2. 3. 3 IAP 自编程硬件固化模块 ........................................................................ 77
3. 2. 3. 4 特殊功能寄存器 ..................................................................................... 77
3. 3
数据存储器(SRAM).............................................................................................. 81
3. 3. 1 SRAM 地址映射 ................................................................................................ 81
3. 3. 2 SRAM 位带扩展 ................................................................................................ 81
3. 4
外设寄存器 ............................................................................................................... 82
V1.0
版权所有©上海东软载波微电子有限公司
6/309
http://www.essemi.com
HR8P506_Datasheet_C
3. 5
第 4 章
4. 1
4. 2
4. 3
4. 4
4. 5
4. 6
第 5 章
5. 1
3. 4. 1 外设寄存器映射 ................................................................................................. 82
3. 4. 2 外设寄存器位带扩展 ......................................................................................... 82
3. 4. 3 系统控制单元(SCU)寄存器列表 ................................................................... 83
3. 4. 4 GPIO 寄存器列表 .............................................................................................. 83
3. 4. 5 IAP 寄存器列表 ................................................................................................. 85
3. 4. 6 ADC 寄存器列表................................................................................................ 85
3. 4. 7 RTC 寄存器列表 ................................................................................................ 85
3. 4. 8 LCD 寄存器列表 ................................................................................................ 86
3. 4. 9 LED 寄存器列表 ................................................................................................ 86
3. 4. 10 WDT 寄存器列表.............................................................................................. 87
3. 4. 11 T16N0/T16N1/T16N2/T16N3 寄存器列表 ....................................................... 87
3. 4. 12 T32N0 寄存器列表 ........................................................................................... 88
3. 4. 13 UART0/UART1 寄存器列表 ............................................................................. 88
3. 4. 14 EUART0 寄存器列表........................................................................................ 89
3. 4. 15 SPI0/ SPI1 寄存器列表 .................................................................................... 89
3. 4. 16 I2C0 寄存器列表 .............................................................................................. 90
内核寄存器 ............................................................................................................... 90
3. 5. 1 系统定时器(SYSTICK)寄存器列表 ............................................................... 90
3. 5. 2 中断控制器(NVIC)寄存器列表 ...................................................................... 90
3. 5. 3 系统控制块(SCB)寄存器列表 ....................................................................... 91
输入输出端口(GPIO) ........................................................................................... 92
概述 .......................................................................................................................... 92
结构框图 ................................................................................................................... 93
外部端口中断 ............................................................................................................ 93
外部按键中断 ............................................................................................................ 94
Buzz 输出 ................................................................................................................. 95
特殊功能寄存器 ........................................................................................................ 95
外设 ........................................................................................................................ 121
定时器/计数器 ......................................................................................................... 121
5. 1. 1 16 位定时器/计数器 T16N(T16N0/ T16N1/ T16N2/ T16N3) ...................... 121
5. 1. 1. 1 概述...................................................................................................... 121
5. 1. 1. 2 结构框图 .............................................................................................. 122
5. 1. 1. 3 T16N 定时/计数功能 ............................................................................. 122
5. 1. 1. 4 T16N 输入捕捉功能 .............................................................................. 123
5. 1. 1. 5 T16N 输出调制功能 .............................................................................. 125
5. 1. 1. 6 特殊功能寄存器 ................................................................................... 127
5. 1. 1. 7 T16N 应用说明 ..................................................................................... 138
5. 1. 2 32 位定时器/计数器 T32N(T32N0) ............................................................. 138
5. 1. 2. 1 概述...................................................................................................... 138
5. 1. 2. 2 结构框图 .............................................................................................. 138
5. 1. 2. 3 T32N 定时/计数功能 ............................................................................. 139
5. 1. 2. 4 T32N 输入捕捉功能 .............................................................................. 140
5. 1. 2. 5 T32N 输出调制功能 .............................................................................. 141
5. 1. 2. 6 特殊功能寄存器 ................................................................................... 142
V1.0
版权所有©上海东软载波微电子有限公司
7/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 2
5. 3
5. 4
5. 5
5. 1. 2. 7 T32N 应用说明 ..................................................................................... 149
通用异步接收/发送器(UART0/ UART1) ............................................................. 149
5. 2. 1 概述 ................................................................................................................. 149
5. 2. 2 结构框图.......................................................................................................... 149
5. 2. 3 UART 数据格式 ............................................................................................... 150
5. 2. 4 UART 异步发送器 ........................................................................................... 151
5. 2. 5 UART 异步接收器 ........................................................................................... 153
5. 2. 6 UART 发送调制功能 ........................................................................................ 154
5. 2. 7 UART 红外唤醒功能 ........................................................................................ 155
5. 2. 8 UART 端口极性 ............................................................................................... 155
5. 2. 9 UART 自动波特率检测 .................................................................................... 155
5. 2. 10 UART 空闲帧检测 .......................................................................................... 157
5. 2. 11 UART 发送暂停和接收暂停 ............................................................................ 157
5. 2. 12 特殊功能寄存器 ............................................................................................. 157
5. 2. 13 UART 应用说明 .............................................................................................. 174
增强型通用异步接收/发送器(EUART0) ............................................................. 174
5. 3. 1 概述 ................................................................................................................. 174
5. 3. 2 结构框图.......................................................................................................... 174
5. 3. 3 EUART 端口复用............................................................................................. 174
5. 3. 4 普通 UART 通讯模式 ....................................................................................... 175
5. 3. 5 7816 通讯模式的异步接收器和发送器 ............................................................ 175
5. 3. 6 7816 通讯模式的数据格式............................................................................... 176
5. 3. 7 7816 通讯模式的自动重发功能 ....................................................................... 176
5. 3. 8 7816 通讯模式的自动重收功能 ....................................................................... 177
5. 3. 9 特殊功能寄存器 ............................................................................................... 177
5. 3. 10 EUART 应用说明 ........................................................................................... 188
SPI 同步串口通讯控制器(SPI0 /SPI1) ............................................................... 188
5. 4. 1 概述 ................................................................................................................. 188
5. 4. 2 结构框图.......................................................................................................... 188
5. 4. 3 SPI 通讯模式 ................................................................................................... 188
5. 4. 4 SPI 数据格式 ................................................................................................... 189
5. 4. 5 SPI 帧位宽....................................................................................................... 190
5. 4. 6 SPI 同步发送器 ............................................................................................... 190
5. 4. 7 SPI 同步接收器 ............................................................................................... 191
5. 4. 8 SPI 通讯控制 ................................................................................................... 192
5. 4. 9 SPI 延迟接收功能 ............................................................................................ 192
5. 4. 10 SPI 数据帧发送间隔功能................................................................................ 193
5. 4. 11 特殊功能寄存器 ............................................................................................. 193
5. 4. 12 SPI 应用说明 .................................................................................................. 199
I2C 总线串口通讯控制器(I2C0) ......................................................................... 201
5. 5. 1 概述 ................................................................................................................. 201
5. 5. 2 结构框图.......................................................................................................... 201
5. 5. 3 I2C 总线基本原理 ............................................................................................ 202
5. 5. 3. 1 I2C 通讯协议......................................................................................... 202
V1.0
版权所有©上海东软载波微电子有限公司
8/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 6
5. 7
5. 8
5. 9
5. 5. 3. 2 I2C 数据传输格式 ................................................................................. 202
5. 5. 4 I2C 通讯端口配置 ............................................................................................ 203
5. 5. 5 I2C 时基定时器与 16 倍速采样器 .................................................................... 204
5. 5. 6 I2C 通讯发送器................................................................................................ 205
5. 5. 7 I2C 通讯接收器................................................................................................ 206
5. 5. 8 I2C 通讯控制 ................................................................................................... 206
5. 5. 8. 1 I2C 起始位 ............................................................................................ 207
5. 5. 8. 2 I2C 停止位 ............................................................................................ 207
5. 5. 8. 3 I2C 应答延迟功能 ................................................................................. 208
5. 5. 8. 4 I2C 数据帧传输间隔功能 ...................................................................... 208
5. 5. 8. 5 I2C 时钟线自动下拉等待请求功能 ........................................................ 209
5. 5. 8. 6 I2C 自动发送未应答功能 ...................................................................... 209
5. 5. 9 特殊功能寄存器 ............................................................................................... 210
5. 5. 10 I2C 应用说明 .................................................................................................. 217
模数转换器(ADC) .............................................................................................. 218
5. 6. 1 概述 ................................................................................................................. 218
5. 6. 2 结构框图.......................................................................................................... 219
5. 6. 3 ADC 基本配置 ................................................................................................. 219
5. 6. 4 ADC 高精度参考电压 ...................................................................................... 219
5. 6. 5 ADC 数据转换 ................................................................................................. 219
5. 6. 6 自动转换比较功能 ........................................................................................... 221
5. 6. 7 特殊功能寄存器 ............................................................................................... 222
实时时钟(RTC) .................................................................................................. 230
5. 7. 1 概述 ................................................................................................................. 230
5. 7. 2 RTC 写保护 ..................................................................................................... 230
5. 7. 3 时间日期设置 .................................................................................................. 230
5. 7. 4 RTC 中断源 ..................................................................................................... 232
5. 7. 5 RTC 计时功能 ................................................................................................. 232
5. 7. 6 特殊功能寄存器 ............................................................................................... 232
5. 7. 7 RTC 应用说明 ................................................................................................. 239
液晶显示控制器(LCDC) ..................................................................................... 239
5. 8. 1 概述 ................................................................................................................. 239
5. 8. 2 结构框图.......................................................................................................... 240
5. 8. 3 LCD 基本设置.................................................................................................. 240
5. 8. 4 LCD 偏置电压选择 .......................................................................................... 240
5. 8. 5 LCD 像素对照表 .............................................................................................. 241
5. 8. 6 LCD 工作时钟源 .............................................................................................. 242
5. 8. 7 LCD 显示帧频率 .............................................................................................. 242
5. 8. 8 LCD 闪烁功能.................................................................................................. 242
5. 8. 9 LCD 低功耗模式 .............................................................................................. 242
5. 8. 10 特殊功能寄存器 ............................................................................................. 243
数码管显示控制器(LEDC) ................................................................................. 249
5. 9. 1 概述 ................................................................................................................. 249
5. 9. 2 结构框图.......................................................................................................... 249
V1.0
版权所有©上海东软载波微电子有限公司
9/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 9. 3 LED 基本设置 .................................................................................................. 249
5. 9. 4 LED 像素对照表 .............................................................................................. 249
5. 9. 5 LED 工作时钟源 .............................................................................................. 250
5. 9. 6 LED 工作示意图 .............................................................................................. 250
5. 9. 7 特殊功能寄存器 ............................................................................................... 250
5. 10
看门狗定时器(WDT) .......................................................................................... 253
5. 10. 1 概述 ............................................................................................................... 253
5. 10. 2 特殊功能寄存器 ............................................................................................. 254
第 6 章
芯片封装图 ............................................................................................................. 257
6. 1
LQFP 48-pin 封装图 ............................................................................................... 257
6. 2
LQFP 44-pin 封装图 ............................................................................................... 258
6. 3
QFN 32-pin 封装图 ................................................................................................. 259
6. 4
SOP 28-pin 封装图 ................................................................................................. 260
附录 1 Cortex-M0 内核描述...................................................................................................... 261
附录 1.1 Cortex-M0 指令集 ................................................................................................... 261
附录 1.2 Cortex-M0 内核寄存器 ............................................................................................ 263
附录 1.2.1 通用寄存器 R0~R12 .................................................................................... 263
附录 1.2.2 堆栈指针寄存器 SP(R13)........................................................................ 263
附录 1.2.3 链接寄存器 LR(R14) ................................................................................ 264
附录 1.2.4 程序计数器 PC(R15)................................................................................ 264
附录 1.2.5 程序状态寄存器 xPSR .................................................................................. 264
附录 1.2.6 异常/中断屏蔽寄存器 PRIMASK................................................................... 265
附录 1.2.7 控制寄存器 CONTROL ................................................................................. 265
附录 2
电气特性 ................................................................................................................. 267
附录 2.1 参数特性表 .............................................................................................................. 267
附录 2.1.1 芯片工作条件 ............................................................................................... 267
附录 2.1.2 芯片特性参数测量方法 ................................................................................ 268
附录 2.1.3 芯片功耗特性 ............................................................................................... 268
附录 2.1.4 芯片 IO 端口特性 ......................................................................................... 270
附录 2.1.5 芯片系统时钟特性........................................................................................ 272
附录 2.1.6 芯片功能模块特性........................................................................................ 272
附录 2.2 参数特性图 .............................................................................................................. 275
附录 2.2.1 芯片功耗特性 ............................................................................................... 275
附录 2.2.2 芯片 IO 端口输入特性 .................................................................................. 277
附录 2.2.3 芯片 IO 端口输出特性(普通驱动,PA6~PA13 端口除外)........................ 279
附录 2.2.4 芯片 IO 端口输出特性(大电流驱动,PA6~PA13 端口除外) .................... 283
附录 2.2.5 芯片 IO 端口输出特性(普通驱动,PA6~PA13 端口) ............................... 287
附录 2.2.6 芯片 IO 端口输出特性(大电流驱动,PA6~PA13 端口) ........................... 291
附录 3
编程调试接口 .......................................................................................................... 296
附录 3.1 概述 ......................................................................................................................... 296
附录 3.2 ISP 编程接口........................................................................................................... 296
附录 3.2.1 通信协议 ....................................................................................................... 296
附录 3.2.2 操作流程 ....................................................................................................... 297
附录 3.3 SWD 调试接口 ........................................................................................................ 297
V1.0
版权所有©上海东软载波微电子有限公司
10/309
http://www.essemi.com
HR8P506_Datasheet_C
附录 3.3.1 概述 .............................................................................................................. 297
附录 3.3.2 SWD 特性 ..................................................................................................... 298
附录 4 LCD 驱动波形 ................................................................................................................ 299
附录 4.1 概述 ........................................................................................................................ 299
附录 4.2 驱动波形图 ............................................................................................................. 299
V1.0
版权所有©上海东软载波微电子有限公司
11/309
http://www.essemi.com
HR8P506_Datasheet_C
图目录
图
图
图
图
图
1-1
1-2
1-3
1-4
1-5
HR8P506 结构框图 .......................................................................................................... 19
LQFP48 封装顶视图 ........................................................................................................ 20
LQFP44 封装顶视图 ........................................................................................................ 21
QFN32 封装顶视图 .......................................................................................................... 22
SOP28 封装顶视图 .......................................................................................................... 23
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
2-1
2-2
2-3
2-4
2-5
2-6
2-7
2-8
3-1
3-2
3-3
3-4
3-5
3-6
3-7
4-1
系统电源结构框图 ............................................................................................................ 28
系统复位电路结构框图..................................................................................................... 28
上电复位时序示意图 ........................................................................................................ 29
掉电复位时序示意图 ........................................................................................................ 29
MRSTN 复位参考电路图 1 ............................................................................................... 29
MRSTN 复位参考电路图 2 ............................................................................................... 29
系统时钟电路结构框图..................................................................................................... 36
XTAL 振荡器电路结构示意图 ........................................................................................... 37
内部存储系统分配示意图 ................................................................................................. 71
IAP 操作请求流程图 ......................................................................................................... 75
IAP 全擦除操作流程图 ..................................................................................................... 75
IAP 页擦除操作流程图 ..................................................................................................... 76
IAP 编程操作流程图 ......................................................................................................... 76
SRAM 映射图 ................................................................................................................... 81
外设存储器分配示意图..................................................................................................... 82
IO 端口电流结构图 ........................................................................................................... 93
4-2
4-3
4-4
4-5
外部端口中断电路结构示意图 .......................................................................................... 93
外部按键中断电路结构示意图 .......................................................................................... 94
Buzz 高电平调制输出波形图............................................................................................ 95
Buzz 低电平调制输出波形图............................................................................................ 95
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
5-1
5-2
5-3
5-4
5-5
5-5
5-6
5-7
5-8
5-9
5-10
5-11
5-12
5-13
5-14
5-15
5-16
T16N 电路结构框图 ....................................................................................................... 122
T16N 计数匹配功能示意图 ............................................................................................ 123
T16N 捕捉功能示意图 .................................................................................................... 124
T16N PWM 独立模式输出调制功能示意图 .................................................................... 126
T16N 互补输出功能示意图 ............................................................................................ 127
T32N 电路结构框图 ....................................................................................................... 138
T32N 计数匹配功能示意图 ............................................................................................ 140
T32N 捕捉功能示意图 .................................................................................................... 141
T32N 输出调制功能示意图 ............................................................................................ 142
UART 电路结构图 .......................................................................................................... 150
UART 7 位数据格式 ..................................................................................................... 150
UART 8 位数据格式 ..................................................................................................... 150
UART 9 位数据格式 ..................................................................................................... 150
UART 发送数据流示意图 ............................................................................................. 151
UART 发送数据操作流程图示例 .................................................................................. 152
UART 接收数据流示意图 ............................................................................................. 153
UART 接收数据操作流程图示例 .................................................................................. 154
V1.0
版权所有©上海东软载波微电子有限公司
12/309
http://www.essemi.com
HR8P506_Datasheet_C
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
5-17 TXx 高电平调制输出波形图 ......................................................................................... 155
5-18 TXx 低电平调制输出波形图 ......................................................................................... 155
5-19 自动波特率检测时序示意图 ......................................................................................... 156
5-20 自动波特率检测错误时序示意图 .................................................................................. 156
5-21 空闲帧检测时序示意图................................................................................................. 157
5-22 EUART 电路结构框图 .................................................................................................. 174
5-23 7816 通讯模式发送数据流示意图 ................................................................................ 175
5-24 7816 通讯模式接收数据流示意图 ................................................................................ 176
5-25 SPI 电路结构框图 ........................................................................................................ 188
5-26 SPI 时钟上升沿发送,下降沿接收波形示意图 ............................................................. 189
5-27 SPI 时钟下降沿发送,上升沿接收波形示意图 ............................................................. 189
5-28 SPI 时钟上升沿接收,下降沿发送波形示意图 ............................................................. 190
5-29 SPI 时钟下降沿接收,上升沿发送波形示意图 ............................................................. 190
5-30 SPI 发送数据流示意图 ................................................................................................. 191
5-31 SPI 接收数据流示意图 ................................................................................................. 191
5-32 SPI 延迟接收功能波形示意图 ...................................................................................... 193
5-33 I2C 电路结构框图 ......................................................................................................... 201
5-34 I2C 总线通讯协议示意图 .............................................................................................. 202
5-35 I2C 主控器写入从动器数据示意图 ............................................................................... 203
5-36 I2C 主控器读取从动器数据示意图 ............................................................................... 203
5-37 开漏输出端口示意图 .................................................................................................... 204
5-38 I2C 总线端口信号的波形示意图 ................................................................................... 205
5-39 I2C 发送数据流示意图 ................................................................................................. 205
5-40 2C 接收数据流示意图 .................................................................................................. 206
5-41 I2C 起始位波形图 ......................................................................................................... 207
5-42 I2C 自动寻呼波形图 ..................................................................................................... 207
5-43 I2C 停止位波形图 ......................................................................................................... 208
5-44 I2C 应答延迟功能波形示意图 ...................................................................................... 208
5-45 I2C 数据帧传输间隔功能波形示意图 ........................................................................... 209
5-46 I2C 时钟线下拉等待波形示意图 ................................................................................... 209
5-47 ADC 内部结构图 .......................................................................................................... 219
5-48 ADC 数据转换时序示意图(ADC_CON1 寄存器的 SMPS=0,软件控制采样) ........ 220
5-49 ADC 数据转换时序示意图(ADC_CON1 寄存器的 SMPS=1,硬件控制采样) ........ 220
5-50 LCD 驱动模块框图 ....................................................................................................... 240
5-51 1/4 VDD 外部偏置电压参考电路..................................................................................... 241
5-52 快速充放电示意图 ........................................................................................................ 243
5-53 LED 驱动模块框图 ....................................................................................................... 249
5-54 LED 工作示意图 ........................................................................................................... 250
6-1 内核寄存器 ..................................................................................................................... 263
6-2 堆栈操作示意图.............................................................................................................. 264
6-3 芯片功耗测量连接示意图 ............................................................................................... 268
6-4 芯片 IO 端口输出特性参数测量连接示意图 ................................................................... 268
V1.0
版权所有©上海东软载波微电子有限公司
13/309
http://www.essemi.com
HR8P506_Datasheet_C
表目录
表 1-1 管脚说明........................................................................................................................... 24
表 1-2 管脚对照表 ....................................................................................................................... 25
表
表
表
表
表
表
表
表
表
表
表
2-1
2-2
2-3
2-4
4-1
5-1
5-2
5-3
5-3
5-5
5-4
低功耗模式时钟状态表..................................................................................................... 33
异常/中断优先级操作类型说明说明表 .............................................................................. 51
异常/中断优先级列表 ....................................................................................................... 51
IRQ 分配列表 ................................................................................................................... 53
PINT 选择对应列表 .......................................................................................................... 94
I2C 总线端口信号的时序参数列表 ................................................................................. 204
12/24 小时模式对照表.................................................................................................... 231
LCD 外部偏置电压输入配置表 ....................................................................................... 241
LCD 像素对照列表 ......................................................................................................... 242
LCD 复用类型列表 ......................................................................................................... 245
LED 像素对照列表 ......................................................................................................... 250
V1.0
版权所有©上海东软载波微电子有限公司
14/309
http://www.essemi.com
HR8P506_Datasheet_C
第 1 章 芯片简介
1. 1 概述
该产品是一款高集成度的通用 MCU 芯片,内部集成 32 位 ARM Cortex-M0 CPU 内核。集成多
个 16 位和 32 位定时器/计数器,带红外发送调制功能的 UART 模块,兼容 7816 协议的通信接
口,SPI 和 I2C 通信模块,带实时时钟模块 RTC,支持停显及闪烁功能的 LCD 驱动模块,12
位 ADC,以及用于系统电源监测的 LVD 模块等外设。
工作条件
工作电压范围:2.2V ~ 5.5V
工作温度范围:-40 ~ 85℃(工业级)
工作主时钟频率:32KHz~48MHz
工作电流:Ivdd = 3.5mA(@内部 HRC 16MHz,典型值)
待机电流:Ivdd = 5uA(常温,典型值)
封装
LQFP48 封装(支持 46 个 I/O 端口)
LQFP44 封装(支持 42 个 I/O 端口)
QFN32 封装(支持 30 个 I/O 端口)
SOP28 封装(支持 26 个 I/O 端口)
电源
系统电源输入 VDD,支持工作电压为 5V 或 3.3V 的应用系统
低功耗 LVD 用于监测系统电源掉电和上电,可选择产生掉电或上电中断
复位
内嵌上电复位电路 POR
内嵌掉电复位电路 BOR
支持外部复位
时钟
外部晶体振荡器可配置,支持低速振荡器 32KHz 和高速振荡器 1~20MHz,可配置
为系统时钟源
内部 4MHz 或 16MHz RC 振荡器(HRC)可配置为系统时钟源,出厂前已校准(全
温度,全电压范围内频率精度为±3%)
内部 32KHz RC 振荡器(LRC)作为 WDT 时钟源,可配置为系统时钟源
支持 PLL 倍频,时钟源可选择,最大可倍频至 48MHz,可配置为系统时钟源
内核
ARM Cortex-M0 32 位嵌入式处理器内核
支持 SWD 串行调试接口,支持 2 个监视点(watchpoint)和 4 个断点(breakpoint)
支持两组 SWD 调试接口可选择,通过配置字 DEBUG_S 进行选择
V1.0
版权所有©上海东软载波微电子有限公司
15/309
http://www.essemi.com
HR8P506_Datasheet_C
内嵌向量中断控制器 NVIC
支持唤醒中断控制器 WIC
NVIC 包含一个不可屏蔽中断 NMI
内置 1 个 SysTick 系统定时器
硬件看门狗
时钟源可选择
支持低功耗模式下唤醒
超时计数溢出可选择触发中断或复位
存储器
36K 字节 FLASH 存储器
支持 ISP 在线串行编程
支持两组 ISP 编程接口可选择,硬件自动识别有效的 ISP 编程接口
支持 IAP 在应用中编程,可选取部分区域作为数据存储使用
支持 FLASH 编程代码加密保护
8K 字节 SRAM 存储器
I/O 端口
支持最多 46 个双向 I/O 端口
SRAM 存储空间及外设寄存器地址空间支持位带(Bit band)扩展
PA 端口(PA0~PA31)
PB 端口(PB0~PB13)
支持 8 路外部中断输入,触发方式可配置,每个 I/O 端口均可作为外部中断输入源
支持 1 路按键中断输入,触发方式可配置,每个 I/O 端口均可作为按键中断输入源
定时器/计数器
T16N0:16 位定时器/计数器,带预分频器,扩展输入捕捉/输出调制功能
T16N1:16 位定时器/计数器,带预分频器,扩展输入捕捉/输出调制功能
T16N2:16 位定时器/计数器,带预分频器,扩展输入捕捉/输出调制功能
T16N3:16 位定时器/计数器,带预分频器,扩展输入捕捉/输出调制功能
T32N0:32 位定时器/计数器,带预分频器,扩展输入捕捉/输出调制功能
RTC :一路 RTC 实时时钟
UART 通信接口
支持二路 UART 通信接口 UART0,UART1
支持全/半双工异步通信模式
支持传输波特率可配置
支持 8 级发送/接收缓冲器
V1.0
版权所有©上海东软载波微电子有限公司
16/309
http://www.essemi.com
HR8P506_Datasheet_C
支持 7/8/9 位数据格式可配
支持奇偶校验功能可配,支持硬件自动奇偶校验位判断
支持空闲帧检测
支持接收帧错误标志、溢出标志、奇偶校验错误标志
支持数据接收和发送中断
支持 PWM 调制输出,且 PWM 占空比线性可调
支持接收端口红外唤醒功能
支持 UART 输入输出通讯端口极性可配置
EUART 通信接口
支持一路 EUART 通信接口 EUART0
兼容 UART 通信接口,可配置为普通 UART 模式
扩展支持异步半双工接收/发送(7816 模式)
扩展支持 8 位数据位和 1 位奇偶校验位(7816 模式)
扩展支持自动重发重收模式(7816 模式)
扩展支持可配置内部时钟输出(7816 模式)
扩展支持双通道通讯可配置(7816 模式)
I2C 通信接口
支持一路通信接口 I2C0
支持主控和从动模式
支持标准 I2C 总线协议,最高传输速率 400K bit/s
支持 7 位寻址方式
约定数据从最高位开始接收/发送
支持数据接收和发送中断
SCL/SDA 端口支持推挽/开漏模式,开漏时必须使能内部弱上拉或使用外部上拉电
阻
SCL 端口支持时钟线自动下拉等待请求功能
SPI 通信接口
支持二路通信接口 SPI0,SPI1
支持主控模式和从动模式
支持 4 种通信数据格式
支持 4 级接收/发送缓冲器
支持数据接收和发送中断
ADC 模拟数字转换器
支持 12 位转换结果,有效精度为 11 位
支持 16 通道模拟输入端
V1.0
版权所有©上海东软载波微电子有限公司
17/309
http://www.essemi.com
HR8P506_Datasheet_C
支持参考电压源可选择
支持中断产生
支持转换结果自动比较
支持定时触发 ADC 转换
LCDC 液晶显示控制器
支持最大 8 COM x 28SEG
支持时钟源可配置:LRC 的 4 分频,LOSC 的 4 分频或 PCLK 的 4096 分频
支持灰度调节功能
支持显示闪烁功能,闪烁频率可调
支持两种不同的 LCD 驱动波形
支持内部偏置电压可调
LEDC 数码管显示控制器
支持 1~8 个 8 段式共阴极数码管
支持时钟源可配置:LRC 的 4 分频,LOSC 的 4 分频或 PCLK 的 4096 分频
RTC 实时时钟
仅 POR 上电复位有效,支持程序写保护,有效避免系统干扰对时钟造成的影响
采用外部 32.768KHz 晶体振荡器作为精确计时时钟源
可进行高精度数字校正,提供高精度计时
时钟调校提供两种时间精度,调校范围为±384ppm(或±128ppm)
,可实现最大时
间精度为±1.5 ppm(或±0.5ppm)
时间计数(实现小时﹑分钟和秒)和日历计数(实现年﹑月﹑日和星期)
,BCD 格
式
提供 5 个可编程定时中断
提供 2 个可编程日历闹钟
提供一路可配置时钟输出
自动闰年识别,有效期到 2099 年
12 小时和 24 小时模式设置可选
低功耗设计:工作电压为 VDD=5.0V 时模块工作电流典型值为 0.5μA
1. 2 应用领域
本芯片可用于家电,小家电以及工业控制仪表等领域。
1. 3 结构框图
V1.0
版权所有©上海东软载波微电子有限公司
18/309
http://www.essemi.com
HR8P506_Datasheet_C
GPIO
X 46
Clock
Reset
SCU
WDT
X1
36K Bytes
FLASH
CORTEX-M0
APB
Interrupt
8K Bytes
SRAM
RTC
X1
LCD/LEDC
8x28
AHB
12Bit ADC
X 16ch
AHB-APB Bridge
SPI
X2
APB
16Bit Timer
X4
32Bit Timer
X1
UART
X2
EUART
X1
I2C
X1
图 1-1 HR8P506 结构框图
V1.0
版权所有©上海东软载波微电子有限公司
19/309
http://www.essemi.com
HR8P506_Datasheet_C
1. 4 管脚分配图
PA13/E0TX0/E0CK0/MOSI0/COM0
PA12/E0RX0/E0IO0/MISO0/COM1
PA11/T16N2_1/T16N3_1/SCK0/COM2
PA10/T16N2_0/T16N3_0/NSS0/COM3
26
25
29
27
PA14/NSS0/T16N2_0/SEG0/ISCK1
30
28
PA16/MISO0/SEG2
PA15/SCK0/T16N2_1/SEG1/ISDA1
31
PA18/T16N3_0/SCL0/SEG4
PA17/MOSI0/SEG3
32
PA19/T16N3_1/SDA0/SEG5
34
33
PA21/RTCO/T16N0_1/SEG7
PA20/CLKO1/T16N0_0/SEG6
35
12
MRSTN/PB12
13 14 15 16 17 18 19 20 21 22 23 24
10
11
9
OSC1I/PB10
8
VSS
OSC1O/PB11
7
PB8/T32N0_0/OSC2I/AN3/SEG26
PB9/T32N0_1/OSC2O/AN4/SEG27
6
PB7/E0TX1/E0CK1/AN2/SEG25
P B 1 /T 3 2 N 0 _ 1 /T X D 1 /T 1 6 N 3 _ 1 /S E G 1 9
5
P B 0 /T 3 2 N 0 _ 0 /R X D 1 /T 1 6 N 3 _ 0 /S E G 1 8
4
P A 3 1 /M O S I1 /T X D 1 /S E G 1 7
PB6/E0RX1/E0IO1/AN1/SEG24
P A 3 0 /M IS O 1 /R X D 1 /S E G 1 6
PB5/E0TX0/E0CK0/MOSI0/AN0/SEG23
P A 2 8 /N S S 1 /T 1 6 N 2 _ 0 /S E G 1 4
P A 2 9 /S C K 1 /T 1 6 N 2 _ 1 /S E G 1 5
3
P A 2 7 /N S S 1 /T X D 0 /T 1 6 N _ B K 3 /S E G 1 3
PB4/E0RX0/E0IO0/MISO0/SEG22
P A 2 6 /S C K 1 /R X D 0 /T 1 6 N _ B K 2 /S E G 1 2
2
P A 2 5 /M IS O 1 /T X D 0 /T 1 6 N 1 _ 1 /S E G 1 1
PB3/T16N0_1/SCK0/SDA0/SEG21
P A 2 4 /M O S I1 /R X D 0 /T 1 6 N 1 _ 0 /S E G 1 0
48 47 46 45 44 43 42 41 40 39 38 37
P A 2 3 /T X D 0 /S E G 9
1
P A 2 2 /R X D 0 /S E G 8
36
LQFP48 封装图
PB2/T16N0_0/NSS0/SCL0/SEG20
1. 4. 1
P A 9 /T X D 1 /T 1 6 N 1 _ 1 /A N 1 5 /C L K O 0 /C O M 4
P A 8 /R X D 1 /T 1 6 N 1 _ 0 /A N 1 4 /C O M 5
P A 7 /T 1 6 N 0 _ 1 /A N 1 3 /C O M 6
P A 6 /T 1 6 N 0 _ 0 /A N 1 2 /C O M 7
P A 5 /S D A 0 /M O S I1 /A N 1 1
P A 4 /S C L 0 /M IS O 1 /A N 1 0
P A 3 /T 3 2 N 0 _ 1 /S C K 1 /A N 9 /T 1 6 N _ B K 1
P A 2 /T 3 2 N 0 _ 0 /N S S 1 /A N 8 /T 1 6 N _ B K 0
P A 1 /B U Z /A V R E F P /A N 7 /IS D A 0
P A 0 /T 1 6 N 1 _ 1 /A V R E F N /B U Z /A N 6 /IS C K 0
VDD
P B 1 3 /T 1 6 N 1 _ 0 /B U Z /A N 5
图 1-2 LQFP48 封装顶视图
V1.0
版权所有©上海东软载波微电子有限公司
20/309
http://www.essemi.com
HR8P506_Datasheet_C
PA12/E0RX0/E0IO0/MISO0/COM1
PA11/T16N2_1/T16N3_1/SCK0/COM2
PA10/T16N2_0/T16N3_0/NSS0/COM3
25
24
23
9
10
11
MRSTN/PB12
PB13/T16N1_0/BUZ/AN5
OSC1I/PB10
OSC1O/PB11
VSS
8
7
PB9/T32N0_1/OSC2O/AN4/SEG27
12 13 14 15 16 17 18 19 20 21 22
PA14/NSS0/T16N2_0/SEG0/ISCK1
28
PA13/E0TX0/E0CK0/MOSI0/COM0
PA15/SCK0/T16N2_1/SEG1/ISDA1
29
26
PA16/MISO0/SEG2
30
27
PA18/T16N3_0/SCL0/SEG4
PA17/MOSI0/SEG3
31
PA20/CLKO1/T16N0_0/SEG6
PA19/T16N3_1/SDA0/SEG5
32
6
PA31/MOSI1/TXD1/SEG17
5
PA30/MISO1/RXD1/SEG16
4
PA29/SCK1/T16N2_1/SEG15
PB8/T32N0_0/OSC2I/AN3/SEG26
PA28/NSS1/T16N2_0/SEG14
PB3/T16N0_1/SCK0/SDA0/SEG21
PA27/NSS1/TXD0/T16N_BK3/SEG13
3
PA26/SCK1/RXD0/T16N_BK2/SEG12
PB2/T16N0_0/NSS0/SCL0/SEG20
PA25/MISO1/TXD0/T16N1_1/SEG11
2
PA24/MOSI1/RXD0/T16N1_0/SEG10
PB1/T32N0_1/TXD1/T16N3_1/SEG19
PA23/TXD0/SEG9
44 43 42 41 40 39 38 37 36 35 34
PA22/RXD0/SEG8
1
PA21/RTCO/T16N0_1/SEG7
33
LQFP44 封装图
PB0/T32N0_0/RXD1/T16N3_0/SEG18
1. 4. 2
PA9/TXD1/T16N1_1/AN15/CLKO0/COM4
PA8/RXD1/T16N1_0/AN14/COM5
PA7/T16N0_1/AN13/COM6
PA6/T16N0_0/AN12/COM7
PA5/SDA0/MOSI1/AN11
PA4/SCL0/MISO1/AN10
PA3/T32N0_1/SCK1/AN9/T16N_BK1
PA2/T32N0_0/NSS1/AN8/T16N_BK0
PA1/BUZ/AVREFP/AN7/ISDA0
PA0/T16N1_1/AVREFN/BUZ/AN6/ISCK0
VDD
图 1-3 LQFP44 封装顶视图
V1.0
版权所有©上海东软载波微电子有限公司
21/309
http://www.essemi.com
HR8P506_Datasheet_C
17 PA9/TXD1/T16N1_1/AN15/CLKO0/COM4
18 PA10/T16N2_0/T16N3_0/NSS0/COM3
19 PA11/T16N2_1/T16N3_1/SCK0/COM2
21 PA13/E0TX0/E0CK0/MOSI0/COM0
20 PA12/E0RX0/E0IO0/MISO0/COM1
22 PA14/NSS0/T16N2_0/SEG0/ISCK1
5
6
7
MRSTN/PB12
PB13/T16N1_0/BUZ/AN5
9 10 11 12 13 14 15 16
4
OSC1I/PB10
OSC1O/PB11
PA8/RXD1/T16N1_0/AN14/COM5
PA7/T16N0_1/AN13/COM6
PA6/T16N0_0/AN12/COM7
PA5/SDA0/MOSI1/AN11
PA4/SCL0/MISO1/AN10
PA3/T32N0_1/SCK1/AN9/T16N_BK1
PA2/T32N0_0/NSS1/AN8/T16N_BK0
PA1/BUZ/AVREFP/AN7/ISDA0
VDD 8
3
PB1/T32N0_1/TXD1/T16N3_1/SEG19
2
PB0/T32N0_0/RXD1/T16N3_0/SEG18
VSS
PA28/NSS1/T16N2_0/SEG14
PB9/T32N0_1/OSC2O/AN4/SEG27
PA27/NSS1/TXD0/T16N_BK3/SEG13
32 31 30 29 28 27 26 25
PA25/MISO1/TXD0/T16N1_1/SEG11
1
PA23/TXD0/SEG9
PA24/MOSI1/RXD0/T16N1_0/SEG10
PB8/T32N0_0/OSC2I/AN3/SEG26
PA22/RXD0/SEG8
23 PA15/SCK0/T16N2_1/SEG1/ISDA1
QFN32 封装图
24 PA16/MISO0/SEG2
1. 4. 3
图 1-4 QFN32 封装顶视图
V1.0
版权所有©上海东软载波微电子有限公司
22/309
http://www.essemi.com
HR8P506_Datasheet_C
1. 4. 4
SOP28 封装图
PA23/TXD0/SEG9
1
28
PA19/T16N3_1/SDA0/SEG5
PB1/T32N0_1/TXD1/T16N3_1/SEG19
2
27
PA18/T16N3_0/SCL0/SEG4
PB8/T32N0_0/OSC2I/AN3/SEG26
3
26
PA17/MOSI0/SEG3
PB9/T32N0_1/OSC2O/AN4/SEG27
4
25
PA16/MISO0/SEG2
5
24
PA15/SCK0/T16N2_1/SEG1/ISDA1
OSC1I/PB10
6
23
PA14/NSS0/T16N2_0/SEG0/ISCK1
OSC1O/PB11
7
22
PA13/E0TX0/E0CK0/MOSI0/COM0
MRSTN/PB12
8
21
PA12/E0RX0/E0IO0/MISO0/COM1
VDD
9
20
PA11/T16N2_1/T16N3_1/SCK0/COM2
PA1/BUZ/AVREFP/AN7/ISDA0
10
19
PA10/T16N2_0/T16N3_0/NSS0/COM3
PA2/T32N0_0/NSS1/AN8/T16N_BK0
11
18
PA9/TXD1/T16N1_1/AN15/CLKO0/COM4
PA3/T32N0_1/SCK1/AN9/T16N_BK1
12
17
PA8/RXD1/T16N1_0/AN14/COM5
PA4/SCL0/MISO1/AN10
13
16
PA7/T16N0_1/AN13/COM6
PA5/SDA0/MOSI1/AN11
14
15
PA6/T16N0_0/AN12/COM7
VSS
图 1-5 SOP28 封装顶视图
1. 5 管脚说明
1. 5. 1
管脚说明
管脚名称
输入类型
输出类型
A/D
PA0~PA31
CMOS
CMOS
D
通用 I/O 端口
PB0~PB13
CMOS
CMOS
D
通用 I/O 端口
ISCK0/1
CMOS
—
D
编程/调试串行时钟端口
ISDA0/1
CMOS
CMOS
D
编程/调试串行数据端口
AIN0~AIN15
—
—
A
ADC 模拟通道 0~15
TX0~TX1
—
CMOS
D
UART0~UART1 发送输出端口
RX0~RX1
CMOS
—
D
UART0~UART1 接收输入端口
E0TX0/1
—
CMOS
D
EUART0 发送输出端口
E0RX0/1
CMOS
—
D
EUART0 接收输入端口
E0CK0/1
—
CMOS
D
EUART0 内部时钟输出端口
E0IO0/1
CMOS
CMOS
D
EUART0 数据输入/输出端口
SCK0~SCK1
CMOS
CMOS
D
SPI0~SPI1 时钟输入/输出端口
V1.0
版权所有©上海东软载波微电子有限公司
管脚说明
23/309
http://www.essemi.com
HR8P506_Datasheet_C
NSS0~NSS1
CMOS
—
D
SPI0~SPI1 片选端口
MISO0~MISO1
CMOS
CMOS
D
SPI0~SPI1 主控输入/从机输出端口
MOSI0~MOSI1
CMOS
CMOS
D
SPI0~SPI1 主控输出/从机输入端口
SCL0
CMOS
CMOS
D
I2C 时钟输入/输出端口
SDA0
CMOS
CMOS
D
I2C 数据输入/输出端口
SEG0~SEG27
—
—
A
LCD Segment 端口
COM0~COM7
—
—
A
LCD Common 端口
LCD_V1~LCDV4
—
—
A
LCD 外部偏置电压输入端口
T16Nx_y
CMOS
CMOS
D
T16Nx 外部时钟输入/捕捉输入/调制输出端口
T32Nx_y
CMOS
CMOS
D
T32Nx 外部时钟输入/捕捉输入/调制输出端口
T16N_BKy
CMOS
—
D
T16Nx 刹车输入端口(只能设置一个有效)
LVD_IN
-
-
A
LVD 监测电压模拟输入通道
AVREFP
-
-
A
ADC 外部正向参考电压
AVREFN
-
-
A
ADC 外部负向参考电压
MRSTN
CMOS
-
D
芯片主复位,低电平有效
OSC1I
-
-
A
OSC1O
-
-
A
OSC2I
-
-
A
OSC2O
-
-
A
VDD
-
-
P
系统主电源
VSS
-
-
P
系统地
外部晶体振荡器端口 1
外部晶体振荡器端口 2
表 1-1 管脚说明
注 1:A = 模拟端口,D = 数字端口,P = 电源/地;
1. 5. 2
管脚对照表
PIN NAME
(FUN0(D))
FUN1(D)
FUN2(D)
FUN3(D)
FUN4(A)
PB0
T32N0_0
RXD1
T16N3_0
-
SEG18
PB1
T32N0_1
TXD1
T16N3_1
-
SEG19
PB2
T16N0_0
NSS0
SCL0
-
SEG20
PB3
T16N0_1
SCK0
SDA0
-
SEG21
PB4
E0RX0/E0IO0
MISO0
-
-
SEG22
PB5
E0TX0/E0CK0
MOSI0
-
AIN0
SEG23
PB6
E0RX1/E0IO1
-
-
AIN1
SEG24
PB7
E0TX1/E0CK1
-
-
AIN2
SEG25
PB8/OSC2I
-
-
T32N0_0
AIN3
SEG26
PB9/OSC2O
-
-
T32N0_1
AIN4
SEG27
PB10/OSC1I
-
-
-
-
-
PB11/ OSC1O
-
-
-
-
-
V1.0
版权所有©上海东软载波微电子有限公司
FUN5(A)
24/309
http://www.essemi.com
HR8P506_Datasheet_C
PB12/MRSTN
-
-
-
-
-
PB13
T16N1_0
BUZ
-
AIN5
-
PA0
T16N1_1
-
BUZ
PA1
BUZ
-
-
PA2
T16N_BK0
T32N0_0
PA3
T16N_BK1
PA4
NSS1
AVREFN/
AIN6
AVREFP/
AIN7
AIN8
LCD_V1
T32N0_1
SCK1
AIN9
LCD_V2
SCL0
-
MISO1
AIN10
LCD_V3
PA5
SDA0
-
MOSI1
AIN11
LCD_V4
PA6
-
T16N0_0
-
AIN12/
LVD_IN
COM7
PA7
-
T16N0_1
-
AIN13
COM6
PA8
RXD1
T16N1_0
-
AIN14
COM5
PA9
TXD1
T16N1_1
CLKO0
AIN15
COM4
PA10
T16N2_0
T16N3_0
NSS0
-
COM3
PA11
T16N2_1
T16N3_1
SCK0
-
COM2
PA12
-
E0RX0/E0IO0
MISO0
-
COM1
PA13
-
E0TX0/E0CK0
MOSI0
-
COM0
PA14
NSS0
T16N2_0
-
-
SEG0
PA15
SCK0
T16N2_1
-
-
SEG1
PA16
MISO0
-
-
-
SEG2
PA17
MOSI0
-
-
-
SEG3
PA18
T16N3_0
SCL0
-
-
SEG4
PA19
T16N3_1
SDA0
-
-
SEG5
PA20
-
CLKO1
T16N0_0
-
SEG6
PA21
-
RTCO
T16N0_1
-
SEG7
PA22
RXD0
-
-
-
SEG8
PA23
TXD0
-
-
-
SEG9
PA24
MOSI1
RXD0
T16N1_0
-
SEG10
PA25
MISO1
TXD0
T16N1_1
-
SEG11
PA26
SCK1
T16N_BK2_B
RXD0
-
SEG12
PA27
NSS1
T16N_BK3_B
TXD0
-
SEG13
PA28
-
NSS1
T16N2_0
-
SEG14
PA29
-
SCK1
T16N2_1
-
SEG15
PA30
-
MISO1
RXD1
-
SEG16
PA31
-
MOSI1
TXD1
-
SEG17
-
-
表 1-2 管脚对照表
注 1:FUNx(D)表示数字端口;FUNx(A)表示模拟端口。
注 2:表中每一个 T16Nx_y 都表示对应 Timer 的 T16NxCKy, T16NxINy, T16NxOUTy 三个复用输入或输出信号。如
V1.0
版权所有©上海东软载波微电子有限公司
25/309
http://www.essemi.com
HR8P506_Datasheet_C
T16N1_0 表示 T16N1 定时器/计数器的 T16N1CK0/T16N1IN0/T16N1OUT0 三个复用输入或输出。T32Nx_y
亦然。下文若未加特别说明,T16Nx_y 和 T32Nx_y 都指其对应的三个复用输入或输出信号。
注 3:表中的 FUN4/5 为模拟端口功能,不通过 GPIO_PxFUNCy 控制寄存器选取。
注 4:支持两组编程/调试接口,分别为 ISCK0(PA0)
,ISDA0(PA1)和 ISCK1(PA14)
,ISDA1(PA15)
。
V1.0
版权所有©上海东软载波微电子有限公司
26/309
http://www.essemi.com
HR8P506_Datasheet_C
第 2 章 系统控制及操作特性
2. 1 系统控制保护
2. 1. 1
概述
由于系统控制寄存器的访问操作会影响整个芯片的运行状态,为避免误操作导致芯片运行不正
常,芯片提供系统设置保护寄存器。修改系统控制单元前,必须先关闭写保护,操作完成后应
当重新使能写保护,使芯片安全运行。
2. 1. 2
特殊功能寄存器
系统设置保护寄存器(SCU_PROT)
偏移地址:00H
复位值:00000000_00000000_00000000_00000001B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
-
PROT
bit31-1
bit0
W
R/W
PROT
对 SCU_PROT写 0x55AA6996 时,位 PROT
为 0;
写其它值时位 PROT 为 1
SCU 写保护位
0:写保护关闭
1:写保护使能
注 1:只有以字方式对 SCU_PROT 寄存器写入 0x55AA6996 才能关闭写保护,其他任何对 SCU_PROT 寄存器的
写操作都将使能写保护功能。
注 2:SCU_PROT 保护的寄存器为 SCU_NMICON,SCU_PWRC,SCU_FAULTFLAG,SCU_FLASHWAIT,
SCU_SOFTCFG,SCU_LVDCON,SCU_CCM,SCU_PLLLKCON,SCU_TIMEREN,SCU_TIMERDIS,
SCU_SCLKEN0,SCU_SCLKEN1,SCU_PCLKEN,SCU_WAKEUPTIME。
V1.0
版权所有©上海东软载波微电子有限公司
27/309
http://www.essemi.com
HR8P506_Datasheet_C
2. 2 系统电源
2. 2. 1
结构框图
ADC
VDD
LCD Driver
2.2V~5.5V
LDO
VSS
Logic & Memory
图 2-1 系统电源结构框图
2. 2. 2
芯片供电电源
芯片供电电源为 VDD,与其对应的是芯片的参考地 VSS。
VDD 给 GPIO 端口,ADC 以及 LCD 供电,内部 LDO 输出电压给数字逻辑,Flash、SRAM
等供电。
2. 3 系统复位
2. 3. 1
概述
支持 POR 上电复位
支持 BOR 低电压监测复位
支持 MRSTN 外部端口复位
支持 WDT 看门狗计数溢出复位
支持 Cortex-M0 调试接口软件复位
2. 3. 2
结构框图
MCU_CLK
CFG_PWRTEB
低电压
检测
上电
检测
BOR
POR
POR/BOR
稳定等待定
时器
1024个系统
主时钟周期
定时器
系统复位
CFG_BOREN
140ms
上电
定时器
RESET
MRSTN
WDT_RST
Cortex-M0 软件复位
图 2-2 系统复位电路结构框图
注 1:对 140ms 上电延时定时器,在 MRSTN 管脚复用为 GPIO 功能时,或当芯片发生 BOR 掉电复位后,该延时
固定为使能,与配置位 CFG_PWRTEB 无关。
注 2:芯片上电稳定后,在工作过程中,如果发生外部复位,WDT 计数溢出复位,或软件复位,则在复位条件撤除
后,芯片会立即退出复位状态,恢复正常运行状态,与上图中的各定时器无关。
V1.0
版权所有©上海东软载波微电子有限公司
28/309
http://www.essemi.com
HR8P506_Datasheet_C
2. 3. 3
复位时序图
工作电压
VDD
0V
Tfilter
1024个
MCU_CLK
140ms
RESET
图 2-3 上电复位时序示意图
工作电压
低电压检测阈值
VDD
0V
Tfilter
1024个
MCU_CLK
140ms
RESET
图 2-4 掉电复位时序示意图
2. 3. 4
外部复位MRSTN参考
VDD
D1
R1
DIODE
R2
MRSTN管脚
C1
图 2-5 MRSTN 复位参考电路图 1
注 1:采用 RC 复位,其中 47KΩ≤R1≤100KΩ,电容 C1=(0.1μF)
,R2 为限流电阻,0.1KΩ≤R2≤1KΩ。
注 2:当 MRSTN 用作外部复位管脚时,芯片内部固定集成了约 45K 欧姆的上拉电阻,可以省去上图中的电阻 R1。
VDD
VDD
R1
PNP
Q1
R4
R2
R3
MRSTN管脚
C1
图 2-6 MRSTN 复位参考电路图 2
V1.0
版权所有©上海东软载波微电子有限公司
29/309
http://www.essemi.com
HR8P506_Datasheet_C
注 1:采用 PNP 三极管复位,通过 R1(2KΩ)和 R2(10KΩ)分压作为基极输入,发射极接 VDD,集电极一路
通过 R3(20KΩ)接地,另一路通过 R4(1KΩ)和 C1(0.1μF)接地,C1 另一端作为 MRSTN 输入。
注 2:当 MRSTN 用作外部复位管脚时,芯片内部固定集成了约 45K 欧姆的上拉电阻,可以省去上图中的电阻
R1。
特殊功能寄存器
2. 3. 5
复位寄存器(SCU_PWRC)
偏移地址:08H
复位值:00000000_00000000_00000000_xxxxxxxx B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
保留
-
CFG_RST
POR_LOST
SOFT_RSTF
bit31-9
bit8
bit7
bit6
8
7
6
CFG_
POR_L
SOFT_
MR
WDTR
BOR
PORRST
POR
POR
RST
OST
RSTF
STF
STF
F
F
RCF
F
-
-
R/W
配置字读取标志位(内部测试用,用户无需关
心此位)
0:无读取配置字发生
1:读取配置字发生
R/W
POR 丢失标志位(内部测试用,用户无需关心
此位)
0:无 POR 丢失
1:有 POR 丢失
R/W
软件复位标志位
0:无软件复位
1:有软件复位
MRSTF
bit5
R/W
MRSTN 复位标志位
0:无 MRSTN 复位
1:有 MRSTN 复位
WDTRSTF
bit4
R/W
WDT 复位标志位
0:无 WDT 复位
1:有 WDT 复位
R/W
BOR 掉电复位标志位
0:无 BOR 复位
1:有 BOR 复位
BORF
bit3
PORRSTF
bit2
R/W
PORRST 上电复位标志位
0:无 PORRST 复位
1:有 PORRST 复位
PORRCF
bit1
R/W
PORRC 复位标志位(内部测试用,用户无需关
V1.0
版权所有©上海东软载波微电子有限公司
30/309
http://www.essemi.com
HR8P506_Datasheet_C
心此位)
0:无 PORRC 复位
1:有 PORRC 复位
PORF
bit0
POR 复位标志位(内部测试用,用户无需关心
此位)
0:无 POR 复位
1:有 POR 复位
R/W
2. 4 低电压监测(LVD)
概述
2. 4. 1
芯片内置 LVD 低电压监测模块,可监测 VDD 电压或 LVD_IN 模拟通道电压。LVD 模块监
测 LVD_IN 模拟通道时,阈值电压为 1.2V。触发条件可选择掉电触发或上电触发,触发后
产生 LVD 中断标志,当 LVD 中断使能开启时产生 LVD 中断请求。在睡眠模式下此中断可
唤醒芯片。
特殊功能寄存器
2. 4. 2
低电压监测控制寄存器(SCU_LVDCON)
偏移地址:28H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
6
5
4
3
18
17
16
保留
15
LVDO
14
13
保留
—
12
11
10
IFS
bit31-16
9
8
IE
IF
7
VS
—
—
2
保留
LVDO
bit15
R
LVD 输出状态位
0:被监测电压高于电压阈值
1:被监测电压低于电压阈值
—
bit14-13
—
—
IFS
bit12-10
0
EN
R/W
LVD 中断标志产生模式选择位
000:LVDO 上升沿产生中断
001:LVDO 下降沿产生中断
010:LVDO 高电平产生中断
011:LVDO 低电平产生中断
1xx:LVDO 变化(上升或下降沿)产生中断
IE
bit9
R/W
LVD 中断使能位
0:禁止
1:使能
IF
bit8
R/W
LVD 中断标志位
0:未发生 LVD 触发事件
V1.0
版权所有©上海东软载波微电子有限公司
1
FLTEN
31/309
http://www.essemi.com
HR8P506_Datasheet_C
1:发生 LVD 触发事件
边沿模式产生中断标志时,可以写 1 清除标志;
电平模式产生中断标志时,该标志只读,触发电平
消失后,中断标志自动清零。
VS
bit7-4
R/W
—
bit3-2
—
FLTEN
bit1
EN
bit0
LVD 触发电压
0000:2.0V
0001:2.1V
0010:2.2V
0011:2.4V
0100:2.6V
0101:2.8V
0110:3.0V
0111:3.6V
1000:4.0V
1001:4.6V
1010:2.3V
1011,,1100,1101,1110:保留
1111:监测 LVD_IN,阈值电压 1.2V
—
R/W
LVD 滤波使能位
0:禁止
1:使能
R/W
LVD 使能位
0:禁止
1:使能
注 1:对 SCU_LVDCON 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:对 LVD 滤波使能位 FLTEN,需根据实际芯片的工作电源和环境,及应用系统的具体要求进行设置,当 LVD
滤波使能时,会滤除短暂的电源电压抖动,但也会降低 LVD 电路对电源波动的反应敏感度。
2. 5 系统低功耗操作模式
2. 5. 1
概述
配置外设时钟控制寄存器 SCU_PCLKEN,可分别关闭芯片各个外设功能模块电路的时钟,
使该部分电路功耗降到最低。
通过 WFI 指令,可使芯片进入休眠状态,配置 SCB_SCR 寄存器的 SLEEPDEEP 位,可选
择休眠状态为浅睡眠模式或深度睡眠模式。
芯片进入休眠状态后,所有 I/O 端口将保持进入休眠前的状态。为了降低功耗,所有 I/O 端
口都应保持为高电平或低电平,同时避免输入端口悬空而产生漏电流,可通过弱上拉或下拉
将悬空的输入端口固定为高电平或低电平。
芯片进入休眠状态后,时钟工作状态参考下表:
V1.0
版权所有©上海东软载波微电子有限公司
32/309
http://www.essemi.com
HR8P506_Datasheet_C
时钟
浅睡眠模式
深度睡眠模式
XTAL
工作(若 XTAL_EN=1)
工作(若 XTAL_EN=1 且 MOSC_EN=1)
HRC
工作(若 HRC_EN=1)
工作(若 HRC_EN=1 且 MOSC_EN=1)
LRC
工作
工作
表 2-1 低功耗模式时钟状态表
浅睡眠模式
2. 5. 2
在浅睡眠模式下,芯片内核时钟停止,指令停止运行。可通过复位或中断唤醒浅睡眠模式。
芯片进入浅睡眠模式的步骤如下:
配置休眠状态选择位 SLEEPDEEP=0;
运行等待中断(WFI)指令,进入浅睡眠模式。
在浅睡眠模式下外设功能模块继续运行,并可能产生中断使内核处理器恢复运行。浅睡眠模
式下不访问存储器系统,相关控制器和内部总线。
在浅睡眠模式下,内核处理器的状态和寄存器,外设寄存器和内部 SRAM 的值都会保持,端
口的逻辑电平也会保持睡眠前的状态。
深度睡眠模式
2. 5. 3
在深度睡眠模式下,芯片内核时钟停止,指令停止运行。可通过复位或中断唤醒深度睡眠模
式。
芯片进入深度睡眠模式的步骤如下:
配置休眠状态选择位 SLEEPDEEP=1;
运行等待中断(WFI)指令,进入深度睡眠模式。
在深度睡眠模式下,外设时钟 PCLK 停止,使用 PCLK 或其分频时钟作为时钟源的外设功能
模块都停止工作,其它使用内部低速时钟 LRC 或外部时钟 XTAL 作为时钟源的外设功能模块
可正常工作。深度睡眠模式下不访问存储器系统,相关控制器和内部总线。
在深度睡眠模式下,内核处理器的状态和寄存器,外设寄存器和内部 SRAM 的值都会保持,
端口的逻辑电平也会保持深度睡眠前的状态。
在进入深度睡眠模式前,通过系统唤醒时间控制寄存器(SCU_WAKEUPTIME)的深度睡眠
模式时钟控制位(MOSC_EN)来选择主晶振 XTAL、PLL、HRC 和时钟滤波器 CLKFLT 等
时钟模块是否关闭。选择时钟模块关闭时(即 MOSC_EN=0)
,可降低深度睡眠模式下系统
的功耗,但同时也增大了唤醒时所需要的时间。
睡眠模式的唤醒
2. 5. 4
芯片可通过以下事件从睡眠状态唤醒,并执行下一条指令或进入中断处理程序。如果是中断
唤醒且该中断已使能,则唤醒后立即进入中断处理程序,否则执行休眠时的下一条指令。
浅睡眠模式唤醒:
所有中断均可以唤醒浅睡眠模式
芯片复位唤醒浅睡眠模式
深度睡眠模式唤醒:
V1.0
版权所有©上海东软载波微电子有限公司
33/309
http://www.essemi.com
HR8P506_Datasheet_C
外部端口中断 PINTx 可以唤醒深度睡眠模式
外部端口中断 KINT 可以唤醒深度睡眠模式
RTC 中断可以唤醒深度睡眠模式
LVD 中断可以唤醒深度睡眠模式
WDT 中断可以唤醒深度睡眠模式(工作于 LRC 时钟源)
ADC 中断可以唤醒深度睡眠模式(工作于 LRC 时钟源)
芯片复位唤醒深度睡眠模式
2. 5. 5
FLASH存储器等待功能
FLASH 存储器的访问频率对芯片功耗影响较大,降低其访问频率,可降低芯片功耗。可以通
过降低系统时钟频率来降低 FLASH 存储器的访问频率,但这同时也会降低芯片外设模块的
工作速率。
芯片支持增加 FLASH 存储器等待时间的设置,
在不降低系统时钟频率的前提下,
降低 FLASH
存储器取指令或数据的频率,从而降低芯片整体功耗。同时 FLASH 存储器支持最高 24MHz
的访问频率,如果系统时钟的频率超过 24MHz,则也需要设置 FLASH 存储器等待时间,否
则会导致 FLASH 访问错误。
配置 SCU_FLASHWAIT 寄存器的 ACCT,可设定 FLASH 访问的等待时间。FLASH
访问的等待时间,与芯片支持的系统时钟最高频率的对应关系描述如下:
ACCT=0 时,芯片系统时钟频率最高可为 24MHz;
ACCT=1 时,芯片系统时钟频率最高可为 40MHz;
ACCT=2~F 时,芯片系统时钟频率最高可为 48MHz。
如上所述,当芯片系统时钟选为 PLL 倍频时钟 32MHz 时,ACCT不能为 0,即至少需
要 2 个系统时钟周期才能成功访问 FLASH 存储器;当芯片系统时钟选为 PLL 倍频时钟
48MHz 时,ACCT不能为 0 或 1,即至少需要 3 个系统时钟周期才能成功访问 FLASH
存储器。所以当系统时钟为 32MHz 或 48MHz 时,需要先设置 ACCT,选择合适的
FALSH 读取时间,再将系统时钟切换到 32MHz 或 48MHz,否则会导致芯片指令运行错误。
2. 5. 6
特殊功能寄存器
FLASH 访问等待时间寄存器(SCU_FLASHWAIT)
偏移地址:20H
复位值:00000000_00000000_00000000_00000010B
31
30
29
28
27
26
25
24
23
22
21
20
19
7
6
5
4
3
18
17
16
2
1
0
保留
15
14
13
12
11
10
9
8
保留
-
ACCT
bit31-4
bit3-0
V1.0
版权所有©上海东软载波微电子有限公司
ACCT
-
R/W
-
FLASH 读取访问等待时间设置位
0:1TCLK 完成 FLASH 读取
1:2TCLK
34/309
http://www.essemi.com
HR8P506_Datasheet_C
2:3TCLK
...
F:16TCLK
注 1:对 SCU_FLASHWAIT 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:TCLK 时钟周期与芯片系统时钟周期相同。
2. 6 系统时钟
2. 6. 1
概述
芯片系统有四个可选时钟源。
外部时钟源支持两种模式,即高速模式 HS(又称为 HOSC ,1~20MHz)和低速模式
LP(又称为 LOSC ,32KHz)。支持 2 组外部晶振管脚可选择。
内部高频 RC 时钟源 HRC,支持 4MHz/16MHz 两种时钟频率可选择。
内部低频 RC 时钟源 LRC,支持约 32KHz 时钟频率。
内部集成锁相环电路 PLL,其时钟源输入频率支持 32KHz 或 4MHz,PLL 输出时钟频率支
持 32MHz 或 48MHz。
系统时钟支持 1~128 分频。
支持 2 组 IO 端口可输出系统时钟频率。
外部时钟停振检测,支持停振后自动切换至 LRC 时钟并产生中断。
PLL 失锁检测,支持 PLL 失锁后自动切换至使用 PLL 前的时钟源并产生中断。
支持系统时钟滤波,提高系统工作稳定性。
芯片系统时钟源的选择方式,见如下描述:
1)系统时钟为外部时钟源 XTAL:在编程界面中设置配置字,选择晶振管脚,选择高速 HS
模式或低速 LP 模式;在程序软件中设置 SCU_SCLKEN0 寄存器的 CLK_SEL=2,设置
SCU_SCLKEN1 寄存器的 XTAL_EN=1,选择并使能外部振荡器时钟;设置
SCU_SCLKEN1 寄存器的 PLL_EN=0。
2)系统时钟为内部时钟源 HRC 16MHz:在编程界面中设置配置字,选择内部时钟 16MHz;
在程序软件中设置 SCU_SCLKEN0 寄存器的 CLK_SEL=0;设置 SCU_SCLKEN1 寄存
器的 PLL_EN=0。
3) 系统时钟为内部时钟源 HRC 4MHz:在编程界面中设置配置字,选择内部时钟 4MHz;
设置 SCU_SCLKEN0 寄存器的 CLK_SEL=0;设置 SCU_SCLKEN1 寄存器的
PLL_EN=0。
4)系统时钟为内部时钟源 LRC 32KHz:设置 SCU_SCLKEN0 寄存器的 CLK_SEL=1;设
置 SCU_SCLKEN1 寄存器的 PLL_EN=0。
5)系统时钟为内部时钟源 PLL 倍频时钟:设置 SCU_SCLKEN0 寄存器的 CLK_SEL=0;
设置 SCU_SCLKEN1 寄存器的 PLL_REF_SEL,选择 PLL 输入时钟源,设置
PLL_48M_SEL,选择 PLL 输出时钟频率,设置 PLL_EN=1。
V1.0
版权所有©上海东软载波微电子有限公司
35/309
http://www.essemi.com
HR8P506_Datasheet_C
结构框图
2. 6. 2
C F G _ O S C M D [7 :0 ]
C F G _ O S C _ P IN
CCM
O SC1I
O SC2I
32K H z,
1~24M H z
O SC1O
外部振荡电路
XTAL
S Y S C L K _ D IV < 2 :0 >
PLL_M UX
OSC_CLK
CLKFLT_BY
O SC2O
2分 频
4分 频
C F G _ O S C _ P IN
分
频
器
c lk flt
PLL
4 M H z /1 6 M H z
内部振荡器
3 2 /4 8
MHz
HRC
8分 频
SYS_C LK
16分 频
32分 频
64分 频
32KH z 时 钟
振 荡 器 LRC
WDT_32K
128分 频
PLL_EN
C L K _ S E L [1 :0 ]
WDT
看门狗
模块
P L L _ R E F _ S E L /P L L _ 4 8 M _ S E L
FCLK
SCLK
HCLK
PCLK
DCLK
D C L K F C L K fo r C o rte x M 0
系 统 定 时 器 S y s T ic k
生成器
H C L K A H B 总 线 ,M E M O R Y
PCLK
LRC_32K
异步时钟
LCD显 示 驱
动模块
OSC_CLK
ADC
LRC_32K
模数转换器
EUART0
OSC_CLK
增强型串口
U A R T 0 /U A R T 1
OSC_CLK
串口通讯
RTC
LRC_32K
RTC定 时 器
T32N0
OSC_CLK
32位 定 时 器
异步时钟
16位 定 时 器
T16N0~T16N3
图 2-7 系统时钟电路结构框图
2. 6. 3
功能说明
2. 6. 3. 1
外部时钟XTAL
外部振荡器可通过 PB8、PB9 或 PB10、PB11 其中一组端口串接晶振工作,可在编程界
面中设置芯片配置字进行选择。只要外部振荡器模块使能后(XTAL_EN=1)
,对应的 IO
端口即被用作模拟端口,禁止其数字输入输出功能。
外部时钟源支持两种模式,即高速模式 HS(又称为 HOSC,频率范围为 1~20MHz)和低
速模式 LP(又称为 LOSC,频率约为 32KHz)
。可在编程界面中设置芯片配置字进行选择,
工作在低速模式时,建议使用 32.768KHz 晶振,工作在高速模式时,建议使用 1~20MHz
晶振。
当使用外部振荡器时,需外接匹配电容。XTAL 振荡器电路示意图如下:
V1.0
版权所有©上海东软载波微电子有限公司
36/309
http://www.essemi.com
HR8P506_Datasheet_C
XCLK_IN
OSCxI
C1
Rf
C2
RS
XTAL_EN
OSCxO
图 2-8 XTAL 振荡器电路结构示意图
注 1:电阻 RS 为可选配置。
注 2:C1 和 C2 为晶振匹配电容,根据所使用的晶振,电容参考取值范围为 15~33pF,建议 1~20MHz 晶振匹配 15pf
电容,32.768KHz 晶振匹配 33pf 电容。
芯片上电后系统时钟默认为内部高速时钟 HRC,需软件配置方可使用外部时钟 XTAL。详
情可参考外部时钟操作例程。当 MOSC_EN=0,芯片进入深度睡眠模式时,XTAL 时钟振
荡器会自动关闭,被唤醒后,XTAL 时钟振荡器会自动打开;当 MOSC_EN=1,芯片进入
深度睡眠模式时,XTAL 时钟振荡器不会关闭。
当系统时钟选择为外部时钟 XTAL,在芯片正常工作时,不建议关闭 XTAL 时钟振荡器
(XTAL_EN=0)
,否则系统时钟会自动切换至内部低速 LRC 时钟。
可通过寄存器位 XTAL_LP,选择外部时钟振荡器的功耗模式,该选择位仅在外部时钟处于
低速 LP 模式时有效,在软件检测到外部振荡器稳定后(XTAL_RDY=1),可以将振荡器设
置为低功耗模式,降低芯片振荡器电路功耗。当外部时钟为高速 HS 模式时,振荡器电路
会一直保持高功耗模式,无法设置为低功耗模式。
2. 6. 3. 2
内部高速时钟HRC
内部高速时钟 HRC 支持 4MHz 和 16MHz 频率可选,可在编程界面中设置芯片配置字进行
选择。全温度范围内 HRC 频率精度为±3%。芯片上电后系统时钟默认为内部高速时钟
HRC,可通过寄存器位 HRC_EN 关闭。
当系统时钟选择为内部高速时钟 HRC 时,不建议关闭 HRC 时钟(HRC_EN=0)
,否则系
统时钟会自动切换至内部低速 LRC 时钟。
在 HRC_EN=1 的情况下,当 MOSC_EN=0,芯片进入深度睡眠模式时,HRC 时钟会自
动关断,被唤醒后,HRC 时钟会自动使能;当 MOSC_EN=1,芯片进入深度睡眠模式时,
HRC 时钟不会关闭。
2. 6. 3. 3
内部低速时钟LRC
芯片支持内部低速时钟 LRC(频率约为 32KHz),且无法关闭,始终保持工作。全温度范
围内,LRC 时钟频率精度为±40%。内部低速时钟可供芯片主系统、WDT、LCD、LED、
RTC 等模块使用。对于时钟频率精度要求高的模块不建议使用 LRC 作为时钟源。
2. 6. 3. 4
锁相环PLL
PLL 时钟输入可选择 XTAL(32.768KHz、4MHz、8MHz、16MHz)
,HRC(4MHz、16MHz),
V1.0
版权所有©上海东软载波微电子有限公司
37/309
http://www.essemi.com
HR8P506_Datasheet_C
LRC (32KHz)
。
PLL 模块工作时,通过寄存器位 PLL_REF_SEL选择其输入时钟源,同时需对所选
用的 HRC,LRC 或 XTAL 时钟振荡器进行对应的正确设置;通过寄存器位 PLL_48M_SEL
选择 PLL 模块的倍频系数,得到对应的时钟输出频率,具体见下面的详细描述:
当 PLL_REF_SEL=0 时:HRC 必须配置为 4MHz(通过芯片配置字进行配置)
,PLL 输入
时钟源即为 HRC 4MHz。当 PLL_48M_SEL=0 时,PLL 倍频系数为 8 倍,PLL 输出时钟
为 32MHz。当 PLL_48M_SEL=1 时,PLL 倍频系数为 12 倍,PLL 输出时钟为 48MHz。
当 PLL_REF_SEL=2 时:HRC 必须配置为 16MHz(通过芯片配置字进行配置)
,PLL 输
入时钟源为 HRC 16MHz 的 4 分频。当 PLL_48M_SEL=0 时,PLL 倍频系数为 8 倍,PLL
输出时钟为 32MHz。当 PLL_48M_SEL=1 时,PLL 倍频系数为 12 倍,PLL 输出时钟为
48MHz。
当 PLL_REF_SEL=3 时:PLL 输入时钟源为 LRC 32KHz。当 PLL_48M_SEL=0 时,PLL
倍频系数为 1024 倍,PLL 输出时钟为 32.768MHz。当 PLL_48M_SEL=1 时,PLL 倍频
系数为 1536 倍,PLL 输出时钟为 49.152MHz。
当 PLL_REF_SEL=4 时:XTAL 必须配置为 HS 模式,外接 4MHz 振荡器, PLL 输入时
钟源为 XTAL 4MHz 时钟。当 PLL_48M_SEL=0 时,PLL 倍频系数为 8 倍,PLL 输出时钟
为 32MHz。当 PLL_48M_SEL=1 时,PLL 倍频系数为 12 倍,PLL 输出时钟为 48MHz。
当 PLL_REF_SEL=5 时:XTAL 必须配置为 HS 模式,外接 8MHz 振荡器, PLL 输入时
钟源为 XTAL 8MHz 时钟的 2 分频。当 PLL_48M_SEL=0 时,PLL 倍频系数为 8 倍,PLL
输出时钟为 32MHz。当 PLL_48M_SEL=1 时,PLL 倍频系数为 12 倍,PLL 输出时钟为
48MHz。
当 PLL_REF_SEL=6 时:XTAL 必须配置为 HS 模式,外接 16MHz 振荡器, PLL 输入时
钟源为 XTAL 16MHz 时钟的 4 分频。当 PLL_48M_SEL=0 时,PLL 倍频系数为 8 倍,PLL
输出时钟为 32MHz。当 PLL_48M_SEL=1 时,PLL 倍频系数为 12 倍,PLL 输出时钟为
48MHz。
当 PLL_REF_SEL=7 时:XTAL 必须配置为 LP 模式,外接 32.768KHz 振荡器,PLL 输入
时钟源为 XTAL 32KHz 时钟。当 PLL_48M_SEL=0 时,PLL 倍频系数为 1024 倍,PLL 输
出时钟为 32.768MHz。当 PLL_48M_SEL=1 时,PLL 倍频系数为 1536 倍,PLL 输出时
钟为 49.152MHz。
对 PLL 模块,必须等其所选择的输入时钟源稳定后,才可以使能 PLL 工作(PLL_EN=1),
详情可参考 PLL 操作例程。
在 PLL_EN=1 的情况下,当 MOSC_EN=0,芯片进入深度睡眠模式时,PLL 会自动关闭,
被唤醒后,PLL 会自动打开;当 MOSC_EN=1,芯片进入深度睡眠模式时,PLL 不会关闭。
PLL 模块支持锁频或失锁中断,可通过寄存器位 LK_IFS进行选择,当 LK_IFS=0 或
2 时,PLL 锁频成功时产生中断,当 LK_IFS=1 或 3 时,PLL 锁频失败时产生中断,当
LK_IFS=4,5,6 或 7 时,PLL 锁频成功或失败时都可以产生中断。
PLL 模块工作时,建议不旁路 PLL 锁频信号(PLL_BYLOCK=0)
,当 PLL 时钟失锁后,
系统会自动切换至非 PLL 的原始时钟源(由 CLK_SEL 决定)
。如果旁路 PLL 锁频信号
(PLL_BYLOCK=1),当 PLL 时钟失锁后,系统仍使用 PLL 时钟,可能会导致芯片工作
V1.0
版权所有©上海东软载波微电子有限公司
38/309
http://www.essemi.com
HR8P506_Datasheet_C
异常。时钟输出 CLKO
芯片支持 2 路 IO 端口输出时钟信号。其中 CLKO0 端口支持高频时钟直接输出,CLKO1
端口支持高频时钟 128 分频后输出。使用时需配置相应端口的 GPIO_PxFUNCy 寄存器,
使能管脚的时钟输出功能。当使用高频时钟直接输出时,需使能管脚大电流驱动模式,以
免输出时钟波形严重失真。
2. 6. 3. 5
外部时钟停振检测CCM
外部时钟停振检测模块使能必须同时满足以下条件:
1. SCU_CCM 寄存器的外部时钟停振检测软件使能位 EN=1。
2. 时钟源选择为外部时钟,即 SCU_SCLKEN0 寄存器的 CLK_SEL=2。
注意:
1.
当 PLL 时钟源输入使用的是外部时钟,但是以上 2 个条件有任何一个不满足时,外部
时钟停振检测模块不工作。
2.
外部时钟停振检测开始工作后,当 MOSC_EN=0 时,芯片进入深度睡眠模式会关闭外
部时钟源导致外部时钟停振,此类情况不会触发时钟停振标志。
外部时钟停振检测开始工作后,当检测到外部时钟停振时,系统时钟会自动切换至 LRC
时钟,同时会置起中断标志位。当芯片进入停振中断后,需立即操作 CLK_SEL 把系统时
钟切换至 LRC 或 HRC,同时关闭外部时钟振荡器(XTAL_EN=0)
;如果使用 PLL,则还
需要关闭 PLL 模块(PLL_MUX=0,PLL_EN=0)。当外部时钟停振问题解决后,必须再次
通过软件配置使能外部时钟。详情可参考外部时钟停振检测例程。
2. 6. 3. 6
时钟滤波CLKFLT
芯片支持系统时钟分频前滤波。
系统时钟滤波使能操作时,必须先使能 SCU_WAKEUPTIME 寄存器的系统时钟滤波器使
能位 CLKFLT_EN=1,然后再不旁路 CLKFLT,即 SCU_SCLKEN0 寄存器的 CLKFLT_BY
≠8’h55。
当需要关闭时钟滤波时,必须先旁路 CLKFKT,即 CLKFLT_BY=8’h55,然后再通过
CLKFLT_EN=0 来关闭时钟滤波器。详情可见时钟滤波例程。
在 CLKFLT_EN=1 的情况下,当 MOSC_EN=0,芯片进入深度睡眠模式时,CLKFLT 会自
动关断,而当深度睡眠唤醒后,CLKFLT 会自动打开;当 MOSC_EN=1,芯片进入深度睡
眠模式时,CLKFLT 不会关断。
为保证系统工作可靠性,除深度睡眠模式外,不建议关闭 CLKFLT。
2. 6. 3. 7
睡眠模式时钟状态
在睡眠模式下,芯片内核处理器的状态和寄存器,外设寄存器和内部 SRAM 的值都会保持,
端口的逻辑电平也会保持睡眠前的状态。
V1.0
版权所有©上海东软载波微电子有限公司
39/309
http://www.essemi.com
HR8P506_Datasheet_C
浅睡眠模式
2. 6. 3. 8
在浅睡眠模式下,芯片内核时钟停止工作,外设时钟 PCLK 正常运行,芯片时钟源正常工
作。
深度睡眠模式
2. 6. 3. 9
在深度睡眠模式下,芯片内核时钟停止工作,外设时钟 PCLK 停止运行。
1. MOSC_EN=0 时:除 LRC 时钟源正常运行外,XTAL、HRC、PLL 和 CLKFLT 模块全
部关断。外设模块只有选择使用 LRC 作为时钟源的能正常工作,其它全部停止工作(异
步唤醒功能正常工作)
。当芯片唤醒后,XTAL、HRC、PLL、CLKFLT 自动恢复到睡
眠前的状态。
2. MOSC_EN=1 时:时钟源正常运行,PLL 模块、CLKFLT 正常工作。外设模块只有选
择使用 LRC、XTAL 作为时钟源的能正常工作,其它使用 PCLK 或其分频时钟作为时
钟源的全部停止工作(异步唤醒功能正常工作)
。
特殊功能寄存器
2. 6. 4
系统时钟控制寄存器 0(SCU_SCLKEN0)
偏移地址:40H
复位值:00000000_00000000_00000000_00000100B
31
30
29
28
保留
15
保留
14
27
26
CLKOUT1_SEL
13
12
11
SYSCLK_DIV
-
CLKOUT1_SEL
CLKOUT0_SEL
25
24
23
21
20
CLKOUT0_SEL
10
9
保留
8
bit 31-28
bit27-26
bit 25-24
-
19
18
17
16
1
0
CLKFLT_BY
7
6
5
4
保留
PLL_MUX
3
2
XTAL_LP
CLK_SEL
-
R/W
CLKO1 选择位
00:禁止时钟输出
01:系统时钟输出(128 分频)
10:LRC 时钟输出
11:HRC 时钟输出(128 分频)
R/W
CLKO0 选择位
00:禁止时钟输出
01:系统时钟输出
10:LRC 时钟输出
11:HRC 时钟输出
CLKFLT 旁路控制位
8’h55:CLKFLT 旁路
其它:不旁路 CLKFLT
CLKFLT 为系统时钟滤波器,为保证系统稳定
性,不建议旁路 CLKFLT。
CLKFLT_BY
bit 23-16
R/W
-
bit15
-
V1.0
版权所有©上海东软载波微电子有限公司
22
-
40/309
http://www.essemi.com
HR8P506_Datasheet_C
SYSCLK_DIV
bit14-12.
R/W
-
bit11-9
-
系统时钟后分频选择位
000:1:1
001:1:2
010:1:4
011:1:8
100:1:16
101:1:32
110:1:64
111:1:128
-
系统时钟选择位
0:使用原始时钟(由 CLK_SEL 选择的时钟)
1:使用倍频时钟
PLL_MUX
bit8
R/W
-
bit7-3
-
-
-
外部时钟振荡器功耗模式选择位
0:低功耗(仅低速 LP 模式有效)
1:高功耗
XTAL_LP
bit2
CLK_SEL
bit1-0
R/W
原始时钟源选择位
00 : HRC 时 钟 4/16MHz ( 由 配 置 位
INTOSC_SEL 设置为 4MHz 或 16MHz)
01:LRC 时钟 32KHz
10:XTAL 时钟(由配置位 CFG_OSCMD 设
置为 HS 或 LP 模式)
11 : HRC 时 钟 4/16MHz ( 由 配 置 位
INTOSC_SEL 设置为 4MHz 或 16MHz)
注 1:对 SCU_SCLKEN0 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:
当系统时钟选择为 PLL 倍频时钟 32MHz 或 48MHz 时,需要先设置 SCU_FLASHWAIT 寄存器的 ACCT,
选择合适的 FALSH 读取时间,再将系统时钟切换到 32MHz 或 48MHz,否则会导致芯片指令运行错误。具体
参见“FLASH 存储器等待功能”章节的描述。
系统时钟控制寄存器 1(SCU_SCLKEN1)
偏移地址:44H
复位值:00000000_00000010_00000000_00000010B
31
30
29
28
27
26
25
24
23
22
21
20
19
保留
15
14
保留
13
12
11
PLL_BYLOCK
PLL_EN
PLL_48M_SEL
10
9
8
PLL_REF_SEL
7
6
5
4
3
保留
-
bit 31-19
-
-
PLL_RDY
bit18
R
PLL 时钟振荡模式稳定标志位
0:不稳定
V1.0
版权所有©上海东软载波微电子有限公司
18
17
16
PLL_RDY
HRC_RDY
XTAL_RDY
2
1
0
HRC_EN
XTAL_EN
41/309
http://www.essemi.com
HR8P506_Datasheet_C
1:稳定
HRC_RDY
bit17
R
内部高速时钟振荡模式稳定标志位
0:不稳定
1:稳定
XTAL_RDY
bit16
R
外部时钟振荡模式稳定标志位
0:不稳定
1:稳定
该标志位仅在寄存器位 XTAL_EN=1 时有效,作为
XTAL 振荡器工作稳定的标志位
-
bit15-14
-
-
PLL_BYLOCK
bit13
R/W
PLL 锁频信号旁路控制位
0:不旁路
1:旁路
R/W
PLL 倍频电路工作使能位
0:禁止
1:使能(使能前需先确认 PLL_REF_SEL 所选择的
时钟源是否稳定)
R/W
PLL 输出时钟选择位
0:输出约 32MHz 时钟
1:输出约 48MHz 时钟
PLL 输入时钟源选择位
000:内部 4MHz 时钟
001:010:内部 16MHz 时钟
011:内部 LRC 时钟(约 32KHz)
100:外部 4MHz 时钟
101:外部 8MHz 时钟
110:外部 16MHz 时钟
111:外部 32KHz 时钟
PLL_EN
PLL_48M_SEL
bit12
bit11
PLL_REF_SEL
bit10-8
R/W
-
bit7-2
-
HRC_EN
XTAL_EN
bit1
bit0
-
R/W
内部高速时钟振荡电路使能位
0:禁止
1:使能
R/W
外部时钟振荡电路使能位
0:禁止
1:使能
注 1:对 SCU_SCLKEN1 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
外设时钟控制寄存器(SCU_PCLKEN)
偏移地址:48H
V1.0
版权所有©上海东软载波微电子有限公司
42/309
http://www.essemi.com
HR8P506_Datasheet_C
复位值:00010011_00010011_00011111_11110111B
31
30
29
28
27
26
25
24
23
22
21
保留
保留
SPI1_EN
14
13
19
18
_EN
12
11
10
9
8
7
6
5
4
T32N
T16N3_
T16N2
T16N1_E
T16N0_E
WDT_E
LCD_E
RTC_E
ADC_E
0_EN
EN
_EN
N
N
N
N
N
N
3
bit 31-29
-
I2C0_EN
bit28
R/W
-
bit 27-26
-
SPI1_EN
bit 25
2
-
bit 23-21
-
EUART0_EN
bit 20
R/W
-
bit 19-18
-
R/W
UART0_EN
bit 16
R/W
UART0 时钟使能位
0:禁止
1:使能
-
bit 15-13
-
T32N0_EN
bit 12
R/W
T32N0 时钟使能位
0:禁止
1:使能
R/W
T16N3 时钟使能位
0:禁止
1:使能
R/W
T16N2 时钟使能位
0:禁止
1:使能
R/W
T16N1 时钟使能位
0:禁止
1:使能
T16N1_EN
bit 10
bit 9
V1.0
版权所有©上海东软载波微电子有限公司
SCU_EN
-
bit 17
T16N2_EN
GPIO_EN
N
EUART0 时钟使能位
0:禁止
1:使能
UART1_EN
bit 11
0
-
UART1 时钟使能位
0:禁止
1:使能
T16N3_EN
1
-
SPI0 时钟使能位
0:禁止
1:使能
R/W
EN
I2C0 时钟使能位
0:禁止
1:使能
R/W
bit 24
EN
-
SPI1 时钟使能位
0:禁止
1:使能
SPI0_EN
16
UART0_
IAP_E
保留
保留
-
17
UART1_
保留
保留
SPI0_EN
EN
15
20
EUART0
I2C0_
-
43/309
http://www.essemi.com
HR8P506_Datasheet_C
T16N0_EN
bit 8
R/W
T16N0 时钟使能位
0:禁止
1:使能
WDT_EN
bit 7
R/W
WDT 时钟使能位
0:禁止
1:使能
LCD_EN
bit 6
R/W
LCD 时钟使能位
0:禁止
1:使能
R/W
RTC 时钟使能位
0:禁止
1:使能
ADC 时钟使能位
0:禁止
1:使能
RTC_EN
bit 5
ADC_EN
bit 4
R/W
-
bit 3
-
IAP_EN
bit 2
GPIO_EN
bit 1
SCU_EN
bit 0
-
R/W
FLASH_IAP 时钟使能位
0:禁止
1:使能
R/W
GPIO 时钟使能位
0:禁止
1:使能
R/W
SCU 时钟使能位
0:禁止
1:使能
注 1:对 SCU_PCLKEN 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:使能某外设时钟之前需要先使能 SCU 时钟,即 SCU_PCLKEN 寄存器 SCU_EN 位设置为 1。
以 WDT 时钟配置为例:
LDR
R0, =SCU_PCLKEN
LDR
R1, =0X00000001
STR
R1, [R0]
LDR
R1, =0X00000081
STR
R1, [R0]
; 首先使能 SCU 时钟
; 使能 SCU 和 WDT 时钟
系统唤醒时间控制寄存器(SCU_WAKEUPTIME)
偏移地址:4CH
复位值:00000000_00000000_00110011_11111111B
31
30
29
28
27
26
25
24
23
22
21
20
19
保留
15
14
13
12
-
FLASHPW_PD
CLKFLT_EN
MOSC_EN
V1.0
版权所有©上海东软载波微电子有限公司
11
18
17
16
LDOLP_VOSEL
10
9
8
7
6
5
4
3
2
1
0
WAKEUPTIME
44/309
http://www.essemi.com
HR8P506_Datasheet_C
-
bit31-19
-
-
LDOLP_VOSEL
bit18-16
W
在深度睡眠模式下,LDO 电压输出选择位
000:正常电压
100:睡眠模式电压(需软件固定设置为 100)
其它:仅供测试使用,请勿设置
-
bit15
-
-
W
睡眠模式下 FLASH 电源控制位
0:开启
1:关断(仅供测试使用,实际应用时禁止关断
FLASH 电源)
R/W
CLKFLT 系统时钟滤波器使能位
0:禁止
1:使能
CLKFLT 为系统时钟滤波器,为保证系统稳定性,
在芯片正常工作时,需保持使能,在深度睡眠模式
下,可禁止 CLKFLT,降低芯片功耗
FLASHPW_PD
bit14
CLKFLT_EN
bit13
MOSC_EN
bit12
R/W
深度睡眠模式时钟控制位
0:深度睡眠模式下,自动关闭 HRC、PLL、XTAL
和时钟滤波器 CLKFLT
1:深度睡眠模式下,使能 HRC、PLL、XTAL 和
时钟滤波器 CLKFLT
WAKEUPTIME
bit11-0
R/W
唤醒时间控制位
Tmclk* WAKEUPTIME
注 1:对 SCU_WAKEUPTIME 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:对 LDOLP_VOSEL寄存器位,需软件在芯片初始化时固定设置为 100,以降低深度睡眠模式下的芯片
功耗。
注 3:对 FLASHPW_PD 寄存器位,需软件固定设置为 0,禁止写 1,否则可能会导致芯片工作异常。
注 4:深度睡眠模式下,当 MOSC_EN 为 1 时,HRC、PLL、XTAL 和时钟滤波器还必须各自的控制位 HRC_EN、
PLL_EN、XTAL_EN 和 CLKFLT_EN 为 1 时,才实际被使能。
外部时钟检测控制寄存器(SCU_CCM)
偏移地址:54H
复位值:00000000_00000000_00000000_00000001B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
保留
15
14
13
12
11
10
9
保留
8
IF
7
6
IFS
5
4
IE
-
bit31-17
-
-
FLAG
bit16
R
CCM 外部时钟停振检测标志位
V1.0
版权所有©上海东软载波微电子有限公司
16
FLAG
3
2
保留
1
0
EN
45/309
http://www.essemi.com
HR8P506_Datasheet_C
0:晶振未停振
1:晶振停振
-
-
bit15-9
IF
bit8
IFS
bit7-5
-
R/W
CCM 中断标志位
0:未发生 CCM 触发事件
1:发生 CCM 触发事件
边沿模式产生中断标志时,可以写 1 清除标志;
电平模式产生中断标志时,该标志只读,触发电平消失
后,中断标志自动清零。
R/W
CCM 中断标志产生模式选择位
000:CCM_FLAG 上升沿产生中断,晶振停振
001:CCM_FLAG 下降沿产生中断,晶振恢复振荡
010:CCM_FLAG 高电平产生中断,晶振停振
011:CCM_FLAG 低电平产生中断,晶振恢复振荡
1xx:CCM_FLAG 变化(上升或下降沿)产生中断
外部时钟停振中断使能位
0:禁止
1:使能
IE
bit 4
R/W
-
bit3-1
-
EN
bit0
-
R/W
外部时钟停振检测使能位
0:禁止
1:使能
PLL 锁定中断控制寄存器(SCU_PLLLKCON)
偏移地址:30H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
保留
15
14
13
12
11
10
9
保留
-
bit31-17
LK_FLAG
bit16
-
bit15-9
IF
bit8
V1.0
版权所有©上海东软载波微电子有限公司
-
R
-
R/W
16
LK_FLAG
8
7
IF
保留
6
5
4
LK_IFS
3
2
保留
1
0
IE
-
PLL 锁定检测标志位
0:PLL 未锁定
1:PLL 锁定,锁频成功
-
PLL 中断标志位
0:未发生 PLL 锁定标志触发事件
1:发生 PLL 锁定标志触发事件
边沿模式产生中断标志时,可以写 1 清除标志;
电平模式产生中断标志时,该标志只读,触发电平消失
后,中断标志自动清零。
46/309
http://www.essemi.com
HR8P506_Datasheet_C
-
-
bit7
LK_IFS
bit6-4
R/W
-
bit3-1
-
IE
bit0
R/W
2. 6. 5
-
PLL 锁定标志产生模式选择位
000:PLL 锁定标志上升沿产生中断,锁频成功
001:PLL 锁定标志下降沿产生中断,锁频失败
010:PLL 锁定标志高电平产生中断,锁频成功
011:PLL 锁定标志低电平产生中断,锁频失败
1xx:PLL 锁定标志变化(上升或下降沿)产生中断
-
PLL 锁定中断使能位
0:禁止
1:使能
系统时钟应用说明
以下操作都已关闭系统保护寄存器 SCU_PROT,且使能了 SCU 时钟使能位 CLKEN_SCU。
2. 6. 5. 1
外部时钟XTAL
使用外部时钟 XTAL:
SWITCH_XTAL PROC
PUSH
{LR}
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X01
ORRS R1, R1, R2
STR
R1, [R0]
;使能 XTAL_EN
WAIT_XTAL_FLAG
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X010000
TST
R1, R2
BEQ
WAIT_XTAL_FLAG ;等待 XTAL_RDY
;如果系统时钟为外部 LP 低速时钟,并工作在低功耗模式,则设置如下:
LDR
R0, =SCU_SCLKEN0
LDR
R1, =0X02
STRB
R1, [R0]
;设置 LP 低速时钟为低功耗模式
POP
ALIGN
LTORG
ENDP
2. 6. 5. 2
{PC}
内部高速时钟HRC
使用内部高速时钟 HRC:
V1.0
版权所有©上海东软载波微电子有限公司
47/309
http://www.essemi.com
HR8P506_Datasheet_C
SWITCH_HRC PROC
PUSH
{LR}
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X02
ORRS R1, R1, R2
STR
R1, [R0]
;使能 HRC_EN
WAIT_HRC_FLAG
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X020000
TST
R1, R2
BEQ
WAIT_HRC_FLAG ;等待 HRC_RDY
LDR
LDRB
LDR
ANDS
STRB
POP
ALIGN
LTORG
ENDP
2. 6. 5. 3
R0,=SCU_SCLKEN0
R1,[R0]
R2, =0XFC
R1, R1, R2
R1, [R0]
;系统时钟选用 HRC
{PC}
内部低速时钟LRC
使用内部低速时钟 LRC:
SWITCH_LRC PROC
PUSH
{LR}
LDR
R0,=SCU_SCLKEN0
LDRB
R1,[R0]
LDR
R2, =0XFC
ANDS
R1, R1, R2
LDR
R2,=0X01
ORRS
R1,R1,R2
STRB
R1, [R0]
;系统时钟选用 LRC
POP
{PC}
ALIGN
LTORG
ENDP
2. 6. 5. 4
锁相环PLL
使用 PLL 前必须先使能 PLL 输入源时钟使能位,且等待输入时钟源稳定。
以 PLL 输入时钟选择为外部 16MHz 时钟,输出时钟为 48MHz 为例:
SWITCH_XTAL16M_PLL48M PROC
PUSH
{LR}
V1.0
版权所有©上海东软载波微电子有限公司
48/309
http://www.essemi.com
HR8P506_Datasheet_C
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X01
ORRS R1, R1, R2
STR
R1, [R0]
;使能 XTAL_EN,注意外接振荡器必须是 16MHz。
WAIT_XTAL_FLAG
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X010000
TST
R1, R2
BEQ
WAIT_XTAL_FLAG
;等待 XTAL_RDY
LDR
R0,=SCU_SCLKEN1
LDR
R1,=0X1E
;配置 PLL 输入时钟选择,
STRB
R1,[R0,#0X01]
;PLL 锁频信号不旁路,使能 PLL 模块
WAIT_PLL_FLAG
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X040000
TST
R1, R2
BEQ
WAIT_PLL_FLAG
;等待 PLL_RDY
LDR
R0, =SCU_SCLKEN0
LDR
R1, [R0]
LDR
R2, =0X0100
ORRS R1, R1, R2
STR
R1, [R0]
;系统时钟选用 PLL 倍频时钟
POP
{PC}
ALIGN
LTORG
ENDP
关闭 PLL:
POWER_OFF_PLL PROC
PUSH
{LR}
LDR
R0, =SCU_SCLKEN0
LDRB R1, [R0, #0X01]
LDR
R2, =0XFE
ANDS R1, R1, R2
STRB R1, [R0, #0X01]
;系统时钟选用原始时钟
LDR
R0, =SCU_SCLKEN1
LDRB R1, [R0, #0X01]
LDR
R2, =0X0F
ANDS R1, R1, R2
STRB R1, [R0, #0X01]
;关断 PLL 模块
POP
{PC}
V1.0
版权所有©上海东软载波微电子有限公司
49/309
http://www.essemi.com
HR8P506_Datasheet_C
ALIGN
LTORG
ENDP
2. 6. 5. 5
时钟滤波CLKFLT
使用 CLKFLT:
POWER_ON_CFT PROC
PUSH
{LR}
LDR
R0, =SCU_WAKEUPTIME
LDRB R1, [R0, #0X01]
LDR
R2, =0X02
ORRS R1, R1, R2
STRB R1, [R0, #0X01]
;使能 CLKFLT_EN
LDR
R0, =SCU_SCLKEN0
LDRB R1, =0X55
STRB R1, [R0, #0X02]
;系统时钟选用滤波后时钟
POP
{PC}
ALIGN
LTORG
ENDP
关闭 CLKFLT:
POWER_OFF_CFT PROC
PUSH
{LR}
LDR
R0, =SCU_SCLKEN0
LDRB R1, =0X00
STRB R1, [R0, #0X02]
;系统时钟选用滤波前时钟
LDR
R0, =SCU_WAKEUPTIME
LDRB R1, [R0, #0X01]
LDR
R2, =0XFD
ANDS R1, R1, R2
STRB R1, [R0, #0X01]
;关闭 CLKFLT_EN
POP
{PC}
ALIGN
LTORG
ENDP
2. 7 中断和异常处理
2. 7. 1
中断和异常
Cortex-M0 内核支持嵌套向量中断控制器 NVIC(Nested Vectored Interrupt Controller),具体
功能如下:
支持中断嵌套
V1.0
版权所有©上海东软载波微电子有限公司
50/309
http://www.essemi.com
HR8P506_Datasheet_C
支持中断向量
支持中断优先级动态调整
支持中断可屏蔽
对 Cortex-M0 内核来说,打断程序正常执行流程的事件均称之为异常,中断也是其中一种异
常。为便于理解,本文档将内核的中断等事件称为异常,将外设模块的中断称为中断。
异常/中断优先级操作说明:
操作类型
描述
抢占
产生条件:ISR 或线程正在执行时,出现新的优先级更高的异常/中断。
操作结果:如果当前处于线程状态,则产生异常/中断挂起中断;如果当前处于
ISR 状态,则产生中断嵌套,处理器自动保存工作状态并压栈。
末尾连锁
产生条件:当前 ISR 执行结束,正在返回时,出现新的优先级更高的异常/中断。
操作结果:跳过出栈操作,处理新的异常/中断。
返回
产生条件:当前 ISR 执行结束,正在返回时,没有出现新的优先级更高的
异常/中断。
操作结果:执行出栈操作,并将处理器状态恢复为进入 ISR 之前的状态。
迟来
产生条件:当前 ISR 执行开始,正在保存时,出现新的优先级更高的异常/中断。
操作结果:处理器转去处理优先级更高的异常/中断。
表 2-2 异常/中断优先级操作类型说明说明表
注 1:ISR – Interrupt Service Routine,中断服务程序。
异常/中断优先级:
编号
类型
优先级
简介
0
N/A
N/A
没有异常在运行
1
复位
-3(最高)
复位
2
NMI
-2
不可屏蔽中断(来自外设 NMI 中断输入)
3
Hard Fault
-1
所有被禁用的 Fault,都将升级为 Hard Fault
4~10
保留
NA
-
11
SVC
可编程控制
系统服务调用
12~13
保留
NA
-
14
PendSV
可编程控制
为系统设备而设的“可悬挂请求”
15
SysTick
可编程控制
系统定时计数器
16
IRQ0
可编程控制
外设中断 0
17
IRQ1
可编程控制
外设中断 1
…
…
…
…
47
IRQ31
可编程控制
外设中断 31
表 2-3 异常/中断优先级列表
Cortex-M0 支持如下异常/中断:
V1.0
版权所有©上海东软载波微电子有限公司
51/309
http://www.essemi.com
HR8P506_Datasheet_C
NMI 中断、Hard Fault 异常、SVC 异常、PendSV 异常、SysTick 异常、和 32 个外设中断
请求 IRQ0~IRQ31。
其中 Hard Fault 异常、SVC 异常、PendSV 异常、SysTick 异常为 Cortex-M0 内核异常源,
只受 Cortex-M0 内核控制,而 NMI 中断与 32 个 IRQ 可由芯片配置控制。
虽然 Cortex-M0 对 NMI 不支持中断使能位,但为了防止芯片上电初始化完成前,误产生 NMI
中断源,而误进中断,芯片提供了 NMI 使能位 NMIEN,可在 NMI 中断源配置完成后再设置
NMIEN=1。
对于 32 个 IRQ,Cortex-M0 内核提供 32 个 IRQ 使能位,可对每个中断请求独立控制。配置
NVIC_ISER 和 NVIC_ICER 中断控制寄存器可使能或禁止 IRQ。
配置 NVIC_PR0~NVIC_PR7 优先级控制寄存器,可设置 IRQ0~IRQ31 的中断优先级。如果
同时产生多个 IRQ 请求,则最先响应优先级最高的 IRQ;如果同时产生多个相同最高优先级
的 IRQ 请求,则按照中断向量分配表,最先响应向量表编号最低的 IRQ,即如果同时产生中
断优先级相同的 IRQ0 与 IRQ1,则先响应 IRQ0。
2. 7. 2
中断和异常向量的分配
编号
类型
功能
说明
0~15
异常
—
Cortex-M0 内核异常,包括 NMI 不可屏蔽中断
16
IRQ0
PINT0 中断
外部端口中断 0
17
IRQ1
PINT1 中断
外部端口中断 1
18
IRQ2
PINT2 中断
外部端口中断 2
19
IRQ3
PINT3 中断
外部端口中断 3
20
IRQ4
PINT4 中断
外部端口中断 4
21
IRQ5
PINT5 中断
外部端口中断 5
22
IRQ6
PINT6 中断
外部端口中断 6
23
IRQ7
PINT7 中断
外部端口中断 7
24
IRQ8
T16N0 中断
16 位定时器/计数器 0 中断
25
IRQ9
T16N1 中断
16 位定时器/计数器 1 中断
26
IRQ10
T16N2 中断
16 位定时器/计数器 2 中断
27
IRQ11
T16N3 中断
16 位定时器/计数器 3 中断
28
IRQ12
T32N0 中断
32 位定时器/计数器 0 中断
29
IRQ13
Reserved
预留
30
IRQ14
Reserved
预留
31
IRQ15
Reserved
预留
32
IRQ16
WDT 中断
看门狗中断
33
IRQ17
RTC 中断
实时时钟中断
34
IRQ18
KINT 中断
外部按键输入中断
35
IRQ19
ADC 中断
模数转换中断
36
IRQ20
Reserved
预留
37
IRQ21
LVD 中断
低电压检测中断
38
IRQ22
PLLLK 中断
PLL 失锁中断
39
IRQ23
UART0 中断
UART0 中断
V1.0
版权所有©上海东软载波微电子有限公司
52/309
http://www.essemi.com
HR8P506_Datasheet_C
40
IRQ24
UART1 中断
UART1 中断
41
IRQ25
EUART0 中断
EUART0 中断
42
IRQ26
Reserved
预留
43
IRQ27
SPI0 中断
SPI0 中断
44
IRQ28
SPI1 中断
SPI1 中断
45
IRQ29
I2C0 中断
I2C0 中断
46
IRQ30
Reserved
预留
47
IRQ31
CCM 中断
外部振荡器停振检测中断
表 2-4 IRQ 分配列表
2. 7. 3
中断向量表的重映射
Cortex-M0 内核本身并不支持中断向量表的重映射,在 HR8P506 芯片中有两个特殊功能寄
存器“中断向量表重映射使能寄存器”和“中断向量表偏移寄存器”,可以支持中断向量表
的重映射。具体的使用方式可参考 Flash 自编程(IAP)相关章节的描述。
2. 7. 4
特殊功能寄存器
不可屏蔽中断控制寄存器(SCU_NMICON)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
6
5
4
3
2
1
16
保留
15
14
13
12
11
10
9
8
7
保留
-
-
bit31-6
NMICS
bit5-1
NMIEN
0
NMICS
bit0
NMIEN
-
R/W
NMI 不可屏蔽中断选择位
00000:IRQ0
00001:IRQ1
…
11111:IRQ31
R/W
NMI 不可屏蔽中断使能位
0:禁止
1:使能
注 1:对 SCU_NMICON 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
中断向量表重映射使能寄存器(SCU_TBLREMAPEN)
偏移地址:60H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
V1.0
版权所有©上海东软载波微电子有限公司
25
24
23
22
21
20
19
18
17
16
53/309
http://www.essemi.com
HR8P506_Datasheet_C
保留
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
保留
—
—
bit31-1
EN
bit0
0
EN
—
中断向量表重映射使能
0:中断向量表位于 Flash Memory 的“0”地址开始的一段
空间(默认状态);目前共支持 48 个向量,因此,这段空间
的大小为 192 字节;
1:中断向量表位于“中断向量表偏移寄存器”指定的地址开
始的 192 字节空间。
R/W
中断向量表偏移寄存器(SCU_TBLOFF)
偏移地址:64H
复位值:00100000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
TBLOFF
15
14
13
12
11
10
9
8
7
TBLOFF
TBLOFF
bit31-0
TBLOFF
R/W
中断向量表偏移地址
该寄存器存放重映射后的中断向量表所在的起始地址,“中
断向量表重映射使能寄存器”为“1”时有效。
高 24 位 TBLOFF可读可写,但低 8 位 TBLOFF
只读,不可写,且读取时返回全零。
注:该地址为起始地址是有要求的:必须先求出系统中共有多少个向量,再把这个数字向上增大到是 2 的整次幂,
而起始地址必须对齐到后者的边界上。如果一共有 32 个中断,则共有 32+16(系统异常)=48 个向量,向上
增大到 2 的整次幂后值为 64,因此地址值必须能被 64×4=256 整除,从而合法的起始地址可以是:0x000,
0x100,0x200 等。
硬件错误标志寄存器(SCU_FAULTFLAG)
偏移地址:0CH
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
6
5
4
3
18
17
16
保留
15
14
13
12
11
10
9
8
7
保留
-
bit31-3
V1.0
版权所有©上海东软载波微电子有限公司
-
2
1
0
FLAG2
FLAG1
FLAG0
-
54/309
http://www.essemi.com
HR8P506_Datasheet_C
FLAG2
bit2
FLAG1
bit1
FLAG0
bit0
R/W
硬件错误 2 标志位
0:未发生在异常区域进行写入操作
1:发生在异常区域进行写入操作(硬件自动置 1,
软件写 1 清除)
R/W
硬件错误 1 标志位
0:未发生在异常区域进行取指操作
1:发生在异常区域进行取指操作(硬件自动置 1,
软件写 1 清除)
R/W
硬件错误 0 标志位
0:未发生读指令代码为空
1:发生读指令代码为空(硬件自动置 1,软件写 1
清除)
注 1:读指令代码为空表示 Cortex-M0 内核读 Flash 程序存储器的指令时,读到的值为 FFFFFFFFH。
注 2:清除硬件错误标志位时,需要设置 SCU_PROT 寄存器,关闭写保护。
IRQ0~31 置中断请求使能寄存器(NVIC_ISER)
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
SETENA
15
14
13
12
11
10
9
8
7
SETENA
SETENA
bit31-0
R/W
IRQx 使能位
0:中断禁止
1:中断使能
软件写 1 使能中断请求,写 0 无效
注:对 NVIC_ISER 寄存器中的各 IRQx 使能位,写 0 无效,写 1 才使能中断请求;读操作时,实际是读取 IRQx 中
断使能的状态,读取的值为 1 表示中断使能,为 0 表示中断禁止。
IRQ0~31 清中断请求使能寄存器(NVIC_ICER)
偏移地址:80H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
CLRENA
15
14
13
12
11
10
9
8
7
CLRENA
V1.0
版权所有©上海东软载波微电子有限公司
55/309
http://www.essemi.com
HR8P506_Datasheet_C
CLRENA
bit31-0
R/W
IRQx 禁止位
0:中断禁止
1:中断使能
软件写 1 禁止中断请求,写 0 无效
注:对 NVIC_ICER 寄存器中的各 IRQx 禁止位,写 0 无效,写 1 才禁止中断请求;读操作时,实际是读取 IRQx 中
断使能的状态,读取的值为 1 表示中断使能,为 0 表示中断禁止。
IRQ0~31 置中断挂起寄存器(NVIC_ISPR)
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
SETPEND
15
14
13
12
11
10
9
8
7
SETPEND
SETPEND
bit31-0
R/W
置 IRQx 挂起位
0:中断未挂起
1:中断挂起
软件写 1 挂起中断,写 0 无效
注:对 NVIC_ISPR 寄存器中的各 IRQx 挂起位,写 0 无效,写 1 才挂起中断;读操作时,实际是读取 IRQx 中断挂
起的状态,读取的值为 1 表示中断挂起,为 0 表示中断未挂起。
IRQ0~31 清中断挂起寄存器(NVIC_ICPR)
偏移地址:80H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
CLRPEND
15
14
13
12
11
10
9
8
7
CLRPEND
CLRPEND
bit31-0
R/W
清 IRQx 挂起位
0:中断未挂起
1:中断挂起
软件写 1 清除中断挂起,写 0 无效
注:对 NVIC_ICPR 寄存器中的各 IRQx 清挂起位,写 0 无效,写 1 才清除中断挂起;读操作时,实际是读取 IRQx
中断挂起的状态,读取的值为 1 表示中断挂起,为 0 表示中断未挂起。
V1.0
版权所有©上海东软载波微电子有限公司
56/309
http://www.essemi.com
HR8P506_Datasheet_C
IRQ0~3 优先级控制寄存器(NVIC_PR0)
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
14
25
24
保留
PRI_3
15
26
13
12
11
22
21
20
19
10
9
8
7
6
5
4
3
bit31-30
R/W
-
bit29-24
-
PRI_2
bit23-22
R/W
-
bit21-16
-
PRI_1
bit15-14
R/W
-
bit13-8
-
17
16
2
1
0
18
17
16
2
1
0
保留
PRI_0
PRI_3
18
保留
PRI_2
保留
PRI_1
23
IRQ3 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ2 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ1 优先级设置位
00:最高优先级
11:最低优先级
-
PRI_0
bit7-6
R/W
-
bit5-0
-
IRQ0 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ4~7 优先级控制寄存器(NVIC_PR1)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
14
25
24
保留
PRI_7
15
26
13
PRI_5
12
11
22
21
20
19
保留
PRI_6
10
9
8
7
保留
bit31-30
R/W
-
bit29-24
-
bit23-22
V1.0
版权所有©上海东软载波微电子有限公司
6
5
PRI_4
PRI_7
PRI_6
23
R/W
4
3
保留
IRQ7 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ6 优先级设置位
00:最高优先级
11:最低优先级
57/309
http://www.essemi.com
HR8P506_Datasheet_C
-
-
bit21-16
PRI_5
bit15-14
R/W
-
bit13-8
-
PRI_4
bit7-6
R/W
-
bit5-0
-
-
IRQ5 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ4 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ8~11 优先级控制寄存器(NVIC_PR2)
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
15
14
26
25
24
保留
PRI_11
13
12
11
10
9
8
保留
PRI_9
23
22
21
20
19
7
6
5
4
3
bit31-30
R/W
-
bit29-24
-
PRI_10
bit23-22
R/W
-
bit21-16
-
PRI_9
bit15-14
R/W
-
bit13-8
-
PRI_8
bit7-6
R/W
-
bit5-0
-
17
16
2
1
0
18
17
16
保留
PRI_8
PRI_11
18
保留
PRI_10
IRQ11 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ10 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ9 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ8 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ12~15 优先级控制寄存器(NVIC_PR3)
偏移地址:0C H
复位值:00000000_00000000_00000000_00000000B
31
30
PRI_15
29
28
27
26
保留
V1.0
版权所有©上海东软载波微电子有限公司
25
24
23
22
PRI_14
21
20
19
保留
58/309
http://www.essemi.com
HR8P506_Datasheet_C
15
14
13
12
11
10
9
8
7
保留
PRI_13
6
5
4
3
bit31-30
R/W
-
bit29-24
-
1
0
18
17
16
2
1
0
保留
PRI_12
PRI_15
2
IRQ15 优先级设置位
00:最高优先级
11:最低优先级
-
PRI_14
bit23-22
R/W
-
bit21-16
-
IRQ14 优先级设置位
00:最高优先级
11:最低优先级
-
PRI_13
bit15-14
R/W
-
bit13-8
-
IRQ13 优先级设置位
00:最高优先级
11:最低优先级
-
PRI_12
bit7-6
R/W
-
bit5-0
-
IRQ12 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ16~19 优先级控制寄存器(NVIC_PR4)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
15
14
26
25
24
保留
PRI_19
13
PRI_17
12
11
23
22
21
20
19
保留
PRI_18
10
9
8
7
保留
5
PRI_16
PRI_19
bit31-30
R/W
-
bit29-24
-
PRI_18
bit23-22
R/W
-
bit21-16
-
PRI_17
bit15-14
R/W
-
bit13-8
-
PRI_16
bit7-6
R/W
V1.0
版权所有©上海东软载波微电子有限公司
6
4
3
保留
IRQ19 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ18 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ17 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ16 优先级设置位
59/309
http://www.essemi.com
HR8P506_Datasheet_C
00:最高优先级
11:最低优先级
-
-
bit5-0
-
IRQ20~23 优先级控制寄存器(NVIC_PR5)
偏移地址:14H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
15
14
26
25
24
保留
PRI_23
13
12
11
10
9
8
保留
PRI_21
23
22
21
20
19
7
6
5
4
3
bit31-30
R/W
-
bit29-24
-
PRI_22
bit23-22
R/W
-
bit21-16
-
PRI_21
bit15-14
R/W
-
bit13-8
-
PRI_20
bit7-6
R/W
-
bit5-0
-
17
16
2
1
0
18
17
16
2
1
0
保留
PRI_20
PRI_23
18
保留
PRI_22
IRQ23 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ22 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ21 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ20 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ24~27 优先级控制寄存器(NVIC_PR6)
偏移地址:18H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
15
14
26
25
24
保留
PRI_27
13
PRI_25
12
11
23
22
21
20
19
保留
PRI_26
10
9
8
保留
6
5
PRI_24
PRI_27
bit31-30
R/W
-
bit29-24
-
V1.0
版权所有©上海东软载波微电子有限公司
7
4
3
保留
IRQ27 优先级设置位
00:最高优先级
11:最低优先级
-
60/309
http://www.essemi.com
HR8P506_Datasheet_C
PRI_26
bit23-22
R/W
-
bit21-16
-
PRI_25
bit15-14
R/W
-
bit13-8
-
PRI_24
bit7-6
R/W
-
bit5-0
-
IRQ26 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ25 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ24 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ28~31 优先级控制寄存器(NVIC_PR7)
偏移地址:1CH
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
15
14
26
25
24
保留
PRI_31
13
PRI_29
12
11
23
22
21
20
19
10
9
8
保留
6
5
PRI_28
PRI_31
bit31-30
R/W
-
bit29-24
-
PRI_30
bit23-22
R/W
-
bit21-16
-
PRI_29
bit15-14
R/W
-
bit13-8
-
PRI_28
bit7-6
R/W
-
bit5-0
-
V1.0
版权所有©上海东软载波微电子有限公司
7
18
17
16
2
1
0
保留
PRI_30
4
3
保留
IRQ31 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ30 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ29 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ28 优先级设置位
00:最高优先级
11:最低优先级
-
61/309
http://www.essemi.com
HR8P506_Datasheet_C
2. 8 系统控制块(SCB)
概述
2. 8. 1
系统控制块提供芯片内核系统实现的状态信息,并对内核系统工作进行控制。
特殊功能寄存器
2. 8. 2
SCB_CPUID 寄存器(SCB_CPUID)
偏移地址:00H
复位值:01000001_00001100_11000010_00000000B
31
30
29
28
27
26
25
24
23
IMPLEMENTER
15
14
13
12
11
22
21
20
19
18
VARIANT
10
9
8
7
6
5
17
16
CONSTANT
4
3
2
PARTNO
1
0
REVISION
IMPLEMENTER
bit31-24
R
处理器实现者编号
0x41,ARM
VARIANT
bit23-20
R
主版本号
R=0x0,作为 rnpn 版本编号格式中的主要编号
CONSTANT
bit19-16
R
处理器构架
0xC,ARMv6-M
PARTNO
bit15-4
R
处理器分类号
0xC20,Cortex-M0
REVISION
bit3-0
R
次版本号
P=0x0,作为 rnpn 版本编号格式中的次要编号
中断控制和状态寄存器(SCB_ICSR)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
15
28
27
保留
NMIPENDSET
14
13
12
26
25
PENDSTSET
PENDSTCLR
10
9
11
24
23
22
21
20
8
7
6
19
5
4
中断控制和状态寄存器(SCB_ICSR)
地址
E000ED04H
复位值
00000000_00000000_00000000_00000000B
bit31
R/W
-
bit30-27
-
V1.0
版权所有©上海东软载波微电子有限公司
16
2
1
0
VECTACTIVE
寄存器名称
NMIPENDSET
17
VECTPENDING
3
保留
VECTPENDING
18
保留
ISRPENDDING
NMI 中断挂起控制位
0:不置 NMI 中断挂起
1:置 NMI 中断挂起
-
62/309
http://www.essemi.com
HR8P506_Datasheet_C
PENDSTSET
bit26
置 SysTick 异常挂起位
0:无效
1:置 SysTick 异常挂起
R/W
PENDSTCLR
bit25
W
清 SysTick 异常挂起位
0:无效
1:清除 SysTick 异常挂起
-
bit24-23
-
-
ISRPENDDING
bit22
R
中断挂起标志位
0:无中断挂起
1:有中断挂起
-
bit21-18
-
-
VECTPENDING
bit17-12
R
当前的挂起中,优先级最高的异常/中断号
0x0:无挂起异常/中断
非 0:当前被挂起的异常/中断中,优先级最高的异常
/中断号
-
bit11-6
-
-
R
当前被处理的异常/中断号
0x0:线程(Thread)模式
非 0:当前被处理的异常/中断号
VECTACTIVE
bit5-0
应用中断和复位控制寄存器(SCB_AIRCR)
偏移地址:0CH
复位值:11111010_00000101_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
5
4
3
18
17
16
VECTKEY
15
14
13
12
11
10
ENDIANNESS
—
8
7
6
保留
ENDIANNESS
VECTKEY
9
2
1
0
SYSRESET
VECTCLR
保
REQ
ACTIVE
留
W
向量关键码位
只能写 0x05FA,其它无效
bit15
R
存储器数据格式选择位
0:小端格式
1:大端格式
bit14-3
—
—
bit31-16
SYSRESETREQ
bit2
W
系统复位请求位
0:无效
1:请求系统复位,复位后自动清零
VECTCLRACTIVE
bit1
W
异常/中断状态清除位
该位只能写 0;写 1 会产生 HardFault 异常
—
bit0
—
—
V1.0
版权所有©上海东软载波微电子有限公司
63/309
http://www.essemi.com
HR8P506_Datasheet_C
注 1:寄存器 SCB_AIRCR 只能进行字写入,且高半字只能写入 0x05FA,否则对该寄存器的写入操作无效。
系统控制寄存器(SCB_SCR)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
4
3
18
17
16
0
保留
15
14
13
12
11
10
9
8
7
6
5
SEVONP
保留
保留
END
—
—
bit31-5
SEVONPEND
bit4
R/W
—
bit3
—
SLEEPDEEP
bit2
2
1
SLEEP
SLEEP
DEEP
ONEXIT
保留
—
中断被挂起时,是否作为唤醒事件的选择位
0:中断被挂起时,不作为唤醒事件
1:中断被挂起时,作为唤醒事件
—
R/W
休眠模式选择位
0:睡眠模式
1:深度睡眠模式
从 ISR 中断处理程序返回到线程模式时,是否进入
休眠状态的选择位
0:不进入休眠状态
1:进入休眠状态
SLEEPONEXIT
bit1
R/W
—
bit0
—
—
配置和控制寄存器(SCB_CCR)
偏移地址:14H
复位值:00000000_00000000_00000010_00001000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
保留
9
8
7
保留
STKALIGN
UNALIGN_TRP
保留
—
bit31-10
—
—
STKALIGN
bit9
R
非堆栈对齐标志位
读取始终为 1,指示异常入口 8 字节堆栈对齐
—
bit8-4
—
—
UNALIGN_TRP
bit3
R
字或半字访问操作的非对齐故障标志位
读取始终为 1,指示非对齐访问产生硬故障
V1.0
版权所有©上海东软载波微电子有限公司
64/309
http://www.essemi.com
HR8P506_Datasheet_C
—
—
bit2-0
—
系统处理程序优先级寄存器 2(SCB_SHPR2)
偏移地址:1CH
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
15
22
21
20
19
18
17
16
6
5
4
3
2
1
0
保留
PRI_11
14
13
12
11
10
9
8
7
保留
PRI_11
bit31-30
R/W
—
bit29-0
—
SVCall(异常编号 11)的优先级设置位
—
系统处理程序优先级寄存器 3(SCB_SHPR3)
偏移地址:20H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
14
25
24
23
保留
PRI_15
15
26
13
12
11
22
21
20
19
9
8
7
6
17
16
2
1
0
保留
PRI_14
10
18
5
4
3
保留
PRI_15
bit31-30
R/W
—
bit29-24
—
PRI_14
bit23-22
R/W
—
bit21-0
—
SysTick(异常编号 15)的优先级设置位
—
PendSV(异常编号 14)的优先级设置位
—
2. 9 系统定时器(SYSTICK)
2. 9. 1
概述
SysTick 是一个系统递减计数器,配置 SYST_RVR 寄存器,可设定计数初值。当 SysTick
计数为 0 时,COUNTFLAG 状态位置 1,并重载 SYST_RVR 中的计数初值。在处理器调试
停机时,SysTick 停止计数。在计数过程中,如果将 SYST_RVR 寄存器设置为 0,则计数器
递减计数到 0 后,停止计数。
SysTick 的当前计数值可以通过读 SYST_CVR 寄存器获得。如果写 SYST_CVR 寄存器,则
将该寄存器清零,并且将 COUNTFLAG 位清 0,写操作不会触发 SysTick 异常事件。
访问 SysTick 寄存器时,需使用字操作方式。配置 SysTick 计数器的步骤如下:
1. 设置计数器重装值寄存器 SYST_RVR。
2. 清除计数器当前值寄存器 SYST_CVR。
3. 设置控制和状态寄存器 SYST_CSR。
V1.0
版权所有©上海东软载波微电子有限公司
65/309
http://www.essemi.com
HR8P506_Datasheet_C
2. 9. 2
特殊功能寄存器
SYSTICK 控制和状态寄存器(SYST_CSR)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
保留
15
14
13
12
11
10
9
8
7
6
5
4
3
保留
—
bit31-17
16
COUNTFLAG
—
—
2
1
0
CLKSOURCE
TICKINT
ENABLE
COUNTFLAG
bit16
R
SYSTICK 递减计数到零的标志位
0;未计数到 0
1:计数到 0
该位读操作后清 0,或写 SYST_CVR 寄存器清 0
—
bit15-3
—
—
CLKSOURCE
bit2
R/W
SYSTICK 时钟源选择位
0:基准时钟
1:处理器时钟
TICKINT
bit1
R/W
SYSTICK 异常挂起使能位
0:计数到 0 时,不产生异常挂起
1:计数到 0 时,产生异常挂起
ENABLE
bit0
R/W
SYSTICK 计数器使能位
0:禁止
1:使能
注 1:处理器时钟为芯片内核工作时钟 HCLK,时钟频率与系统时钟频率相同。
注 2:SYSTICK 基准时钟,实际是处理器时钟 3 分频后的时钟,频率为 FHCLK/3。
SYSTICK 重装值寄存器(SYST_RVR)
偏移地址:14H
复位值:00000000_11111111_11111111_11111111B
31
30
29
28
27
26
25
24
23
22
21
保留
15
14
13
12
20
19
18
17
16
2
1
0
RELOAD
11
10
9
8
7
6
5
4
3
RELOAD
—
bit31-24
—
RELOAD
bit23-0
R/W
V1.0
版权所有©上海东软载波微电子有限公司
—
SYSTICK 计数器重载值
计数范围 0x00_0001~0xFF_FFFF。如果为 0,
SysTick 不计数。
66/309
http://www.essemi.com
HR8P506_Datasheet_C
SYSTICK 重装值寄存器(SYST_CVR)
偏移地址:18H
复位值:00000000_11111111_11111111_11111111B
31
30
29
28
27
26
25
24
23
22
21
保留
15
14
13
12
20
19
18
17
16
2
1
0
CURRENT
11
10
9
8
7
6
5
4
3
CURRENT
—
—
bit31-24
CURRENT
bit23-0
—
SYSTICK 计数器当前值
读取时返回 SysTick 计数器的当前值。
写入任何值都会将该寄存器清零,同时还会清零
COUNTFLAG 标志位。
R/W
SYSTICK 校准值寄存器(SYST_CALIB)
偏移地址:1C H
复位值:01000000_00000010_10001011_00001010B
31
30
NOREF
SKEW
15
14
29
28
27
26
25
24
23
22
21
保留
13
12
11
20
19
18
17
16
2
1
0
TENMS
10
9
8
7
6
5
4
3
TENMS
NOREF
bit31
R
基准时钟标志位
0:不提供基准时钟
1:提供基准时钟
SKEW
bit30
R
TENMS 校准值是否准确的标志位
0:TENMS 校准值准确
1:TENMS 校准值不准确
—
bit29-24
—
—
TENMS
bit23-0
R/W
SYSTICK 校准值
读取为 0 时,表示校准值未知
2. 10 配置字软件控制
在芯片配置字的 CFG_BORV为 11 时,可通过软件设置寄存器 SCU_SOFTCFG 来控制
BOR 电压点,电源电压低于 BORV设定的电压时,将产生掉电复位。
系统配置软件控制寄存器(SCU_SOFTCFG)
V1.0
版权所有©上海东软载波微电子有限公司
67/309
http://www.essemi.com
HR8P506_Datasheet_C
偏移地址:24H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
7
6
5
4
3
18
17
16
2
1
0
保留
15
14
13
12
11
10
9
8
保留
-
BORV
bit31-4
bit3-0
BORV
-
R/W
-
BOR 电压点选择(仅在配置字 CFG_BORV=11 时
有效)
0000:1.7V
0001:2.0V
0010:2.1V
0011:2.2V
0100:2.3V
0101:2.4V
0110:2.5V
0111:2.6V
1000:2.8V
1001:3.0V
1010:3.1V
1011:3.3V
1100:3.6V
1101:3.7V
1110:4.0V
1111:4.3V
2. 11 定时器(T16N/T32N)同步启动关停控制
2. 11. 1 概述
通过 SCU_TIMEREN 和 SCU_TIMERDIS 控制寄存器,可以选择性同时启动或关停多个
T16N/T32N 定时器。可用于对多个 TIMER 同时启动或关停,对于其它应用,仍然可使用各
个 TIMER 自身的 T16N_CON0 或 T32N_CON0 寄存器的 EN 控制位来使能或关停 TIMER。
对各 TIMER 工作的控制,SCU_TIMEREN 和 SCU_TIMERDIS 控制寄存器的优先级高于
T16N_CON0 和 T32N_CON0 寄存器的 EN 控制位,并且 SCU_TIMEREN 控制寄存器的优
先级高于 SCU_TIMERDIS。
2. 11. 2 特殊功能寄存器
SCU_TIMEREN 使能控制寄存器(SCU_TIMEREN)
偏移地址:34H
复位值:00000000_00000000_00000000_00000000B
V1.0
版权所有©上海东软载波微电子有限公司
68/309
http://www.essemi.com
HR8P506_Datasheet_C
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
保留
15
14
13
12
11
10
9
8
保留
-
7
6
-
Bit31-9
T32N0EN
bit8
R/W
-
bit7-4
-
5
R/W
T16N2EN
bit2
R/W
T16N2使能位
0:-
1:使能
R/W
T16N1使能位
0:-
1:使能
R/W
T16N0使能位
0:-
1:使能
bit0
1
0
T16N1EN
T16N0EN
-
bit3
T16N0EN
2
T16N2EN
T32N0使能位
0:-
1:使能
T16N3EN
bit1
3
T16N3EN
-
T16N3使能位
0:-
1:使能
T16N1EN
4
保留
T32N0EN
注 1:对 SCU_TIMEREN 寄存器的各位写 0 无效,写 1 使能后,硬件自动清零。
SCU_TIMERDIS 使能控制寄存器(SCU_TIMERDIS)
偏移地址:38H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
4
3
2
1
0
T16N3DIS
T16N2DIS
T16N1DIS
T16N0DIS
保留
15
14
13
12
11
10
保留
-
9
8
T32N0DIS
bit31-9
-
T32N0DIS
bit8
R/W
-
bit7-4
-
7
6
保留
5
-
T32N0关停位
0:-
1:关停
-
T16N3DIS
bit3
R/W
T16N3关停位
0:-
1:关停
T16N2DIS
bit2
R/W
T16N2关停位
V1.0
版权所有©上海东软载波微电子有限公司
69/309
http://www.essemi.com
HR8P506_Datasheet_C
0:-
1:关停
T16N1DIS
T16N0DIS
bit1
bit0
R/W
T16N1关停位
0:-
1:关停
R/W
T16N0关停位
0:-
1:关停
注 1:对 SCU_TIMERDIS 寄存器的各位写 0 无效,写 1 关停后,硬件自动清零。
V1.0
版权所有©上海东软载波微电子有限公司
70/309
http://www.essemi.com
HR8P506_Datasheet_C
第 3 章 存储器资源
3. 1 内部存储器地址映射
芯片内部存储器包括程序存储器,数据存储器,外设寄存器和系统内核寄存器,各存储器区域
的地址映射关系如下图所示,图中对系统内核寄存器区域的地址映射进行了详细描述。
0xFFFF_FFFF
0xFFFF_FFFF
System
Reserved
0xE000_0000
0xFFF0_0000
0xFFEF_FFFF
0xDFFF_FFFF
Reserved
0xFFE0_0000
0xFFDF_FFFF
Reserved
Reserved
0xFFD0_0000
0xFFCF_FFFF
0xA000_0000
0x9FFF_FFFF
Reserved
0xE00F_FFFF
Rom Ttable
0xE00F_F000
0xF00F_DFFF
Reserved
0xE000_F000
0xE000_EFFF
SCS
System Control Space
0xE000_E000
0xE000_DFFF
Reserved
0xE000_EFFF
Debug Control
0xE000_ED00
NVIC
0xE000_E100
Reserved
0xE040_0000
0xE03F_FFFF
0x6000_0000
0x5FFF_FFFF
Peripheral
Reserved
0x4000_0000
0x3FFF_FFFF
0xE020_0000
0xE01F_FFFF
SRAM
Reserved
0x2000_0000
0x1FFF_FFFF
0xE010_0000
0xE00F_FFFF
Internal Private
Peripheral Bus
0xE000_0000
Code
0x0000_0000
Bank:512MB
0xE000_3000
0xE000_2FFF
BP
Breakpoint Unit
0xE000_2000
0xE000_1FFF
DWT
Data Watchpoint Unit
0xE000_1000
0xE000_0FFF
0xE000_3000
Reserved
0xE000_E020
SysTick Timer
0xE000_E010
Reserved
Reserved
0xE000_0000
Bank:1MB
0xE000_E000
Bank:4KB
图 3-1 内部存储系统分配示意图
3. 2 FLASH存储器
芯片配置字
3. 2. 1
芯片配置字位于 FLASH 存储器的信息区,用户可在 ISP 编程时进行设置。芯片的各种功能
配置由芯片配置字和各功能相关寄存器共同设置完成。芯片配置字包括外部 XTAL 振荡器工
作模式的选择、WDT 使能控制、BOR 电压选择等。
配置字名称
CFG_WORD0
地址
00100004H
CFG_OSC_PIN
INTOSC_SEL
bit4-0
-
bit5
XTAL 晶振管脚选择位
0:分布在 PB8,PB9
1:分布在 PB10,PB11(默认)
bit6
内部 HRC 时钟频率选择位
0:16MHz
1:4MHz(默认,HRC 时钟频率为 4MHz)
V1.0
版权所有©上海东软载波微电子有限公司
71/309
http://www.essemi.com
HR8P506_Datasheet_C
bit7
上电 140ms 延时使能位
0:使能(默认)
1:禁止
仅在将 MRSTN 管脚作为外部复位(CFG_MRSTN≠00)时,
该配置位才有效,推荐设置为使能。
CFG_BORV
bit 9-8
掉电复位电压选择位
00:3.7V
01:2.5V
10:2.1V
11:1.7V(默认,可通过寄存器 SCU_SOFTCFG,进行软件
设置掉电复位电压)
-
bit10
-
CFG_PWRTEB
CFG_MRSTN
DEBUG_S
CFG_DEBUG
MRSTN 管脚复用配置位
00:GPIO 功能
其它:MRSTN 功能(默认)
bit 12-11
SWD 调试管脚选择位
0:PA14 和 PA15 端口作为调试管脚
1:PA0 和 PA1 端口作为调试管脚(默认)
bit13
SWD 调试模式使能位
0x:禁止
10:使能(默认)
。由 DEBUG_S 配置位所选定的 IO 管脚被
强制作为 SWD 调试端口,用户程序对该 IO 管脚的控制
无效。
11:-
bit 15-14
注 1:对配置位 CFG_PWRTEB,仅在将 MRSTN 管脚作为外部复位(CFG_MRSTN≠00)时,该配置位才有效,
推荐用户设置为上电延时使能(CFG_PWRTEB=0)
,只有在应用系统特别要求芯片上电后快速进入工作状态,
并且系统供电电源稳定可靠的条件下,才可考虑禁止上电延时。
注 2:当 MRSTN 管脚用作外部复位管脚时,芯片内部固定集成了约 45K 欧姆的弱上拉电阻。
注 3:对上电 140ms 延时,在 MRSTN 管脚复用为 GPIO 功能时,或当芯片发生 BOR 掉电复位后,该延时固定为
使能,与配置位 CFG_PWRTEB 无关。
注 4:在对 Flash 程序加密编程时,必须要禁止 CFG_DEBUG 位,否则加密无效,编程工具将提示错误。
配置字名称
CFG_WORD1
地址
0010000CH
-
bit 0
-
CFG_WDTEN
bit1
WDT 硬件看门狗使能位
0:禁止
1:使能(默认,WDT 计数时钟源固定为内部 LRC 时钟)
WDTINTEN
bit 2
WDT 硬件看门狗中断使能位(仅在 CFG_WDTEN=1 时有效)
0:禁止(默认)
1:使能
-
bit 4-3
V1.0
版权所有©上海东软载波微电子有限公司
72/309
http://www.essemi.com
HR8P506_Datasheet_C
WDTRL
FWPS
bit7-5
上电复位 WDT 重载值选择位(仅在 CFG_WDTEN=1 时有效)
000:0x0000_0200(WDT 计数溢出时间约 16ms)
001:0x0000_0400(WDT 计数溢出时间约 32ms)
010:0x0000_1000(WDT 计数溢出时间约 128ms)
011:0x0000_4000(WDT 计数溢出时间约 512ms)
100:0x0000_8000(WDT 计数溢出时间约 1s)
101:0x0001_0000(WDT 计数溢出时间约 2s)
110:0x0002_0000(WDT 计数溢出时间约 4s)
111:0x0004_0000(WDT 计数溢出时间约 8s)
(默认)
bit12-8
FLASH 地址单元写保护控制位
00000:地址单元(0000_0000H~0000_07FFH)写保护
00001:地址单元(0000_0000H~0000_0FFFH)写保护
00010:地址单元(0000_0000H~0000_17FFH)写保护
00011:地址单元(0000_0000H~0000_1FFFH)写保护
……
10000:地址单元(0000_0000H~0000_87FFH)写保护
1xxx1:地址单元(0000_0000H~0000_8FFFH)写保护(默认)
FWPEB
bit13
-
bit15-14
FLASH 自编程操作(IAP)写保护区使能位
0:使能
1:禁止(默认)
-
注 1:写保护区使能后,位于写保护区的地址单元,不支持 IAP 擦除和编程操作。
注 2:在 SWD 调试模式下,需要禁止 WDT,否则在调试过程中,WDT 会始终保持工作,可能会产生计数溢出复
位,导致芯片调试异常。
配置字名称
CFG_WORD2
地址
00100010H
CFG_OSCMD
3. 2. 2
bit7-0
-
bit15-8
XTAL 振荡器工作模式选择位
8’h2C: 高速 HS 模式(1~20MHz)
(默认)
8’hF0: 低速 LP 模式(32KHz)
程序区FLASH
芯片内部的程序存储器 FLASH 总容量为 36K 字节,
地址范围为 0000_0000H~0000_8FFFH,
共分 36 页,每页 1K 字节。FLASH 存储器支持至少 10 万次擦写次数,10 年以上的数据保
持时间。
芯片支持通过 IAP 模块对程序存储器 FLASH 进行编程、页擦除操作,其中字地址单元编程
时间约为 20us,页擦除时间约为 2ms。
芯片支持在 SWD 调试模式下对 Flash 进行编程、擦除、读取等操作,对 SWD 调试模式,
需在 ISP 编程时通过配置字 CFG_DEBUG 和 DEBUG_S 使能并选择调试端口。
V1.0
版权所有©上海东软载波微电子有限公司
73/309
http://www.essemi.com
HR8P506_Datasheet_C
自编程操作(IAP)
3. 2. 3
芯片内部 FLASH 存储器,支持应用中自编程操作 IAP(In-Application Programming)。
写保护区使能后,位于写保护区的 FLASH 存储器地址单元,不支持 IAP 擦除和编程操作。
可通过配置字 FWPEB 使能 FLASH 写保护区,通过配置字 FWPS 选择写保护区地址范围。
3. 2. 3. 1
IAP概述
支持 FLASH 数据保护,进行 IAP 操作前需先进行解锁,去除相关寄存器的写保护。
支持程序存储器 FLASH 全擦除模式(仅在 SWD 调试时有效)和页擦除模式。
支持字编程模式,每个字包含 4 个字节。
IAP 操作过程中可软件禁止全局中断;也可使能中断,将中断向量表和中断服务程序(ISR)
复制到 SRAM,通过设置中断向量表重映射使能寄存器 SCU_TBLREMAPEN 和中断向量
表偏移寄存器 SCU_TBLOFF 可调用 SRAM 中的中断服务程序(ISR)来响应中断。
IAP 操作进入擦除或编程状态后,IAP 自动上锁,进入 FLASH 保护状态,下次 IAP 操作
前需重新解锁。
IAP 自编程操作程序需放在芯片的 SRAM 中执行,并在程序中对 FLASH 擦除或编程结果
进行校验。
芯片内置 IAP 自编程硬件固化模块,在 IAP 自编程操作程序中可以调用这些自编程固化
模块,以减少 SRAM 中的 IAP 操作代码量。
3. 2. 3. 2
IAP操作流程
IAP 操作请求流程
首先通过 IAP 控制寄存器,置位访问 FLASH 请求信号,查询得到允许应答。
再进行对应的 IAP 操作,IAP 操作是指 FLASH 全擦除,页擦除和编程三种操作。
操作完成后清除 FLASH 请求信号,查询应答信号也被清零后,结束本次 FLASH 的
访问操作。
具体操作流程图如下所示:
V1.0
版权所有©上海东软载波微电子有限公司
74/309
http://www.essemi.com
HR8P506_Datasheet_C
开始
设置IAP_UL,对IAP解锁
FLASH_REQ=1
FLASH_ACK=1 ?
N
Y
IAP操作
FLASH_REQ=0
FLASH_ACK=0 ?
N
Y
结束
图 3-2 IAP 操作请求流程图
IAP 全擦除操作流程
IAP 全擦除操作只在芯片调试模式使能时有效,即将配置字 CFG_WORD0(0010_0004H)
的 bit15 写“1”时有效。
开始
设置IAP_UL,对IAP解锁
设置IAP_TRIG为0x000051AE,
选择全擦除模式
N
BSY = 1 ?
Y
是否超时?
Y
N
ERASE_END =1 ?
N
出错处理
Y
结束
图 3-3 IAP 全擦除操作流程图
IAP 页擦除操作流程
V1.0
版权所有©上海东软载波微电子有限公司
75/309
http://www.essemi.com
HR8P506_Datasheet_C
开始
设置IAP_UL,对IAP解锁
设置IAPPA,选择页地址
设置IAP_TRIG为0x00005EA1,
选择页擦除模式
N
设置IAP_UL
对IAP解锁
BSY = 1 ?
Y
是否超时?
Y
N
设置IAP_UL,对IAP解锁
ERASE_END =1 ?
出错处理
Y
Y
N
N
N
连续擦除下一页?
完成?
Y
结束
图 3-4 IAP 页擦除操作流程图
IAP 编程操作流程
开始
设置IAP_UL,对IAP解锁
设置IAP_ADDR,写入编程地址
设置IAP_DATA,写入编程数据
设置IAP_UL
IAP解锁
设置IAP_TRIG为0x00005DA2,
选择编程模式
N
设置IAP_UL,对IAP解锁
BSY = 1 ?
N
Y
N
下一单元跨页?
PROG_END =1 ?
超时?
Y
N
出错处理
Y
Y
N
Y
连续编程
下一单元?
N
完成?
Y
结束
图 3-5 IAP 编程操作流程图
V1.0
版权所有©上海东软载波微电子有限公司
76/309
http://www.essemi.com
HR8P506_Datasheet_C
3. 2. 3. 3
IAP自编程硬件固化模块
芯片内置 IAP 自编程固化模块,由硬件电路实现,在 IAP 自编程操作程序中可以调用这些
自编程固化模块,以减少 SRAM 中的 IAP 操作代码量。
IAP 自编程硬件固化模块支持单页擦除,单字编程和多字编程,分别由如下 IAP 操作函数
来实现:
单页擦除函数(IAP_PageErase)
入口地址:保存在 0x10000004 单元内
参数输入:R0-擦除页的首地址
参数输出:R0-函数执行状态(R0=1 为成功,R0=0 为失败)
单字编程函数(IAP_WordProgram)
入口地址:保存在 0x10000008 单元内
参数输入:R0-编程的 Flash 地址,R1-编程数据
参数输出:R0-函数执行状态(R0=1 为成功,R0=0 为失败)
多字编程函数(IAP_WordsProgram)
3. 2. 3. 4
入口地址:保存在 0x10000000 单元内
参数输入:R0-编程的 Flash 首地址,R1-放在 SRAM 空间的编程数据首地址,
R2-编程数据长度,R3-当编程到页首时是否先进行页擦除(R3 非零为擦除,
R3=0 为不擦除)
参数输出:R0-函数执行状态(R0=1 为成功,R0=0 为失败)
特殊功能寄存器
IAP 解锁寄存器(IAP_UL)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
UL
15
14
13
12
11
10
9
8
7
UL
UL
bit31-0
R/W
IAP 解锁:写入 0x0000_00A5;
IAP 上锁:进行如下任一操作均可上锁
写入其它值,IAP 上锁;
写 IAP 触发寄存器 IAP_TRIG,IAP 自动上锁;
写保留地址,IAP 上锁;
IAP 软件复位后,IAP 上锁。
注 1:IAP 上锁后,处于写保护状态的寄存器为 IAP_CON,IAP_ADDR,IAP_DATA,IAP_TRIG。
V1.0
版权所有©上海东软载波微电子有限公司
77/309
http://www.essemi.com
HR8P506_Datasheet_C
注 2:写保留地址,IAP 上锁,是指对 40000800H~40000BFFH 空间中未定义的地址单元,进行写操作时,IAP 上锁。
IAP 控制寄存器(IAP_CON)
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
FLASH_ACK
FLASH_REQ
RST
EN
保留
15
14
13
12
11
10
9
8
7
保留
-
FLASH_FAIL
bit31-8
-
-
IAP 访问 FLASH 地址失败标志位
0:IAP 未访问 FLASH 地址保护区
1:IAP 访问 FLASH 地址保护区,访问失败
FLASH_FAIL
bit7
R
-
bit6
R/W
FLASH_ACK
bit5
-
R
FLASH 应答信号
0:不允许访问
1:允许 IAP 访问 FLASH 存储器
IAP 访问 FLASH 的请求信号
0:无请求
1:IAP 请求访问 FLASH 存储器
FLASH_REQ
bit4
R/W
-
bit3-2
-
-
W
IAP 软件复位
0:读取时始终为 0
1:复位
RST
bit1
EN
bit0
保留
IAP 使能位
0:禁止
1:使能
R/W
注 1:对 IAP_CON 寄存器进行写操作前,需要先设置 IAP_UL 寄存器,对 IAP 解锁,去除写保护。
IAP 地址寄存器(IAP_ADDR)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
保留
15
14
13
12
11
10
9
8
IAPPA
-
bit31-21
7
6
5
IAPCA
-
V1.0
版权所有©上海东软载波微电子有限公司
20
19
18
4
17
16
1
0
保留
IFREN
3
2
保留
-
78/309
http://www.essemi.com
HR8P506_Datasheet_C
IFREN
bit20
R/W
-
bit19-16
-
IAPPA
bit15-10
IAP 信息区使能
0:不允许 IAP 操作 FLASH_INFO 区
1:允许 IAP 操作 FLASH_INFO 区
-
R/W
IAP 页地址(擦除模式)
1)0x00~0x23:共 36 页,对应的地址范围
0x0000_0000~0x0000_8FFF
2)操作 FLASH INFO 区时,IAPPA 无效
IAP 单元地址
1)擦除模式下,单元地址无效
2)编程模式下:
操作非 FLASH INFO 区时,IAPCA 为当前页中被编程
单元的相对地址,每页 256 个单元,每单元 4 个字节。编
程前需保证该单元已经被擦除
操作 FLASH INFO 区时,仅 IAPCA[5:0]有效,INFO
区共包括 64 个单元,每单元 4 个字节
IAPCA
bit9-2
R/W
-
bit1-0
-
-
注 1:对 IAP_ADDR 寄存器进行写操作前,需要先设置 IAP_UL 寄存器,对 IAP 解锁,去除写保护。
注 2:完成页擦除后,IAPPA 自动+1;
注 3:完成单元编程后,IAPCA 自动+1;由于 IAPCA 只在当前页中进行单元寻址,所以跨页编程时,必须重新填
写 IAPPA,指定下一页地址。
IAP 数据寄存器(IAP_DATA)
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
DATA
15
14
13
12
11
10
9
8
7
DATA
DATA
bit31-0
IAP 单元数据
R/W
注 1:对 IAP_DATA 寄存器进行写操作前,需要先设置 IAP_UL 寄存器,对 IAP 解锁,去除写保护。
触发寄存器(IAP_TRIG)
偏移地址:0CH
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
TRIG
15
14
13
12
11
10
V1.0
版权所有©上海东软载波微电子有限公司
9
8
7
79/309
http://www.essemi.com
HR8P506_Datasheet_C
TRIG
TRIG
bit31-0
IAP 操作命令(写入该寄存器后,IAP 重新上锁)
0x0000_51AE:全擦除(仅在 SWD 调试时有效)
0x0000_5EA1:页擦除(擦除 INFO 区时,必须先
执行全擦除操作,否则无效)
0x0000_5DA2:编程模式
其它:无操作(IAP 完成后,硬件自动更改为无操作)
R/W
注 1:对 IAP_TRIG 寄存器进行写操作前,需要先设置 IAP_UL 寄存器,对 IAP 解锁,去除写保护。
IAP 状态寄存器(IAP_STA)
偏移地址:14H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
保留
15
14
13
12
11
10
9
8
7
6
5
保留
-
TIMEOUT_ERR
PROG_END
ERASE_END
BSY
bit31-4
bit3
bit2
bit1
bit0
-
4
3
2
1
0
TIMEOUT_ERR
PROG_END
ERASE_END
BSY
-
R/W
IAP 超时错误标志位
0:写 0 清除,触发 IAP_TRIG 自动清除,
或 IAP 软件复位清除
1:IAP 操作超时
R/W
IAP 编程结束标志位
0:写 0 清除,触发 IAP_TRIG 自动清除,
或 IAP 软件复位清除
1:当前单元编程完成
R/W
IAP 页擦除结束标志位
0:写 0 清除,触发 IAP_TRIG 自动清除,
或 IAP 软件复位清除
1:当前页擦除完成
R
IAP 工作状态位
0:空闲,IAP 软件复位可将该位清零
1:IAP 操作正在进行中
注 1:IAP_STA 寄存器的 TIMEOUT_ERR 为 1 时,硬件自动清零 IAP_CON 寄存器的 EN 位。
V1.0
版权所有©上海东软载波微电子有限公司
80/309
http://www.essemi.com
HR8P506_Datasheet_C
3. 3 数据存储器(SRAM)
芯片内部集成 8K 字节数据存储器 SRAM,地址范围为 2000_0000H~2000_1FFFH。
3. 3. 1
SRAM地址映射
0xFFFF_FFFF
0x3FFF_FFFF
System
0xE000_0000
0xDFFF_FFFF
Reserved
SRAM
bitband
0xA000_0000
0x9FFF_FFFF
Reserved
0x2200_0000
0x21FF_FFFF
0x6000_0000
0x5FFF_FFFF
Peripheral
Reserved
0x4000_0000
0x3FFF_FFFF
SRAM
0x2000_0000
0x1FFF_FFFF
0x2000_2000
0x2000_1FFF
8K Bytes
SRAM
FLASH
0x0000_0000
0x2000_0000
图 3-6 SRAM 映射图
3. 3. 2
SRAM位带扩展
SRAM 支持位带扩展,可使用普通的加载和存储指令对单比特进行读写操作。通过位带扩展,
除可在起始地址为 0x2000_0000 的空间访问 SRAM 外,还可在起始地址为 0x2200_0000
的位带扩展区以单比特方式访问 SRAM。
位带扩展区把每个比特扩展为一个 32-bit 的字,
通过访问这些字可达到访问原始比特的目的。
对于 SRAM 的某个 bit,如果它所在字节地址为 A,位序号为 N(0≤N≤7)
,则该 bit 在 SRAM
位带扩展后的地址为:
AliasAddress_A_N = 0x2200_0000 + ( A – 0x2000_0000) x 32 + N x 4
V1.0
版权所有©上海东软载波微电子有限公司
81/309
http://www.essemi.com
HR8P506_Datasheet_C
3. 4 外设寄存器
3. 4. 1
外设寄存器映射
Peripheral Device
0xFFFF_FFFF
System
0xE000_0000
0xDFFF_FFFF
Reserved
0x6000_0000
0x5FFF_FFFF
Peripheral
0x4000_0000
0x3FFF_FFFF
Peripheral
bitband
0x4200_0000~0x5FFF_FFFF
Reserved
0x4000_9400~0x41FF_FFFF
I2C0
0x4000_9000~0x4000_93FF
Reserved
0x4000_8C00~0x4000_8FFF
SPI1
0x4000_8400~0x8400_8BFF
SPI0
0x4000_8000~0x4000_83FF
Reserved
0x4000_7400~0x4000_7FFF
EUART0
0x4000_7000~0x4000_73FF
UART1
0x4000_6400~0x4000_67FF
UART0
0x4000_6000~0x4000_63FF
Reserved
0x4000_4400~0x4000_5FFF
T32N0
0x4000_4000~0x4000_43FF
Reserved
0x4000_3000~0x4000_3FFF
T16N3
0x4000_2C00~0x4000_2FFF
T16N2
0x4000_2800~0x4000_2BFF
T16N1
0x4000_2400~0x4000_27FF
T16N0
0x4000_2000~0x4000_23FF
WDT
0x4000_1C00~0x4000_1FFF
LCD/LED
0x4000_1800~0x4000_1BFF
RTC
0x4000_1400~0x4000_17FF
ADC0
0x4000_1000~0x4000_13FF
Reserved
0x4000_0C00~0x4000_0FFF
Flash Interface
0x4000_0800~0x4000_0BFF
GPIO
0x4000_0400~0x4000_07FF
SCU
0x4000_0000~0x4000_03FF
SRAM
0x2000_0000
0x1FFF_FFFF
Code
0x0000_0000
图 3-7 外设存储器分配示意图
注 1:Reserved 保留寄存器区域为只读,读出值为 00000000H。
3. 4. 2
外设寄存器位带扩展
外设寄存器支持位带扩展,可使用普通的加载和存储指令对单比特进行读写操作。通过位带
扩展,除可在 0x4000_0000 起始的空间访问外设外,还可在起始地址为 0x4200_0000 的位
带扩展区以单比特方式访问外设寄存器。
位带扩展区把每个比特扩展为一个 32-bit 的字,
通过访问这些字可达到访问原始比特的目的。
对于外设寄存器的某一位,如果它所在字节地址为 A,位序号为 N(0≤N≤7)
,则该位在外设
V1.0
版权所有©上海东软载波微电子有限公司
82/309
http://www.essemi.com
HR8P506_Datasheet_C
寄存器位带扩展后的地址为:
AliasAddress_A_N = 0x4200_0000 + ( A – 0x4000_0000) x 32 + N x 4
GPIO 端口寄存器 GPIO_PADATABSR,GPIO_PADATABCR,GPIO_PADATABRR,
GPIO_PADIRBSR,GPIO_PADIRBCR,GPIO_PADIRBRR,GPIO_PBDATABSR,
GPIO_PBDATABCR,GPIO_PBDATABRR,GPIO_PBDIRBSR,GPIO_PBDIRBCR,
GPIO_PBDIRBRR,用于实现对 GPIO 端口数据寄存器和方向控制寄存器的位操作,这些端
口位操作寄存器不再支持位带扩展访问。除上述寄存器外,其它外设寄存器均支持位带扩展
访问操作。
3. 4. 3
系统控制单元(SCU)寄存器列表
系统控制单元(SCU)
寄存器名称
寄存器偏移地址
寄存器描述
SCU_PROT
0000H
系统设置保护寄存器
SCU_NMICON
0004H
不可屏蔽中断控制寄存器
SCU_PWRC
0008H
复位寄存器
SCU_FAULTFLAG
000CH
硬件错误标志寄存器
SCU_FLASHWAIT
0020H
FLASH 访问等待时间寄存器
SCU_SOFTCFG
0024H
系统配置软件控制寄存器
SCU_LVDCON
0028H
LVD 控制寄存器
SCU_CCM
002CH
外部时钟检测控制寄存器
SCU_PLLLKCON
0030H
PLL 锁定中断控制寄存器
SCU_TIMEREN
0034H
TIMER 使能控制寄存器
SCU_TIMERDIS
0038H
TIMER 关停控制寄存器
SCU_SCLKEN0
0040H
系统时钟控制寄存器 0
SCU_SCLKEN1
0044H
系统时钟控制寄存器 1
SCU_PCLKEN
0048H
外设时钟控制寄存器
SCU_WAKEUPTIME
004CH
系统唤醒时间控制寄存器
SCU_TBLREMAPEN
0060H
中断向量表重映射使能寄存器
SCU_TBLOFF
0064H
中断向量表偏移寄存器
SCU 基地址:4000_0000H
3. 4. 4
GPIO寄存器列表
GPIO 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
GPIO 基地址:4000_0400H
GPIO_PAPORT
0000H
PA 端口状态寄存器
GPIO_PADATA
0004H
PA 端口数据寄存器
GPIO_PADATABSR
0008H
PA 输出置位寄存器
GPIO_PADATABCR
000CH
PA 输出清零寄存器
V1.0
版权所有©上海东软载波微电子有限公司
83/309
http://www.essemi.com
HR8P506_Datasheet_C
GPIO_PADATABRR
0010H
PA 输出翻转寄存器
GPIO_PADIR
0014H
PA 端口方向控制寄存器
GPIO_PADIRBSR
0018H
PA 端口方向置位寄存器.
GPIO_PADIRBCR
001CH
PA 端口方向清零寄存器
GPIO_PADIRBRR
0020H
PA 端口方向翻转寄存器
GPIO_PAFUNC0
0024H
PA[7:0]端口复用选择寄存器
GPIO_PAFUNC1
0028H
PA[15:8]端口复用选择寄存器
GPIO_PAFUNC2
002CH
PA[23:16]端口复用选择寄存器
GPIO_PAFUNC3
0030H
PA[31:24]端口复用选择寄存器
GPIO_PAINEB
0034H
PA 端口输入控制寄存器
GPIO_PAODE
0038H
PA 端口开漏控制寄存器
GPIO_PAPUE
003CH
PA 端口弱上拉使能寄存器
GPIO_PAPDE
0040H
PA 端口弱下拉使能寄存器
GPIO_PADS
0044H
PA 端口驱动电流控制寄存器
GPIO_PBPORT
0080H
PB 端口状态寄存器
GPIO_PBDATA
0084H
PB 端口数据寄存器
GPIO_PBDATABSR
0088H
PB 端口输出置位寄存器
GPIO_PBDATABCR
008CH
PB 端口输出清零寄存器
GPIO_PBDATABRR
0090H
PB 端口输出翻转寄存器
GPIO_PBDIR
0094H
PB 端口方向控制寄存器
GPIO_PBDIRBSR
0098H
PB 端口方向置位寄存器
GPIO_PBDIRBCR
009CH
PB 端口方向清零寄存器
GPIO_PBDIRBRR
00A0H
PB 端口方向翻转寄存器
GPIO_PBFUNC0
00A4H
PB[7:0]端口复用选择寄存器
GPIO_PBFUNC1
00A8H
PB[13:8]端口复用选择寄存器
GPIO_PBINEB
00B4H
PB 端口输入控制寄存器
GPIO_PBODE
00B8H
PB 端口开漏控制寄存器
GPIO_PBPUE
00BCH
PB 端口弱上拉使能寄存器
GPIO_PBPDE
00C0H
PB 端口弱下拉使能寄存器
GPIO_PBDS
00C4H
PB 端口驱动电流控制寄存器
GPIO_PINTIE
0300H
PINT 中断使能寄存器
GPIO_PINTIF
0304H
PINT 中断标志寄存器
GPIO_PINTSEL
0308H
PINT 中断源选择寄存器
GPIO_PINTCFG
030CH
PINT 中断配置寄存器
GPIO_KINTIE
0310H
KINT 中断使能寄存器
GPIO_KINTIF
0314H
KINT 中断标志寄存器
GPIO_KINTSEL
0318H
KINT 中断源选择寄存器
GPIO_KINTCFG
031CH
KINT 中断配置寄存器
GPIO_IOINTFLTS
0330H
端口中断 20ns 滤波器分配控制寄存器
GPIO_TMRFLTSEL
0340H
TMR 输入端口 20ns 滤波器分配控制寄存器
GPIO_SPIFLTSEL
0344H
SPI 输入端口 20ns 滤波器分配控制寄存器
GPIO_TXPWM
0380H
脉宽调制寄存器
V1.0
版权所有©上海东软载波微电子有限公司
84/309
http://www.essemi.com
HR8P506_Datasheet_C
GPIO_BUZC
3. 4. 5
蜂鸣器计数控制寄存器
0384H
IAP寄存器列表
IAP 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
IAP_CON
0000H
IAP 控制寄存器
IAP_ADDR
0004H
IAP 地址寄存器
IAP_DATA
0008H
IAP 数据寄存器
IAP_TRIG
000CH
IAP 触发寄存器
IAP_UL
0010H
IAP 解锁寄存器
IAP_STA
0014H
IAP 状态寄存器
IAP 基地址:4000_0800H
3. 4. 6
ADC寄存器列表
ADC 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
ADC_DR
0000H
ADC 转换值寄存器
ADC_CON0
0004H
ADC 控制寄存器 0
ADC_CON1
0008H
ADC 控制寄存器 1
ADC_CHS
000CH
ADC 通道选择寄存器
ADC_IE
0010H
ADC 中断使能寄存器
ADC_IF
0014H
ADC 中断标志寄存器
ADC_ACPC
0028H
ADC 自动转换比较控制寄存器
ADC_ACPCMP
0030H
ADC 自动转换比较阈值寄存器
ADC_ACPMEAN
0034H
ADC 自动转换均值数据寄存器
ADC_VREFCON
0040H
ADC 参考控制寄存器
ADC 基地址:4000_1000H
3. 4. 7
RTC寄存器列表
RTC 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
RTC_CON
0000H
RTC 控制寄存器
RTC_CAL
0004H
RTC 调校寄存器
RTC_WA
0008H
RTC 周闹钟寄存器
RTC_DA
000CH
RTC 日闹钟寄存器
RTC_HMS
0010H
RTC 时分秒寄存器
RTC 基地址:4000_1400H
V1.0
版权所有©上海东软载波微电子有限公司
85/309
http://www.essemi.com
HR8P506_Datasheet_C
RTC_YMDW
0014H
RTC 年月日周寄存器
RTC_IE
0018H
RTC 中断使能寄存器
RTC_IF
001CH
RTC 中断标志寄存器
RTC_WP
0020H
RTC 写保护寄存器
3. 4. 8
LCD寄存器列表
LCD 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
LCD_CON0
0000H
LCD 控制寄存器 0
LCD_TWI
0004H
LCD 闪烁时间寄存器
LCD_SEL
0008H
LCD 段使能寄存器
LCD_CON1
0010H
LCD 控制寄存器 1
LCD_D0
0020H
LCD 像素寄存器 0
LCD_D1
0024H
LCD 像素寄存器 1
LCD_D2
0028H
LCD 像素寄存器 2
LCD_D3
002CH
LCD 像素寄存器 3
LCD_D4
0030H
LCD 像素寄存器 4
LCD_D5
0034H
LCD 像素寄存器 5
LCD_D6
0038H
LCD 像素寄存器 6
LCD:4000_1800H
注:LCD/LED 模块中寄存器 LCD_CON0 和 LED_CON0,LCD_SEL 和 LED_SEL,LCD_CON1 和 LED_CON1,
LCD_D0 和 LED_D0,LCD D1 和 LED_D1 地址共用。
3. 4. 9
LED寄存器列表
LED 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
LED 基地址:4000_1800H
LED_CON0
0000H
LED 控制寄存器 0
LED_SEL
0008H
LED 段使能寄存器
LED_CON1
0010H
LED 控制寄存器 1
LED_D0
0020H
LED 像素寄存器 0
LED_D1
0024H
LED 像素寄存器 1
注:LCD/LED 模块中寄存器 LCD_CON0 和 LED_CON0,LCD_SEL 和 LED_SEL,LCD_CON1 和 LED_CON1,
LCD_D0 和 LED_D0,LCD D1 和 LED_D1 地址共用。
V1.0
版权所有©上海东软载波微电子有限公司
86/309
http://www.essemi.com
HR8P506_Datasheet_C
3. 4. 10 WDT寄存器列表
WDT 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
WDT_LOAD
0000H
WDT 计数器装载值寄存器
WDT_VALUE
0004H
WDT 计数器当前值寄存器
WDT_CON
0008H
WDT 控制寄存器
WDT_INTCLR
000CH
WDT 中断标志清除寄存器
WDT_RIS
0010H
WDT 中断标志寄存器
WDT_LOCK
0100H
WDT 访问使能寄存器
WDT_ITCR
0300H
WDT 测试寄存器,仅供测试使用
WDT_ITOP
0304H
WDT 测试寄存器,仅供测试使用
WDT 基地址:4000_1C00H
注:WDT_ITCR 和 WDT_ITOP 寄存器仅供测试使用,禁止用户对其进行写操作,否则可能会导致芯片工作异常。
3. 4. 11 T16N0/T16N1/T16N2/T16N3 寄存器列表
T16N 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
T16N0 基地址:4000_2000H
T16N1 基地址:4000_2400H
T16N2 基地址:4000_2800H
T16N3 基地址:4000_2C00H
T16N_CNT0
0000H
T16N 计数值寄存器 0
T16N_CNT1
0004H
T16N 计数值寄存器 1
T16N_PRECNT
0008H
T16N 预分频器计数值寄存器
T16N_PREMAT
000CH
T16N 预分频器计数匹配寄存器
T16N_CON0
0010H
T16N 控制寄存器 0
T16N_CON1
0014H
T16N 控制寄存器 1
T16N_CON2
0018H
T16N 控制寄存器 2
T16N_IE
0020H
T16N 中断使能寄存器
T16N_IF
0024H
T16N 中断标志寄存器
T16N_PDZ
0028H
T16N 调制模式死区宽度寄存器
T16N_PTR
002CH
T16N 调制模式 ADC 触发寄存器
T16N_MAT0
0030H
T16N 计数匹配寄存器 0
T16N_MAT1
0034H
T16N 计数匹配寄存器 1
T16N_MAT2
0038H
T16N 计数匹配寄存器 2
T16N_MAT3
003CH
T16N 计数匹配寄存器 3
T16N_TOP0
0040H
T16NCNT0 计数峰值寄存器 0
T16N_TOP1
0044H
T16NCNT1 计数峰值寄存器 1
V1.0
版权所有©上海东软载波微电子有限公司
87/309
http://www.essemi.com
HR8P506_Datasheet_C
3. 4. 12 T32N0 寄存器列表
T32N 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
T32N_CNT
0000H
T32N 计数值寄存器
T32N_CON0
0004H
T32N 控制寄存器 0
T32N_CON1
0008H
T32N 控制寄存器 1
T32N_PRECNT
0010H
T32N 预分频器计数值寄存器
T32N_PREMAT
0014H
T32N 预分频器计数匹配寄存器
T32N_IE
0018H
T32N 中断使能寄存器
T32N_IF
001CH
T32N 中断标志寄存器
T32N_MAT0
0020H
T32N 计数匹配寄存器 0
T32N_MAT1
0024H
T32N 计数匹配寄存器 1
T32N_MAT2
0028H
T32N 计数匹配寄存器 2
T32N_MAT3
002CH
T32N 计数匹配寄存器 3
T32N0 基地址:4000_4000H
3. 4. 13 UART0/UART1 寄存器列表
UART 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
UART0 基地址:4000_6000H
UART1 基地址:4000_6400H
UART_CON0
0000H
UART 控制寄存器 0
UART_CON1
0004H
UART 控制寄存器 1
UART_BRR
0010H
UART 波特率寄存器
UART_STA
0014H
UART 状态寄存器
UART_IE
0018H
UART 中断使能寄存器
UART_IF
001CH
UART 中断标志寄存器
UART_TBW
0020H
UART 发送数据写入寄存器
UART_RBR
0024H
UART 接收数据读取寄存器
UART_TB0
0040H
UART 发送缓冲寄存器 0
UART_TB1
0044H
UART 发送缓冲寄存器 1
UART_TB2
0048H
UART 发送缓冲寄存器 2
UART_TB3
004CH
UART 发送缓冲寄存器 3
UART_TB4
0050H
UART 发送缓冲寄存器 4
UART_TB5
0054H
UART 发送缓冲寄存器 5
UART_TB6
0058H
UART 发送缓冲寄存器 6
UART_TB7
005CH
UART 发送缓冲寄存器 7
UART_RB0
0060H
UART 接收缓冲寄存器 0
V1.0
版权所有©上海东软载波微电子有限公司
88/309
http://www.essemi.com
HR8P506_Datasheet_C
UART_RB1
0064H
UART 接收缓冲寄存器 1
UART_RB2
0068H
UART 接收缓冲寄存器 2
UART_RB3
006CH
UART 接收缓冲寄存器 3
UART_RB4
0070H
UART 接收缓冲寄存器 4
UART_RB5
0074H
UART 接收缓冲寄存器 5
UART_RB6
0078H
UART 接收缓冲寄存器 6
UART_RB7
007CH
UART 接收缓冲寄存器 7
3. 4. 14 EUART0 寄存器列表
EUART 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
EUART0 基地址:4000_7000H
EUART_CON0
0000H
EUART 控制寄存器 0
EUART_CON1
0004H
EUART 控制寄存器 1
EUART_CON2
0008H
EUART 控制寄存器 2
EUART_BRR
0010H
EUART 波特率寄存器
EUART_IE
0018H
EUART 中断使能寄存器
EUART_IF
001CH
EUART 中断标志寄存器
EUART_TBW
0020H
EUART 发送数据写入寄存器
EUART_RBR
0024H
EUART 接收数据读取寄存器
EUART_TB01
0040H
EUART 发送缓冲寄存器 0/1
EUART_TB23
0044H
EUART 发送缓冲寄存器 2/3
EUART_RB01
0048H
EUART 接收缓冲寄存器 0/1
EUART_RB23
004CH
EUART 接收缓冲寄存器 2/3
3. 4. 15 SPI0/ SPI1 寄存器列表
SPI 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
SPI0 基地址:4000_8000H
SPI1 基地址:4000_8400H
SPI_CON
0000H
SPI 控制寄存器
SPI_TBW
0008H
SPI 发送数据写入寄存器
SPI_RBR
000CH
SPI 接收数据读取寄存器
SPI_IE
0010H
SPI 中断使能寄存器
SPI_IF
0014H
SPI 中断标志寄存器
SPI_TB
0018H
SPI 发送缓冲寄存器
SPI_RB
001CH
SPI 接收缓冲寄存器
SPI_STA
0020H
SPI 状态寄存器
SPI_CKS
0024H
SPI 波特率设置寄存器
V1.0
版权所有©上海东软载波微电子有限公司
89/309
http://www.essemi.com
HR8P506_Datasheet_C
3. 4. 16 I2C0 寄存器列表
I2C 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
I2C0 基地址:4000_9000H
I2C_CON
0000H
I2C 控制寄存器
I2C_MOD
0004H
I2C 工作模式寄存器
I2C_IE
0008H
I2C 中断使能寄存器
I2C_IF
000CH
I2C 中断标志寄存器
I2C_TBW
0010H
I2C 发送数据写入寄存器
I2C_RBR
0014H
I2C 接收数据读取寄存器
I2C_TB
0018H
I2C 发送缓冲寄存器
I2C_RB
001CH
I2C 接收缓冲寄存器
I2C_STA
0020H
I2C 状态寄存器
3. 5 内核寄存器
3. 5. 1
系统定时器(SYSTICK)寄存器列表
系统定时器(SYSTICK)
寄存器名称
寄存器偏移地址
寄存器描述
SYSTICK 基地址:E000_E000H
SYST_CSR
0010H
SYSTICK 控制/状态寄存器
SYST_RVR
0014H
SYSTICK 重装值寄存器
SYST_CVR
0018H
SYSTICK 当前值寄存器
SYST_CALIB
001CH
SYSTICK 校准值寄存器
3. 5. 2
中断控制器(NVIC)寄存器列表
中断控制器(NVIC)
寄存器名称
寄存器偏移地址
寄存器描述
NVIC 基地址:E000_E100H
NVIC_ISER
0000H
IRQ0~31 置中断请求使能寄存器
NVIC_ICER
0080H
IRQ0~31 清中断请求使能寄存器
NVIC_ISPR
0100H
IRQ0~31 置中断挂起寄存器
NVIC_ICPR
0180H
IRQ0~31 清中断挂起寄存器
NVIC_PR0
0300H
IRQ0~3 优先级控制寄存器
NVIC_PR1
0304H
IRQ4~7 优先级控制寄存器
NVIC_PR2
0308H
IRQ8~11 优先级控制寄存器
V1.0
版权所有©上海东软载波微电子有限公司
90/309
http://www.essemi.com
HR8P506_Datasheet_C
NVIC_PR3
030CH
IRQ12~15 优先级控制寄存器
NVIC_PR4
0310H
IRQ16~19 优先级控制寄存器
NVIC_PR5
0314H
IRQ20~23 优先级控制寄存器
NVIC_PR6
0318H
IRQ24~27 优先级控制寄存器
NVIC_PR7
031CH
IRQ28~31 优先级控制寄存器
3. 5. 3
系统控制块(SCB)寄存器列表
系统控制块(SCB)
寄存器名称
寄存器偏移地址
寄存器描述
SCB 基地址:E000_ED00H
SCB_CPUID
0000H
SCB_CPUID 寄存器
SCB_ICSR
0004H
中断控制和状态寄存器
SCB_AIRCR
000CH
应用中断和复位控制寄存器
SCB_SCR
0010H
系统控制寄存器
SCB_CCR
0014H
配置和控制寄存器
SCB_SHPR2
001CH
系统处理程序优先级寄存器 2
SCB_SHPR3
0020H
系统处理程序优先级寄存器 3
V1.0
版权所有©上海东软载波微电子有限公司
91/309
http://www.essemi.com
HR8P506_Datasheet_C
第 4 章 输入输出端口(GPIO)
4. 1 概述
本芯片支持两组 GPIO 端口,最多支持共 46 个 I/O 管脚。
所有 I/O 端口都是 CMOS 施密特输入和 CMOS 输出驱动(可配置为开漏输出)
,每个 I/O 端口
的复用功能和工作模式由端口复用选择寄存器(GPIO_PxFUNCy)配置。
当 I/O 端口配置为通用数字 I/O 功能时,其输出状态由端口方向控制寄存器(GPIO_PxDIR)
配置,输入状态由相应的端口输入控制寄存器(GPIO_PxINEB)配置。当 I/O 端口处于输出状
态时,其电平由端口数据寄存器(GPIO_PxDATA)决定,1 为高电平,0 为低电平;当 I/O 端
口处于输入状态时,其电平状态可通过读取端口状态寄存器(PxPORT)获得。
端口输出电平支持位操作。将 GPIO 输出置位寄存器(GPIO_PxDATABSR)相应位写 1,可
将相应位的 GPIO 端口设置为高电平;将 GPIO 输出清零寄存器(GPIO_PxDATABCR)相应
位写 1,可将相应位的 GPIO 端口设置为低电平;将 GPIO 输出翻转寄存器
(GPIO_PxDATABRR)相应位写 1,可将相应位的 GPIO 端口电平取反。
端口方向控制支持位操作。将 GPIO 端口方向置位寄存器(GPIO_PxDIRBSR)相应位写 1,
可将相应位的 GPIO 端口设置为输入;将 GPIO 端口方向清零寄存器(GPIO_PxDIRBCR)相
应位写 1,可将相应位的 GPIO 端口设置为输出;将 GPIO 输出翻转寄存器(GPIO_PxDIRBRR)
相应位写 1,可将相应位的 GPIO 端口方向取反。
当 I/O 端口配置为复用功能时,作为芯片外设功能模块的复用端口,其输出状态仍需通过端口
方向控制寄存器(GPIO_PxDIR)进行配置,输入状态仍需通过相应的端口输入控制能寄存器
(GPIO_PxINEB)进行配置。
每个 I/O 端口均支持开漏输出,由相应的端口开漏输出使能寄存器(GPIO_PxODE)控制开漏
输出是否使能。
每个 I/O 端口均支持弱上拉或弱下拉,由相应的端口输入弱上拉使能寄存器(GPIO_PxPUE)
控制其弱上拉功能是否使能,由相应的端口输入弱下拉使能寄存器(GPIO_PxPDE)控制其弱
下拉功能是否使能。
每个 I/O 端口均支持电流驱动能力可配置,由相应的端口驱动电流控制寄存器(GPIO_PxDS)
选择 I/O 端口的输出驱动能力,可选择为强电流驱动 I/O 端口,或者普通驱动 I/O 端口。其中
PA6~PA13 端口可复用为 LCDC/LEDC 模块的 COM7~COM0 端口,
当其设置为强电流驱动 I/O
端口时,具有比其它 I/O 端口更强的驱动能力,具体参见《附录 2 电气特性》章节的描述。
V1.0
版权所有©上海东软载波微电子有限公司
92/309
http://www.essemi.com
HR8P506_Datasheet_C
4. 2 结构框图
系统时钟
地址总线
读数据总线
VDD VDD
VDD
Px中断
IO输出
IO控制
IO逻辑
写数据总线
IO输入
弱上拉控制
控制总线
Px
IOMUX
外设使能
外设输出
外设输入
数模选择
模拟输入
模拟输出
图 4-1 IO 端口电流结构图
4. 3 外部端口中断
支持全部 IO 口外部端口中断,分成 8 组,每组对应一个 IRQ,并可通过 GPIO_PINTCFG 寄
存器的 PINTx 位配置各外部中断触发方式。触发方式配置为高电平或低电平时,中断标志只有
在触发电平翻转后,才可通过对 GPIO_PINTIF 寄存器的相应位写 1 来清除。
GPIO_PINTIE 寄存器的输入屏蔽使能位 PMASKx,可对外部端口中断输入进行屏蔽,屏蔽位
使能时,对应的中断输入源就被屏蔽了,不会产生中断和标志位。
GPIO_PINTIE 寄存器的外部端口中断使能位 PINTIEx,可对每个外部端口中断标志 PINTIFx
是否触发外部端口中断请求,进行配置。
PINTx_SEL
PINTx_CFG
PINTIEx
PINTx_IN0
PINTx_IN1
中断
PORT
选择
PINTx_IN2
PINTx_IN3
PINTx_IN
PINTx中断
产生电路
PINTx_IN4
IRQ_PINTx
PINTIFx
PINTx_IN5
PINTx_MASK
图 4-2 外部端口中断电路结构示意图
PINTx
SEL0
SEL1
SEL2
SLE3
SEL4
SEL5
PINT0
PA0
PA8
PA16
PA24
PB0
PB8
PINT1
PA1
PA9
PA17
PA25
PB1
PB9
PINT2
PA2
PA10
PA18
PA26
PB2
PB10
PINT3
PA3
PA11
PA19
PA27
PB3
PB11
V1.0
版权所有©上海东软载波微电子有限公司
93/309
http://www.essemi.com
HR8P506_Datasheet_C
PINT4
PA4
PA12
PA20
PA28
PB4
PB12
PINT5
PA5
PA13
PA21
PA29
PB5
PB13
PINT6
PA6
PA14
PA22
PA30
PB6
-
PINT7
PA7
PA15
PA23
PA31
PB7
-
表 4-1 PINT 选择对应列表
4. 4 外部按键中断
支持 1 个 8 输入外部按键中断(KINT)
,8 个按键输入为 KINT0_IN~KINT7_IN,其中任意一个
按键输入都可以触发按键中断,每个按键输入可以从 6 个 I/O 端口中选择一个作为其输入源。
输入屏蔽使能位 KMASKx,可对每个输入源 KINTx_IN 进行屏蔽。屏蔽使能时,不论 KINTx_IN
输入如何变化,中断标志 KINTIFx 均保持不变;屏蔽使能时,可通过端口中断配置寄存器位
KINTx_CFG,对各个按键输入 KINTx 进行配置,选择中断的有效触发边沿或电平。
按键中断使能位 KINTIEx,可对每个按键标志 KINTIFx 是否触发按键中断请求,进行配置。
GPIO_KINTCFG 寄存器的按键中断配置位 KINTx,可对每个输入源的触发方式进行配置,根
据端口电平变化的不同状态,触发中断。切换输入源触发方式时,需先屏蔽输入源,避免误产
生中断;或先禁止按键中断,并在切换完成后,对中断标志进行清零,然后再使能按键中断。
KINTx_SEL
KINTx_CFG
KINTIEx
KINTx_IN0
KINTx_IN1
KINTx_IN2
KINTx_IN3
KINTx_IN4
KINTx_IN5
按键中
断
PORT KINTx_IN
选择
KMASKx
KINTFx按键标
志产生电路
KINTIFx
IRQ_KINT
图 4-3 外部按键中断电路结构示意图
KINTx
SEL0
SEL1
SEL2
SLE3
SEL4
SEL5
KINT0
PA0
PA8
PA16
PA24
PB0
PB8
KINT1
PA1
PA9
PA17
PA25
PB1
PB9
KINT2
PA2
PA10
PA18
PA26
PB2
PB10
KINT3
PA3
PA11
PA19
PA27
PB3
PB11
KINT4
PA4
PA12
PA20
PA28
PB4
PB12
KINT5
PA5
PA13
PA21
PA29
PB5
PB13
KINT6
PA6
PA14
PA22
PA30
PB6
-
KINT7
PA7
PA15
PA23
PA31
PB7
-
V1.0
版权所有©上海东软载波微电子有限公司
94/309
http://www.essemi.com
HR8P506_Datasheet_C
4. 5 Buzz输出
Buzz 输出可用于驱动蜂鸣器等音频发声器件。
GPIO_BUZC 控制寄存器用于使能 Buzz 和设定其输出信号的频率。Buzz 信号频率为:
Fbuz = FPCLK/ (2*(BUZ_LOAD+1))
由 GPIO_PAFUNCx 和 GPIO_PBFUNCx 寄存器来设定 Buzz 信号直接输出至 PA0,PA1 或
PB13。
Buzz 的固定频率输出信号还可被 UART0 的输出信号 TXD0 调制为 TXPWM0 信号或被
EUART0 的输出信号 E0TX0 调制为 TXPWM1 信号,并送至相应输出端口上。可通过 TX0PLV
和 TX1PLV 控制位设定为高电平调制还是低电平调制。
当 GPIO_TXPWM 寄存器的 TX0PS 控制位为 2’b11 时,TXPWM0 调制信号可输出至 TXD0、
T16N0OUT0、T16N0OUT1 或 BUZ 管脚(由 GPIO_TXPWM 寄存器的 TXPWM0_Sx 选取)。
当 GPIO_TXPWM 寄存器的 TX1PS 控制位为 2’b11 时,TXPWM1 调制信号可输出至 E0TX0、
T16N1OUT0、T16N1OUT1 或 BUZ 管脚(由 GPIO_TXPWM 寄存器的 TXPWM1_Sx 选取)。
E0TX0
或TXD0
Buzz信号
TXPWM0或
TXPWM1
图 4-4 Buzz 高电平调制输出波形图
E0TX0
或TXD0
Buzz信号
TXPWM0或
TXPWM1
图 4-5 Buzz 低电平调制输出波形图
4. 6 特殊功能寄存器
PA 端口状态寄存器(GPIO_PAPORT)
偏移地址:00H
V1.0
版权所有©上海东软载波微电子有限公司
95/309
http://www.essemi.com
HR8P506_Datasheet_C
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
PORT
15
14
13
12
11
10
9
8
7
PORT
PORT
bit 31-0
R
PA 端口输入/输出电平
0:低电平
1:高电平
PA 端口数据寄存器(GPIO_PADATA)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
DATA
15
14
13
12
11
10
9
8
7
DATA
DATA
bit 31-0
R/W
PA 端口输出寄存器
0:输出低电平
1:输出高电平
PA 输出置位寄存器(GPIO_PADATABSR)
偏移地址:08H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
20
19
18
17
16
DATABSR
15
14
13
12
11
10
9
8
7
DATABSR
DATABSR
bit 31-0
W
PA 输出置位选择
0:不改变输出电平
1:相应端口输出高电平
PA 端口输出清零寄存器(GPIO_PADATABCR)
偏移地址: 0CH
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
DATABCR
V1.0
版权所有©上海东软载波微电子有限公司
96/309
http://www.essemi.com
HR8P506_Datasheet_C
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
DATABCR
DATABCR
bit 31-0
W
PA 输出清零选择
0:不改变输出电平
1:相应端口输出低电平
PA 端口输出翻转寄存器(GPIO_PADATABRR)
偏移地址: 10H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
DATABRR
15
14
13
12
11
10
9
8
7
DATABRR
DATABRR
bit 31-0
W
PA 输出翻转选择
0:不改变输出电平
1:相应端口输出翻转
PA 端口方向控制寄存器(GPIO_PADIR)
偏移地址: 14H
复位值:11111111_11111111_11111111_11111111B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
DIR
15
14
13
12
11
10
9
8
7
DIR
DIR
bit0 31-0
R/W
PA 端口方向控制位
0:输出
1:非输出(若 GPIO_PAINEB 对应位为 0,则可作
为数字输入端口使用。若需使能模拟通道功能,
GPIO_PAINEB 和 GPIO_PADIR 的对应位都应设置
为 1,关闭数字输入和输出功能)
PA 端口方向置位寄存器(GPIO_PADIRBSR)
偏移地址: 18H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
DIRBSR
V1.0
版权所有©上海东软载波微电子有限公司
97/309
http://www.essemi.com
HR8P506_Datasheet_C
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
DIRBSR
DIRBSR
bit 31-0
W
PA 端口方向置位选择
0:不改变 GPIO_PADIR 值
1:对应的 GPIO_PADIR 位设置为 1
PA 端口方向清零寄存器(GPIO_PADIRBCR)
偏移地址: 1CH
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
DIRBCR
15
14
13
12
11
10
9
8
7
DIRBCR
DIRBCR
bit 31-0
W
PA 端口方向清零选择
0:不改变 GPIO_PADIR 的值
1:对应的 GPIO_PADIR 位设置为 0
PA 端口方向翻转寄存器(GPIO_PADIRBRR)
偏移地址: 20H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
18
17
16
DIRBRR
15
14
13
12
11
10
9
8
7
DIRBRR
DIRBRR
bit 31-0
W
PA 端口方向翻转选择
0:不改变 GPIO_PADIR 的值
1:对应的 GPIO_PADIR 位值翻转
PA[7:0]端口复用选择寄存器(GPIO_PAFUNC0)
偏移地址:24H
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
28
27
13
12
PA3
26
保留
PA7
14
保留
29
11
25
24
23
保留
PA6
10
保留
V1.0
版权所有©上海东软载波微电子有限公司
9
8
PA2
22
7
20
19
保留
PA5
6
保留
21
5
4
PA1
3
PA4
2
保留
1
0
PA0
98/309
http://www.essemi.com
HR8P506_Datasheet_C
—
—
bit31-30
PA7
bit29-28
R/W
—
bit27-26
—
PA6
bit25-24
R/W
—
bit23-22
—
PA5
bit21-20
R/W
—
bit19-18
—
PA4
bit17-16
R/W
—
bit15-14
—
PA3
bit13-12
R/W
—
bit11-10
—
PA2
bit9-8
R/W
—
bit7-6
—
PA1
bit5-4
R/W
—
bit3-2
—
PA0
bit1-0
R/W
—
PA7 复用选择位
00:FUN0
01:FUN1
10:FUN2
11:FUN3
—
PA6 复用选择位
00~11:FUN0~FUN3
—
PA5 复用选择位
00~11:FUN0~FUN3
—
PA4 复用选择位
00~11:FUN0~FUN3
—
PA3 复用选择位
00~11:FUN0~FUN3
—
PA2 复用选择位
00~11:FUN0~FUN3
—
PA1 复用选择位
00~11:FUN0~FUN3
—
PA0 复用选择位
00~11:FUN0~FUN3
PA[15:8]端口复用选择寄存器(GPIO_PAFUNC1)
偏移地址:28H
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
29
28
27
14
保留
13
12
PA11
—
PA15
26
保留
PA15
11
25
24
23
10
保留
bit31-30
bit29-28
V1.0
版权所有©上海东软载波微电子有限公司
9
8
PA10
—
R/W
22
保留
PA14
7
21
20
19
6
保留
5
4
PA9
18
保留
PA13
3
2
保留
17
16
PA12
1
0
PA8
—
PA15 复用选择位
00:FUN0
01:FUN1
10:FUN2
99/309
http://www.essemi.com
HR8P506_Datasheet_C
11:FUN3
—
bit27-26
—
PA14
bit25-24
R/W
—
bit23-22
—
PA13
bit21-20
R/W
—
bit19-18
—
PA12
bit17-16
R/W
—
bit15-14
—
PA11
bit13-12
R/W
—
bit11-10
—
PA10
bit9-8
R/W
—
bit7-6
—
PA9
bit5-4
R/W
—
bit3-2
—
PA8
bit1-0
R/W
—
PA14 复用选择位
00~11:FUN0~FUN3
—
PA13 复用选择位
00~11:FUN0~FUN3
—
PA12 复用选择位
00~11:FUN0~FUN3
—
PA11 复用选择位
00~11:FUN0~FUN3
—
PA10 复用选择位
00~11:FUN0~FUN3
—
PA9 复用选择位
00~11:FUN0~FUN3
—
PA8 复用选择位
00~11:FUN0~FUN3
PA[23:16]端口复用选择寄存器(GPIO_PAFUNC2)
偏移地址:2CH
复位值:00000000_00000000_00000000_00000000B
31
30
29
保留
15
28
27
保留
PA23
14
13
保留
12
PA19
—
26
11
25
24
23
保留
PA22
10
保留
bit31-30
9
8
7
—
bit29-28
R/W
—
bit27-26
—
PA22
bit25-24
R/W
—
bit23-22
—
21
20
19
6
5
4
18
保留
PA21
保留
PA18
PA23
V1.0
版权所有©上海东软载波微电子有限公司
22
3
16
PA20
2
保留
PA17
17
1
0
PA16
—
PA23 复用选择位
00:FUN0
01:FUN1
10:FUN2
11:FUN3
—
PA22 复用选择位
00~11:FUN0~FUN3
—
100/309
http://www.essemi.com
HR8P506_Datasheet_C
PA21
bit21-20
R/W
—
bit19-18
—
PA20
bit17-16
R/W
—
bit15-14
—
PA19
bit13-12
R/W
—
bit11-10
—
PA18
bit9-8
R/W
—
bit7-6
—
PA17
bit5-4
R/W
—
bit3-2
—
PA16
bit1-0
R/W
PA21 复用选择位
00~11:FUN0~FUN3
—
PA20 复用选择位
00~11:FUN0~FUN3
—
PA19 复用选择位
00~11:FUN0~FUN3
—
PA18 复用选择位
00~11:FUN0~FUN3
—
PA17 复用选择位
00~11:FUN0~FUN3
—
PA16 复用选择位
00~11:FUN0~FUN3
PA[31:24]端口复用选择寄存器(GPIO_PAFUNC3)
偏移地址:30H
复位值:00000000_00000000_00000000_00000000B
31
30
29
保留
15
28
27
14
13
保留
12
PA27
—
26
保留
PA31
11
25
24
23
10
保留
bit31-30
9
8
7
—
bit29-28
R/W
—
bit27-26
—
PA30
bit25-24
R/W
—
bit23-22
—
PA29
bit21-20
R/W
—
bit19-18
—
PA28
bit17-16
R/W
21
20
19
6
5
4
18
保留
PA29
保留
PA26
PA31
V1.0
版权所有©上海东软载波微电子有限公司
22
保留
PA30
3
2
保留
PA25
17
16
PA28
1
0
PA24
—
PA31 复用选择位
00:FUN0
01:FUN1
10:FUN2
11:FUN3
—
PA30 复用选择位
00~11:FUN0~FUN3
—
PA29 复用选择位
00~11:FUN0~FUN3
—
PA28 复用选择位
101/309
http://www.essemi.com
HR8P506_Datasheet_C
00~11:FUN0~FUN3
—
bit15-14
—
—
PA27
bit13-12
R/W
—
bit11-10
—
PA26
bit9-8
R/W
—
bit7-6
—
PA25
bit5-4
R/W
—
bit3-2
—
PA24
bit1-0
R/W
PA27 复用选择位
00~11:FUN0~FUN3
—
PA26 复用选择位
00~11:FUN0~FUN3
—
PA25 复用选择位
00~11:FUN0~FUN3
—
PA24 复用选择位
00~11:FUN0~FUN3
注 1:PA2/PA3/PA27/PA26 中只能有一个可配置为 PWM 输出的刹车控制信号,优级为:PA2>PA3>PA27>PA26,
例如一旦 PA3 设置为 PWM 输出刹车控制信号,则 PA27 和 PA26 不可再配置为 PWM 输出刹车控制信号。
注 2:
GPIO_PAFUNCx 寄存器仅用于端口的数字输入输出功能选择。
使用端口的模拟功能时,
需要设置 GPIO_PADIR
和 GPIO_PAINEB 寄存器的对应位为 1,关闭端口的数字输入和输出功能。
PA 端口输入控制寄存器 GPIO_PAINEB
偏移地址:34H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
INEB
15
14
13
12
11
10
9
8
7
INEB
INEB
bit31-0
R/W
端口数字输入功能使能位
0:使能
1:禁止
PA 端口开漏控制寄存器 GPIO_PAODE
偏移地址:38H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
ODE
15
14
13
12
11
10
9
8
7
ODE
ODE
bit31-0
V1.0
版权所有©上海东软载波微电子有限公司
R/W
端口输出开漏使能位
102/309
http://www.essemi.com
HR8P506_Datasheet_C
0:禁止,端口为推挽输出
1:使能,端口为开漏输出
PA 端口弱上拉使能寄存器(GPIO_PAPUE)
偏移地址:3CH
复位值:00000000_00000000_00000000_00000000B
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
22
21
20
19
18
17
16
6
5
4
3
2
1
0
PUE
15
14
13
12
11
10
9
8
7
PUE
PUE
bit31-0
R/W
端口弱上拉使能位
0:禁止
1:使能
PA 端口弱下拉使能寄存器(GPIO_PAPDE)
偏移地址:40H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
PDE
15
14
13
12
11
10
9
8
7
PDE
PDE
bit31-0
R/W
端口弱下拉使能位
0:禁止
1:使能
PA 端口驱动电流控制寄存器(GPIO_PADS)
偏移地址:44H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
DS
15
14
13
12
11
10
9
8
7
DS
DS
bit31-0
V1.0
版权所有©上海东软载波微电子有限公司
R/W
端口输出驱动能力选择位
0:普通电流驱动
1:强电流驱动
103/309
http://www.essemi.com
HR8P506_Datasheet_C
PB 端口状态寄存器(GPIO_PBPORT)
偏移地址:80H
复位值:00000000_00000000_00xxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
PORT
-
bit31-14
PORT
bit13-0
-
-
R
PB 端口输入/输出电平
0:低电平
1:高电平
PB 端口数据寄存器(GPIO_PBDATA)
偏移地址:84H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
DATA
-
-
bit31-14
DATA
bit13-0
R/W
-
PB 端口输出电平
0:输出低电平
1:输出高电平
PB 端口输出置位寄存器(GPIO_PBDATABSR)
偏移地址:88H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
DATABSR
-
DATABSR
bit31-14
bit13-0
V1.0
版权所有©上海东软载波微电子有限公司
-
-
W
PB 输出置位选择
0:不改变输出电平
1:相应端口输出高电平
104/309
http://www.essemi.com
HR8P506_Datasheet_C
PB 端口输出清零寄存器(GPIO_PBDATABCR)
偏移地址:8CH
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
DATABCR
-
bit31-14
DATABCR
bit13-0
-
-
W
PB 输出清零选择
0:不改变输出电平
1:相应端口输出低电平
PB 端口输出翻转寄存器(GPIO_PBDATABRR)
偏移地址:90H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
DATABRR
-
bit31-14
DATABRR
bit13-0
-
-
W
PB 输出翻转选择
0:不改变输出电平
1:相应端口输出翻转
PB 端口方向控制寄存器(GPIO_PBDIR)
偏移地址:94H
复位值:11111111_11111111_11111111_11111111B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
DIR
-
DIR
bit31-14
bit13-0
V1.0
版权所有©上海东软载波微电子有限公司
-
R/W
-
PB 端口方向控制位
0:输出
1:输入(若 GPIO_PBINEB 对应位为 0,则可作为
数字输入端口使用。若需使能模拟通道功能,
105/309
http://www.essemi.com
HR8P506_Datasheet_C
GPIO_PBINEB 和 GPIO_PBDIR 的对应位都应设置
为 1,关闭数字输入和输出功能)
PB 端口方向置位寄存器(GPIO_PBDIRBSR)
偏移地址:98H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
DIRBSR
-
bit31-14
DIRBSR
bit13-0
-
-
W
PB 端口方向置位选择
0:不改变 GPIO_PBDIR 的值
1:对应的 GPIO_PBDIR 位设置为 1
PB 端口方向清零寄存器(GPIO_PBDIRBCR)
偏移地址:9CH
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
DIRBCR
-
bit31-14
DIRBCR
bit13-0
-
-
W
PB 端口方向清零选择
0:不改变 GPIO_PBDIR 的值
1:对应的 GPIO_PBDIR 位设置为 0
PB 端口方向翻转寄存器(GPIO_PBDIRBRR)
偏移地址:A0H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
DIRBRR
-
bit31-14
-
-
DIRBRR
bit13-0
W
PB 端口方向翻转选择
0:不改变 GPIO_PBDIR 的值
V1.0
版权所有©上海东软载波微电子有限公司
106/309
http://www.essemi.com
HR8P506_Datasheet_C
1:对应的 GPIO_PBDIR 位值翻转
PB[7:0]端口复用选择寄存器(GPIO_PBFUNC0)
偏移地址:A4H
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
29
28
27
14
保留
13
12
PB3
—
26
保留
PB7
11
25
24
23
10
保留
bit31-30
9
8
PB2
—
PB7
bit29-28
R/W
—
bit27-26
—
PB6
bit25-24
R/W
—
bit23-22
—
PB5
bit21-20
R/W
—
bit19-18
—
PB4
bit17-16
R/W
—
bit15-14
—
PB3
bit13-12
R/W
—
bit11-10
—
PB2
bit9-8
R/W
—
bit7-6
—
PB1
bit5-4
R/W
—
bit3-2
—
PB0
bit1-0
R/W
22
保留
PB6
7
20
19
5
4
PB
18
保留
PB5
6
保留
21
3
16
PB4
2
保留
17
1
0
PB0
—
PB7 复用选择位
00:FUN0
01:FUN1
10:FUN2
11:FUN3
—
PB6 复用选择位
00~11:FUN0~FUN3
—
PB5 复用选择位
00~11:FUN0~FUN3
—
PB4 复用选择位
00~11:FUN0~FUN3
—
PB3 复用选择位
00~11:FUN0~FUN3
—
PB2 复用选择位
00~11:FUN0~FUN3
—
PB1 复用选择位
00~11:FUN0~FUN3
—
PB0 复用选择位
00~11:FUN0~FUN3
PB[15:8]端口复用选择寄存器(GPIO_PBFUNC1)
偏移地址:A8H
V1.0
版权所有©上海东软载波微电子有限公司
107/309
http://www.essemi.com
HR8P506_Datasheet_C
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
保留
15
14
13
保留
12
10
9
保留
—
20
19
8
7
—
bit31-22
6
保留
PB10
5
4
18
保留
PB13
11
PB11
21
3
16
PB12
2
保留
PB9
17
1
0
PB8
—
PB13
bit21-20
R/W
—
bit19-18
—
PB12
bit17-16
R/W
—
bit15-14
—
PB11
bit13-12
R/W
—
bit11-10
—
PB10
bit9-8
R/W
—
bit7-6
—
PB9
bit5-4
R/W
—
bit3-2
—
PB8
bit1-0
R/W
PB13 复用选择位
00:FUN0
01:FUN1
10:FUN2
11:FUN3
—
PB12 复用选择位
00~11:FUN0~FUN3
—
PB11 复用选择位
00~11:FUN0~FUN3
—
PB10 复用选择位
00~11:FUN0~FUN3
—
PB9 复用选择位
00~11:FUN0~FUN3
—
PB8 复用选择位
00~11:FUN0~FUN3
注: GPIO_PBFUNCx 仅用于端口的数字输入输出功能选择。使用 PB 端口的模拟功能时,需要设置 GPIO_PBDIR
和 GPIO_PBINEB 寄存器的对应位为 1,关闭端口的数字输入和输出功能。
PB 端口输入控制寄存器(GPIO_PBINEB)
偏移地址:B4H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
INEB
-
bit31-14
V1.0
版权所有©上海东软载波微电子有限公司
-
-
108/309
http://www.essemi.com
HR8P506_Datasheet_C
INEB
bit13-0
R/W
端口数字输入功能使能位
0:使能
1:禁止
PB 端口开漏控制寄存器(GPIO_PBODE)
偏移地址:B8H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
ODE
-
-
bit31-14
ODE
bit13-0
R/W
-
端口输出开漏使能位
0:禁止,端口为推挽输出
1:使能,端口为开漏输出
PB 端口弱上拉使能寄存器(GPIO_PBPUE)
偏移地址:BCH
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
PUEN
-
-
bit31-14
PUEN
bit13-0
R/W
-
端口弱上拉使能位
0:禁止
1:使能
注 1:当 MRSTN 管脚用作外部复位管脚时,芯片内部固定集成了约 45K 欧姆的弱上拉电阻,不受端口弱上拉使能
寄存器的控制。
PB 端口弱下拉使能寄存器(GPIO_PBPDE)
偏移地址:C0H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
V1.0
版权所有©上海东软载波微电子有限公司
9
8
109/309
http://www.essemi.com
HR8P506_Datasheet_C
保留
PDEN
-
-
bit31-14
PDEN
bit13-0
R/W
-
端口弱下拉使能位
0:禁止
1:使能
PB 端口驱动电流控制寄存器(GPIO_PBDS)
偏移地址:C4H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
DS
-
-
bit31-14
DS
bit13-0
R/W
-
端口输出驱动能力选择位
0:普通电流驱动
1:强电流驱动
PINT 中断使能寄存器(GPIO_PINTIE)
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
PMASK
—
PMASK
PINTIE
bit31-16
bit15-8
bit7-0
PINTIE
—
—
R/W
PINTx 中断源屏蔽控制位
0:不屏蔽
1:屏蔽
R/W
PINTx 使能位
0:禁止
1:使能
PINT 中断标志寄存器(GPIO_PINTIF)
偏移地址:04H
V1.0
版权所有©上海东软载波微电子有限公司
110/309
http://www.essemi.com
HR8P506_Datasheet_C
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
7
6
5
20
19
18
17
16
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
-
PINTIF
-
bit 31-8
PINTIF
bit7-0
R/W
-
GPIO 外部中断标志位
0:无中断
1:有中断
软件写 1 清除中断标志位,写 0 无效
注:对 GPIO_PINTIF 寄存器中的各中断标志位,写 0 无效,写 1 才能清除标志位;读操作时,读取的值为 1 表示
有中断发生。
PINT0~7 中断源选择寄存器(GPIO_PINTSEL)
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
保留
29
28
14
13
PINT3
—
27
26
保留
PINT7
12
11
保留
25
24
10
9
PINT2
bit31
23
8
7
—
bit30-28
R/W
—
bit27
—
PINT6
bit26-24
R/W
—
bit23
—
PINT5
bit22-20
R/W
—
bit19
—
PINT4
bit18-16
R/W
—
bit15
—
PINT3
bit14-12
R/W
21
20
6
5
PINT1
19
18
保留
PINT5
保留
PINT7
V1.0
版权所有©上海东软载波微电子有限公司
22
保留
PINT6
4
3
2
保留
17
16
PINT4
1
0
PINT0
—
PINT7 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
PINT6 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
PINT5 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
PINT4 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
PINT3 输入选择位
111/309
http://www.essemi.com
HR8P506_Datasheet_C
000~101:SEL0~SEL5
其余:
SEL0
—
—
bit11
PINT2
bit10-8
R/W
—
bit7
—
PINT1
bit6-4
R/W
—
bit3
—
PINT0
bit2-0
R/W
—
PINT2 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
PINT1 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
PINT0 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
PINT 中断配置寄存器(GPIO_PINTCFG)
偏移地址:0CH
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
保留
29
28
14
13
PINT3
27
26
保留
PINT7
12
11
保留
25
24
10
9
PINT2
23
8
7
保留
—
bit31
—
PINT7
bit30-28
R/W
—
bit27
—
PINT6
bit26-24
R/W
—
bit23
—
PINT5
bit22-20
R/W
—
bit19
—
PINT4
bit18-16
R/W
—
bit15
—
PINT3
bit14-12
R/W
—
bit11
—
PINT2
bit10-8
R/W
V1.0
版权所有©上海东软载波微电子有限公司
22
保留
PINT6
21
20
6
5
19
18
保留
PINT5
4
PINT1
3
17
2
保留
16
PINT4
1
0
PINT0
—
PINT7 配置位
参见 GPIO_PINTCFG 详情
—
PINT6 配置位
参见 GPIO_PINTCFG 详情
—
PINT5 配置位
参见 GPIO_PINTCFG 详情
—
PINT4 配置位
参见 GPIO_PINTCFG 详情
—
PINT3 配置位
参见 GPIO_PINTCFG 详情
—
PINT2 配置位
112/309
http://www.essemi.com
HR8P506_Datasheet_C
参见 GPIO_PINTCFG 详情
—
bit7
—
PINT1
bit6-4
R/W
—
bit3
—
PINT0
bit2-0
R/W
寄存器名称
—
PINT1 配置位
参见 GPIO_PINTCFG 详情
—
PINT0 配置位
参见 GPIO_PINTCFG 详情
GPIO_PINTCFG 详情
PINTCFG
bit 2-0
R/W
GPIO_PINTCFG 配置位
000:上升沿触发中断
001:下降沿触发中断
010:高电平触发中断
011:低电平触发中断
1xx:上升沿和下降沿均触发中断
KINT 中断使能寄存器(GPIO_KINTIE)
偏移地址:10H
复位值:00000000_00000000_11111111_00000000B
31
30
29
28
27
26
25
24
23
22
21
7
6
5
20
19
18
17
16
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
KMASK
—
KINTIE
—
bit31-16
KMASK
bit15-8
KINTIE
bit7-0
—
R/W
KINx 按键输入屏蔽控制位
0:不屏蔽
1:屏蔽
R/W
KINTx 中断使能位
0:禁止
1:使能
KINT 中断标志寄存器(GPIO_KINTIF)
偏移地址:14H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
V1.0
版权所有©上海东软载波微电子有限公司
9
8
113/309
http://www.essemi.com
HR8P506_Datasheet_C
保留
-
KINTIF
-
bit 31-8
KINTIF
bit7-0
R/W
-
GPIO 按键中断标志位
0:无中断
1:有中断
软件写 1 清除中断标志位,写 0 无效
注:对 GPIO_KINTIF 寄存器中的各中断标志位,写 0 无效,写 1 才能清除标志位;读操作时,读取的值为 1 表示
有中断发生。
KINT0~7 中断源选择寄存器(GPIO_KINTSEL)
偏移地址:18H
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
保留
29
28
13
KINT3
—
26
保留
KINT7
14
27
12
11
保留
25
24
9
KINT2
bit31
8
7
—
bit30-28
R/W
—
bit27
—
KINT6
bit26-24
R/W
—
bit23
—
KINT5
bit22-20
R/W
—
bit19
—
KINT4
bit18-16
R/W
—
bit15
—
KINT3
bit14-12
R/W
—
bit11
—
KINT2
bit10-8
R/W
21
20
6
5
KINT1
19
18
保留
KINT5
保留
KINT7
V1.0
版权所有©上海东软载波微电子有限公司
22
保留
KINT6
10
23
4
3
16
KINT4
2
保留
17
1
0
KINT0
—
KINT7 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
KINT6 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
KINT5 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
KINT4 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
KINT3 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
KINT2 输入选择位
114/309
http://www.essemi.com
HR8P506_Datasheet_C
000~101:SEL0~SEL5
其余:
SEL0
—
—
bit7
KINT1
bit6-4
R/W
—
bit3
—
KINT0
bit2-0
R/W
—
KINT1 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
KINT0 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
KINT 中断配置寄存器(GPIO_KINTCFG)
偏移地址:1CH
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
保留
29
28
14
13
KINT3
27
26
保留
KINT7
12
11
保留
25
24
10
9
KINT2
23
8
7
保留
—
bit31
—
KINT7
bit30-28
R/W
—
bit27
—
KINT6
bit26-24
R/W
—
bit23
—
KINT5
bit22-20
R/W
—
bit19
—
KINT4
bit18-16
R/W
—
bit15
—
KINT3
bit14-12
R/W
—
bit11
—
KINT2
bit10-8
R/W
—
bit7
—
KINT1
bit6-4
R/W
V1.0
版权所有©上海东软载波微电子有限公司
22
保留
KINT6
21
20
6
5
KINT1
19
18
保留
KINT5
4
3
17
2
保留
16
KINT4
1
0
KINT0
—
KINT7 配置位
参见 GPIO_KINTCFG 详情
—
KINT6 配置位
参见 GPIO_KINTCFG 详情
—
KINT5 配置位
参见 GPIO_KINTCFG 详情
—
KINT4 配置位
参见 GPIO_KINTCFG 详情
—
KINT3 配置位
参见 GPIO_KINTCFG 详情
—
KINT2 配置位
参见 GPIO_KINTCFG 详情
—
KINT1 配置位
参见 GPIO_KINTCFG 详情
115/309
http://www.essemi.com
HR8P506_Datasheet_C
—
bit3
—
KINT0
bit2-0
R/W
寄存器名称
—
KINT0 配置位
参见 GPIO_KINTCFG 详情
GPIO_KINTCFG 详情
GPIO_KINTCFG
bit 2-0
R/W
GPIO_KINTCFG 配置位
000:上升沿触发中断
001:下降沿触发中断
010:高电平触发中断
011:低电平触发中断
1xx:上升沿和下降沿均触发中断
端口中断 20ns 滤波器分配控制寄存器(GPIO_IOINTFLTS)
偏移地址:30H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
7
6
5
20
19
18
17
16
4
3
2
1
0
18
17
16
2
1
0
保留
15
14
13
12
11
10
9
8
保留
-
FLT_S
-
bit31-8
FLT_S
bit7-0
R/W
-
端口中断 20ns 滤波器分配控制位
0:用于 PINT 中断信号源的滤波
1:用于 KINT 中断信号源的滤波
TMR 输入端口 20ns 滤波器分配控制寄存器(GPIO_TMRFLTSEL)
偏移地址:40H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
6
5
4
3
保留
15
14
13
FLT3_SEL
-
FLT3_SEL
12
11
10
9
8
FLT2_SEL
bit31-16
bit15-12
V1.0
版权所有©上海东软载波微电子有限公司
-
R/W
7
FLT1_SEL
FLT0_SEL
-
TMR FLT3 滤波器控制位
4’h0:T16N0_0 使用 TMR_FLT3
4’h1:T16N0_1 使用 TMR_FLT3
4’h2:T16N1_0 使用 TMR_FLT3
4’h3:T16N1_1 使用 TMR_FLT3
4’h4:T16N2_0 使用 TMR_FLT3
116/309
http://www.essemi.com
HR8P506_Datasheet_C
4’h5:T16N2_1 使用 TMR_FLT3
4’h6:T16N3_0 使用 TMR_FLT3
4’h7:T16N3_1 使用 TMR_FLT3
4’h8:T32N0_0 使用 TMR_FLT3
4’h9:T32N0_1 使用 TMR_FLT3
其它:预留
FLT2_SEL
FLT1_SEL
FLT0_SEL
bit11-8
bit7-4
bit3-0
V1.0
版权所有©上海东软载波微电子有限公司
R/W
TMR FLT2 滤波器控制位
4’h0:T16N0_0 使用 TMR_FLT2
4’h1:T16N0_1 使用 TMR_FLT2
4’h2:T16N1_0 使用 TMR_FLT2
4’h3:T16N1_1 使用 TMR_FLT2
4’h4:T16N2_0 使用 TMR_FLT2
4’h5:T16N2_1 使用 TMR_FLT2
4’h6:T16N3_0 使用 TMR_FLT2
4’h7:T16N3_1 使用 TMR_FLT2
4’h8:T32N0_0 使用 TMR_FLT2
4’h9:T32N0_1 使用 TMR_FLT2
其它:预留
R/W
TMR FLT1 滤波器控制位
4’h0:T16N0_0 使用 TMR_FLT1
4’h1:T16N0_1 使用 TMR_FLT1
4’h2:T16N1_0 使用 TMR_FLT1
4’h3:T16N1_1 使用 TMR_FLT1
4’h4:T16N2_0 使用 TMR_FLT1
4’h5:T16N2_1 使用 TMR_FLT1
4’h6:T16N3_0 使用 TMR_FLT1
4’h7:T16N3_1 使用 TMR_FLT1
4’h8:T32N0_0 使用 TMR_FLT1
4’h9:T32N0_1 使用 TMR_FLT1
其它:预留
R/W
TMR FLT0 滤波器控制位
4’h0:T16N0_0 使用 TMR_FLT0
4’h1:T16N0_1 使用 TMR_FLT0
4’h2:T16N1_0 使用 TMR_FLT0
4’h3:T16N1_1 使用 TMR_FLT0
4’h4:T16N2_0 使用 TMR_FLT0
4’h5:T16N2_1 使用 TMR_FLT0
4’h6:T16N3_0 使用 TMR_FLT0
4’h7:T16N3_1 使用 TMR_FLT0
4’h8:T32N0_0 使用 TMR_FLT0
4’h9:T32N0_1 使用 TMR_FLT0
其它:预留
117/309
http://www.essemi.com
HR8P506_Datasheet_C
SPI 输入端口 20ns 滤波器分配控制寄存器(GPIO_SPIFLTSEL)
偏移地址:44H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
7
6
5
4
3
18
17
16
2
1
0
保留
15
14
13
12
11
10
9
8
保留
-
-
bit31-4
FLT_SEL
FLT_SEL
bit3-0
R/W
-
SPI FLT 滤波器控制位
1:SPI1 使用该滤波器
0:SPI0 使用该滤波器
脉宽调制寄存器(GPIO_TXPWM)
偏移地址:80H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
1
16
保留
15
14
13
12
11
10
7
6
5
4
3
2
TX1
TX1
TX1
TX1
保
TX1
TX1PS<
TX0
TX0
TX0
TX0_
保留
TX0PL
_S3
_S2
_S1
_S0
留
PLV
1:0>
_S3
_S2
_S1
S0
-
9
bit31-16
8
-
0
TX0PS
V
-
TX1_S3
bit15
R/W
TXPWM1 调制输出使能端(仅在 TXPWM0_S3=0 时
有效)
0:BUZ 管脚正常输出
1:BUZ 管脚为 TXPWM1 输出
TX1_S2
bit14
R/W
TXPWM1 调制输出使能端
0:T16N1OUT1 管脚正常输出
1:T16N1OUT1 管脚为 TXPWM1 输出
TX1_S1
bit13
R/W
TXPWM1 调制输出使能端
0:T16N1OUT0 管脚正常输出
1:T16N1OUT0 管脚为 TXPWM1 输出
TXPWM1 调制输出使能端
0:E0TX0 管脚正常输出
1:E0TX0 管脚为 TXPWM1 输出
TX1_S0
bit12
R/W
-
bit11
-
TX1PLV
bit10
V1.0
版权所有©上海东软载波微电子有限公司
R/W
-
TXPWM1 调制电平选择位
0:低电平调制(E0TX0 与 TX1PS 所选取的脉冲信
号进行硬件或操作)
1:高电平调制(E0TX0 与 TX1PS 所选取的脉冲信
118/309
http://www.essemi.com
HR8P506_Datasheet_C
号进行硬件与操作)
TX1PS
bit9-8
R/W
TXPWM1 调制 PWM 脉冲选择位
00:调制禁止
01:与 T16N1OUT0 进行调制
10:与 T16N1OUT1 进行调制
11:与 BUZ 进行调制
TX0_S3
bit7
R/W
TXPWM0 调制输出使能端
0:BUZ 管脚正常输出
1:BUZ 管脚为 TXPWM0 输出
R/W
TXPWM0 调制输出使能端
0:T16N0OUT1 管脚正常输出
1:T16N0OUT1 管脚为 TXPWM0 输出
R/W
TXPWM0 调制输出使能端
0:T16N0OUT0 管脚正常输出
1:T16N0OUT0 管脚为 TXPWM0 输出
TXPWM0 调制输出使能端
0:TXD0 管脚正常输出
1:TXD0 管脚为 TXPWM0 输出
TX0_S2
bit6
TX0_S1
bit5
TX0_S0
bit4
R/W
-
bit3
-
TX0PLV
bit2
TX0PS
bit1-0
-
R/W
TXPWM0 调制电平选择位
0:低电平调制(TXD0 与 TX0PS 所选取的脉冲信号
进行硬件或操作)
1:高电平调制(TXD0 与 TX0PS 所选取的脉冲信号
进行硬件与操作)
R/W
TXPWM0 调制 PWM 脉冲选择位
00:调制禁止
01:与 T16N0OUT0 进行调制
10:与 T16N0OUT1 进行调制
11:与 BUZ 进行调制
BUZ 控制寄存器(GPIO_BUZC)
偏移地址:84H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
保留
15
14
22
21
20
19
18
17
4
3
2
1
16
BUZ_LOAD
13
12
11
10
9
8
-
BUZ_LOAD
bit31-28
bit27-8
V1.0
版权所有©上海东软载波微电子有限公司
7
6
5
保留
BUZ_LOAD
-
R/W
0
BUZEN
-
BUZ 计数装载值寄存器
BUZ 信号频率的计算公式为:
FPCLK/ (2*(BUZ_LOAD+1))
119/309
http://www.essemi.com
HR8P506_Datasheet_C
-
BUZEN
bit7-1
bit0
V1.0
版权所有©上海东软载波微电子有限公司
-
R/W
-
BUZ 使能位
0:禁止
1:使能
120/309
http://www.essemi.com
HR8P506_Datasheet_C
第 5 章 外设
5. 1 定时器/计数器
5. 1. 1
16 位定时器/计数器T16N(T16N0/ T16N1/ T16N2/ T16N3)
5. 1. 1. 1
1 个 8 位可配置预分频器,分频时钟作为 T16N_CNT0/1 的定时/计数时钟
预分频时钟源可选:PCLK 或 T16NxCKy
预分频计数器可由 T16N_PRECNT 寄存器设定计数初值
分频比由寄存器 T16N_PREMAT 设定
2 个 16 位可配置定时/计数寄存器 T16N_CNT0/1
T16N_CNT1 仅在独立调制工作模式或 T16N_CNT1 峰值触发 ADC 转换被使
能时可用
2 个 16 位峰值寄存器 T16N_TOP0/1
T16N_CNT0/1 计数值达到峰值时被清零
在调制工作模式下,若使能 ADC 触发功能,T16N_CNT0/1 计数值达到峰值时
可分别产生 ADC 转换触发信号
支持定时/计数工作模式
概述
支持 4 组 16 位计数匹配寄存器 T16N_MATy,计数匹配后支持下列操作:
产生中断
支持 T16N_CNT0 计数寄存器三种操作:保持,清 0 或继续计数
支持 T16NxOUTy 端口四种操作:保持,清 0,置 1 或取反
支持输入捕捉工作模式
捕捉边沿可配置
捕捉次数可配置
支持调制工作模式
通过对匹配寄存器进行配置,同时设置匹配后端口输出特性,可得到相应的
PWM 输出
支持调制过程触发 ADC 转换
匹配 0、匹配 1、匹配 2、匹配 3 及峰值 0 与 T16N_CNT0 计数值匹配触发
峰值 1 与 T16N_CNT1 计数值匹配触发
两路 PWM 可配置为独立/同步/互补等三种模式
独立模式,T16NxOUTy 输出不同的 PWM 波形
同步模式,T16NxOUTy 输出相同 PWM 波形
互补模式,T16NxOUTy 输出互补 PWM 波形
互补模式下死区时间宽度可配置
V1.0
版权所有©上海东软载波微电子有限公司
121/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 1. 1. 2
PCLK
T16NxCKy
T16NxINy
支持刹车控制
可通过 GPIO_PAFUNCx 寄存器来选取 PA2(T16N_BK0)
,PA3
(T16N_BK1)
,PA26(T16N_BK2)或 PA27(T16N_BK3),其中任意
一个作为外部刹车信号,有效刹车极性可配置
刹车输出电平可配置
结构框图
M
U
X
T16N_MATy
ADC
T16N_TOPy
数值比较器
T16NxOUTy
T16N_PREMAT
T16N_CNTy
捕捉选择
T16N_MATy
图 5-1 T16N 电路结构框图
5. 1. 1. 3
T16N定时/计数功能
设置 T16N_CON0 寄存器的 MOD=00 或 01,使 T16N 工作在定时/计数模式。
设置 T16N_CON0 寄存器的 EN=1,使能 T16N,计数值寄存器 T16N_CNTy 从预设值开
始累加计数。
设置 T16N_CON0 寄存器的 CS,选择计数时钟源。时钟源为内部时钟 PCLK 时,为定时
模式;时钟源为外部时钟 T16NxCKy 端口输入时,为计数模式。
设置 T16N_CON0 寄存器的 SYNC,选择外部时钟 T16NxCKy 是否被内部时钟 PCLK 同
步。当选择外部时钟被同步时,为同步计数模式,否则为异步计数模式。同步计数模式时,
T16NxCKy 端口输入的高/低电平脉宽均必须大于 2 个 PCLK 时钟周期。
设置 T16N_CON0 寄存器的 EDGE,选择外部时钟计数方式:上升沿计数,下降沿计数,
或上升/下降沿均计数,其中上升/下降沿均计数只适用于同步计数模式。
设置 T16N_CON0 寄存器的 MATyS,选择计数匹配后 T16N_CNTy 计数值寄存器的工作
状态。
MATyS=00:当 T16N_CNTy 计数值匹配 T16N_MATy 时,继续累加计数,不产生中
断,当计数到 0xFFFF 后,下一次累加计数溢出,T16N_CNTy 的值为 0x0000,并产生中
断,重新开始累加计数。
MATyS=01:当 T16N_CNTy 计数值匹配 T16N_MATy 时,计数值将保持,即在下一
个计数时钟(经过预分频之后的时钟)到来时,T16N_CNTy 不再累加计数,只产生中断。
MATyS=10:当 T16N_CNTy 计数值匹配 T16N_MATy 时,计数值在下一个计数时钟
V1.0
版权所有©上海东软载波微电子有限公司
122/309
http://www.essemi.com
HR8P506_Datasheet_C
(经过预分频之后的时钟)到来时被清 0,并产生中断,重新开始累加计数。
MATyS=11:当 T16N_CNTy 计数值匹配 T16N_MATy 时,继续累加计数,并在下一
个计数时钟(经过预分频之后的时钟)到来时,产生中断,当计数到 0xFFFFH,下一次累
加计数溢出,T16N_CNTy 的值为 0x0000,并产生中断,重新开始累加计数。
对设置的多个不同匹配值 T16N_MATy,当计数值匹配到每一个匹配值时,会产生相应的
中断。由于中断产生后,T16N 继续累加计数,若未及时读取匹配中断标志位,则有可能
后续的匹配中断也已产生,从而会同时读到多个有效的匹配中断标志。
如果 T16N_CNT0 的计数值匹配 T16N_MAT0/1/2/3,当 T16N_CON1 寄存器的 MOE0=1
时,T16NxOUT0 端口输出翻转;当 MOE1=1 时,T16NxOUT1 端口输出翻转。可选择
T16NxOUT0/1 端口同时输出。
举例说明:T16N_CNTy 计数值匹配 T16N_MATy 后的工作方式。
T16N_MAT0=0x0002,T16N_CON0 寄存器的 MAT0S=00,继续计数,不产
生中断
T16N_MAT1=0x0004,T16N_CON0 寄存器的 MAT1S=11,继续计数,产生
中断;
T16N_MAT2=0x0006,T16N_CON0 寄存器的 MAT2S=10,清 0,产生中断,
重新计数。
预分频设置为 1:1,采用内部 PCLK 时钟源。计数匹配功能示意图如下所示:
MAT1IF
MAT2IF
PCLK
T16N_CNTy 0x0000
0x0001
0x0002
0x0003
0x0004
0x0005
0x0006
0x0000
0x0001
图 5-2 T16N 计数匹配功能示意图
5. 1. 1. 4
T16N输入捕捉功能
设置 T16N_CON0 寄存器的 MOD=10,使 T16N 工作在捕捉模式。在捕捉模式下
T16N_CNT1 不可使用。
在捕捉工作模式下,需设置 T16N_CON0 寄存器的 CS=00,使 T16N_CNT0 采用内
部 PCLK 时钟源计数;并且设置 T16N_CON0 寄存器的 MATyS=00,计数匹配不影
响 T16N_CNT0 的工作。
在捕捉工作模式下,对端口 T16NxIN0 和 T16NxIN1 的状态进行检测。
当 T16NxIN0 端口的状态变化符合所设定的捕捉事件时,将 T16N_CNT0 和
T16N_PRECNT 的当前值分别装载到 T16N_MAT0 和 T16N_MAT2 寄存器中,产生 T16N
的 CAP0IF 中断。通过使能 T16N_CON1 寄存器的 CAPL0,可在 CAP0IF 中断时将
T16N_CNT0 和 T16N_PRECNT 清零;若 CAPL0 为零,则计数器继续累加。
当 T16NxIN1 端口的状态变化符合所设定的捕捉事件时,将 T16N_CNT0 和
V1.0
版权所有©上海东软载波微电子有限公司
123/309
http://www.essemi.com
HR8P506_Datasheet_C
T16N_PRECNT 的当前值分别装载到 T16N_MAT1 和 T16N_MAT3 寄存器中,产生 T16N
的 CAP1IF 中断。通过使能 T16N_CON1 寄存器的 CAPL1,可在 CAP1IF 中断时将
T16N_CNT0 和 T16N_PRECNT 清零;若 CAPL1 为零,则计数器继续累加。
当 T16N_CNT0 计数直到溢出时,仍未检测到设定的捕捉事件,T16N_CNT0 的值被清零,
并重新开始累加计数。
设置 T16N_CON1 寄存器的 CAPPE 和 CAPNE,可选择 T16NxIN0 和 T16NxIN1 端口信
号的捕捉事件。
选择捕捉上升沿:只设置 CAPPE 为 1;
选择捕捉下将沿:只设置 CAPNE 为 1;
选择捕捉上升沿/下降沿:设置 CAPPE 为 1,TCAPNE 为 1。
设置 TT16N_CON1 寄存器的 CAPIS0,选择 T16NxIN0 是否作为捕捉输入端口;设置
CAPIS1,选择 T16NxIN1 是否作为捕捉输入端口;可同时选择两个端口作为捕捉输入端
口。
设置 T16N_CON1 寄存器的 CAPT,可选择捕捉事件发生的次数。
举例说明:捕捉 T16NxIN0 端口上升沿/下降沿,捕捉 8 次;预分频设置为 1:1。
T16N_CON0 寄存器的 MOD=10,CS=00,MAT0S=00,
T16N_CON1 寄存器的 CAPPE=1,CAPNE=1,CAPIS=1, CAPT=0111。
CAP0IF
CAP0IF
T16NxIN0
PCLK
0x0000
0x0000
0x0000
T16N_CNT0
T16N_MAT0
0x0000
0x0000
Load Event
0x0000
Load Event
0x0000
T16N_PRECNT
T16N_MAT2
0x0000
Load Event
Load Event
图 5-3 T16N 捕捉功能示意图
在捕捉工作模式下,修改 T16N 预分频器计数匹配寄存器 T16N_PREMAT 时,预分频器
计数不会被清零。因此,首次捕捉可以从一个非零预分频器计数开始。当捕捉事件匹配发
生时,产生的中断标志位必须通过软件清除,并及时读取捕捉到的 T16N_MATy 寄存器的
值,在下一次捕捉事件发生时,T16N_MATy 寄存器会装载为新的计数值。
V1.0
版权所有©上海东软载波微电子有限公司
124/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 1. 1. 5
T16N输出调制功能
设置 T16N_CON0 寄存器的 MOD=11,使 T16N 工作在调制模式。
在调制工作模式下,需设置 T16N_CON0 寄存器的 CS=00,使 T16N_CNT 采用内
部 PCLK 时钟源计数。
设置 T16N_CON1 寄存器的 MOE0,选择 T16NxOUT0 是否使能为匹配输出端口,使能时
启用 T16N_MAT0/1 匹配寄存器和 T16N_CNT0 进行匹配;设置 T16N_CON1 寄存器的
MOE1,选择 T16NxOUT1 是否使能为匹配输出端口,使能时启用 T16N_MAT2/3 匹配寄
存器和 T16N_CNT0 或 T16N_CNT1(PWM 独立工作模式)进行匹配。
设置 T16N_CON2 寄存器的 MOMy,选择计数匹配发生时,对 T16NxOUT0/1 端口的影响:
保持,清 0,置 1,取反。
设置 T16N_CON2 寄存器的 PWMMOD寄存器,两路 PWM 可配置为独立/同步/互补
等三种模式:
独立模式,T16NxOUTy 输出不同的 PWM 波形。其中 T16N_CNT0 匹配 T16N_MAT0/1,
控制 T16NxOUT0 输出;而 T16N_CNT1 匹配 T16N_MAT2/3,控制 T16NxOUT1 输出。
同步模式,T16NxOUTy 输出相同 PWM 波形。T16N_CNT0 匹配 T16N_MAT0/1,控制
T16NxOUT0/1 输出。无需设置 T16N_CNT1。
互补模式,T16NxOUTy 输出为互补 PWM 波形。互补模式下死区时间宽度可配置。互补
模式下 T16N_CNT0 匹配 T16N_MAT0/1,控制 T16NxOUT0/1 输出;PWM 周期由
T16N_TOP0 设定,为 T16N _TOP0+1。无需设置 T16N_CNT1。
调制工作模式下支持匹配 0、匹配 1、匹配 2、匹配 3、峰值 0 及峰值 1 触发 ADC:
匹配 0、匹配 1、匹配 2、匹配 3、峰值 0 与 T16N_CNT0 计数值匹配,匹配时产生 ADC
触发信号;
峰值 1 与 T16N_CNT1 计数值匹配,匹配时产生 ADC 触发信号。
举例说明:
1)独立模式,在 T16NxOUT0 和 T16NxOUT1 端口,产生双边 PWM 波形。
T16N_CON2 寄存器中:
MOE0=1,MOE1=1;T16NxOUT0 和 T16NxOUT1 匹配输出端口使能;
MOM0=10;T16N_MAT0 匹配,T16NxOUT0 输出高电平;
MOM1=01;T16N_MAT1 匹配,T16NxOUT0 输出低电平;
MOM2=10;T16N_MAT2 匹配,T16NxOUT1 输出高电平;
MOM3=01;T16N_MAT3 匹配,T16NxOUT1 输出低电平;
PWMMOD=00;独立模式
T16N_CON0 寄存器中:
MOD=11;T16N 设置为调制输出 MAT0S=11;T16N_CNT 继续计数,并产生
中断
MAT1S=11;T16N_CNT 继续计数,并产生中断
MAT2S=11;T16N_CNT 继续计数,并产生中断
MAT3S=10;T16N_CNT 清 0,并产生中断
V1.0
版权所有©上海东软载波微电子有限公司
125/309
http://www.essemi.com
HR8P506_Datasheet_C
设置其它寄存器:
T16N_MAT0 = 0x0002;T16N_MAT1 = 0x0004;
T16N_MAT2 = 0x0006;T16N_MAT3 = 0x0008;
设置合适的 T16N_TOP0/1 值;
MAT0IF
MAT1IF
MAT3IF
MAT2IF
PCLK
T16N_CNT 0x0000
0x0001
0x0002
0x0003
0x0004
0x0005
0x0006
0x0007
0x0008
0x0009
T16NxOUT0
T16NxOUT1
图 5-4 T16N PWM 独立模式输出调制功能示意图
2)互补模式,PCLK=48MHz,在 T16NxOUT0 和 T16NxOUT1 端口,产生 24MHz 互补
PWM 波形。
T16N_CON2 寄存器中:
MOE0=1,MOE1=1,即 T16NxOUT0 和 T16NxOUT1 匹配输出端口使能;
MOM0=10,即 T16N_MAT0 匹配,T16NxOUT0 输出高电平,T16NxOUT1 输出低
电平;
MOM1=01,即 T16N_MAT1 匹配,T16NxOUT0 输出低电平,T16NxOUT1 输出高
电平;
PWMMOD=11,即互补 PWM 模式;PWMDZE=0,禁止死区时间
T16N_CON0 寄存器中:
MOD=11;T16N 设置为调制输出 MAT0S=11;T16N_CNT 继续计数,并产生
中断
MAT1S=11;T16N_CNT 继续计数,并产生中断
设置其它寄存器:
T16N_MAT0 = 0x0000;T16N_MAT1 = 0x0001;T16N_TOP0=0x0001;
T16N_PREMAT=0,即不预分频
V1.0
版权所有©上海东软载波微电子有限公司
126/309
http://www.essemi.com
HR8P506_Datasheet_C
PCLK
T16N_CNT
0x0001
0x0000
0x0000
0x0001
0x0000
0x0001
0x0001
0x0000
0x0000
0x0001
T16NxOUT0
T16NxOUT1
图 5-5 T16N 互补输出功能示意图
5. 1. 1. 6
特殊功能寄存器
T16N 计数值寄存器(T16N_CNT0)
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
CNT0
-
bit31-16
-
CNT0
bit 15-0
R/W
-
T16N_CNT0计数值
注 1:T16N_CNT0 可使用所有的 T16N 的 T16N_MATy 寄存器,但在计数器被设置为捕捉模式,即 T16N_CON0
寄存器中 MOD=0x2 时,T16N_CNT0 只能使用 T16N_MAT0/1;而 T16N_CNT1 任何情况下仅可使用
T16N_MAT2/3。
T16N 计数值寄存器(T16N_CNT1)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
CNT1
-
bit31-16
-
CNT1
bit 15-0
R/W
-
T16N_CNT1计数值
T16N 预分频器计数值寄存器(T16N_PRECNT)
V1.0
版权所有©上海东软载波微电子有限公司
127/309
http://www.essemi.com
HR8P506_Datasheet_C
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
7
6
5
20
19
18
17
16
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
PRECNT
-
bit31-8
-
PRECNT
bit7-0
R/W
-
T16N预分频器计数值
T16N 预分频器计数比例寄存器(T16N_PREMAT)
偏移地址:0CH
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
7
6
5
20
19
18
17
16
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
保留
-
PREMAT
-
bit31-8
PREMAT
bit7-0
R/W
-
预分频比例设置位
00:预分频1:1
01:预分频1:2
02:预分频1:3
……
FE:预分频1:255
FF:预分频1:256
T16N 控制寄存器 0(T16N_CON0)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
保留
15
14
MAT3S
13
12
MAT2S
11
10
MAT1S
—
bit 31~17
—
ASYWEN
bit 16
R/W
V1.0
版权所有©上海东软载波微电子有限公司
9
8
MAT0S
16
ASYWEN
7
6
MOD
5
4
EDGE
3
SYNC
2
1
CS
0
EN
—
外部时钟异步计数模式下,对计数器的写使能位
0:禁止写 T16N_CNT0 和 T16N_PRECNT,如果强制写,
有可能写操作不成功(为避免对计数器的写操作错误,不
建议用户对该位写 0)
128/309
http://www.essemi.com
HR8P506_Datasheet_C
1:使能写 T16N_CNT0 和 T16N_PRECNT
MAT3S
bit 15~14
R/W
T16N_CNT0 匹配 T16N_MAT3 后的工作模式选择位
00:T16N_CNT0 继续计数,不产生中断
01:T16N_CNT0 保持,产生中断
10:T16N_CNT0 清 0 并重新计数,产生中断
11:T16N_CNT0 继续计数,产生中断
MAT2S
bit 13~12
R/W
T16N_CNT0 匹配 T16N_MAT2 后的工作模式选择位
00:T16N_CNT0 继续计数,不产生中断
01:T16N_CNT0 保持,产生中断
10:T16N_CNT0 清 0 并重新计数,产生中断
11:T16N_CNT0 继续计数,产生中断
MAT1S
bit 11~10
R/W
T16N_CNT0 匹配 T16N_MAT1 后的工作模式选择位
00:T16N_CNT0 继续计数,不产生中断
01:T16N_CNT0 保持,产生中断
10:T16N_CNT0 清 0 并重新计数,产生中断
11:T16N_CNT0 继续计数,产生中断
MAT0S
bit 9~8
R/W
T16N_CNT0 匹配 T16N_MAT0 后的工作模式选择位
00:T16N_CNT0 继续计数,不产生中断
01:T16N_CNT0 保持,产生中断
10:T16N_CNT0 清 0 并重新计数,产生中断
11:T16N_CNT0 继续计数,产生中断
MOD
bit 7~6
R/W
工作模式选择位
00:定时/计数模式
01:定时/计数模式
10:捕捉模式
11:调制模式
EDGE
bit 5~4
R/W
外部时钟计数边沿选择位
00:上升沿计数
01:下降沿计数
10:上升沿/下降沿均计数(仅同步计数模式)
11:上升沿/下降沿均计数(仅同步计数模式)
SYNC
bit 3
R/W
外部时钟同步使能位
0:不同步外部时钟 T16NxCKy,为异步计数模式
1:通过 PCLK 对外部时钟 T16NxCKy 同步,为同步计数
模式,外部时钟的高/低电平均至少保持 2 个 PCLK 时钟
周期
CS
bit 2~1
R/W
T16N 计数时钟源选择位
00:内部时钟 PCLK
01:外部时钟 T16NxCK0
10:外部时钟 T16NxCK1
11:内部时钟 PCLK
V1.0
版权所有©上海东软载波微电子有限公司
129/309
http://www.essemi.com
HR8P506_Datasheet_C
EN
bit 0
T16N 使能位
0:禁止
1:使能
R/W
注 1:PCLK 为芯片内部外设模块时钟源,时钟频率与芯片系统时钟频率相同。
T16N 控制寄存器 1(T16N_CON1)
偏移地址:14H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
5
4
19
18
17
16
停留
15
14
13
12
停留
-
CAPL1
CAPL0
CAPT
CAPIS1
CAPIS0
CAPNE
CAPPE
11
10
9
8
CAPL1
CAPL0
bit31-10
bit9
bit8
bit7-4
bit3
bit2
bit1
bit0
V1.0
版权所有©上海东软载波微电子有限公司
7
-
6
CAPT
3
2
1
0
CAPIS1
CAPIS0
CAPNE
CAPPE
-
R/W
捕捉 1 重载计数器使能位
0:禁止
1:使能
R/W
捕捉 0 重载计数器使能位
0:禁止
1:使能
R/W
捕捉次数控制位
0:捕捉 1 次后,产生装载动作
1:捕捉 2 次后,产生装载动作
2:捕捉 3 次后,产生装载动作
……
F:捕捉 16 次后,产生装载动作
R/W
捕捉输入端口 T16NxIN1 使能位
0:禁止
1:使能
R/W
捕捉输入端口 T16NxIN0 使能位
0:禁止
1:使能
R/W
下降沿捕捉使能位
0:禁止
1:使能
R/W
上升沿捕捉使能位
0:禁止
1:使能
130/309
http://www.essemi.com
HR8P506_Datasheet_C
T16N 控制寄存器 2(T16N_CON2)
偏移地址:18H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
PWMBK
PWMB
PWMB
F
KP1
KP0
8
7
6
21
保留
15
14
13
12
11
10
MOM2
0>
9
PWMBKP1
保留
31-25
bit24
bit23
—
16
PWMBK
PWMBK
PWMBK
PWMBK
L1
L0
E1
E0
5
3
2
1
0
POL1
POL0
MOE1
MOE0
4
PWMMOD
R/W
R/W
PWM 通道 1 刹车信号极性选择位
0:高电平刹车
1:低电平刹车
PWM 通道 0 刹车信号极性选择位
0:高电平刹车
1:低电平刹车
R/W
—
bit21-20
-
bit19
bit18
—
PWM 刹车事件标志位
0:未发生刹车事件
1:发生刹车事件,PWM 端口输出刹车电平;软件
写 1 清零,清零后 PWM 端口输出恢复正常
bit22
PWMBKL0
17
ZE
PWMBKP0
PWMBKL1
18
PWMD
MOM0
PWMBKF
19
保留
MOM3 2。
3)由于不同的通讯数据格式对端口的初始电平要求是不同的(参见上面各通讯波形示意图),
因此若无法确定使能 SPI 之前的 SPI 端口的初始值,必须先配置通讯数据格式控制位,
V1.0
版权所有©上海东软载波微电子有限公司
199/309
http://www.essemi.com
HR8P506_Datasheet_C
对 SPI 端口初始电平进行自动设置;然后再通过对 SPI_CON 寄存器的 EN 和 REN 置 1
来使能 SPI 发送和接收,即对 SPI_CON 寄存器分两步写入。
V1.0
版权所有©上海东软载波微电子有限公司
200/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 5 I2C总线串口通讯控制器(I2C0)
5. 5. 1
概述
支持单主控模式
支持自动重复寻呼功能
支持自动发送“停止位”功能
支持数据应答延迟功能
支持数据帧传输间隔功能
支持软件触发“起始位”
支持软件触发“停止位”
支持软件触发数据接收,接收模式可配
支持从动模式
支持 7 位从机地址可配
支持从机地址匹配中断标志
支持接收“停止位”中断标志
支持时钟线自动下拉等待请求功能
支持自动发送“未应答”功能
支持 4 级发送缓冲器和 4 级接收缓冲器
通讯端口 SCLx 和 SDAx,均支持输出模式可配置:推挽输出或开漏输出
通讯端口 SCLx 和 SDAx 支持 16 倍速采样器可配置
支持发送和接收缓冲器空/满中断
支持起始位中断、停止位中断
支持接收数据溢出中断、发送数据写错误中断
5. 5. 2
结构框图
传输状态控制电路
16倍速采样器
SCLx
16倍速采样器
SDAx
APB_I2C
数据传输电路
通讯端口主从选择
图 5-34 I2C 电路结构框图
V1.0
版权所有©上海东软载波微电子有限公司
201/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 5. 3
I2C总线基本原理
5. 5. 3. 1
I2C通讯协议
I2C 总线通讯协议,读写操作示意图如下所示:
启动信号
启动信号
寻呼从机地址+读操作
寻呼从机地址+写操作
应答信号
应答信号
数据字节1
主
控
器
从
动
器
应答信号
主
控
器
数据字节1
应答信号
数据字节2
数据字节2
应答信号
应答信号
停止信号
停止信号
从
动
器
图 5-35 I2C 总线通讯协议示意图
I2C 通讯由主控器发起,发送启动信号 S 控制总线,发送停止信号 P 释放总线。
I2C 总线上可以同时有多个主控器(前提是每个主控器都支持多主机仲裁机制),并至少需
要一个从动器,且每一个从动器都必须有一个独立且唯一的寻呼地址。
主控器在发送启动信号后,紧接着发送寻呼从机地址和读写控制位。
读写控制位 R/ W ,用于通知从动器数据传送的方向,
“0”表示由主控器向从动器“写”数
据,“1”表示由主控器向从动器“读”数据。
I2C 通讯协议支持应答机制,即发送方每传送一个字节的数据(包括寻呼地址),接收方必
须反馈一个应答信号(ACK 或 NACK)
,发送方再根据应答信号进行下一步的操作。
如果主控器和从动器的时钟端口(SCL)都使用输出开漏设计,且主控器支持时钟线等待请
求操作,那么从动器可以在时钟线为低电平时下拉时钟线,使主控器等待从动器,直到从
动器释放时钟线。
I2C 通讯时,每个数据字节在传输时都是高位在前,低位在后。
I2C 通讯时,数据线 SDA 的数据信号电平,只在时钟线 SCL 的低电平期间变化,在 SCL
高电平期间应保持稳定。如果 SDA 电平在 SCL 高电平期间变化,则会触发起始位或停止
位,由高到低变化触发起始位,由低到高变化触发停止位。
5. 5. 3. 2
I2C数据传输格式
I2C 通讯时,根据从动器的具体设计规格,确定实际的数据传输格式。以下只介绍一种常
用的 I2C 通讯数据传输格式:
V1.0
版权所有©上海东软载波微电子有限公司
202/309
http://www.essemi.com
HR8P506_Datasheet_C
S
Slave Address
W
ACK
Memory Address
7位寻呼从动器地
址
DATA1
ACK
片内访问单元地址
ACK
... ...
DATAn
DATA0
ACK
写入数据0
ACK
(NACK)
P
主控器接收
主控器发送
写入数据1
写入数据n
图 5-36 I2C 主控器写入从动器数据示意图
S
Slave Address
W
ACK
7位寻呼从动器地址
R-S
Slave Address
ACK
片内访问单元地址
R
ACK
DATA0
ACK
读取数据0
7位寻呼从动器地址
DATA1
Memory Address
ACK
... ...
读取数据1
DATAn
NACK
P
读取数据n
主控器接收
主控器发送
图 5-37 I2C 主控器读取从动器数据示意图
5. 5. 4
I2C通讯端口配置
I2C 通讯端口 SCLx 和 SDAx,均支持推挽输出和开漏输出两种模式,配置 I2C_CON 寄存
器的 SCLOD 和 SDAOD,可分别进行选择。
推挽输出是 I/O 端口的标准输出,输出数据 0 和 1 时,I/O 端口电平也分别为 0 和 1。
对推挽输出模式,存在端口电平冲突的风险。例如:当主控器输出 0,而从动器输出 1 时,
会发生端口信号电平冲突,导致端口状态不确定。
开漏输出是 I2C 总线协议中的标准模式,可以避免端口电平冲突问题。开漏输出端口的示
意图如下所示:
V1.0
版权所有©上海东软载波微电子有限公司
203/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD
SDA数据线
SCL时钟线
SDA1_OUT
SCL1_OUT
SCL_IN
SCL2_OUT
SDA2_OUT
SDA_IN
SCL_IN
SDA_IN
主控器
从动器
图 5-38 开漏输出端口示意图
开漏输出端口的高电平由 I2C 总线的上拉电阻提供,
而低电平由主控器与从动器共同决定。
任何一方都可以将总线电平下拉到 0,但只有当双方都释放总线后,总线电平才能被上拉
到 1。
5. 5. 5
I2C时基定时器与 16 倍速采样器
通讯端口 SCLx 和 SDAx 支持 16 倍采样器,配置 I2C_CON 寄存器的 SCLSE,SDASE 可
使能两个端口的采样器。I2C 时基定时器的计数周期,作为 16 倍速采样器的采样周期。
在 I2C 主控模式下,I2C 时基定时器还用于提供通讯传输波特率。
如果需要使用 16 倍速采样器,或使用 I2C 主控模式,均必须使能 I2C 时基定时器。配置
I2C_CON 寄存器的 TJE,可使能该时基定时器,配 TJP,可设定时基定时周期。
I2C 主控模式下,总线端口信号的时序参数如下:
参数名称
参数符号
使能 16 倍速采样器
禁止 16 速倍采样器
启动/重启动位建立时间
TSU:S
> Tosc x (TJP+1) x 12
Tosc x (TJP+1) x 8
启动/重启动位保持时间
THD:S
> Tosc x (TJP+1) x 12
Tosc x (TJP+1) x 8
停止位建立时间
TSU:P
> Tosc x (TJP+1) x 12
Tosc x (TJP+1) x 8
停止位保持时间
THD:P
> Tosc x (TJP+1) x 12
Tosc x (TJP+1) x 8
数据/应答位建立时间
TSU:DA
> Tosc x (TJP+1) x 4
Tosc x (TJP+1) x 4
数据/应答位保持时间
THD:DA
> Tosc x (TJP+1) x 8
Tosc x (TJP+1) x 4
通讯时钟高电平脉宽
THIGH
Tosc x (TJP+1) x 12
Tosc x (TJP+1) x 8
通讯时钟低电平脉宽
TLOW
Tosc x (TJP+1) x 12
Tosc x (TJP+1) x 8
表 5-1 I2C 总线端口信号的时序参数列表
V1.0
版权所有©上海东软载波微电子有限公司
204/309
http://www.essemi.com
HR8P506_Datasheet_C
TSU:DA
TSU:S
THD:P
THD:DA
SDAx
TLOW
SCLx
THD:S
TSU:P
THIGH
图 5-39 I2C 总线端口信号的波形示意图
使能 16 倍速采样器后,采样器对 I2C 总线进行采样,而 I2C 总线由于上拉电阻的作用,
开始时的电平是不稳定的,当 I2C 总线电平稳定后,采样器的输出才能稳定。因此,这段
不稳定的时间将造成 I2C 传输波特率的下降,下降程度取决于总线电平上升边沿的时间。
I2C 主控模式下,传输波特率计算公式如下(Fosc 为系统时钟频率):
使能通讯端口的 16 倍速采样器时:FSCL=Fosc / ((TJP+1) x 24);
禁止通讯端口的 16 倍速采样器时:FSCL=Fosc / ((TJP+1) x 16)。
5. 5. 6
I2C通讯发送器
支持 4 级发送缓冲器 TB0,TB1,TB2,TB3 和 1 级发送移位寄存器,可进行数据的连续
发送,直到发送缓冲器和移位寄存器全空,最多可连续写入和发送 5 帧数据。发送缓冲器
TBy 为只读寄存器,只能通过发送数据寄存器 I2C_TBW 写入。
发送数据寄存器 I2C_TBW 为一个虚拟地址单元,物理上不存在实际的寄存器电路,写该
寄存器地址单元时,实际上是将发送数据写入到发送缓冲器 TBy 中,再传输到发送移位寄
存器,通过数据端口 SDAx 进行数据发送。
发送数据寄存器 I2C_TBW 支持 3 种写入方式:字节写入,半字写入和字写入。
字节方式写入 I2C_TBW 时,发送数据被写入到发送缓冲器 TB0;半字方式写入 I2C_TBW
时,发送数据被同时写入到发送缓冲器 TB0 和 TB1,其中低字节存放在 TB1 中;字方式
写入 I2C_TBW 时,发送数据被同时写入到发送缓冲器 TB0,TB1,TB2 和 TB3,其中低
字节存放在 TB3 中。
发送数据从写入到发送到端口的数据流示意图如下所示:
I2C_TBW
TB0
TB1
TB2
TB3
发送移位寄存器
SDAx端口
图 5-40 I2C 发送数据流示意图
支持发送缓冲器空中断,配置 I2C_IE 寄存器的 TBIM,可选择中断模式。
TBIM=00,为字节空产生中断,即发送缓冲器 TB0 为空时,会置起 I2C_IF 寄存器
的中断标志 TBIF;
TBIM=01,为半字空产生中断,即发送缓冲器 TB0 和 TB1 均为空时,会置起 I2C_IF
寄存器的中断标志 TBIF;
TBIM=10,为字空产生中断,即发送缓冲器 TB0,TB1,TB2 和 TB3 均为空时,会
V1.0
版权所有©上海东软载波微电子有限公司
205/309
http://www.essemi.com
HR8P506_Datasheet_C
置起 I2C_IF 寄存器的中断标志 TBIF。
支持发送数据寄存器 I2C_TBW 误写中断,当对 I2C_TBW 的写入方式,与发送缓冲器 TBy
的空闲状态冲突时,
或写入操作访问错误时,会置起 I2C_IF 寄存器误写中断标志 TBWEIF。
5. 5. 7
I2C通讯接收器
支持 4 级接收缓冲器 RB0,RB1,RB2,RB3 和 1 级接收移位寄存器,可进行数据的连续
接收,直到接收缓冲器和移位寄存器全满,最多可连续接收 5 帧数据,再执行数据读取操
作。读取接收数据寄存器 I2C_RBR,可得到接收的数据,I2C_STA 寄存器中对应的接收
缓冲器清除满标志 RBFFy;也可以读取接收缓冲器 RBy 得到接收的数据,但不会清除满
标志 RBFFy。
接收数据寄存器 I2C_RBR 为一个虚拟地址单元,物理上不存在实际的寄存器电路,读该
寄存器地址单元时,实际上是读取接收缓冲器 RBy 中的数据。
接收数据寄存器 I2C_RBR 支持 3 种读取方式:字节读取,半字读取和字读取。
字节方式读取 I2C_RBR 时,实际是读取接收缓冲器 RB0 的数据;半字方式读取 I2C_RBR
时,实际是同时读取接收缓冲器 RB0 和 RB1 的数据,其中 RB0 中的数据为低字节;字
方式读取 I2C_RBR 时,实际是同时读取接收缓冲器 RB0,RB1,RB2 和 RB3,其中 RB0
中的数据为低字节。
接收数据从数据端口到各级缓冲器的数据流示意图如下所示:
I2C_RBR
RB0
RB1
RB2
RB3
接收移位寄存器
SDAx端口
图 5-41 2C 接收数据流示意图
接收缓冲器 RBy 的数据移到下一级缓冲器后,会清除其接收满标志 RBFFy。
当 4 级接收缓冲器和 1 级接收移位寄存器均满时,会立即置起接收数据溢出中断标志
I2C_IF 寄存器中 ROIF,同时不会接收新数据。
支持接收缓冲器满中断,I2C_IE 寄存器种配置 RBIM,可选择中断模式。
RBIM=00,为字节满产生中断,即接收缓冲器 RB0 为满时,会置起 I2C_IF 寄存器
的中断标志 RBIF;
RBIM=01,为半字满产生中断,即接收缓冲器 RB0 和 RB1 均为满时,会置起 I2C_IF
寄存器的中断标 RBIF;
RBIM=10,为字满产生中断,即接收缓冲器 RB0,RB1,RB2 和 RB3 均为满时,
会置起 I2C_IF 寄存器的中断标志 RBIF。
5. 5. 8
I2C通讯控制
配置 I2C_CON 寄存器的 RST,可将 I2C 通讯模块软件复位,复位后:禁止数据通讯 EN=0;
I2C_IE 寄存器中禁止相关中断 SRIE=0,SPIE=0,TBIE=0,TBWEIE=0,RBIE=0,TEIE=0,
ROIE=0,NAIE=0;I2C_IF 寄存器中复位相关中断标志为默认值 SRIF=0,SPIF=0,
V1.0
版权所有©上海东软载波微电子有限公司
206/309
http://www.essemi.com
HR8P506_Datasheet_C
TBIF=1,TBWEIF=0,RBIF=0,TEIF=0,ROIF=0,NAIF=0;置起空闲标志 IDLE=1;
置起各发送缓冲器空标志 TBEFy=1;清除各接收缓冲器满标志 RBFFy=0。
5. 5. 8. 1
I2C起始位
配置 SRT,可触发 I2C 发送起始位,启动或重启动一次传输操作,发送寻呼从动器地址。
起始位波形图如下:
SDAx
SCLx
S
START
8
9
R/W
ACK
1-7
ADRRESS
图 5-42 I2C 起始位波形图
I2C 主控模式,支持自动寻呼功能。配置 I2C_MOD 寄存器的 SRAE,可使能自动寻呼功
能,I2C 主控器会自动判断“地址应答”位,若该“地址应答”位为未应答 NACK,则自
动发送起始位,重启动本次地址寻呼操作,并且直到接收到应答 ACK 才停止继续重启动。
在芯片应用时,使能 I2C 自动寻呼功能前,需确保被寻呼的地址是真实存在的,否则会造
成主控器芯片持续重启动地址寻呼。
举例说明自动寻呼功能:芯片通过 I2C 向 EEPROM 器件写入数据时,存在写等待时间。
在 EEPROM 存储器本身写数据期间,主控器芯片寻呼该器件时,将收到未应答 NACK。
可有两种方法解决 EEPROM 写数据期间的地址寻呼问题:一种是主控器芯片设定寻呼间
隔,在 EEPROM 数据写操作完成后,再寻呼该器件;另一种是主控器芯片启动自动寻呼
功能,持续寻呼该器件,直到收到应答 ACK 为止。
SDAx
8
1-7
SCLx
9
S
START
1-7
8
9
ADRRESS
R/W
ACK
S
ADRRESS
R/W
ACK
START
图 5-43 I2C 自动寻呼波形图
5. 5. 8. 2
I2C停止位
配置 I2C_MOD 寄存器的 SPT,可触发 I2C 发送停止位,结束本次传输操作。停止位波形
图如下:
V1.0
版权所有©上海东软载波微电子有限公司
207/309
http://www.essemi.com
HR8P506_Datasheet_C
SDAx
9
8
1-7
SCLx
P
START
ADRRESS
R/W
ACK
STOP
图 5-44 I2C 停止位波形图
I2C 主控模式,支持自动结束功能。配置 I2C_MOD 寄存器的 SPAE,可使能自动结束功
能,在发送 NACK 或接收 NACK 后,自动发送停止位,结束本次不成功的传输操作。自
动结束功能的优先级小于自动寻呼功能。
5. 5. 8. 3
I2C应答延迟功能
I2C 的主控模式,支持应答延迟功能,配置 I2C_MOD 寄存器的 ADE,可使能该功能,配
置 ADLY,可设定应答延迟的时间。应答延迟功能使能后,I2C 主控器将延迟发送通讯时
钟 SCLx 的应答位脉冲。
当从动器不能按照正常数据的通讯速率,对应答位进行接收和发送时,主控器可使能应答
延迟功能,并根据从动器的具体设计规格,设定应答延迟时间。
举例说明 I2C 应答延迟功能:
I2C_MOD 寄存器中 ADLY=001,延迟时间为 1 个 TSCLx,
通讯波形示意图如下:
SDAx
1.5*TSCLx
SCLx
1-8
9
DATA
ACK
1.5*TSCLx
1-8
DATA
1-8
9
ACK
图 5-45 I2C 应答延迟功能波形示意图
5. 5. 8. 4
I2C数据帧传输间隔功能
I2C 主控模式,支持数据帧传输间隔功能,配置 I2C_MOD 寄存器的 TIS,可使能该功能,
并设定间隔的时间。数据帧传输间隔时间设定后,在当前数据帧的应答位脉冲之后,I2C
主控器将延迟一段设定的时间,再发送下一个数据帧的通讯脉冲。
当从动器不能及时读取接收到的数据,或准备好发送的数据时,主控器可根据从动器的具
体设计规格,设定数据帧的传输间隔。
举例说明 I2C 数据帧传输间隔功能:I2C_MOD 寄存器中 TIS=0001,间隔时间为 1
个 TSCLx,通讯波形示意图如下:
V1.0
版权所有©上海东软载波微电子有限公司
208/309
http://www.essemi.com
HR8P506_Datasheet_C
SDAx
SCLx
1-8
9
DATA
ACK
1.5*TSCLx
1-8
DATA
9
1.5*TSCLx
1-8
9
ACK
图 5-46 I2C 数据帧传输间隔功能波形示意图
5. 5. 8. 5
I2C时钟线自动下拉等待请求功能
I2C 从动模式,支持时钟线自动下拉等待请求功能,配置 I2C_MOD 寄存器的 CSE,可使
能该功能。
为实现 I2C 时钟线的下拉等待请求功能,还需配置 I2C_CON 寄存器的 SCLOD,将通讯
端口 SCLx 选择为开漏输出模式,通过上拉电阻提供高电平,使从动器可对时钟线下拉控
制,使主控器等待。
在通常情况下,从动器处于释放时钟线的状态,时钟线 SCLx 完全由主控器控制。但当从
动器出现异常情况,短时间内无法继续进行数据传输时,从动器可以在时钟线 SCLx 为低
电平时输出 0(不可以在高电平时输出 0,否则会破坏数据传输过程)
,强行使 SCLx 保持
低电平,使主控器进入通讯等待状态,直到从动器释放时钟线。时钟线下拉等待请求波形
示意图如下:
主控器
主控器
释放时钟线
从动器
下拉时钟线
从动器
释放时钟线
从动器
SCLx
图 5-47 I2C 时钟线下拉等待波形示意图
I2C 从动模式下,时钟自动下拉等待请求功能使能后,当接收到本芯片寻呼地址和读操作
位时,如果 I2C 的发送缓冲器和发送移位寄存器全空,则会自动将时钟线下拉;当接收到
本芯片寻呼地址和写操作位时,如果 I2C 的接收缓冲器和接收移位寄存器全满,则会自动
将时钟线下拉。
5. 5. 8. 6
I2C自动发送未应答功能
I2C 从动模式,支持自动发送未应答 NACK 功能,配置 I2C_MOD 寄存器的 ANAE,可使
能该功能。从动器使能自动发送未应答功能时,不会强制控制时钟线,适用于通讯端口
SCLx 选择为推挽输出或开漏输出模式两种情况。
V1.0
版权所有©上海东软载波微电子有限公司
209/309
http://www.essemi.com
HR8P506_Datasheet_C
I2C 从动模式下,自动发送未应答 NACK 功能使能后,当接收到本芯片寻呼地址和读操作
位时,如果 I2C 的发送缓冲器和发送移位寄存器全空,则会自动发送未应答 NACK;当接
收到本芯片寻呼地址和写操作位时,如果 I2C 的接收缓冲器和接收移位寄存器全满,则会
自动发送未应答 NACK,通知主控器重新通讯。
特殊功能寄存器
5. 5. 9
I2C 控制寄存器(I2C_CON)
偏移地址:00H
复位值:00000000_00000000_11111111_00000000B
31
30
29
28
27
26
25
24
23
22
21
保留
15
14
13
12
11
SA
10
9
8
bit31-24
bit23-17
RW
bit16
TJP
bit15-8
6
5
4
3
2
1
0
SDASE
SCLSE
SDAOD
SCLOD
RST
EN
—
R/W
R/W
I2C 读写控制位
0:写操作
1:读操作
主控模式:该位可读可写,触发“启动/重启动”操
作时,自动发送该位
从动模式:该位只可读,从机地址匹配后,硬件自动
根据接收到的控制位值,更新该位
R/W
I2C 时基定时周期设置位
00~FF:分别为 1~256 个 TPCLK
I2C 时基定时器使能位
0:禁止
1:使能
bit6
—
bit4
bit3
V1.0
版权所有©上海东软载波微电子有限公司
—
从机地址位
主控模式:触发“启动/重启动”操作时,自动发送
从动模式:接收到“启动/重启动”后用于匹配比较
—
bit5
16
RW
保留
R/W
SDAOD
17
7
bit7
SCLSE
18
TJE
TJE
SDASE
19
SA
TJP
—
20
—
R/W
SDAx 端口 16 倍速采样使能位
0:禁止
1:使能
R/W
SCLx 端口 16 倍速采样使能位
0:禁止
1:使能
R/W
SDAx 端口输出模式选择位
0:推挽输出
1:开漏输出
210/309
http://www.essemi.com
HR8P506_Datasheet_C
SCLOD
bit2
SCLx 端口输出模式选择位
0:推挽输出
1:开漏输出
R/W
I2C 软件复位
0:读取时始终为 0
1:软件复位,硬件自动清零
RST
bit1
W
EN
bit0
R/W
I2C 通讯使能位
0:禁止
1:使能
I2C 工作模式寄存器(I2C_MOD)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
保留
15
14
13
12
TIS
—
24
23
11
ADE
10
9
8
ADLY
bit31-25
7
6
5
4
SRAE
ANAE
CSE
—
R/W
—
bit23-20
—
RDT
SPT
SRT
TIS
bit18
bit17
bit16
bit15-12
V1.0
版权所有©上海东软载波微电子有限公司
20
SPAE
bit24
bit19
21
保留
TAS
TAS
BLD
22
19
18
17
16
BLD
RDT
SPT
SRT
2
1
3
RDM
0
MS
—
I2C 发送应答设置位(仅从动模式支持)
0:发送 ACK
1:发送 NACK
—
R/W
I2C 总线释放功能控制位(仅主控模式支持)
0:无效
1:SDAx 端口为高电平,SCLx 端口发送 8 个
时钟。
该功能需配合 I2C 起始位和停止位使用,达到
释放时钟线和数据线的目的。
R/W
I2C 接收数据触发位(仅主控模式支持)
0:无效
1:开始发送通讯时钟,接收数据,由 RDM
配置接收数据模式
R/W
I2C 停止位触发位(仅主控模式支持)
0:无效
1:触发停止位
R/W
I2C 起始位触发位(仅主控模式支持)
0:无效
1:触发起始位,产生起始位发送完成中断标志
R/W
I2C 数据帧传输间隔设置位(仅主控模式支持)
0000:禁止
0001~1111:分别为 1~15 个 I2C 通讯时钟周期
211/309
http://www.essemi.com
HR8P506_Datasheet_C
ADE
ADLY
SPAE
bit11
bit10-8
bit7
R/W
I2C 应答延迟使能位(仅主控模式支持)
0:禁止
1:使能
R/W
I2C 应答延迟时间设置位(仅主控模式支持)
000:0.5 个 I2C 通讯时钟周期
001:1 个 I2C 通讯时钟周期
010:1.5 个 I2C 通讯时钟周期
011:2 个 I2C 通讯时钟周期
100:2.5 个 I2C 通讯时钟周期
101:3 个 I2C 通讯时钟周期
110:3.5 个 I2C 通讯时钟周期
111:4 个 I2C 通讯时钟周期
R/W
I2C 自动结束使能位(仅主控模式支持)
0:禁止
1:使能(当发送或接收 NACK 后,自动发送
停止位,优先级小于 SRAE)
SRAE
bit6
R/W
I2C 自动寻呼使能位(仅主控模式支持)
0:禁止
1:使能(若寻呼地址的应答位为 NACK,则自
动重启动本次寻呼操作)
ANAE
bit5
R/W
I2C 自动发送未应答使能位(仅从动模式支持)
0:禁止
1:使能
R/W
I2C 时钟线自动下拉等待请求使能位(仅从动
模式支持)
0:禁止
1:使能
R/W
I2C 接收模式选择位(仅主控模式支持)
000:接收 1 字节,发送 ACK
001:接收 1 字节,发送 NACK
010:连续接收 2 字节,每个字节发送 ACK
011:连续接收 2 字节,前 1 字节发送 ACK,
后 1 字节,发送 NACK
100:连续接收 4 字节,每个字节发送 ACK
101:连续接收 4 字节,前 3 字节发送 ACK,
后 1 字节,发送 NACK
110:连续接收,每个字节发送 ACK
111:完成该字节接收,发送 NACK
R/W
I2C 通讯模式选择位
0:主控模式
1:从动模式
CSE
RDM
MS
bit4
bit3-1
bit0
V1.0
版权所有©上海东软载波微电子有限公司
212/309
http://www.essemi.com
HR8P506_Datasheet_C
I2C 中断使能寄存器(I2C_IE)
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
保留
15
14
13
保留
12
TIDLEIE
—
TIDLEIE
RBIM
TBIM
TBWEIE
NAIE
ROIE
11
10
RBIM
9
8
TBIM
bit31-13
bit12
bit11-10
bit9-8
bit7
bit6
bit5
—
7
6
5
4
3
2
1
0
TBWEIE
NAIE
ROIE
TEIE
RBIE
TBIE
SPIE
SRIE
—
R/W
I2C 发送空闲中断使能位
0:禁止
1:使能
R/W
I2C 接收缓冲器满中断模式选择位
00:字节满产生中断
01:半字满产生中断
10:字满产生中断
11:保留
R/W
I2C 发送缓冲器空中断模式选择位
00:字节空产生中断
01:半字空产生中断
10:字空产生中断
11:保留
R/W
I2C 发送数据写错误中断使能位
0:禁止
1:使能
R/W
I2C 未应答 NACK 中断使能位
0:禁止
1:使能
R/W
I2C 接收数据溢出中断使能位
0:禁止
1:使能
TEIE
bit4
R/W
I2C 发送数据错误中断使能位
0:禁止
1:使能
RBIE
bit3
R/W
I2C 接收缓冲器满中断使能位
0:禁止
1:使能
R/W
I2C 发送缓冲器空中断使能位
0:禁止
1:使能
R/W
I2C 停止位中断使能位
0:禁止
1:使能
TBIE
SPIE
bit2
bit1
V1.0
版权所有©上海东软载波微电子有限公司
213/309
http://www.essemi.com
HR8P506_Datasheet_C
SRIE
bit0
R/W
I2C 起始位中断使能位
0:禁止
1:使能
I2C 中断状态寄存器(I2C_IF)
偏移地址:0CH
复位值:00000000_00000000_00000000_00000100B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
保留
15
14
13
保留
—
12
11
TIDLEIF
bit31-13
10
9
保留
—
TIDLEIF
bit12
R/W
—
bit11-8
—
TBWEIF
NAIF
ROIF
bit7
bit6
bit5
8
7
6
5
4
3
2
1
0
TBWEIF
NAIF
ROIF
TEIF
RBIF
TBIF
SPIF
SRIF
—
I2C 发送空闲中断标志位
0:未产生空闲中断
1:空闲中断标志
软件写 1 清除标志位,写 0 无效
—
R/W
I2C 发送数据写错误中断标志位
0:未发生写错误
1:发生写错误,可能会出现下列错误:
对 I2C_TBW 字写入时,TBy 未全空;
对 I2C_TBW 半字写入时,TBy 未半空;
对 I2C_TBW 字节写入时,TBy 全满;
对 I2C_TBW进行半字写入;
对 I2C_TBW进行字节写入。
软件写 1 清除标志位,写 0 无效
R/W
I2C 未应答中断标志位
0:未产生未应答 NACK
1:产生未应答 NACK
I2C 接收或发送 NACK 位后,产生中断标志
软件写 1 清除标志位,写 0 无效
R/W
I2C 接收数据溢出中断标志位
0:未溢出
1:溢出
软件写 1 清除标志位,写 0 无效
I2C 发送错误中断标志位
0:未发生发送错误
1:发生发送错误:发送缓冲器和发送移位寄存器全空
时,又收到主控方提供的通讯时钟
软件写 1 清除标志位,写 0 无效
TEIF
bit4
R/W
RBIF
bit3
R
V1.0
版权所有©上海东软载波微电子有限公司
I2C 接收缓冲器满中断标志位
214/309
http://www.essemi.com
HR8P506_Datasheet_C
0:非满
1:满
读 I2C_RBR 寄存器可清除中断标志位
TBIF
bit2
SPIF
R
bit1
SRIF
I2C 发送缓冲器空中断标志位
0:非空
1:空
写 I2C_TBW 寄存器可清除中断标志位
bit0
R/W
I2C 停止位中断标志位
0:未产生停止位
1:产生停止位
主控模式:发送停止位后产生中断标志。
从动模式:接收停止位后产生中断标志。
软件写 1 清除标志位,写 0 无效
R/W
I2C 起始位中断标志位
0:未产生起始位
1:产生起始位
主控模式:如果禁止自动寻呼,发送完“起始位+地址+
接收应答位后”产生中断标志。如果使能自动寻呼,
发送完“起始位+地址+接受应答位”
,并且应答位为
ACK 时,产生中断标志。
从动模式:接收到“起始位+地址位”
,且地址匹配,发送应答
位后,产生中断标志。
软件写 1 清除标志位,写 0 无效
注:对 I2C_IF 寄存器中的各中断标志位,写 0 无效,写 1 才能清除标志位;读操作时,读取的值为 1 表示有中断
发生。
I2C 发送数据写入寄存器(I2C_TBW)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
TBW
15
14
13
12
11
10
9
8
7
TBW
TBW
bit31-0
W
写入的发送数据
字节写入时:仅允许对 TBW写入
半字写入时:仅允许对 TBW写入
字写入时:对 TBW写入
I2C 接收数据读取寄存器(I2C_RBR)
V1.0
版权所有©上海东软载波微电子有限公司
215/309
http://www.essemi.com
HR8P506_Datasheet_C
偏移地址:14H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
18
17
16
2
1
0
18
17
16
2
1
0
RBR
15
14
13
12
11
10
9
8
7
RBR
RBR
bit31-0
读取的接收数据
字节读取时:仅允许对 RBR读取
半字读取时:仅允许对 RBR读取
字读取时:对 RBR读取
R
I2C 发送缓冲寄存器(I2C_TB)
偏移地址:18H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
TB3
15
14
13
12
11
20
19
TB2
10
9
8
7
6
5
TB1
4
3
TB0
TB3
bit31-24
R
发送数据缓冲器 3
TB2
bit23-16
R
发送数据缓冲器 2
TB1
bit15-8
R
发送数据缓冲器 1
TB0
bit7-0
R
发送数据缓冲器 0
I2C 接收缓冲寄存器(I2C_RB)
偏移地址:1CH
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
RB3
15
14
13
12
11
20
19
RB2
10
9
8
7
6
5
RB1
4
3
RB0
RB3
bit31-24
R
接收数据缓冲器 3
RB2
bit23-16
R
接收数据缓冲器 2
RB1
bit15-8
R
接收数据缓冲器 1
RB0
bit7-0
R
接收数据缓冲器 0
I2C 状态寄存器(I2C_STA)
V1.0
版权所有©上海东软载波微电子有限公司
216/309
http://www.essemi.com
HR8P506_Datasheet_C
偏移地址:20H
复位值:00000000_00000010_00001111_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
保留
15
14
13
12
11
10
9
8
RBFF3
RBFF2
RBFF1
RBFF0
TBEF3
TBEF2
TBEF1
TBEF0
—
bit31-18
—
—
IDLE
bit17
R
I2C 空闲标志位
0:非空闲状态
1:空闲状态
ACK
bit16
R
I2C 应答位
0:应答 ACK
1:未应答 NACK
R
RB3 满标志位
0:空
1:满
R
RB2 满标志位
0:空
1:满
R
RB1 满标志位
0:空
1:满
R
RB0 满标志位
0:空
1:满
R
TB3 空标志位
0:满
1:空
R
TB2 空标志位
0:满
1:空
R
TB1 空标志位
0:满
1:空
RBFF3
RBFF2
RBFF1
RBFF0
TBEF3
TBEF2
TBEF1
bit15
bit14
bit13
bit12
bit11
bit10
bit9
TBEF0
bit8
R
TB0 空标志位
0:满
1:空
—
bit7-0
—
—
7
6
5
4
3
2
17
16
IDLE
ACK
1
0
保留
5. 5. 10 I2C应用说明
芯片支持 1 个 I2C 总线串口通讯控制器 I2C0。
V1.0
版权所有©上海东软载波微电子有限公司
217/309
http://www.essemi.com
HR8P506_Datasheet_C
I2C 总线在连续发送数据的应用中,利用发送空闲标志(TIDLEIF)进入中断的方式进行
数据发送时,要注意以下 2 点:
1)主控模式下,在主程序中设置 Memory Address 之后,发送空闲标志(TIDLEIF)置 1
并触发中断,在中断服务程序中,将数据写入 I2C_TBW 中,并开始发送数据;
2)从动模式下,必须在主程序中等待 I2C_STA 寄存器的 IDLE 置 1 之后,将以 Memory
Address 为起始地址的第一个数据写入 I2C_TBW 中。当主机发送读命令后,发送空闲
标志(TIDLEIF)置 1 并触发中断,在中断服务程序中读取接收的数据,在主机读完数
据后,必须发送 STOP 位,否则,若要直接再次启动读操作,可能导致读取命令发送
错误。
I2C_IE 寄存器的 TBIM(发送缓冲器中断模式选择位)会影响 TIDLEIF,因此,对于字节
发送或半字发送,在 I2C 开始发送数据时最好使用字空产生中断模式(TBIM=2‘b10)
,否
则会连续产生多个字节空中断,容易导致发送数据出错。如果使用字节空(TBIM=2‘b00)
或者半字空(TBIM=2‘b01)中断模式,则发送开始时,必须向 I2C_TBW 写满四个待发送
的数据字节,否则也会连续产生多个字节空或半字空中断。
使用发送空闲标志(TIDLEIF)的好处在于,在 I2C 发送空闲中断使能位(TIDLEIE)有
效的情况下,只需清除发送空闲标志位(TIDLEIF)
,即可达到连续发送数据的目的。
5. 6 模数转换器(ADC)
5. 6. 1
概述
支持 12 位转换结果,有效精度为 11 位
采样速率最高支持 125ksps (kilo-samples per second)
支持 16 个模拟输入通道
支持 ADC 中断,可唤醒睡眠模式(仅在时钟源为 LRC 时唤醒)
支持正负向参考电压可配置
支持转换时钟可配置
支持自动转换比较功能
V1.0
版权所有©上海东软载波微电子有限公司
218/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 6. 2
结构框图
ADVREFP
ADVREFN
ADC_DR
APB_ADC
模数
转换器
通道
选择
转换时钟选择器
AIN0
AIN1
AIN2
AIN3
AIN12
AIN13
AIN14
AIN15
ADC控制寄存器
图 5-48 ADC 内部结构图
5. 6. 3
ADC基本配置
将端口配置为 ADC 模拟输入通道的方式如下:
配置 GPIO_PxINEB 寄存器,关断该端口的数字输入;配置 GPIO_PxDIR 寄存器,关断该
端口的数字输出。
配置 ADC_CHS 寄存器的 CHS,选择相应的 ADC 模拟通道。
ADC 正常工作时必须使能的控制位:ADC_VREFCON 寄存器的 VREF_EN 和 IREF_EN,
ADC_CON0 寄存器的 EN,ADC_CON1 寄存器的 VCMBUF_EN。
5. 6. 4
ADC高精度参考电压
ADC 提供一个高精度内部 1.8V 或者 2.6V 的参考源,用作 ADC 的参考电压。ADC 正常工作
时必须使能 VREF_EN 与 IREF_EN。
5. 6. 5
ADC数据转换
配置 ADC_CHS 寄存器的 CHS,可选择 ADC 模拟通道;配置 ADC_CON1 寄存器的
CLKS,可选择工作时钟源;配置 CLKDIV,可选择时钟源预分频;配置 VREFP,
可选择正向参考电压,配置 VREFN,可选择负向参考电压,当 VREFP为 01 时,必须
开启 VRBUF_EN;配置 ADC_CON0 寄存器的 EN,使能 ADC;最后配置 TRIG,启动 A/D
转换,转换完成后,硬件电路自动将 TRIG 清零。
ADC 在每次转换完成后,会产生 ADC_IF 寄存器的中断标志 IF,需软件清零;启动下一次
A/D 转换时,需重新配置 TRIG。
AD 采样时间可选择硬件或软件控制,默认为硬件自动控制,最快为 1 个 ADC 时钟(取决于
芯片的实际应用条件和 ADC 时钟源频率)
。转换时间为 14 个 ADC 时钟。在使用 VDD 作参
考电压时,ADC 最快采样速率为 125Ksps,即每秒可输出 125K 个高精度 ADC 转换值。通
过配置 ADC_CON1 寄存器的 CLKS 和 CLKDIV 寄存器来产生合适的 ADC 时钟。
V1.0
版权所有©上海东软载波微电子有限公司
219/309
http://www.essemi.com
HR8P506_Datasheet_C
ADCLK
SMPS
Tog*
EN
14Tadclk
SMPON
TRIG
转换时间
采样时间
软件清零
IF
新数据
原数据
ADC_DR
图 5-49 ADC 数据转换时序示意图(ADC_CON1 寄存器的 SMPS=0,软件控制采样)
ADCLK
SMPS
EN
TRIG
Tog*
14Tadclk
转换时间
采样时间
软件清零
IF
ADC_DR
原数据
新数据
图 5-50 ADC 数据转换时序示意图(ADC_CON1 寄存器的 SMPS=1,硬件控制采样)
注 1:Tog>0;
注 2:AD 转换时钟周期 Tadclk,可通过 ADC_CON1 寄存器的 CLKS 和 CLKDIV配置不同的频率。
ADC 应用例程 1:启动一次 A/D 转换。
LDR
R0, = ADC_VREFCON ;使能 VREF_EN 与 IREF_EN,选择 2.6V
LDR
R1, =0X07
STR
R1, [R0]
LDR
R0, =ADC_CON1
; A/D 时钟源选择 PCLK 的 32 分频,选择内部
参考电压 VREF 2.6V 为正向参考电压,VREF BUF 使能,选择硬件控制采样时间,VCM BUF 使能
且为高速模式,AD 转换高速使能
LDR
R1, =0X03005905
STR
R1, [R0]
LDR
R0, =ADC_CHS
;选择 AIN3
LDR
R1, =0X03
V1.0
版权所有©上海东软载波微电子有限公司
220/309
http://www.essemi.com
HR8P506_Datasheet_C
STR
LDR
LDR
STR
LDR
LDR
STR
R1, [R0]
R0, =ADC_CON0
R1, =0X01
R1, [R0]
R0, =ADC_CON0
R1, =0X03
R1, [R0]
LDR
LDR
TST
BEQ
STR
LDR
LDR
STR
R0, =ADC_IF
R1, =0X01
R0, R1
WAIT4IF
R1, [R0]
R0, =ADC_CON0
R1, =0X00
R1, [R0]
;使能 ADC
; A/D 转换
WAIT4IF
5. 6. 6
;等待 ADC 中断
;清零 ADC 中断
;关闭 ADC
自动转换比较功能
芯片提供自动转换比较功能,可自动完成多次 AD 转换并计算出平均值,并根据所设定的阈
值进行比较产生相应的中断,平均值和每次转换的结果均可读。
配置 ADC_CON0 寄存器的 ACP_EN 为 1 时,对 TRIG 写 1 则启动连续自动转换比较功能,
并固定为硬件控制采样时间,对 SMPS 写 0 无效。启动此功能前必须先完成下面的配置:
配置 ADC_CON1 寄存器的 ST 可设置采样时间,建议采样时间大于 1us。
配置 ADC_ACPC 寄存器的 TIMES,可设置每个溢出时间周期内的 ADC 采样转换次数。
配置 OVFL_TIMES,可设置自动转换比较溢出时间,每次计数溢出后自动计算 ADC 转换的
平均值,保存在自动转换数据寄存器 ADC_ACPMEAN 中,如果 ADC_CON0 寄存器的 EN
关闭,则硬件自动将溢出计数和自动转换数据寄存器清零。若溢出时间已到,但采样转换次
数(由 TIMES设定的次数)未满,则直到完成所有 ADC 转换次数后,才启动下一个溢
出时间计算。
配置 ADC_ACPC 寄存器的 CLKS 可选择溢出计数的时钟源,为 PCLK 或者 LRC(32KHz)
256 分频。如果需要在芯片睡眠模式下,自动转换比较模块仍保持工作,则在进入睡眠模式
之前,需要将计数时钟源设置为 LRC 的 256 分频,并配置 ADC_CON1 寄存器的 CLKS 选
择 A/D 时钟源为 LRC。
配置 ADC_ACPCMP 寄存器的 CMP_MIN,设置自动比较的低阈值,如果 ADC_ACPMEAN
寄存器的 MEAN_DATA 小于等于此阈值,则中断标志 ACPMINIF 置 1。
配置 ADC_ACPCMP 寄存器的 CMP_MAX,设置自动比较的高阈值,如果 ADC_ACPMEAN
寄存器的 MEAN_DATA 大于等于此阈值,则中断标志 ACPMAXIF 置 1。
ADC 应用例程 2:启动一次 A/D 自动转换。
LDR
R0, = ADC_VREFCON
LDR
R1, =0X07
V1.0
版权所有©上海东软载波微电子有限公司
;使能 VREF_EN 与 IREF_EN,选择 2.6V
221/309
http://www.essemi.com
HR8P506_Datasheet_C
STR
R1, [R0]
LDR
R0, =ADC_CON1
; A/D 时钟源选择 PCLK 的 32 分频,选择内部
参考电压 VREF 2.6V 为正向参考电压,VREF BUF 使能,选择硬件控制采样,VCM BUF 使能且为
高速模式,AD 转换高速使能
LDR
R1, =0X03005905
STR
R1, [R0]
LDR
R0, =ADC_CHS
;选择 AIN3
LDR
R1, =0X03
STR
R1, [R0]
LDR
ADC_IE, =0X07
LDR
ADC_ACPCMP, =0X00010001 ;设置自动比较的高/低阈值
LDR
ADC_ACPC, =0x0013001F
;ACP 模块工作时钟为 LRC,每次溢
出时间内自动转换 8 次,溢出时间为 32x Tacp
LDR
R0, =ADC_CON0
;使能 ADC 与自动转换比较功能
LDR
R1, =0X05
STR
R1, [R0]
LDR
R0, =ADC_CON0
;启动 A/D 转换
LDR
R1, =0X07
STR
R1, [R0]
……
特殊功能寄存器
5. 6. 7
ADC 参考控制寄存器(ADC_VREFCON)
偏移地址:40H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
6
5
4
19
18
17
16
保留
15
14
13
12
11
10
9
8
7
3
保留
—
IREF_EN
VREF_SEL
VREF_EN
V1.0
版权所有©上海东软载波微电子有限公司
bit31-3
bit2
bit1
bit0
—
2
1
0
IREF_EN
VREF_SEL
VREF_EN
—
R/W
IREF 使能控制位
0:禁止
1:使能
R/W
内部 VREFP 电压选择控制位
0:1.8V
1:2.6V
R/W
内部 VREFP 使能控制位
0:禁止
1:使能
222/309
http://www.essemi.com
HR8P506_Datasheet_C
注 1:A/D 正常工作时必须开启 VREF_EN 与 IREF_EN。
ADC 转换值寄存器(ADC_DR)
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
7
保留
DR
—
bit31-12
—
—
DR
bit11-0
R
A/D 转换结果
ADC 控制寄存器 0(ADC_CON0)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
6
5
4
3
18
17
16
保留
15
14
13
12
11
10
9
8
7
保留
—
bit31-3
ACP_EN
TRIG
EN
bit2
bit1
bit0
—
2
1
0
ACP_EN
TRIG
EN
—
R/W
A/D 自动转换比较功能使能位
0:关闭
1:启动
R/W
A/D 转换状态位
0:A/D 未进行转换,或 A/D 转换已完成
(硬件清 0,且硬件清 0 优先)
1:A/D 转换正在进行,该位置 1 启动 A/D 转换
SMPS 为 0 时,TRIG 的写操作失效(由硬件根据
SMPON 软件采样和 ADC 转换过程进行控制)
,且
不能将其读出作为 ADC 转换完成的标志
R/W
A/D 转换使能位(ACP_EN 为 1 时,该位无效)
0:禁止
1:使能
注 1:TRIG 软件只能写 1,且写 1 后硬件自动清零。
注 2:关闭 SMPON 时, TRIG 与 ADC_IF 寄存器的 IF 位均可作为转换完成标志。而开启 SMPON 时,仅
ADC_IF 寄存器的 IF 位可作为转换完成标志。建议无论 SMPON 是否开启,均通过 ADC_IF 寄存器的 IF 位
来判断 ADC 是否转换完成。
V1.0
版权所有©上海东软载波微电子有限公司
223/309
http://www.essemi.com
HR8P506_Datasheet_C
ADC 控制寄存器 1(ADC_CON1)
偏移地址:08H
复位值:00000000_00000100_00010000_00000000B
31
30
29
28
27
26
保留
15
14
保
HSE
留
N
13
12
11
10
SMPON
SMPS
VRBUF_EN
VREFN
—
VCMBUF_HS
bit31-26
bit25
25
24
VCMBUF_HS
VCMBUF_EN
9
8
—
bit23-21
—
ST
bit20-16
R/W
—
bit15
—
SMPS
VRBUF_EN
VREFN
VREFP
bit13
bit12
bit11
bit10
bit9-8
V1.0
版权所有©上海东软载波微电子有限公司
19
7
6
18
17
16
1
0
ST
5
4
3
CLKS
2
CLKDIV
—
ADC 共模电压 VCM BUF 使能控制位
0:禁止
1:使能
R/W
SMPON
20
R/W
bit24
bit14
21
ADC 共模电压 VCM BUF 高速模式使能控
制位
0:保留,仅作测试使用
1:使能
VCMBUF_EN
HSEN
22
保留
保留
VREFP
—
23
—
A/D 采样时间选择位(硬件控制有效)
采样时间:ST*2+1 个 Tadclk
—
R/W
AD 转换速度控制位
0:保留,仅作测试使用
1:高速
R/W
A/D 采样软件控制位(ACP_EN 为 1 时,
该位无效)
0:关闭 AD 采样
1:启动 AD 采样
R/W
A/D 采样模式选择位(ACP_EN 为 1 时,
固定为 1)
0:软件控制
1:硬件控制
R/W
VREF BUF 使能位
0:禁止
1:使能
R/W
A/D 负向参考电压选择位
0:内部地电压 VSS
1:外部参考电压 AVREFN
R/W
A/D 正向参考电压选择位
00:选择芯片工作电压 VDD
01:选择内部参考电压 VREFP( 2.6V 或
1.8V)
,AVREFP 端口复用作普通 I/O
224/309
http://www.essemi.com
HR8P506_Datasheet_C
端口
10:选择内部参考电压 VREFP( 2.6V 或
1.8V)
,AVREFP 端口输出内部参考
电压 VREF
11:外部参考电压 AVREFP,该电压不能
高于 VDD
—
—
bit7-4
CLKS
bit3
CLKDIV
bit2-0
—
R/W
A/D 时钟源选择位
0:PCLK
1:LRC(32KHz)
R/W
A/D 时钟源预分频选择位
000 = 1:1
001 = 1:2
010 = 1:4
011 = 1:8
100 = 1:16
101 = 1:32
110 = 1:64
111 = 1:256
注 1:选择内部参考电压 VREF 2.6V 或 1.8V 作为 ADC 正向参考电压时, VRBUF_EN 必须置 1;
注 2:ADC 工作时 VCMBUF_HS ,VCMBUF_EN,HSEN 均必须置 1;
注 3:ADC 使用 VDD(VREFP=2’b00)
,或外部参考电压(VREFP=2’b11)
,作为参考电压时,最大转换时钟频率
为 2MHz,使用内部参考电压作为参考电压时(VREFP=2’b01 或 2’b10)
,最大转换时钟频率为 1MHz。
ADC 通道选择寄存器(ADC_CHS)
偏移地址:0CH
复位值:00000000_00000000_00000001_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
6
5
4
3
18
17
16
2
1
0
保留
15
14
13
12
11
10
9
保留
—
8
7
保留
VDD5_FLAG_EN
bit31-9
—
VDD5_FLAG_EN
bit8
R/W
—
bit7-5
—
V1.0
版权所有©上海东软载波微电子有限公司
CHS
—
VDD 检测控制
1:使能(如果应用系统中 VDD 电压会小
于 3.7V,则需使能该位,ADC 硬件电
路根据 VDD 电压进行自调整,以保证
ADC 的可靠性)
0:禁止
—
225/309
http://www.essemi.com
HR8P506_Datasheet_C
CHS
bit4-0
R/W
A/D 模拟通道选择位
00000:通道 0(AIN0)
00001:通道 1(AIN1)
00010:通道 2(AIN2)
00011:通道 3(AIN3)
00100:通道 4(AIN4)
00101:通道 5(AIN5)
00110:通道 6(AIN6)
00111:通道 7(AIN7)
01000:通道 8(AIN8)
01001:通道 9(AIN9)
01010:通道 10(AIN10)
01011:通道 11(AIN11)
01100:通道 12(AIN12)
01101:通道 13(AIN13)
01110:通道 14(AIN14)
01111:通道 15(AIN15)
其它:通道关闭
ADC 中断使能寄存器(ADC_IE)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
5
4
19
18
17
16
保留
15
14
13
12
11
10
9
8
7
6
保留
—
ACPOVIE
ACPMAXIE
ACPMINIE
IE
bit31-4
—
3
2
1
0
ACPOVIE
ACPMAXIE
ACPMINIE
IE
—
bit3
ADC 自动转换溢出中断使能位
0:禁止
1:使能
bit2
R/W
ADC 自动转换高阈值超出中断使能位
0:禁止
1:使能
R/W
ADC 自动转换低阈值超出中断使能位
0:禁止
1:使能
R/W
ADC 中断使能位
0:禁止
1:使能
bit1
bit0
ADC 中断标志寄存器(ADC_IF)
V1.0
版权所有©上海东软载波微电子有限公司
226/309
http://www.essemi.com
HR8P506_Datasheet_C
偏移地址:14H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
5
4
19
18
17
16
保留
15
14
13
12
11
10
9
8
7
6
保留
—
—
bit31-4
ACPOVIF
bit3
ACPMAXIF
bit2
ACPMINIF
bit1
IF
bit0
3
2
1
0
ACPOVIF
ACPMAXIF
ACPMINIF
IF
—
R/W
ADC 自动转换溢出中断标志位
0:自动转换的溢出时间未到
1:自动转换的溢出时间已到(由硬件置 1,软
件清除)
软件写 1 清除标志位,写 0 无效
R/W
ADC 自动转换高阈值超出中断标志位
0:均值结果到达高阈值
1:均值结果大于或等于高阈值(由硬件置 1,
软件清除)
软件写 1 清除标志位,写 0 无效
R/W
ADC 自动转换低阈值超出中断标志位
0:均值结果没有到达最低阈值
1:均值结果小于或等于低阈值(由硬件置 1,
软件清除)
软件写 1 清除标志位,写 0 无效
R/W
ADC 中断标志位
0:正在进行转换
1:A/D 转换完成(由硬件置 1,软件清除)
软件写 1 清除标志位,写 0 无效
注 1:ADC 中断禁止时,如果满足条件仍会置起对应的中断标志位,只是不会产生中断请求。
注 2:对 ADC_IF 寄存器中的各中断标志位,写 0 无效,写 1 才能清除标志位;读操作时,读取的值为 1 表示有中
断发生。
ADC 自动转换比较控制寄存器(ADC_ACPC)
偏移地址:28H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
保留
15
14
13
12
11
10
9
8
7
保留
—
20
19
18
CLKS
6
5
4
17
16
TIMES
3
2
1
0
OVFL_TIME
bit31-21
V1.0
版权所有©上海东软载波微电子有限公司
—
—
227/309
http://www.essemi.com
HR8P506_Datasheet_C
CLKS
bit20
R/W
—
bit19-18
—
TIMES
bit17-16
R/W
—
bit15-12
—
OVFL_TIME
bit11-0
ACP 溢出计数的时钟源选择位
0:FPCLK/256(PCLK 的 256 分频)
1:FLRC/256(LRC 时钟的 256 分频)
—
自动转换比较次数选择位(基于由
OVFL_TIME 设定的时间段内)
00:1 次
01:2 次
10:4 次
11:8 次
—
每次自动转换比较的溢出时间,可配置范
围为 0~9C3H,计数时钟周期为 Tacp,分
别对应如下溢出时间:
0:1 xTacp
1:2 x Tacp
2:3 x Tacp
…
9C3H:2500 x Tacp
Tacp 为由 CLKS 选择的 ACP 溢出计数的
时钟源周期
R/W
注 1:配置 OVFL_TIME 的值必须大于一次 A/D 采样与转换时间。
ADC 自动转换比较阈值寄存器(ADC_ACPCMP)
偏移地址:30H
复位值:00001111_11111111_00000000_00000000B
31
30
29
28
27
26
25
24
23
保留
15
14
22
21
20
19
18
17
16
4
3
2
1
0
18
17
16
CMP_MAX
13
12
11
10
9
8
7
保留
6
5
CMP_MIN
—
bit31-28
—
CMP_MAX
bit 27-16
R/W
—
bit15-12
—
CMP_MIN
bit 11-0
R/W
—
自动比较高阈值
—
自动比较低阈值
ADC 自动转换数据寄存器(ADC_ACPMEAN)
偏移地址:34H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
V1.0
版权所有©上海东软载波微电子有限公司
25
24
23
22
21
20
19
228/309
http://www.essemi.com
HR8P506_Datasheet_C
保留
15
14
13
12
11
10
9
8
保留
7
6
5
4
3
2
1
0
MEAN_DATA
—
bit31-12
—
—
MEAN_DATA
bit 11-0
R
自动转换结果的均值
V1.0
版权所有©上海东软载波微电子有限公司
229/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 7 实时时钟(RTC)
5. 7. 1
概述
仅 POR 上电复位有效,支持程序写保护,有效避免系统干扰对时钟造成的影响
采用外部 32.768KHz 晶体振荡器作为 RTC 精确计时的时钟源;如果应用系统对
RTC 计时精度要求不高,还可选用内部 LRC 作为时钟源;如果应用系统将 RTC
作为普通计数器使用,还可选用 PCLK 或 PCLK 的 256 分频作为时钟源
可进行高精度数字校正,提供高精度计时
时钟调校提供两种时间精度,调校范围为±384ppm(或±128ppm)
,可实现最大时
间精度为±1.5 ppm(或±0.5ppm)
时间计数(实现小时﹑分钟和秒)和日历计数(实现年﹑月﹑日和星期)
,BCD 格
式
提供 5 个可编程定时中断
提供 2 个可编程日历闹钟
提供一路可配置时钟输出
自动闰年识别,有效期到 2099 年
12 小时和 24 小时模式设置可选
低功耗设计:工作电压 VDD=5.0V 时模块工作电流典型值为 0.5μA
5. 7. 2
RTC写保护
为避免程序的异常运行对 RTC 模块的误操作,RTC 写保护寄存器 RTC_WP 用于阻止程
序对 RTC 模块其它寄存器的误写(不包括 RTC_WP 寄存器本身)
。
RTC_WP 寄存器为虚拟寄存器。要对 RTC 模块其它寄存器进行写操作时,需先对
RTC_WP 寄存器写 0x55AAAA55,之后可对 RTC 模块其它寄存器进行连续写操作。对
RTC_WP 寄存器写入其他值重新进入写保护状态,写保护状态下对其他寄存器进行的写
操作将被忽略。
可通过读 RTC_WP 寄存器确认 RTC 模块是否处于写保护状态,读出值为 0x55AAAA55,
表示当前可对 RTC 模块其它寄存器进行一次写操作;读出值为 0x00000000 表示 RTC 模
块处于写保护状态。RTC_WP 寄存器无其它读出值。
5. 7. 3
时间日期设置
由于 APB 总线时钟与 RTC 时间计数器时钟异步,因此 RTC 时间计数器不能直接读写,
只能通过缓冲器进行读写。RTC 时分秒寄存器 RTC_HMS 和 RTC 年月日周寄存器
RTC_YMDW 用于 RTC 时间计数器的写入和读取。这两个寄存器只是读写缓冲器,而不
是时间计数器本身。读时间计数器的操作步骤如下:
1)配置读写选择位 TMWR=0,选择时间计数器读操作;
2)配置读写触发位 TMUP=1,触发读操作;
3)读操作完成后,时间计数器的值被分别读出到 RTC_HMS 和 RTC_YMDW,并且 TMUP
位自动清零。
写时间计数器的操作步骤如下(复位或上一次时间计数器读/写操作完成后)
:
V1.0
版权所有©上海东软载波微电子有限公司
230/309
http://www.essemi.com
HR8P506_Datasheet_C
1)配置 12/24 小时模式选择位 HSWI;
2)写入设置值到 RTC_HMS 和/或 RTC_YMDW 寄存器;
3)配置读写选择位 TMWR=1,选择时间计数器写操作;
4)配置读写触发位 TMUP=1,触发写操作;
5)写操作完成后,RTC_HMS 和 RTC_YMDW 寄存器更新过的设置值被写入时间计数器,
并且 TMUP 位自动清零。
注 1:写时间计数器操作是将从复位或上一次读操作完成后,更新过的 RTC_HMS 和/或 RTC_YMDW 寄存器的内
容写入相应时间计数器,而对应于未更新字段的时间计数器不受写入影响。
注 2:当 TMUP 位为 1 时,可通过将 TMWR 清零提前中止当前的写操作。被中止的写操作结果不确定。
时间和日期寄存器数据格式采用 BCD 编码。秒计数范围从 00 到 59,进位到分钟后从 59
变为 00。分钟计数范围从 00 到 59,进位到小时后从 59 变为 00。小时计数范围根据控制
位 RTCHSWI 的设置选择 12/24 小时模式,进位后从 PM11 到 AM12 或 AM11 到 PM12,
或 23 到 00。
星期计数器为循环移位寄存器,设置时对相应星期位写 1,其它位均写 0。
日计数按照每月最后一天加 1 进位到下月,日计数范围按月分为:
一、三、五、七、八、十、十二月从 1 到 31;
四、六、九、十一月从 1 到 30;
二月(普通年份)从 1 到 28;二月(闰年)从 1 到 29;
月计数范围从 1 到 12,进位到年后从 12 变为 1。
年计数范围从 00 到 99(00,04,08,…,92,96 为闰年),99 后不再进位到 00。
12/24 小时模式对照表如下:
24 小时模式
12 小时模式
24 小时模式
12 小时模式
00
12(AM12)
12
32(PM12)
01
01(AM1)
13
21(PM1)
02
02(AM2)
14
22(PM2)
03
03(AM3)
15
23(PM3)
04
04(AM4)
16
24(PM4)
05
05(AM5)
17
25(PM5)
06
06(AM6)
18
26(PM6)
07
07(AM7)
19
27(PM7)
08
08(AM8)
20
28(PM8)
09
09(AM9)
21
29(PM9)
10
10(AM10)
22
30(PM10)
11
11(AM11)
23
31(PM11)
表 5-2 12/24 小时模式对照表
V1.0
版权所有©上海东软载波微电子有限公司
231/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 7. 4
RTC中断源
RTC 模块共有 7 个中断源,即:
周闹钟中断 WAFG
日闹钟中断 DAFG
5 个周期中断月、日、时、分、秒中断
每个中断源都有独立的使能位,使能位影响该中断是否产生 IRQ 中断请求,而不影响中断
功能。即关闭相应中断使能,标志位仍可用于相应功能查询。当有多个中断使能时,各中
断经过“或”逻辑产生 IRQ 中断请求。即任何一个被使能的中断产生中断事件时,均产生
IRQ 中断请求,且只有将所有的产生中断事件的中断标志清零后,IRQ 中断请求才解除。
5. 7. 5
RTC计时功能
如果应用系统要求 RTC 精确计时,则需要采用外部 32.768KHz 晶体振荡器作为 RTC 计
时的时钟源。此时外部时钟管脚(OSCxI,OSCxO)外接 32.768KHz 晶体振荡器,并对
配置字和控制寄存器进行如下设置:
1)通过配置字 CFG_OSCMD 设置 XTAL 振荡器为低速振荡器;
2)通过软件由寄存器 SCU_SCLKEN0 的 CLK_SEL位来选择系统时钟源;
3)设置寄存器 SCU_SCLKEN1 的控制位 XTAL_EN=1,使能外部时钟振荡器。
4)设置寄存器 RTC_CON 的 CLKS=00,将 RTC 时钟源选择为外部 32.768KHz 振
荡器时钟源。
在芯片深度睡眠模式下,如果需要 RTC 仍使用外部 32.768KHz 晶体振荡器计时工作,则
需要设置寄存器 SCU_WAKEUPTIME 的 MOSC_EN=1,使 XTAL 时钟在芯片深度睡眠模
式下保持工作。
如果应用系统对 RTC 计时精度要求不高,则还可选用内部 LRC(频率接近 32KHz)作为
时钟源。
5. 7. 6
特殊功能寄存器
RTC 写保护寄存器(RTC_WP)
偏移地址:20H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
WP
15
14
13
12
11
10
9
8
7
WP
WP
bit31-0
V1.0
版权所有©上海东软载波微电子有限公司
R/W
0x0000_0000:RTC 模块写保护
0x55AA_AA55:RTC 模块可进行一次写操作(写操
232/309
http://www.essemi.com
HR8P506_Datasheet_C
作完成后自动恢复到写保护状态)
注 1:RTC_WP 保护的寄存器为 RTC_CON,RTC_CAL,RTC_WA,RTC_DA,RTC_HMS,RTC_YMDW,
RTC_IE,RTC_IF。
RTC 控制寄存器(RTC_CON)
偏移地址:00H
复位值:00000000_00000000_00001000_10000000B
31
30
29
28
27
26
25
24
23
22
21
20
5
4
19
18
17
16
保留
15
14
13
12
11
10
9
8
保留
-
PON
XST
bit31-8
bit7
bit6
-
R/W
R
CLKS
bit5-4
R/W
-
bit3
-
HSWI
TMWR
TMUP
bit2
bit1
bit0
7
6
PON
XST
CLKS
3
2
1
0
保留
HSWI
TMWR
TMUP
-
RTC 上电复位标志位(软件只能将该位清 0)
0:实时时钟正常工作
1:监测到 RTC 上电复位(必须软件清 0 后,RTC
才能开始工作)
振荡器停振监测标志位
0:振荡器持续工作正常
1:振荡器有停振现象发生
RTC 时钟源选择位(必须在写时间数据前设置)
00:32.768 KHz 振荡器时钟源(RTC 精确计时)
01:LRC 时钟源(RTC 非精确计时)
10:PCLK/256(RTC 用作普通计数器)
11:PCLK(RTC 用作普通计数器)
-
R/W
12/24 小时模式选择位(必须在写时间数据前设
置)
0:12 小时模式
1:24 小时模式
R/W
时间计数器读写选择位
0:时间计数器读出操作
1:时间计数器写入操作
R/W
时间计数器读写触发位(程序只能写 1,读写完
成后自动清零)
0:时间计数器读写操作已完成
1:时间计数器正在进行读写操作
注 1:RTC 模块上电复位后一直处于复位状态,只有将 PON 位清零后,RTC 才进入工作状态。
注 2:为保证精度,建议 RTCCLKS 值设置为 00,即选用外部 32.768KHz 晶振;对于低精度要求的运用,可选用
LRC 时钟源。只有在 RTC 用作普通的 Timer 时,可将 RTCCLKS 设置为 10 或 11。
V1.0
版权所有©上海东软载波微电子有限公司
233/309
http://www.essemi.com
HR8P506_Datasheet_C
RTC 调校寄存器(RTC_CAL)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
7
6
5
20
19
18
17
16
4
3
2
1
0
保留
15
14
13
保留
12
11
CLKC
10
9
8
COCR
DEV
CALF
-
bit31-13
-
CLKC
bit12
R/W
RTC 输出脉冲端口使能位
0:禁止
1:使能(端口需复用为 RTCO,输出脉冲)
R/W
RTC 输出脉冲频率选择位
000:32KHz
001:1024Hz
010:32Hz
011:1Hz
100:校正后 1Hz 时钟输出
111~101:保留
COCR
bit11-9
-
DEV
bit8
R/W
调校模式选择位
0:每 20 秒调校一次(秒数字分别为 00、20、
40 时)
1:每 60 秒调校一次(秒数字为 00 时)
CALF
bit7-0
R/W
RTC 调校值
注 1:如果 CALF=000000, 则调校增/减量为 0;
如果 CALF=0,则递增调校,增量为((CALF) - 1) x 2;
如果 CALF=1,则递减调校,减量为((~CALF) + 1) x 2。
注 2:如果 RTCDEV=0,则调校时间步长为 3.051ppm,调校范围为-384ppm~384ppm,最高时间精度为±1.5ppm;
如果 RTCDEV=1,则调校时间步长为 1.017ppm,调校范围为-128ppm~128ppm,最高时间精度为±0.5ppm。
RTC 周闹钟寄存器(RTC_WA)
偏移地址:08H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
保留
15
14
保留
22
21
20
19
18
17
16
WW6
WW5
WW4
WW3
WW2
WW1
WW0
13
12
11
10
9
8
7
6
5
4
3
2
1
0
WH20
WH10
WH08
WH04
WH02
WH01
保留
WM40
WM20
WM10
WM08
WM04
WM02
WM01
V1.0
版权所有©上海东软载波微电子有限公司
234/309
http://www.essemi.com
HR8P506_Datasheet_C
—
bit31-23
—
—
WW6
bit22
R/W
周六闹钟位
WW5
bit21
R/W
周五闹钟位
WW4
bit20
R/W
周四闹钟位
WW3
bit19
R/W
周三闹钟位
WW2
bit18
R/W
周二闹钟位
WW1
bit17
R/W
周一闹钟位
WW0
bit16
R/W
周日闹钟位
—
bit15-14
—
WH20
bit13
R/W
24 小时模式:20 小时位
12 小时模式:1 代表 pm;0 代表 am
WH10
bit12
R/W
10 小时位
WH08
bit11
R/W
8 小时位
WH04
bit10
R/W
4 小时位
WH02
bit9
R/W
2 小时位
WH01
bit8
R/W
1 小时位
—
bit7
—
WM40
bit6
R/W
40 分钟位
WM20
bit5
R/W
20 分钟位
WM10
bit4
R/W
10 分钟位
WM08
bit3
R/W
8 分钟位
WM04
bit2
R/W
4 分钟位
WM02
bit1
R/W
2 分钟位
WM01
bit0
R/W
1 分钟位
—
—
RTC 日闹钟寄存器(RTC_DA)
偏移地址:0CH
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
保留
15
14
保留
13
12
11
10
9
8
7
6
5
4
3
2
1
0
DH20
DH10
DH08
DH04
DH02
DH01
保留
DM40
DM20
DM10
DM08
DM04
DM02
DM01
—
bit31-14
—
DH20
bit13
R/W
24 小时模式:20 小时位
12 小时模式:1 代表 pm;0 代表 am
DH10
bit12
R/W
10 小时位
DH08
bit11
R/W
8 小时位
DH04
bit10
R/W
4 小时位
DH02
bit9
R/W
2 小时位
DH01
bit8
R/W
1 小时位
V1.0
版权所有©上海东软载波微电子有限公司
—
235/309
http://www.essemi.com
HR8P506_Datasheet_C
—
bit7
—
—
DM40
bit6
R/W
40 分钟位
DM20
bit5
R/W
20 分钟位
DM10
bit4
R/W
10 分钟位
DM08
bit3
R/W
8 分钟位
DM04
bit2
R/W
4 分钟位
DM02
bit1
R/W
2 分钟位
DM01
bit0
R/W
1 分钟位
RTC 时分秒寄存器(RTC_HMS)
偏移地址:10H
复位值:00000000_xxxxxxxx_xxxxxxxx _xxxxxxxx B
31
30
29
28
27
26
25
24
23
22
保留
15
14
保留
13
M20
12
M10
11
10
M08
M04
9
M02
21
20
19
18
17
16
H20
H10
H08
H04
H02
H01
8
7
6
5
4
3
2
1
0
M01
保留
S40
S20
S10
S08
S04
S02
S01
-
bit31-22
-
H20
bit21
R/W
24 小时模式:20 小时位
12 小时模式:1 代表 pm;0 代表 am
H10
bit20
R/W
10 小时位
H08
bit19
R/W
8 小时位
H04
bit18
R/W
4 小时位
H02
bit17
R/W
2 小时位
H01
bit16
R/W
1 小时位
-
bit15
-
M40
bit14
R/W
40 分钟位
M20
bit13
R/W
20 分钟位
M10
bit12
R/W
10 分钟位
M08
bit11
R/W
8 分钟位
M04
bit10
R/W
4 分钟位
M02
bit9
R/W
2 分钟位
M01
bit8
R/W
1 分钟位
-
bit7
-
S40
bit6
R/W
40 秒位
S20
bit5
R/W
20 秒位
S10
bit4
R/W
10 秒位
S08
bit3
R/W
8 秒位
S04
bit2
R/W
4 秒位
S02
bit1
R/W
2 秒位
S01
bit0
R/W
1 秒位
V1.0
版权所有©上海东软载波微电子有限公司
-
-
-
236/309
http://www.essemi.com
HR8P506_Datasheet_C
RTC 年月日周寄存器(RTC_YMDW)
偏移地址:14H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
Y80
Y40
15
14
保留
Y20
28
Y10
27
26
Y08
Y04
25
Y02
24
23
22
21
保留
Y01
20
MN10
19
18
17
16
MN08
MN04
MN02
MN01
13
12
11
10
9
8
7
6
5
4
3
2
1
0
D20
D10
D08
D04
D02
D01
保留
W06
W05
W04
W03
W02
W01
W00
Y80
bit31
R/W
80 年位
Y40
bit30
R/W
40 年位
Y20
bit29
R/W
20 年位
Y10
bit28
R/W
10 年位
Y08
bit27
R/W
8 年位
Y04
bit26
R/W
4 年位
Y02
bit25
R/W
2 年位
Y01
bit24
R/W
1 年位
-
bit23-21
-
MN10
bit20
R/W
10 月位
MN08
bit19
R/W
8 月位
MN04
bit18
R/W
4 月位
MN02
bit17
R/W
2 月位
MN01
bit16
R/W
1 月位
-
bit15-14
-
D20
bit13
R/W
20 日位
D10
bit12
R/W
10 日位
D08
bit11
R/W
8 日位
D04
bit10
R/W
4 日位
D02
bit9
R/W
2 日位
D01
bit8
R/W
1 日位
-
bit7
-
W06
bit6
R/W
星期六位
W05
bit5
R/W
星期五位
W04
bit4
R/W
星期四位
W03
bit3
R/W
星期三位
W02
bit2
R/W
星期二位
W01
bit1
R/W
星期一位
W00
bit0
R/W
星期日位
-
-
-
RTC 中断使能寄存器(RTC_IE)
偏移地址:18H
V1.0
版权所有©上海东软载波微电子有限公司
237/309
http://www.essemi.com
HR8P506_Datasheet_C
复位值:00000000_00000000_00000000_10000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
保留
15
14
13
12
11
10
保留
—
9
8
WALE
DALE
7
—
bit31-10
WALE
bit9
—
bit7-5
—
bit3
HORIE
bit2
3
2
1
0
DAYIE
HORIE
MINIE
SCDIE
19
18
17
16
—
日闹钟使能位
0:禁止
1:使能
R/W
DAYIE
4
MONIE
R/W
bit8
bit4
5
周闹钟使能位
0:禁止
1:使能
DALE
MONIE
6
保留
—
R/W
月中断使能位
0:禁止
1:使能
R/W
日中断使能位
0:禁止
1:使能
R/W
时中断使能位
0:禁止
1:使能
MINIE
bit1
R/W
分中断使能位
0:禁止
1:使能
SCDIE
bit0
R/W
秒中断使能位
0:禁止
1:使能
RTC 中断标志寄存器(RTC_IF)
偏移地址:1CH
复位值:00000000_00000000_00000000_10000000B
31
30
29
28
27
26
25
24
23
22
21
20
保留
15
14
13
12
保留
11
10
9
8
WAFG
DAFG
7
—
bit31-10
—
WAFG
bit9
R/W
V1.0
版权所有©上海东软载波微电子有限公司
6
保留
5
4
3
2
1
0
MONIF
DAYIF
HORIF
MINIF
SCDIF
—
周闹钟标志位
0:闹钟事件不匹配
238/309
http://www.essemi.com
HR8P506_Datasheet_C
1:闹钟事件匹配
软件写 1 清除标志位,写 0 无效
DAFG
bit8
R/W
—
bit7-5
—
MONIF
bit4
DAYIF
bit3
HORIF
bit2
MINIF
bit1
SCDIF
bit0
日闹钟标志位
0:闹钟事件不匹配
1:闹钟事件匹配
软件写 1 清除标志位,写 0 无效
—
R/W
月中断标志位(中断周期为每月第一天 00 小时 00
分钟 00 秒)
0:未产生月中断
1:产生月中断
软件写 1 清除标志位,写 0 无效
R/W
日中断标志位(中断周期为每天)
0:未产生日中断
1:产生日中断
软件写 1 清除标志位,写 0 无效
R/W
时中断标志位(中断周期为每小时)
0:未产生小时中断
1:产生小时中断
软件写 1 清除标志位,写 0 无效
R/W
分中断标志位(中断周期为每分钟)
0:未产生分钟中断
1:产生分钟中断
软件写 1 清除标志位,写 0 无效
R/W
秒中断标志位(中断周期为每秒)
0:未产生秒中断
1:产生秒中断
软件写 1 清除标志位,写 0 无效
注:对 RTC_IF 寄存器中的各中断标志位,写 0 无效,写 1 才能清除标志位;读操作时,读取的值为 1 表示有中断
发生。
5. 7. 7
RTC应用说明
暂无特别说明。
5. 8 液晶显示控制器(LCDC)
5. 8. 1
概述
支持 8COM x 28SEG
支持灰度调节功能
支持显示闪烁功能,闪烁频率可调
V1.0
版权所有©上海东软载波微电子有限公司
239/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 8. 2
支持内部偏压电阻可调功能
支持 3 种时钟源选择
结构框图
APB_LCDC
LCD_D1
……
LCD_D6
MUX
LCD_D0
L
C
D
接
口
SEG
COM
LCD控制器
LCD预分频器
LCD时钟源
图 5-51 LCD 驱动模块框图
5. 8. 3
LCD基本设置
配置 LCD 驱动模块的操作步骤如下:
1.
设置 LCD_CON1 寄存器的 SEL,选择 LCD 驱动器。
2.
设置 LCD 工作时钟。
3.
设置 LCD 驱动端口:配置 LCD_CON0 寄存器的 COMS和 LCD_SEL 寄存器的
SEG使能端口的公共端和段功能,及选择偏置模式。设置 GPIO_PxINEB 寄存器,
关闭相应端口的数字输入;设置 GPIO_PxDIR 寄存器,关闭相应端口的数字输出。
4.
初始化 LCD 像素数据寄存器 LCD_Dx。
5.
使能 LCD 驱动模块。
5. 8. 4
LCD偏置电压选择
LCD 支持内部偏置电压和外部偏置电压可选。
LCD_CON0 寄存器的 VLCDEN=0 时,LCD 使用内部偏置电压,内部偏置电压参考源为电
源电压 VDD,可进行如下选择:
1/2 偏置(3 种电压等级:VSS、1/2VBIAS 和 VBIAS)
1/3 偏置(4 种电压等级:VSS、1/3 VBIAS、2/3 VBIAS 和 VBIAS)
1/4 偏置(5 种电压等级:VSS、1/4 VBIAS、2/4 VBIAS、3/4 VBIAS 和 VBIAS)
用户只需设置所需的偏置类型,无需进行各个偏置电压的设置,偏置电压由内部电路自动产
生。
LCD_CON0 寄存器的 VLCDEN=1 时,LCD 使用外部偏置电压,外部偏置电压从管脚
PA2~PA5 输入,这 4 个管脚需配置为模拟管脚。外部偏置电压电阻网络必须与 LCD_CON0
控制寄存器的 BIAS位的偏压类型相匹配。对应于各种偏置电压,PA2~PA5 上的
VLCD1~4 偏置电压输入如下表所示。
V1.0
版权所有©上海东软载波微电子有限公司
240/309
http://www.essemi.com
HR8P506_Datasheet_C
1/2 bias
1/3 bias
1/4 bias
VLCD1(PA2)
1/2 VDD
1/3 VDD
1/4 VDD
VLCD2(PA3)
1/2 VDD
2/3 VDD
2/4 VDD
VLCD3(PA4)
VDD
VDD
3/4 VDD
VLCD4(PA5)
—
—
VDD
表 5-3 LCD 外部偏置电压输入配置表
VDD
VLCD4
VLCD3
VLCD2
VLCD1
图 5-52 1/4 VDD 外部偏置电压参考电路
5. 8. 5
LCD像素对照表
LCD 像素寄存器的各个数值位,与公共端-段的像素点对应关系如下表所示:
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
D6[31]
D6[30]
D6[29]
D6[28]
D6[27]
D6[26]
D6[25]
D6[24]
SEG27
D6[23]
D6[22]
D6[21]
D6[20]
D6[19]
D6[18]
D6[17]
D6[16]
SEG26
D6[15]
D6[14]
D6[13]
D6[12]
D6[11]
D6[10]
D6[9]
D6[8]
SEG25
D6[7]
D6[6]
D6[5]
D6[4]
D6[3]
D6[2]
D6[1]
D6[0]
SEG24
D5[31]
D5[30]
D5[29]
D5[28]
D5[27]
D5[26]
D5[25]
D5[24]
SEG23
D5[23]
D5[22]
D5[21]
D5[20]
D5[19]
D5[18]
D5[17]
D5[16]
SEG22
D5[15]
D5[14]
D5[13]
D5[12]
D5[11]
D5[10]
D5[9]
D5[8]
SEG21
D5[7]
D5[6]
D5[5]
D5[4]
D5[3]
D5[2]
D5[1]
D5[0]
SEG20
D4[31]
D4[30]
D4[29]
D4[28]
D4[27]
D4[26]
D4[25]
D4[24]
SEG19
D4[23]
D4[22]
D4[21]
D4[20]
D4[19]
D4[18]
D4[17]
D4[16]
SEG18
D4[15]
D4[14]
D4[13]
D4[12]
D4[11]
D4[10]
D4[9]
D4[8]
SEG17
D4[7]
D4[6]
D4[5]
D4[4]
D4[3]
D4[2]
D4[1]
D4[0]
SEG16
D3[31]
D3[30]
D3[29]
D3[28]
D3[27]
D3[26]
D3[25]
D3[24]
SEG15
D3[23]
D3[22]
D3[21]
D3[20]
D3[19]
D3[18]
D3[17]
D3[16]
SEG14
D3[15]
D3[14]
D3[13]
D3[12]
D3[11]
D3[10]
D3[9]
D3[8]
SEG13
D3[7]
D3[6]
D3[5]
D3[4]
D3[3]
D3[2]
D3[1]
D3[0]
SEG12
D2[31]
D2[30]
D2[29]
D2[28]
D2[27]
D2[26]
D2[25]
D2[24]
SEG11
V1.0
版权所有©上海东软载波微电子有限公司
241/309
http://www.essemi.com
HR8P506_Datasheet_C
D2[23]
D2[22]
D2[21]
D2[20]
D2[19]
D2[18]
D2[17]
D2[16]
SEG10
D2[15]
D2[14]
D2[13]
D2[12]
D2[11]
D2[10]
D2[9]
D2[8]
SEG9
D2[7]
D2[6]
D2[5]
D2[4]
D2[3]
D2[2]
D2[1]
D2[0]
SEG8
D1[31]
D1[30]
D1[29]
D1[28]
D1[27]
D1[26]
D1[25]
D1[24]
SEG7
D1[23]
D1[22]
D1[21]
D1[20]
D1[19]
D1[18]
D1[17]
D1[16]
SEG6
D1[15]
D1[14]
D1[13]
D1[12]
D1[11]
D1[10]
D1[9]
D1[8]
SEG5
D1[7]
D1[6]
D1[5]
D1[4]
D1[3]
D1[2]
D1[1]
D1[0]
SEG4
D0[31]
D0[30]
D0[29]
D0[28]
D0[27]
D0[26]
D0[25]
D0[24]
SEG3
D0[23]
D0[22]
D0[21]
D0[20]
D0[19]
D0[18]
D0[17]
D0[16]
SEG2
D0[15]
D0[14]
D0[13]
D0[12]
D0[11]
D0[10]
D0[9]
D0[8]
SEG1
D0[7]
D0[6]
D0[5]
D0[4]
D0[3]
D0[2]
D0[1]
D0[0]
SEG0
表 5-4 LCD 像素对照列表
5. 8. 6
LCD工作时钟源
LCD 模块有 3 种工作时钟源可选择:
1. LRC 时钟的 4 分频:支持睡眠模式下工作。
2. LOSC 时钟的 4 分频:支持睡眠模式下工作。
3. PCLK 时钟的 4096 分频:不支持睡眠模式下工作。
通过配置 LCD_CON0 寄存器的 PRS,设置 LCD 工作时钟的预分频比。
5. 8. 7
LCD显示帧频率
LCD 的显示帧频率,与 COM 端口复用模式,工作时钟源频率及其预分频比有关,描述如下:
COMS = 001:帧频率 = 时钟源频率 /(1 × 4 ×(PRS+1)
)
COMS = 010:帧频率 = 时钟源频率 /(1 × 6 ×(PRS+1)
)
COMS = 011:帧频率 = 时钟源频率 /(1 × 8 ×(PRS+1)
)
COMS = 10x:帧频率 = 时钟源频率 /(2 × 2 ×(PRS+1)
)
COMS = 11x:帧频率 = 时钟源频率 /(1 × 3 ×(PRS+1)
)
5. 8. 8
LCD闪烁功能
配置 LCD_CON0 寄存器的 FLIK 位,可使能 LCD 显示闪烁功能。配置闪烁时间寄存器
LCD_TWI,可设置 LCD 闪烁时的点亮时间和熄灭时间。在使能闪烁功能之前,应先设置
LCD_TWI 寄存器。
5. 8. 9
LCD低功耗模式
配置 LCD_CON0 寄存器的 RS,可控制 LCD 内部偏压电阻。偏压电阻越小,显示效
果越好但功耗越大。为了降低功耗同时保证显示效果,提供了 LCD 内部偏压电阻自动切换
功能,用户可以根据实际 LCD 显示效果选择合适的偏压电阻。配置 LCD_CON0 寄存器的
RT,控制电阻切换时间。只当 LCD 配置为偏压电阻自动切换模式时,RT 控制位才有
效。
配置 LCD_CON0 寄存器的 BVS,可控制 LCD 显示灰度,灰度电压越高,显示效果越
V1.0
版权所有©上海东软载波微电子有限公司
242/309
http://www.essemi.com
HR8P506_Datasheet_C
好,但功耗越大。用户可根据实际的 LCD 显示效果和功耗需求,设置合适的显示灰度。
LCD时钟源
32KHZ
LCD工作频率
8KHZ
1帧
sel_com
COM0
COM1
COM2
COM...
COM0
COM1
COM2
COM...
A WAVE
com0
com1
……
comx
fc_en
B WAVE
com0
com1
……
comx
fc_en
注:理论上fc_en正脉宽=占空比*Tlcd工作时钟。(占空比由RT决定,LCD工作时钟为时钟源分
频后时钟)。但由于fc_en正脉宽=T时钟源*N (N=1,2,3...),所以当N不满足整数时,舍去小数取整,
N最小值为1。
图 5-53 快速充放电示意图
5. 8. 10 特殊功能寄存器
LCD 控制寄存器 0(LCD_CON0)
偏移地址:00H
复位值:11110000_00000000_00000000_00000000B
31
30
29
28
27
26
25
15
14
RT
13
24
23
22
21
20
保留
BVS
12
11
RS
10
9
8
BIAS
V1.0
版权所有©上海东软载波微电子有限公司
19
18
17
16
1
0
PRS
7
6
CLK_SEL
5
4
3
WFS
FLIK
VLCDEN
2
COMS
243/309
http://www.essemi.com
HR8P506_Datasheet_C
BVS
bit31-28
R/W
—
bit27-22
—
PRS
RT
bit21-16
bit15-13
LCD 显示灰度控制位(基于 VDD)
0000:VBIAS = VDD/2
0001:VBIAS = VDD× (16/30)
0010:VBIAS = VDD× (17/30)
0011:VBIAS = VDD× (18/30)
0100:VBIAS = VDD× (19/30)
1110:VBIAS = VDD× (20/30)
1101:VBIAS = VDD× (21/30)
1100:VBIAS = VDD× (22/30)
1011:VBIAS = VDD× (23/30)
1010:VBIAS = VDD× (24/30)
1001:VBIAS = VDD× (25/30)
1000:VBIAS = VDD× (26/30)
0111:VBIAS = VDD× (27/30)
0110:VBIAS = VDD× (28/30)
0101:VBIAS = VDD× (29/30)
1111:VBIAS = VDD
—
R/W
LCD 时钟源预分频比选择位
000000 = 1:1
000001 = 1:2
000010 = 1:3
……
111111 = 1:64
R/W
LCD 60k 电阻保持时间选择位
000:1/4 COM 周期
001:1/8 COM 周期
010:1/16 COM 周期
011:1/32 COM 周期
100:1/64 COM 周期
其它:保留
RS
bit12-10
R/W
LCD 内部偏压电阻总和选择位
000:225K 欧姆(1/3 和 1/4 BIAS)
,150K 欧姆(1/2 BIAS)
001:900K 欧姆(1/3 和 1/4 BIAS)
,600K 欧姆(1/2 BIAS)
01X:60K 欧姆(1/3 和 1/4 BIAS)
,40K 欧姆(1/2 BIAS)
100:60K 与 225K 欧姆自动切换(1/3 和 1/4 BIAS)
,
40K 与 150K 欧姆自动切换(1/2 BIAS)
101:60K 与 900K 欧姆自动切换(1/3 和 1/4 BIAS)
,
40K 与 600K 欧姆自动切换(1/2 BIAS)
其它:保留
BIAS
bit9-8
R/W
LCD 偏置选择位
00:1/2 BIAS
V1.0
版权所有©上海东软载波微电子有限公司
244/309
http://www.essemi.com
HR8P506_Datasheet_C
01:1/3 BIAS
10:保留
11:1/4 BIAS
CLK_SEL
WFS
bit7-6
bit5
FLIK
bit4
R/W
LCD 时钟源选择位
00:LRC 时钟的 4 分频(内部时钟 32KHz)
01:LOSC 时钟的 4 分频(外部时钟 32KHz)
10:PCLK 时钟的 4096 分频
11:保留
R/W
LCD 驱动波形类型选择位
0:A 型波形(在每一公共端类型内改变相位)
1:B 型波形(在每一帧边界改变相位)
R/W
LCD 显示闪烁使能位
0:禁止
1:使能
VLCDEN
bit3
R/W
外部偏置电压使能位
0:禁止
1:使能
COMS
bit2-0
R/W
公共端选择位(参考下表)
COMS
COM 端口复用
最大像素数
11X
1/3 (COM2~COM0)
84
10X
1/2 (COM1~COM0)
56
011
1/8 (COM7~COM0)
224
010
1/6 (COM5~COM0)
168
001
1/4 (COM3~COM0)
112
000
—
—
表 5-5 LCD 复用类型列表
LCD 闪烁时间寄存器(LCD_TWI)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
7
6
5
20
19
18
17
16
4
3
2
1
0
保留
15
14
13
12
11
10
TOFF
9
8
TON
—
bit31-16
—
—
TOFF
bit15-8
R/W
LCD 熄灭时间
LCD 闪烁熄灭时间=(TOFF+1)x 0.25 秒
TON
bit7-0
R/W
LCD 点亮时间
LCD 闪烁点亮时间=(TON+1)x 0.25 秒;
V1.0
版权所有©上海东软载波微电子有限公司
245/309
http://www.essemi.com
HR8P506_Datasheet_C
LCD 段使能寄存器(LCD_SEL)
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
保留
15
14
21
20
19
18
17
16
4
3
2
1
0
SEG
13
12
11
10
9
8
7
6
5
SEG
—
bit31-28
—
—
SEG
bit27-0
R/W
LCD 段驱动端口使能位
0:禁止
1:使能
LCD 控制寄存器 1(LCD_CON1)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
4
3
18
17
16
保留
15
14
13
12
11
10
9
8
7
6
5
保留
—
bit31-5
RST
—
—
RST
bit4
W
LCD 驱动模块软件复位
0:读取时始终为 0
1:软件复位
—
bit3-2
—
—
2
保留
SEL
bit1
R/W
LCD,LED 驱动器选择控制位
0: 选择 LCD 驱动器(禁止 LED 驱动器)
1: 禁止 LCD 驱动器(选择 LED 驱动器)
EN
bit0
R/W
LCD 驱动模块使能位
0:禁止
1:使能
1
0
SEL
EN
注 1:LCD 驱动模块软件复位后, LCDC 模块禁止,LCD_CON1 寄存器的 EN=0;
LCD 像素寄存器 0(LCD_D0)
偏移地址:20H
复位值:00000000_00000000_00000000_00000000B
V1.0
版权所有©上海东软载波微电子有限公司
246/309
http://www.essemi.com
HR8P506_Datasheet_C
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
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
D0
15
14
13
12
11
10
9
8
7
D0
D0
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
LCD 像素寄存器 1(LCD_D1)
偏移地址:24H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
D1
15
14
13
12
11
10
9
8
7
D1
D1
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
LCD 像素寄存器 2(LCD_D2)
偏移地址:28H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
D2
15
14
13
12
11
10
9
8
7
D2
D2
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
LCD 像素寄存器 3(LCD_D3)
偏移地址:2CH
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
D3
15
14
13
12
11
10
V1.0
版权所有©上海东软载波微电子有限公司
9
8
7
247/309
http://www.essemi.com
HR8P506_Datasheet_C
D3
D3
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
LCD 像素寄存器 4(LCD_D4)
偏移地址:30H
复位值:00000000_00000000_00000000_00000000B
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
22
21
20
19
18
17
16
6
5
4
3
2
1
0
D4
15
14
13
12
11
10
9
8
7
D4
D4
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
LCD 像素寄存器 5(LCD_D5)
偏移地址:34H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
D5
15
14
13
12
11
10
9
8
7
D5
D5
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
LCD 像素寄存器 6(LCD_D6)
偏移地址:38H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
D6
15
14
13
12
11
10
9
8
7
D6
D6
bit31-0
R/W
像素点亮位
V1.0
版权所有©上海东软载波微电子有限公司
248/309
http://www.essemi.com
HR8P506_Datasheet_C
0:不点亮象素(透明)
1:点亮像素(不透明)
5. 9 数码管显示控制器(LEDC)
5. 9. 1
概述
支持 1~8 个 8 段式共阴极数码管
支持 3 种时钟源选择
5. 9. 2
结构框图
APB_LEDC
LED_D1
MUX
LED_D0
L
E
D
接
口
SEG
COM
LED控制器
LED时钟源
LED预分频器
图 5-54 LED 驱动模块框图
5. 9. 3
LED基本设置
配置 LED 驱动模块的操作步骤如下:
1.
设置 LED_CON1 寄存器的 SEL,选择 LED 驱动器。
2.
设置 LED 工作时钟。
3.
配置 LED_CON0 寄存器的 MUX,选择 LED 一帧刷新的 COM 数。
4.
配置 GPIO_PxFUNCy 为普通 IO,设置 LED 端口为输出端口;设置 COM 端口为大
电流驱动;配置 LED_SEL 寄存器的 COM和 SEG,使能端口的公共端和
段功能。
5.
初始化 LED 像素数据寄存器 LED_Dx。
6.
使能 LED 驱动模块。
5. 9. 4
LED像素对照表
LED 像素寄存器的各个数值位,与公共端-段的像素点对应关系如下表所示:
SEG7
SEG6
SEG5
SEG4
D1 [31]
D1 [30]
D1 [29]
D1 [28]
D1 [23]
D1 [22]
D1 [21]
D1 [15]
D1 [14]
D1 [7]
D1 [6]
SEG2
SEG1
SEG0
D1 [27]
D1 [26]
D1 [25]
D1 [24]
COM7
D1 [20]
D1 [19]
D1 [18]
D1 [17]
D1 [16]
COM6
D1 [13]
D1 [12]
D1 [11]
D1 [10]
D1 [9]
D1 [8]
COM5
D1 [5]
D1 [4]
D1 [3]
D1 [2]
D1 [1]
D1 [0]
COM4
V1.0
版权所有©上海东软载波微电子有限公司
SEG3
249/309
http://www.essemi.com
HR8P506_Datasheet_C
D0 [31]
D0 [30]
D0 [29]
D0 [28]
D0 [27]
D0 [26]
D0 [25]
D0 [24]
COM3
D0 [23]
D0 [22]
D0 [21]
D0 [20]
D0 [19]
D0 [18]
D0 [17]
D0 [16]
COM2
D0 [15]
D0 [14]
D0 [13]
D0 [12]
D0 [11]
D0 [10]
D0 [9]
D0 [8]
COM1
D0 [7]
D0 [6]
D0 [5]
D0 [4]
D0 [3]
D0 [2]
D0[1]
D0[0]
COM0
表 5-6 LED 像素对照列表
5. 9. 5
LED工作时钟源
LED 模块有 3 种模式工作时钟源
1. LRC 时钟的 4 分频:支持睡眠模式下工作。
2. LOSC 时钟的 4 分频:支持睡眠模式下工作。
3. PCLK 时钟的 4096 分频:不支持睡眠模式下工作。
通过配置 LED_CON0 寄存器的 PRS,设置 LED 工作时钟的预分频比。
5. 9. 6
LED工作示意图
LED时 钟源
32KHZ
LED工作频率
8KHZ
1帧
seg
0
COM0
0
COM1
0
COM2
0
COM3
0
COM0
0
COM1
0
COM2
0
COM3
T1
com0
com1
…
…
comx
注 : T1为一个 32kHZ时 钟周期
图 5-55 LED 工作示意图
5. 9. 7
特殊功能寄存器
LED 控制寄存器 0(LED_CON0)
V1.0
版权所有©上海东软载波微电子有限公司
250/309
http://www.essemi.com
HR8P506_Datasheet_C
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
保留
15
14
13
12
11
10
9
8
—
PRS
bit21-16
R/W
—
bit15-8
—
CLK_SEL
bit7-6
R/W
—
bit5-3
—
MUX
7
6
5
bit2-0
4
3
16
1
0
2
保留
CLK_SEL
bit31-22
17
PRS
保留
—
18
MUX
—
LED 时钟源预分频比选择位
000000 = 1:1
000001 = 1:2
000010 = 1:3
……
111111 = 1:64
—
LED 时钟源选择位
00:LRC 时钟的 4 分频(内部时钟 32KHz)
01:LOSC 时钟的 4 分频(外部时钟 32KHz)
10:PCLK 时钟的 4096 分频
11:保留
—
COM 复用选择位
000: COM0 复用
001: COM0~COM1 复用
010: COM0~COM2 复用
011: COM0~COM3 复用
100: COM0~COM4 复用
101: COM0~COM5 复用
110: COM0~COM6 复用
111: COM0~COM7 复用
R/W
LED 段使能寄存器(LED_SEL)
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
7
6
5
20
19
18
17
16
4
3
2
1
0
保留
15
14
13
12
11
10
9
8
SEG
—
SEG
bit31-16
—
bit15-8
R/W
COM
—
LED SEG 段驱动端口使能位
V1.0
版权所有©上海东软载波微电子有限公司
251/309
http://www.essemi.com
HR8P506_Datasheet_C
0:禁止
1:使能
COM
bit7-0
LED COM 端驱动端口使能位
0:禁止
1:使能
R/W
LED 控制寄存器 1(LED_CON1)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
4
3
18
17
16
保留
15
14
13
12
11
10
9
8
7
6
5
保留
—
bit31-5
—
—
RST
bit4
W
LED 驱动模块软件复位
0:读取时始终为 0
1:软件复位
—
bit3-2
—
—
SEL
bit1
EN
bit0
2
保留
RST
R/W
LED,LCD 驱动器选择控制位
0: 禁止 LED 驱动器(选择 LCD 驱动器)
1: 选择 LED 驱动器(禁止 LCD 驱动器)
R/W
LED 驱动模块使能位
0:禁止
1:使能
1
0
SEL
EN
LED 像素寄存器 0(LED_D0)
偏移地址:20H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
5
4
3
2
1
0
D0
15
14
13
12
11
10
9
8
7
6
D0
D0
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
LED 像素寄存器 1(LED_D1)
V1.0
版权所有©上海东软载波微电子有限公司
252/309
http://www.essemi.com
HR8P506_Datasheet_C
偏移地址:24H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
5
4
3
2
1
0
D1
15
14
13
12
11
10
9
8
7
6
D1
D1
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
5. 10 看门狗定时器(WDT)
5. 10. 1 概述
当配置字 CFG_WORD1 配置为“硬件看门狗使能”时,即 CFG_WDTEN 位配置为 1,软
件不可配置 WDT_LOAD 寄存器。上电复位后看门狗立即启动(WDT 使用 32KHz LRC 时钟
计数)
,WDT 载入 CFG_WORD1 配置字中 WDTRL 参数对应的计数初值的 1/4,并进行递
减计数,计数到 0 时,窗口计数器加“1”,并在下一计数时钟到来时,计数器再次载入 WDTRL
参数对应的计数初值的 1/4,并继续递减计数。当窗口计数器计数到 2 时(WDT 累计计数为
WDTRL 的一半)
,
WDT 产生中断标志。当窗口计数器计数到 4(WDT 累计计数等于 WDTRL)
之前,没有在相应的喂狗窗口期进行喂狗动作,WDT 模块将产生复位信号。软件只能读写
WDT_LOCK 、写 WDT_INTCLR,其它 WDT 相关特殊功能寄存器不再可写,只能读取,
读 WDT_LOAD 得到的值为“WDTRL 参数对应的计数初值”
,读 WDT_CON 将返回
“0x0000_000F”。
当配置字 CFG_WORD1 配置为“硬件看门狗禁止”时,即 CFG_WDTEN 位配置为 0,上
电看门狗不启动,但软件可配置看门狗使能,且软件可配置 WDT_LOAD 寄存器。当配置为
“软件看门狗使能”时,即软件配置 WDT_CON 寄存器的 WDTEN 为 1,WDT 计数器载入
WDT_LOAD 寄存器值的 1/4,开始递减计数,当计数到 0 时,窗口计数器加“1”
,并在下
一个计数时钟到来时,计数器再次载入 WDT_LOAD 寄存器值的 1/4,并继续递减计数。当
窗口计数器计数到 2 时(WDT 累计计数为 WDT_LOAD 的一半)
,WDT 产生中断标志。当
窗口计数器计数到 4(WDT 累计计数等于 WDT_LOAD)之前,没有在相应的喂狗窗口期进
行喂狗动作,则 WDT 模块将产生复位信号。配置 WDTCLKS,可以选择计数时钟源;配置
WDT_LOAD 寄存器,可设置计数初值;读取 WDT_VALUE,可得到 WDT 当前计数值。写
入装载值寄存器 WDT_LOAD 时,计数器当前值寄存器被清 0。
WDT 模块支持寄存器写保护,配置寄存器 WDT_LOCK=0x1ACCE551,可去除 WDT 寄存
器的写保护状态,进行被保护寄存器的写操作,否则无法对被保护寄存器写入。
注 1:在 SWD 调试模式下,需要禁止 WDT,否则在调试过程中,WDT 会始终保持工作,可能会产生计数溢出复
位,导致芯片调试异常。
V1.0
版权所有©上海东软载波微电子有限公司
253/309
http://www.essemi.com
HR8P506_Datasheet_C
5. 10. 2 特殊功能寄存器
WDT 计数器装载值寄存器(WDT_LOAD)
偏移地址:00H
复位值:11111111_11111111_11111111_11111111B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
LOAD
15
14
13
12
11
10
9
8
7
LOAD
LOAD
bit31-0
WDT 计数器重载值
计数范围 0x0000_0001~0xFFFF_FFFF。如果为 0,WDT 不计
数。
W
WDT 计数器当前值寄存器(WDT_VALUE)
偏移地址:04H
复位值:11111111_11111111_11111111_11111111B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
VALUE
15
14
13
12
11
10
9
8
7
VALUE
VALUE
bit31-0
WDT 计数器当前值
读取时返回 WDT 计数器的当前计数值
R
WDT 控制寄存器(WDT_CON)
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
CLKS
RSTEN
IE
EN
保留
15
14
13
12
11
10
9
8
7
保留
—
bit31-4
—
—
CLKS
bit3
R/W
WDT 计数时钟选择位
0:PCLK
1:LRC 时钟(约 32KHz)
RSTEN
bit2
R/W
WDT 复位使能位
0:禁止
V1.0
版权所有©上海东软载波微电子有限公司
254/309
http://www.essemi.com
HR8P506_Datasheet_C
1:使能,WDT 计数到 0 时,产生复位信号,将芯片复位
IE
bit1
EN
bit0
R/W
WDT 中断使能位
0:禁止
1:使能,WDT 计数到 0 时,产生中断标志
R/W
WDT 模块使能位
0:禁止
1:使能
注 1:WDT_CON 寄存器中的各个控制位,仅在配置字 CFG_WORD1 的配置位 CFG_WDTEN=0 时才有效。
WDT 中断标志清除寄存器(WDT_INTCLR)
偏移地址:0CH
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
INTCLR
15
14
13
12
11
10
9
8
7
INTCLR
INTCLR
bit31-0
WDT 中断标志清 0 位
对 WDT_INTCLR 寄存器进行任意写操作,WDT 中断标志位
均被清零,计数器重载 WDT_LOAD 寄存器值,继续递减计数
W
WDT 中断标志寄存器(WDT_RIS)
偏移地址:10H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
6
5
4
3
2
1
16
保留
15
14
13
12
11
10
9
8
7
保留
—
bit31-1
WDTIF
—
—
R
WDT 中断标志位
0:未产生中断
1:WDT 计数器计数到 0,产生中断
写寄存器 WDT_INTCLR,可清除 WDT 中断标志位
bit0
0
WDTIF
WDT 访问使能寄存器(WDT_LOCK)
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
V1.0
版权所有©上海东软载波微电子有限公司
25
24
23
22
21
20
19
18
17
16
255/309
http://www.essemi.com
HR8P506_Datasheet_C
保留
15
14
13
12
11
10
9
8
7
6
5
4
保留
—
LOCK
bit31-1
bit0
W
R/W
3
2
1
0
LOCK
对 WDT_LOCK写 0x1ACCE551 时,位 LOCK 为 0;
写其它值时位 LOCK 为 1
WDT 寄存器保护状态位
0:WDT 寄存器处于未保护状态
1:WDT 寄存器处于保护状态
对 WDT_LOCK 寄存器写入 0x1ACCE551,被保护的寄存器处于
未保护状态;写入其它值,处于保护状态
注 1:WDT_LOCK 寄存器为只写 32 位寄存器,其中仅 LOCK 位可读,该寄存器必须使用字操作访问方式。
注 2:WDT_LOCK 保护的寄存器为 WDT_LOAD,WDT_CON,WDT_INTCLR。
V1.0
版权所有©上海东软载波微电子有限公司
256/309
http://www.essemi.com
HR8P506_Datasheet_C
第 6 章 芯片封装图
6. 1 LQFP 48-pin封装图
标号
公制(mm)
英制(inch)
MIN
NOM
MAX
MIN
NOM
MAX
A
-
-
1.60
-
-
0.063
A1
0.05
-
0.15
0.002
-
0.006
A2
1.35
1.40
1.45
0.053
0.055
0.057
c
0.09
-
0.20
0.003
-
0.008
D
8.80
9.00
9.20
0.346
0.354
0.362
D1
6.90
7.00
7.10
0.271
0.275
0.279
E
8.80
9.00
9.20
0.346
0.354
0.362
E1
6.90
7.00
7.10
0.271
0.275
0.279
b
0.17
0.22
0.27
0.006
0.008
0.011
e
0.40
0.50
0.60
0.016
0.02
0.024
L
0.45
0.60
0.75
0.018
0.024
0.029
L1
0.85
0.95
1.05
0.033
0.037
0.041
θ1
0°
3.5°
7°
0°
3.5°
7°
ccc
-
-
0.0813
-
-
0.0032
V1.0
版权所有©上海东软载波微电子有限公司
257/309
http://www.essemi.com
HR8P506_Datasheet_C
6. 2 LQFP 44-pin封装图
标号
公制(mm)
英制(inch)
MIN
NOM
MAX
MIN
NOM
MAX
A
1.45
1.55
1.65
0.057
0.061
0.065
A1
0.015
-
0.21
0.0005
-
0.0083
A2
1.30
1.40
1.50
0.050
0.055
0.060
c1
-
0.127
-
-
0.005
-
D
11.75
12.52
13.30
0.462
0.493
0.524
D1
9.85
9.95
10.05
0.388
0.392
0.396
E
11.75
12.52
13.30
0.462
0.493
0.524
E1
9.85
9.95
10.05
0.388
0.392
0.396
b
0.25
0.30
0.35
0.009
0.012
0.014
e
-
0.8
-
-
0.032
-
L
0.42
-
0.72
0.016
-
0.029
L1
0.95
1.32
1.70
0.037
0.052
0.067
θ
0
-
10°
0
-
10°
V1.0
版权所有©上海东软载波微电子有限公司
258/309
http://www.essemi.com
HR8P506_Datasheet_C
6. 3 QFN 32-pin封装图
V1.0
版权所有©上海东软载波微电子有限公司
259/309
http://www.essemi.com
HR8P506_Datasheet_C
6. 4 SOP 28-pin封装图
标号
公制(mm)
英制(inch)
MIN
NOM
MAX
MIN
NOM
MAX
A
2.30
2.50
2.70
0.090
0.098
0.107
A1
0.10
0.20
0.30
0.003
0.007
0.012
A2
2.10
2.30
2.50
0.082
0.090
0.099
D
17.89
18.09
18.29
0.704
0.712
0.721
E
10.10
10.30
10.50
0.397
0.405
0.414
E1
7.30
7.50
7.70
0.287
0.295
0.304
b
-
0.40
-
-
0.016
-
e
-
1.27
-
-
0.05
-
L
0.75
0.85
0.95
0.029
0.033
0.038
θ
0º
-
8º
0º
-
8º
V1.0
版权所有©上海东软载波微电子有限公司
260/309
http://www.essemi.com
HR8P506_Datasheet_C
附录1
Cortex-M0 内核描述
附录 1.1 Cortex-M0 指令集
Cortex-M0 指令集,基本指令共 56 条,其中 50 条指令为 16 位,6 条指令为 32 位,并有多条
指令可以进行助记符扩展,完成不同功能,如指令运行结果是否影响条件标志位等。
32 位指令是:BL,DSB,DMB,ISB,MRS 和 MSR。
指令中的符号说明:
1)方括号< >,表示括号内的任一种格式的操作数,均可作为指令操作数。
如表示操作数可以是寄存器 Rm,或者立即数#imm。
2)大括号{ },表示括号内的操作数或符号可选。
如:MOV{S},表示指令助记符可以是 MOV 或 MOVS,区分该指令是否影响条件标志位。
{Rd,},表示指令中的目标操作数 Rd 可有可没有,没有时根据不同指令直接确定。
助记符
操作数
描述
影响标志位
ADR
Rd,Label
取 Label 地址到寄存器
-
LDR
Rt,Label
按字读 memory 到 Rt,立即数寻址
-
LDR
Rt,[Rn,]
按字读 memory 到 Rt,带地址偏移寻址
-
LDRB
Rt,[Rn,]
按字节读 memory 到 Rt,0 扩展为 32 位
-
LDRH
Rt,[Rn,]
按半字读 memory 到 Rt,0 扩展为 32 位
-
LDRSB
Rt,[Rn,Rm]
按字节读 memory 到 Rt,符号位扩展
-
LDRSH
Rt,[Rn,Rm]
按半字读 memory 到 Rt,符号位扩展
-
LDM
Rn{!},reglist
批量读 memory 到 reglist,Rn 递增
-
STR
Rt,[Rn,]
按字写 memory,带地址偏移寻址
-
STRB
Rt,[Rn,]
按字节写 memory,0 扩展为 32 位
-
STRH
Rt,[Rn,]
按半字写 memory,0 扩展为 32 位
-
STM
Rn!,reglist
批量写 memory,Rn 递增
-
PUSH
Reglist
寄存器压栈
-
POP
Reglist
寄存器出栈
-
MOV{S}
Rd,
数据传送 Rd=
N,Z 或-
MVNS
Rd,Rm
Rm 按位求反之后传送到 Rd
N,Z
MRS
Rd,spec_reg
读特殊功能寄存器,Rd=spec_reg
-
MSR
Spec_reg,Rm
写特殊功能寄存器,spec_reg=Rm
N,Z,C,V 或-
ADCS
{Rd,}Rn,Rm
带进位加法
N,Z,C,V
ADD{S}
{Rd,}Rn,
加法
N,Z,C,V 或-
RSBS
{Rd,}Rn,#0
算术取反,Rd = 0–Rn
N,Z,C,V
SBCS
{Rd,}Rn,Rm
带借位减法,Rd = Rn–Rm–C
N,Z,C,V
SUB{S}
{Rt,}Rn,
不带借位减法
N,Z,C,V 或-
ANDS
{Rd,}Rn,Rm
按位逻辑与,Rd = Rn&Rm
N,Z
V1.0
版权所有©上海东软载波微电子有限公司
261/309
http://www.essemi.com
HR8P506_Datasheet_C
指令集续
助记符
操作数
描述
影响标志位
ORRS
{Rd,}Rn,Rm
按位逻辑或,Rd = Rn|Rm
N,Z
EORS
{Rd,}Rn,Rm
按位逻辑异或,Rd = Rn^Rm
N,Z
BICS
{Rd,}Rn,Rm
位清除,Rm 为掩码
N,Z
ASRS
{Rd,}Rn,
算术右移
N,Z,C
LSLS
{Rd,}Rn,
逻辑左移
N,Z,C
LSRS
{Rd,}Rn,
逻辑右移
N,Z,C
RORS
{Rd,}Rn,Rm
循环右移
N,Z,C
CMP
{Rn,}
比较
N,Z,C,V
CMN
Rn,Rm
负比较,先将 Rm 取反,再比较
N,Z,C,V
MULS
Rd,Rn,Rm
乘法,结果为 32 位
N,Z
REV
Rd,Rm
按字节反转(32 位大小端数据转换)
-
REV16
Rd,Rm
按半字反转(2 个 16 位大小端数据转换)
-
REVSH
Rd,Rm
低半字反转,按有符号数扩展为 32 位
-
SXTB
Rd,Rm
低字节,按有符号数扩展到 32 位
-
SXTH
Rd,Rm
低半字,按有符号数扩展到 32 位
-
UXTB
Rd,Rm
低字节,零扩展到 32 位
-
UXTH
Rd,Rm
低半字,零扩展到 32 位
-
TST
Rd,Rm
位测试
N,Z
B{cond}
Label
(条件)分支短跳转到 Label 所指处
-
BL
Label
带链接的分支跳转,跳转到 Label 所指处
-
BX
Rm
分支长跳转
-
BLX
Rm
带链接分支长跳转,跳转到 Rm 所指处
-
CPSID
i
屏蔽中断响应,PRIMASK.PM=1
-
CPSIE
i
允许中断响应,PRIMASK.PM=0
-
SVC
#imm
管理调用,产生 SVC 异常
-
DMB
-
数据存储器访问隔离
-
DSB
-
数据同步隔离
-
ISB
-
指令同步隔离
-
SEV
-
触发事件
-
WFE
-
等待事件
-
WFI
-
等待中断
-
BKPT
#imm
断点
-
NOP
-
空操作
-
注 1:指令 CPSID 和 CPSIE,分别用于禁止和允许中断请求,指令操作码相同,只是操作数不同,实际为一条指令。
V1.0
版权所有©上海东软载波微电子有限公司
262/309
http://www.essemi.com
HR8P506_Datasheet_C
附录 1.2 Cortex-M0 内核寄存器
Cortex-M0 内核寄存器如下图所示:
图 6-1 内核寄存器
附录 1.2.1 通用寄存器R0~R12
R0~R12 为 32 位通用寄存器,用于数据操作。
附录 1.2.2 堆栈指针寄存器SP(R13)
Cortex-M0 内核有两个堆栈指针 MSP 和 PSP,但两者不能同时使用,具体使用的堆栈指针与
进程模式有关。在线程模式下,配置 CONTROL 寄存器的 SPSEL 位,可选择当前使用的堆栈
指针。编写指令时,两个堆栈指针均可通过 R13 或 SP 调用,访问当前正在使用的堆栈指针,
也可通过 MRS/MSR 指令访问指定的堆栈指针。
主堆栈指针(MSP)
:或写作 SP_main,主要由操作系统内核,异常/中断服务程序,以及其它
被授权访问的应用程序来使用,芯片复位后缺省使用主堆栈指针。
进程堆栈指针(PSP)
:或写作 SP_process,在线程模式下,用户可选用进程堆栈指针;但在
异常/中断服务程序中不能选用进程堆栈指针。
堆栈指针的最低两位始终是 0,即堆栈总是字(4 个字节)对齐的。
对应用程序,通常只需使用主堆栈指针 MSP,并且 PUSH 和 POP 指令也默认使用 MSP。
堆栈由一块地址连续的存储器空间,和一个栈顶指针组成,实现“先进后出”操作的缓冲区,
常用于在异常/中断处理前后,保存和恢复一些关键寄存器的值。堆栈操作示意图如下:
V1.0
版权所有©上海东软载波微电子有限公司
263/309
http://www.essemi.com
HR8P506_Datasheet_C
压栈保护操作
退栈恢复操作
PUSH
POP
寄存器当前值
寄存器的值被恢复
数据处理
(寄存器的值被破坏)
SP
堆栈存储器
堆栈存储器
图 6-2 堆栈操作示意图
附录 1.2.3 链接寄存器LR(R14)
链接寄存器 LR,也称为寄存器 R14,用于在调用子程序时存储返回地址。例如,当执行 BL 指
令时,硬件电路会自动将下一条指令的地址保存到寄存器 LR。
附录 1.2.4 程序计数器PC(R15)
程序计数器 PC,也称为寄存器 R15。Cortex-M0 内核使用了指令流水线,所以读 PC 时,得
到的值是当前指令的地址加 4。
如果对 PC 进行写操作,会产生程序跳转(但不更新 LR 寄存器)
,新写入的值即为程序跳转目
的地址。Cortex-M0 中的指令至少是半字对齐的,所以 PC 的 LSB 位始终读取为 0。但无论是
直接写 PC 还是使用跳转指令,
都必须保证加载到 PC 的值 LSB 位为 1,
用于表示这是在 Thumb
模式下执行指令,否则会被视为企图转入 ARM 模式,Cortex-M0 内核将产生一个 Fault 异常。
附录 1.2.5 程序状态寄存器xPSR
程序状态寄存器 xPSR,根据其各个状态位的功能,又划分为三个子状态寄存器:应用程序状
态寄存器 APSR,中断服务程序状态寄存器 IPSR,执行程序状态寄存器 EPSR。
通过 MRS/MSR 指令,可对 3 个子状态寄存器进行单独访问,也可以同时访问其中 2 个或 3
个子状态寄存器。寄存器名称 IAP_STAR 表示同时访问 IPSR 和 APSR;寄存器名称 EAPSR
表示同时访问 EPSR 和 APSR;寄存器名称 IEPSR 表示同时访问 IPSR 和 EPSR;寄存器名
称 XPSR 表示同时访问 3 个子状态寄存器。
程序状态寄存器 xPSR 及其 3 个子状态寄存器的状态位划分如下表所示:
31
30
29
28
27:25
24
23:6
5:0
xPSR
N
Z
C
V
Reserved
T
Reserved
Exception Number
APSR
N
Z
C
V
IPSR
EPSR
Reserved
Exception Number
Reserved
Reserved
T
Reserved
应用程序状态寄存器 APSR 中的各个状态位,用于说明指令执行结果,各状态位描述如下:
V1.0
版权所有©上海东软载波微电子有限公司
264/309
http://www.essemi.com
HR8P506_Datasheet_C
N:负数标志。指令执行结果为负数时,标志位 N=1,否则 N=0。
Z:零标志。指令执行结果为零时,标志位 Z=1,否则 Z=0。对比较指令,如果被比较的
两个数相等,则 Z=1。
C:进位或借位标志。
对加法指令,如果执行结果有进位(结果≥232)
,则 C=1,否则 C=0;
对减法指令,如果执行结果无借位(结果≥0)
,则 C=1,否则 C=0;
对移位循环指令,取决于移位到 C 标志的数据位。
V:溢出标志。
两个负数相加,结果为正数(bit=0)时溢出,则 V=1,否则 V=0;
两个正数相加,结果为负数(bit=1)时溢出,则 V=1,否则 V=0;
负数减去正数,结果为正数(bit=0)时溢出,则 V=1,否则 V=0;
正数减去负数,结果为负数(bit=1)时溢出,则 V=1,否则 V=0。
中断服务程序状态寄存器 IPSR 中的状态位,用于表示正在处理的异常/中断号,目前正在执行
异常/中断服务程序;如果 IPSR=0,则表示目前是线程模式,未进行异常/中断处理。
执行程序状态寄存器 ESPR 中的 T 状态位,用于表示处理器是否处于 Thumb 模式。由于
Cortex-M0 处理器只支持 Thumb 模式,T 状态位应该始终为 1,如果将 T 位写为 0,会产生
HardFault 异常。使用 MRS 指令读取寄存器 EPSR 时,返回值为 0;如果使用 MSR 指令向
EPSR 写数据,写操作会被忽略。
附录 1.2.6 异常/中断屏蔽寄存器PRIMASK
异常/中断屏蔽寄存器 PRIMASK,可用于处理器屏蔽所有的异常/中断处理。
PRIMASK
31:1
0
Reserved
PM
当屏蔽位 PM=1 时,禁止处理器响应所有可屏蔽异常/中断,不可屏蔽中断 NMI 除外。当 PM=0
时,不影响处理器对异常/中断的正常响应。
可以使用 MRS 和 MSR 指令访问 PRIMASK 寄存器,还可以使用专用的 CPSID 和 CPSIE 指
令来设置寄存器中的 PM 位。
附录 1.2.7 控制寄存器CONTROL
控制寄存器 CONTROL,可用于在线程模式下,选择所使用的堆栈指针。
CONTROL
31:2
1
0
Reserved
SPSEL
Reserved
当堆栈指针选择位 SPSEL=0 时,选择 MSP(SP_main)作为当前堆栈指针;当 SPSEL=1 时,
选择 PSP(SP_process)作为当前堆栈指针。
在异常/中断处理模式下,总是使用 MSP 作为堆栈指针,SPSEL=0,且只读,不可写;处理器
硬件电路会在异常/中断处理程序入口和返回时,对 SPSEL 位进行更新,确保进入异常/中断处
V1.0
版权所有©上海东软载波微电子有限公司
265/309
http://www.essemi.com
HR8P506_Datasheet_C
理程序后,使用 MSP 作为堆栈指针,并在返回时恢复线程模式下的选择。在线程模式下,可
配置 SPSEL,选择当前使用的堆栈指针。
通过 MRS/MSR 指令可访问两个的堆栈指针。在修改 SPSEL 位的指令后,需立即执行 ISB(指
令同步隔离)指令,确保在 SPSEL 位修改完成,新的堆栈指针生效后,才会执行后续其它指
令。
V1.0
版权所有©上海东软载波微电子有限公司
266/309
http://www.essemi.com
HR8P506_Datasheet_C
附录2
电气特性
附录 2.1 参数特性表
附录 2.1.1 芯片工作条件
最大标称值
参数
符号
条件
VDD
VSS=0V
-0.3 ~ 7.5
V
管脚输入电压
VIN
VSS=0V
-0.3 ~ VDD + 0.3
V
管脚输出电压
VOUT
VSS=0V
-0.3 ~ VDD + 0.3
V
VDD 管脚最大输入电流
IMAXVDD
VDD=5.0V,25℃
100
mA
VSS 管脚最大输出电流
IMAXVSS
VDD=5.0V,25℃
120
mA
TSTG
-
-55 ~ 125
℃
电源电压
芯片存储温度
标称值
单位
注 1:上述最大标称值参数为芯片工作条件的极限参数范围,超出该范围,可能会导致芯片永久性物理损坏;
注 2:芯片需在正常工作条件下,才能保证持续稳定运行,对芯片的正常工作条件,参见下面的表格所述。
芯片工作条件表
参数
符号
工作条件
最小值
最大值
单位
芯片工作温度
TOPR
-
-40
85
℃
芯片工作电压
VDD
-
2.2
5.5
V
AHB 总线频率
FHCLK
-
0
48
MHz
APB 总线频率
FPCLK
-
0
48
MHz
芯片功能模块工作电压范围表
参数
ADC 工作电压
LCD 工作电压
符号
VADC
VLCD
V1.0
版权所有©上海东软载波微电子有限公司
工作温度
VDD 电压
备注
2.2~5.5V
正向参考电压为 VDD 或内部
VREFP 1.8V
2.8~5.5V
正向参考电压为内部 VREFP
2.6V
2.2~5.5V
-
-40 ~ 85℃
-40 ~ 85℃
267/309
http://www.essemi.com
HR8P506_Datasheet_C
附录 2.1.2 芯片特性参数测量方法
芯片功耗参数测量方法
VDD
A
VDD
+
V
-
HR8P506
VSS
DC电源
图 6-3 芯片功耗测量连接示意图
芯片 IO 端口参数测量方法
I
I
+
A
IO端口(输出低电平)
-
-
IO端口(输出高电平)
+
+
+
V
DC电源
A
-
V
DC电源
HR8P506
-
HR8P506
测量VOH/IOH
测量VOL/IOL
图 6-4 芯片 IO 端口输出特性参数测量连接示意图
附录 2.1.3 芯片功耗特性
芯片功耗特性参数表
参数
符号
最小值
典型值
最大值
单位
芯片供电电压
VDD
2.2
-
5.5
V
-40℃ ~ 85℃
μA
25℃,上电复位,VDD =
5V,所有的 I/O 端口输入
低电平,MRSTN=0。
μA
25℃,VDD = 5V, BOR
不使能,WDT 不使能,
RTC 不使能,ADC buffer
被 bypass,所有 I/O 端口
输出固定电平,无负载。
mA
25℃,VDD = 5V, BOR
不使能,WDT 不使能,
RTC 不使能,ADC buffer
被 bypass,所有 I/O 端口
输出固定电平,无负载;
芯片静态电流
深度睡眠模式
下芯片电流
浅睡眠模式下
芯片电流
IDD
IPD1
IPD2
V1.0
版权所有©上海东软载波微电子有限公司
-
-
-
300
5
1.2
-
-
-
工作条件
268/309
http://www.essemi.com
HR8P506_Datasheet_C
系统主时钟为内部
16MHz RC 时钟。
-
IPD3
1.4
-
IOP1
3.5
-
-
mA
25℃,VDD = 5V, BOR
不使能,WDT 不使能,
RTC 不使能,ADC buffer
被 bypass,所有 I/O 端口
输出固定电平,无负载;
系统主时钟为外部
20MHz HS 时钟。
mA
25℃,VDD = 5V,BOR
使能,WDT 使能,外设模
块均工作,所有 I/O 端口
输出固定电平,无负载,
7816 通讯时钟管脚,作为
普通 I/O,无时钟输出,
ADC 使用内部 VREFP 作
为参考电压;系统主时钟
为内部 16MHz RC 时钟。
正常运行模式
芯片电流
-
IOP2
4.3
-
mA
25℃,VDD = 5V,BOR
使能,WDT 使能,外设模
块均工作,所有 I/O 端口
输出固定电平,无负载,
7816 通讯时钟管脚,作为
普通 I/O,无时钟输出,
ADC 使用内部 VREFP 作
为参考电压;系统主时钟
为外部 16MHz HS 时钟。
芯片功能模块功耗特性参数表
参数
符号
最小值
典型值
最大值
单位
工作条件
外部振荡器 XTAL
16MHz 电流
IXTAL
-
1.0
-
mA
25℃,VDD = 5V
内部高速时钟 HRC
电流
IHRC
-
0.2
-
mA
25℃,VDD = 5V
BOR 模块电流
IBOR
-
0.3
-
μA
25℃,VDD = 5V
LVD 模块电流
ILVD
-
0.3
-
μA
25℃,VDD = 5V
WDT 模块电流
IWDT
-
0.2
-
μA
25℃,VDD = 5V
ADC 模块电流
IADC1
-
850
-
μA
25℃,VDD = 5V,ADC 转
换时钟频率为 500KHz,内
V1.0
版权所有©上海东软载波微电子有限公司
269/309
http://www.essemi.com
HR8P506_Datasheet_C
部 VREFP 作为正向参考电
压
VREFP 模块电流
IADC2
-
350
-
μA
25℃,VDD = 5V,ADC 转
换时钟频率为 500KHz,
VDD 作为正向参考电压
IVREFP
-
500
-
μA
25℃,VDD = 5V
LCDC 模块电流
ILCDC
-
25
-
μA
25℃,VDD = 5V,1/4 偏
置,帧频率 64Hz,内部偏
压电阻为 60K 与 900K 欧姆
自动切换,60K 欧姆电阻保
持时间为 1/4COM 周期,
无外接 LCD 屏
RTC 模块电流
IRTC
-
0.5
-
μA
25℃,VDD = 5V,RTC 时
钟源为外部 32.768KHz 振
荡器,精确计时模式
T16N 模块电流
IT16N
-
80
-
μA
25℃,VDD = 5V,定时器
模式,计数时钟为 16MHz
T32N 模块电流
IT32N
-
80
-
μA
25℃,VDD = 5V,定时器
模式,计数时钟为 16MHz
UART 模块电流
IUART
-
100
-
μA
25℃,VDD = 5V,通讯波
特率为 9600bps
EUART 模块电流
IEUART
-
100
-
μA
25℃,VDD = 5V,通讯波
特率为 9600bps
μA
25℃,VDD = 5V,主控模
式,通讯速率为 1MHz,数
据帧发送间隔为 32 个通讯
时钟周期
25℃,VDD = 5V,主控模
式,通讯速率为 400KHz,
数据帧传输间隔为 15 个通
讯时钟周期
SPI 模块电流
ISPI
-
50
-
II2C
-
50
-
μA
FLASH 编程电流
IPROG
-
-
4
mA
FLASH 擦除电流
IERAS
-
-
4
mA
I2C 模块电流
-40~85℃,VDD = 5V
附录 2.1.4 芯片IO端口特性
芯片输入端口特性表
V1.0
版权所有©上海东软载波微电子有限公司
270/309
http://www.essemi.com
HR8P506_Datasheet_C
芯片工作温度范围:-40℃ ~ 85℃
参数
符号
最小值
典型值
最大值
单位
I/O 端口输入高电平
VIH1
0.8VDD
-
VDD
V
I/O 端口输入低电平
VIL1
VSS
-
0.2VDD
V
主复位信号,输入高电平
VIH
0.8VDD
-
VDD
V
主复位信号,输入低电平
VIL
VSS
-
0.2VDD
V
IO 端口施密特迟滞窗口
VHYST
-
0.8
-
V
VDD = 5.0V
I/O 端口输入漏电流
IIL
-
-
1
μA
VDD = 5.0V
(端口高阻状态)
IO 端口弱上拉电阻
RWPU
35
45
60
kΩ
VDD = 5.0V
Vpin = VSS
IO 端口弱下拉电阻
RWPD
25
35
50
kΩ
VDD = 5.0V
Vpin = VDD
测试条件
2.2V≤VDD≤5.5V
芯片输出端口(PA0~PA5,PA14~PA31,PB0~PB13)特性表
芯片工作温度范围:-40℃ ~ 85℃
参数
符号
最小值
典型值
最大值
I/O 端口(普通驱动)输出
高电平
IOH1
-5.0
-
-
I/O 端口(大电流驱动)输
出高电平
IOH2
-8.0
-
-
I/O 端口(普通驱动)输出
低电平
IOL1
6
-
-
I/O 端口(大电流驱动)输
出低电平
IOL2
10
-
单位
测试条件
mA
VDD = 5.0V
VOH = 4.6V
mA
VDD = 5.0V
VOL = 0.4V
单位
测试条件
mA
VDD = 5.0V
VOH = 4.6V
mA
VDD = 5.0V
VOL = 0.4V
-
芯片输出端口(PA6~PA13)特性表
芯片工作温度范围:-40℃ ~ 85℃
参数
符号
最小值
典型值
最大值
I/O 端口(普通驱动)输出
高电平
IOH1
-3.5
-
-
I/O 端口(大电流驱动)输
出高电平
IOH2
-4.5
-
-
I/O 端口(普通驱动)输出
低电平
IOL1
10
-
-
I/O 端口(大电流驱动)输
出低电平
IOL2
V1.0
版权所有©上海东软载波微电子有限公司
40
-
-
271/309
http://www.essemi.com
HR8P506_Datasheet_C
附录 2.1.5 芯片系统时钟特性
系统时钟规格表
参数
符号
最小值
典型值
最大值
单位
系统时钟频率
FOSC
-
-
48M
Hz
系统时钟周期
TOSC
20.8
-
-
ns
机器周期
Tinst
41.6
-
-
ns
外部时钟高电平和
低电平时间
TOSL,TOSH
20
-
-
ns
外部时钟边沿上升
和下降时间
TOSR,TOSF
-
-
8
ns
测试条件
-40℃ ~ 85℃
2.2V≤VDD≤5.5V
附录 2.1.6 芯片功能模块特性
ADC 模块特性表
参数名称
符号
最小值
典型值
最大值
单位
RES
-
-
12
bit
VADVREF
1.8
-
VDD
V
模拟电压输入范围
VIN
VSS
-
VADVREF
V
输入电容
CIN
-
40
-
pF
模拟通道推荐输入电阻
RIN
-
-
10k
Ω
TAD1
1
-
-
μs
TAD2
0.5
-
-
μs
AD 转换时间(不包括采
样时间)
TCONV
-
14
-
TAD
差分线性度
DNL
-
±1
±2
LSB
VOFFSET
-
2
4
LSB
分辨率
参考电压范围
AD 转换时钟周期
失调误差
测试条件
见备注
-40℃~85℃
注 1:该参数均为设计规格,未经过实际芯片测试;设计条件为-40℃~85℃。
注 2:TAD1 为 ADC 使用内部 VREFP 作为参考电压时的 AD 转换时钟周期;
TAD2 为 ADC 使用其工作电压或外部 AVREFP 作为参考电压时的 AD 转换时钟周期。
ADC 转换时钟源选择表
A/D 时钟源
选择
系统时钟工作频率(Hz)
(VREFP=2’b01 或 V2’b10,使用内部 VREFP 作为正向参考电压)
48M
32M
16M
4M
FPCLK
不推荐使用
不推荐使用
不推荐使用
不推荐使用
FPCLK /2
不推荐使用
不推荐使用
不推荐使用
不推荐使用
FPCLK /4
不推荐使用
不推荐使用
不推荐使用
TADCLK = 1us
V1.0
版权所有©上海东软载波微电子有限公司
272/309
http://www.essemi.com
HR8P506_Datasheet_C
A/D 时钟源
选择
系统时钟工作频率(Hz)
(VREFP=2’b01 或 V2’b10,使用内部 VREFP 作为正向参考电压)
48M
32M
16M
4M
FPCLK /8
不推荐使用
不推荐使用
不推荐使用
TADCLK = 2us
FPCLK /16
不推荐使用
不推荐使用
TADCLK = 1us
TADCLK = 4us
FPCLK /32
不推荐使用
TADCLK = 1us
TADCLK = 2us
TADCLK = 8us
FPCLK /64
TADCLK = 1.3us
TADCLK = 2us
TADCLK = 4us
TADCLK = 16us
FPCLK /256
TADCLK = 5.3us
TADCLK = 8us
TADCLK = 16us
TADCLK = 64us
FLRC
TADCLK = 31us
TADCLK = 31us
TADCLK = 31us
TADCLK = 31us
A/D 时钟源
选择
系统时钟工作频率(Hz)
(VREFP=2’b00 或 V2’b11,使用 VDD,或外部 AVREFP 作为正向参考电压)
48M
32M
16M
4M
FPCLK
不推荐使用
不推荐使用
不推荐使用
不推荐使用
FPCLK /2
不推荐使用
不推荐使用
不推荐使用
TADCLK = 0.5us
FPCLK /4
不推荐使用
不推荐使用
不推荐使用
TADCLK = 1us
FPCLK /8
不推荐使用
不推荐使用
TADCLK = 0.5us
TADCLK = 2us
FPCLK /16
不推荐使用
TADCLK = 0.5us
TADCLK = 1us
TADCLK = 4us
FPCLK /32
TADCLK = 0.67us
TADCLK = 1us
TADCLK = 2us
TADCLK = 8us
FPCLK /64
TADCLK = 1.3us
TADCLK = 2us
TADCLK = 4us
TADCLK = 16us
FPCLK /256
TADCLK = 5.3us
TADCLK = 8us
TADCLK = 16us
TADCLK = 64us
FLRC
TADCLK = 31us
TADCLK = 31us
TADCLK = 31us
TADCLK = 31us
ADC 内部参考电压特性表
参数
符号
最小值
典型值
最大值
单位
测试条件
ADC 内部参考电压 VREF
VREF
-
1.8/2.6
-
V
25℃,VDD=5V
内部时钟源特性表
参数
HRC 时钟频率
HRC 起振时间
LRC 时钟频率
符号
最小值
典型值
最大值
单位
15.84
16
16.16
MHz
25℃,
VDD=2.2V~5.5V
15.52
16
16.48
MHz
-40℃~85℃,
VDD=2.2V~5.5V
-
30
-
us
见备注
28.8
32
35.2
KHz
25℃,
VDD=2.2V~5.5V
12.8
32
51.2
KHz
-40℃~85℃,
VDD=2.2V~5.5V
FHRC
THRC
FLRC
V1.0
版权所有©上海东软载波微电子有限公司
测试条件
273/309
http://www.essemi.com
HR8P506_Datasheet_C
LRC 起振时间
-
TLRC
-
800
us
见备注
注:THRC 和 TLRC 均为设计规格,未经过实际芯片测试;设计条件为-40℃~85℃。
PLL 锁相环特性表
参数
时钟源
选择为
32KHz
时钟源
选择为
4MHz
符号
最小值
典型值
最大值
单位
FPLLI1
25
32
38
KHz
FPLLO1
25.6
32.768
38.912
FPLLO2
38.4
49.152
58.368
PLL 锁频时间
TLOCK1
-
-
120
us
PLL 输入时钟频率
FPLLI2
3.2
4
4.8
MHz
FPLLO3
25.6
32
38.4
FPLLO4
38.4
48
57.6
TLOCK2
-
-
2.4
PLL 输入时钟频率
PLL 倍频输出时钟频率
PLL 倍频输出时钟频率
PLL 锁频时间
MHz
MHz
ms
测试条件
-40~85℃
见备注
-40~85℃
见备注
注:PLL 的锁频时间 TLOCK1 和 TLOCK2 均为设计规格,未经过实际芯片测试;设计条件为-40~85℃。
BOR 模块特性表
CFG_BORV
最小值
典型值
最大值
单位
00
-
3.7
-
V
01
-
2.5
-
V
10
-
2.1
-
V
11
-
-
-
V
测试条件
-40~85℃
注:当 CFG_BORV=11 时,BOR 电压点由寄存器 SCU_SOFTCFG 的 BORV进行设置,具体见
该寄存器的描述,由软件选择的各 BOR 电压点为设计规格,未经过批量芯片测试,设计条件为-40~85℃。
LVD 模块特性表
最小值
典型值
最大值
单位
0000
-
2.0
-
V
0001
-
2.1
-
V
0010
-
2.2
-
V
0011
-
2.4
-
V
0100
-
2.6
-
V
0101
-
2.8
-
V
0110
-
3.0
-
V
0111
-
3.6
-
V
LVD_VS
VDD 下降,
LVDO 低电压
状态标志置 1
V1.0
版权所有©上海东软载波微电子有限公司
测试条件
-40~85℃
274/309
http://www.essemi.com
HR8P506_Datasheet_C
1000
-
4.0
-
V
1001
-
4.6
-
V
1010
-
2.3
-
V
LVD 电压检测迟滞窗口
-
40
-
mV
-40~85℃
附录 2.2 参数特性图
本节中所列图示未经过量产测试,仅作为设计参考之用。其中部分图示中所列的数据已超出指
定的操作范围,此类信息也仅供参考,芯片只保证在指定的范围内正常工作。
附录 2.2.1 芯片功耗特性
芯片深度睡眠模式电流随电压-温度变化特性图(WDT,BOR 不使能,RTC 不使能,
ADC buffer 被 bypass,所有 I/O 端口输出固定电平,无负载)
20
18
16
14
12
-40℃
25℃
85℃
10
8
6
4
2
0
2.5
3.3
5.0
5.5
芯片浅睡眠模式电流随电压-温度变化特性图(WDT,BOR 不使能,RTC 不使能,ADC
buffer 被 bypass,所有 I/O 端口输出固定电平,无负载;系统主时钟为内部 HRC 16MHz
时钟)
V1.0
版权所有©上海东软载波微电子有限公司
275/309
http://www.essemi.com
HR8P506_Datasheet_C
1.6
1.4
Ipd2(mA)
1.2
1.0
-40℃
25℃
85℃
0.8
0.6
0.4
0.2
0.0
2.5
3.3
5.0
5.5
VDD(V)
芯片运行模式电流随电压-温度变化特性图(WDT,BOR 使能,外设模块均工作,所有
I/O 端口输出固定电平,无负载,7816 通讯时钟管脚作为普通 I/O,无时钟输出,ADC
使用内部 VREFP 作为正向参考电压;系统主时钟为内部 HRC 16MHz 时钟)
4.0
3.5
Iop1(mA)
3.0
2.5
-40℃
25℃
85℃
2.0
1.5
1.0
0.5
0.0
2.5V
3.5V
5.0V
5.5V
VDD(V)
芯片运行模式电流随电压-系统时钟频率变化特性图(WDT,BOR 使能,外设模块均工
作,所有 I/O 端口输出固定电平,无负载,7816 通讯时钟管脚作为普通 I/O,无时钟输
出,ADC 使用内部 VREFP 作为正向参考电压;室温 25℃)
V1.0
版权所有©上海东软载波微电子有限公司
276/309
http://www.essemi.com
HR8P506_Datasheet_C
8.0
7.0
Iop2(mA)
6.0
PLL
HRC
HRC
HRC
HRC
HRC
HRC
LRC
5.0
4.0
3.0
2.0
48MHz
16MHz
8MHz
4MHz
2MHz
1MHz
125KHz
32KHz
1.0
0.0
2.5V
3.5V
5.0V
5.5V
VDD(V)
注 1:系统时钟为 PLL 48MHz 时,PLL 的输入时钟源为内部 HRC 时钟;
附录 2.2.2 芯片IO端口输入特性
I/O 端口信号输入特性图(室温 25℃)
IO端口输入施密特窗口特性
Vi(V)
4.0
3.5
3.0
输入高电平
2.5
2.0
1.5
施密特窗口
VIHth
VILth
输入低电平
1.0
0.5
0.0
2.5
3.5
5.0
5.5
VDD(V)
注 1:VIHth 为施密特窗口的上阈值电平,大于该阈值的输入电平为高;
注 2:VILth 为施密特窗口的下阈值电平,小于该阈值的输入电平为低;
注 3:VIHth 和 VILth 之间为施密特窗口,在窗口内的输入电平不确定,可能为高或低;
I/O 端口最大输入低电平随电压-温度变化特性图
V1.0
版权所有©上海东软载波微电子有限公司
277/309
http://www.essemi.com
HR8P506_Datasheet_C
3.5
VILmax(V)
3
2.5
-40℃
25℃
85℃
2
1.5
1
0.5
2.5
3.5
5.0
5.5
VDD(V)
I/O 端口最小输入高电平随电压-温度变化特性图
2.5
VIHmin(V)
2.1
-40℃
25℃
85℃
1.7
1.3
0.9
0.5
2.5
3.5
5.0
5.5
VDD(V)
I/O 端口弱上拉电阻随电压-温度变化特性图
120.00
Rwpu(kΩ)
100.00
80.00
-40℃
25℃
85℃
60.00
40.00
20.00
0.00
2.5
3.5
5.0
5.5
VDD(V)
I/O 端口弱下拉电阻随电压-温度变化特性图
V1.0
版权所有©上海东软载波微电子有限公司
278/309
http://www.essemi.com
HR8P506_Datasheet_C
120.00
100.00
Rwpd(kΩ)
80.00
-40℃
25℃
85℃
60.00
40.00
20.00
0.00
2.5
3.5
5.0
5.5
VDD(V)
附录 2.2.3 芯片IO端口输出特性(普通驱动,PA6~PA13 端口除外)
VOH vs IOH@VDD=2.5V(普通驱动端口)
VDD=2.5V
IOH(mA)
-40℃
25℃
85℃
7
6
5
4
3
2
1
0
0
0.5
1
1.5
2
2.5
3
VOH(V)
VOL vs IOL@VDD=2.5V(普通驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
279/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=2.5V
-40℃
25℃
85℃
8
7
IOL(mA)
6
5
4
3
2
1
0
0.0
0.5
1.0
1.5
2.0
2.5
3.0
VOL(V)
VOH vs IOH@VDD=3.5V(普通驱动端口)
VDD=3.5V
-40℃
25℃
85℃
25
IOH(mA)
20
15
10
5
0
0
1
2
3
4
VOH(V)
VOL vs IOL@VDD=3.5V(普通驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
280/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=3.5V
25℃
-40℃
85℃
25
IOL(mA)
20
15
10
5
0
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
VOL(V)
VOH vs IOH@VDD=5.0V(普通驱动端口)
VDD=5.0V
-40℃
25℃
85℃
IOH(mA)
40
30
20
10
0
0
1
2
3
4
5
6
VOH(V)
VOL vs IOL@VDD=5.0V(普通驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
281/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=5.0V
-40℃
25℃
85℃
35
30
IOL(mA)
25
20
15
10
5
0
0.0
1.0
2.0
3.0
4.0
5.0
6.0
VOL(V)
VOH vs IOH@VDD=5.5V(普通驱动端口)
VDD=5.5V
IOH(mA)
-40℃
25℃
85℃
50
45
40
35
30
25
20
15
10
5
0
0
1
2
3
4
5
6
VOH(V)
VOL vs IOL@VDD=5.5V(普通驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
282/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=5.5V
-40℃
25℃
85℃
IOL(mA)
40
35
30
25
20
15
10
5
0
0.0
1.0
2.0
3.0
4.0
5.0
6.0
VOL(V)
附录 2.2.4 芯片IO端口输出特性(大电流驱动,PA6~PA13 端口除外)
VOH vs IOH@VDD=2.5V(大电流驱动端口)
VDD=2.5V
-40℃
25℃
85℃
10
IOH(mA)
8
6
4
2
0
0
0.5
1
1.5
2
2.5
VOH(V)
VOL vs IOL@VDD=2.5V(大电流驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
283/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=2.5V
-40℃
25℃
85℃
14
12
IOL(mA)
10
8
6
4
2
0
0.0
0.5
1.0
1.5
2.0
2.5
VOL(V)
VOH vs IOH@VDD=3.5V(大电流驱动端口)
VDD=3.5V
-40℃
25℃
85℃
35
30
IOH(mA)
25
20
15
10
5
0
0
1
2
3
4
VOH(V)
VOL vs IOL@VDD=3.5V(大电流驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
284/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=3.5V
-40℃
25℃
85℃
40
IOL(mA)
35
30
25
20
15
10
5
0
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
VOL(V)
VOH vs IOH@VDD=5.0V(大电流驱动端口)
VDD=5.0V
-40℃
25℃
85℃
60
IOH(mA)
50
40
30
20
10
0
0
1
2
3
4
5
6
VOH(V)
VOL vs IOL@VDD=5.0V(大电流驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
285/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=5.0V
-40℃
25℃
85℃
70
60
IOL(mA)
50
40
30
20
10
0
0.0
1.0
2.0
3.0
4.0
5.0
6.0
5
6
VOL(V)
VOH vs IOH@VDD=5.5V(大电流驱动端口)
VDD=5.5V
-40℃
25℃
85℃
70
60
IOH(mA)
50
40
30
20
10
0
0
1
2
3
4
VOH(V)
VOL vs IOL@VDD=5.5V(大电流驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
286/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=5.5V
-40℃
25℃
85℃
70
60
IOL(mA)
50
40
30
20
10
0
0.0
1.0
2.0
3.0
4.0
5.0
6.0
VOL(V)
附录 2.2.5 芯片IO端口输出特性(普通驱动,PA6~PA13 端口)
VOH vs IOH@VDD=2.5V(普通驱动端口)
VDD=2.5V
-40℃
25℃
85℃
7
6
IOH(mA)
5
4
3
2
1
0
0
0.5
1
1.5
2
2.5
VOH(V)
VOL vs IOL@VDD=2.5V(普通驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
287/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=2.5V
-40℃
25℃
85℃
1.0
1.5
2.0
12
IOL(mA)
10
8
6
4
2
0
0.0
0.5
2.5
VOL(V)
VOH vs IOH@VDD=3.5V(普通驱动端口)
VDD=3.5V
-40℃
25℃
85℃
25
IOH(mA)
20
15
10
5
0
0
0.5
1
1.5
2
2.5
3
3.5
VOH(V)
VOL vs IOL@VDD=3.5V(普通驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
288/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=3.5V
-40℃
25℃
85℃
30
IOL(mA)
25
20
15
10
5
0
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
VOL(V)
VOH vs IOH@VDD=5.0V(普通驱动端口)
VDD=5.0V
-40℃
25℃
85℃
40
35
IOH(mA)
30
25
20
15
10
5
0
0
1
2
3
4
5
6
VOH(V)
VOL vs IOL@VDD=5.0V(普通驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
289/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=5.0V
-40℃
25℃
85℃
50
IOL(mA)
40
30
20
10
0
0.0
1.0
2.0
3.0
4.0
5.0
6.0
VOL(V)
VOH vs IOH@VDD=5.5V(普通驱动端口)
VDD=5.5V
-40℃
25℃
85℃
50
IOH(mA)
40
30
20
10
0
0
1
2
3
4
5
6
VOH(V)
VOL vs IOL@VDD=5.5V(普通驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
290/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=5.5V
25℃
-40℃
85℃
60
IOL(mA)
50
40
30
20
10
0
0.0
1.0
2.0
3.0
4.0
5.0
6.0
VOL(V)
附录 2.2.6 芯片IO端口输出特性(大电流驱动,PA6~PA13 端口)
VOH vs IOH@VDD=2.5V(大电流驱动端口)
VDD=2.5V
-40℃
25℃
85℃
10
IOH(mA)
8
6
4
2
0
0
0.5
1
1.5
2
2.5
VOH(V)
VOL vs IOL@VDD=2.5V(大电流驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
291/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=2.5V
-40℃
25℃
85℃
70
60
IOL(mA)
50
40
30
20
10
0
0.0
0.5
1.0
1.5
2.0
VOL(V)
VOH vs IOH@VDD=3.5V(大电流驱动端口)
VDD=3.5V
-40℃
25℃
85℃
35
30
IOH(mA)
25
20
15
10
5
0
0
0.5
1
1.5
2
2.5
3
3.5
VOH(V)
VOL vs IOL@VDD=3.5V(大电流驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
292/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=3.5V
-40℃
85℃
25℃
180
IOL(mA)
150
120
90
60
30
0
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
VOL(V)
VOH vs IOH@VDD=5.0V(大电流驱动端口)
VDD=5.0V
-40℃
25℃
85℃
60
IOH(mA)
50
40
30
20
10
0
0
1
2
3
4
5
6
VOH(V)
VOL vs IOL@VDD=5.0V(大电流驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
293/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=5.0V
-40℃
25℃
85℃
3.0
4.0
300
250
IOL(mA)
200
150
100
50
0
0.0
1.0
2.0
5.0
VOL(V)
VOH vs IOH@VDD=5.5V(大电流驱动端口)
VDD=5.5V
-40℃
25℃
85℃
70
60
IOH(mA)
50
40
30
20
10
0
0
1
2
3
4
5
6
VOH(V)
VOL vs IOL@VDD=5.5V(大电流驱动端口)
V1.0
版权所有©上海东软载波微电子有限公司
294/309
http://www.essemi.com
HR8P506_Datasheet_C
VDD=5.5V
-40℃
25℃
85℃
300
IOL(mA)
250
200
150
100
50
0
0.0
1.0
2.0
3.0
4.0
5.0
6.0
VOL(V)
V1.0
版权所有©上海东软载波微电子有限公司
295/309
http://www.essemi.com
HR8P506_Datasheet_C
附录3
编程调试接口
附录 3.1 概述
为方便应用程序及实际系统调试,芯片内部集成 ISP 在线编程接口和 SWD 串行调试接口,通
过上海东软载波微电子有限公司授权的 ISP 编程器、SWD 调试器可实现芯片在线编程、仿真
调试功能。
芯片 ISP 和 SWD 功能模块共用 5 线接口配置,即电源线 VDD、地线 VSS、复位线 MRSTN、
时钟线 ISCK 和数据线 ISDA。
附录 3.2 ISP 编程接口
附录 3.2.1 通信协议
ISP 接口协议采用两线制半双工通信协议,每个信息块包含 n 个数据信息位,以及起始位和
停止位。烧录器为主控设备,ISCK 时钟由烧录器发送;芯片为受控设备。如下图示:
Thds
Tck
Tstud
Tstup
Thdd
ISCK
Bitn-1
ISDA
Bitn-2
bit1
bit0
S
注:ISCK为高电平时ISDA的下降沿为起始位
ISCK为高电平时ISDA的上升沿为停止位
parameter
Thds:起始位SCK保持时间
Thds
Tck:串行时钟周期
Tck
Tstud:串行数据建立时间
Tstud
Thdd
Thdd:串行数据保持时间
Tstup
Tstup:停止位SCK建立时间
P
max
type
min
20ns
100ns
20ns
20ns
20ns
ISP 在线编程接口有两组端口可用,即 PA0/PA1 和 PA14/PA15,通过其中一组进入 ISP 模式后,
另一组 ISP 端口被自动关闭。
V1.0
版权所有©上海东软载波微电子有限公司
296/309
http://www.essemi.com
HR8P506_Datasheet_C
附录 3.2.2 操作流程
开始
上电复位
解锁校验
ISP模式
查空
非空
擦除
空
程序存储器编程
程序存储器校验
配置字编程
配置字校验
加密?
是
加密字编程
否
结束
附录 3.3 SWD 调试接口
附录 3.3.1 概述
SWD 是 Cortex-M0 内核自带的串行调试接口,与 ARM 的 CoreSight 调试技术兼容。
芯片通过 SWD 调试器完成调试程序(需通过配置字控制位 CFG_DEBUG,使能调试模式)
下载,然后重新上电,芯片的 SWDIO(复用为 ISDA)和 SWCLK(复用为 ISCK)端口功能
可用。
SWCLK:串行时钟输入端口,提供 SWD 串行通讯时钟。
SWDIO:串行数据输入/输出端口。
两个 SWD 端口,PA0/PA1 和 PA14/PA15,可通过芯片配置字 CFG_WORD0 的 DEBUG_S
和 CFG_DEBUG 控制位来设定。
当 CFG_DEBUG 控制位设定为 10,使能调试模式时,
PA0/PA1 和 PA14/PA15 被强制为 SWD
调试端口,其他外设资源无法使用该端口。若 DEBUG_S 控制位为 0,选择 PA14/PA15 调试
V1.0
版权所有©上海东软载波微电子有限公司
297/309
http://www.essemi.com
HR8P506_Datasheet_C
口;若 DEBUG_S 控制位为 1,选择 PA0/PA1 调试口。
附录 3.3.2 SWD特性
SWD 调试功能可分为侵入式调试和非侵入式调试两部分。
侵入式调试
停机
单步执行
硬件断点(支持 4 个硬件断点)
软件断点(支持 BKPT 指令)
修改程序指针 PC 值
数据观察点 DWT
(Data Watchpoint and Trace,只支持 Watchpoint 功能,不支持 Trace 功能)
内部寄存器和 RAM 存储器的读写访问操作
矢量捕捉(包括 Reset 和 HardFault 异常的捕捉)
非侵入式调试
程序指针 PC 值采样
V1.0
版权所有©上海东软载波微电子有限公司
298/309
http://www.essemi.com
HR8P506_Datasheet_C
附录4
LCD 驱动波形
附录 4.1 概述
因为要产生 LCD 波形,所以不透明像素上的净 AC 电压应该是最大值,而透明像素上的净 AC
电压应该是最小值。任何像素上的净 DC 电压应该为零。COM 信号表示每个公共端的时间片,
而 SEG 中包含像素数据。
像素信号(COM-SEG)中不包含 DC 分量,并且只可取两个 rms 值中的一个。高 rms 值会产
生不透明像素,而低 rms 值会产生透明像素。随着公共端数量的增加,两个 rms 值间的差值逐
渐减小。这个差值表示 LCD 显示器可具有的最大对比度。
可以用两种波形驱动 LCD:A 型和 B 型。在 A 型波形中,相位在每个公共端类型中改变,在 B
型波形中,相位在每个帧边界上改变。这样,A 型波形在单帧中即可维持 0V DC 分量,而 B
型波形则需要两个帧维持 0V DC 分量。
附录 4.2 驱动波形图
1/2 复用、1/3 偏置驱动时的 A 型波形图
V1.0
版权所有©上海东软载波微电子有限公司
299/309
http://www.essemi.com
HR8P506_Datasheet_C
vlcd3
com0
vlcd2
vlcd1
vss
vlcd3
vlcd2
com1
vlcd1
vss
vlcd3
vlcd2
seg0
vlcd1
vss
seg1
vlcd3
vlcd2
vlcd1
vss
vlcd3
vlcd2
vlcd1
vss
com0-seg0
-vlcd1
-vlcd2
-vlcd3
vlcd1
com0-seg1
vss
-vlcd1
1帧
注:com0-seg0为亮,com0-seg1为暗
V1.0
版权所有©上海东软载波微电子有限公司
300/309
http://www.essemi.com
HR8P506_Datasheet_C
1/2 复用、1/3 偏置驱动时的 B 型波形图
vlcd3
vlcd2
com0
vlcd1
vss
vlcd3
vlcd2
com1
vlcd1
vss
vlcd3
seg0
vss
vlcd3
seg1
vlcd2
vlcd1
vss
vlcd3
vlcd2
vlcd1
vss
com0-seg0
-vlcd1
-vlcd2
-vlcd3
vlcd1
vss
com0-seg1
-vlcd1
2帧
注:com0-seg0为亮,com0-seg1为暗
V1.0
版权所有©上海东软载波微电子有限公司
301/309
http://www.essemi.com
HR8P506_Datasheet_C
1/3 复用、1/3 偏置驱动时的 A 型波形图
vlcd3
vlcd2
com0
vlcd1
vss
vlcd3
com1
vlcd2
vlcd1
vss
vlcd3
vlcd2
com2
vlcd1
vss
vlcd3
vlcd2
seg0
vlcd1
vss
vlcd3
seg1
vss
vlcd1
vss
com0-seg0
-vlcd1
vlcd3
vlcd2
vlcd1
com0-seg1
vss
-vlcd1
-vlcd2
-vlcd3
1帧
注:com0-seg0为暗,com0-seg1为亮
V1.0
版权所有©上海东软载波微电子有限公司
302/309
http://www.essemi.com
HR8P506_Datasheet_C
1/3 复用、1/3 偏置驱动时的 B 型波形图
vlcd3
com0
vlcd2
vlcd1
vss
vlcd3
vlcd2
com1
vlcd1
vss
vlcd3
vlcd2
com2
vlcd1
vss
vlcd3
vlcd2
seg0
vlcd1
vss
vlcd3
seg1
vss
vlcd1
com0-seg0
vss
-vlcd1
vlcd3
vlcd2
vlcd1
com0-seg1
vss
-vlcd1
-vlcd2
-vlcd3
2帧
注:com0-seg0为暗,com0-seg1为亮
V1.0
版权所有©上海东软载波微电子有限公司
303/309
http://www.essemi.com
HR8P506_Datasheet_C
1/4 复用、1/3 偏置驱动时的 A 型波形图
vlcd3
vlcd2
com0
vlcd1
vss
vlcd3
vlcd2
com1
vlcd1
vss
vlcd3
vlcd2
com2
vlcd1
vss
vlcd3
vlcd2
com3
vlcd1
vss
vlcd3
vlcd2
seg0
vlcd1
vss
vlcd3
vlcd2
seg1
vlcd1
vss
vlcd3
vlcd2
vlcd1
com0-seg0
vss
-vlcd1
-vlcd2
-vlcd3
vlcd1
com0-seg1
vss
-vlcd1
1帧
注:com0-seg0为亮,com0-seg1为暗
V1.0
版权所有©上海东软载波微电子有限公司
304/309
http://www.essemi.com
HR8P506_Datasheet_C
1/4 复用、1/3 偏置驱动时的 B 型波形图
vlcd3
vlcd2
com0
vlcd1
vss
vlcd3
vlcd2
com1
vlcd1
vss
vlcd3
vlcd2
com2
vlcd1
vss
vlcd3
vlcd2
com3
vlcd1
vss
vlcd3
seg0
vlcd2
vlcd1
vss
vlcd3
vlcd2
seg1
vlcd1
vss
vlcd3
vlcd2
vlcd1
com0-seg0
vss
-vlcd1
-vlcd2
-vlcd3
vlcd1
com0-seg1
vss
-vlcd1
2帧
注:com0-seg0为亮,com0-seg1为暗
V1.0
版权所有©上海东软载波微电子有限公司
305/309
http://www.essemi.com
HR8P506_Datasheet_C
1/6 复用、1/3 偏置驱动时的 A 型波形图
com0
vlcd3
vlcd2
vlcd1
vss
com1
vlcd3
vlcd2
vlcd1
vss
……
com5
vlcd3
vlcd2
vlcd1
vss
seg0
vlcd3
vlcd2
vlcd1
vss
seg1
vlcd3
vlcd2
vlcd1
vss
com0-seg0
vlcd3
vlcd2
vlcd1
vss
-vlcd1
-vlcd2
-vlcd3
com0-seg1
vlcd3
vlcd2
vlcd1
vss
-vlcd1
-vlcd2
-vlcd3
1帧
注:com0-seg0 为亮,com0-seg1 为暗
V1.0
版权所有©上海东软载波微电子有限公司
306/309
http://www.essemi.com
HR8P506_Datasheet_C
1/6 复用、1/4 偏置驱动时的 A 型波形图
vlcd4
vlcd3
com0
vlcd2
vlcd1
vss
vlcd4
vlcd3
seg0
vlcd2
vlcd1
vss
vlcd4
vlcd3
seg1
vlcd2
vlcd1
vss
vlcd4
vlcd3
vlcd2
vlcd1
com0-seg0
vss
-vlcd1
-vlcd2
-vlcd3
-vlcd4
vlcd4
vlcd3
vlcd2
vlcd1
vss
com0-seg1
-vlcd1
-vlcd2
-vlcd3
-vlcd4
1帧
注:com0-seg0为亮,com0-seg1为暗
V1.0
版权所有©上海东软载波微电子有限公司
307/309
http://www.essemi.com
HR8P506_Datasheet_C
1/8 复用、1/4 偏置驱动时的 B 型波形图
V1.0
版权所有©上海东软载波微电子有限公司
308/309
http://www.essemi.com
HR8P506_Datasheet_C
vlcd4
vlcd3
vlcd2
com0
vlcd1
vss
vlcd4
vlcd3
vlcd2
com1
vlcd1
vss
vlcd4
vlcd3
vlcd2
com2
vlcd1
vss
vlcd4
vlcd3
vlcd2
com7
vlcd1
vss
vlcd4
vlcd2
seg0
vss
vlcd4
vlcd2
seg1
vss
vlcd4
vlcd3
vlcd2
vlcd1
vss
com0-seg0
-vlcd1
-vlcd2
-vlcd3
-vlcd4
vlcd4
vlcd3
vlcd2
vlcd1
vss
-vlcd1
com1-seg1
-vlcd2
-vlcd3
2帧
-vlcd4
注:com0-seg0为亮,com1-seg1为亮
V1.0
版权所有©上海东软载波微电子有限公司
309/309
http://www.essemi.com