HR8P506 数据手册
32 位 MCU
HR8P506
数 据 手 册
产品简介
数据手册
产品规格
上海东软载波微电子有限公司
2017 年 7 月 25 日
V1.4
版权所有©上海东软载波微电子有限公司
1/310
http://www.essemi.com
HR8P506 数据手册
东软载波 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.4
版权所有©上海东软载波微电子有限公司
2/310
http://www.essemi.com
HR8P506 数据手册
产品订购信息
型 号
UART/
FLASH
RAM
I/O
Timer
RTC
SPI
I2C
LVD
封装类型
ADC
LCDC/LEDC
12bit×16
8COM X 28SEG
LQFP48
12bit×13
8COM X 24SEG
LQFP44
12bit×12
8COM X 13SEG
EUART
HR8P506FHLQ
46
HR8P506FHLP
42
16-bit X 4,
HR8P506FHLK
36KB
8KB
1
30
3
2
1
√
LQFP32
32-bit X 1
HR8P506FHNK
30
12bit×12
8COM X 13SEG
QFN32
HR8P506FHSH
26
12bit×11
8COM X 10SEG
SOP28
Example:
HR8P
506
F
H
LQ
Package
LQ
LP
LK
NK
SH
—
—
—
—
—
LQFP48
LQFP44
LQFP32
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.4
版权所有©上海东软载波微电子有限公司
3/310
http://www.essemi.com
HR8P506 数据手册
修订历史
版本
修改日期
更改概要
V1.0
2016-04-15
初版发布
V1.1
2016-10-08
增强内容描述
V1.2
2016-12-19
修改 SCU_PWRC、SCU_SCLKEN0 和 SCU_SCLKEN1
等寄存器描述。
2017-03-10
1. 修改 NVIC_ICER,NVIC_ISER 等寄存器描述;
2. 产品订购信息表更新;
3. 5.1.1.5 节,增加了设定死区时间后的 PWM 互补输出
举例。
2017-7-4
1. 增加芯片唯一识别码小节;
2. 增加睡眠模式的唤醒时间描述;
3. 更新时钟滤波 CLKFLT 描述;
4. 更新寄存器 T16N_CON0 中关于 ASYWEN 位说明和
T16N_CON2 中 PWMBKL0/1 位的定义和 PWMBKF 位的
使用注意事项;
5. 更新 RTC_WA、RTC_DA、RTC_HMS、RTC_YMDW
中的 bit 定义;
6. 添加外部时钟振荡器低速 LP 模式设置注意事项;
7. 更新 SPI 波特率设置寄存器 SPI_CKS 位宽定义。
V1.3
V1.4
V1.4
版权所有©上海东软载波微电子有限公司
4/310
http://www.essemi.com
HR8P506 数据手册
目 录
内容目录
第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
结构框图 ................................................................................................................... 19
管脚分配图 ............................................................................................................... 20
1. 4. 1
LQFP48 封装图.......................................................................................... 20
1. 4. 2
LQFP44 封装图.......................................................................................... 21
1. 4. 3
LQFP32 封装图.......................................................................................... 22
1. 4. 4
QFN32 封装图 ........................................................................................... 23
1. 4. 5
SOP28 封装图 ........................................................................................... 24
管脚说明 ................................................................................................................... 24
1. 5. 1
管脚说明 .................................................................................................... 24
1. 5. 2
管脚对照表 ................................................................................................. 26
系统控制及操作特性 ................................................................................................. 28
系统控制保护 ............................................................................................................ 28
2. 1. 1
概述 ............................................................................................................ 28
2. 1. 2
特殊功能寄存器.......................................................................................... 28
系统电源 ................................................................................................................... 28
2. 2. 1
结构框图 .................................................................................................... 28
2. 2. 2
芯片供电电源 ............................................................................................. 29
系统复位 ................................................................................................................... 29
2. 3. 1
概述 ............................................................................................................ 29
2. 3. 2
结构框图 .................................................................................................... 29
2. 3. 3
复位时序图 ................................................................................................. 29
2. 3. 4
外部复位 MRSTN 参考 .............................................................................. 30
2. 3. 5
特殊功能寄存器.......................................................................................... 31
低电压监测(LVD) ................................................................................................. 32
2. 4. 1
概述 ............................................................................................................ 32
2. 4. 2
特殊功能寄存器.......................................................................................... 32
系统低功耗操作模式 ................................................................................................. 34
2. 5. 1
概述 ............................................................................................................ 34
2. 5. 2
浅睡眠模式 ................................................................................................. 34
2. 5. 3
深度睡眠模式 ............................................................................................. 34
2. 5. 4
睡眠模式的唤醒.......................................................................................... 35
2. 5. 5
睡眠模式的唤醒时间 .................................................................................. 35
2. 5. 6
FLASH 存储器等待功能 ............................................................................. 35
2. 5. 7
特殊功能寄存器.......................................................................................... 36
系统时钟 ................................................................................................................... 37
2. 6. 1
概述 ............................................................................................................ 37
2. 6. 2
结构框图 .................................................................................................... 38
2. 6. 3
功能说明 .................................................................................................... 38
V1.4
版权所有©上海东软载波微电子有限公司
5/310
http://www.essemi.com
HR8P506 数据手册
2. 6. 3. 1
外部时钟 XTAL ................................................................................... 38
2. 6. 3. 2
内部高速时钟 HRC ............................................................................. 39
2. 6. 3. 3
内部低速时钟 LRC .............................................................................. 39
2. 6. 3. 4
锁相环 PLL ......................................................................................... 39
2. 6. 3. 5
外部时钟停振检测 CCM ..................................................................... 41
2. 6. 3. 6
时钟滤波 CLKFLT ............................................................................... 41
2. 6. 3. 7
睡眠模式系统状态............................................................................... 42
2. 6. 3. 8
浅睡眠模式.......................................................................................... 42
2. 6. 3. 9
深度睡眠模式 ...................................................................................... 42
2. 6. 4
特殊功能寄存器.......................................................................................... 42
2. 6. 5
系统时钟应用说明 ...................................................................................... 49
2. 6. 5. 1
外部时钟 XTAL ................................................................................... 49
2. 6. 5. 2
内部高速时钟 HRC ............................................................................. 50
2. 6. 5. 3
内部低速时钟 LRC .............................................................................. 51
2. 6. 5. 4
锁相环 PLL ......................................................................................... 51
2. 6. 5. 5
时钟滤波 CLKFLT ............................................................................... 52
2. 7
中断和异常处理 ........................................................................................................ 54
2. 7. 1
中断和异常 ................................................................................................. 54
2. 7. 2
中断和异常向量的分配............................................................................... 55
2. 7. 3
中断向量表的重映射 .................................................................................. 56
2. 7. 4
特殊功能寄存器.......................................................................................... 56
2. 8
系统控制块(SCB)................................................................................................. 66
2. 8. 1
概述 ............................................................................................................ 66
2. 8. 2
特殊功能寄存器.......................................................................................... 66
2. 9
系统定时器(SYSTICK)......................................................................................... 70
2. 9. 1
概述 ............................................................................................................ 70
2. 9. 2
特殊功能寄存器.......................................................................................... 71
2. 10
配置字软件控制 ........................................................................................................ 73
2. 11
定时器(T16N/T32N)同步启动关停控制 ............................................................... 74
2. 11. 1
概述 ............................................................................................................ 74
2. 11. 2
特殊功能寄存器.......................................................................................... 74
第3章
存储器资源 ............................................................................................................... 76
3. 1
内部存储器地址映射 ................................................................................................. 76
3. 2
FLASH 存储器 .......................................................................................................... 76
3. 2. 1
信息区 FLASH ........................................................................................... 76
3. 2. 1. 1
芯片配置字.......................................................................................... 76
3. 2. 1. 2
芯片唯一识别码 .................................................................................. 79
3. 2. 2
程序区 FLASH ........................................................................................... 79
3. 2. 3
自编程操作(IAP).................................................................................... 79
3. 2. 3. 1
IAP 概述 .............................................................................................. 79
3. 2. 3. 2
IAP 操作流程 ...................................................................................... 80
3. 2. 3. 3
IAP 自编程硬件固化模块 .................................................................... 82
3. 2. 4
特殊功能寄存器.......................................................................................... 83
3. 3
数据存储器(SRAM).............................................................................................. 87
V1.4
版权所有©上海东软载波微电子有限公司
6/310
http://www.essemi.com
HR8P506 数据手册
3. 4
3. 5
第4章
4. 1
4. 2
4. 3
4. 4
4. 5
4. 6
第5章
5. 1
3. 3. 1 SRAM 地址映射 ................................................................................................ 87
3. 3. 2 SRAM 位带扩展 ................................................................................................ 87
外设寄存器 ............................................................................................................... 88
3. 4. 1
外设寄存器映射.......................................................................................... 88
3. 4. 2
外设寄存器位带扩展 .................................................................................. 88
3. 4. 3
系统控制单元(SCU)寄存器列表 ............................................................ 89
3. 4. 4
GPIO 寄存器列表 ....................................................................................... 89
3. 4. 5
IAP 寄存器列表 .......................................................................................... 91
3. 4. 6
ADC 寄存器列表 ........................................................................................ 91
3. 4. 7
RTC 寄存器列表 ........................................................................................ 91
3. 4. 8
LCDC 寄存器列表 ...................................................................................... 92
3. 4. 9
LEDC 寄存器列表 ...................................................................................... 92
3. 4. 10
WDT 寄存器列表........................................................................................ 93
3. 4. 11
T16N0/T16N1/T16N2/T16N3 寄存器列表 ................................................. 93
3. 4. 12
T32N0 寄存器列表 ..................................................................................... 94
3. 4. 13
UART0/UART1 寄存器列表 ....................................................................... 94
3. 4. 14
EUART0 寄存器列表.................................................................................. 95
3. 4. 15
SPI0/ SPI1 寄存器列表 .............................................................................. 95
3. 4. 16
I2C0 寄存器列表 ........................................................................................ 96
内核寄存器 ............................................................................................................... 96
3. 5. 1
系统定时器(SYSTICK)寄存器列表 ........................................................ 96
3. 5. 2
中断控制器(NVIC)寄存器列表............................................................... 96
3. 5. 3
系统控制块(SCB)寄存器列表 ................................................................ 97
输入输出端口(GPIO) ........................................................................................... 98
概述 .......................................................................................................................... 98
结构框图 ................................................................................................................... 99
外部端口中断 ............................................................................................................ 99
外部按键中断 .......................................................................................................... 100
Buzz 输出 ............................................................................................................... 101
特殊功能寄存器 ...................................................................................................... 102
外设 ........................................................................................................................ 127
定时器/计数器 ......................................................................................................... 127
5. 1. 1 16 位定时器/计数器 T16N ............................................................................... 127
5. 1. 1. 1
概述 .................................................................................................. 127
5. 1. 1. 2
结构框图 ........................................................................................... 128
5. 1. 1. 3
T16N 定时/计数功能 ......................................................................... 128
5. 1. 1. 4
T16N 输入捕捉功能 .......................................................................... 130
5. 1. 1. 5
T16N 输出调制功能 .......................................................................... 131
5. 1. 1. 6
特殊功能寄存器 ................................................................................ 134
5. 1. 1. 7
T16N 应用说明 ................................................................................. 145
5. 1. 2 32 位定时器/计数器 T32N(T32N0) ............................................................. 146
5. 1. 2. 1
概述 .................................................................................................. 146
5. 1. 2. 2
结构框图 ........................................................................................... 146
5. 1. 2. 3
T32N 定时/计数功能 ......................................................................... 146
V1.4
版权所有©上海东软载波微电子有限公司
7/310
http://www.essemi.com
HR8P506 数据手册
5. 2
5. 3
5. 4
5. 5
5. 1. 2. 4
T32N 输入捕捉功能 .......................................................................... 148
5. 1. 2. 5
T32N 输出调制功能 .......................................................................... 149
5. 1. 2. 6
特殊功能寄存器 ................................................................................ 150
5. 1. 2. 7
T32N 应用说明 ................................................................................. 157
通用异步接收/发送器(UART0/ UART1) ............................................................. 157
5. 2. 1
概述 .......................................................................................................... 157
5. 2. 2
结构框图 .................................................................................................. 158
5. 2. 3
UART 数据格式 ........................................................................................ 158
5. 2. 4
UART 异步发送器 .................................................................................... 159
5. 2. 5
UART 异步接收器 .................................................................................... 161
5. 2. 6
UART 发送调制功能 ................................................................................ 163
5. 2. 7
UART 红外唤醒功能 ................................................................................ 164
5. 2. 8
UART 端口极性 ........................................................................................ 164
5. 2. 9
UART 自动波特率检测 ............................................................................. 164
5. 2. 10
UART 空闲帧检测 .................................................................................... 165
5. 2. 11
UART 发送暂停和接收暂停 ..................................................................... 166
5. 2. 12
特殊功能寄存器........................................................................................ 166
5. 2. 13
UART 应用说明 ........................................................................................ 182
增强型通用异步接收/发送器(EUART0) ............................................................. 183
5. 3. 1
概述 .......................................................................................................... 183
5. 3. 2
结构框图 .................................................................................................. 183
5. 3. 3
EUART 端口复用 ..................................................................................... 183
5. 3. 4
普通 UART 通讯模式................................................................................ 184
5. 3. 5
7816 通讯模式的异步接收器和发送器 ..................................................... 184
5. 3. 6
7816 通讯模式的数据格式 ....................................................................... 185
5. 3. 7
7816 通讯模式的自动重发功能 ................................................................ 185
5. 3. 8
7816 通讯模式的自动重收功能 ................................................................ 186
5. 3. 9
特殊功能寄存器........................................................................................ 186
5. 3. 10
EUART 应用说明 ..................................................................................... 196
SPI 同步串口通讯控制器(SPI0 /SPI1) ............................................................... 197
5. 4. 1
概述 .......................................................................................................... 197
5. 4. 2
结构框图 .................................................................................................. 197
5. 4. 3
SPI 通讯模式 ............................................................................................ 197
5. 4. 4
SPI 数据格式 ............................................................................................ 197
5. 4. 5
SPI 帧位宽 ............................................................................................... 199
5. 4. 6
SPI 同步发送器 ........................................................................................ 199
5. 4. 7
SPI 同步接收器 ........................................................................................ 200
5. 4. 8
SPI 通讯控制 ............................................................................................ 201
5. 4. 9
SPI 延迟接收功能 .................................................................................... 201
5. 4. 10
SPI 数据帧发送间隔功能 ......................................................................... 202
5. 4. 11
特殊功能寄存器........................................................................................ 202
5. 4. 12
SPI 应用说明 ............................................................................................ 208
I2C 总线串口通讯控制器(I2C0) ......................................................................... 209
5. 5. 1
概述 .......................................................................................................... 209
V1.4
版权所有©上海东软载波微电子有限公司
8/310
http://www.essemi.com
HR8P506 数据手册
5. 6
5. 7
5. 8
5. 9
5. 5. 2
结构框图 .................................................................................................. 209
5. 5. 3
I2C 总线基本原理..................................................................................... 209
5. 5. 3. 1
I2C 通讯协议..................................................................................... 209
5. 5. 3. 2
I2C 数据传输格式 ............................................................................. 210
5. 5. 4
I2C 通讯端口配置..................................................................................... 211
5. 5. 5
I2C 时基定时器与 16 倍速采样器 ............................................................ 212
5. 5. 6
I2C 通讯发送器 ........................................................................................ 213
5. 5. 7
I2C 通讯接收器 ........................................................................................ 214
5. 5. 8
I2C 通讯控制 ............................................................................................ 214
5. 5. 8. 1
I2C 起始位 ........................................................................................ 215
5. 5. 8. 2
I2C 停止位 ........................................................................................ 215
5. 5. 8. 3
I2C 应答延迟功能 ............................................................................. 216
5. 5. 8. 4
I2C 数据帧传输间隔功能 .................................................................. 216
5. 5. 8. 5
I2C 时钟线自动下拉等待请求功能 .................................................... 216
5. 5. 8. 6
I2C 自动发送未应答功能 .................................................................. 217
5. 5. 9
特殊功能寄存器........................................................................................ 217
5. 5. 10
I2C 应用说明 ............................................................................................ 225
模数转换器(ADC) .............................................................................................. 226
5. 6. 1
概述 .......................................................................................................... 226
5. 6. 2
结构框图 .................................................................................................. 226
5. 6. 3
ADC 基本配置 .......................................................................................... 226
5. 6. 4
ADC 高精度参考电压 ............................................................................... 226
5. 6. 5
ADC 数据转换 .......................................................................................... 226
5. 6. 6
自动转换比较功能 .................................................................................... 229
5. 6. 7
特殊功能寄存器........................................................................................ 230
实时时钟(RTC) .................................................................................................. 237
5. 7. 1
概述 .......................................................................................................... 237
5. 7. 2
RTC 写保护 .............................................................................................. 237
5. 7. 3
时间日期设置 ........................................................................................... 237
5. 7. 4
RTC 中断源 .............................................................................................. 239
5. 7. 5
RTC 计时功能 .......................................................................................... 239
5. 7. 6
特殊功能寄存器........................................................................................ 239
液晶显示控制器(LCDC) ..................................................................................... 247
5. 8. 1
概述 .......................................................................................................... 247
5. 8. 2
结构框图 .................................................................................................. 247
5. 8. 3
LCDC 基本设置........................................................................................ 247
5. 8. 4
LCDC 偏置电压选择 ................................................................................ 247
5. 8. 5
LCDC 像素对照表 .................................................................................... 248
5. 8. 6
LCDC 工作时钟源 .................................................................................... 249
5. 8. 7
LCD 显示帧频率....................................................................................... 249
5. 8. 8
LCD 闪烁功能 .......................................................................................... 249
5. 8. 9
LCD 低功耗模式....................................................................................... 250
5. 8. 10
特殊功能寄存器........................................................................................ 251
数码管显示控制器(LEDC) ................................................................................. 257
V1.4
版权所有©上海东软载波微电子有限公司
9/310
http://www.essemi.com
HR8P506 数据手册
5. 9. 1
概述 .......................................................................................................... 257
5. 9. 2
结构框图 .................................................................................................. 257
5. 9. 3
LEDC 基本设置 ........................................................................................ 257
5. 9. 4
LEDC 像素对照表 .................................................................................... 257
5. 9. 5
LEDC 工作时钟源 .................................................................................... 258
5. 9. 6
LED 工作示意图 ....................................................................................... 258
5. 9. 7
特殊功能寄存器........................................................................................ 258
5. 10
看门狗定时器(WDT) .......................................................................................... 261
5. 10. 1
概述 .......................................................................................................... 261
5. 10. 2
特殊功能寄存器........................................................................................ 262
第6章
芯片封装外观尺寸图 ............................................................................................... 265
6. 1
LQFP 48-pin 封装外观尺寸图................................................................................. 265
6. 2
LQFP 44-pin 封装外观尺寸图................................................................................. 266
6. 3
LQFP 32-pin 封装外观尺寸图................................................................................. 267
6. 4
QFN 32-pin 封装外观尺寸图 .................................................................................. 268
6. 5
SOP 28-pin 封装外观尺寸图 .................................................................................. 269
附录 1 Cortex-M0 内核描述...................................................................................................... 270
附录 1. 1
Cortex-M0 指令集 ........................................................................................... 270
附录 1. 2
Cortex-M0 内核寄存器 .................................................................................... 272
附录 1. 2. 1
通用寄存器 R0~R12 ......................................................................... 272
附录 1. 2. 2
堆栈指针寄存器 SP(R13) ............................................................ 272
附录 1. 2. 3
链接寄存器 LR(R14) .................................................................... 273
附录 1. 2. 4
程序计数器 PC(R15).................................................................... 273
附录 1. 2. 5
程序状态寄存器 xPSR ...................................................................... 273
附录 1. 2. 6
异常/中断屏蔽寄存器 PRIMASK....................................................... 274
附录 1. 2. 7
控制寄存器 CONTROL ..................................................................... 274
附录 2
电气特性 ................................................................................................................. 276
附录 2. 1
参数特性表 ...................................................................................................... 276
附录 2. 1. 1
芯片工作条件 .................................................................................... 276
附录 2. 1. 2
芯片特性参数测量方法 ..................................................................... 277
附录 2. 1. 3
芯片功耗特性 .................................................................................... 277
附录 2. 1. 4
芯片 IO 端口特性 .............................................................................. 280
附录 2. 1. 5
芯片系统时钟特性............................................................................. 281
附录 2. 1. 6
芯片功能模块特性............................................................................. 281
附录 2. 2
参数特性图 ...................................................................................................... 284
附录 2. 2. 1
芯片功耗特性 .................................................................................... 284
附录 2. 2. 2
芯片 IO 端口输入特性 ....................................................................... 286
附录 2. 2. 3
芯片 IO 端口输出特性(普通驱动,PA6~PA13 端口除外)............. 287
附录 2. 2. 4
芯片 IO 端口输出特性(大电流驱动,PA6~PA13 端口除外) ......... 290
附录 2. 2. 5
芯片 IO 端口输出特性(普通驱动,PA6~PA13 端口) .................... 293
附录 2. 2. 6
芯片 IO 端口输出特性(大电流驱动,PA6~PA13 端口) ................ 295
附录 3
编程调试接口 .......................................................................................................... 299
附录 3. 1
概述 ................................................................................................................. 299
附录 3. 2
ISP 编程接口 ................................................................................................... 299
V1.4
版权所有©上海东软载波微电子有限公司
10/310
http://www.essemi.com
HR8P506 数据手册
附录 3. 2. 1
通信协议 ........................................................................................... 299
附录 3. 2. 2
操作流程 ........................................................................................... 300
附录 3. 3
SWD 调试接口 ................................................................................................ 300
附录 3. 3. 1
概述 .................................................................................................. 300
附录 3. 3. 2
SWD 特性 ......................................................................................... 301
附录 4 LCD 驱动波形 ................................................................................................................ 302
附录 4. 1
概述 ................................................................................................................. 302
附录 4. 2
驱动波形图 ...................................................................................................... 302
V1.4
版权所有©上海东软载波微电子有限公司
11/310
http://www.essemi.com
HR8P506 数据手册
图目录
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
1-1
1-2
1-3
1-4
1-5
1-6
2-1
2-2
2-3
2-4
2-5
2-6
2-7
2-8
2-9
3-1
3-2
3-3
3-4
3-5
3-6
3-7
4-1
4-2
4-3
4-4
4-5
5-1
5-2
5-3
5-4
5-5
5-6
5-7
5-8
5-9
5-10
5-11
5-12
5-13
5-14
5-15
5-16
HR8P506 结构框图 .......................................................................................................... 19
LQFP48 封装顶视图 ........................................................................................................ 20
LQFP44 封装顶视图 ........................................................................................................ 21
LQFP32 封装顶视图 ........................................................................................................ 22
QFN32 封装顶视图 .......................................................................................................... 23
SOP28 封装顶视图 .......................................................................................................... 24
系统电源结构框图 ............................................................................................................ 28
系统复位电路结构框图..................................................................................................... 29
上电复位时序示意图 ........................................................................................................ 29
掉电复位时序示意图 ........................................................................................................ 30
MRSTN 复位参考电路图 1 ............................................................................................... 30
MRSTN 复位参考电路图 2 ............................................................................................... 30
系统时钟电路结构框图..................................................................................................... 38
XTAL 振荡器电路结构示意图 ........................................................................................... 39
系统定时器框图................................................................................................................ 70
内部存储系统分配示意图 ................................................................................................. 76
IAP 操作请求流程图 ......................................................................................................... 80
IAP 全擦除操作流程图 ..................................................................................................... 81
IAP 页擦除操作流程图 ..................................................................................................... 81
IAP 编程操作流程图 ......................................................................................................... 82
SRAM 映射图 ................................................................................................................... 87
外设存储器分配示意图..................................................................................................... 88
IO 端口电路结构图 ........................................................................................................... 99
外部 PINT0 端口中断电路结构示意图.............................................................................. 99
外部按键 KINT0 中断电路结构示意图............................................................................ 100
Buzz 高电平调制输出波形图.......................................................................................... 101
Buzz 低电平调制输出波形图.......................................................................................... 102
T16N0 电路结构框图 ..................................................................................................... 128
T16N0 计数匹配功能示意图 .......................................................................................... 129
T16N0 捕捉功能示意图 .................................................................................................. 131
T16N0 PWM 独立模式输出调制功能示意图 .................................................................. 132
T16N0 互补输出功能示意图 .......................................................................................... 133
带死区的 T16N0 互补输出功能示意图 ........................................................................... 134
T32N0 电路结构框图 ..................................................................................................... 146
T32N0 计数匹配功能示意图 .......................................................................................... 147
T32N0 捕捉功能示意图 .................................................................................................. 149
T32N0 输出调制功能示意图 ........................................................................................ 150
UART 电路结构图 ........................................................................................................ 158
UART 7 位数据格式 ..................................................................................................... 158
UART 8 位数据格式 ..................................................................................................... 158
UART 9 位数据格式 ..................................................................................................... 158
UART0 发送数据流示意图 ........................................................................................... 159
UART0 发送数据操作流程图示例 ................................................................................ 161
V1.4
版权所有©上海东软载波微电子有限公司
12/310
http://www.essemi.com
HR8P506 数据手册
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
图
5-17
5-18
5-19
5-20
5-21
5-22
5-23
5-24
5-25
5-26
5-27
5-28
5-29
5-30
5-31
5-32
5-33
5-34
5-35
5-36
5-37
5-38
5-39
5-40
5-41
5-42
5-43
5-44
5-45
5-46
5-47
5-48
5-49
5-50
5-51
5-52
5-53
5-54
5-55
5-56
UART0 接收数据流示意图 ........................................................................................... 162
UART0 接收数据操作流程图示例 ................................................................................ 163
TX0 高电平调制输出波形图 ......................................................................................... 163
TX0 低电平调制输出波形图 ......................................................................................... 164
自动波特率检测时序示意图 ......................................................................................... 165
自动波特率检测错误时序示意图 .................................................................................. 165
空闲帧检测时序示意图................................................................................................. 166
EUART0 电路结构框图 ................................................................................................ 183
7816 通讯模式发送数据流示意图 ................................................................................ 184
7816 通讯模式接收数据流示意图 ................................................................................ 184
SPI0 电路结构框图 ...................................................................................................... 197
SPI0 时钟上升沿发送,下降沿接收波形示意图........................................................... 198
SPI0 时钟下降沿发送,上升沿接收波形示意图........................................................... 198
SPI0 时钟上升沿接收,下降沿发送波形示意图........................................................... 198
SPI0 时钟下降沿接收,上升沿发送波形示意图........................................................... 199
SPI 发送数据流示意图 ................................................................................................. 199
SPI0 接收数据流示意图 ............................................................................................... 200
SPI 延迟接收功能波形示意图 ...................................................................................... 202
I2C 电路结构框图 ......................................................................................................... 209
I2C 总线通讯协议示意图 .............................................................................................. 210
I2C 主控器写入从动器数据示意图 ............................................................................... 211
I2C 主控器读取从动器数据示意图 ............................................................................... 211
开漏输出端口示意图 .................................................................................................... 212
I2C 总线端口信号的波形示意图 ................................................................................... 213
I2C 发送数据流示意图 ................................................................................................. 213
I2C 接收数据流示意图 ................................................................................................. 214
I2C 起始位波形图 ......................................................................................................... 215
I2C 自动寻呼波形图 ..................................................................................................... 215
I2C 停止位波形图 ......................................................................................................... 215
I2C 应答延迟功能波形示意图 ...................................................................................... 216
I2C 数据帧传输间隔功能波形示意图 ........................................................................... 216
I2C 时钟线下拉等待波形示意图 ................................................................................... 217
ADC 内部结构图 .......................................................................................................... 226
ADC 数据转换时序示意图(ADC_CON1 寄存器的 SMPS=0,软件控制采样) ........ 227
ADC 数据转换时序示意图(ADC_CON1 寄存器的 SMPS=1,硬件控制采样) ........ 228
LCDC 驱动模块框图 .................................................................................................... 247
1/4 VDD 外部偏置电压参考电路 .................................................................................. 248
快速充放电示意图 ........................................................................................................ 250
LEDC 驱动模块框图..................................................................................................... 257
LEDC 工作示意图 ........................................................................................................ 258
V1.4
版权所有©上海东软载波微电子有限公司
13/310
http://www.essemi.com
HR8P506 数据手册
表目录
表
表
表
表
表
表
表
表
表
表
表
表
表
表
表
1-1
1-2
2-1
2-2
2-3
2-4
4-1
4-2
5-1
5-2
5-3
5-4
5-5
5-6
5-7
管脚说明........................................................................................................................... 25
管脚对照表 ....................................................................................................................... 27
低功耗模式时钟状态表..................................................................................................... 34
异常/中断优先级操作类型说明说明表 .............................................................................. 54
异常/中断优先级列表 ....................................................................................................... 55
IRQ 分配列表 ................................................................................................................... 56
PINT 选择对应列表 ........................................................................................................ 100
KINT 选择对应列表 ........................................................................................................ 101
I2C 总线端口信号的时序参数列表 ................................................................................. 212
建议设置......................................................................................................................... 227
12/24 小时模式对照表.................................................................................................... 238
LCDC 外部偏置电压输入配置表 .................................................................................... 248
LCDC 像素对照列表 ...................................................................................................... 249
LCDC 复用类型列表 ...................................................................................................... 252
LED 像素对照列表 ......................................................................................................... 257
V1.4
版权所有©上海东软载波微电子有限公司
14/310
http://www.essemi.com
HR8P506 数据手册
第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 端口)
LQFP32/QFN32 封装(支持 30 个 I/O 端口)
SOP28 封装(支持 26 个 I/O 端口)
电源
系统电源输入 VDD,支持工作电压为 5V 或 3.3V 的应用系统
低功耗 LVD 用于监测系统电源掉电和上电,可选择产生掉电或上电中断
复位
内嵌上电复位电路 POR
内嵌掉电复位电路 BOR
支持外部复位
时钟
外部晶体振荡器可配置,支持低速振荡器 32KHz 和高速振荡器 1~20MHz,可配置
为系统时钟源
内部 16MHz RC 振荡器(HRC)可配置为系统时钟源,出厂前已校准(全温度,
全电压范围内 16MHz 频率精度为±3%)
内部 32KHz RC 振荡器(LRC)作为 WDT 时钟源,可配置为系统时钟源
支持 PLL 倍频,时钟源可选择,最大可倍频至 48MHz,可配置为系统时钟源
内核
ARM Cortex-M0 32 位嵌入式处理器内核
支持 SWD 串行调试接口,支持 2 个监视点(watchpoint)和 4 个断点(breakpoint)
支持两组 SWD 调试接口可选择,通过配置位 DEBUG_S 进行选择
V1.4
版权所有©上海东软载波微电子有限公司
15/310
http://www.essemi.com
HR8P506 数据手册
内嵌向量中断控制器 NVIC
支持唤醒中断控制器 WIC
NVIC 包含一个不可屏蔽中断 NMI
内置 1 个 SysTick 系统定时器
硬件看门狗
时钟源可选择
支持低功耗模式下唤醒
超时计数溢出可选择触发中断或复位
存储器
36K 字节 FLASH 存储器
支持 ISP 在线串行编程
支持两组 ISP 编程接口可选择,硬件自动识别有效的 ISP 编程接口
支持 IAP 在应用中编程,可选取部分区域作为数据存储使用
支持 FLASH 编程代码加密保护
8K 字节 SRAM 存储器
- SRAM 存储空间及外设寄存器地址空间支持位带(Bit band)扩展
I/O 端口
支持最多 46 个双向 I/O 端口
- 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 级发送/接收缓冲器
支持 7/8/9 位数据格式可配
支持奇偶校验功能可配,支持硬件自动奇偶校验位判断
支持空闲帧检测
V1.4
版权所有©上海东软载波微电子有限公司
16/310
http://www.essemi.com
HR8P506 数据手册
支持接收帧错误标志、溢出标志、奇偶校验错误标志
支持数据接收和发送中断
支持 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 通道模拟输入端
支持参考电压源可选择
支持中断产生
支持转换结果自动比较
支持定时触发 ADC 转换
V1.4
版权所有©上海东软载波微电子有限公司
17/310
http://www.essemi.com
HR8P506 数据手册
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 应用领域
本芯片可用于家电,小家电以及工业控制仪表等领域。
V1.4
版权所有©上海东软载波微电子有限公司
18/310
http://www.essemi.com
HR8P506 数据手册
1. 3 结构框图
GPIO
X 46
Clock
SCU
Reset
WDT
X1
36K Bytes
FLASH
CORTEX-M0
APB
Interrupt
8K Bytes
SRAM
RTC
X1
LCDC/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.4
版权所有©上海东软载波微电子有限公司
19/310
http://www.essemi.com
HR8P506 数据手册
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
28
27
26
25
PA16/MISO0/SEG2
31
PA15/SCK0/T16N2_1/SEG1/ISDA1
PA17/MOSI0/SEG3
32
PA14/NSS0/T16N2_0/SEG0/ISCK1
PA18/T16N3_0/SCL0/SEG4
33
29
PA19/T16N3_1/SDA0/SEG5
34
30
PA21/RTCO/T16N0_1/SEG7
PA20/CLKO1/T16N0_0/SEG6
35
7
8
9
10
11
12
PB8/T32N0_0/OSC2I/AN3/SEG26
PB9/T32N0_1/OSC2O/AN4/SEG27
VSS
OSC1I/PB10
OSC1O/PB11
MRSTN/PB12
13 14 15 16 17 18 19 20 21 22 23 24
6
PB1/T32N0_1/TXD1/T16N3_1/SEG19
PB7/E0TX1/E0CK1/AN2/SEG25
PB0/T32N0_0/RXD1/T16N3_0/SEG18
5
PA31/MOSI1/TXD1/SEG17
4
PA30/MISO1/RXD1/SEG16
PB6/E0RX1/E0IO1/AN1/SEG24
PA29/SCK1/T16N2_1/SEG15
PB5/E0TX0/E0CK0/MOSI0/AN0/SEG23
PA28/NSS1/T16N2_0/SEG14
3
PA27/NSS1/TXD0/T16N_BK3/SEG13
PB4/E0RX0/E0IO0/MISO0/SEG22
PA26/SCK1/RXD0/T16N_BK2/SEG12
2
PA25/MISO1/TXD0/T16N1_1/SEG11
PB3/T16N0_1/SCK0/SDA0/SEG21
PA24/MOSI1/RXD0/T16N1_0/SEG10
48 47 46 45 44 43 42 41 40 39 38 37
PA23/TXD0/SEG9
1
PA22/RXD0/SEG8
36
LQFP48 封装图
PB2/T16N0_0/NSS0/SCL0/SEG20
1. 4. 1
PA9/TXD1/T16N1_1/AN15/CLKO0/COM4
PA8/RXD1/T16N1_0/AN14/COM5
PA7/T16N0_1/AN13/COM6
PA6/T16N0_0/AN12/COM7/LVD_IN
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
PB13/T16N1_0/BUZ/AN5
图 1-2 LQFP48 封装顶视图
V1.4
版权所有©上海东软载波微电子有限公司
20/310
http://www.essemi.com
HR8P506 数据手册
PA19/T16N3_1/SDA0/SEG5
PA18/T16N3_0/SCL0/SEG4
PA17/MOSI0/SEG3
PA16/MISO0/SEG2
PA15/SCK0/T16N2_1/SEG1/ISDA1
PA14/NSS0/T16N2_0/SEG0/ISCK1
PA13/E0TX0/E0CK0/MOSI0/COM0
PA12/E0RX0/E0IO0/MISO0/COM1
PA11/T16N2_1/T16N3_1/SCK0/COM2
PA10/T16N2_0/T16N3_0/NSS0/COM3
31
30
29
28
27
26
25
24
23
12 13 14 15 16 17 18 19 20 21 22
PA20/CLKO1/T16N0_0/SEG6
32
5
6
7
8
9
10
11
PB8/T32N0_0/OSC2I/AN3/SEG26
PB9/T32N0_1/OSC2O/AN4/SEG27
VSS
OSC1I/PB10
OSC1O/PB11
MRSTN/PB12
PB13/T16N1_0/BUZ/AN5
PA31/MOSI1/TXD1/SEG17
4
PA30/MISO1/RXD1/SEG16
PB3/T16N0_1/SCK0/SDA0/SEG21
PA28/NSS1/T16N2_0/SEG14
PA29/SCK1/T16N2_1/SEG15
3
PA27/NSS1/TXD0/T16N_BK3/SEG13
PB2/T16N0_0/NSS0/SCL0/SEG20
PA26/SCK1/RXD0/T16N_BK2/SEG12
2
PA25/MISO1/TXD0/T16N1_1/SEG11
PB1/T32N0_1/TXD1/T16N3_1/SEG19
PA23/TXD0/SEG9
PA24/MOSI1/RXD0/T16N1_0/SEG10
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/LVD_IN
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.4
版权所有©上海东软载波微电子有限公司
21/310
http://www.essemi.com
HR8P506 数据手册
PA15/SCK0/T16N2_1/SEG1/ISDA1
PA14/NSS0/T16N2_0/SEG0/ISCK1
PA13/E0TX0/E0CK0/MOSI0/COM0
PA12/E0RX0/E0IO0/MISO0/COM1
PA11/T16N2_1/T16N3_1/SCK0/COM2
PA10/T16N2_0/T16N3_0/NSS0/COM3
PA9/TXD1/T16N1_1/AN15/CLKO0/COM4
22
21
20
19
18
17
6
7
8
MRSTN/PB12
PB13/T16N1_0/BUZ/AN5
VDD
9 10 11 12 13 14 15 16
PA16/MISO0/SEG2
23
5
PB1/T32N0_1/TXD1/T16N3_1/SEG19
OSC1O/PB11
PB0/T32N0_0/RXD1/T16N3_0/SEG18
4
PA28/NSS1/T16N2_0/SEG14
OSC1I/PB10
PA27/NSS1/TXD0/T16N_BK3/SEG13
3
PA25/MISO1/TXD0/T16N1_1/SEG11
VSS
PA24/MOSI1/RXD0/T16N1_0/SEG10
2
PA23/TXD0/SEG9
PB9/T32N0_1/OSC2O/AN4/SEG27
PA22/RXD0/SEG8
1
32 31 30 29 28 27 26 25
24
LQFP32 封装图
PB8/T32N0_0/OSC2I/AN3/SEG26
1. 4. 3
PA8/RXD1/T16N1_0/AN14/COM5
PA7/T16N0_1/AN13/COM6
PA6/T16N0_0/AN12/COM7/LVD_IN
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
图 1-4 LQFP32 封装顶视图
V1.4
版权所有©上海东软载波微电子有限公司
22/310
http://www.essemi.com
HR8P506 数据手册
18 PA10/T16N2_0/T16N3_0/NSS0/COM3
17 PA9/TXD1/T16N1_1/AN15/CLKO0/COM4
19 PA11/T16N2_1/T16N3_1/SCK0/COM2
20 PA12/E0RX0/E0IO0/MISO0/COM1
21 PA13/E0TX0/E0CK0/MOSI0/COM0
22 PA14/NSS0/T16N2_0/SEG0/ISCK1
23 PA15/SCK0/T16N2_1/SEG1/ISDA1
7
PB13/T16N1_0/BUZ/AN5
9 10 11 12 13 14 15 16
6
MRSTN/PB12
PA8/RXD1/T16N1_0/AN14/COM5
PA7/T16N0_1/AN13/COM6
PA6/T16N0_0/AN12/COM7/LVD_IN
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
5
OSC1O/PB11
PB1/T32N0_1/TXD1/T16N3_1/SEG19
4
PB0/T32N0_0/RXD1/T16N3_0/SEG18
OSC1I/PB10
PA28/NSS1/T16N2_0/SEG14
2
PA27/NSS1/TXD0/T16N_BK3/SEG13
3
PA25/MISO1/TXD0/T16N1_1/SEG11
VSS
PA24/MOSI1/RXD0/T16N1_0/SEG10
1
PA23/TXD0/SEG9
PB8/T32N0_0/OSC2I/AN3/SEG26
PA22/RXD0/SEG8
32 31 30 29 28 27 26 25
24 PA16/MISO0/SEG2
QFN32 封装图
PB9/T32N0_1/OSC2O/AN4/SEG27
1. 4. 4
图 1-5 QFN32 封装顶视图
注:QFN32 封装底部接地。如图虚线框内为接地 VSS。
V1.4
版权所有©上海东软载波微电子有限公司
23/310
http://www.essemi.com
HR8P506 数据手册
SOP28 封装图
1. 4. 5
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/LVD_IN
VSS
图 1-6 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 时钟输入/输出端口
NSS0~NSS1
CMOS
—
D
SPI0~SPI1 片选端口
V1.4
版权所有©上海东软载波微电子有限公司
管脚说明
24/310
http://www.essemi.com
HR8P506 数据手册
管脚名称
输入类型
输出类型
A/D
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 外部偏置电压输入端口
CMOS
CMOS
D
T16N0/T16N1/T16N2/T16N3 外部时钟输
入/捕捉输入/调制输出端口
T16N0_0, T16N0_1
T16N1_0, T16N1_1
T16N2_0, T16N2_1
T16N3_0, T16N3_1
管脚说明
T32N0 外部时钟输入/捕捉输入/调制输出
端口
T32N0_0, T32N0_1
CMOS
CMOS
D
T16N_BK0
T16N_BK1
T16N_BK2
T16N_BK3
CMOS
—
D
T16N0/T16N1/T16N2/T16N3 刹车输入端
口(只能设置一个有效)
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 = 电源/地;
注 2:表中 T16N0_0 表示 T16N0 定时器/计数器的 T16N0CK0/T16N0IN0/T16N0OUT0 三个复用输入或输出。下文
若未特别说明,T16N0_1/T16N1_0/T16N1_1/T16N2_0/T16N2_1/T16N3_0/T16N3_1 和 T32N0_0/T32N0_1
都指其对应的三个复用输入或输出信号。
V1.4
版权所有©上海东软载波微电子有限公司
25/310
http://www.essemi.com
HR8P506 数据手册
1. 5. 2
管脚对照表
PIN NAME
(FUN0(D))
FUN1(D)
FUN2(D)
FUN3(D)
FUN4(A)
FUN5(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
-
-
-
-
-
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
V1.4
版权所有©上海东软载波微电子有限公司
-
-
26/310
http://www.essemi.com
HR8P506 数据手册
PIN NAME
(FUN0(D))
FUN1(D)
FUN2(D)
FUN3(D)
FUN4(A)
FUN5(A)
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:FUN0(D)/FUN1(D)/ FUN2(D)/FUN3(D)表示数字端口;FUN4(A)/ FUN5(A)表示模拟端口。
注 2:表中的 FUN4(A)/ FUN5(A)为模拟端口功能,不通过 GPIO_PAFUNC/GPIO_PBFUNC 控制寄存器选取。
注 3:支持两组编程/调试接口,分别为 ISCK0(PA0)
,ISDA0(PA1)和 ISCK1(PA14)
,ISDA1(PA15)
。
V1.4
版权所有©上海东软载波微电子有限公司
27/310
http://www.essemi.com
HR8P506 数据手册
第2章
系统控制及操作特性
2. 1 系统控制保护
概述
2. 1. 1
由于系统控制寄存器的访问操作会影响整个芯片的运行状态,为避免误操作导致芯片运行
不正常,芯片提供系统设置保护寄存器。修改系统控制单元前,必须先关闭写保护,操作
完成后应当重新使能写保护,使芯片安全运行。
寄存器列表和基址参见:3. 4. 3 系统控制单元(SCU)寄存器列表。
特殊功能寄存器
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
7
6
5
4
3
2
1
16
保留
15
14
13
12
11
10
9
8
保留
-
bit31-1
PROT
W
bit0
R/W
0
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,SCU_TBLREMAPEN。
2. 2 系统电源
2. 2. 1
结构框图
ADC
VDD
LCD Driver
2.2V~5.5V
VSS
LDO
Logic & Memory
图 2-1 系统电源结构框图
V1.4
版权所有©上海东软载波微电子有限公司
28/310
http://www.essemi.com
HR8P506 数据手册
2. 2. 2
芯片供电电源
芯片供电电源为 VDD,与其对应的是芯片的参考地 VSS。
VDD 给 GPIO 端口、
ADC 以及 LCDC 供电,
内部 LDO 输出电压给数字逻辑、
Flash、
SRAM
等供电。
2. 3 系统复位
2. 3. 1
2. 3. 2
概述
支持 POR 上电复位
支持 BOR 低电压监测复位
支持 MRSTN 外部端口复位
支持 WDT 看门狗计数溢出复位
支持 Cortex-M0 调试接口软件复位
结构框图
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 计数溢出复位,或软件复位,则在复位条件撤除
后,芯片会立即退出复位状态,恢复正常运行状态,与上图中的各定时器无关。
2. 3. 3
复位时序图
工作电压
VDD
0V
Tfilter
140ms
RESET
1024个
MCU_CLK
图 2-3 上电复位时序示意图
V1.4
版权所有©上海东软载波微电子有限公司
29/310
http://www.essemi.com
HR8P506 数据手册
工作电压
低电压检测阈值
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
注 1:采用 PNP 三极管复位,通过 R1(2KΩ)和 R2(10KΩ)分压作为基极输入,发射极接 VDD,集电极一路通
过 R3(20KΩ)接地,另一路通过 R4(1KΩ)和 C1(0.1μF)接地,C1 另一端作为 MRSTN 输入。
注 2:当 MRSTN 用作外部复位管脚时,芯片内部固定集成了约 45 KΩ 的上拉电阻,可以省去上图中的电阻 R1。
V1.4
版权所有©上海东软载波微电子有限公司
30/310
http://www.essemi.com
HR8P506 数据手册
特殊功能寄存器
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
保留
15
14
13
12
11
10
9
保留
-
CFG_RST
POR_LOST
SOFT_RSTF
MRSTF
WDTRSTF
BORF
PORRSTF
PORRCF
PORF
bit31-9
bit8
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
V1.4
版权所有©上海东软载波微电子有限公司
8
7
6
5
4
3
2
1
0
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 丢失标志位(内部测试用,使用注意事项
参见注 2)
0:无 POR 丢失
1:有 POR 丢失
R/W
软件复位标志位
0:无软件复位
1:有软件复位
R/W
MRSTN 复位标志位
0:无 MRSTN 复位
1:有 MRSTN 复位
R/W
WDT 复位标志位
0:无 WDT 复位
1:有 WDT 复位
R/W
BOR 掉电复位标志位
0:无 BOR 复位
1:有 BOR 复位
R/W
PORRST 上电复位标志位(内部测试用,使用
注意事项参见注 2)
0:无 PORRST 复位
1:有 PORRST 复位
R/W
PORRC 复位标志位
0:无 PORRC 复位
1:有 PORRC 复位
R/W
POR 复位标志位(内部测试用,用户无需关心
此位)
0:无 POR 复位
1:有 POR 复位
31/310
http://www.essemi.com
HR8P506 数据手册
注 1:电源供电异常时,PORRCF 标志可能会失效。
。
注 2:上电后用户必须先对 PORRSTF 作清零操作,否则即使发生 bit3~bit6 对应的复位事件,也无法置起 bit3~bit6
标志位。
注 3:对 SCU_PWRC 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
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
18
17
16
6
5
4
3
2
1
0
FLTEN
EN
保留
15
LVDO
14
13
保留
12
11
10
IFS
9
8
IE
IF
7
VS
保留
—
bit31-16
—
—
LVDO
bit15
R
LVD 输出状态位
0:被监测电压高于电压阈值
1:被监测电压低于电压阈值
—
bit14-13
—
—
IFS
IE
bit12-10
bit9
R/W
LVD 中断标志产生模式选择位
000:LVDO 上升沿产生中断
001:LVDO 下降沿产生中断
010:LVDO 高电平产生中断
011:LVDO 低电平产生中断
1xx:LVDO 变化(上升或下降沿)产生中断
R/W
LVD 中断使能位
0:禁止
1:使能
IF
bit8
R/W
LVD 中断标志位
0:未发生 LVD 触发事件
1:发生 LVD 触发事件
边沿模式产生中断标志时,可以写 1 清除标志;
电平模式产生中断标志时,该标志只读,触发电平
消失后,中断标志自动清零。
VS
bit7-4
R/W
LVD 触发电压
V1.4
版权所有©上海东软载波微电子有限公司
32/310
http://www.essemi.com
HR8P506 数据手册
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
—
FLTEN
EN
bit3-2
bit1
bit0
—
—
R/W
LVD 滤波使能位
0:禁止
1:使能
R/W
LVD 使能位
0:禁止
1:使能
注 1:对 SCU_LVDCON 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:对 LVD 滤波使能位 FLTEN,需根据实际芯片的工作电源和环境,及应用系统的具体要求进行设置,当 LVD
滤波使能时,会滤除短暂的电源电压抖动,但也会降低 LVD 电路对电源波动的反应敏感度。
V1.4
版权所有©上海东软载波微电子有限公司
33/310
http://www.essemi.com
HR8P506 数据手册
2. 5 系统低功耗操作模式
概述
2. 5. 1
配置外设时钟控制寄存器 SCU_PCLKEN,可分别关闭芯片各个外设功能模块电路的时钟,
使该部分电路功耗降到最低。
通过 WFI 指令,可使芯片进入休眠状态,配置 SCB_SCR 寄存器的 SLEEPDEEP 位,可
选择休眠状态为浅睡眠模式或深度睡眠模式。
芯片进入休眠状态后,所有 I/O 端口将保持进入休眠前的状态。为了降低功耗,所有 I/O
端口都应保持为高电平或低电平,同时避免输入端口悬空而产生漏电流,可通过弱上拉或
弱下拉将悬空的输入端口固定为高电平或低电平。
芯片进入休眠状态后,时钟工作状态参考下表:
时钟源
浅睡眠模式
深度睡眠模式
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
深度睡眠模式
在深度睡眠模式下,芯片内核时钟停止,指令停止运行。可通过复位或中断唤醒深度睡眠
模式。
芯片进入深度睡眠模式的步骤如下:
1)
配置休眠状态选择位 SLEEPDEEP=1;
2)
运行等待中断(WFI)指令,进入深度睡眠模式。
在深度睡眠模式下,外设时钟 PCLK 停止,使用 PCLK 或其分频时钟作为时钟源的外设功
能模块都停止工作,
其它使用内部低速时钟 LRC 或外部时钟 XTAL 作为时钟源的外设功能
模块可正常工作。深度睡眠模式下不访问存储器系统,相关控制器和内部总线。
V1.4
版权所有©上海东软载波微电子有限公司
34/310
http://www.essemi.com
HR8P506 数据手册
在深度睡眠模式下,内核处理器的状态和寄存器,外设寄存器和内部 SRAM 的值都会保
持,端口的逻辑电平也会保持深度睡眠前的状态。
在进入深度睡眠模式前,通过系统唤醒时间控制寄存器(SCU_WAKEUPTIME)的深度睡
眠模式时钟控制位(MOSC_EN)来选择主晶振 XTAL、PLL、HRC 和时钟滤波器 CLKFLT
等时钟模块是否关闭。选择时钟模块关闭时(即 MOSC_EN=0),可降低深度睡眠模式下
系统的功耗,但同时也增大了唤醒时所需要的时间。
2. 5. 4
睡眠模式的唤醒
芯片可通过以下事件从睡眠状态唤醒,并执行下一条指令或进入中断处理程序。如果是中
断唤醒且该中断已使能,则唤醒后立即进入中断处理程序。
浅睡眠模式唤醒:
- 所有中断均可以唤醒浅睡眠模式
- 芯片复位唤醒浅睡眠模式
深度睡眠模式唤醒:
-
2. 5. 5
外部端口中断 PINT 可以唤醒深度睡眠模式
外部端口中断 KINT 可以唤醒深度睡眠模式
RTC 中断可以唤醒深度睡眠模式
LVD 中断可以唤醒深度睡眠模式
WDT 中断可以唤醒深度睡眠模式(工作于 LRC 时钟源)
ADC 中断可以唤醒深度睡眠模式(工作于 LRC 时钟源)
芯片复位唤醒深度睡眠模式
睡眠模式的唤醒时间
芯片深度睡眠模式的唤醒时间,包括系统时钟稳定时间和内部 LDO 电压稳定时间,具体
的唤醒时间,与系统时钟源和深度睡眠模式下是否使能系统时钟有关。
内部 HRC 时钟的起振稳定时间约为 80us,外部时钟 XTAL 16MHz 振荡器的起振稳定时间
约为 5ms,外部 XTAL 32KHz 的起振稳定时间约为 1.2 秒。
内部 LDO 电压的稳定时间可软件设置:Tpclk*WAKEUPTIME(其中 Tpclk 为系统时钟周
期,WAKEUPTIME 为唤醒时间控制位 WAKEUPTIME)
,推荐 LDO 电压的稳定时
间需设置为大于 40us,否则芯片唤醒后有可能工作异常。
例如使用内部 HRC 时钟作为系统时钟时:
时钟控制位 MOSC_EN=0 时,深度睡眠模式的唤醒时间最短约为 80us+40us=120us;
时钟控制位 MOSC_EN=1 时,深度睡眠模式的唤醒时间最短约为 40us。
浅睡眠模式无唤醒时间,与 MOSC_EN 和 WAKEUPTIME 的设置无关,有唤醒事件时,
芯片立即被唤醒并开始执行程序。
2. 5. 6
FLASH存储器等待功能
FLASH 存储器的访问频率对芯片功耗影响较大,降低其访问频率,可降低芯片功耗。可
以通过降低系统时钟频率来降低 FLASH 存储器的访问频率,但这同时也会降低芯片外设
模块的工作速率。
芯片支持增加 FLASH 存储器等待时间的设置,在不降低系统时钟频率的前提下,降低
V1.4
版权所有©上海东软载波微电子有限公司
35/310
http://www.essemi.com
HR8P506 数据手册
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. 7
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
ACCT
-
R/W
-
FLASH 读取访问等待时间设置位
0:1TCLK 完成 FLASH 读取
1:2TCLK
2:3TCLK
...
F:16TCLK
注 1:对 SCU_FLASHWAIT 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:TCLK 时钟周期与芯片系统时钟周期相同。
V1.4
版权所有©上海东软载波微电子有限公司
36/310
http://www.essemi.com
HR8P506 数据手册
2. 6 系统时钟
2. 6. 1
概述
芯片系统有四个可选时钟源。
外部时钟源支持两种模式,即高速模式 HS 和 XT(又称为 HOSC,1~20MHz)和
低速模式 LP(又称为 LOSC ,32KHz)
。支持 2 组外部晶振管脚可选择。
内部高频 RC 时钟源 HRC,支持 16MHz 时钟频率。
内部低频 RC 时钟源 LRC,支持约 32KHz 时钟频率。
内部集成锁相环电路 PLL,其时钟源输入频率支持 32KHz 或 4MHz(输入时钟源为
HRC 时,芯片自动 4 分频获取 4MHz)
,PLL 输出时钟频率支持 32MHz 或 48MHz。
系统时钟支持 1~128 分频。
支持 2 组 IO 端口可输出系统时钟频率。
外部时钟停振检测,支持停振后自动切换至 LRC 时钟并产生中断。
PLL 失锁检测,支持 PLL 失锁后自动切换至使用 PLL 前的时钟源并产生中断。
支持系统时钟滤波,提高系统工作稳定性。
芯片系统时钟源的选择方式,见如下描述:
1)系统时钟为外部时钟源 XTAL:在编程界面中设置配置字,选择晶振管脚,选择高速
HS/XT 模式或低速 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)系统时钟为内部时钟源 LRC 32KHz:设置 SCU_SCLKEN0 寄存器的 CLK_SEL=1;
设置 SCU_SCLKEN1 寄存器的 PLL_EN=0。
4)系统时钟为内部时钟源 PLL 倍频时钟:设置 SCU_SCLKEN0 寄存器的 CLK_SEL=0;
设 置 SCU_SCLKEN1 寄 存 器 的 PLL_REF_SEL , 选 择 PLL 输 入 时 钟 源 , 设 置
PLL_48M_SEL,选择 PLL 输出时钟频率,设置 PLL_EN=1。
V1.4
版权所有©上海东软载波微电子有限公司
37/310
http://www.essemi.com
HR8P506 数据手册
2. 6. 2
结构框图
CFG_OSCMD[7:0]
CFG_OSC_PIN
CCM
OSC1I
OSC2I
32KHz,
1~20MHz
OSC1O
外部振荡电路
XTAL
SYSCLK_DIV
PLL_MUX
OSC_CLK
OSC2O
CLKFLT_BY
2分频
4分频
CFG_OSC_PIN
分
频
器
clkflt
PLL
16MHz内部振
荡器
32/48
MHz
HRC
SYS_CLK
8分频
16分频
32分频
64分频
32KHz 时钟
振荡器LRC
WDT_32K
128分频
PLL_EN
CLK_SEL[1:0]
WDT
看门狗
模块
PLL_REF_SEL/PLL_48M_SEL
FCLK
SCLK
HCLK
PCLK
DCLK
DCLK FCLK for Cortex M0
系统定时器SysTick
生成器
HCLK AHB总线,MEMORY
PCLK
LRC_32K
异步时钟
LCD显示驱
动模块
OSC_CLK
ADC
LRC_32K
模数转换器
EUART0
OSC_CLK
增强型串口
UART0/UART1
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/XT(又称为 HOSC,频率范围为 1~20MHz)
和低速模式 LP(又称为 LOSC,频率约为 32KHz)
。可在编程界面中设置芯片配置字进
行选择,工作在低速模式时,建议使用 32.768KHz 晶振,工作在高速模式 HS 时,建议
使用 5~20MHz 晶振,工作在高速模式 XT 时,建议使用 1~4MHz 晶振。
当使用外部振荡器时,需外接匹配电容。XTAL 振荡器电路示意图如下:
V1.4
版权所有©上海东软载波微电子有限公司
38/310
http://www.essemi.com
HR8P506 数据手册
C1
OSC1I/
OSC2I
C2
OSC1O/
OSC2O
XCLK_IN
Rf
RS
XTAL_EN
图 2-8 XTAL 振荡器电路结构示意图
注 1:电阻 RS 为可选配置。
注 2:C1 和 C2 为晶振匹配电容,根据所使用的晶振,电容参考取值范围为 10~20pF,建议 1~20MHz 晶振匹配 15pf
电容,32.768KHz 晶振匹配 12pf 电容,具体电容值需根据外接晶振的参数需求确定。
芯片上电后系统时钟默认为内部高速时钟 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 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、LCDC、
LEDC、RTC 等模块使用。对于时钟频率精度要求高的模块不建议使用 LRC 作为时钟源。
2. 6. 3. 4
锁相环PLL
PLL 时钟输入可选择 XTAL(32.768KHz、4MHz、8MHz、16MHz)
,HRC(16MHz),
LRC (32KHz)
。
V1.4
版权所有©上海东软载波微电子有限公司
39/310
http://www.essemi.com
HR8P506 数据手册
PLL 模块工作时,通过寄存器位 PLL_REF_SEL选择其输入时钟源,同时需对所选
用的 HRC,
LRC 或 XTAL 时钟振荡器进行对应的正确设置;通过寄存器位 PLL_48M_SEL
选择 PLL 模块的倍频系数,得到对应的时钟输出频率,具体见下面的详细描述:
当 PLL_REF_SEL=0/1 时:禁止设置。
当 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 必须配置为 XT 模式,外接 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.4
版权所有©上海东软载波微电子有限公司
40/310
http://www.essemi.com
HR8P506 数据手册
芯片支持 2 路 IO 端口输出时钟信号。其中 CLKO0 端口支持高频时钟直接输出,CLKO1
端 口 支 持 高 频 时 钟 512 分 频 后 输 出 。 使 用 时 需 配 置 相 应 的 端 口 复 用 选 择 寄 存 器
GPIO_PAFUNC/GPIO_PBFUNC,使能管脚的时钟输出功能。当使用高频时钟直接输出
时,需使能管脚大电流驱动模式,以免输出时钟波形严重失真。
2. 6. 3. 5
外部时钟停振检测CCM
外部时钟停振检测模块使能必须同时满足以下条件:
1. SCU_CCM 寄存器的外部时钟停振检测软件使能位 EN=1。缺省为使能。
2. 时钟源必须选择为外部时钟,即 SCU_SCLKEN0 寄存器的 CLK_SEL=2。 例如:当
PLL 时钟源输入使用的是外部时钟,但是以上 2 个条件有任何一个不满足时,外部时
钟停振检测模块不工作。
外部时钟停振检测开始工作后,当检测到外部时钟停振时,系统时钟会自动切换至 LRC
时钟,同时会置起中断标志位。但需注意,当 MOSC_EN=0 时,因芯片进入深度睡眠模
式关闭外部时钟源导致外部时钟停振的情况不会产生时钟停振中断标志位。当芯片进入
停振中断后,需立即操作 CLK_SEL 把系统时钟切换至 LRC 或 HRC,同时关闭外部时
钟振荡器(XTAL_EN=0);如果使用 PLL,则还需要关闭 PLL 模块(PLL_MUX=0,
PLL_EN=0)
。当外部时钟停振问题解决后,必须再次通过软件配置使能外部时钟。详情
参见以下外部时钟停振检测中断服务例程。
外部时钟停振检测中断服务例程
INT_CCM PROC
PUSH {LR}
LDR
R0,=SCU_SCLKEN0
LDR
R1,[R0]
LDR
R2, = 0XFFFFFFFD ;系统时钟切换至 LRC
ADDS
R1,R1,R2
LDR
R0,=SCU_SCLKEN1
LDR
R1,[R0]
LDR
R2, = 0XFFFFFFFE ;关闭外部时钟振荡器
ADDS
R1,R1,R2
…
2. 6. 3. 6
时钟滤波CLKFLT
芯片支持系统时钟分频前滤波。
系统时钟滤波使能操作时,必须先设置 SCU_WAKEUPTIME 寄存器的 CLKFLT_EN 位
为 1 以使能系统时钟滤波器,然后设置 SCU_SCLKEN0 寄存器的 CLKFLT_BY≠8'h55
以选用经滤波的系统时钟。
当需要关闭时钟滤波时,必须先旁路 CLKFLT,即设置 CLKFLT_BY=8'h55,然后再设置
CLKFLT_EN=0 来关闭时钟滤波器。详情可见时钟滤波例程。
在 CLKFLT_EN=1 的情况下,当 MOSC_EN=0,芯片进入深度睡眠模式时,CLKFLT 会
自动关断,而当深度睡眠唤醒后,CLKFLT 会自动打开;当 MOSC_EN=1,芯片进入深
度睡眠模式时,CLKFLT 不会关断。
V1.4
版权所有©上海东软载波微电子有限公司
41/310
http://www.essemi.com
HR8P506 数据手册
当系统时钟为 PLL 输出 48MHz 时钟时,需要设置 CLKFLT_BY=8'h55,旁路时钟
滤波器;当系统时钟为其它时钟源时,则需设置 CLKFLT_BY=8'h00(或其它非
8'h55 的值)
,不要旁路时钟滤波器。
为保证系统工作可靠性,除系统时钟为 PLL 输出 48MHz 时钟外,不建议关闭 CLKFLT。
睡眠模式系统状态
2. 6. 3. 7
在睡眠模式下,芯片内核处理器的状态和寄存器,外设寄存器和内部 SRAM 的值都会保
持,端口的逻辑电平也会保持睡眠前的状态。
浅睡眠模式
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
23
22
21
20
CLKOUT0_SEL
10
9
保留
bit 31-28
bit27-26
bit 25-24
V1.4
版权所有©上海东软载波微电子有限公司
24
18
17
16
1
0
CLKFLT_BY
8
7
6
5
4
3
保留
PLL_MUX
-
19
2
XTAL_LP
CLK_SEL
-
R/W
CLKO1 管脚输出选择位
00:禁止时钟输出
01:系统时钟输出(512 分频)
10:LRC 时钟输出
11:HRC 时钟输出(512 分频)
R/W
CLKO0 管脚输出选择位
00:禁止时钟输出
01:系统时钟输出
10:LRC 时钟输出
42/310
http://www.essemi.com
HR8P506 数据手册
11:HRC 时钟输出
CLKFLT_BY
bit 23-16
R/W
-
bit15
-
SYSCLK_DIV
bit14-12.
R/W
-
bit11-9
-
CLKFLT 旁路控制位
8’h55:CLKFLT 旁路
其它:不旁路 CLKFLT
CLKFLT 为系统时钟滤波器。当系统时钟为
PLL 输出 48MHz 时,需旁路 CLKFLT,否则
可能会造成系统时钟有时失效;当系统时钟为
其它时钟源时,则不建议旁路 CLKFLT,可进
一步提升系统工作稳定性。
-
系统时钟后分频选择位
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
-
-
-
外部 LP 时钟振荡器功耗模式选择位
0:低功耗(需软件固定设置为 0)
1:高功耗(仅供测试使用)
XTAL_LP
CLK_SEL
bit2
bit1-0
R/W
原始时钟源选择位
00:HRC 时钟 16MHz
01:LRC 时钟 32KHz
10:XTAL 时钟(由配置位 CFG_OSCMD 设
置为 HS,XT 或 LP 模式)
11:HRC 时钟 16MHz
注 1:对 SCU_SCLKEN0 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:
当系统时钟选择为 PLL 倍频时钟 32MHz 或 48MHz 时,需要先设置 SCU_FLASHWAIT 寄存器的 ACCT,
选择合适的 FALSH 读取时间,再将系统时钟切换到 32MHz 或 48MHz,否则会导致芯片指令运行错误。具体
参见“FLASH 存储器等待功能”章节的描述。
注 3:XTAL_LP 位需在 SCU_SCLKEN1 寄存器的 XTAL_EN 位置 1 使能后,方可写入。
注 4:当配置字将外部时钟振荡器设置为高速 HS 和 XT 模式时,XTAL_LP 的软件设置无效,外部振荡器固定为高
功耗模式;当将外部时钟振荡器设置为低速 LP 模式时,必须将 XTAL_LP 软件设置为 0,使外部振荡器工作
在低功耗模式。
V1.4
版权所有©上海东软载波微电子有限公司
43/310
http://www.essemi.com
HR8P506 数据手册
系统时钟控制寄存器 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
-
PLL_RDY
HRC_RDY
bit 31-19
bit18
bit17
10
9
8
PLL_REF_SEL
7
6
5
4
3
18
17
16
PLL_RDY
HRC_RDY
XTAL_RDY
2
1
0
HRC_EN
XTAL_EN
保留
-
-
R
PLL 时钟振荡模式稳定标志位
0:不稳定
1:稳定
R
内部高速时钟振荡模式稳定标志位
0:不稳定
1:稳定
XTAL_RDY
bit16
R
外部时钟振荡模式稳定标志位
0:不稳定
1:稳定
该标志位仅在寄存器位 XTAL_EN=1 时有效,作为
XTAL 振荡器工作稳定的标志位
-
bit15-14
-
-
PLL_BYLOCK
PLL_EN
PLL_48M_SEL
bit13
bit12
bit11
R/W
PLL 锁频信号旁路控制位
0:不旁路
1:旁路
R/W
PLL 倍频电路工作使能位
0:禁止
1:使能(使能前需先确认 PLL_REF_SEL 所选择的
时钟源是否稳定)
R/W
PLL 输出时钟选择位
0:输出约 32MHz 时钟
1:输出约 48MHz 时钟
PLL 输入时钟源选择位
000:禁止设置
001:禁止设置
010:内部 HRC 时钟(约 16MHz)
011:内部 LRC 时钟(约 32KHz)
100:外部 4MHz 时钟
101:外部 8MHz 时钟
110:外部 16MHz 时钟
111:外部 32KHz 时钟
PLL_REF_SEL
bit10-8
R/W
-
bit7-2
-
HRC_EN
bit1
R/W
V1.4
版权所有©上海东软载波微电子有限公司
-
内部高速时钟振荡电路使能位
0:禁止
44/310
http://www.essemi.com
HR8P506 数据手册
1:使能
XTAL_EN
bit0
外部时钟振荡电路使能位
0:禁止
1:使能
R/W
注 1:对 SCU_SCLKEN1 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:如果配置字 CFG_OSCMD 将外部 XTAL 时钟配置为 LP 模式,则在软件设置 XTAL_EN=1 后,再由软件设置
寄存器 SCU_SCLKEN0 的位 XTAL_LP=0,将 LP 时钟振荡器设置为低功耗模式。
外设时钟控制寄存器(SCU_PCLKEN)
偏移地址:48H
复位值: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
-
R/W
-
bit 27-26
-
SPI1_EN
bit 25
R/W
SPI1 时钟使能位
0:禁止
1:使能
SPI0_EN
bit 24
R/W
SPI0 时钟使能位
0:禁止
1:使能
-
bit 23-21
-
R/W
-
bit 19-18
-
UART1_EN
bit 17
2
-
bit 15-13
-
V1.4
版权所有©上海东软载波微电子有限公司
GPIO_EN
SCU_EN
N
EUART0 时钟使能位
0:禁止
1:使能
-
UART0 时钟使能位
0:禁止
1:使能
R/W
0
-
R/W
bit 16
1
-
UART1 时钟使能位
0:禁止
1:使能
UART0_EN
EN
I2C0 时钟使能位
0:禁止
1:使能
bit28
bit 20
EN
-
I2C0_EN
EUART0_EN
16
UART0_
IAP_E
保留
保留
-
17
UART1_
保留
保留
SPI0_EN
EN
15
20
EUART0
I2C0_
-
45/310
http://www.essemi.com
HR8P506 数据手册
T32N0_EN
bit 12
R/W
T32N0 时钟使能位
0:禁止
1:使能
T16N3_EN
bit 11
R/W
T16N3 时钟使能位
0:禁止
1:使能
T16N2_EN
bit 10
R/W
T16N2 时钟使能位
0:禁止
1:使能
R/W
T16N1 时钟使能位
0:禁止
1:使能
R/W
T16N0 时钟使能位
0:禁止
1:使能
R/W
WDT 时钟使能位
0:禁止
1:使能
R/W
LCDC 时钟使能位
0:禁止
1:使能
R/W
RTC 时钟使能位
0:禁止
1:使能
ADC 时钟使能位
0:禁止
1:使能
T16N1_EN
T16N0_EN
WDT_EN
LCD_EN
RTC_EN
bit 9
bit 8
bit 7
bit 6
bit 5
ADC_EN
bit 4
R/W
-
bit 3
-
IAP_EN
bit 2
-
R/W
FLASH_IAP 时钟使能位
0:禁止
1:使能
GPIO_EN
bit 1
R/W
GPIO 时钟使能位
0:禁止
1:使能
SCU_EN
bit 0
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
V1.4
版权所有©上海东软载波微电子有限公司
46/310
http://www.essemi.com
HR8P506 数据手册
STR
; 首先使能 SCU 时钟
R1, [R0]
LDR R1, =0X00000081
STR
; 使能 SCU 和 WDT 时钟
R1, [R0]
注 3:WDT 时钟使能位 WDT_EN=0 时,对 WDT 模块的寄存器读写操作被禁止,但 WDT 计数器仍保持工作状态,
看门狗定时器功能仍有效。
注 4:外设模块时钟关闭后,与该外设模块对应的所有特殊功能寄存器均保持时钟关闭前的状态,并且无法进行读
写操作。
系统唤醒时间控制寄存器(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
-
bit31-19
11
-
bit18-16
W/R
-
bit15
-
CLKFLT_EN
bit14
bit13
17
16
10
9
8
7
6
5
4
3
2
1
0
WAKEUPTIME
LDOLP_VOSEL
FLASHPW_PD
18
LDOLP_VOSEL
-
在深度睡眠模式下,LDO 电压输出选择位
000:1.5V
100:1.4V(推荐使用该档位)
其它:仅供测试使用,请勿设置
-
W/R
睡眠模式下 FLASH 电源控制位
0:开启
1:关断(仅供测试使用,实际应用时禁止关断
FLASH 电源)
R/W
CLKFLT 系统时钟滤波器使能位
0:禁止
1:使能
CLKFLT 为系统时钟滤波器,为保证系统稳定性,
在芯片正常工作时,需保持使能,在深度睡眠模式
下,可禁止 CLKFLT,降低芯片功耗
MOSC_EN
bit12
R/W
深度睡眠模式时钟控制位
0:深度睡眠模式下,自动关闭 HRC、PLL、XTAL
和时钟滤波器 CLKFLT
1:深度睡眠模式下,使能 HRC、PLL、XTAL 和
时钟滤波器 CLKFLT
WAKEUPTIME
bit11-0
R/W
唤醒时间控制位
TPCLK* WAKEUPTIME
注 1:对 SCU_WAKEUPTIME 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
注 2:对 LDOLP_VOSEL寄存器位,需软件在芯片初始化时固定设置为 100,以降低深度睡眠模式下的芯片
V1.4
版权所有©上海东软载波微电子有限公司
47/310
http://www.essemi.com
HR8P506 数据手册
功耗。
注 3:对 FLASHPW_PD 寄存器位,需软件固定设置为 0,禁止写 1,否则可能会导致芯片工作异常。
注 4:深度睡眠模式下,当 MOSC_EN 为 1 时,HRC、PLL、XTAL 和时钟滤波器还必须各自的控制位 HRC_EN、
PLL_EN、XTAL_EN 和 CLKFLT_EN 为 1 时,才实际被使能。
注 5:唤醒时间控制位 WAKEUPTIME,用于设定在深度睡眠模式下,被关闭的 HRC、PLL 和 XTAL 时钟模
块,在芯片被唤醒后,能够恢复稳定工作的等待时间,通常保持为默认时间值,具体根据芯片在应用系统中
的实际工作状况进行调整;如果在深度睡眠模式下,上述各时钟模块仍保持使能,则唤醒时间可以设置为 0。
外部时钟检测控制寄存器(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
bit31-17
-
-
FLAG
7
6
5
IFS
4
IE
FLAG
bit16
R
CCM 外部时钟停振检测标志位
0:晶振未停振
1:晶振停振
-
bit15-9
-
-
IF
IFS
bit8
bit7-5
2
1
保留
0
EN
R/W
R/W
CCM 中断标志产生模式选择位
000:CCM_FLAG 上升沿产生中断,晶振停振
001:CCM_FLAG 下降沿产生中断,晶振恢复振荡
010:CCM_FLAG 高电平产生中断,晶振停振
011:CCM_FLAG 低电平产生中断,晶振恢复振荡
1xx:CCM_FLAG 变化(上升或下降沿)产生中断
外部时钟停振中断使能位
0:禁止
1:使能
bit 4
R/W
-
bit3-1
-
bit0
3
CCM 中断标志位
0:未发生 CCM 触发事件
1:发生 CCM 触发事件
边沿模式产生中断标志时,可以写 1 清除标志;
电平模式产生中断标志时,该标志只读,触发电平消失
后,中断标志自动清零。
IE
EN
16
R/W
-
外部时钟停振检测使能位
0:禁止
1:使能
注:对 SCU_CCM 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
V1.4
版权所有©上海东软载波微电子有限公司
48/310
http://www.essemi.com
HR8P506 数据手册
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
R
-
IF
bit8
R/W
-
bit7
-
LK_IFS
bit6-4
R/W
-
bit3-1
-
IE
bit0
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 清除标志;
电平模式产生中断标志时,该标志只读,触发电平消失
后,中断标志自动清零。
-
PLL 锁定标志产生模式选择位
000:PLL 锁定标志上升沿产生中断,锁频成功
001:PLL 锁定标志下降沿产生中断,锁频失败
010:PLL 锁定标志高电平产生中断,锁频成功
011:PLL 锁定标志低电平产生中断,锁频失败
1xx:PLL 锁定标志变化(上升或下降沿)产生中断
-
PLL 锁定中断使能位
0:禁止
1:使能
注:对 SCU_PLLLKCON 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
2. 6. 5
系统时钟应用说明
以下操作都已关闭系统保护寄存器 SCU_PROT,且使能了 SCU_PCLKEN 寄存器的 SCU
时钟使能位 SCU_EN。
2. 6. 5. 1
外部时钟XTAL
使用外部时钟 XTAL:
SWITCH_XTAL PROC
PUSH
{LR}
V1.4
版权所有©上海东软载波微电子有限公司
49/310
http://www.essemi.com
HR8P506 数据手册
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X01
ORRS R1, R1, R2
STR
R1, [R0]
WAIT_XTAL_FLAG
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X010000
TST
R1, R2
BEQ
WAIT_XTAL_FLAG
;使能 XTAL_EN
;等待 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:
SWITCH_HRC PROC
PUSH
{LR}
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X02
ORRS R1, R1, R2
STR
R1, [R0]
WAIT_HRC_FLAG
LDR
R0, =SCU_SCLKEN1
LDR
R1, [R0]
LDR
R2, =0X020000
TST
R1, R2
BEQ
WAIT_HRC_FLAG
LDR
LDRB
LDR
ANDS
STRB
POP
R0,=SCU_SCLKEN0
R1,[R0]
R2, =0XFC
R1, R1, R2
R1, [R0]
{PC}
V1.4
版权所有©上海东软载波微电子有限公司
;使能 HRC_EN
;等待 HRC_RDY
;系统时钟选用 HRC
50/310
http://www.essemi.com
HR8P506 数据手册
ALIGN
LTORG
ENDP
2. 6. 5. 3
内部低速时钟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]
POP
{PC}
ALIGN
LTORG
ENDP
2. 6. 5. 4
;系统时钟选用 LRC
锁相环PLL
使用 PLL 前必须先使能 PLL 输入源时钟使能位,且等待输入时钟源稳定。
以 PLL 输入时钟选择为外部 16MHz 时钟,输出时钟为 48MHz 为例:
SWITCH_XTAL16M_PLL48M PROC
PUSH
{LR}
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
V1.4
版权所有©上海东软载波微电子有限公司
51/310
http://www.essemi.com
HR8P506 数据手册
TST
BEQ
LDR
LDR
LDR
ORRS
STR
POP
ALIGN
LTORG
ENDP
R1, R2
WAIT_PLL_FLAG
R0, =SCU_SCLKEN0
R1, [R0]
R2, =0X0100
R1, R1, R2
R1, [R0]
{PC}
;等待 PLL_RDY
;系统时钟选用 PLL 倍频时钟
关闭 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]
POP
{PC}
ALIGN
LTORG
ENDP
2. 6. 5. 5
;系统时钟选用原始时钟
;关断 PLL 模块
时钟滤波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]
LDR
R0, =SCU_SCLKEN0
LDRB R1, =0X55
STRB R1, [R0, #0X02]
POP
{PC}
ALIGN
V1.4
版权所有©上海东软载波微电子有限公司
;使能 CLKFLT_EN
;系统时钟选用滤波后时钟
52/310
http://www.essemi.com
HR8P506 数据手册
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]
POP
{PC}
ALIGN
LTORG
ENDP
V1.4
版权所有©上海东软载波微电子有限公司
;系统时钟选用滤波前时钟
;关闭 CLKFLT_EN
53/310
http://www.essemi.com
HR8P506 数据手册
2. 7 中断和异常处理
中断和异常
2. 7. 1
Cortex-M0 内核支持嵌套向量中断控制器 NVIC(Nested Vectored Interrupt Controller),具
体功能如下:
支持中断嵌套
支持中断向量
支持中断优先级动态调整
支持中断可屏蔽
对 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
V1.4
版权所有©上海东软载波微电子有限公司
简介
没有异常在运行
复位
系统服务调用
-
54/310
http://www.essemi.com
HR8P506 数据手册
编号
类型
优先级
简介
17
IRQ1
可编程控制
…
…
…
47
IRQ31
可编程控制
外设中断 1
…
外设中断 31
表 2-3 异常/中断优先级列表
Cortex-M0 支持如下异常/中断:
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
预留
V1.4
版权所有©上海东软载波微电子有限公司
55/310
http://www.essemi.com
HR8P506 数据手册
编号
类型
功能
说明
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 中断
40
IRQ24
UART1 中断
UART1 中断
41
IRQ25
EUART0 中断
42
IRQ26
Reserved
预留
43
IRQ27
SPI0 中断
SPI0 中断
44
IRQ28
SPI1 中断
SPI1 中断
45
IRQ29
I2C0 中断
I2C0 中断
46
IRQ30
Reserved
预留
47
IRQ31
CCM 中断
外部振荡器停振检测中断
EUART0 中断
表 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
保留
-
bit31-6
7
NMICS
-
-
NMICS
bit5-1
R/W
NMI 不可屏蔽中断选择位
00000:IRQ0
00001:IRQ1
…
11111:IRQ31
NMIEN
bit0
R/W
NMI 不可屏蔽中断使能位
0:禁止
V1.4
版权所有©上海东软载波微电子有限公司
0
NMIEN
56/310
http://www.essemi.com
HR8P506 数据手册
1:使能
注 1:对 SCU_NMICON 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
中断向量表重映射使能寄存器(SCU_TBLREMAPEN)
偏移地址:60H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
7
6
5
4
3
2
1
16
保留
15
14
13
12
11
10
9
8
保留
—
—
bit31-1
EN
bit0
R/W
0
EN
—
中断向量表重映射使能
0:中断向量表位于 Flash Memory 的“0”地址开始的一段
空间(默认状态);目前共支持 48 个向量,因此,这段
空间的大小为 192 字节;
1:中断向量表位于“中断向量表偏移寄存器”指定的地址开
始的 192 字节空间。
注:对 SCU_TBLREMAPEN 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
中断向量表偏移寄存器(SCU_TBLOFF)
偏移地址:64H
复位值:00100000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
6
5
20
19
18
17
16
4
3
2
1
0
TBLOFF
15
14
13
12
11
10
TBLOFF
TBLOFF
bit31-0
9
8
7
TBLOFF
R/W
中断向量表偏移地址
该寄存器存放重映射后的中断向量表所在的起始地址,“中
断向量表重映射使能寄存器”为“1”时有效。
高 24 位 TBLOFF可读可写,但低 8 位 TBLOFF
只读,不可写,且读取时返回全零。
注:该地址为起始地址是有要求的:必须先求出系统中共有多少个向量,再把这个数字向上增大到是 2 的整次幂,
而起始地址必须对齐到后者的边界上。如果一共有 32 个中断,则共有 32+16(系统异常)=48 个向量,向上
增大到 2 的整次幂后值为 64,因此地址值必须能被 64×4=256 整除,从而合法的起始地址可以是:0x000,
0x100,0x200 等。
V1.4
版权所有©上海东软载波微电子有限公司
57/310
http://www.essemi.com
HR8P506 数据手册
硬件错误标志寄存器(SCU_FAULTFLAG)
偏移地址: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
FLAG2
FLAG1
FLAG0
保留
15
14
13
12
11
10
9
8
7
保留
-
-
bit31-3
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 寄存器,关闭写保护。
以下 NVIC 寄存器列表及基址参见:3. 5. 2 中断控制器(NVIC)寄存器列表
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 表示中断使能无效。
V1.4
版权所有©上海东软载波微电子有限公司
58/310
http://www.essemi.com
HR8P506 数据手册
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
CLRENA
bit31-0
R/W
IRQx 禁止位
0:中断禁止无效
1:中断禁止有效
软件写 1 禁止中断请求,写 0 无效
注:对 NVIC_ICER 寄存器中的各 IRQx 禁止位,写 0 无效,写 1 才禁止中断请求;读操作时,实际是读取 IRQx 中
断禁止的状态,读取的值为 1 表示中断禁止有效,为 0 表示中断禁止无效。
IRQ0~31 置中断挂起寄存器(NVIC_ISPR)
偏移地址:100H
复位值: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 表示中断未挂起。
V1.4
版权所有©上海东软载波微电子有限公司
59/310
http://www.essemi.com
HR8P506 数据手册
IRQ0~31 清中断挂起寄存器(NVIC_ICPR)
偏移地址:180H
复位值: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 表示中断未挂起。
IRQ0~3 优先级控制寄存器(NVIC_PR0)
偏移地址:300H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
14
25
24
保留
PRI_3
15
26
13
PRI_1
12
11
23
22
21
20
19
10
9
8
6
5
4
PRI_0
PRI_3
bit31-30
R/W
-
bit29-24
-
PRI_2
bit23-22
R/W
-
bit21-16
-
PRI_1
bit15-14
R/W
-
bit13-8
-
PRI_0
bit7-6
R/W
-
bit5-0
-
V1.4
版权所有©上海东软载波微电子有限公司
7
17
16
2
1
0
保留
PRI_2
保留
18
3
保留
IRQ3 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ2 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ1 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ0 优先级设置位
00:最高优先级
11:最低优先级
-
60/310
http://www.essemi.com
HR8P506 数据手册
IRQ4~7 优先级控制寄存器(NVIC_PR1)
偏移地址:304H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
15
14
26
25
24
保留
PRI_7
13
12
11
10
9
8
7
保留
PRI_5
23
22
21
20
19
6
5
4
3
bit31-30
R/W
-
bit29-24
-
PRI_6
bit23-22
R/W
-
bit21-16
-
PRI_5
bit15-14
R/W
-
bit13-8
-
PRI_4
bit7-6
R/W
-
bit5-0
-
17
16
2
1
0
18
17
16
2
1
0
保留
PRI_4
PRI_7
18
保留
PRI_6
IRQ7 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ6 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ5 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ4 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ8~11 优先级控制寄存器(NVIC_PR2)
偏移地址:308H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
15
14
26
25
24
保留
PRI_11
13
PRI_9
12
11
23
22
21
20
19
保留
PRI_10
10
9
8
保留
6
5
4
PRI_8
PRI_11
bit31-30
R/W
-
bit29-24
-
PRI_10
bit23-22
R/W
-
bit21-16
-
PRI_9
bit15-14
R/W
V1.4
版权所有©上海东软载波微电子有限公司
7
3
保留
IRQ11 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ10 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ9 优先级设置位
61/310
http://www.essemi.com
HR8P506 数据手册
00:最高优先级
11:最低优先级
-
-
bit13-8
PRI_8
bit7-6
R/W
-
bit5-0
-
-
IRQ8 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ12~15 优先级控制寄存器(NVIC_PR3)
偏移地址:30C H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
14
25
24
保留
PRI_15
15
26
13
12
11
22
21
20
19
10
9
8
7
6
5
4
3
bit31-30
R/W
-
bit29-24
-
PRI_14
bit23-22
R/W
-
bit21-16
-
PRI_13
bit15-14
R/W
-
bit13-8
-
PRI_12
bit7-6
R/W
-
bit5-0
-
17
16
2
1
0
18
17
16
2
1
0
保留
PRI_12
PRI_15
18
保留
PRI_14
保留
PRI_13
23
IRQ15 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ14 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ13 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ12 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ16~19 优先级控制寄存器(NVIC_PR4)
偏移地址:310H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
15
14
25
24
保留
PRI_19
PRI_17
26
13
12
11
23
22
21
20
19
保留
PRI_18
10
保留
V1.4
版权所有©上海东软载波微电子有限公司
9
8
7
6
PRI_16
5
4
3
保留
62/310
http://www.essemi.com
HR8P506 数据手册
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
-
bit5-0
-
IRQ19 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ18 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ17 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ16 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ20~23 优先级控制寄存器(NVIC_PR5)
偏移地址:314H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
14
25
24
保留
PRI_23
15
26
13
PRI_21
12
11
23
22
21
20
19
10
9
8
6
5
PRI_20
PRI_23
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
-
V1.4
版权所有©上海东软载波微电子有限公司
7
17
16
2
1
0
保留
PRI_22
保留
18
4
3
保留
IRQ23 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ22 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ21 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ20 优先级设置位
00:最高优先级
11:最低优先级
-
63/310
http://www.essemi.com
HR8P506 数据手册
IRQ24~27 优先级控制寄存器(NVIC_PR6)
偏移地址:318H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
15
14
26
25
24
保留
PRI_27
13
12
11
10
9
8
保留
PRI_25
23
22
21
20
19
7
6
5
4
3
bit31-30
R/W
-
bit29-24
-
PRI_26
bit23-22
R/W
-
bit21-16
-
PRI_25
bit15-14
R/W
-
bit13-8
-
PRI_24
bit7-6
R/W
-
bit5-0
-
17
16
2
1
0
18
17
16
2
1
0
保留
PRI_24
PRI_27
18
保留
PRI_26
IRQ27 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ26 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ25 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ24 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ28~31 优先级控制寄存器(NVIC_PR7)
偏移地址:31CH
复位值: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
保留
PRI_30
10
9
8
保留
6
5
PRI_28
PRI_31
bit31-30
R/W
-
bit29-24
-
PRI_30
bit23-22
R/W
-
bit21-16
-
V1.4
版权所有©上海东软载波微电子有限公司
7
4
3
保留
IRQ31 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ30 优先级设置位
00:最高优先级
11:最低优先级
-
64/310
http://www.essemi.com
HR8P506 数据手册
PRI_29
bit15-14
R/W
-
bit13-8
-
PRI_28
bit7-6
R/W
-
bit5-0
-
V1.4
版权所有©上海东软载波微电子有限公司
IRQ29 优先级设置位
00:最高优先级
11:最低优先级
-
IRQ28 优先级设置位
00:最高优先级
11:最低优先级
-
65/310
http://www.essemi.com
HR8P506 数据手册
2. 8 系统控制块(SCB)
概述
2. 8. 1
系统控制块提供芯片内核系统实现的状态信息,并对内核系统工作进行控制。
SCB 寄存器列表和基址参见:3. 5. 3 系统控制块(SCB)寄存器列表
特殊功能寄存器
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
8
7
6
保留
VECTPENDING
NMIPENDSET
bit31
R/W
-
bit30-27
-
PENDSTSET
bit26
R/W
V1.4
版权所有©上海东软载波微电子有限公司
21
20
19
18
保留
ISRPENDDING
5
4
17
16
VECTPENDING
3
2
1
0
VECTACTIVE
NMI 中断挂起控制位
0:不置 NMI 中断挂起
1:置 NMI 中断挂起
-
置 SysTick 异常挂起位
0:无效
66/310
http://www.essemi.com
HR8P506 数据手册
1:置 SysTick 异常挂起
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
—
—
注:寄存器 SCB_AIRCR 只能进行字写入,且高半字只能写入 0x05FA,否则对该寄存器的写入操作无效。
V1.4
版权所有©上海东软载波微电子有限公司
67/310
http://www.essemi.com
HR8P506 数据手册
系统控制寄存器(SCB_SCR)
偏移地址:10H
复位值: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
SLEEP
SLEEP
DEEP
ONEXIT
保留
15
14
13
12
11
10
9
8
7
6
SEVONP
保留
保留
END
—
—
bit31-5
SEVONPEND
bit4
R/W
—
bit3
—
SLEEPDEEP
bit2
保留
—
中断被挂起时,是否作为唤醒事件的选择位
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
6
5
4
19
18
3
2
17
16
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,指示非对齐访问产生硬故障
—
bit2-0
—
—
V1.4
版权所有©上海东软载波微电子有限公司
68/310
http://www.essemi.com
HR8P506 数据手册
系统处理程序优先级寄存器 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
15
14
26
25
24
23
保留
PRI_15
13
12
11
22
21
20
19
10
9
8
7
6
18
17
16
2
1
0
保留
PRI_14
5
4
3
保留
PRI_15
bit31-30
R/W
—
bit29-24
—
PRI_14
bit23-22
R/W
—
bit21-0
—
V1.4
版权所有©上海东软载波微电子有限公司
SysTick(异常编号 15)的优先级设置位
—
PendSV(异常编号 14)的优先级设置位
—
69/310
http://www.essemi.com
HR8P506 数据手册
2. 9 系统定时器(SYSTICK)
2. 9. 1
概述
24 位系统递减计数器,递减至零可自动重载计数初值
可产生周期性 SysTick 异常,用作嵌入式操作系统的多任务调度计数器;或对于无
嵌入式操作系统的运用,可用于调用需周期性执行的任务
SysTick 亦可用作普通定时器,如用于延时计数
SysTick 异常优先级可由系统处理优先级寄存器 SHPR3 的 PRI_15设定
SysTick 异常处理的挂起可由中断控制和状态寄存器 SCB_ICSR 的 PENDSTSET
位设置
工作时钟可为系统时钟 HCLK 或其三分频
SysTick 是一个系统递减计数器,配置 SYST_RVR 寄存器,可设定计数初值。当 SysTick
计数为 0 时,COUNTFLAG 状态位置 1,并重载 SYST_RVR 中的计数初值。在处理器
调试停机时,SysTick 停止计数。在计数过程中,如果将 SYST_RVR 寄存器设置为 0,
则计数器递减计数到 0 后,停止计数。
NVIC
异常15
HCLK
三分频
0
24位SysTick计数器
1
SYST_CSR.CLKSOURCE
图 2-9 系统定时器框图
SysTick 的当前计数值可以通过读 SYST_CVR 寄存器获得。如果写 SYST_CVR 寄存器,
则将该寄存器清零,并且将 COUNTFLAG 位清零,写操作不会触发 SysTick 异常事件。
访问 SysTick 寄存器时,需使用字操作方式。配置 SysTick 计数器的步骤如下:
1)
设置计数器重装值寄存器 SYST_RVR。
2)
清除计数器当前值寄存器 SYST_CVR。
3)
设置控制和状态寄存器 SYST_CSR。
SysTick 寄存器列表和基址参见:3. 5. 1 系统定时器(SYSTICK)寄存器列表
V1.4
版权所有©上海东软载波微电子有限公司
70/310
http://www.essemi.com
HR8P506 数据手册
特殊功能寄存器
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
该位读操作后清零,或写 SYST_CVR 寄存器清零
—
bit15-3
—
—
CLKSOURCE
bit2
TICKINT
bit1
ENABLE
bit0
R/W
SYSTICK 时钟源选择位
0:基准时钟
1:处理器时钟
R/W
SYSTICK 异常挂起使能位
0:计数到 0 时,不产生异常挂起
1:计数到 0 时,产生异常挂起
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
—
RELOAD
bit31-24
bit23-0
V1.4
版权所有©上海东软载波微电子有限公司
—
R/W
—
SYSTICK 计数器重载值
计数范围 0x00_0001~0xFF_FFFF。如果为 0,
SysTick 不计数。
71/310
http://www.essemi.com
HR8P506 数据手册
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:不提供外部基准时钟;提供内部基准时钟,其
频率为 FHCLK/3
1:提供外部基准时钟
SKEW
bit30
R
TENMS 校准值是否准确的标志位
0:TENMS 校准值准确
1:TENMS 校准值不准确
—
bit29-24
—
—
TENMS
bit23-0
R/W
SYSTICK 校准值
读取为 0 时,表示校准值未知
注:本产品只提供内部基准时钟,其频率为 FHCLK/3。
V1.4
版权所有©上海东软载波微电子有限公司
72/310
http://www.essemi.com
HR8P506 数据手册
2. 10 配置字软件控制
在芯片配置字的 CFG_BORV为 11 时,可通过软件设置寄存器 SCU_SOFTCFG 来控制
BOR 电压点,电源电压低于 BORV设定的电压时,将产生掉电复位。
系统配置软件控制寄存器(SCU_SOFTCFG)
偏移地址:24H
复位值: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
保留
-
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
注:对 SCU_SOFTCFG 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
V1.4
版权所有©上海东软载波微电子有限公司
73/310
http://www.essemi.com
HR8P506 数据手册
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
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
4
3
2
1
0
T16N3EN
T16N2EN
T16N1EN
T16N0EN
保留
15
14
13
12
11
10
保留
9
8
7
T32N0EN
6
5
保留
-
Bit31-9
-
T32N0EN
bit8
R/W
-
bit7-4
-
T16N3EN
bit3
R/W
T16N3使能位
0:-
1:使能
R/W
T16N2使能位
0:-
1:使能
R/W
T16N1使能位
0:-
1:使能
R/W
T16N0使能位
0:-
1:使能
T16N2EN
T16N1EN
T16N0EN
bit2
bit1
bit0
-
T32N0使能位
0:-
1:使能
-
注 1:对 SCU_TIMEREN 寄存器的各位写 0 无效,写 1 使能后,硬件自动清零。
注 2:对 SCU_TIMEREN 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
V1.4
版权所有©上海东软载波微电子有限公司
74/310
http://www.essemi.com
HR8P506 数据手册
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
-
T16N3DIS
T16N2DIS
T16N1DIS
T16N0DIS
bit3
bit2
bit1
bit0
7
6
保留
5
-
T32N0关停位
0:-
1:关停
-
R/W
T16N3关停位
0:-
1:关停
R/W
T16N2关停位
0:-
1:关停
R/W
T16N1关停位
0:-
1:关停
R/W
T16N0关停位
0:-
1:关停
注 1:对 SCU_TIMERDIS 寄存器的各位写 0 无效,写 1 关停后,硬件自动清零。
注 2:对 SCU_TIMERDIS 寄存器进行写操作前,需要设置 SCU_PROT 寄存器,关闭写保护。
V1.4
版权所有©上海东软载波微电子有限公司
75/310
http://www.essemi.com
HR8P506 数据手册
第3章
存储器资源
3. 1 内部存储器地址映射
芯片内部存储器包括程序存储器,数据存储器,外设寄存器和系统内核寄存器,各存储器区
域的地址映射关系如下图所示,图中对系统内核寄存器区域的地址映射进行了详细描述。
0xFFFF_FFFF
0xFFFF_FFFF
Reserved
System
0xFFF0_0000
0xFFEF_FFFF
0xE000_0000
0xDFFF_FFFF
Reserved
Reserved
0xFFE0_0000
0xFFDF_FFFF
Reserved
0xFFD0_0000
0xFFCF_FFFF
0xA000_0000
0x9FFF_FFFF
Reserved
Reserved
Peripheral
0x4000_0000
0x3FFF_FFFF
0xE020_0000
0xE01F_FFFF
Reserved
SRAM
0x2000_0000
0x1FFF_FFFF
0xE010_0000
0xE00F_FFFF
Internal Private
Peripheral Bus
0xE000_0000
Code
0x0000_0000
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
0xE00F_FFFF
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
芯片内部的信息区 FLASH 分为两个分区:INFO0 区和 INFO1 区。
INFO0 信息区用于存储芯片配置字 CFG_WORD0,CFG_WORD1,CFG_WORD2
- 支持编程器可读写
INFO1 信息区包含 96 位芯片唯一识别码 UID
3. 2. 1. 1
芯片唯一识别码 UID 出厂时已固定,无法更改,程序只读
芯片配置字
芯片配置字位于 FLASH 存储器的 INFO0 信息区,用户可在 ISP 编程时进行设置。芯片的
各种功能配置由芯片配置字和各功能相关寄存器共同设置完成。芯片配置字包括外部
XTAL 振荡器工作模式的选择、WDT 使能控制、BOR 电压选择等。
V1.4
版权所有©上海东软载波微电子有限公司
76/310
http://www.essemi.com
HR8P506 数据手册
配置字名称
CFG_WORD0
地址
00100004H
-
bit4-0
-
bit5
XTAL 晶振管脚选择位
0:分布在 PB8,PB9
1:分布在 PB10,PB11(默认)
bit6
内部 HRC 时钟频率选择位
0:16MHz(默认,HRC 时钟频率为 16MHz)
1:其它(内部测试使用,禁止设置为 1)
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_OSC_PIN
INTOSC_SEL
CFG_PWRTEB
CFG_MRSTN
DEBUG_S
CFG_DEBUG
bit 12-11
bit13
bit 15-14
MRSTN 管脚复用配置位
00:GPIO 功能
其它:MRSTN 功能(默认)
SWD 调试管脚选择位
0:PA14 和 PA15 端口作为调试管脚
1:PA0 和 PA1 端口作为调试管脚(默认)
SWD 调试模式使能位
0x:禁止
10:使能(默认)
。由 DEBUG_S 配置位所选定的 IO 管脚被
强制作为 SWD 调试端口,用户程序对该 IO 管脚的控制
无效。
11:禁止
注 1:对配置位 CFG_PWRTEB,仅在将 MRSTN 管脚作为外部复位(CFG_MRSTN≠00)时,该配置位才有效,
推荐用户设置为上电延时使能(CFG_PWRTEB=0)
,只有在应用系统特别要求芯片上电后快速进入工作状态,
并且系统供电电源稳定可靠的条件下,才可考虑禁止上电延时。
注 2:当 MRSTN 管脚用作外部复位管脚时,芯片内部固定集成了约 45K 欧姆的弱上拉电阻。
注 3:对上电 140ms 延时,在 MRSTN 管脚复用为 GPIO 功能时,或当芯片发生 BOR 掉电复位后,该延时固定为
使能,与配置位 CFG_PWRTEB 无关。
注 4:在对 Flash 程序加密编程时,必须要禁止 CFG_DEBUG 位,否则加密无效,编程工具将提示错误。
V1.4
版权所有©上海东软载波微电子有限公司
77/310
http://www.essemi.com
HR8P506 数据手册
配置字名称
CFG_WORD1
地址
0010000CH
-
bit 0
-
bit1
WDT 硬件看门狗使能位
0:禁止(默认)
1:使能(WDT 计数时钟源固定为内部 LRC 时钟)
WDTINTEN
bit 2
WDT 硬件看门狗中断使能位(仅在 CFG_WDTEN=1 时有效)
0:禁止(默认)
1:使能
-
bit 4-3
-
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)写保护(默认)
CFG_WDTEN
WDTRL
FWPS
FWPEB
bit13
-
bit15-14
FLASH 自编程操作(IAP)写保护区使能位
0:使能
1:禁止(默认)
-
注 1:写保护区使能后,位于写保护区的地址单元,不支持 IAP 擦除和编程操作。
注 2:在 SWD 调试模式下,需要禁止 WDT,否则在调试过程中,WDT 会始终保持工作,可能会产生计数溢出复
位,导致芯片调试异常。
配置字名称
CFG_WORD2
地址
00100010H
-
CFG_OSCMD
bit7-0
-
bit15-8
XTAL 振荡器工作模式选择位
8’h2C:高速 HS 模式(5~20MHz)(默认)
8’h48:高速 XT 模式(1~4MHz)
8’hF0:低速 LP 模式(32KHz)
V1.4
版权所有©上海东软载波微电子有限公司
78/310
http://www.essemi.com
HR8P506 数据手册
注:若应用系统中需使用 LP 模式晶振,在芯片配置字已设置低速 LP 模式后,还需依次进行软件设置 XTAL_EN=1
和 XTAL_LP=0,使晶振工作在低功耗模式下,否则外部 LP 晶振可能起振异常。
芯片唯一识别码
3. 2. 1. 2
96 位芯片唯一识别码 UID 位于 FLASH 存储器的 INFO1 信息区,以 byte 为单位存放,
分为 12 个 bytes,用户程序可读。UID11~UID0 各字节描述如下。
芯片唯一识别码(UID11~UID0)
001001D7H (UID11) ~ 001001D0H (UID4), 001001C6H (UID3),
001001C4H (UID2) ~ 001001C2H (UID0)
地址
UID11
Bits 95~88
芯片唯一识别码 UID11,字节单元地址 001001D7H
UID10
Bits 87~80
芯片唯一识别码 UID10,字节单元地址 001001D6H
UID9
Bits 79~72
芯片唯一识别码 UID9,字节单元地址 001001D5H
UID8
Bits 71~64
芯片唯一识别码 UID8,字节单元地址 001001D4H
UID7
Bits 63~56
芯片唯一识别码 UID7,字节单元地址 001001D3H
UID6
Bits 55~48
芯片唯一识别码 UID6,字节单元地址 001001D2H
UID5
Bits 47~40
芯片唯一识别码 UID5,字节单元地址 001001D1H
UID4
Bits 39~32
芯片唯一识别码 UID4,字节单元地址 001001D0H
UID3
Bits 31~24
芯片唯一识别码 UID3,字节单元地址 001001C6H
UID2
Bits 23~16
芯片唯一识别码 UID2,字节单元地址 001001C4H
UID1
Bits 15~8
芯片唯一识别码 UID1,字节单元地址 001001C3H
UID0
Bits 7~0
芯片唯一识别码 UID0,字节单元地址 001001C2H
3. 2. 2
程序区FLASH
芯 片 内 部 的 程 序 存 储 器 FLASH 总 容 量 为 36K 字 节 , 地 址 范 围 为
0000_0000H~0000_8FFFH,共分 36 页,每页 1K 字节。FLASH 存储器支持至少 10 万次
擦写次数,10 年以上的数据保持时间。
芯片支持通过 IAP 模块对程序存储器 FLASH 进行编程、页擦除操作,其中字地址单元编
程时间约为 20us,页擦除时间约为 2ms。
芯片支持在 SWD 调试模式下对 Flash 进行编程、擦除、读取等操作,对 SWD 调试模式,
需在 ISP 编程时通过配置字 CFG_DEBUG 和 DEBUG_S 使能并选择调试端口。
3. 2. 3
自编程操作(IAP)
芯片内部 FLASH 存储器,支持应用中自编程操作 IAP(In-Application Programming)。
写保护区使能后,位于写保护区的 FLASH 存储器地址单元,不支持 IAP 擦除和编程操作。
可通过配置字 FWPEB 使能 FLASH 写保护区,通过配置字 FWPS 选择写保护区地址范围。
3. 2. 3. 1
IAP概述
支持 FLASH 数据保护,进行 IAP 操作前需先进行解锁,去除相关寄存器的写保护。
支持程序存储器 FLASH 全擦除模式(仅在 SWD 调试时有效)和页擦除模式。
V1.4
版权所有©上海东软载波微电子有限公司
79/310
http://www.essemi.com
HR8P506 数据手册
支持字编程模式,每个字包含 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 的
访问操作。
具体操作流程图如下所示:
开始
设置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”时有效。
V1.4
版权所有©上海东软载波微电子有限公司
80/310
http://www.essemi.com
HR8P506 数据手册
开始
设置IAP_UL,对IAP解锁
设置IAP_TRIG为0x000051AE,
选择全擦除模式
N
Y
BSY = 1 ?
是否超时?
Y
N
ERASE_END =1 ?
N
出错处理
Y
结束
图 3-3 IAP 全擦除操作流程图
IAP 页擦除操作流程
页擦除目标页可通过 IAPPA 寄存器设置。完成页擦除后,IAPPA 自动+1。
开始
设置IAP_UL,对IAP解锁
设置IAPPA,选择页地址
设置IAP_TRIG为0x00005EA1,
选择页擦除模式
N
设置IAP_UL
对IAP解锁
BSY = 1 ?
Y
Y
N
设置IAP_UL,对IAP解锁
ERASE_END =1 ?
N
出错处理
Y
Y
N
是否超时?
连续擦除下一页?
N
完成?
Y
结束
图 3-4 IAP 页擦除操作流程图
IAP 编程操作流程
编程目标单元地址可通过 IAPCA 寄存器设置。完成目标单元编程后,IAPCA 自动+1,
对地址连续的多字编程,无需再修改 IAPCA 寄存器;由于 IAPCA 只在当前页中进行单
元寻址,跨页编程时,必须重新填写 IAPPA,如指定下一页首地址。
V1.4
版权所有©上海东软载波微电子有限公司
81/310
http://www.essemi.com
HR8P506 数据手册
开始
设置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 编程操作流程图
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)
入口地址:保存在 0x10000000 单元内
- 参数输入:R0-编程的 Flash 首地址,R1-放在 SRAM 空间的编程数据首地址,R2编程数据长度,R3-当编程到页首时是否先进行页擦除(R3 非零为擦除,
R3=0 为不擦除)
- 参数输出:R0-函数执行状态(R0=1 为成功,R0=0 为失败)
单字编程函数和多字编程函数流程图可参见图 3-5 IAP 编程操作流程图。对单字编程函
数忽略图中的“连续编程下一单元”判断分支。
-
V1.4
版权所有©上海东软载波微电子有限公司
82/310
http://www.essemi.com
HR8P506 数据手册
特殊功能寄存器
3. 2. 4
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
IAP 解锁:写入 0x0000_00A5;
IAP 上锁:进行如下任一操作均可上锁
写入其它值,IAP 上锁;
写 IAP 触发寄存器 IAP_TRIG,IAP 自动上锁;
写保留地址,IAP 上锁;
IAP 软件复位后,IAP 上锁。
R/W
注 1:IAP 上锁后,处于写保护状态的寄存器为 IAP_CON,IAP_ADDR,IAP_DATA,IAP_TRIG。
注 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
5
4
3
2
FLASH_ACK
FLASH_REQ
17
16
保留
15
14
13
12
11
10
9
8
7
保留
-
FLASH_FAIL
bit31-8
6
-
-
IAP 访问 FLASH 地址失败标志位
0:IAP 未访问 FLASH 地址保护区
1:IAP 访问 FLASH 地址保护区,访问失败
FLASH_FAIL
bit7
R
-
bit6
R/W
1
0
RST
EN
-
FLASH_ACK
bit5
R
FLASH 应答信号
0:不允许访问
1:允许 IAP 访问 FLASH 存储器
FLASH_REQ
bit4
R/W
IAP 访问 FLASH 的请求信号
0:无请求
1:IAP 请求访问 FLASH 存储器
-
bit3-2
-
-
RST
bit1
W
IAP 软件复位
0:读取时始终为 0
1:复位
V1.4
版权所有©上海东软载波微电子有限公司
保留
83/310
http://www.essemi.com
HR8P506 数据手册
EN
bit0
IAP 使能位
0:禁止
1:使能
R/W
注:对 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
-
IFREN
bit20
R/W
-
bit19-16
-
bit15-10
19
18
7
6
5
4
17
16
1
0
保留
3
2
保留
IAPCA
-
IAPPA
20
IFREN
-
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,指定下一页地址。
V1.4
版权所有©上海东软载波微电子有限公司
84/310
http://www.essemi.com
HR8P506 数据手册
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
注:对 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
9
8
7
TRIG
TRIG
bit31-0
IAP 操作命令(写入该寄存器后,IAP 重新上锁)
0x0000_51AE:全擦除(仅在 SWD 调试时有效)
0x0000_5EA1:页擦除(擦除 INFO 区时,必须先
执行全擦除操作,否则无效)
0x0000_5DA2:编程模式
其它:无操作(IAP 完成后,硬件自动更改为无操作)
R/W
注:对 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
保留
-
bit31-4
-
TIMEOUT_ERR
bit3
R/W
V1.4
版权所有©上海东软载波微电子有限公司
4
3
2
1
0
TIMEOUT_ERR
PROG_END
ERASE_END
BSY
-
IAP 超时错误标志位
85/310
http://www.essemi.com
HR8P506 数据手册
0:写 0 清除,触发 IAP_TRIG 自动清除,
或 IAP 软件复位清除
1:IAP 操作超时,硬件自动置 1
PROG_END
ERASE_END
BSY
bit2
bit1
bit0
R/W
IAP 编程结束标志位
0:写 0 清除,触发 IAP_TRIG 自动清除,
或 IAP 软件复位清除
1:当前单元编程完成,硬件自动置 1
R/W
IAP 页擦除结束标志位
0:写 0 清除,触发 IAP_TRIG 自动清除,
或 IAP 软件复位清除
1:当前页擦除完成,硬件自动置 1
R
IAP 工作状态位
0:空闲,IAP 软件复位可将该位清零
1:IAP 操作正在进行中
注:IAP_STA 寄存器的 TIMEOUT_ERR 为 1 时,硬件自动清零 IAP_CON 寄存器的 EN 位。
V1.4
版权所有©上海东软载波微电子有限公司
86/310
http://www.essemi.com
HR8P506 数据手册
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
FLASH
0x0000_0000
0x2000_2000
0x2000_1FFF
8K Bytes
SRAM
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.4
版权所有©上海东软载波微电子有限公司
87/310
http://www.essemi.com
HR8P506 数据手册
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 外设存储器分配示意图
注:Reserved 保留寄存器区域为只读,读出值为 0000_0000H。
3. 4. 2
外设寄存器位带扩展
外设寄存器支持位带扩展,可使用普通的加载和存储指令对单比特进行读写操作。通过位
带扩展,除可在 0x4000_0000 起始的空间访问外设外,还可在起始地址为 0x4200_0000
的位带扩展区以单比特方式访问外设寄存器。
位带扩展区把每个比特扩展为一个 32-bit 的字,通过访问这些字可达到访问原始比特的目
的。对于外设寄存器的某一位,如果它所在字节地址为 A,位序号为 N(0≤N≤7),则该位
在外设寄存器位带扩展后的地址为:
V1.4
版权所有©上海东软载波微电子有限公司
88/310
http://www.essemi.com
HR8P506 数据手册
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 端口数据寄存器和方向控制寄存器的位操作,这些
端口位操作寄存器不再支持位带扩展访问。除上述寄存器外,其它外设寄存器均支持位带
扩展访问操作。
RTC 模块里的 RTC_WA、RTC_DA、RTC_HMS、RTC_YMDW 寄存器也不支持位带扩
展访问。
3. 4. 3
系统控制单元(SCU)寄存器列表
系统控制单元(SCU)
寄存器名称
寄存器偏移地址
寄存器描述
SCU 基地址:4000_0000H
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
中断向量表偏移寄存器
3. 4. 4
GPIO寄存器列表
GPIO 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
GPIO 基地址:4000_0400H
GPIO_PAPORT
0000H
PA 端口状态寄存器
GPIO_PADATA
0004H
PA 端口数据寄存器
GPIO_PADATABSR
0008H
PA 输出置位寄存器
GPIO_PADATABCR
000CH
PA 端口输出清零寄存器
GPIO_PADATABRR
0010H
PA 端口输出翻转寄存器
V1.4
版权所有©上海东软载波微电子有限公司
89/310
http://www.essemi.com
HR8P506 数据手册
GPIO 寄存器列表
寄存器名称
寄存器偏移地址
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 滤波器分配控制寄
V1.4
版权所有©上海东软载波微电子有限公司
寄存器描述
90/310
http://www.essemi.com
HR8P506 数据手册
GPIO 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
存器
GPIO_TXPWM
0380H
脉宽调制寄存器
GPIO_BUZC
0384H
蜂鸣器计数控制寄存器
寄存器偏移地址
寄存器描述
IAP_CON
0000H
IAP 控制寄存器
IAP_ADDR
0004H
IAP 地址寄存器
IAP_DATA
0008H
IAP 数据寄存器
IAP_TRIG
000CH
IAP 触发寄存器
IAP_UL
0010H
IAP 解锁寄存器
IAP_STA
0014H
IAP 状态寄存器
寄存器偏移地址
寄存器描述
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 参考控制寄存器
寄存器偏移地址
寄存器描述
RTC_CON
0000H
RTC 控制寄存器
RTC_CAL
0004H
RTC 调校寄存器
RTC_WA
0008H
RTC 周闹钟寄存器
RTC_DA
000CH
RTC 日闹钟寄存器
RTC_HMS
0010H
RTC 时分秒寄存器
RTC_YMDW
0014H
RTC 年月日周寄存器
3. 4. 5
IAP寄存器列表
IAP 寄存器列表
寄存器名称
IAP 基地址:4000_0800H
3. 4. 6
ADC寄存器列表
ADC 寄存器列表
寄存器名称
ADC 基地址:4000_1000H
3. 4. 7
RTC寄存器列表
RTC 寄存器列表
寄存器名称
RTC 基地址:4000_1400H
V1.4
版权所有©上海东软载波微电子有限公司
91/310
http://www.essemi.com
HR8P506 数据手册
RTC 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
RTC_IE
0018H
RTC 中断使能寄存器
RTC_IF
001CH
RTC 中断标志寄存器
RTC_WP
0020H
RTC 写保护寄存器
注:寄存器 RTC_HMS 和 RTC_YMDW 在进行写操作时,只支持字写入方式,不支持字节和半字写入方式。
3. 4. 8
LCDC寄存器列表
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
LEDC寄存器列表
LED 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
LED_CON0
0000H
LED 控制寄存器 0
LED_SEL
0008H
LED 段使能寄存器
LED_CON1
0010H
LED 控制寄存器 1
LED_D0
0020H
LED 像素寄存器 0
LED_D1
0024H
LED 像素寄存器 1
LED 基地址:4000_1800H
注:LCDC/LEDC 模块中寄存器 LCD_CON0 和 LED_CON0,LCD_SEL 和 LED_SEL,LCD_CON1 和 LED_CON1,
LCD_D0 和 LED_D0,LCD_D1 和 LED_D1 地址共用。
V1.4
版权所有©上海东软载波微电子有限公司
92/310
http://www.essemi.com
HR8P506 数据手册
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.4
版权所有©上海东软载波微电子有限公司
93/310
http://www.essemi.com
HR8P506 数据手册
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 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
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
UART_RB1
0064H
UART 接收缓冲寄存器 1
UART_RB2
0068H
UART 接收缓冲寄存器 2
UART_RB3
006CH
UART 接收缓冲寄存器 3
UART_RB4
0070H
UART 接收缓冲寄存器 4
UART0 基地址:4000_6000H
UART1 基地址:4000_6400H
V1.4
版权所有©上海东软载波微电子有限公司
94/310
http://www.essemi.com
HR8P506 数据手册
UART 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
UART_RB5
0074H
UART 接收缓冲寄存器 5
UART_RB6
0078H
UART 接收缓冲寄存器 6
UART_RB7
007CH
UART 接收缓冲寄存器 7
寄存器偏移地址
寄存器描述
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. 14 EUART0 寄存器列表
EUART 寄存器列表
寄存器名称
EUART0 基地址:4000_7000H
3. 4. 15 SPI0/ SPI1 寄存器列表
SPI 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
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 波特率设置寄存器
SPI0 基地址:4000_8000H
SPI1 基地址:4000_8400H
V1.4
版权所有©上海东软载波微电子有限公司
95/310
http://www.essemi.com
HR8P506 数据手册
3. 4. 16 I2C0 寄存器列表
I2C 寄存器列表
寄存器名称
寄存器偏移地址
寄存器描述
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 状态寄存器
I2C0 基地址:4000_9000H
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_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 优先级控制寄存器
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 优先级控制寄存器
NVIC 基地址:E000_E100H
V1.4
版权所有©上海东软载波微电子有限公司
96/310
http://www.essemi.com
HR8P506 数据手册
3. 5. 3
系统控制块(SCB)寄存器列表
系统控制块(SCB)
寄存器名称
寄存器偏移地址
寄存器描述
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
SCB 基地址:E000_ED00H
V1.4
版权所有©上海东软载波微电子有限公司
97/310
http://www.essemi.com
HR8P506 数据手册
第4章
输入输出端口(GPIO)
4. 1 概述
本芯片支持两组 GPIO 端口,最多支持共 46 个 I/O 管脚。
所有 I/O 端口都是 CMOS 施密特输入和 CMOS 输出驱动(可配置为开漏输出)
,每个 I/O 端
口的复用功能和工作模式由端口复用选择寄存器 GPIO_PAFUNC/GPIO_PBFUNC 配置。
当 I/O 端口配置为通用数字 I/O 功能时,其输出状态由端口方向控制寄存器 GPIO_PADIR/
GPIO_PBDIR 配置,输入状态由相应的端口输入控制寄存器 GPIO_PAINEB/ GPIO_PBINEB
配置。
当 I/O 端口处于输出状态时,其电平由端口数据寄存器 GPIO_PADATA/ GPIO_PBDATA
决定,1 为高电平,0 为低电平;当 I/O 端口处于输入状态时,其电平状态可通过读取端口状
态寄存器 GPIO_PAPORT/GPIO_PBPORT 获得。
端 口 输 出 电 平 支 持 位 操 作 。 将 GPIO 输 出 置 位 寄 存 器 GPIO_PADATABSR/
GPIO_PBDATABSR 相应位写 1,可将相应位的 GPIO 端口设置为高电平;将 GPIO 端口输
出清零寄存器 GPIO_PADATABCR / GPIO_PBDATABCR 相应位写 1,可将相应位的 GPIO
端口设置为低电平;将 GPIO 端口输出翻转寄存器 GPIO_PADATABRR/ GPIO_PBDATABRR
相应位写 1,可将相应位的 GPIO 端口电平取反。
端 口 方 向 控 制 支 持 位 操 作 。 将 GPIO 端 口 方 向 置 位 寄 存 器 GPIO_PADIRBSR/
GPIO_PBDIRBSR 相应位写 1,可将相应位的 GPIO 端口设置为输入;将 GPIO 端口方向清
零寄存器 GPIO_PADIRBCR/ GPIO_PBDIRBCR 相应位写 1,可将相应位的 GPIO 端口设置
为输出;将 GPIO 端口方向翻转寄存器 GPIO_PADIRBRR/GPIO_PBDIRBRR 相应位写 1,
可将相应位的 GPIO 端口方向取反。
当 I/O 端口配置为复用功能时,作为芯片外设功能模块的复用端口,其输出状态仍需通过端
口方向控制寄存器 GPIO_PADIR/GPIO_PBDIR 进行配置,输入状态仍需通过相应的端口输
入控制能寄存器 GPIO_PAINEB/GPIO_PBINEB 进行配置。
每个 I/O 端口均支持开漏输出,由相应的端口开漏控制寄存器 GPIO_PAODE/ GPIO_PBODE
控制开漏输出是否使能。
每个 I/O 端口均支持弱上拉或弱下拉,由相应的端口弱上拉使能寄存器 GPIO_PAPUE/
GPIO_PBPUE 控制其弱上拉功能是否使能,由相应的端口弱下拉使能寄存器 GPIO_PAPDE/
GPIO_PBPDE 控制其弱下拉功能是否使能。需注意不可同时使能弱上拉和弱下拉功能。
每个 I/O 端口均支持电流驱动能力可配置,由相应的端口驱动电流控制寄存器 GPIO_PADS/
GPIO_PBDS 选择 I/O 端口的输出驱动能力,
可选择为强电流驱动 I/O 端口,或者普通驱动 I/O
端口。其中 PA6~PA13 端口可复用为 LCDC/LEDC 模块的 COM7~COM0 端口,当其设置为
强电流驱动 I/O 端口时,具有比其它 I/O 端口更强的驱动能力,具体参见《附录 2 电气特性》
章节的描述。
V1.4
版权所有©上海东软载波微电子有限公司
98/310
http://www.essemi.com
HR8P506 数据手册
4. 2 结构框图
VDD
GPIO中断
系统时钟
地址总线
读数据总线
VDD VDD
IO输出
IO控制
IO逻辑
IO输入
写数据总线
其他控制
控制总线
外设使能
外设输出
外设输入
GPIO
IOMUX
数模选择
模拟输入
模拟输出
图 4-1 IO 端口电路结构图
4. 3 外部端口中断
支持全部 IO 口外部端口中断,分成 8 组,每组对应一个 IRQ,并可通过 GPIO_PINTCFG 寄
存器的 PINT7CFG~PINT0CFG 位配置各外部中断触发方式。触发方式配置为高电平或低电
平时,中断标志只有在触发电平翻转后,才可通过对 GPIO_PINTIF 寄存器的相应位写 1 来清
除。
GPIO_PINTIE 寄存器的输入屏蔽使能位 PMASK,可对外部端口中断输入进行屏蔽,屏蔽位
使能时,对应的中断输入源就被屏蔽了,不会产生中断和标志位。
GPIO_PINTIE 寄存器的外部端口中断使能位 PINTIE,可对每个外部端口中断标志 PINTIF 是
否触发外部端口中断请求,进行配置。
PINT0SEL
PINT0CFG
PINTIE0
PINT0_IN0
PINT0_IN1
PINT0_IN2
PINT0_IN3
PINT0_IN4
中断
PORT
选择
PINT0_IN
PINT中断
产生电路
IRQ_PINT0
PINTIF0
PINT0_IN5
PMASK0
图 4-2 外部 PINT0 端口中断电路结构示意图
上图以外部中断 PINT0 电路结构示意图为例,可见其有 6 个可选外部中断源,分别来自 PA0、
PA8、PA16、PA24、PB0 和 PB8。PINT0 ~PINT7 的外部中断源如下表所示:
V1.4
版权所有©上海东软载波微电子有限公司
99/310
http://www.essemi.com
HR8P506 数据手册
PINT
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
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 ~KINT7,其中任意一个按键
输入都可以触发按键中断,每个按键输入可以从 6 个 I/O 端口中选择一个作为其输入源。
每个输入屏蔽使能位 KMASK,可对相应的输入源 KINT 进行屏蔽。屏蔽使能时,不论 KINT_IN
输入如何变化,中断标志 KINTIF 均保持不变;屏蔽使能时,可通过端口中断配置寄存器
GPIO_KINTCFG,对各个按键输入 KINT 进行配置,选择中断的有效触发边沿或电平。
每个按键中断使能位 KINTIE,可对相应的按键标志 KINTIF 是否触发按键中断请求,进行配
置。
GPIO_KINTCFG 寄存器的按键中断配置位 KINT7CFG~KINT0CFG,可对每个输入源的触发
方式进行配置,根据端口电平变化的不同状态,触发中断。切换输入源触发方式时,需先屏
蔽输入源,避免误产生中断;或先禁止按键中断,并在切换完成后,对中断标志进行清零,
然后再使能按键中断。
KINT0SEL
KINT0CFG
KINTIE0
KINT0_IN0
KINT0_IN1
KINT0_IN2
KINT0_IN3
KINT0_IN4
KINT0_IN5
按键中
断
PORT KINT0_IN
选择
KMASK
KINT按键中断
产生电路
KINTIF0
IRQ_KINT0
图 4-3 外部按键 KINT0 中断电路结构示意图
上图以外部中断 KINT0 电路结构示意图为例,可见其有 6 个可选外部中断源,分别来自 PA0、
PA8、PA16、PA24、PB0 和 PB8。KINT0 ~KINT7 的外部中断源如下表所示:
V1.4
版权所有©上海东软载波微电子有限公司
100/310
http://www.essemi.com
HR8P506 数据手册
KINT
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
-
表 4-2 KINT 选择对应列表
4. 5 Buzz输出
Buzz 输出可用于驱动蜂鸣器等音频发声器件。
GPIO_BUZC 控制寄存器用于使能 Buzz 和设定其输出信号的频率。Buzz 信号频率为:
FBUZ =
Fpclk
2 ×(BUZ _ LOAD + 1)
由 GPIO_PAFUNC0 和 GPIO_PBFUNC1 寄存器来设定 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 寄存器的 TX0_S3~TX0_S0 选
取)
。当 GPIO_TXPWM 寄存器的 TX1PS 控制位为 2’b11 时,TXPWM1 调制信号可输出至
E0TX0、T16N1OUT0、T16N1OUT1 或 BUZ 管脚(由 GPIO_TXPWM 寄存器的 TX1_S3~
TX1_S1 选取)
。
E0TX0
或TXD0
Buzz信号
TXPWM0或
TXPWM1
图 4-4 Buzz 高电平调制输出波形图
V1.4
版权所有©上海东软载波微电子有限公司
101/310
http://www.essemi.com
HR8P506 数据手册
E0TX0
或TXD0
Buzz信号
TXPWM0或
TXPWM1
图 4-5 Buzz 低电平调制输出波形图
4. 6 特殊功能寄存器
PA 端口状态寄存器(GPIO_PAPORT)
偏移地址:00H
复位值: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
V1.4
版权所有©上海东软载波微电子有限公司
R/W
PA 端口输出寄存器
0:输出低电平
1:输出高电平
102/310
http://www.essemi.com
HR8P506 数据手册
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
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
20
19
18
17
16
6
5
4
3
2
1
0
DATABCR
15
14
13
12
11
10
9
8
7
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
V1.4
版权所有©上海东软载波微电子有限公司
W
PA 输出翻转选择
0:不改变输出电平
1:相应端口输出翻转
103/310
http://www.essemi.com
HR8P506 数据手册
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
6
5
4
3
2
1
0
DIRBSR
15
14
13
12
11
10
9
8
7
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
V1.4
版权所有©上海东软载波微电子有限公司
W
PA 端口方向清零选择
0:不改变 GPIO_PADIR 的值
1:对应的 GPIO_PADIR 位设置为 0
104/310
http://www.essemi.com
HR8P506 数据手册
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
29
28
27
14
保留
13
12
PA3
—
26
保留
PA7
11
25
24
23
10
保留
bit31-30
9
8
PA2
—
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
V1.4
版权所有©上海东软载波微电子有限公司
22
保留
PA6
7
20
19
保留
PA5
6
保留
21
5
4
PA1
3
PA4
2
保留
1
0
PA0
—
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 复用选择位
105/310
http://www.essemi.com
HR8P506 数据手册
00~11:FUN0~FUN3
—
bit7-6
—
PA1
bit5-4
R/W
—
bit3-2
—
PA0
bit1-0
R/W
—
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
保留
PA15
14
保留
13
12
PA11
—
26
11
25
24
23
保留
PA14
10
保留
bit31-30
9
—
PA15
bit29-28
R/W
—
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
—
V1.4
版权所有©上海东软载波微电子有限公司
8
PA10
22
7
21
20
19
保留
PA13
6
保留
5
4
PA9
18
3
16
PA12
2
保留
17
1
0
PA8
—
PA15 复用选择位
00:FUN0
01:FUN1
10:FUN2
11:FUN3
—
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
—
106/310
http://www.essemi.com
HR8P506 数据手册
PA8
bit1-0
R/W
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
—
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
21
20
19
6
5
4
18
保留
PA21
保留
PA18
PA23
V1.4
版权所有©上海东软载波微电子有限公司
22
3
16
PA20
2
保留
PA17
17
1
0
PA16
—
PA23 复用选择位
00:FUN0
01:FUN1
10:FUN2
11:FUN3
—
PA22 复用选择位
00~11:FUN0~FUN3
—
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
107/310
http://www.essemi.com
HR8P506 数据手册
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
22
保留
PA30
8
7
6
保留
PA26
—
PA31
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
—
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
21
20
19
5
4
18
保留
PA29
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 复用选择位
00~11:FUN0~FUN3
—
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_PAFUNC 寄存器仅用于端口的数字输入输出功能选择。
使用端口的模拟功能时,
需要设置 GPIO_PADIR
和 GPIO_PAINEB 寄存器的对应位为 1,关闭端口的数字输入和输出功能。
V1.4
版权所有©上海东软载波微电子有限公司
108/310
http://www.essemi.com
HR8P506 数据手册
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
R/W
端口输出开漏使能位
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
PUE
15
14
13
12
11
10
9
8
7
PUE
PUE
bit31-0
V1.4
版权所有©上海东软载波微电子有限公司
R/W
端口弱上拉使能位
0:禁止
1:使能
109/310
http://www.essemi.com
HR8P506 数据手册
PA 端口弱下拉使能寄存器(GPIO_PAPDE)
偏移地址:40H
复位值: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
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
R/W
端口输出驱动能力选择位
0:普通电流驱动
1:强电流驱动
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
-
PORT
bit31-14
bit13-0
V1.4
版权所有©上海东软载波微电子有限公司
-
-
R
PB 端口输入/输出电平
0:低电平
1:高电平
110/310
http://www.essemi.com
HR8P506 数据手册
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
-
bit31-14
DATABSR
bit13-0
-
-
W
PB 输出置位选择
0:不改变输出电平
1:相应端口输出高电平
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
-
DATABCR
bit31-14
bit13-0
V1.4
版权所有©上海东软载波微电子有限公司
-
-
W
PB 输出清零选择
0:不改变输出电平
1:相应端口输出低电平
111/310
http://www.essemi.com
HR8P506 数据手册
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
-
-
bit31-14
DIR
bit13-0
R/W
-
PB 端口方向控制位
0:输出
1:输入(若 GPIO_PBINEB 对应位为 0,则可作为
数字输入端口使用。若需使能模拟通道功能,
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
-
DIRBSR
bit31-14
bit13-0
V1.4
版权所有©上海东软载波微电子有限公司
-
-
W
PB 端口方向置位选择
0:不改变 GPIO_PBDIR 的值
1:对应的 GPIO_PBDIR 位设置为 1
112/310
http://www.essemi.com
HR8P506 数据手册
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
18
17
16
保留
15
14
13
12
11
10
9
8
保留
DIRBRR
-
bit31-14
DIRBRR
bit13-0
-
-
W
PB 端口方向翻转选择
0:不改变 GPIO_PBDIR 的值
1:对应的 GPIO_PBDIR 位值翻转
PB[7:0]端口复用选择寄存器(GPIO_PBFUNC0)
偏移地址:A4H
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
29
28
27
14
保留
13
12
PB3
—
PB7
26
保留
PB7
11
25
24
23
10
保留
bit31-30
bit29-28
V1.4
版权所有©上海东软载波微电子有限公司
9
8
PB2
—
R/W
22
保留
PB6
7
20
19
保留
PB5
6
保留
21
5
4
PB
3
PB4
2
保留
1
0
PB0
—
PB7 复用选择位
00:FUN0
01:FUN1
113/310
http://www.essemi.com
HR8P506 数据手册
10:FUN2
11:FUN3
—
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
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
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
保留
15
14
13
保留
12
PB11
—
11
21
20
19
10
保留
bit31-22
9
8
7
保留
PB10
—
PB13
bit21-20
R/W
—
bit19-18
—
PB12
bit17-16
R/W
V1.4
版权所有©上海东软载波微电子有限公司
6
5
4
18
保留
PB13
3
2
保留
PB9
17
16
PB12
1
0
PB8
—
PB13 复用选择位
00:FUN0
01:FUN1
10:FUN2
11:FUN3
—
PB12 复用选择位
00~11:FUN0~FUN3
114/310
http://www.essemi.com
HR8P506 数据手册
—
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
PB11 复用选择位
00~11:FUN0~FUN3
—
PB10 复用选择位
00~11:FUN0~FUN3
—
PB9 复用选择位
00~11:FUN0~FUN3
—
PB8 复用选择位
00~11:FUN0~FUN3
注:GPIO_PBFUNC 仅用于端口的数字输入输出功能选择。使用 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
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
-
ODE
bit31-14
bit13-0
V1.4
版权所有©上海东软载波微电子有限公司
-
R/W
-
端口输出开漏使能位
0:禁止,端口为推挽输出
1:使能,端口为开漏输出
115/310
http://www.essemi.com
HR8P506 数据手册
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:使能
注:当 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
9
8
保留
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
V1.4
版权所有©上海东软载波微电子有限公司
-
端口输出驱动能力选择位
116/310
http://www.essemi.com
HR8P506 数据手册
0:普通电流驱动
1:强电流驱动
PINT 中断使能寄存器(GPIO_PINTIE)
偏移地址:00H
复位值: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
PMASK
—
PINTIE
—
bit31-16
PMASK
bit15-8
PINTIE
bit7-0
—
R/W
PINT 中断源屏蔽控制位
0:不屏蔽
1:屏蔽
R/W
PINT 使能位
0:禁止
1:使能
PINT 中断标志寄存器(GPIO_PINTIF)
偏移地址: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
9
8
保留
-
PINTIF
bit 31-8
bit7-0
PINTIF
-
R/W
-
GPIO 外部中断标志位
0:无中断
1:有中断
软件写 1 清除中断标志位,写 0 无效
注:对 GPIO_PINTIF 寄存器中的各中断标志位,写 0 无效,写 1 才能清除标志位;读操作时,读取的值为 1 表示
有中断发生。
V1.4
版权所有©上海东软载波微电子有限公司
117/310
http://www.essemi.com
HR8P506 数据手册
PINT0~7 中断源选择寄存器(GPIO_PINTSEL)
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
保留
15
保留
30
29
28
PINT7SEL
14
13
12
PINT3SEL
—
27
保留
11
保留
26
25
24
PINT6SEL
10
9
8
PINT2SEL
bit31
23
保留
7
保留
—
PINT7SEL
bit30-28
R/W
—
bit27
—
PINT6SEL
bit26-24
R/W
—
bit23
—
PINT5SEL
bit22-20
R/W
—
bit19
—
PINT4SEL
bit18-16
R/W
—
bit15
—
PINT3SEL
bit14-12
R/W
—
bit11
—
PINT2SEL
bit10-8
R/W
—
bit7
—
PINT1SEL
bit6-4
R/W
—
bit3
—
PINT0SEL
bit2-0
V1.4
版权所有©上海东软载波微电子有限公司
R/W
22
21
20
PINT5SEL
6
5
4
PINT1SEL
19
保留
3
18
2
保留
17
16
PINT4SEL
1
0
PINT0SEL
—
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 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
PINT2 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
PINT1 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
PINT0 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
118/310
http://www.essemi.com
HR8P506 数据手册
PINT 中断配置寄存器(GPIO_PINTCFG)
偏移地址:0CH
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
14
保留
29
28
PINT7CFG
13
12
27
保留
11
25
24
PINT6CFG
10
9
8
23
保留
7
22
21
20
PINT5CFG
6
5
4
PINT2CFG
保留
PINT1CFG
—
bit31
—
—
PINT7CFG
bit30-28
R/W
—
bit27
—
PINT6CFG
bit26-24
R/W
—
bit23
—
PINT5CFG
bit22-20
R/W
—
bit19
—
PINT4CFG
bit18-16
R/W
—
bit15
—
PINT3CFG
bit14-12
R/W
—
bit11
—
PINT2CFG
bit10-8
R/W
—
bit7
—
PINT1CFG
bit6-4
R/W
—
bit3
—
PINT0CFG
bit2-0
R/W
PINT3CFG
保留
26
寄存器名称
PINTCFG
19
保留
3
18
2
保留
17
16
PINT4CFG
1
0
PINT0CFG
PINT7 配置位
参见 GPIO_PINTCFG 详情
—
PINT6 配置位
参见 GPIO_PINTCFG 详情
—
PINT5 配置位
参见 GPIO_PINTCFG 详情
—
PINT4 配置位
参见 GPIO_PINTCFG 详情
—
PINT3 配置位
参见 GPIO_PINTCFG 详情
—
PINT2 配置位
参见 GPIO_PINTCFG 详情
—
PINT1 配置位
参见 GPIO_PINTCFG 详情
—
PINT0 配置位
参见 GPIO_PINTCFG 详情
GPIO_PINTCFG 详情
bit 2-0
V1.4
版权所有©上海东软载波微电子有限公司
R/W
GPIO_PINTCFG 配置位
000:上升沿触发中断
001:下降沿触发中断
010:高电平触发中断
011:低电平触发中断
1xx:上升沿和下降沿均触发中断
119/310
http://www.essemi.com
HR8P506 数据手册
KINT 中断使能寄存器(GPIO_KINTIE)
偏移地址:10H
复位值:00000000_00000000_11111111_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
KMASK
—
KINTIE
—
bit31-16
KMASK
bit15-8
KINTIE
bit7-0
—
R/W
KIN 按键输入屏蔽控制位
0:不屏蔽
1:屏蔽
R/W
KINT 中断使能位
0:禁止
1:使能
KINT 中断标志寄存器(GPIO_KINTIF)
偏移地址:14H
复位值: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
保留
-
KINTIF
bit 31-8
bit7-0
KINTIF
-
R/W
-
GPIO 按键中断标志位
0:无中断
1:有中断
软件写 1 清除中断标志位,写 0 无效
注:对 GPIO_KINTIF 寄存器中的各中断标志位,写 0 无效,写 1 才能清除标志位;读操作时,读取的值为 1 表示
有中断发生。
V1.4
版权所有©上海东软载波微电子有限公司
120/310
http://www.essemi.com
HR8P506 数据手册
KINT0~7 中断源选择寄存器(GPIO_KINTSEL)
偏移地址:18H
复位值:00000000_00000000_00000000_00000000B
31
保留
15
保留
30
29
28
KINT7SEL
14
13
12
KINT3SEL
—
27
保留
11
保留
26
25
24
KINT6SEL
10
9
8
KINT2SEL
bit31
23
保留
7
保留
—
KINT7SEL
bit30-28
R/W
—
bit27
—
KINT6SEL
bit26-24
R/W
—
bit23
—
KINT5SEL
bit22-20
R/W
—
bit19
—
KINT4SEL
bit18-16
R/W
—
bit15
—
KINT3SEL
bit14-12
R/W
—
bit11
—
KINT2SEL
bit10-8
R/W
—
bit7
—
KINT1SEL
bit6-4
R/W
—
bit3
—
KINT0SEL
bit2-0
V1.4
版权所有©上海东软载波微电子有限公司
R/W
22
21
20
KINT5SEL
6
5
4
KINT1SEL
19
保留
3
18
2
保留
17
16
KINT4SEL
1
0
KINT0SEL
—
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 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
KINT1 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
—
KINT0 输入选择位
000~101:SEL0~SEL5
其余:
SEL0
121/310
http://www.essemi.com
HR8P506 数据手册
KINT 中断配置寄存器(GPIO_KINTCFG)
偏移地址:1CH
复位值:00000000_00000000_00000000_00000000B
31
30
保留
15
14
保留
29
28
KINT7CFG
13
12
27
保留
11
25
24
KINT6CFG
10
9
8
23
保留
7
22
21
20
KINT5CFG
6
5
4
KINT2CFG
保留
KINT1CFG
—
bit31
—
—
KINT7CFG
bit30-28
R/W
—
bit27
—
KINT6CFG
bit26-24
R/W
—
bit23
—
KINT5CFG
bit22-20
R/W
—
bit19
—
KINT4CFG
bit18-16
R/W
—
bit15
—
KINT3CFG
bit14-12
R/W
—
bit11
—
KINT2CFG
bit10-8
R/W
—
bit7
—
KINT1CFG
bit6-4
R/W
—
bit3
—
KINT0CFG
bit2-0
R/W
KINT3CFG
保留
26
寄存器名称
GPIO_KINTCFG
19
保留
3
18
2
保留
17
16
KINT4CFG
1
0
KINT0CFG
KINT7 配置位
参见 GPIO_KINTCFG 详情
—
KINT6 配置位
参见 GPIO_KINTCFG 详情
—
KINT5 配置位
参见 GPIO_KINTCFG 详情
—
KINT4 配置位
参见 GPIO_KINTCFG 详情
—
KINT3 配置位
参见 GPIO_KINTCFG 详情
—
KINT2 配置位
参见 GPIO_KINTCFG 详情
—
KINT1 配置位
参见 GPIO_KINTCFG 详情
—
KINT0 配置位
参见 GPIO_KINTCFG 详情
GPIO_KINTCFG 详情
bit 2-0
V1.4
版权所有©上海东软载波微电子有限公司
R/W
GPIO_KINTCFG 配置位
000:上升沿触发中断
001:下降沿触发中断
010:高电平触发中断
011:低电平触发中断
1xx:上升沿和下降沿均触发中断
122/310
http://www.essemi.com
HR8P506 数据手册
端口中断 20ns 滤波器分配控制寄存器(GPIO_IOINTFLTS)
偏移地址:30H
复位值: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
保留
-
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
18
17
16
7
6
5
4
3
2
1
0
保留
15
14
13
12
11
FLT3_SEL
-
FLT3_SEL
FLT2_SEL
10
9
8
FLT2_SEL
bit31-16
bit15-12
bit11-8
V1.4
版权所有©上海东软载波微电子有限公司
-
FLT1_SEL
FLT0_SEL
-
R/W
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
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
其它:预留
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
123/310
http://www.essemi.com
HR8P506 数据手册
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
其它:预留
FLT1_SEL
bit7-4
FLT0_SEL
bit3-0
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
其它:预留
SPI 输入端口 20ns 滤波器分配控制寄存器(GPIO_SPIFLTSEL)
偏移地址:44H
复位值: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
保留
-
bit31-4
-
FLT_SEL
bit3-0
R/W
V1.4
版权所有©上海东软载波微电子有限公司
FLT_SEL
-
SPI FLT 滤波器控制位
1:SPI1 使用该滤波器
0:SPI0 使用该滤波器
124/310
http://www.essemi.com
HR8P506 数据手册
脉宽调制寄存器(GPIO_TXPWM)
偏移地址:80H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
3
2
1
0
保留
15
14
13
12
11
10
TX1
TX1
TX1
TX1
保
TX1
_S3
_S2
_S1
_S0
留
PLV
-
TX1_S3
TX1_S2
TX1_S1
9
7
6
5
4
TX1PS<
TX0
TX0
TX0
TX0_
1:0>
_S3
_S2
_S1
S0
bit31-16
bit15
bit14
bit13
8
-
R/W
R/W
TXPWM1 调制输出使能端
0:T16N1OUT0 管脚正常输出
1:T16N1OUT0 管脚为 TXPWM1 输出
TXPWM1 调制输出使能端
0:E0TX0 管脚正常输出
1:E0TX0 管脚为 TXPWM1 输出
-
bit11
-
TX0_S3
bit9-8
bit7
-
TXPWM1 调制输出使能端
0:T16N1OUT1 管脚正常输出
1:T16N1OUT1 管脚为 TXPWM1 输出
R/W
TX1PS
TX0PS
V
R/W
bit12
bit10
TX0PL
TXPWM1 调制输出使能端(仅在 TX0_S3=0 时,即
未使能 TXPWM0 调制输出至 BUZ 管脚时有效)
0:BUZ 管脚正常输出
1:BUZ 管脚为 TXPWM1 输出
TX1_S0
TX1PLV
保留
-
R/W
TXPWM1 调制电平选择位
0:低电平调制(E0TX0 与 TX1PS 所选取的脉冲信
号进行硬件或操作)
1:高电平调制(E0TX0 与 TX1PS 所选取的脉冲信
号进行硬件与操作)
R/W
TXPWM1 调制 PWM 脉冲选择位
00:调制禁止
01:与 T16N1OUT0 进行调制
10:与 T16N1OUT1 进行调制
11:与 BUZ 进行调制
R/W
TXPWM0 调制输出使能端
0:BUZ 管脚正常输出
1:BUZ 管脚为 TXPWM0 输出
TX0_S2
bit6
R/W
TXPWM0 调制输出使能端
0:T16N0OUT1 管脚正常输出
1:T16N0OUT1 管脚为 TXPWM0 输出
TX0_S1
bit5
R/W
TXPWM0 调制输出使能端
0:T16N0OUT0 管脚正常输出
V1.4
版权所有©上海东软载波微电子有限公司
125/310
http://www.essemi.com
HR8P506 数据手册
1:T16N0OUT0 管脚为 TXPWM0 输出
TX0_S0
bit4
R/W
-
bit3
-
TX0PLV
bit2
TX0PS
bit1-0
TXPWM0 调制输出使能端
0:TXD0 管脚正常输出
1:TXD0 管脚为 TXPWM0 输出
-
R/W
TXPWM0 调制电平选择位
0:低电平调制(TXD0 与 TX0PS 所选取的脉冲信号
进行硬件或操作)
1:高电平调制(TXD0 与 TX0PS 所选取的脉冲信号
进行硬件与操作)
R/W
TXPWM0 调制 PWM 脉冲选择位
00:调制禁止
01:与 T16N0OUT0 进行调制
10:与 T16N0OUT1 进行调制
11:与 BUZ 进行调制
BUZ 控制寄存器(GPIO_BUZC)
偏移地址:84H
复位值:00001111_11111111_11111111_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
7
6
-
bit31-28
5
保留
BUZ_LOAD
-
0
BUZEN
-
BUZ 计数装载值寄存器
BUZ 信号频率的计算公式为:
BUZ_LOAD
bit27-8
R/W
FBUZ =
-
BUZEN
bit7-1
bit0
V1.4
版权所有©上海东软载波微电子有限公司
-
R/W
Fpclk
2 ×(BUZ _ LOAD + 1)
-
BUZ 使能位
0:禁止
1:使能
126/310
http://www.essemi.com
HR8P506 数据手册
第5章
外设
5. 1 定时器/计数器
5. 1. 1
16 位定时器/计数器T16N
以 T16N0 为例,T16N1/T16N2/T16N3 同 T16N0。
概述
5. 1. 1. 1
1 个 8 位可配置预分频器,分频时钟作为 T16N_CNT0/1 的定时/计数时钟
预分频时钟源可选:PCLK 或 T16N0CK0/T16N0CK1
预分频计数器可由 T16N_PRECNT 寄存器设定计数初值
分频比由寄存器 T16N_PREMAT 设定
2 个 16 位可配置定时/计数寄存器 T16N_CNT0/T16N_CNT1
2 个 16 位峰值寄存器 T16N_TOP0/T16N_TOP1
T16N_CNT0/ T16N_CNT1 计数值达到峰值时被清零
在调制工作模式下,若使能 ADC 触发功能,T16N_CNT0/ T16N_CNT1 计数值达
到峰值时可分别产生 ADC 转换触发信号
支持定时/计数工作模式
T16N_CNT1 仅在独立调制工作模式或 T16N_CNT1 峰值触发 ADC 转换被使能时
可用
支持 4 组 16 位计数匹配寄存器 T16N_MAT0/T16N_MAT1/T16N_MAT2/
T16N_MAT3,计数匹配后支持下列操作:
- 产生中断
- 支持 T16N_CNT0 计数寄存器三种操作:保持,清零或继续计数
- 支持 T16N0OUT0/T16N0OUT1 端口四种操作:保持,清零,置 1 或取反
支持输入捕捉工作模式
捕捉边沿可配置
捕捉次数可配置
支持调制工作模式
通过对匹配寄存器进行配置,同时设置匹配后端口输出特性,可得到相应的 PWM
输出
支持调制过程触发 ADC 转换
- 匹配 0、匹配 1、匹配 2、匹配 3 及峰值 0 与 T16N_CNT0 计数值匹配触发
- 峰值 1 与 T16N_CNT1 计数值匹配触发
两路 PWM 可配置为独立/同步/互补等三种模式
-
独立模式,T16N0OUT0/T16N0OUT1 输出不同的 PWM 波形
同步模式,T16N0OUT0/T16N0OUT1 输出相同 PWM 波形
- 互补模式,T16N0OUT0/T16N0OUT1 输出互补 PWM 波形,互补模式下死区时间
宽度可配置
V1.4
版权所有©上海东软载波微电子有限公司
127/310
http://www.essemi.com
HR8P506 数据手册
支持刹车控制
- 可通过 GPIO_PAFUNC 寄存器来选取 PA2(T16N_BK0)
,PA3(T16N_BK1)
,PA26
(T16N_BK2)或 PA27(T16N_BK3),其中任意一个作为外部刹车信号,有效刹
车极性可配置
- 刹车输出电平可配置
结构框图
5. 1. 1. 2
PCLK
T16N0CK0
T16N0IN0
M
U
X
T16N_MAT0
ADC
T16N_TOP0
数值比较器
T16N0OUT0
T16N_PREMAT
T16N_CNT0
捕捉选择
T16N_MAT0
图 5-1 T16N0 电路结构框图
5. 1. 1. 3
T16N定时/计数功能
设置 T16N_CON0 寄存器的 MOD=00 或 01,使 T16N 工作在定时/计数模式。
设置 T16N_CON0 寄存器的 EN=1,
使能 T16N,
计数值寄存器 T16N_CNT0/T16N_CNT1
从预设值开始累加计数。
设置 T16N_CON0 寄存器的 CS,选择计数时钟源。时钟源为内部时钟 PCLK 时,为定
时模式;时钟源为外部时钟 T16N0CK0/T16N0CK1 端口输入时,为计数模式。
设置 T16N_CON0 寄存器的 SYNC,选择外部时钟 T16N0CK0/T16N0CK1 是否被内部
时钟 PCLK 同步。当选择外部时钟被同步时,为同步计数模式,否则为异步计数模式。
同步计数模式时,T16N0CK0/T16N0CK1 端口输入的高/低电平脉宽均必须大于 2 个
PCLK 时钟周期。
设置 T16N_CON0 寄存器的 EDGE,选择外部时钟计数方式:上升沿计数,下降沿计数,
或上升/下降沿均计数,其中上升/下降沿均计数只适用于同步计数模式。
设置 T16N_CON0 寄存器的 MAT0S/MAT1S/MAT2S/MAT3S,选择计数匹配后
T16N_CNT0/T16N_CNT1 计数值寄存器的工作状态。
MAT0S/MAT1S/MAT2S/MAT3S=00 : 当 16N_CNT0/T16N_CNT1 计 数 值 匹 配
T16N_MAT0/T16N_MAT1/T16N_MAT2/T16N_MAT3 时,继续累加计数,不产生中断,
当计数到 0xFFFF 后,下一次累加计数溢出,16N_CNT0/T16N_CNT1 的值为 0x0000,
并产生中断,重新开始累加计数。
MAT0S/MAT1S/MAT2S/MAT3S=01 : 当 16N_CNT0/T16N_CNT1 计 数 值 匹 配
V1.4
版权所有©上海东软载波微电子有限公司
128/310
http://www.essemi.com
HR8P506 数据手册
T16N_MAT0/T16N_MAT1/T16N_MAT2/T16N_MAT3 时,计数值将保持,即在下一个计
数时钟(经过预分频之后的时钟)到来时,T16N_CNT0/T16N_CNT1 不再累加计数,
只产生中断。
MAT0S/MAT1S/MAT2S/MAT3S=10:当 T16N_CNT0/T16N_CNT1 计数值匹配
T16N_MAT0/T16N_MAT1/T16N_MAT2/T16N_MAT3 时,计数值在下一个计数时钟(经
过预分频之后的时钟)到来时被清零,并产生中断,重新开始累加计数。
MAT0S/MAT1S/MAT2S/MAT3S=11:当 T16N_CNT0/T16N_CNT1 计数值匹配
T16N_MAT0/T16N_MAT1/T16N_MAT2/T16N_MAT3 时,继续累加计数,并在下一个计
数时钟(经过预分频之后的时钟)到来时,产生中断,当计数到 0xFFFFH,下一次累加
计数溢出,T16N_CNT0/T16N_CNT1 的值为 0x0000,并产生中断,重新开始累加计数。
对设置的多个不同匹配值 T16N_MAT0/T16N_MAT1/T16N_MAT2/T16N_MAT3,当计数
值匹配到每一个匹配值时,会产生相应的中断。由于中断产生后,T16N 继续累加计数,
若未及时读取匹配中断标志位,则有可能后续的匹配中断也已产生,从而会同时读到多
个有效的匹配中断标志。
如果 T16N_CNT0/T16N_CNT1 的计数值匹配 T16N_MAT0/T16N_MAT1/T16N_MAT2/
T16N_MAT3,当 T16N_CON2 寄存器的 MOE0=1 时,T16N0OUT0 端口输出翻转;当
MOE1=1 时,T16N0OUT1 端口输出翻转。可选择 T16N0OUT0/T16N0OUT1 端口同时
输出。
举例说明:T16N_CNT0 计数值匹配 T16N_MAT0/T16N_MAT1/T16N_MAT2 后的工作方
式。
T16N_MAT0=0x0002,T16N_CON0 寄存器的 MAT0S=00,继续计数,不
产生中断
T16N_MAT1=0x0004,T16N_CON0 寄存器的 MAT1S=11,继续计数,产
生中断;
T16N_MAT2=0x0006,T16N_CON0 寄存器的 MAT2S=10,清零,产生中
断,重新计数。
预分频设置为 1:1,采用内部 PCLK 时钟源。计数匹配功能示意图如下所示:
MAT1IF
MAT2IF
PCLK
T16N_CNT0 0x0000
0x0001
0x0002
0x0003
0x0004
0x0005
0x0006
0x0000
0x0001
图 5-2 T16N0 计数匹配功能示意图
注:T16N_CNT0 可使用所有的 T16N 的 T16N_MAT 寄存器,但在计数器被设置为捕捉模式,即 T16N_CON0 寄
存器中 MOD=0x2 时,T16N_CNT0 只能使用 T16N_MAT0/T16N_MAT1;而 T16N_CNT1 任何情况下仅可使
用 T16N_MAT2/T16N_MAT3。
V1.4
版权所有©上海东软载波微电子有限公司
129/310
http://www.essemi.com
HR8P506 数据手册
5. 1. 1. 4
T16N输入捕捉功能
设置 T16N_CON0 寄存器的 MOD=10,使 T16N 工作在捕捉模式。在捕捉模式下
T16N_CNT1 不可使用。
在捕捉工作模式下,需设置 T16N_CON0 寄存器的 CS=00,使 T16N_CNT0 采用
内 部 PCLK 时 钟 源 计 数 ; 并 且 设 置 T16N_CON0 寄 存 器 的
MAT0S/MAT1S/MAT2S/MAT3S =00,计数匹配不影响 T16N_CNT0 的工作。
在捕捉工作模式下,对端口 T16N0IN0 和 T16N0IN1 的状态进行检测。
当 T16N0IN0 端 口 的 状 态 变 化 符 合 所 设 定 的 捕 捉 事 件 时 , 将 T16N_CNT0 和
T16N_PRECNT 的当前值分别装载到 T16N_MAT0 和 T16N_MAT2 寄存器中,
产生 T16N
的 CAP0IF 中断。通过使能 T16N_CON1 寄存器的 CAPL0,可在 CAP0IF 中断时将
T16N_CNT0 和 T16N_PRECNT 清零;若 CAPL0 为零,则计数器继续累加。
当 T16N0IN1 端 口 的 状 态 变 化 符 合 所 设 定 的 捕 捉 事 件 时 , 将 T16N_CNT0 和
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,可选择 T16N0IN0 和 T16N0IN1 端口
信号的捕捉事件。
选择捕捉上升沿:只设置 CAPPE 为 1;
选择捕捉下将沿:只设置 CAPNE 为 1;
选择捕捉上升沿/下降沿:设置 CAPPE 为 1,CAPNE 为 1。
设置 T16N_CON1 寄存器的 CAPIS0,选择 T16N0IN0 是否作为捕捉输入端口;设置
CAPIS1,选择 T16N0IN1 是否作为捕捉输入端口;可同时选择两个端口作为捕捉输入端
口。
设置 T16N_CON1 寄存器的 CAPT,可选择捕捉事件发生的次数。
举例说明:捕捉 T16N0IN0 端口上升沿/下降沿,捕捉 8 次;预分频设置为 1:1。
T16N_CON0 寄存器的 MOD=10,CS=00,MAT0S=00,
T16N_CON1 寄存器的 CAPPE=1,CAPNE=1,CAPIS=1, CAPT=0111。
V1.4
版权所有©上海东软载波微电子有限公司
130/310
http://www.essemi.com
HR8P506 数据手册
CAP0IF
CAP0IF
T16N0IN0
PCLK
0x0000
0x0000
0x0000
T16N_CNT0
0x0000
T16N_MAT0
0x0000
Load Event
0x0000
Load Event
0x0000
T16N_PRECNT
T16N_MAT2
0x0000
Load Event
Load Event
图 5-3 T16N0 捕捉功能示意图
在捕捉工作模式下,修改 T16N 预分频器计数匹配寄存器 T16N_PREMAT 时,预分频器
计数不会被清零。因此,首次捕捉可以从一个非零预分频器计数开始。当捕捉事件匹配
发生时,产生的中断标志位必须通过软件清除,并及时读取捕捉到的 T16N_MAT0/
T16N_MAT1/T16N_MAT2/T16N_MAT3 寄 存 器 的 值 , 在 下 一 次 捕 捉 事 件 发 生 时 ,
T16N_MAT0/T16N_MAT1/T16N_MAT2/T16N_MAT3 寄存器会装载为新的计数值。
5. 1. 1. 5
T16N输出调制功能
设置 T16N_CON0 寄存器的 MOD=11,使 T16N 工作在调制模式。
在调制工作模式下,需设置 T16N_CON0 寄存器的 CS=00,使 T16N_CNT0/
T16N_CNT1 采用内部 PCLK 时钟源计数。
设置 T16N_CON2 寄存器的 MOE0,选择 T16N0OUT0 是否使能为匹配输出端口,使能
时 启 用 T16N_MAT0/T16N_MAT1 匹 配 寄 存 器 和 T16N_CNT0 进 行 匹 配 ; 设 置
T16N_CON2 寄存器的 MOE1,选择 T16N0OUT1 是否使能为匹配输出端口,使能时启
用 T16N_MAT2/T16N_MAT3 匹配寄存器和 T16N_CNT0 或 T16N_CNT1(PWM 独立工
作模式)进行匹配。
设置 T16N_CON2 寄存器的 MOM0/MOM1/MOM2/MOM3,选择计数匹配发生时,对
T16N0OUT0/T16N0OUT1 端口的影响:保持,清零,置 1,取反。
设置 T16N_CON2 寄存器的 PWMMOD,两路 PWM 可配置为独立/同步/互补等三
种模式:
独立模式,T16N0OUT0/T16N0OUT1 输出不同的 PWM 波形。其中 T16N_CNT0 匹配
T16N_MAT0/T16N_MAT1,控制 T16N0OUT0 输出;而 T16N_CNT1 匹配 T16N_MAT2/
T16N_MAT3,控制 T16N0OUT1 输出。
同 步 模 式 , T16N0OUT0/T16N0OUT1 输 出 相 同 PWM 波 形 。 T16N_CNT0 匹 配
T16N_MAT0/T16N_MAT1 , 控 制 T16N0OUT0/T16N0OUT1 输 出 。 无 需 设 置
V1.4
版权所有©上海东软载波微电子有限公司
131/310
http://www.essemi.com
HR8P506 数据手册
T16N_CNT1。
互补模式,T16N0OUT0/T16N0OUT1 输出为互补 PWM 波形。互补模式下死区时间宽
度可配置。互补模式下 T16N_CNT0 匹配 T16N_MAT0/T16N_MAT1,控制 T16N0OUT0/
T16N0OUT1 输出;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)独立模式,在 T16N0OUT0 和 T16N0OUT1 端口,产生双边 PWM 波形。
T16N_CON2 寄存器中:
MOE0=1,MOE1=1;T16N0OUT0 和 T16N0OUT1 匹配输出端口使能;
MOM0=10;T16N_MAT0 匹配,T16N0OUT0 输出高电平;
MOM1=01;T16N_MAT1 匹配,T16N0OUT0 输出低电平;
MOM2=10;T16N_MAT2 匹配,T16N0OUT1 输出高电平;
MOM3=01;T16N_MAT3 匹配,T16N0OUT1 输出低电平;
PWMMOD=00;独立模式。
T16N_CON0 寄存器中:
MOD=11;T16N 设置为调制输出;
MAT0S=11;T16N_CNT0 继续计数,并产生中断;
MAT1S=11;T16N_CNT0 继续计数,并产生中断;
MAT2S=11;T16N_CNT1 继续计数,并产生中断;
MAT3S=10;T16N_CNT1 清零,并产生中断。
设置其它寄存器:
T16N_MAT0 = 0x0002;T16N_MAT1 = 0x0004;
T16N_MAT2 = 0x0006;T16N_MAT3 = 0x0008;
设置合适的 T16N_TOP0/T16N_TOP1 值。
MAT0IF
MAT1IF
MAT2IF
MAT3IF
PCLK
T16N_CNT 0x0000
0x0001
0x0002
0x0003
0x0004
0x0005
0x0006
0x0007
0x0008
0x0009
T16N0OUT0
T16N0OUT1
图 5-4 T16N0 PWM 独立模式输出调制功能示意图
V1.4
版权所有©上海东软载波微电子有限公司
132/310
http://www.essemi.com
HR8P506 数据手册
注 1:若 T16N_MAT0 和 T16N_MAT1 设置了相同的值,因 T16N_MAT0 匹配优先级高于 T16N_MAT1,T16N0OUT0
的输出电平取决于 MOM0 的设定。若 T16N_MAT2 和 T16N_MAT3 设置了相同的值,因 T16N_MAT2 匹配优
先级高于 T16N_MAT3,T16N0OUT1 的输出电平取决于 MOM2 的设定。
2)互补模式,PCLK=48MHz,在 T16N0OUT0 和 T16N0OUT1 端口,产生 24MHz 互
补 PWM 波形。
T16N_CON2 寄存器中:
MOE0=1,MOE1=1,即 T16N0OUT0 和 T16N0OUT1 匹配输出端口使能;
MOM0=10,即 T16N_MAT0 匹配,T16N0OUT0 输出高电平,T16N0OUT1 输出
低电平;
MOM1=01,即 T16N_MAT1 匹配,T16N0OUT0 输出低电平,T16N0OUT1 输出
高电平;
PWMMOD=11,即互补 PWM 模式;PWMDZE=0,禁止死区时间
T16N_CON0 寄存器中:
MOD=11;T16N 设置为调制输出 MAT0S=11;T16N_CNT0 继续计数,并
产生中断;
MAT1S=11;T16N_CNT0 继续计数,并产生中断。
设置其它寄存器:
T16N_MAT0 = 0x0000;T16N_MAT1 = 0x0001;T16N_TOP0=0x0001;
T16N_PREMAT=0,即不预分频。
PCLK
T16N_CNT
0x0000
0x0001
0x0000
0x0001
0x0000
0x0001
0x0000
0x0001
0x0000
0x0001
T16N0OUT0
T16N0OUT1
图 5-5 T16N0 互补输出功能示意图
3)带死区的互补模式,PCLK=48MHz,在 T16N0OUT0 和 T16N0OUT1 端口,产生带
死区的互补 PWM 波形。
T16N_CON2 寄存器中:
MOE0=1,MOE1=1,即 T16N0OUT0 和 T16N0OUT1 匹配输出端口使能;
MOM0=10,即 T16N_MAT0 匹配,T16N0OUT0 输出高电平,T16N0OUT1 输出
低电平;
MOM1=01,即 T16N_MAT1 匹配,T16N0OUT0 输出低电平,T16N0OUT1 输出
高电平;
PWMMOD=11,即互补 PWM 模式;PWMDZE=1,使能死区时间。
T16N_CON0 寄存器中:
MOD=11;T16N 设置为调制输出 MAT0S=11;T16N_CNT0 继续计数,并
产生中断;
V1.4
版权所有©上海东软载波微电子有限公司
133/310
http://www.essemi.com
HR8P506 数据手册
MAT1S=11;T16N_CNT0 继续计数,并产生中断。
设置其它寄存器:
T16N_MAT0,T16N_MAT1 和 T16N_TOP0 寄存器设定合适的值以设定 PWM 周期,占
空比等;T16N_PREMAT 可设定为较小值,如 0 值,即不预分频,使得死区时间和 PWM
占空比都有较高的精度。
如下图,作为对比,分别给出了无死区时间和带死区时间的 PWM 互补输出波形。需要
注意的是,死区时间会对 T16N0OUT0 和 T16N0OUT1 的高电平宽度作等量压缩。
死区
T16N0OUT0
T16N0OUT1
T16N0OUT0(带死区)
T16N0OUT1(带死区)
死区
图 5-6 带死区的 T16N0 互补输出功能示意图
特殊功能寄存器
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计数值
注:T16N_CNT0 可使用所有的 T16N 的 T16N_MAT 寄存器,但在计数器被设置为捕捉模式,即 T16N_CON0 寄
存器中 MOD=0x2 时,T16N_CNT0 只能使用 T16N_MAT0/T16N_MAT1;而 T16N_CNT1 任何情况下仅可使
用 T16N_MAT2/T16N_MAT3。
V1.4
版权所有©上海东软载波微电子有限公司
134/310
http://www.essemi.com
HR8P506 数据手册
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
20
19
18
17
16
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)
偏移地址:08H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
7
6
5
保留
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
PREMAT
bit31-8
bit7-0
V1.4
版权所有©上海东软载波微电子有限公司
-
R/W
-
预分频比例设置位
00:预分频1:1
01:预分频1:2
02:预分频1:3
……
FE:预分频1:255
FF:预分频1:256
135/310
http://www.essemi.com
HR8P506 数据手册
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
—
ASYWEN
MAT3S
MAT2S
MAT1S
MAT0S
11
10
MAT1S
bit 31~17
bit 16
bit 15~14
bit 13~12
bit 11~10
bit 9~8
—
9
8
MAT0S
16
ASYWEN
7
6
MOD
5
4
EDGE
3
SYNC
2
1
CS
0
EN
—
R/W
计数器写使能位
0:使能写 T16N_CNT1;在同步计数模式,定时模式,
和调制模式下,使能写 T16N_CNT0 和 T16N_PRECNT
(在异步计数模式下,不要在 ASYWEN=0 时,写
T16N_CNT0 和 T16N_PRECNT,否则有可能写操作失
败)
1:禁止写 T16N_CNT1;在同步计数模式,定时模式,
和调制模式下,禁止写 T16N_CNT0 和 T16N_PRECNT,
在异步计数模式下,使能写 T16N_CNT0 和
T16N_PRECNT
R/W
T16N_CNT1 匹配 T16N_MAT3 后的工作模式选择位
00:T16N_CNT1 继续计数,不产生中断
01:T16N_CNT1 保持,产生中断
10:T16N_CNT1 清零并重新计数,产生中断
11:T16N_CNT1 继续计数,产生中断
R/W
T16N_CNT1 匹配 T16N_MAT2 后的工作模式选择位
00:T16N_CNT1 继续计数,不产生中断
01:T16N_CNT1 保持,产生中断
10:T16N_CNT1 清零并重新计数,产生中断
11:T16N_CNT1 继续计数,产生中断
R/W
T16N_CNT0 匹配 T16N_MAT1 后的工作模式选择位
00:T16N_CNT0 继续计数,不产生中断
01:T16N_CNT0 保持,产生中断
10:T16N_CNT0 清零并重新计数,产生中断
11:T16N_CNT0 继续计数,产生中断
R/W
T16N_CNT0 匹配 T16N_MAT0 后的工作模式选择位
00:T16N_CNT0 继续计数,不产生中断
01:T16N_CNT0 保持,产生中断
10:T16N_CNT0 清零并重新计数,产生中断
11:T16N_CNT0 继续计数,产生中断
V1.4
版权所有©上海东软载波微电子有限公司
136/310
http://www.essemi.com
HR8P506 数据手册
MOD
bit 7~6
EDGE
bit 5~4
SYNC
bit 3
CS
bit 2~1
EN
bit 0
R/W
工作模式选择位
00:定时/计数模式
01:定时/计数模式
10:捕捉模式
11:调制模式
R/W
外部时钟计数边沿选择位
00:上升沿计数
01:下降沿计数
10:上升沿/下降沿均计数(仅同步计数模式)
11:上升沿/下降沿均计数(仅同步计数模式)
R/W
外部时钟同步使能位
0:不同步外部时钟 T16N0CK0/T16N0CK1,为异步计数
模式
1:通过 PCLK 对外部时钟 T16N0CK0/T16N0CK1 同步,
为同步计数模式,外部时钟的高/低电平均至少保持 2 个
PCLK 时钟周期
R/W
T16N 计数时钟源选择位
00:内部时钟 PCLK
01:外部时钟 T16N0CK0
10:外部时钟 T16N0CK1
11:内部时钟 PCLK
R/W
T16N 使能位
0:禁止
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
11
10
9
8
CAPL1
CAPL0
bit31-10
bit9
bit8
V1.4
版权所有©上海东软载波微电子有限公司
7
-
6
CAPT
3
2
1
0
CAPIS1
CAPIS0
CAPNE
CAPPE
-
R/W
捕捉 1 重载计数器使能位
0:禁止
1:使能
R/W
捕捉 0 重载计数器使能位
0:禁止
1:使能
137/310
http://www.essemi.com
HR8P506 数据手册
CAPT
bit7-4
CAPIS1
bit3
CAPIS0
bit2
CAPNE
bit1
CAPPE
bit0
R/W
捕捉次数控制位
0:捕捉 1 次后,产生装载动作
1:捕捉 2 次后,产生装载动作
2:捕捉 3 次后,产生装载动作
……
F:捕捉 16 次后,产生装载动作
R/W
捕捉输入端口 T16N0IN1 使能位
0:禁止
1:使能
R/W
捕捉输入端口 T16N0IN0 使能位
0:禁止
1:使能
R/W
下降沿捕捉使能位
0:禁止
1:使能
R/W
上升沿捕捉使能位
0:禁止
1:使能
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
21
保留
15
14
13
12
11
10
MOM2
0>
9
PWMBKP1
18
17
16
PWMBK
PWMBK
PWMBK
PWMBK
L1
L0
E1
E0
6
5
4
3
2
1
0
POL1
POL0
MOE1
MOE0
PWMD
MOM0
PWMBKF
19
保留
MOM3= 0;
当 SPI 帧位宽选择 2~4 位时,CKS >= 1;
当 SPI 帧位宽选择 1 位时,CKS > 2。
3)
由于不同的通讯数据格式对端口的初始电平要求是不同的(参见上面各通讯波形示意
图)
,因此若无法确定使能 SPI 之前的 SPI 端口的初始值,必须先配置通讯数据格式
控制位,对 SPI 端口初始电平进行自动设置;然后再通过对 SPI_CON 寄存器的 EN
和 REN 置 1 来使能 SPI 发送和接收,即对 SPI_CON 寄存器分两步写入。
V1.4
版权所有©上海东软载波微电子有限公司
208/310
http://www.essemi.com
HR8P506 数据手册
5. 5 I2C总线串口通讯控制器(I2C0)
5. 5. 1
5. 5. 2
概述
支持单主控模式
支持自动重复寻呼功能
支持自动发送“停止位”功能
支持数据应答延迟功能
支持数据帧传输间隔功能
支持软件触发“起始位”
支持软件触发“停止位”
支持软件触发数据接收,接收模式可配
支持从动模式
支持 7 位从机地址可配
支持从机地址匹配中断标志
支持接收“停止位”中断标志
支持时钟线自动下拉等待请求功能
支持自动发送“未应答”功能
支持 4 级发送缓冲器和 4 级接收缓冲器
通讯端口 SCL0 和 SDA0,均支持输出模式可配置:推挽输出或开漏输出
通讯端口 SCL0 和 SDA0 支持 16 倍速采样器可配置
支持发送和接收缓冲器空/满中断
支持起始位中断、停止位中断
支持接收数据溢出中断、发送数据写错误中断
结构框图
传输状态控制电路
16倍速采样器
SCL0
16倍速采样器
SDA0
APB_I2C
数据传输电路
通讯端口主从选择
图 5-35 I2C 电路结构框图
5. 5. 3
5. 5. 3. 1
I2C总线基本原理
I2C通讯协议
I2C 总线通讯协议,读写操作示意图如下所示:
V1.4
版权所有©上海东软载波微电子有限公司
209/310
http://www.essemi.com
HR8P506 数据手册
启动信号
启动信号
寻呼从机地址+写操作
寻呼从机地址+读操作
应答信号
主
控
器
应答信号
数据字节1
从
动
器
应答信号
主
控
器
数据字节1
应答信号
数据字节2
数据字节2
应答信号
应答信号
停止信号
停止信号
从
动
器
图 5-36 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.4
版权所有©上海东软载波微电子有限公司
210/310
http://www.essemi.com
HR8P506 数据手册
S
Slave Address
W
7位寻呼从动器地
址
DATA1
ACK
Memory Address
ACK
... ...
DATAn
ACK
写入数据0
片内访问单元地址
ACK
DATA0
ACK
(NACK)
P
主控器接收
主控器发送
写入数据1
写入数据n
图 5-37 I2C 主控器写入从动器数据示意图
S
Slave Address
W
ACK
Slave Address
R
ACK
DATA0
ACK
读取数据0
7位寻呼从动器地址
DATA1
ACK
片内访问单元地址
7位寻呼从动器地址
R-S
Memory Address
ACK
... ...
DATAn
NACK
P
读取数据n
读取数据1
主控器接收
主控器发送
图 5-38 I2C 主控器读取从动器数据示意图
5. 5. 4
I2C通讯端口配置
I2C 通讯端口 SCL0 和 SDA0,均支持推挽输出和开漏输出两种模式,配置 I2C_CON 寄
存器的 SCLOD 和 SDAOD,可分别进行选择。
推挽输出是 I/O 端口的标准输出,输出数据 0 和 1 时,I/O 端口电平也分别为 0 和 1。
对推挽输出模式,存在端口电平冲突的风险。例如:当主控器输出 0,而从动器输出 1 时,
会发生端口信号电平冲突,导致端口状态不确定。
开漏输出是 I2C 总线协议中的标准模式,可以避免端口电平冲突问题。开漏输出端口的示
意图如下所示:
V1.4
版权所有©上海东软载波微电子有限公司
211/310
http://www.essemi.com
HR8P506 数据手册
VDD
SDA数据线
SCL时钟线
SCL1_OUT
SDA1_OUT
SCL_IN
SCL2_OUT
SDA_IN
SDA2_OUT
SCL_IN
主控器
SDA_IN
从动器
图 5-39 开漏输出端口示意图
开漏输出端口的高电平由 I2C 总线的上拉电阻提供,
而低电平由主控器与从动器共同决定。
任何一方都可以将总线电平下拉到 0,但只有当双方都释放总线后,总线电平才能被上拉
到 1。
5. 5. 5
I2C时基定时器与 16 倍速采样器
通讯端口 SCL0 和 SDA0 支持 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.4
版权所有©上海东软载波微电子有限公司
212/310
http://www.essemi.com
HR8P506 数据手册
TSU:DA
TSU:S
THD:P
THD:DA
SDA0
TLOW
SCL0
THD:S
TSU:P
THIGH
图 5-40 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 帧数据。发送缓冲器
TB0~TB3 为只读寄存器,只能通过发送数据寄存器 I2C_TBW 写入。
发送数据寄存器 I2C_TBW 为一个虚拟地址单元,物理上不存在实际的寄存器电路,写该
寄存器地址单元时,实际上是将发送数据写入到发送缓冲器 TB0~TB3 中,再传输到发送
移位寄存器,通过数据端口 SDA0 进行数据发送。
发送数据寄存器 I2C_TBW 支持 3 种写入方式:字节写入,半字写入和字写入。
字节方式写入 I2C_TBW 时,发送数据被写入到发送缓冲器 TB0;半字方式写入 I2C_TBW
时,发送数据被同时写入到发送缓冲器 TB0 和 TB1,其中低字节存放在 TB1 中;字方式
写入 I2C_TBW 时,发送数据被同时写入到发送缓冲器 TB0~TB3,其中低字节存放在 TB3
中。
发送数据从写入到发送到端口的数据流示意图如下所示:
I2C_TBW
TB0
TB1
TB2
TB3
发送移位寄存器
SDA0端口
图 5-41 I2C 发送数据流示意图
支持发送缓冲器空中断,配置 I2C_IE 寄存器的 TBIM,可选择中断模式。
TBIM=00,为字节空产生中断,即发送缓冲器 TB0 为空时,会置起 I2C_IF 寄存器
的中断标志 TBIF;
TBIM=01,为半字空产生中断,即发送缓冲器 TB0 和 TB1 均为空时,会置起 I2C_IF
寄存器的中断标志 TBIF;
TBIM=10,为字空产生中断,即发送缓冲器 TB0,TB1,TB2 和 TB3 均为空时,会
置起 I2C_IF 寄存器的中断标志 TBIF。
V1.4
版权所有©上海东软载波微电子有限公司
213/310
http://www.essemi.com
HR8P506 数据手册
支持发送数据寄存器 I2C_TBW 误写中断,当对 I2C_TBW 的写入方式,与发送缓冲器
TB0~TB3 的空闲状态冲突时,或写入操作访问错误时,会置起 I2C_IF 寄存器误写中断标
志 TBWEIF。
5. 5. 7
I2C通讯接收器
支持 4 级接收缓冲器 RB0,RB1,RB2,RB3 和 1 级接收移位寄存器,可进行数据的连续
接收,直到接收缓冲器和移位寄存器全满,最多可连续接收 5 帧数据,再执行数据读取操
作。读取接收数据寄存器 I2C_RBR,可得到接收的数据,I2C_STA 寄存器中对应的接收
缓冲器清除满标志 RBFF0~RBFF3;也可以读取接收缓冲器 RB0~RB3 得到接收的数据,
但不会清除满标志 RBFF0~RBFF3。
接收数据寄存器 I2C_RBR 为一个虚拟地址单元,物理上不存在实际的寄存器电路,读该
寄存器地址单元时,实际上是读取接收缓冲器 RB0~RB3 中的数据。
接收数据寄存器 I2C_RBR 支持 3 种读取方式:字节读取,半字读取和字读取。
字节方式读取 I2C_RBR 时,实际是读取接收缓冲器 RB0 的数据;半字方式读取 I2C_RBR
时,实际是同时读取接收缓冲器 RB0 和 RB1 的数据,其中 RB0 中的数据为低字节;字方
式读取 I2C_RBR 时,实际是同时读取接收缓冲器 RB0~RB3,其中 RB0 中的数据为低字
节。
接收数据从数据端口到各级缓冲器的数据流示意图如下所示:
I2C_RBR
RB0
RB1
RB2
RB3
接收移位寄存器
SDA0端口
图 5-42 I2C 接收数据流示意图
接收缓冲器 RB0~RB3 的数据移到下一级缓冲器后,
会清除其接收满标志 RBFF0~RBFF3。
当 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,
TBIF=1,TBWEIF=0,RBIF=0,TEIF=0,ROIF=0,NAIF=0;置起空闲标志 IDLE=1;
置起各发送缓冲器空标志 TBEF0~TBEF3=1;清除各接收缓冲器满标志 RBFF0~RBFF3
=0。
V1.4
版权所有©上海东软载波微电子有限公司
214/310
http://www.essemi.com
HR8P506 数据手册
5. 5. 8. 1
I2C起始位
配置 SRT,可触发 I2C 发送起始位,启动或重启动一次传输操作,发送寻呼从动器地址。
起始位波形图如下:
SDA0
SCL0
8
9
R/W
ACK
1-7
S
START
ADRRESS
图 5-43 I2C 起始位波形图
I2C 主控模式,支持自动寻呼功能。配置 I2C_MOD 寄存器的 SRAE,可使能自动寻呼
功能,I2C 主控器会自动判断“地址应答”位,若该“地址应答”位为未应答 NACK,
则自动发送起始位,重启动本次地址寻呼操作,并且直到接收到应答 ACK 才停止继续重
启动。在芯片应用时,使能 I2C 自动寻呼功能前,需确保被寻呼的地址是真实存在的,
否则会造成主控器芯片持续重启动地址寻呼。
举例说明自动寻呼功能:芯片通过 I2C 向 EEPROM 器件写入数据时,存在写等待时间。
在 EEPROM 存储器本身写数据期间,主控器芯片寻呼该器件时,将收到未应答 NACK。
可有两种方法解决 EEPROM 写数据期间的地址寻呼问题:一种是主控器芯片设定寻呼
间隔,在 EEPROM 数据写操作完成后,再寻呼该器件;另一种是主控器芯片启动自动
寻呼功能,持续寻呼该器件,直到收到应答 ACK 为止。
SDA0
SCL0
9
8
1-7
S
START
1-7
8
9
ADRRESS
R/W
ACK
S
ADRRESS
R/W
ACK
START
图 5-44 I2C 自动寻呼波形图
5. 5. 8. 2
I2C停止位
配置 I2C_MOD 寄存器的 SPT,可触发 I2C 发送停止位,结束本次传输操作。停止位波
形图如下:
SDA0
1-7
SCL0
8
9
P
START
ADRRESS
R/W
ACK
STOP
图 5-45 I2C 停止位波形图
V1.4
版权所有©上海东软载波微电子有限公司
215/310
http://www.essemi.com
HR8P506 数据手册
I2C 主控模式,支持自动结束功能。配置 I2C_MOD 寄存器的 SPAE,可使能自动结束功
能,在发送 NACK 或接收 NACK 后,自动发送停止位,结束本次不成功的传输操作。自
动结束功能的优先级小于自动寻呼功能。
5. 5. 8. 3
I2C应答延迟功能
I2C 的主控模式,支持应答延迟功能,配置 I2C_MOD 寄存器的 ADE,可使能该功能,
配置 ADLY,可设定应答延迟的时间。应答延迟功能使能后,I2C 主控器将延迟发送通讯
时钟 SCL0 的应答位脉冲。
当从动器不能按照正常数据的通讯速率,对应答位进行接收和发送时,主控器可使能应
答延迟功能,并根据从动器的具体设计规格,设定应答延迟时间。
举例说明 I2C 应答延迟功能:I2C_MOD 寄存器中 ADLY=001,延迟时间为 1 个
TSCL0,通讯波形示意图如下:
SDA0
1.5*TSCL0
SCL0
1-8
9
DATA
ACK
1.5*TSCL0
1-8
1-8
9
ACK
DATA
图 5-46 I2C 应答延迟功能波形示意图
5. 5. 8. 4
I2C数据帧传输间隔功能
I2C 主控模式,支持数据帧传输间隔功能,配置 I2C_MOD 寄存器的 TIS,可使能该功能,
并设定间隔的时间。数据帧传输间隔时间设定后,在当前数据帧的应答位脉冲之后,I2C
主控器将延迟一段设定的时间,再发送下一个数据帧的通讯脉冲。
当从动器不能及时读取接收到的数据,或准备好发送的数据时,主控器可根据从动器的
具体设计规格,设定数据帧的传输间隔。
举例说明 I2C 数据帧传输间隔功能:I2C_MOD 寄存器中 TIS=0001,间隔时间为 1
个 TSCL0,通讯波形示意图如下:
SDA0
SCL0
1-8
9
DATA
ACK
1.5*TSCL0
1-8
DATA
9
1.5*TSCL0
1-8
9
ACK
图 5-47 I2C 数据帧传输间隔功能波形示意图
5. 5. 8. 5
I2C时钟线自动下拉等待请求功能
I2C 从动模式,支持时钟线自动下拉等待请求功能,配置 I2C_MOD 寄存器的 CSE,可
使能该功能。
V1.4
版权所有©上海东软载波微电子有限公司
216/310
http://www.essemi.com
HR8P506 数据手册
为实现 I2C 时钟线的下拉等待请求功能,还需配置 I2C_CON 寄存器的 SCLOD,将通讯
端口 SCL0 选择为开漏输出模式,通过上拉电阻提供高电平,使从动器可对时钟线下拉
控制,使主控器等待。
在通常情况下,从动器处于释放时钟线的状态,时钟线 SCL0 完全由主控器控制。但当
从动器出现异常情况,短时间内无法继续进行数据传输时,从动器可以在时钟线 SCL0
为低电平时输出 0(不可以在高电平时输出 0,否则会破坏数据传输过程),强行使 SCL0
保持低电平,使主控器进入通讯等待状态,直到从动器释放时钟线。时钟线下拉等待请
求波形示意图如下:
主控器
释放时钟线
主控器
从动器
释放时钟线
从动器
下拉时钟线
从动器
SCL0
图 5-48 I2C 时钟线下拉等待波形示意图
I2C 从动模式下,时钟自动下拉等待请求功能使能后,当接收到本芯片寻呼地址和读操
作位时,如果 I2C 的发送缓冲器和发送移位寄存器全空,则会自动将时钟线下拉;当接
收到本芯片寻呼地址和写操作位时,如果 I2C 的接收缓冲器和接收移位寄存器全满,则
会自动将时钟线下拉。
5. 5. 8. 6
I2C自动发送未应答功能
I2C 从动模式,支持自动发送未应答 NACK 功能,配置 I2C_MOD 寄存器的 ANAE,可
使能该功能。从动器使能自动发送未应答功能时,不会强制控制时钟线,适用于通讯端
口 SCL0 选择为推挽输出或开漏输出模式两种情况。
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
20
19
18
17
SA
10
9
8
TJP
V1.4
版权所有©上海东软载波微电子有限公司
16
RW
7
6
5
4
3
2
1
0
TJE
保留
SDASE
SCLSE
SDAOD
SCLOD
RST
EN
217/310
http://www.essemi.com
HR8P506 数据手册
—
—
bit31-24
SA
bit23-17
RW
bit16
TJP
bit15-8
—
R/W
从机地址位
主控模式:触发“启动/重启动”操作时,自动发送
从动模式:接收到“启动/重启动”后用于匹配比较
R/W
I2C 读写控制位
0:写操作
1:读操作
主控模式:该位可读可写,触发“启动/重启动”操
作时,自动发送该位
从动模式:该位只可读,从机地址匹配后,硬件自动
根据接收到的控制位值,更新该位
R/W
I2C 时基定时周期设置位
00~FF:分别为 1~256 个 TPCLK
I2C 时基定时器使能位
0:禁止
1:使能
TJE
bit7
R/W
—
bit6
—
SDASE
bit5
SCLSE
bit4
SDAOD
bit3
SCLOD
bit2
RST
R/W
SDA 端口 16 倍速采样使能位
0:禁止
1:使能
R/W
SCL 端口 16 倍速采样使能位
0:禁止
1:使能
R/W
SDA 端口输出模式选择位
0:推挽输出
1:开漏输出
R/W
SCL 端口输出模式选择位
0:推挽输出
1:开漏输出
bit1
EN
—
I2C 软件复位
0:读取时始终为 0
1:软件复位,硬件自动清零
W
bit0
I2C 通讯使能位
0:禁止
1:使能
R/W
I2C 工作模式寄存器(I2C_MOD)
偏移地址:04H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
保留
15
14
13
TIS
12
24
23
22
11
ADE
10
9
8
ADLY
V1.4
版权所有©上海东软载波微电子有限公司
21
20
保留
TAS
7
6
5
4
SPAE
SRAE
ANAE
CSE
19
18
17
16
BLD
RDT
SPT
SRT
2
1
3
RDM
0
MS
218/310
http://www.essemi.com
HR8P506 数据手册
—
bit31-25
—
TAS
bit24
R/W
—
bit23-20
—
BLD
RDT
SPT
SRT
TIS
ADE
ADLY
SPAE
SRAE
bit19
bit18
bit17
bit16
bit15-12
bit11
bit10-8
bit7
bit6
V1.4
版权所有©上海东软载波微电子有限公司
—
I2C 发送应答设置位(仅从动模式支持)
0:发送 ACK
1:发送 NACK
—
R/W
I2C 总线释放功能控制位(仅主控模式支持)
0:无效
1:SDA 端口为高电平,SCL 端口发送 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 通讯时钟周期
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)
R/W
I2C 自动寻呼使能位(仅主控模式支持)
0:禁止
1:使能(若寻呼地址的应答位为 NACK,则自
219/310
http://www.essemi.com
HR8P506 数据手册
动重启动本次寻呼操作)
ANAE
bit5
CSE
bit4
R/W
I2C 自动发送未应答使能位(仅从动模式支持)
0:禁止
1:使能
R/W
I2C 时钟线自动下拉等待请求使能位(仅从动
模式支持)
0:禁止
1:使能
RDM
bit3-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
MS
bit0
R/W
I2C 通讯模式选择位
0:主控模式
1:从动模式
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
11
10
RBIM
9
8
TBIM
bit31-13
bit12
bit11-10
bit9-8
V1.4
版权所有©上海东软载波微电子有限公司
—
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:半字空产生中断
220/310
http://www.essemi.com
HR8P506 数据手册
10:字空产生中断
11:保留
TBWEIE
bit7
R/W
I2C 发送数据写错误中断使能位
0:禁止
1:使能
NAIE
bit6
R/W
I2C 未应答 NACK 中断使能位
0:禁止
1:使能
ROIE
bit5
R/W
I2C 接收数据溢出中断使能位
0:禁止
1:使能
R/W
I2C 发送数据错误中断使能位
0:禁止
1:使能
R/W
I2C 接收缓冲器满中断使能位
0:禁止
1:使能
R/W
I2C 发送缓冲器空中断使能位
0:禁止
1:使能
R/W
I2C 停止位中断使能位
0:禁止
1:使能
R/W
I2C 起始位中断使能位
0:禁止
1:使能
TEIE
bit4
RBIE
bit3
TBIE
bit2
SPIE
bit1
SRIE
bit0
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
bit7
R/W
V1.4
版权所有©上海东软载波微电子有限公司
8
7
6
5
4
3
2
1
0
TBWEIF
NAIF
ROIF
TEIF
RBIF
TBIF
SPIF
SRIF
—
I2C 发送空闲中断标志位
0:未产生空闲中断
1:空闲中断标志
软件写 1 清除标志位,写 0 无效
—
I2C 发送数据写错误中断标志位
221/310
http://www.essemi.com
HR8P506 数据手册
0:未发生写错误
1:发生写错误,可能会出现下列错误:
对 I2C_TBW 字写入时,TB0~TB3 未全空;
对 I2C_TBW 半字写入时,TB0~TB3 未半空;
对 I2C_TBW 字节写入时,TB0~TB3 全满;
对 I2C_TBW进行半字写入;
对 I2C_TBW进行字节写入。
软件写 1 清除标志位,写 0 无效
NAIF
ROIF
TEIF
RBIF
TBIF
SPIF
SRIF
bit6
bit5
bit4
bit3
bit2
bit1
bit0
R/W
I2C 未应答中断标志位
0:未产生未应答 NACK
1:产生未应答 NACK
I2C 接收或发送 NACK 位后,产生中断标志
软件写 1 清除标志位,写 0 无效
R/W
I2C 接收数据溢出中断标志位
0:未溢出
1:溢出
软件写 1 清除标志位,写 0 无效
R/W
I2C 发送错误中断标志位
0:未发生发送错误
1:发生发送错误:发送缓冲器和发送移位寄存器全空
时,又收到主控方提供的通讯时钟
软件写 1 清除标志位,写 0 无效
R
I2C 接收缓冲器满中断标志位
0:非满
1:满
读 I2C_RBR 寄存器可清除中断标志位
R
I2C 发送缓冲器空中断标志位
0:非空
1:空
写 I2C_TBW 寄存器可清除中断标志位
R/W
I2C 停止位中断标志位
0:未产生停止位
1:产生停止位
主控模式:发送停止位后产生中断标志。
从动模式:接收停止位后产生中断标志。
软件写 1 清除标志位,写 0 无效
R/W
I2C 起始位中断标志位
0:未产生起始位
1:产生起始位
主控模式:如果禁止自动寻呼,发送完“起始位+地址+接收应
答位后”产生中断标志。如果使能自动寻呼,发送
完“起始位+地址+接受应答位”
,并且应答位为 ACK
时,产生中断标志。
从动模式:接收到“起始位+地址位”
,且地址匹配,发送应答
V1.4
版权所有©上海东软载波微电子有限公司
222/310
http://www.essemi.com
HR8P506 数据手册
位后,产生中断标志。
软件写 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
写入的发送数据
字节写入时:仅允许对 TBW写入
半字写入时:仅允许对 TBW写入
字写入时:对 TBW写入
W
I2C 接收数据读取寄存器(I2C_RBR)
偏移地址: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
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
TB1
V1.4
版权所有©上海东软载波微电子有限公司
9
8
7
6
5
4
3
TB0
223/310
http://www.essemi.com
HR8P506 数据手册
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
20
RB3
15
14
13
12
19
18
17
16
2
1
0
RB2
11
10
9
8
7
6
5
4
RB1
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)
偏移地址: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:空闲状态
R
I2C 应答位
0:应答 ACK
1:未应答 NACK
R
RB3 满标志位
0:空
1:满
ACK
RBFF3
bit16
bit15
RBFF2
bit14
R
RB2 满标志位
0:空
1:满
RBFF1
bit13
R
RB1 满标志位
V1.4
版权所有©上海东软载波微电子有限公司
7
6
5
4
3
2
17
16
IDLE
ACK
1
0
保留
224/310
http://www.essemi.com
HR8P506 数据手册
0:空
1:满
RBFF0
bit12
R
RB0 满标志位
0:空
1:满
TBEF3
bit11
R
TB3 空标志位
0:满
1:空
TBEF2
bit10
R
TB2 空标志位
0:满
1:空
R
TB1 空标志位
0:满
1:空
TBEF1
bit9
TBEF0
bit8
R
TB0 空标志位
0:满
1:空
—
bit7-0
—
—
5. 5. 10 I2C应用说明
芯片支持 1 个 I2C 总线串口通讯控制器 I2C0。
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)
,即可达到连续发送数据的目的。
V1.4
版权所有©上海东软载波微电子有限公司
225/310
http://www.essemi.com
HR8P506 数据手册
5. 6 模数转换器(ADC)
5. 6. 1
5. 6. 2
概述
支持 12 位转换结果,有效精度为 11 位
采样速率最高支持 125ksps (kilo-samples per second)
支持 16 个模拟输入通道
支持 ADC 中断,可唤醒睡眠模式(仅在时钟源为 LRC 时唤醒)
支持正负向参考电压可配置
支持转换时钟可配置
支持自动转换比较功能
结构框图
ADVREFP
ADVREFN
ADC_DR
APB_ADC
模数
转换器
AIN0
AIN1
AIN2
AIN3
通道
选择
AIN12
AIN13
AIN14
AIN15
转换时钟选择器
ADC控制寄存器
图 5-49 ADC 内部结构图
5. 6. 3
ADC基本配置
将端口配置为 ADC 模拟输入通道的方式如下:
配置 GPIO_PAINEB/GPIO_PBINEB 寄存器,关断该端口的数字输入;配置 GPIO_PADIR/
GPIO_PBDIR 寄存器,关断该端口的数字输出。
配置 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;最后配置
V1.4
版权所有©上海东软载波微电子有限公司
226/310
http://www.essemi.com
HR8P506 数据手册
TRIG,启动 A/D 转换,转换完成后,硬件电路自动将 TRIG 清零。
ADC 在每次转换完成后,会产生 ADC_IF 寄存器的中断标志 IF,需软件清零;启动下一
次 A/D 转换时,需重新配置 TRIG。
AD 采样时间可选择硬件或软件控制,默认为硬件自动控制,最快为 1 个 ADC 时钟(取决
于芯片的实际应用条件和 ADC 时钟源频率)。转换精度为 12 位时,转换时间为 14 个 ADC
时钟。在使用 VDD 作参考电压时,ADC 最快采样速率为 125Ksps,即每秒可输出 125K
个高精度 ADC 转换值。通过配置 ADC_CON1 寄存器的 CLKS 和 CLKDIV 寄存器来产生
合适的 ADC 时钟。
ADC 时钟源选取系统时钟,采用内部参考电压 VREFP 时的建议配置如下表所示。
系统时钟
ADC 时钟分频比
ADC 精度
转换速率
48MHz
32
10.5 位
32MHz
8
9位
250Ksps
32MHz
32
12 位
62.5Ksps
93.75Ksps
表 5-2 建议设置
ADCLK
SMPS
EN
Tog*
14Tadclk
SMPON
TRIG
转换时间
采样时间
软件清零
IF
ADC_DR
原数据
新数据
图 5-50 ADC 数据转换时序示意图(ADC_CON1 寄存器的 SMPS=0,软件控制采样)
V1.4
版权所有©上海东软载波微电子有限公司
227/310
http://www.essemi.com
HR8P506 数据手册
ADCLK
SMPS
Tog*
EN
14Tadclk
TRIG
转换时间
采样时间
软件清零
IF
新数据
原数据
ADC_DR
图 5-51 ADC 数据转换时序示意图(ADC_CON1 寄存器的 SMPS=1,硬件控制采样)
注 1:Tog>0;
注 2:AD 转换时钟周期 Tadclk,可通过 ADC_CON1 寄存器的 CLKS 和 CLKDIV配置不同的频率。
启动一次 A/D 转换例程
LDR
LDR
STR
LDR
R0, = ADC_VREFCON
R1, =0X07
R1, [R0]
R0, =ADC_CON1
LDR
STR
LDR
LDR
STR
LDR
LDR
STR
LDR
LDR
STR
WAIT4IF
LDR
LDR
TST
BEQ
STR
LDR
LDR
R1, =0X03005905
R1, [R0]
R0, =ADC_CHS
R1, =0X03
R1, [R0]
R0, =ADC_CON0
R1, =0X01
R1, [R0]
R0, =ADC_CON0
R1, =0X03
R1, [R0]
R0, =ADC_IF
R1, =0X01
R0, R1
WAIT4IF
R1, [R0]
R0, =ADC_CON0
R1, =0X00
V1.4
版权所有©上海东软载波微电子有限公司
;使能 VREF_EN 与 IREF_EN,选择 2.6V
; A/D 时钟源选择 PCLK 的 32 分频,选择内部
;参考电压 VREF 2.6V 为正向参考电压,
;VREF BUF 使能,选择硬件控制采样时间,
;VCM BUF 使能且为高速模式,AD 转换高速
;使能
;选择 AIN3
;使能 ADC
; A/D 转换
;等待 ADC 中断
;清零 ADC 中断
;关闭 ADC
228/310
http://www.essemi.com
HR8P506 数据手册
STR
5. 6. 6
R1, [R0]
自动转换比较功能
芯片提供自动转换比较功能,可自动完成多次 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。
启动一次 A/D 自动转换例程
;使能 VREF_EN 与 IREF_EN,选择 2.6V
LDR
LDR
STR
LDR
R0, = ADC_VREFCON
R1, =0X07
R1, [R0]
R0, =ADC_CON1
LDR
STR
LDR
LDR
STR
LDR
LDR
LDR
R1, =0X03005905
R1, [R0]
R0, =ADC_CHS
;选择 AIN3
R1, =0X03
R1, [R0]
ADC_IE, =0X07
ADC_ACPCMP, =0X00010001 ;设置自动比较的高/低阈值
ADC_ACPC, =0x0013001F
;ACP 模块工作时钟为 LRC,每次溢出
;时间内自动转换 8 次,溢出时间为 32x Tacp
V1.4
版权所有©上海东软载波微电子有限公司
; A/D 时钟源选择 PCLK 的 32 分频,选择内部
;参考电压 VREF 2.6V 为正向参考电压,
;VREF BUF 使能,选择硬件控制采样,VCM
;BUF 使能且为高速模式,AD 转换高速使能
229/310
http://www.essemi.com
HR8P506 数据手册
LDR
LDR
STR
LDR
LDR
STR
……
;使能 ADC 与自动转换比较功能
R0, =ADC_CON0
R1, =0X05
R1, [R0]
R0, =ADC_CON0
R1, =0X07
R1, [R0]
;启动 A/D 转换
特殊功能寄存器
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
保留
—
—
bit31-3
IREF_EN
bit2
VREF_SEL
bit1
VREF_EN
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:使能
注 1:A/D 正常工作时必须开启 VREF_EN 与 IREF_EN。
注 2:寄存器 ADC_VREFCON 的 bit31-3 为测试保留位,用户需固定写 0,否则可能会导致 ADC 工作异常。
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 转换结果
V1.4
版权所有©上海东软载波微电子有限公司
230/310
http://www.essemi.com
HR8P506 数据手册
ADC 控制寄存器 0(ADC_CON0)
偏移地址: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
ACP_EN
TRIG
EN
保留
15
14
13
12
11
10
9
8
7
保留
—
—
bit31-3
ACP_EN
bit2
TRIG
bit1
EN
bit0
—
R/W
A/D 自动转换比较功能使能位
0:关闭
1:启动
R/W
A/D 转换状态位
0:A/D 未进行转换,或 A/D 转换已完成
(硬件清零,且硬件清零优先)
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
是否转换完成。
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
V1.4
版权所有©上海东软载波微电子有限公司
25
24
VCMBUF_HS
VCMBUF_EN
9
8
R/W
22
21
20
19
保留
7
6
18
17
16
1
0
ST
5
保留
VREFP
—
23
4
3
CLKS
2
CLKDIV
—
ADC 共模电压 VCM BUF 高速模式使能控
制位
0:保留,仅作测试使用
231/310
http://www.essemi.com
HR8P506 数据手册
1:使能
VCMBUF_EN
bit24
R/W
—
bit23-21
—
ST
bit20-16
R/W
—
bit15
—
HSEN
SMPON
SMPS
VRBUF_EN
VREFN
bit14
bit13
bit12
bit11
bit10
R/W
R/W
A/D 采样模式选择位(ACP_EN 为 1 时,
固定为 1)
0:软件控制
1:硬件控制
R/W
VREF BUF 使能位
0:禁止
1:使能
R/W
A/D 负向参考电压选择位
0:内部地电压 VSS
1:外部参考电压 AVREFN
A/D 正向参考电压选择位
00:选择芯片工作电压 VDD
01:选择内部参考电压 VREFP( 2.6V 或
1.8V)
,AVREFP 端口复用作普通 I/O
端口
10:选择内部参考电压 VREFP( 2.6V 或
1.8V)
,AVREFP 端口输出内部参考
电压 VREF
11:外部参考电压 AVREFP,该电压不能
高于 VDD,不能低于 1.3V。SWD 调
试模式下 AVREFP 不可用
—
bit7-4
—
bit2-0
V1.4
版权所有©上海东软载波微电子有限公司
—
A/D 采样软件控制位(ACP_EN 为 1 时,
该位无效)
0:关闭 AD 采样
1:启动 AD 采样
R/W
CLKDIV
A/D 采样时间选择位(硬件控制有效)
采样时间:ST*2+1 个 Tadclk
R/W
bit9-8
bit3
—
AD 转换速度控制位
0:保留,仅作测试使用
1:高速
VREFP
CLKS
ADC 共模电压 VCM BUF 使能控制位
0:禁止
1:使能
—
R/W
A/D 时钟源选择位
0:PCLK
1:LRC(32KHz)
R/W
A/D 时钟源预分频选择位
000 = 1:1
001 = 1:2
232/310
http://www.essemi.com
HR8P506 数据手册
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;
注 4:当使用外部参考电压时,参考电压不能低于 1.3V,否则会导致 ADC 工作异常。
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
bit31-9
—
VDD5_FLAG_EN
bit8
R/W
—
bit7-5
—
CHS
保留
VDD5_FLAG_EN
bit4-0
V1.4
版权所有©上海东软载波微电子有限公司
R/W
CHS
—
VDD 检测控制
1:使能(如果应用系统中 VDD 电压会小
于 3.7V,则需使能该位,ADC 硬件电
路根据 VDD 电压进行自调整,以保证
ADC 的可靠性)
0:禁止
—
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)
233/310
http://www.essemi.com
HR8P506 数据手册
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
19
18
17
16
5
4
3
2
1
0
ACPOVIE
ACPMAXIE
ACPMINIE
IE
保留
15
14
13
12
11
10
9
8
7
6
保留
—
bit31-4
ACPOVIE
bit3
ADC 自动转换溢出中断使能位
0:禁止
1:使能
bit2
R/W
ADC 自动转换高阈值超出中断使能位
0:禁止
1:使能
R/W
ADC 自动转换低阈值超出中断使能位
0:禁止
1:使能
R/W
ADC 中断使能位
0:禁止
1:使能
ACPMAXIE
ACPMINIE
—
bit1
IE
bit0
—
ADC 中断标志寄存器(ADC_IF)
偏移地址: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
保留
—
ACPOVIF
bit31-4
bit3
V1.4
版权所有©上海东软载波微电子有限公司
—
R/W
3
2
1
0
ACPOVIF
ACPMAXIF
ACPMINIF
IF
—
ADC 自动转换溢出中断标志位
0:自动转换的溢出时间未到
1:自动转换的溢出时间已到(由硬件置 1,软
234/310
http://www.essemi.com
HR8P506 数据手册
件清除)
软件写 1 清除标志位,写 0 无效
ACPMAXIF
bit2
ACPMINIF
bit1
IF
bit0
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
20
19
18
CLKS
9
8
7
保留
6
5
4
17
16
TIMES
3
2
1
0
OVFL_TIME
—
bit31-21
—
CLKS
bit20
R/W
—
bit19-18
—
TIMES
bit17-16
R/W
—
bit15-12
—
OVFL_TIME
bit11-0
R/W
V1.4
版权所有©上海东软载波微电子有限公司
—
ACP 溢出计数的时钟源选择位
0:FPCLK/256(PCLK 的 256 分频)
1:FLRC/256(LRC 时钟的 256 分频)
—
自动转换比较次数选择位(基于由
OVFL_TIME 设定的时间段内)
00:1 次
01:2 次
10:4 次
11:8 次
—
每次自动转换比较的溢出时间,可配置范
235/310
http://www.essemi.com
HR8P506 数据手册
围为 0~9C3H,计数时钟周期为 Tacp,分
别对应如下溢出时间:
0:1 xTacp
1:2 x Tacp
2:3 x Tacp
…
9C3H:2500 x Tacp
Tacp 为由 CLKS 选择的 ACP 溢出计数的
时钟源周期
注:配置 OVFL_TIME 的值必须大于一次 A/D 采样与转换时间。
ADC 自动转换比较阈值寄存器(ADC_ACPCMP)
偏移地址:30H
复位值:00001111_11111111_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
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
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
MEAN_DATA
—
bit31-12
—
—
MEAN_DATA
bit 11-0
R
自动转换结果的均值
V1.4
版权所有©上海东软载波微电子有限公司
236/310
http://www.essemi.com
HR8P506 数据手册
5. 7 实时时钟(RTC)
5. 7. 1
5. 7. 2
概述
仅 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
RTC写保护
为避免程序的异常运行对 RTC 模块的误操作,RTC 写保护寄存器 RTC_WP 用于阻止程
序对 RTC 模块其它寄存器的误写(不包括 RTC_WP 寄存器本身)
。
RTC_WP 寄存器为虚拟寄存器。要对 RTC 模块其它寄存器进行写操作时,需先对
RTC_WP 寄存器写 0x55AAAA55,之后可对 RTC 模块其它寄存器进行连续写操作。对
RTC_WP 寄存器写入其他值重新进入写保护状态,写保护状态下对其他寄存器进行的写
操作将被忽略。
可通过读 RTC_WP 寄存器确认 RTC 模块是否处于写保护状态,读出值为 0x55AAAA55,
表示当前可对 RTC 模块其它寄存器进行写操作;读出值为 0x00000000 表示 RTC 模块处
于写保护状态。除 0x55AAAA55 和 0x00000000 以外,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.4
版权所有©上海东软载波微电子有限公司
237/310
http://www.essemi.com
HR8P506 数据手册
写时间计数器的操作步骤如下(复位或上一次时间计数器读/写操作完成后)
:
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
01
02
03
04
05
06
07
08
09
10
11
12(AM12)
01(AM1)
02(AM2)
03(AM3)
04(AM4)
05(AM5)
06(AM6)
07(AM7)
08(AM8)
09(AM9)
10(AM10)
11(AM11)
12
13
14
15
16
17
18
19
20
21
22
23
32(PM12)
21(PM1)
22(PM2)
23(PM3)
24(PM4)
25(PM5)
26(PM6)
27(PM7)
28(PM8)
29(PM9)
30(PM10)
31(PM11)
表 5-3 12/24 小时模式对照表
V1.4
版权所有©上海东软载波微电子有限公司
238/310
http://www.essemi.com
HR8P506 数据手册
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
R/W
0x0000_0000:RTC 模块写保护
0x55AA_AA55:RTC 模块可进行写操作(该寄存器
写入其他值可恢复到写保护状态)
注 1:RTC_WP 保护的寄存器为 RTC_CON,RTC_CAL,RTC_WA,RTC_DA,RTC_HMS,RTC_YMDW,RTC_IE,
RTC_IF。
V1.4
版权所有©上海东软载波微电子有限公司
239/310
http://www.essemi.com
HR8P506 数据手册
RTC 控制寄存器(RTC_CON)
偏移地址:00H
复位值:00000000_00000000_00000000_10000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
7
6
5
4
3
2
1
0
PON
XST
保留
HSWI
TMWR
TMUP
保留
15
14
13
12
11
10
9
8
保留
-
PON
XST
bit31-8
bit7
bit6
-
R/W
R
CLKS
bit5-4
R/W
-
bit3
-
CLKS
-
RTC 上电复位标志位(软件只能将该位清零)
0:实时时钟正常工作
1:监测到 RTC 上电复位(必须软件清零后,RTC
才能开始工作)
振荡器停振监测标志位
0:振荡器持续工作正常
1:振荡器有停振现象发生
RTC 时钟源选择位(必须在写时间数据前设置)
00:32.768 KHz 振荡器时钟源(RTC 精确计时)
01:LRC 时钟源(RTC 非精确计时)
10:PCLK/256(RTC 用作普通计数器)
11:PCLK(RTC 用作普通计数器)
-
HSWI
bit2
R/W
12/24 小时模式选择位(必须在写时间数据前设
置)
0:12 小时模式
1:24 小时模式
TMWR
bit1
R/W
时间计数器读写选择位
0:时间计数器读出操作
1:时间计数器写入操作
R/W
时间计数器读写触发位(程序只能写 1,读写完
成后自动清零)
0:时间计数器读写操作已完成
1:时间计数器正在进行读写操作
TMUP
bit0
注 1:RTC 模块上电复位后一直处于复位状态,只有将 PON 位清零后,RTC 才进入工作状态。
注 2:为保证精度,建议 CLKS 值设置为 00,即选用外部 32.768KHz 晶振;对于低精度要求的运用,可选用 LRC
时钟源。只有在 RTC 用作普通的 Timer 时,可将 CLKS 设置为 10 或 11。
V1.4
版权所有©上海东软载波微电子有限公司
240/310
http://www.essemi.com
HR8P506 数据手册
RTC 调校寄存器(RTC_CAL)
偏移地址: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
CLKC
-
10
9
8
COCR
-
bit31-13
CLKC
bit12
COCR
DEV
bit11-9
CALF
-
R/W
RTC 输出脉冲端口使能位
0:禁止
1:使能(端口需复用为 RTCO,输出脉冲)
R/W
RTC 输出脉冲频率选择位
000:32KHz
001:1024Hz
010:32Hz
011:1Hz
100:校正后 1Hz 时钟输出
111~101:保留
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:如果 DEV=0,则调校时间步长为 3.051ppm,调校范围为-384ppm~384ppm,最高时间精度为±1.5ppm;
如果 DEV=1,则调校时间步长为 1.017ppm,调校范围为-128ppm~128ppm,最高时间精度为±0.5ppm。
RTC 周闹钟寄存器(RTC_WA)
偏移地址:08H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
保留
15
14
13
保留
12
11
18
17
16
2
1
0
WW
10
9
8
7
保留
WH
—
19
bit31-23
V1.4
版权所有©上海东软载波微电子有限公司
—
6
5
4
3
WM
—
241/310
http://www.essemi.com
HR8P506 数据手册
WW
bit22~16
R/W
—
bit15-14
—
WH
bit13~8
R/W
—
bit7
—
WM
bit6~0
周闹钟位
WW:周六闹钟位
WW:周五闹钟位
WW:周四闹钟位
WW:周三闹钟位
WW:周二闹钟位
WW:周一闹钟位
WW:周日闹钟位
—
小时(BCD 码)位
WH:24 小时模式:20 小时位
12 小时模式:1 代表 pm;0 代表 am
WH:10 小时位
WH:8 小时位
WH:4 小时位
WH:2 小时位
WH:1 小时位
—
分钟(BCD 码)位
WM:40 分钟位
WM:20 分钟位
WM:10 分钟位
WM:8 分钟位
WM:4 分钟位
WM:2 分钟位
WM:1 分钟位
R/W
RTC 日闹钟寄存器(RTC_DA)
偏移地址:0CH
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
21
20
6
5
4
19
18
17
16
3
2
1
0
保留
15
14
13
保留
12
11
10
9
8
7
保留
DH
—
DH
bit31-14
bit13~8
V1.4
版权所有©上海东软载波微电子有限公司
—
R/W
DM
—
小时(BCD 码)位
DH:24 小时模式:20 小时位
12 小时模式:1 代表 pm;0 代表 am
DH:10 小时位
DH:8 小时位
DH:4 小时位
242/310
http://www.essemi.com
HR8P506 数据手册
DH:2 小时位
DH:1 小时位
—
—
bit7
DM
bit6~0
—
分钟(BCD 码)位
DM:40 分钟位
DM:20 分钟位
DM:10 分钟位
DM:8 分钟位
DM:4 分钟位
DM:2 分钟位
DM:1 分钟位
R/W
RTC 时分秒寄存器(RTC_HMS)
偏移地址:10H
复位值:00000000_xxxxxxxx_xxxxxxxx _xxxxxxxx B
31
30
29
28
27
26
25
24
23
22
21
20
保留
15
14
13
12
保留
11
10
bit31-22
9
8
7
6
5
保留
-
HOUR
bit21~16
R/W
-
bit15
-
MIN
bit14~8
R/W
-
bit7
-
V1.4
版权所有©上海东软载波微电子有限公司
18
17
16
1
0
HOUR
MIN
-
19
4
3
2
SEC
-
小时(BCD 码)位
HOUR:24 小时模式:20 小时位
12 小时模式:1 代表 pm;0 代表 am
HOUR:10 小时位
HOUR:8 小时位
HOUR:4 小时位
HOUR:2 小时位
HOUR:1 小时位
-
分钟(BCD 码)位
MIN:40 分钟位
MIN:20 分钟位
MIN:10 分钟位
MIN:8 分钟位
MIN:4 分钟位
MIN:2 分钟位
MIN:1 分钟位
-
243/310
http://www.essemi.com
HR8P506 数据手册
SEC
bit6~0
秒(BCD 码)位
SEC:40 秒位
SEC:20 秒位
SEC:10 秒位
SEC:8 秒位
SEC:4 秒位
SEC:2 秒位
SEC:1 秒位
R/W
注:寄存器 RTC_HMS 在进行写操作时,只支持字写入方式,不支持字节和半字写入方式。
RTC 年月日周寄存器(RTC_YMDW)
偏移地址:14H
复位值:xxxxxxxx_xxxxxxxx_xxxxxxxx _xxxxxxxxB
31
30
29
28
27
26
25
24
23
22
15
14
13
保留
12
11
10
9
8
20
19
YEAR
bit31~24
R/W
-
bit23-21
-
MON
bit20~16
R/W
-
bit15-14
-
bit13~8
V1.4
版权所有©上海东软载波微电子有限公司
7
6
R/W
18
17
16
1
0
MON
5
4
保留
DAY
DAY
21
保留
YEAR
3
2
WEEK
年(BCD 码)位
YEAR:80 年位
YEAR:40 年位
YEAR:20 年位
YEAR:10 年位
YEAR:8 年位
YEAR:4 年位
YEAR:2 年位
YEAR:1 年位
-
月(BCD 码)位
MON:10 月位
MON:8 月位
MON:4 月位
MON:2 月位
MON:1 月位
-
日(BCD 码)位
DAY:20 日位
DAY:10 日位
DAY:8 日位
DAY:4 日位
DAY:2 日位
DAY:1 日位
244/310
http://www.essemi.com
HR8P506 数据手册
-
-
bit7
WEEK
bit6~0
-
星期(BCD 码)位
WEEK:星期六位
WEEK:星期五位
WEEK:星期四位
WEEK:星期三位
WEEK:星期二位
WEEK:星期一位
WEEK:星期日位
R/W
注:寄存器 RTC_YMDW 在进行写操作时,只支持字写入方式,不支持字节和半字写入方式。
RTC 中断使能寄存器(RTC_IE)
偏移地址:18H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
保留
15
14
13
12
保留
—
WALE
11
10
9
8
WALE
DALE
bit31-10
bit9
7
—
—
bit7-5
—
HORIE
bit3
bit2
3
2
1
0
DAYIE
HORIE
MINIE
SCDIE
—
日闹钟使能位
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:使能
V1.4
版权所有©上海东软载波微电子有限公司
245/310
http://www.essemi.com
HR8P506 数据手册
RTC 中断标志寄存器(RTC_IF)
偏移地址:1CH
复位值: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
MONIF
DAYIF
HORIF
MINIF
SCDIF
保留
15
14
13
12
保留
—
WAFG
11
10
9
WAFG
8
7
DAFG
bit31-10
bit9
—
日闹钟标志位
0:闹钟事件不匹配
1:闹钟事件匹配
软件写 1 清除标志位,写 0 无效
R/W
—
bit7-5
—
DAYIF
HORIF
MINIF
SCDIF
bit3
bit2
bit1
bit0
—
R/W
bit8
bit4
5
周闹钟标志位
0:闹钟事件不匹配
1:闹钟事件匹配
软件写 1 清除标志位,写 0 无效
DAFG
MONIF
6
保留
—
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 表示有中断
发生。
V1.4
版权所有©上海东软载波微电子有限公司
246/310
http://www.essemi.com
HR8P506 数据手册
5. 8 液晶显示控制器(LCDC)
5. 8. 1
5. 8. 2
概述
支持 8COM x 28SEG
支持灰度调节功能
支持显示闪烁功能,闪烁频率可调
支持内部偏压电阻可调功能
支持 3 种时钟源选择
结构框图
APB_LCDC
LCD_D1
……
LCD_D6
MUX
LCD_D0
L
C
D
接
口
SEG
COM
LCD控制器
LCD预分频器
LCD时钟源
图 5-52 LCDC 驱动模块框图
5. 8. 3
LCDC基本设置
配置 LCDC 驱动模块的操作步骤如下:
5. 8. 4
1)
设置 LCD_CON1 寄存器的 SEL,选择 LCD 驱动器。
2)
设置 LCDC 工作时钟。
3)
设置 LCDC 驱动端口:配置 LCD_CON0 寄存器的 COMS和 LCD_SEL 寄存器
的 SEG使能端口的公共端和段功能,及选择偏置模式。设置 GPIO_PAINEB/
GPIO_PBINEB 寄存器,关闭相应端口的数字输入;设置 GPIO_PADIR/GPIO_PBDIR
寄存器,关闭相应端口的数字输出。
4)
初始化 LCDC 像素数据寄存器 LCD_D0~LCD_D6。
5)
使能 LCDC 驱动模块。
LCDC偏置电压选择
LCDC 支持内部偏置电压和外部偏置电压可选。
LCD_CON0 寄存器的 VLCDEN=0 时,LCDC 使用内部偏置电压,内部偏置电压参考源为
电源电压 VDD,可进行如下选择:
1/2 偏置(3 种电压等级:VSS、1/2VBIAS 和 VBIAS)
V1.4
版权所有©上海东软载波微电子有限公司
247/310
http://www.essemi.com
HR8P506 数据手册
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 时,LCDC 使用外部偏置电压,外部偏置电压从管脚
PA2~PA5 输入,
这 4 个管脚需配置为模拟管脚。外部偏置电压电阻网络必须与 LCD_CON0
控制寄存器的 BIAS位的偏压类型相匹配。对应于各种偏置电压,PA2~PA5 上的
VLCD1~4 偏置电压输入如下表所示。
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-4 LCDC 外部偏置电压输入配置表
VDD
VLCD4
VLCD3
VLCD2
VLCD1
图 5-53 1/4 VDD 外部偏置电压参考电路
5. 8. 5
LCDC像素对照表
LCDC 像素寄存器的各个数值位,与公共端-段的像素点对应关系如下表所示:
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
V1.4
版权所有©上海东软载波微电子有限公司
248/310
http://www.essemi.com
HR8P506 数据手册
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
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
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-5 LCDC 像素对照列表
5. 8. 6
LCDC工作时钟源
LCDC 模块有 3 种工作时钟源可选择:
LRC 时钟的 4 分频:支持浅睡眠和深睡眠模式下工作。
LOSC 时钟的 4 分频:支持浅睡眠和深睡眠模式下工作。
PCLK 时钟的 4096 分频:不支持浅睡眠和深睡眠模式下工作。
通过配置 LCD_CON0 寄存器的 PRS,设置 LCD 工作时钟的预分频比。
5. 8. 7
LCD显示帧频率
LCD 的显示帧频率,与 COM 端口复用模式,工作时钟源频率及其预分频比有关,描述如
下:
COMS = 001:帧频率
COMS = 010:帧频率
COMS = 011:帧频率
COMS = 10x:帧频率
COMS = 11x:帧频率
5. 8. 8
=
=
=
=
=
时钟源频率
时钟源频率
时钟源频率
时钟源频率
时钟源频率
/(1 × 4 ×(PRS+1)
)
/(1 × 6 ×(PRS+1)
)
/(1 × 8 ×(PRS+1)
)
/(2 × 2 ×(PRS+1)
)
/(1 × 3 ×(PRS+1)
)
LCD闪烁功能
配置 LCD_CON0 寄存器的 FLIK 位,可使能 LCD 显示闪烁功能。配置闪烁时间寄存器
V1.4
版权所有©上海东软载波微电子有限公司
249/310
http://www.essemi.com
HR8P506 数据手册
LCD_TWI,可设置 LCD 闪烁时的点亮时间和熄灭时间。在使能闪烁功能之前,应先设置
LCD_TWI 寄存器。
5. 8. 9
LCD低功耗模式
配置 LCD_CON0 寄存器的 RS,可控制 LCD 内部偏压电阻。偏压电阻越小,显示
效果越好但功耗越大。为了降低功耗同时保证显示效果,提供了 LCD 内部偏压电阻自动
切换功能,用户可以根据实际 LCD 显示效果选择合适的偏压电阻。配置 LCD_CON0 寄存
器的 RT,控制电阻切换时间。只当 LCD 配置为偏压电阻自动切换模式时,RT 控制
位才有效。
配置 LCD_CON0 寄存器的 BVS,可控制 LCD 显示灰度,灰度电压越高,显示效果
越好,但功耗越大。用户可根据实际的 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-54 快速充放电示意图
V1.4
版权所有©上海东软载波微电子有限公司
250/310
http://www.essemi.com
HR8P506 数据手册
5. 8. 10 特殊功能寄存器
LCD 控制寄存器 0(LCD_CON0)
偏移地址:00H
复位值:11110000_00000000_00000000_00000000B
31
30
29
28
27
26
25
15
14
13
RT
12
11
10
RS
9
bit31-28
R/W
—
bit27-22
—
RT
RS
bit21-16
bit15-13
bit12-10
8
BIAS
BVS
PRS
24
23
22
21
20
保留
BVS
19
18
17
16
2
1
0
PRS
7
6
CLK_SEL
5
4
3
WFS
FLIK
VLCDEN
COMS
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)
0101:VBIAS = VDD× (20/30)
0110:VBIAS = VDD× (21/30)
0111:VBIAS = VDD× (22/30)
1000:VBIAS = VDD× (23/30)
1001:VBIAS = VDD× (24/30)
1010:VBIAS = VDD× (25/30)
1011:VBIAS = VDD× (26/30)
1100:VBIAS = VDD× (27/30)
1101:VBIAS = VDD× (28/30)
1110:VBIAS = VDD× (29/30)
1111:VBIAS = VDD
—
R/W
LCDC 时钟源预分频比选择位
000000 = 1:1
000001 = 1:2
000010 = 1:3
……
111111 = 1:64
R/W
LCDC 60k 电阻保持时间选择位
000:1/4 COM 周期
001:1/8 COM 周期
010:1/16 COM 周期
011:1/32 COM 周期
100:1/64 COM 周期
其它:保留
R/W
LCDC 内部偏压电阻总和选择位
000:225K 欧姆(1/3 和 1/4 BIAS)
,150K 欧姆(1/2 BIAS)
001:900K 欧姆(1/3 和 1/4 BIAS)
,600K 欧姆(1/2 BIAS)
V1.4
版权所有©上海东软载波微电子有限公司
251/310
http://www.essemi.com
HR8P506 数据手册
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
CLK_SEL
bit9-8
bit7-6
R/W
LCDC 偏置选择位
00:1/2 BIAS
01:1/3 BIAS
10:保留
11:1/4 BIAS
R/W
LCDC 时钟源选择位
00:LRC 时钟的 4 分频(内部时钟 32KHz)
01:LOSC 时钟的 4 分频(外部时钟 32KHz)
10:PCLK 时钟的 4096 分频
11:保留
WFS
bit5
R/W
LCD 驱动波形类型选择位
0:A 型波形(在每一公共端类型内改变相位)
1:B 型波形(在每一帧边界改变相位)
FLIK
bit4
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-6 LCDC 复用类型列表
V1.4
版权所有©上海东软载波微电子有限公司
252/310
http://www.essemi.com
HR8P506 数据手册
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
9
8
TOFF
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 秒;
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
—
—
LCD 段驱动端口使能位
0:禁止
1:使能
R/W
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
保留
—
bit31-5
7
6
5
RST
—
—
RST
bit4
W
LCDC 驱动模块软件复位
0:读取时始终为 0
1:软件复位
—
bit3-2
—
—
V1.4
版权所有©上海东软载波微电子有限公司
2
保留
1
0
SEL
EN
253/310
http://www.essemi.com
HR8P506 数据手册
SEL
bit1
EN
bit0
R/W
LCDC,LEDC 驱动器选择控制位
0: 选择 LCDC 驱动器(禁止 LEDC 驱动器)
1: 禁止 LCDC 驱动器(选择 LEDC 驱动器)
R/W
LCDC 驱动模块使能位
0:禁止
1:使能
注:LCDC 驱动模块软件复位后, LCDC 模块禁止,LCD_CON1 寄存器的 EN=0;
LCD 像素寄存器 0(LCD_D0)
偏移地址: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
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:点亮像素(不透明)
V1.4
版权所有©上海东软载波微电子有限公司
254/310
http://www.essemi.com
HR8P506 数据手册
LCD 像素寄存器 2(LCD_D2)
偏移地址:28H
复位值: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
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
9
8
7
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
D4
15
14
13
12
11
10
9
8
7
D4
D4
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
V1.4
版权所有©上海东软载波微电子有限公司
255/310
http://www.essemi.com
HR8P506 数据手册
LCD 像素寄存器 5(LCD_D5)
偏移地址: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
22
21
20
19
18
17
16
6
5
4
3
2
1
0
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
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
V1.4
版权所有©上海东软载波微电子有限公司
256/310
http://www.essemi.com
HR8P506 数据手册
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-55 LEDC 驱动模块框图
5. 9. 3
LEDC基本设置
配置 LEDC 驱动模块的操作步骤如下:
1)
设置 LED_CON1 寄存器的 SEL,选择 LED 驱动器。
2)
设置 LEDC 工作时钟。
3)
配置 LED_CON0 寄存器的 MUX,选择 LEDC 一帧刷新的 COM 数。
4)
配置 GPIO_PAFUNC/GPIO_PBFUNC 为普通 IO,设置 LED 端口为输出端口;设置
COM 端口为大电流驱动;配置 LED_SEL 寄存器的 COM和 SEG,使能
端口的公共端和段功能。
5)
初始化 LEDC 像素数据寄存器 LED_D0~LED_D1。
6)
使能 LEDC 驱动模块。
5. 9. 4
LEDC像素对照表
LEDC 像素寄存器的各个数值位,与公共端-段的像素点对应关系如下表所示:
SEG7
SEG6
SEG5
SEG4
D1 [31]
D1 [30]
D1 [29]
D1 [28]
D1 [23]
D1 [22]
D1 [21]
D1 [15]
D1 [14]
D1 [7]
SEG3
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 [6]
D1 [5]
D1 [4]
D1 [3]
D1 [2]
D1 [1]
D1 [0]
COM4
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-7 LED 像素对照列表
V1.4
版权所有©上海东软载波微电子有限公司
257/310
http://www.essemi.com
HR8P506 数据手册
5. 9. 5
LEDC工作时钟源
LEDC 模块有 3 种模式工作时钟源
LRC 时钟的 4 分频:支持睡眠模式下工作。
LOSC 时钟的 4 分频:支持睡眠模式下工作。
PCLK 时钟的 4096 分频:不支持睡眠模式下工作。
通过配置 LED_CON0 寄存器的 PRS,设置 LED 工作时钟的预分频比。
5. 9. 6
LED工作示意图
LED时钟源
32KHZ
LED工作频率
8KHZ
1帧
SEG
0
0
COM0
0
COM1
COM2
0
COM3
0
COM0
0
COM1
0
COM2
COM3
0
T1
COM0
COM1
……
COMx
注:T1为一个32kHZ时钟周期
图 5-56 LEDC 工作示意图
5. 9. 7
特殊功能寄存器
LED 控制寄存器 0(LED_CON0)
偏移地址:00H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
21
20
保留
15
14
13
12
11
PRS
bit31-22
10
9
bit21-16
8
7
6
5
CLK_SEL
—
R/W
V1.4
版权所有©上海东软载波微电子有限公司
18
17
16
1
0
PRS
保留
—
19
4
保留
3
2
MUX
—
LEDC 时钟源预分频比选择位
000000 = 1:1
000001 = 1:2
000010 = 1:3
……
111111 = 1:64
258/310
http://www.essemi.com
HR8P506 数据手册
—
—
bit15-8
CLK_SEL
bit7-6
R/W
—
bit5-3
—
MUX
bit2-0
—
LEDC 时钟源选择位
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
—
bit31-16
SEG
COM
bit15-8
bit7-0
COM
—
—
R/W
LED SEG 段驱动端口使能位
0:禁止
1:使能
R/W
LED COM 端驱动端口使能位
0:禁止
1:使能
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
保留
V1.4
版权所有©上海东软载波微电子有限公司
8
7
6
5
RST
2
保留
1
0
SEL
EN
259/310
http://www.essemi.com
HR8P506 数据手册
—
bit31-5
—
—
RST
bit4
W
LEDC 驱动模块软件复位
0:读取时始终为 0
1:软件复位
—
bit3-2
—
—
SEL
bit1
EN
bit0
R/W
LEDC,LCDC 驱动器选择控制位
0: 禁止 LEDC 驱动器(选择 LCDC 驱动器)
1: 选择 LEDC 驱动器(禁止 LCDC 驱动器)
R/W
LEDC 驱动模块使能位
0:禁止
1:使能
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
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)
偏移地址:24H
复位值:00000000_00000000_00000000_00000000B
31
30
29
28
27
26
25
24
23
22
D1
15
14
13
12
11
10
9
8
7
6
D1
D1
bit31-0
R/W
像素点亮位
0:不点亮象素(透明)
1:点亮像素(不透明)
V1.4
版权所有©上海东软载波微电子有限公司
260/310
http://www.essemi.com
HR8P506 数据手册
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 模块将产生复位信号。配置 CLKS,可以选择计数时
钟源;配置 WDT_LOAD 寄存器,可设置计数初值;读取 WDT_VALUE,可得到 WDT 当
前计数值。写入装载值寄存器 WDT_LOAD 时,计数器当前值寄存器被清零。
WDT 模块支持寄存器写保护,配置寄存器 WDT_LOCK=0x1ACCE551,可去除 WDT 寄
存器的写保护状态,进行被保护寄存器的写操作,否则无法对被保护寄存器写入。
注 1:在 SWD 调试模式下,需要禁止 WDT,否则在调试过程中,WDT 会始终保持工作,可能会产生计数溢出复
位,导致芯片调试异常。
注 2:若使能了 WDT,进入深睡眠模式后,WDT 复位无法唤醒系统,因此必须使能 WDT 中断,通过 WDT 中断唤
醒系统。
V1.4
版权所有©上海东软载波微电子有限公司
261/310
http://www.essemi.com
HR8P506 数据手册
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
6
5
4
19
18
17
16
保留
15
14
13
12
11
10
9
8
7
保留
—
CLKS
RSTEN
bit31-4
bit3
bit2
—
3
2
1
0
CLKS
RSTEN
IE
EN
—
R/W
WDT 计数时钟选择位
0:PCLK
1:LRC 时钟(约 32KHz)
R/W
WDT 复位使能位
0:禁止
1:使能,WDT 计数到 0 时,产生复位信号,将芯片复位
V1.4
版权所有©上海东软载波微电子有限公司
262/310
http://www.essemi.com
HR8P506 数据手册
IE
bit1
EN
bit0
R/W
WDT 中断使能位
0:禁止
1:使能,WDT 计数到 0 时,产生中断标志
R/W
WDT 模块使能位
0:禁止
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 中断标志清零位
对 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
保留
—
WDTIF
bit31-1
bit0
—
—
R
WDT 中断标志位
0:未产生中断
1:WDT 计数器计数到 0,产生中断
写寄存器 WDT_INTCLR,可清除 WDT 中断标志位
V1.4
版权所有©上海东软载波微电子有限公司
0
WDTIF
263/310
http://www.essemi.com
HR8P506 数据手册
WDT 访问使能寄存器(WDT_LOCK)
偏移地址: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
保留
—
LOCK
bit31-1
bit0
W
R/W
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.4
版权所有©上海东软载波微电子有限公司
264/310
http://www.essemi.com
HR8P506 数据手册
第6章
芯片封装外观尺寸图
6. 1 LQFP 48-pin封装外观尺寸图
D
D1
48
A
A2
36
L2
A1
E
E1
1
c1
A3
37
θ
Gauge plane
Seating plane
12
25
L
L1
13
24
b
e
标号
公制(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
c1
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
L2
—
0.25
BSC
—
—
0.010
BSC
—
θ
0°
3.5°
7°
0°
3.5°
7°
V1.4
版权所有©上海东软载波微电子有限公司
265/310
http://www.essemi.com
HR8P506 数据手册
6. 2 LQFP 44-pin封装外观尺寸图
D
D1
A
33
L2
A1
E
E1
1
A2
A3
34
c1
44
θ
Gauge plane
Seating plane
11
23
L
L1
12
22
b
e
标号
公制(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.4
版权所有©上海东软载波微电子有限公司
—
—
—
266/310
http://www.essemi.com
HR8P506 数据手册
6. 3 LQFP 32-pin封装外观尺寸图
D
D1
9
L2
A
c1
A1
32
E
16
E1
25
A2
17
A3
24
θ
Gauge plane
Seating plane
1
L
8
b
L1
e
标号
公制(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
A3
0.59
0.64
0.69
0.023
0.025
0.027
c1
—
0.127
—
—
0.005
—
D
8.80
9.00
9.20
0.346
0.354
0.362
D1
6.90
7.00
7.10
0.272
0.276
0.280
E
8.80
9.00
9.20
0.346
0.354
0.362
E1
6.90
7.00
7.10
0.272
0.276
0.280
b
0.32
—
0.43
0.013
—
0.017
e
—
0.80
BSC
—
—
0.031
—
L
0.45
0.60
0.75
0.018
0.024
0.030
L1
—
1.00
REF
—
—
0.039
REF
—
L2
—
0.25
BSC
—
—
0.010
BSC
—
θ
0°
3.5°
7°
0°
3.5°
7°
V1.4
版权所有©上海东软载波微电子有限公司
267/310
http://www.essemi.com
HR8P506 数据手册
6. 4 QFN 32-pin封装外观尺寸图
D
25
24
32
1
A1
17
16
8
A
k
A3
E
E1
D1
9
b
L
e
标号
公制(mm)
英制(inch)
MIN
NOM
MAX
MIN
NOM
MAX
A
0.700
0.800
0.900
0.028
0.031
0.035
A1
0.000
—
0.050
0.000
—
0.002
A3
0.203REF.
0.008REF.
D
4.924
—
5.076
0.194
—
0.200
E
4.924
—
5.076
0.194
—
0.200
D1
3.300
—
3.500
0.130
—
0.138
E1
3.300
—
3.500
0.130
—
0.138
k
b
0.200MIN.
0.180
e
L
—
0.008MIN.
0.300
0.007
0.500TYP.
0.324
V1.4
版权所有©上海东软载波微电子有限公司
—
—
0.012
0.020TYP.
0.476
0.013
—
0.019
268/310
http://www.essemi.com
HR8P506 数据手册
6. 5 SOP 28-pin封装外观尺寸图
E1
E
L
c
θ
b
A
A2
D
标号
A1
e
公制(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.4
版权所有©上海东软载波微电子有限公司
269/310
http://www.essemi.com
HR8P506 数据手册
附录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
ORRS
{Rd,}Rn,Rm
按位逻辑或,Rd = Rn|Rm
N,Z
V1.4
版权所有©上海东软载波微电子有限公司
270/310
http://www.essemi.com
HR8P506 数据手册
助记符
操作数
描述
影响标志位
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
-
空操作
-
注:指令 CPSID 和 CPSIE,分别用于禁止和允许中断请求,指令操作码相同,只是操作数不同,实际为一条指令。
V1.4
版权所有©上海东软载波微电子有限公司
271/310
http://www.essemi.com
HR8P506 数据手册
附录1. 2
Cortex-M0 内核寄存器
Cortex-M0 内核寄存器如下图所示:
附录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.4
版权所有©上海东软载波微电子有限公司
272/310
http://www.essemi.com
HR8P506 数据手册
压栈保护操作
退栈恢复操作
PUSH
POP
寄存器当前值
寄存器的值被恢复
数据处理
(寄存器的值被破坏)
SP
堆栈存储器
堆栈存储器
附录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 个子状态寄存器。寄存器名称 IAPSR 表示同时访问 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
Reserved
Exception Number
Reserved
EPSR
Reserved
T
Reserved
应用程序状态寄存器 APSR 中的各个状态位,用于说明指令执行结果,各状态位描述如下:
V1.4
版权所有©上海东软载波微电子有限公司
273/310
http://www.essemi.com
HR8P506 数据手册
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,且只读,不可写;处
V1.4
版权所有©上海东软载波微电子有限公司
274/310
http://www.essemi.com
HR8P506 数据手册
理器硬件电路会在异常/中断处理程序入口和返回时,对 SPSEL 位进行更新,确保进入异
常/中断处理程序后,使用 MSP 作为堆栈指针,并在返回时恢复线程模式下的选择。在线
程模式下,可配置 SPSEL,选择当前使用的堆栈指针。
通过 MRS/MSR 指令可访问两个的堆栈指针。在修改 SPSEL 位的指令后,需立即执行 ISB
(指令同步隔离)指令,确保在 SPSEL 位修改完成,新的堆栈指针生效后,才会执行后
续其它指令。
V1.4
版权所有©上海东软载波微电子有限公司
275/310
http://www.essemi.com
HR8P506 数据手册
附录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
工作温度
VDD 电压
备注
2.2~5.5V
正向参考电压为 VDD 或内部
VREFP 1.8V
2.8~5.5V
正向参考电压为内部 VREFP
2.6V
2.2~5.5V
-
-40 ~ 85℃
-40 ~ 85℃
V1.4
版权所有©上海东软载波微电子有限公司
276/310
http://www.essemi.com
HR8P506 数据手册
附录2. 1. 2 芯片特性参数测量方法
芯片功耗参数测量方法
VDD
A
VDD
+
V
-
HR8P506
VSS
DC电源
芯片功耗测量连接示意图
芯片 IO 端口参数测量方法
I
+
A
I
IO端口(输出低电平)
-
-
A
+
+
V
DC电源
IO端口(输出高电平)
+
-
V
DC电源
HR8P506
-
测量VOL/IOL
HR8P506
测量VOH/IOH
芯片 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
不使能,所有 I/O 端口输
出固定电平,无负载。
芯片静态电流
深度睡眠模式
下芯片电流
IDD
IPD1
-
-
300
5
-
-
工作条件
IPD2
-
1.2
-
mA
25℃,VDD = 5V, BOR
使能,WDT 不使能,RTC
不使能,所有 I/O 端口输
出固定电平,无负载;系
统主时钟为内部 16MHz
RC 时钟。
IPD3
-
1.4
-
mA
25℃,VDD = 5V, BOR
使能,WDT 不使能,RTC
不使能,所有 I/O 端口输
浅睡眠模式下
芯片电流
V1.4
版权所有©上海东软载波微电子有限公司
277/310
http://www.essemi.com
HR8P506 数据手册
参数
符号
最小值
典型值
最大值
单位
工作条件
出固定电平,无负载;系
统主时钟为外部 16MHz
HS 时钟。
IOP1
-
3.5
-
mA
25℃,VDD = 5V,BOR
使能,WDT 使能,外设模
块均工作,所有 I/O 端口
输出固定电平,无负载,
7816 通讯时钟管脚,作为
普通 I/O,无时钟输出,
ADC 使用内部 VREFP 作
为参考电压;系统主时钟
为内部 16MHz RC 时钟。
mA
25℃,VDD = 5V,BOR
使能,WDT 使能,外设模
块均工作,所有 I/O 端口
输出固定电平,无负载,
7816 通讯时钟管脚,作为
普通 I/O,无时钟输出,
ADC 使用内部 VREFP 作
为参考电压;系统主时钟
为外部 16MHz HS 时钟。
正常运行模式
芯片电流
IOP2
-
4.3
-
芯片功能模块功耗特性参数表
参数
符号
最小值
典型值
最大值
单位
工作条件
外部振荡器 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
μA
25℃,VDD = 5V,ADC 转
换时钟频率为 500KHz,内
部 VREFP 作为正向参考电
压
μA
25℃,VDD = 5V,ADC 转
换时钟频率为 500KHz,
VDD 作为正向参考电压
IADC1
-
850
-
ADC 模块电流
IADC2
-
V1.4
版权所有©上海东软载波微电子有限公司
350
-
278/310
http://www.essemi.com
HR8P506 数据手册
参数
VREFP 模块电流
LCDC 模块电流
符号
最小值
典型值
最大值
单位
IVREFP
-
500
-
μA
25℃,VDD = 5V
μA
25℃,VDD = 5V,1/4 偏
置,帧频率 64Hz,内部偏
压电阻为 60K 与 900K 欧姆
自动切换,60K 欧姆电阻保
持时间为 1/4COM 周期,
无外接 LCD 屏
ILCDC
-
25
-
工作条件
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
V1.4
版权所有©上海东软载波微电子有限公司
279/310
http://www.essemi.com
HR8P506 数据手册
附录2. 1. 4 芯片IO端口特性
芯片输入端口特性表
芯片工作温度范围:-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.4
版权所有©上海东软载波微电子有限公司
40
-
-
280/310
http://www.essemi.com
HR8P506 数据手册
附录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 或 2’b10,使用内部 VREFP 作为正向参考电压)
48M
32M
16M
4M
FPCLK
不推荐使用
不推荐使用
不推荐使用
不推荐使用
FPCLK /2
不推荐使用
不推荐使用
不推荐使用
不推荐使用
FPCLK /4
不推荐使用
不推荐使用
不推荐使用
TADCLK = 1us
FPCLK /8
不推荐使用
不推荐使用
不推荐使用
TADCLK = 2us
FPCLK /16
不推荐使用
不推荐使用
TADCLK = 1us
TADCLK = 4us
V1.4
版权所有©上海东软载波微电子有限公司
281/310
http://www.essemi.com
HR8P506 数据手册
系统时钟工作频率(Hz)
(VREFP=2’b01 或 2’b10,使用内部 VREFP 作为正向参考电压)
A/D 时钟源
选择
48M
32M
16M
4M
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 或 2’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 时钟频率
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
-
800
-
us
见备注
FHRC
THRC
FLRC
TLRC
测试条件
注:THRC 和 TLRC 均为设计规格,未经过实际芯片测试;设计条件为-40℃~85℃。
V1.4
版权所有©上海东软载波微电子有限公司
282/310
http://www.essemi.com
HR8P506 数据手册
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
1000
-
4.0
-
V
1001
-
4.6
-
V
1010
-
2.3
-
V
LVD 电压检测迟滞窗口
-
40
-
mV
LVD_VS
VDD 下降,
LVDO 低电压
状态标志置 1
V1.4
版权所有©上海东软载波微电子有限公司
测试条件
-40~85℃
-40~85℃
283/310
http://www.essemi.com
HR8P506 数据手册
附录2. 2
参数特性图
本节中所列图示均为抽样测试,仅作为设计参考之用。其中部分图示中所列的数据已超出指
定的操作范围,此类信息也仅供参考,芯片只保证在指定的范围内正常工作。
附录2. 2. 1 芯片功耗特性
芯片深度睡眠模式电流随电压-温度变化特性图(WDT,BOR 使能,RTC 不使能,所有
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 不使能,所有 I/O
端口输出固定电平,无负载;系统主时钟为内部 HRC 16MHz 时钟)
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)
V1.4
版权所有©上海东软载波微电子有限公司
284/310
http://www.essemi.com
HR8P506 数据手册
芯片运行模式电流随电压-温度变化特性图(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℃)
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)
注:系统时钟为 PLL 48MHz 时,PLL 的输入时钟源为内部 HRC 时钟。
V1.4
版权所有©上海东软载波微电子有限公司
285/310
http://www.essemi.com
HR8P506 数据手册
附录2. 2. 2 芯片IO端口输入特性
I/O 端口信号输入特性图(室温 25℃)
Vi(V)
IO端口输入施密特窗口特性
4.0
3.5
3.0
2.5
2.0
1.5
1.0
0.5
0.0
输入高电平
施密特窗口
VIHth
VILth
输入低电平
2.5
3.5
5.0
5.5
VDD(V)
注 1:VIHth 为施密特窗口的上阈值电平,大于该阈值的输入电平为高;
注 2:VILth 为施密特窗口的下阈值电平,小于该阈值的输入电平为低;
注 3:VIHth 和 VILth 之间为施密特窗口,在窗口内的输入电平不确定,可能为高或低。
I/O 端口最大输入低电平随电压-温度变化特性图
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)
V1.4
版权所有©上海东软载波微电子有限公司
286/310
http://www.essemi.com
HR8P506 数据手册
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 端口弱下拉电阻随电压-温度变化特性图
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)
V1.4
版权所有©上海东软载波微电子有限公司
287/310
http://www.essemi.com
HR8P506 数据手册
VOL vs IOL@VDD=2.5V(普通驱动端口)
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(普通驱动端口)
VDD=3.5V
-40℃
25℃
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)
V1.4
版权所有©上海东软载波微电子有限公司
288/310
http://www.essemi.com
HR8P506 数据手册
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(普通驱动端口)
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)
V1.4
版权所有©上海东软载波微电子有限公司
289/310
http://www.essemi.com
HR8P506 数据手册
VOL vs IOL@VDD=5.5V(普通驱动端口)
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
2.0
2.5
VOH(V)
VOL vs IOL@VDD=2.5V(大电流驱动端口)
VDD=2.5V
-40℃
25℃
85℃
14
12
IOL(mA)
10
8
6
4
2
0
0.0
0.5
1.0
1.5
VOL(V)
V1.4
版权所有©上海东软载波微电子有限公司
290/310
http://www.essemi.com
HR8P506 数据手册
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(大电流驱动端口)
VDD=3.5V
25℃
-40℃
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)
V1.4
版权所有©上海东软载波微电子有限公司
291/310
http://www.essemi.com
HR8P506 数据手册
VOL vs IOL@VDD=5.0V(大电流驱动端口)
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(大电流驱动端口)
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)
V1.4
版权所有©上海东软载波微电子有限公司
292/310
http://www.essemi.com
HR8P506 数据手册
附录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(普通驱动端口)
VDD=2.5V
-40℃
25℃
85℃
1.5
2.0
12
IOL(mA)
10
8
6
4
2
0
0.0
0.5
1.0
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)
V1.4
版权所有©上海东软载波微电子有限公司
293/310
http://www.essemi.com
HR8P506 数据手册
VOL vs IOL@VDD=3.5V(普通驱动端口)
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(普通驱动端口)
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)
V1.4
版权所有©上海东软载波微电子有限公司
294/310
http://www.essemi.com
HR8P506 数据手册
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
5.0
6.0
VOH(V)
VOL vs IOL@VDD=5.5V(普通驱动端口)
VDD=5.5V
-40℃
25℃
85℃
60
IOL(mA)
50
40
30
20
10
0
0.0
1.0
2.0
3.0
4.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)
V1.4
版权所有©上海东软载波微电子有限公司
295/310
http://www.essemi.com
HR8P506 数据手册
VOL vs IOL@VDD=2.5V(大电流驱动端口)
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(大电流驱动端口)
VDD=3.5V
-40℃
25℃
85℃
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)
V1.4
版权所有©上海东软载波微电子有限公司
296/310
http://www.essemi.com
HR8P506 数据手册
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(大电流驱动端口)
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℃
85℃
25℃
70
60
IOH(mA)
50
40
30
20
10
0
0
1
2
3
4
5
6
VOH(V)
V1.4
版权所有©上海东软载波微电子有限公司
297/310
http://www.essemi.com
HR8P506 数据手册
VOL vs IOL@VDD=5.5V(大电流驱动端口)
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.4
版权所有©上海东软载波微电子有限公司
298/310
http://www.essemi.com
HR8P506 数据手册
附录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.4
版权所有©上海东软载波微电子有限公司
299/310
http://www.essemi.com
HR8P506 数据手册
附录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
调试口;若 DEBUG_S 控制位为 1,选择 PA0/PA1 调试口。
V1.4
版权所有©上海东软载波微电子有限公司
300/310
http://www.essemi.com
HR8P506 数据手册
附录3. 3. 2 SWD特性
SWD 调试功能可分为侵入式调试和非侵入式调试两部分。
侵入式调试
停机
单步执行
硬件断点(支持 4 个硬件断点)
软件断点(支持 BKPT 指令)
修改程序指针 PC 值
数据观察点 DWT
(Data Watchpoint and Trace,只支持 Watchpoint 功能,不支持 Trace 功能)
内部寄存器和 RAM 存储器的读写访问操作
矢量捕捉(包括 Reset 和 HardFault 异常的捕捉)
非侵入式调试
程序指针 PC 值采样
V1.4
版权所有©上海东软载波微电子有限公司
301/310
http://www.essemi.com
HR8P506 数据手册
附录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 型波形图
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.4
版权所有©上海东软载波微电子有限公司
302/310
http://www.essemi.com
HR8P506 数据手册
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.4
版权所有©上海东软载波微电子有限公司
303/310
http://www.essemi.com
HR8P506 数据手册
1/3 复用、1/3 偏置驱动时的 A 型波形图
vlcd3
vlcd2
com0
vlcd1
vss
vlcd3
com1
vlcd2
vlcd1
vss
vlcd3
vlcd2
com2
vlcd1
vss
vlcd3
seg0
vlcd2
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.4
版权所有©上海东软载波微电子有限公司
304/310
http://www.essemi.com
HR8P506 数据手册
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.4
版权所有©上海东软载波微电子有限公司
305/310
http://www.essemi.com
HR8P506 数据手册
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.4
版权所有©上海东软载波微电子有限公司
306/310
http://www.essemi.com
HR8P506 数据手册
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.4
版权所有©上海东软载波微电子有限公司
307/310
http://www.essemi.com
HR8P506 数据手册
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.4
版权所有©上海东软载波微电子有限公司
308/310
http://www.essemi.com
HR8P506 数据手册
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.4
版权所有©上海东软载波微电子有限公司
309/310
http://www.essemi.com
HR8P506 数据手册
1/8 复用、1/4 偏置驱动时的 B 型波形图
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.4
版权所有©上海东软载波微电子有限公司
310/310
http://www.essemi.com