CSU8RP1382D [CHIPSEA]
8 RISC MCU;型号: | CSU8RP1382D |
厂家: | Core Technology (Shenzhen) Co., Ltd. |
描述: | 8 RISC MCU |
文件: | 总107页 (文件大小:3194K) |
中文: | 中文翻译 | 下载: | 下载PDF数据表文档文件 |
CSU8RP1382D 系列芯片用户手册
基于 OTP 的带 ADC 的 8 位 RISC MCU
REV1.1
通讯地址:深圳市南山区蛇口南海大道 1079号花园城数码大厦 A座 9楼
邮政编码:518067
公司电话:+(86 755)86169257
传
真:+(86 755)86169057
公司网站:www.chipsea.com
微 信 号:芯海科技
微信二维码:
REV1.1
第 1 页,共 107 页
版本历史
版本
V0.1
V1.0
V1.1
记录
时间
2014/3/31
2015/8/7
2015/10/8
起草
正式版本
增加了 3.13 METCH 特性
REV1.1
第 2 页,共 107 页
目 录
版本历史................................................................................................................................................................... 2
目 录........................................................................................................................................................................ 3
1
产品概述........................................................................................................................................................... 5
1.1
1.2
1.3
功能描述 ................................................................................................................................................... 5
主要特性 ................................................................................................................................................... 5
PIN 配置.................................................................................................................................................... 6
2
标准功能........................................................................................................................................................... 8
2.1
CPU 核....................................................................................................................................................... 8
存储器 ............................................................................................................................................. 10
状态寄存器 ..................................................................................................................................... 13
中断寄存器 ..................................................................................................................................... 14
SFR .......................................................................................................................................................... 16
时钟系统 ................................................................................................................................................. 18
石英/陶瓷振荡器 ............................................................................................................................ 20
CPU 指令周期................................................................................................................................. 21
ADC 时钟........................................................................................................................................ 22
蜂鸣器时钟 ..................................................................................................................................... 23
LCDCLK ......................................................................................................................................... 24
复位系统 ................................................................................................................................................. 25
中断 ......................................................................................................................................................... 27
定时器 0 .................................................................................................................................................. 29
I/O PORT................................................................................................................................................. 31
2.1.1
2.1.2
2.1.3
2.2
2.3
2.3.1
2.3.2
2.3.3
2.3.4
2.3.5
2.4
2.5
2.6
2.7
3
增强功能......................................................................................................................................................... 35
3.1
HALT 和 SLEEP 模式................................................................................................................................ 35
Halt 模式.......................................................................................................................................... 36
Sleep 模式........................................................................................................................................ 37
看门狗(WDT).......................................................................................................................................... 38
定时/计数器 1 ......................................................................................................................................... 40
PWM1.............................................................................................................................................. 42
定时/计数器 4 ......................................................................................................................................... 43
PWM4.............................................................................................................................................. 45
定时/计数器 5 ......................................................................................................................................... 46
PWM5.............................................................................................................................................. 48
串行通信接口 ......................................................................................................................................... 49
工作方式 ......................................................................................................................................... 49
多机通信 ......................................................................................................................................... 56
寄存器说明 ..................................................................................................................................... 57
波特率 ............................................................................................................................................. 58
电源系统 ................................................................................................................................................. 59
Regulator.......................................................................................................................................... 59
低电压比较器 ................................................................................................................................. 60
Charge pump.................................................................................................................................... 61
SD 模数转换器(SD ADC)................................................................................................................. 62
SD ADC 寄存器说明...................................................................................................................... 63
ADC 操作说明................................................................................................................................ 66
3.1.1
3.1.2
3.2
3.3
3.3.1
3.4
3.4.1
3.5
3.5.1
3.6
3.6.1
3.6.2
3.6.3
3.6.4
3.7
3.7.1
3.7.2
3.7.3
3.8
3.8.1
3.8.2
REV1.1
第 3 页,共 107 页
3.9
LCD DRIVER............................................................................................................................................ 67
LCD 控制模式................................................................................................................................. 67
LCD 帧频选择................................................................................................................................. 68
LCD 偏置电压................................................................................................................................. 69
LCD 驱动波形................................................................................................................................. 71
LCD 寄存器说明............................................................................................................................. 79
LCD 的操作步骤............................................................................................................................. 82
数据查表 ............................................................................................................................................. 83
烧录模块 ............................................................................................................................................. 84
代码选项 ............................................................................................................................................. 85
3.9.1
3.9.2
3.9.3
3.9.4
3.9.5
3.9.6
3.10
3.11
3.12
4
5
MCU 指令集................................................................................................................................................... 86
电气特性....................................................................................................................................................... 101
5.1
5.2
5.3
极限值 ................................................................................................................................................... 101
直流特性 ............................................................................................................................................... 101
ADC 的特性.......................................................................................................................................... 104
6
7
PAD 坐标...................................................................................................................................................... 105
产品命名规则............................................................................................................................................... 107
7.1
产品型号说明 ....................................................................................................................................... 107
REV1.1
第 4 页,共 107 页
1
产品概述
1.1 功能描述
CSU8RP1382D 是一个带 24bitADC 的 8 位 RISC MCU,内置 8K×16 位 OTP 程序存储器。
1.2 主要特性
高性能的 RISC CPU
专用微控制器的特性
8 位单片机 MCU
上电复位(POR)
内置 4K×16 位程序存储器 OTP
384 字节数据存储器(SRAM)
只有 43 条单字指令
上电复位和硬件复位延迟定时器(39ms)
内带低电压复位(LVR)
定时器 0
— 8 位可编程预分频的 8 位的定时器
定时/计数器 1
— 8 位可编程预分频的 8 位的定时器
定时/计数器 4
— 8 位可编程预分频的 16 位的定时器
定时/计数器 5
8 级存储堆栈
最快指令周期 2MHz
振荡器
内带 8MHz 振荡器,精度为±2%
外部 32768Hz 晶振(RTC)、4MHz~16MHz 晶
振
— 8 位可编程预分频的 16 位的定时器
扩展型看门狗定时器(32K WDT)
— 可编程的时间范围
外设特性
16 位双向 I/O 口
CMOS 技术
4 路蜂鸣器输出
电压工作范围
— DVDD 2.4V~3.6V
— AVDD 2.4V~3.6V
3 路 PWM 输出
7 个内部中断,2 个外部中断
5 个具有唤醒功能的输入口
4×32/6×30 的 LCD 驱动
2 路 24bit Sigma-Delta 型 ADC
内置 1/2/4/8/64/128/256/512 倍 PGA
内置温度传感器
低功耗特性
MCU 工作电流
— 正常模式 1mA@4MHz(工作电压 3V)
— 正常模式 10uA@32KHz(工作电压 3V)
— 休眠模式下的电流小于 1.5μA
低电压检测(LVD)引脚
1 路 UART
封装
68pin die
REV1.1
第 5 页,共 107 页
1.3 PIN 配置
37
SEG2/COM6
1
SEG20
2
3
4
SEG1/COM5
COM4
COM3
5
6
COM2
COM1
AGND
AVDD
7
8
9
VS
CSU8RP1382D
REFP
10
AIN0
AIN1
AIN2
AIN3
REFN
11
12
13
14
15
36
35
34
33
VLCD/VPP
PT2.7/BZ
PT2.6/RX
DGND
图 1-1 68pin die
REV1.1
第 6 页,共 107 页
表 1-1 管脚说明
管脚序 描述
管脚名称
输入/输
出
O
号
1
COM6/SEG2
COM5/SEG1
COM4~1
LCD Com 输出/ Segment 输出
LCD Com 输出/ Segment 输出
LCD Com 输出
O
2
O
3~6
7
AGND
P
模拟地
AVDD
P
8
模拟电源
VS
O
9
3V 稳压输出
参考电压输入
REFP
I
10
11~14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37~54
AIN0~3
REFN
I
I
模拟差分输入端
参考电压负端输入
ERC 输入
ERC
I
XINL/PT1.0
XOUTL/PT1.1
XINH/PT1.2
XOUTH/PT1.3
PT1.4/AIN4
PT1.5/PWM1/SDCLK
PT1.6/PWM4/SDDATA
PT1.7/PWM5
DVDD
I/O
I/O
I/O
I/O
I/O
I/O
I/O
I/O
P
低速晶振输入或者 I/O
低速晶振输出或者 I/O
高速晶振输入或者 I/O
高速晶振输出或者 I/O
I/O 或者低电压检测输入端
I/O 或 PWM1 输出或者测试模式下 pdm clk 输出
I/O 或 PWM4 输出或者测试模式下 pdm 输出
I/O 或 PWM5 输出
数字电源
DGND
P
数字地
PT2.0/INT0/T1
PT2.1/INT1/T4
PT2.2/INT1/T5
PT2.3/INT1
PT2.4/INT1
PT2.5/ TX
DGND
I/O
I/O
I/O
I/O
I/O
I/O
P
I/O/或外部中断 0 或计数器 1
I/O/或外部中断 1 或计数器 4
I/O/或外部中断 1 或计数器 5
I/O/或外部中断 1
I/O/或外部中断 1
I/O/或串口输出
数字地
PT2.6/ RX
PT2.7/BZ
I/O
I/O
O/P
O
I/O 或串口输入
I/O 或者蜂鸣器输出
LCD 电压源/VPP
LCD Segment 输出
VLCD/VPP
SEG20~SEG3
REV1.1
第 7 页,共 107 页
2 标准功能
2.1 CPU 核
Program Bus
(13 bits)
OTP
Program
Counter
SRAM
Data memory
384 bytes
Program Memory
8K*16bits
Program Data
(16 bits)
Adderss
Mux
Stack Register
8 Level
Instruction
Register
Data
Mux
FSR
Instruction
Decoder
Work
Register
Contorl information
ALU
Status
Register
图 2-1 CSU8RP1382 CPU 核的功能模块图
从 CPU 核的功能模块图中,可以看到它主要包含 7 个主要寄存器及 2 个存储器单元。
REV1.1
第 8 页,共 107 页
表 2-1 MCU 架构说明
模块名称
描述
程序计数器
此寄存器在 CPU 的工作周期间起到很重要的作用,它记录 CPU 每个周期处理程序
存储器中指令的指针。在一个 CPU 周期中,程序计数器将程序存储器地址
(13bits),指令指针推送到程序存储器,然后自动加 1 以进行下一次周期。
堆栈寄存器是用来记录程序返回的指令指针。当程序调用函数,程序计数器会将指
令指针推送到堆栈寄存器。在函数执行结束之后,堆栈寄存器会将指令指针送回到
程序计数器以继续原来的程序处理。
栈寄存器
指令寄存器
程序计数器将指令指针(程序存储器地址)推送到程序存储器,程序存储器将程序
存储器的数据(16bits)及指令推送到指令寄存器 。
CSU8RP1382 的指令是 16bits,包括 3 种信息:直接地址,立即数及控制信
息。
CPU 能将立即数推送到工作寄存器,或者进行某些处理后,根据控制信息,将
立即数存储到直接地址所指向的数据存储器寄存器中。
直接地址(9bits)
数据存储器的地址。CPU 能利用此地址来对数据存储器进行操作。
立即数(8bits)
CPU 通过 ALU 利用此数据对工作寄存器进行操作。
控制信息
它记录着 ALU 的操作信息。
指令译码器
指令寄存器将控制信息推送到指令译码器以进行译码,然后译码器将译码后的信息
发送到相关的寄存器。
算术逻辑单元
算术逻辑单元不仅能完成 8 位二进制的加,减,加 1,减 1 等算术计算,还能对 8
位变量进行逻辑的与,或,异或,循环移位,求补,清零等逻辑运算。
工作寄存器是用来缓存数据存储器中某些存储地址的数据。
当 CPU 利用 ALU 处理寄存器数据时,如下的状态会随着如下顺序变化:PD,
TO,DC,C 及 Z。
工作寄存器
状态寄存器
文件选择寄存器
程序存储器
在 CSU8RP1382 的指令集中,FSR 是用于间接数据处理(即实现间接寻址)。用户
可以利用 FSR 来存放数据存储器中的某个寄存器地址,然后通过 IND 寄存器对这
个寄存器进行处理。
CSU8RP1382 内带 8K×16 位的 OTP 作为程序存储器。由于指令的操作码
(OPCODE)是 16bits,用户最多只能编程 8K 的指令。程序存储器的地址总线是
13bits,数据总线是 16bits。
数据存储器
CSU8RP1382 内带 384 bytes 的 SRAM 作为数据存储器。此数据存储器的地址总线
是 9bits,数据总线是 8bits。
REV1.1
第 9 页,共 107 页
2.1.1存储器
(1)程序存储器
程序存储器主要用于指令的存储,在 CSU8RP1382 中,该程序存储器是 8K*16bit 的程序 OTP,对于
程序员来说,该存储器只读,不可以写入。系统的 reset 地址为 0x0000,中断入口地址为 0x0004,需要注
意的一点就是所有的中断共用同一个中断入口地址。
0000H
0004H
Reset Vector
Program Counter
Interrupt Vector
Stack Level1
Stack Level2
Stack Level3
Stack Level4
Stack Level5
Stack Level6
Stack Level7
Stack Level8
1FFFH
图 2-2 程序存储器
REV1.1
第 10 页,共 107 页
(2)数据存储器
数据存储器主要用于程序运行过程中,全局以及中间变量的存储。该存储器分为三个部分。地址的
0x000 至 0x008 是系统特殊功能寄存器,例如间接地址,间接地址指针,状态寄存器,工作寄存器,中断
标志位,中断控制寄存器。地址的 0x009 至 0x07F 外设特殊功能寄存器,例如 IO 端口,定时器,系统特
殊功能寄存器和外设特殊功能寄存器是用寄存器实现,而通用数据存储器是 RAM 实现,可以读出也可以
写入。
000H
008H
009H
SFR
07FH
080H
SRAM
1FFH
图 2-3 数据存储器
表 2-2 数据存储器地址分配
数据存储器
起始地址
000H
009H
结束地址
008H
07FH
系统特殊功能寄存器
外设特殊功能寄存器
通用数据存储器
080H
1FFH
REV1.1
第 11 页,共 107 页
Bank 选择寄存器(地址为 008H)
R/W-0
IRP0
Bit7
R/W-0
IRP1
Bit6
U-0
U-0
U-0
U-0
R/W-0
Bit1
R/W-0
Bit0
特性
BSR
Bit5
Bit4
Bit3
Bit2
Bit 7 IRP0:IND0间接页寻址位
1 = 间接寻址IND0时,访问后256byte地址
0 = 间接寻址IND0时,访问前256byte地址
Bit 6 IRP1:IND1间接页寻址位
1 = 间接寻址IND1时,访问后256byte地址
0 = 间接寻址IND1时,访问前256byte地址
通过 IND0 以及 FSR0 这两个寄存器可以对数据存储器以及特殊功能寄存器进行间接访问。当从间接
地址寄存器(IND0)读入数据时,MCU 实际上是以 FSR0 中的值作为地址去访问数据存储器得到数据。当
向间接寄存器(IND0)写入数据时,MCU 实际上是以 FSR0 中的值作为地址去访问数据存储器将值存入该
地址。其访问方式见图 2-4 间接地址访问。
Data Memory
512 Bytes
IRP0
FSR0
000H
080H
IND0
97H
0
80H
97H
1FFH
图 2-4 间接地址访问
REV1.1
第 12 页,共 107 页
2.1.2状态寄存器
状态寄存器包含 ALU 的算术状态及复位状态。状态寄存器类似于其它寄存器,可以作为任何指令的
目标寄存器。如果状态寄存器是某条指令的目标寄存器,而且影响到 Z,DC 或 C 位,那么对这三个位的
写是不使能。这些位是由器件逻辑进行置位或清零。TO 及 PD 位是不可写的。
状态寄存器(地址为 004H)
U-0
U-0
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
特性
STATUS
PD
TO
DC
C
Z
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
Bit 4 PD:掉电标志位。通过对此位写 0 清零,sleep 后置此位
1 = 执行 SLEEP 指令后
0 = 上电复位后或硬件复位或 CLRWDT 指令之后
Bit 3 TO:看门狗定时溢出标志。通过对此位写 0 清零,看门狗定时溢出设置此位
1 = 看门狗定时溢出发生
0 = 上电复位后或硬件复位或 CLRWDT 指令后或 SLEEP 指令后
Bit 2 DC:半字节进位标志/借位标志,用于 ADDWF(C)及 SUBWF(C)
用于借位时,极性相反
1 = 结果的第 4 位出现进位溢出
0 = 结果的第 4 位不出现进位溢出
Bit 1 C: 进位标志/借位标志
用于借位时,极性相反
1 = 结果的最高位(MSB)出现进位溢出
0 = 结果的最高位(MSB)不出现进位溢出
Bit 0 Z:零标志
1 = 算术或逻辑操作是结果为 0
0 = 算术或逻辑操作是结果不为 0
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值 ‘1’ = 位已设置
‘0’= 位已清零
X = 不确定位
REV1.1
第 13 页,共 107 页
2.1.3中断寄存器
中断系统的入口地址为 0x004,各个中断之间没有优先级,靠程序控制各个中断的优先级。中断事件
触发时,就会产生相应的中断标志位,只有相应中断使能位(同时打开全局中断使能位)打开,才会有
中断响应,响应中断之后需要软件将中断标志位清除,否则会不断响应中断。
INTE 及 INTF 寄存器是可读、可写的,包括使能位及标志位,用于中断器件。
INTE 寄存器(地址为 007H)
R/W-0
GIE
Bit7
R/W-0
R/W-0
TM1IE
Bit5
R/W-0
TM0IE
Bit4
U-0
R/W-0
ADIE
Bit2
R/W-0
E1IE
Bit1
R/W-0
E0IE
Bit0
特性
INTE
Bit6
Bit3
Bit 7 GIE:全局中断使能标志
1 = 使能所有非屏蔽中断
0 = 不使能所有中断
Bit 5 TM1IE:8-Bit 定时器 1 中断使能标志
1 = 使能定时器 4 中断
0 = 不使能定时器 4 中断
Bit 4 TM0IE:8-Bit 定时器 0 中断使能标志
1 = 使能定时器 0 中断
0 = 不使能定时器 0 中断
Bit 2 ADIE:Sigma Delta AD 中断使能标志
1 = 使能 Sigma Delta AD 中断
0 = 不使能 Sigma Delta AD 中断
Bit 1 E1IE:外部中断 1 使能标志
1 =使能外部中断 1
0 = 不使能外部中断 1
Bit 0 E0IE:外部中断 0 使能标志
1 = 使能外部中断 0
0 = 不使能外部中断 0
INTF 寄存器(地址为 006H)
U-0
U-0
R/W-0
R/W-0
U-0
R/W-0
R/W-0
R/W-0
特性
INTF
TM1IF
Bit5
TM0IF
Bit4
ADIF
Bit2
E1IF
Bit1
E0IF
Bit0
Bit7
Bit6
Bit3
Bit 5
Bit 4
TM1IF:8-Bit 定时器 1 中断标志,软件清零,硬件置高
1 = 发生定时中断,必须软件清 0
0 = 没发生定时中断
TM0IF:8-Bit 定时器 0 中断标志,软件清零,硬件置高
1 = 发生定时中断,必须软件清 0
0 = 没发生定时中断
Bit 2 ADIF:Sigma Delta AD 中断中断标志,软件清零,硬件置高
1 = 发生 Sigma Delta AD 中断,必须软件清 0
0 = 没发生 Sigma Delta AD 中断
Bit 1 E1IF:外部中断 1 中断标志,软件清零,硬件置高
1 =外部中断 1 发生中断,必须软件清 0
0 =外部中断 1 没发生中断
Bit 0 E0IF:外部中断 0 中断标志,软件清零,硬件置高
1 = 外部中断 0 发生中断,必须软件清 0
0 =外部中断 0 没发生中断
特性(Property):
R = 可读位
-n = 上电复位后的值 ‘1’ = 位已设置
W = 可写位
U = 无效位
‘0’= 位已清零
X = 不确定位
INTF2 寄存器(地址为 03EH)
U-0
R/W-0
TM5IF
Bit6
R/W-0
TM4IF
Bit5
U-0
U-0
U-0
R/W-0
URTIF
Bit1
R/W-0
URRIF
Bit0
特性
INTF2
Bit7
Bit4
Bit3
Bit2
Bit 6
Bit 5
TM5IF:16-Bit 定时器 5 中断标志,软件清零,硬件置高
1 = 发生定时中断,必须软件清 0
0 = 没发生定时中断
TM4IF:16-Bit 定时器 4 中断标志,软件清零,硬件置高
1 = 发生定时中断,必须软件清 0
0 = 没发生定时中断
Bit 1 URTIF:串口通信发送中断标志
1 = 发生串口发送中断,必须软件清 0
0 = 没有发生串口发送中断
Bit 0 URRIF:串口通信接收中断标志
1 = 发生串口接收中断,必须软件清 0
0 = 没有发生串口接收中断
INTE2 寄存器(地址为 03FH)
U-0
R/W-0
TM5IE
Bit6
R/W-0
TM4IE
Bit5
U-0
U-0
U-0
R/W-0
URTIE
Bit1
R/W-0
URRIE
Bit0
特性
INTE2
Bit7
Bit4
Bit3
Bit2
Bit 6 TM5IE:16-Bit 定时器 5 中断使能标志
1 = 使能定时器 4 中断
0 = 不使能定时器 4 中断
Bit 5 TM4IE:16-Bit 定时器 4 中断使能标志
1 = 使能定时器 0 中断
0 = 不使能定时器 0 中断
Bit 1 URTIE:串口通信发送中断使能标志
1 = 使能串口通信发送中断
0 = 不使能串口通信发送中断
Bit 0 URRIE:串口通信接收中断使能标志
1 = 使能串口通信接收中断
0 = 不使能串口通信接收中断
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值 ‘1’ = 位已设置
‘0’= 位已清零
X = 不确定位
REV1.1
第 15 页,共 107 页
2.2 SFR
特殊功能寄存器(SFR)包含系统专用寄存器和辅助专用寄存器。
表 2-3 寄存器列表
上电复位
值
地址
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
DC
Bit1
Bit0
IND0
IND1
00H
01H
以 FSR0 中内容作为地址的数据存储器中的数据
以 FSR1 中内容作为地址的数据存储器中的数据
间接数据存储器的地址指针 0
xxxxxxxx
xxxxxxxx
FSR0
FSR1
02H
03H
04H
05H
06H
07H
08H
0AH
0BH
00000000
00000000
uuu00000
00000000
uu00u000
0u00u000
00uuuuuu
u1111111
11111111
0uuuu000
11111111
0000u100
11111111
00000000
00000100
11111111
00000000
00000000
10101100
uuuuu000
00uuxu00
uuu0000x
xxxxxxxx
00000000
00000000
uuuuu000
xxxxxxxx
00000000
00000000
00000000
u00uuu00
u00uuu00
00000000
11111111
11111111
00000000
00000000
00000000
00000000
00000000
11111111
11111111
00000000
00000000
00000000
00000000
01010010
00010100
11011000
000uu000
00000000
00000000
00000000
uuuu0000
uuuu0000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
间接数据存储器的地址指针 1
STATUS
WORK
INTF
INTE
BSR
PD
TO
C
Z
工作寄存器
TM1IF
TM1IE
TM0IF
TM0IE
ADIF
ADIE
E1IF
E1IE
E0IF
E0IE
GIE
IRP0
IRP1
EADRH
EADRL
PAR[14:8]
PAR[7:0]
0DH WDTCON
WDTEN
T0EN
WTS[2:0]
0EH
0FH
10H
11H
12H
13H
14H
15H
16H
17H
18H
19H
20H
21H
22H
23H
24H
25H
26H
27H
3eH
3fH
WDTIN
TM0CON
TM0IN
TM0CNT
TM1CON
TM1IN
TM1CNT
TM1R
MCK
PCK
CHPMP
LVD
PT1
PT1EN
PT1PU
PT1CON
PT2
PT2EN
PT2PU
PT2CON
INTF2
WDTIN[7:0]
T0RATE[2:0]
T1RATE[2:0]
T0RSTB
T1RSTB
T0SEL[1:0]
TM0IN[7:0]
TM0CNT[7:0]
T1EN
T4CKS
T1OUT
PWM1OUT
TM1IN[7:0]
TM1CNT[7:0]
TM1R[7:0]
CST_E1
CST_IN
CST_WDT
EO_SLP
CST_E2
ERV
CLKSEL
BZEN
S_beep[1:0]
CHP_VPP
LVR_EN
SILB[2:0]
ENLB
LBOUT
PT1[7:0]
PT1EN[7:0]
PT1PU[7:0]
AENB[2:0]
PT2[7:0]
PT2EN[7:0]
PT2PU[7:0]
PT2W[4:0]
TM4IF
TM4IE
E1M
E0M[1:0]
TM5IF
TM5IE
URTIF
URTIE
T4OUT
URRIF
URRIE
PWM4OUT
INTE2
40H
41H
42H
TM4CON
TM4INL
TM4INH
T4EN
T5EN
T4RATE[2:0]
T4CKS
T5CKS
T4RSTB
TM4IN[7:0]
TM4IN[15:8]
TM4CNT[7:0]
TM4CNT[15:8]
TM4R[7:0]
43H TM4CNTL
44H TM4CNTH
45H
46H
48H
49H
4AH
TM4RL
TM4RH
TM5CON
TM5INL
TM5INH
TM4R[15:8]
T5RATE[2:0]
T5RSTB
T5OUT
PWM5OUT
TM5IN[7:0]
TM5IN[15:8]
TM5CNT[7:0]
TM5CNT[15:8]
TM5R[7:0]
4BH TM5CNTL
4CH TM5CNTH
4DH
4EH
4FH
50H
51H
52H
53H
54H
55H
56H
57H
58H
59H
5AH
5BH
5CH
5DH
5EH
5FH
60H
61H
62H
63H
64H
65H
66H
67H
68H
TM5RL
TM5RH
NETA
NETC
NETE
ADCON
ADOH
ADOL
ADOLL
LCD1
LCD2
LCD3
LCD4
LCD5
LCD6
LCD7
LCD8
LCD9
LCD10
LCD11
LCD12
LCD13
LCD14
LCD15
LCD16
LCD17
LCD18
LCD19
TM5R[15:8]
Sdfs[7:0]
Sinl[2:0]
Gain[2:0]
BUFEN
ENVS
ADM[2:0]
ADEN
ENVB
Ldos[1:0]
TEMP[1:0]
Sdib[2:0]
ADFEN
ADO [23:16]
ADO[15:8]
ADO[7:0]
LCD1[3:0]
LCD2[3:0]
LCD3[5:0]
LCD4[5:0]
LCD5[5:0]
LCD6[5:0]
LCD7[5:0]
LCD8[5:0]
LCD9[5:0]
LCD10[5:0]
LCD11[5:0]
LCD12[5:0]
LCD13[5:0]
LCD14[5:0]
LCD15[5:0]
LCD16[5:0]
LCD17[5:0]
LCD18[5:0]
LCD19[5:0]
REV1.1
第 16 页,共 107 页
69H
6AH
6BH
6CH
6DH
6EH
6FH
70H
71H
72H
73H
74H
75H
76H
77H
78H
LCD20
LCD21
LCD22
LCD23
LCD24
LCD25
LCD26
LCD27
LCD28
LCD29
LCD30
LCD31
LCD32
LCDCN1
LCDCN2
LCDENR
LCD20[5:0]
LCD21[5:0]
LCD22[5:0]
LCD23[5:0]
LCD24[5:0]
LCD25[5:0]
LCD26[5:0]
LCD27[5:0]
LCD28[5:0]
LCD29[5:0]
LCD30[5:0]
LCD31[5:0]
LCD32[5:0]
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
u0000000
00000000
00000000
0000000
0
LCDFC[1:0]
LCDSCKS[3:0]
WDT_LCD
CSE_LCD
VLCDX[2:0]
LCDREF[1:0]
LCDSP
RB8
LCDCKS[1:0]
SM0 SM1
LCDEN
LCDWS
REN
LEVEL
TB8
LCD_DUTY[1:0]
ENPMPL
79H
SCON1
SCON2
SM2
TCLK
RCLK
0uuuuuu
u
7AH
SMOD
7BH
7CH
SBUF
SIO
00000000
uu0uuuuu
SIO
注:进行读操作时,无效位读出为 0
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值 ‘1’ = 位已设置
‘0’= 位已清零
X = 不确定位
REV1.1
第 17 页,共 107 页
2.3 时钟系统
CLK_SEL
XTALSEL
XIN1
VSS
ECK1
XTAL1
32768Hz
XOUT1
XIN2
VSS
VSS
代码选项
CLKDIV[1:0]
ECK
÷2
MUX
MCK
CPUCLK
MUX
MCK/4~MCK/32
ECK2
XTAL2
4~16MHz
XOUT2
VSS
ICK
内置8MHz
晶振电路
图 2-5 CSU8RP1382 振荡器状态框图
表 2-4 CSU8RP1382 时钟系统寄存器列表
Bit7
Bits6
Bit5
Bits4
Bit3
Bits2
Bit1
Bit0
地址
名称
上电复位值
16H
MCK
CST_E1
CST_IN
CST_WDT
EO_SLP
CST_E2
CLKSEL
101011u0
CSU8RP1382 有三个时钟源。一个是内部集成的时钟, 8MHz 的时钟供 CPU 工作,其余是外部时钟。
可以通过 CLK_SEL 寄存器选择。
对 MCK 寄存器进行写操作时,建议使用 bcf 或 bsf 指令。
REV1.1
第 18 页,共 107 页
表 2-5 MCK 寄存器各位功能表
位地址
标识符
功能
外部晶振 1(32768Hz)启动开关
1:外部晶振 1 关闭
7
CST_E1
0:外部晶振 1 打开
内部晶振启动开关
6
5
CST_IN
1:内部晶振关闭
0:内部晶振打开
内部 WDT 晶振启动开关
1:内部 WDT 晶振关闭
0:内部 WDT 晶振打开
外部低速晶振控制位
CST_WDT
1:如果选择的是外部低速晶振(32768Hz),在 sleep 模式下不关闭
外部晶振
4
3
0
EO_SLP
CST_E2
CLKSEL
0:sleep 模式下关闭外部晶振
外部晶振 2(4~16MHz)启动开关
1:外部晶振 2 关闭
0:外部晶振 2 打开
时钟源选择位
CLK_SEL
CPU 时钟
0
1
内部晶振作为系统时钟
外部晶振作为系统时钟
注意:把 CPU 时钟由内部晶振切换到外部晶振 1,并把内部晶振关闭时应按照以下顺序执行
bcf mck,7
;打开外部晶振 1
delay_300ms ;延时 300ms,外部晶振 1起振时间为 300ms
movlw 01h
movwf mck
nop
bsf mck,6
;切换到外部晶振 1
;关闭内部晶振
把 CPU 时钟由内部晶振切换到外部晶振 2,并把内部晶振关闭时应按照以下顺序执行
bcf mck,3 ;打开外部晶振 2
delay_10ms ;延时 10ms,外部晶振 2起振时间为 10ms
movlw 01h
movwf mck
nop
bsf mck,6
;切换到外部晶振 2
;关闭内部晶振
REV1.1
第 19 页,共 107 页
2.3.1石英/陶瓷振荡器
石英/陶瓷振荡器由 XIN/XOUT 口驱动,对于高速和低速不同工作模式,振荡器的驱动电流也不同。
不同的工作模式下,通过 AENB 寄存器配置晶振端口。
代码选项
AENB[0]
PT1.0
XIN1
VSS
ECK1
XTAL1
32768Hz
XOUT1
VSS
PT1.1
图 2-6 外部振荡器 1
外部晶振电容范围 15P~30P。
代码选项
AENB[1]
PT1.2
XIN2
VSS
VSS
ECK2
XTAL2
4~16MHz
XOUT2
PT1.3
图 2-7 外部振荡器 2
操作:
1 选择 IO 口为模拟口,配置 AENB 寄存器
REV1.1
第 20 页,共 107 页
2.3.2 CPU 指令周期
表 2-6 CSU8RP1382 CPU 指令周期寄存器列表
Bit7
Bits6
Bit5
Bits4
Bit3
Bits2
Bit1
Bit0
地址
名称
上电复位值
16H
MCK
CST_E1
CST_IN
CST_WDT
EO_SLP
CST_E2
CLKSEL
10101100
用户可以通过设置 CLK_SEL 以及代码选项来选择指令周期(CPUCLK)。用户必须保证切换到外部
振荡器时,振荡器的输出是稳定的;一般在切换后加一条 NOP 指令。
表 2-7 指令周期(CPUCLK)选择列表
CLK_SEL XTALSEL
CLKDIV
时钟源(KHz)
指令周期(KHz)
0
0
0
0
1
1
1
1
1
1
1
1
X
X
X
X
0
0
0
0
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
ICK
ICK
ICK
8000
8000
8000
ICK/4
2000
1000
500
ICK/8
ICK/16
ICK/32
ECK/8
ECK/16
ECK/32
ECK/64
ECK/8
ICK
8000
250
ECK
ECK
ECK
ECK
ECK
ECK
ECK
ECK
32.768
32.768
32.768
32.768
8000
8000
8000
8000
4.096
2.048
1.024
0.512
1000
500
1
1
1
ECK/16
ECK/32
ECK/64
250
125
REV1.1
第 21 页,共 107 页
2.3.3 ADC 时钟
ADC 的采样时钟受 ADSC,ADG 共同决定及输出速率由 ADSC,ADG 以及 ADM 三个配置变量共同决
定,详细描述请参考
ADSC,ADG
ADM
MCK
ADC 时钟
分频
ADC
Analog
Comb
ADCF
ADC
datarate
图 2-8 ADC 采样时钟以及输出速率示意图
REV1.1
第 22 页,共 107 页
2.3.4 蜂鸣器时钟
表 2-8 蜂鸣器时钟寄存器列表
地
址
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
上电复位值
CLK_SEL
BZEN
16h MCK
17h PCK
010000u0
uuuuu000
S_BEEP[1:0]
CSU8RP1382 有一个蜂鸣器时钟用于蜂鸣器源。用户通过设置 CLK_SEL 及 S_BEEP 寄存器标志位来
改变蜂鸣时钟,设置如。(ECK 以 32KHz,8MHZ 为例)BZEN
BZEN
S_BEEP[1:0]
PT2.7
时钟分频
÷
MUX
PT2.7
MCK
1024,2048,4096,8192
图 2-9 蜂鸣器时钟选择示意图
表 2-9 蜂鸣器时钟选择列表
S_BEEP
CLK_SEL XTALSEL
BEEP CLOCK(KHz)
时钟源(KHz)
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
ICK
ICK
ICK
8000
8000
8000
8000
32
32
32
32
8000
8000
8000
8000
ICK/1024
8
4
2
1
ICK/2048
ICK/4096
ICK/8192
ECK/8
ECK/16
ECK/8
ICK
ECK
ECK
ECK
ECK
ECK
ECK
ECK
ECK
4.096
2.048
4.096
2.048
8
4
2
1
ECK/16
ECK/1024
ECK/2048
ECK/4096
ECK/8192
REV1.1
第 23 页,共 107 页
2.3.5 LCDCLK
WDT_LCD
CST_LCD
LCDCKS
LCDSCKS
WDTCLK
时钟分频
÷2~32
ECK1
MUX
时钟分频
LCDCK
LCDSCK
LCDCLK
MCK
÷256
图 2-10 LCD 帧频时钟选择
参见 3.9.2LCD 帧频选择
REV1.1
第 24 页,共 107 页
2.4 复位系统
CSU8RP1382 有以下方式复位:
1) 上电复位
2) RST 硬件复位(正常操作)
3) RST 硬件复位(从 Sleep 模式)
4) WDT 复位(正常操作)
5) WDT 复位(从 Sleep 模式)
6) 掉电复位
下表给出了各种复位情况下的 TO,PD 标志位。
表 2-10 复位信号和状态寄存器关系
TO
0
PD
0
条件
上电复位
0
0
RST 硬件复位(正常操作)
0
0
RST 硬件复位(从 Sleep 模式)
WDT 复位(正常操作)
WDT 复位(从 Sleep 模式)
1
1
0
1
在复位时, IO 口为输出低电平。
下图给出了复位电路原理图。
POR
DRT(39ms)
RST
To CPU
WDT Reset
图 2-11 复位电路原理图
当上电复位、 RST 硬件复位与低电压复位发生时,所有的系统寄存器恢复默认状态,程序停止运
行,同时程序计数器 PC 清零。复位结束后,系统从向量 0000H 处重新开始运行。
REV1.1
第 25 页,共 107 页
VPOR
VLVR
VDD
Internal
reset
tWVS
图 2-12 上电复位电路示例及上电过程
参数
最小值
2.0V
1.8V
典型值
2.2V
2.0V
最大值
2.4V
2.2V
VPOR
VLVR
tWVS
31ms
39ms
47ms
VPOR:上电复位
VLVR:低电压复位
WVS:等待电压稳定时间
t
当 watch dog 复位发生时,系统寄存器仍然保持原来的值不变,但是此时 PC 指针复位。复位结束后,系
统从向量 0000H 处重新开始运行。
REV1.1
第 26 页,共 107 页
2.5 中断
CSU8RP1382 有 9 个中断源:
1) 外部中断 0
PT2.0 为外部中断 0 的输入端。触发方式由 PT2CON 寄存器中的 E0M[1:0]寄存器决定。INTE 寄存器
中的 E0IE 为外部中断 0 的使能位,INTF 寄存器中的 E0IF 为中断标志位,软件清 0。可唤醒 sleep 或 halt
模式。
PT2CON 寄存器(地址为 27H)
U-0
U-0
U-0
U-0
U-0
R/W-0
E1M
Bit2
R/W-0
Bit1
R/W-0
E0M[1:0]
Bit0
特性
PT2CON
Bit7
Bit6
Bit5
Bit4
Bit3
Bit 2E1M:外部中断 1 触发模式
1 = 外部中断 1 为下降沿触发
0 = 外部中断 1 在状态改变时触发
Bit 1-0 E0M[1:0]:外部中断 0 触发模式
11 = 外部中断 0 在状态改变时触发
10 = 外部中断 0 在状态改变时触发
01 = 外部中断 0 为上升沿触发
00 = 外部中断 0 为下降沿触发
2) 外部中断 1
PT2.1、PT2.2、PT2.3 和 PT2.4 都可作为外部中断 1 的输入端。触发方式由 PT2CON 寄存器中的 E1M
寄存器决定。INTE 寄存器中的 E1IE 为外部中断 1 的使能位,INTF 寄存器中的 E1IF 为中断标志位,
软件清 0。
3) SDAD 中断溢出
4) 定时器 0 溢出中断
5) 定时器 1 溢出中断
6) 定时/计数器 4 溢出中断
7) 定时/计数器 5 溢出中断
8) UART 发送中断
9) UART 接收中断
REV1.1
第 27 页,共 107 页
E0IF
E0IE
E1IF
E1IE
Interrup to CPU
ADIF
ADIE
TM0IF
TM0IE
TM1IF
TM1IE
TM4IF
TM4IE
TM5IF
TM5IE
URTIF
URTIE
URRIF
URRIE
GIE
图 2-13 中断逻辑
CSU8RP1382 有 9 个中断源,但只有 1 个中断入口地址 0x0004。与中断相关的 SFR:中断使能控制寄存
器 INTE 和中断标志位寄存器 INTF。这 9 个中断源都各自有一个中断使能,和一个总使能位 GIE,并且
它们的标志位硬件置位,软件清 0。
当响应中断时,会把当前的 PC 值入栈保护,并把 PC 置为 0x0004,同时把总使能位 GIE 清 0。执行完中
断服务程序,并用 RETFIE 返回到之前的主程序,并把 GIE 置 1。
所有的外部中断、RTC 或 32K WDT 作为时钟源的定时器 0 溢出中断都可唤醒 sleep 睡眠模式和 halt 停止
模式。
REV1.1
第 28 页,共 107 页
2.6 定时器 0
TM0IN[7:0]
T0RATE[2:0]
T0SEL[1:0]
超时溢出
T0EN
EN
8 Bits
OUT
CPUCLK
Counter
CLK
ECK1
TM0CK
TM0CLK
MUX
TM0CK/2~TM0CK/256
WDTCLK
图 2-14 定时模块的功能框图
定时器模块的输入为 CPUCLK。在定时器模块集成了一个分频器,分频的时钟 TM0CLK 作为 8 bits
计数器的输入时钟。当用户设置了定时器模块的使能标志,8 bits 计数器将启动,将会从 00H 递增到
TM0IN。用户需要设置 TM0IN(定时器模块中断信号选择器)以选择定时超时中断信号。当定时超时发
生时,中断标志位会自设置,程序计数器会跳转到 0004H 以执行中断服务程序。
表 2-11 定时器寄存器列表
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
地址
名称
上电复位
值
06H
07H
0FH
10H
11H
INTF
INTE
TM0CON
TM0IN
TM0CNT
TM0IF
TM0IE
uu00uu00
0u00uu00
0000u100
11111111
00000000
GIE
T0EN
T0RATE[2:0]
T0RSTB
T0SEL[1:0]
TM0IN[7:0]
TM0CNT[7:0]
表 2-12 TM0CON 寄存器各位功能表
功能
位地址
标识符
T0EN
定时器 0 使能位
1:使能定时器 0
7
0:禁止定时器 0
定时器 0 时钟选择
T0RATE [2:0]
TM0CLK
000
001
010
011
100
101
110
111
TM0CK /2
TM0CK /4
TM0CK /8
TM0CK /16
TM0CK /32
TM0CK /64
TM0CK /128
TM0CK /256
6:4
T0RATE[2:0]
T0RSTB
定时器 0 复位
1:禁止定时器 0 复位
2
REV1.1
第 29 页,共 107 页
0:使能定时器 0 复位
当将该位为 0 时,定时器 0 复位后,T0RSTB 会自动置 1
时钟源选择
T0SEL[1:0]
定时器 0 时钟源(TM0CK)
CPUCLK
CPUCLK
外部 32768Hz 晶振时钟,
仅当外部接 32768Hz 晶振,且晶振打开时有效
内部 32K WDT 时钟,
仅当内部 WDT 晶振打开时有效
00
01
10
1:0
T0SEL[1:0]
11
表 2-13 TM0IN 寄存器各位功能表
功能
位地址
标识符
TM0IN[7:0]
7 :0
定时器 0 溢出值
表 2-14 TM0CNT 寄存器各位功能表
位地址
标识符
功能
TM0CNT[7:0]
7 :0
定时器 0 计数寄存器,只读
操作:
1) 设置 TM0CLK,为定时器模块选择输入。
2) 设置 TM0IN,选择定时器溢出值。
3) 设置寄存器标志位:TM0IE 与 GIE,使能定时器中断。
4) 清零寄存器标志位:T0RSTB,复位定时器模块的计数器。
5) 设置寄存器标志位:TM0EN,使能定时器模块的 8 bits 计数器。
6) 当定时超时发生时,寄存器标志位 TM0IF 会自复位,程序计数器会复位为 0004H。
定时器 0 溢出时间计算方法:
定时器 0 溢出时间=(TM0IN+1)/TM0CLK.
REV1.1
第 30 页,共 107 页
2.7 I/O PORT
表 2-15 I/O 口寄存器表
上电复位
值
地址
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
20H PT1
PT1[7:0]
PT1EN[7:0]
PT1PU[7:0]
xxxxxxxx
00000000
00000000
uuuuu000
xxxxxxxx
00000000
00000000
00000000
21H PT1EN
22H PT1PU
23H PT1CON
24H PT2
25H PT2EN
26H PT2PU
27H PT2CON
AENB[2:0]
PT2[7:0]
PT2EN[7:0]
PT2PU[7:0]
PT2W[4:0]
E1M
E0M[1:0]
微控制器中的通用 I/O 口(GPIO)用于通用的输入与输出功能。用户可以通过 GPIO 接收数据信号
或将数据传送给其它的数字设备。CSU8RP1382 的部分 GPIO 可以被定义为其它的特殊功能。在本节,只
说明 GPIO 的通用 I/O 口功能,特殊功能将会在接下来的章节中说明。
PT1 寄存器(地址为 20H)
R/W-X
R/W-X
R/W-X
R/W-X
R/W-X
PT1[7:0]
Bit3
R/W-X
R/W-X
R/W-X
特性
PT1
Bit7
Bit6
Bit5
Bit4
Bit2
Bit1
Bit0
Bit 5-0 PT1[7:0]:GPIO1 口数据标志
PT1[7] = GPIO1 bit 7 数据标志位
PT1[6] = GPIO1 bit 6 数据标志位
PT1[5] = GPIO1 bit 5 数据标志位
PT1[4] = GPIO1 bit 4 数据标志位
PT1[3] = GPIO1 bit 3 数据标志位
PT1[2] = GPIO1 bit 2 数据标志位
PT1[1] = GPIO1 bit 1 数据标志位
PT1[0] = GPIO1 bit 0 数据标志位
PT1EN 寄存器(地址为 21H)
R/W-0
R/W-0
R/W-0
Bit5
R/W-0
R/W-0
Bit3
R/W-0
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT1EN
PT1EN[7:0]
Bit7
Bit6
Bit4
Bit 7-0 PT1EN[7:0]:GPIO1 口输入/输出控制标志
PT1EN[7] = GPIO1 bit 7 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT1EN[6] = GPIO1 bit 6 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT1EN[5] = GPIO1 bit 5 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT1EN[4] = GPIO1 bit 4 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT1EN[3] = GPIO1 bit 3 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT1EN[2] = GPIO1 bit 2 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT1EN[1] = GPIO1 bit 1 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT1EN[0] = GPIO1 bit 0 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值 ‘1’ = 位已设置 ‘0’= 位已清零
X = 不确定位
REV1.1
第 31 页,共 107 页
PT1PU 寄存器(地址为 22H)
R/W-0
R/W-0
R/W-0
Bit5
R/W-0
Bit4
R/W-0
PT1PU[7:0]
Bit3
R/W-0
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT1PU
Bit7
Bit6
Bit 7-0 PT1PU[7:0]:GPIO1 口上拉电阻使能标志
PT1PU[7] = GPIO1 bit 7 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT1PU[6] = GPIO1 bit 6 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT1PU[5] = GPIO1 bit 5 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT1PU[4] = GPIO1 bit 4 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT1PU[3] = GPIO1 bit 3 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT1PU[2] = GPIO1 bit 2 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT1PU[1] = GPIO1 bit 1 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT1PU[0] = GPIO1 bit 0 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT1CON 寄存器(地址为 23H)
U-0
U-0
U-0
U-0
U-0
R/W-0
Bit2
R/W-0
R/W-0
Bit0
特性
PT1CON
AENB[2:0]
Bit1
Bit7
Bit6
Bit5
Bit4
Bit3
Bit 2 AENB [2]:PT1.4 数模接口定义
0 = PT1.4 定义为模拟接口
1 = PT1.4 定义为数字接口
Bit 1 AENB[1]: PT1.3,PT1.2 数模接口定义
0 = PT1.3,PT1.2 定义为模拟接口
1 = PT1.3,PT1.2 定义为数字接口
Bit 0 AENB [0]: PT1.1,PT1.0 数模接口定义
0 = PT1.1,PT1.0 定义为模拟接口
1 = PT1.1,PT1.0 定义为数字接口
PT2 寄存器(地址为 24H)
R/W-X
R/W-X
R/W-X
Bit5
R/W-X
R/W-X
PT2[7:0]
Bit3
R/W-X
R/W-X
Bit1
R/W-X
Bit0
特性
PT2
Bit7
Bit6
Bit4
Bit2
Bit 7-0 PT2[7:0]:GPIO2 口数据标志位
PT2[7] = GPIO2 bit 7 的数据标志位
PT2[6] = GPIO2 bit 6 的数据标志位
PT2[5] = GPIO2 bit 5 的数据标志位
PT2[4] = GPIO2 bit 4 的数据标志位
PT2[3] = GPIO2 bit 3 的数据标志位
PT2[2] = GPIO2 bit 2 的数据标志位
PT2[1] = GPIO2 bit 1 的数据标志位
PT2[0] = GPIO2 bit 0 的数据标志位
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值 ‘1’ = 位已设置 ‘0’= 位已清零
X = 不确定位
REV1.1
第 32 页,共 107 页
PT2EN 寄存器(地址为 25H)
R/W-0
R/W-0
R/W-0
Bit5
R/W-0
Bit4
R/W-0
PT2EN[7:0]
Bit3
R/W-0
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT2EN
Bit7
Bit6
Bit 7-0 PT2EN[7:0]:GPIO 2 口输入/输出控制标志
PT2EN[7] = GPIO2 bit 7 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT2EN[6] = GPIO2 bit 6 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT2EN[5] = GPIO2 bit 5 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT2EN[4] = GPIO2 bit 4 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT2EN[3] = GPIO2 bit 3 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT2EN[2] = GPIO2 bit 2 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT2EN[1] = GPIO2 bit 1 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT2EN[0] = GPIO2 bit 0 的 I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT2PU 寄存器(地址为 26H)
R/W-0
R/W-0
R/W-0
Bit5
R/W-0
Bit4
R/W-0
PT2PU[7:0]
Bit3
R/W-0
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT2PU
Bit7
Bit6
Bit 7-0 PT2PU[7:0]:GPIO2 口上拉电阻使能标志
PT2PU[7] = GPIO2 bit 7 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT2PU[6] = GPIO2 bit 6 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT2PU[5] = GPIO2 bit 5 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT2PU[4] = GPIO2 bit 4 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT2PU[3] = GPIO2 bit 3 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT2PU[2] = GPIO2 bit 2 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT2PU[1] = GPIO2 bit 1 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT2PU[0] = GPIO2 bit 0 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT2CON 寄存器(地址为 27H)
R/W-0
R/W-0
R/W-0
PT2W[4:0]
Bit5
R/W-0
Bit4
R/W-0
Bit3
R/W-0
E1M
Bit2
R/W-0
Bit1
R/W-0
E0M
Bit0
特性
PT2CON
Bit7
Bit6
Bit 7 PT2W[4]:PT2.4 外部中断 1 使能
0 = 禁止 PT2.4 外部中断 1
1 = 使能 PT2.4 外部中断 1
Bit 6 PT2W[3]:PT2.3 外部中断 1 使能
0 = 禁止 PT2.3 外部中断 1
1 = 使能 PT2.3 外部中断 1
Bit 5 PT2W[2]:PT2.2 外部中断 1 使能
0 = 禁止 PT2.2 外部中断 1
1 = 使能 PT2.2 外部中断 1
Bit 4 PT2W[1]:PT2.1 外部中断 1 使能
0 = 禁止 PT2.1 外部中断 1
1 = 使能 PT2.1 外部中断 1
Bit 3 PT2W[0]:PT2.0 外部中断 0 使能
0 = 禁止 PT2.0 外部中断 0
1 = 使能 PT2.0 外部中断 0
Bit 2 E1M:外部中断 1 触发模式
1 = 外部中断 1 为下降沿触发
REV1.1
第 33 页,共 107 页
0 = 外部中断 1 在状态改变时触发
Bit 1-0 E0M[1:0]:外部中断 0 触发模式
11 = 外部中断 0 在状态改变时触发
10 = 外部中断 0 在状态改变时触发
01 = 外部中断 0 为上升沿触发
00 = 外部中断 0 为下降沿触发
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值 ‘1’ = 位已设置 ‘0’= 位已清零
X = 不确定位
REV1.1
第 34 页,共 107 页
3 增强功能
3.1 Halt 和 Sleep 模式
CSU8RP1382 支持两种低功耗工作模式。为了使 CSU8RP1382 处于待机状态, 可以让 CPU 停止工作
使 CSU8RP1382 进行停止或睡眠模式,减低功耗。正常模式与两种低功耗模式转换方式如下图:
Normal
Halt
Sleep
Interrupt/
Interrupt/
WDT
WDT
Reset
Reset
Halt
Sleep
图 3-1 低功耗模式切换
REV1.1
第 35 页,共 107 页
3.1.1 Halt 模式
CPU 执行停止指令(Halt)后,程序计数器停止计数直到出现中断指令。为了避免由中断返回
(Interrupt Return)引起的程序错误,建议在停止指令之后加一 NOP 指令以保证程序返回时能正常运
行。
停止模式下可以唤醒的方式有:
1) 外部中断 0
2) 外部中断 1
3) SDAD 中断溢出
4) 定时器 0 溢出中断
5) 定时/计数器 1 溢出中断
6) 定时/计数器 4 溢出中断
7) 定时/计数器 5 溢出中断
8) UART 发送中断
9) UART 接收中断
10) WDT 复位唤醒
范例程序:
在执行停止指令之前,先执行下面的程序。
CLRF NETA
CLRF NETC
CLRF NETE
CLRF PT1PU
MOVLW FFH
MOVWF PT1EN
CLRF PT1
;复位状态
;复位状态
;复位状态
;断开 PT1 上拉电阻
;PT1[7:0]用作输出接口
;将 PT1[7:0]输出为低
MOVLW 01H
MOVWF PT2PU
MOVLW 0FEH
MOVWF PT2EN
CLRF PT2
;断开 PT2 口除 bit0(PT2[0])外的其它接口的上拉电阻
;除 bit0(PT2[0])外,PT2[7:0]用作输出接口
;将 PT2[7:1]输出为低
CLRF INTF
MOVLW 081H
MOVWF INTE
HALT
;清零中断标志
;使能外部中断
;使 CSU8RP1382 进行停止模式
;保证 CPU 重启后程序能正常工作
NOP
REV1.1
第 36 页,共 107 页
3.1.2 Sleep 模式
CPU 执行睡眠指令(Sleep)后,所有的振荡器停止工作(EO_SLP 为 0 时)直到出现一个外部中断指令
唤醒 CPU。为了避免由中断返回(Interrupt Return)引起的程序错误,建议睡眠指令之后加一 NOP 指令
以保证程序的正常运行。在睡眠模式下的功耗大约有 1uA。
为了保证 CPU 在睡眠模式下的功耗最小,在执行睡眠指令之前,需要把 IO 口的上拉电阻断开,并
且保证所有的 I/O 口是接到 DVDD 或 DGND 电平。
睡眠模式下可以唤醒的方式有:
1) 外部中断 0
2) 外部中断 1
3) 定时器 0 溢出中断
4) WDT 复位唤醒
当使用定时器 0 中断唤醒,如果定时器 0 时钟源选择外部 32KHz 时钟,需要打开外部晶振,将
EO_SLP 置为 1,并将定时器 0 的使能和中断使能标志打开。
如果定时器 0 时钟源选择 WDT 时钟,需要将 WDT 时钟打开,并将定时器 0 的使能和中断使能标志
打开。
范例程序:
在执行睡眠指令之前,先执行下面的程序。
CLRF NETA
CLRF NETC
CLRF NETE
CLRF PT1PU
MOVLW FFH
MOVWF PT1EN
CLRF PT1
;复位状态
;复位状态
;复位状态
;断开 PT1 上拉电阻
;PT1[7:0]用作输出接口
;将 PT1[7:0]输出为低
MOVLW 01H
MOVWF PT2PU
MOVLW 0FEH
MOVWF PT2EN
CLRF PT2
;断开 PT2 口除 bit0(PT2[0])外的其它接口的上拉电阻
;除 bit0(PT2[0])外,PT2[7:0]用作输出接口
;将 PT2[7:1]输出为低
CLRF INTF
MOVLW 081H
MOVWF INTE
SLEEP
;清零中断标志
;使能外部中断
;使 CSU8RP1382 进行睡眠模式
;保证 CPU 重启后程序能正常工作
NOP
REV1.1
第 37 页,共 107 页
3.2 看门狗(WDT)
WDT_RST
WDTIN
Compare
CST_WDT
WDTEN
WDTS
WDTOUT
Watch Dog
Timer
Ocsillator
8Bits
Counter
MUX
8Bits Counter
WDTCK
图 3-2 看门狗定时器功能框图
看门狗定时器(WDT)用于防止程序由于某些不确定因素而失去控制。当 WDT 启动时,WDT 计时
超时后将使 CPU 复位。在运行的程序一般在 WDT 复位 CPU 之前先复位 WDT。当出现某些故障时,程
序会被 WDT 复位到正常状态下,但程序不会复位 WDT。
当用户把 CST_WDT 清 0 时,则内部的看门狗定时器振荡器(32KHz)将会启动,产生的时钟被送
到“8 bits 计数器 1”。当用户置位 WDTEN 时,“8 bits 计数器 1”开始计数,“8 bits 计数器 1”的输出
是内部信号 WDTA[7:0],被发送到一个受寄存器标志位 WDTS[2:0]控制的多路选择器,选择器的输出作
为“8 bits 计数器 2”的时钟输入。当“8 bits 计数器 2”计数值与 WDT_IN 数值相等时溢出,溢出时它会
发送 WDTOUT 信号复位 CPU 及置位 TO 标志位。用户可以使用指令 CLRWDT 复位 WDT。
注意:看门狗复位仅复位 PC 指针,不复位 SFR 和 SRAM 值。
表 3-1 看门狗定时器寄存器表
Bit7
Bit6
Bit5
Bit4
Bit3
TO
Bit2
Bit1
Bit0
地址
名称
上电复位
值
04H
0DH
0EH
STATUS
WDTCON
WDTIN
00u00xxx
0uuuu000
11111111
WDTEN
WDTS[2:0]
WDT_IN[7:0]
REV1.1
第 38 页,共 107 页
表 3-2 状态标志寄存器各位功能表
功能
位地址
标识符
WDT 唤醒标志位
1: WDT 唤醒
3
TO
0: WDT 未唤醒
表 3-3 WDTCON 寄存器各位功能表
位地址
标识符
WDTEN
WDTS
功能
WDT 使能标志位
1: WDT 模块使能
0: WDT 模块不使能
参见表 3-5 看门狗计数器时钟选择
7
2:0
表 3-4 WDTIN 寄存器各位功能表
位地址
标识符
功能
7:0
WDT_IN
WDT 计数器溢出值
看门狗定时器操作:
1. 设置 WDTS[3:0],选择 WDT 时钟频率。
2. 设置 WDT_IN,选择不同的溢出时间值
3. 置位寄存器标志位:WDTEN,使能 WDT。
4. 把 CST_WDTO 清 0,打开 WDT 的晶振。
5. 在程序中执行 CLRWDT 指令复位 WDT。
看门狗定时器溢出时间计算方法:
WDT 时间=(WDTIN+1)/WDTCK
表 3-5 看门狗计数器时钟选择
WDTS[2:0]
计数器时钟
WDTCK(Hz)
WDT 时间
(WDTIN==FFH)
000
001
010
011
100
101
110
111
WDTA[0]
WDTA [1]
WDTA [2]
WDTA [3]
WDTA [4]
WDTA [5]
WDTA [6]
WDTA [7]
128
256
512
1024
2048
4096
8192
16384
2s
1s
512ms
256ms
128ms
64ms
32ms
16m s
REV1.1
第 39 页,共 107 页
3.3 定时/计数器 1
PWMOUT
TM1R[7:0]
PT1.5 IO电路
PT1.5
TM1IN[7:0]
PWM
Compare
MUX
CLK_SEL
T1RATE[2:0]
T1CKS
MUX
ECK
ICK
T1EN
BZ
TCK
MUX
TCK~TCK/128
8 Bits
Counter
DIV2
T1OUT
超时溢出
两个CPUCLK时
钟采样PT2.0
TM1CLK
PT2.0
图 3-3 定时/计数器 1 模块的功能框图
定时/计数器 1 模块的输入是 TM1CLK。当作为定时器使用时,定时器时钟由 CLK_SEL 寄存器选
择。(CLK_SEL 同时也控制 MCU 时钟是选择外部时钟还是内部时钟)。当用户设置了定时/计数器 1 模
块的使能标志,8 bits 计数器将启动,从 00H 递增到 TM1IN。用户需要设置 TM1IN(定时器模块中断信
号选择器)以选择定时超时中断信号。当定时超时发生时,BZ 输出信号发生跳变。
主要功能:
1) 8 位可编程定时器;
2) 外部事件计数;
3) 蜂鸣器输出;
4) PWM 输出;
表 3-6 定时器寄存器列表
上电复位
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
地址
名称
值
uu00uu00
0u00uu00
06H INTF
07H INTE
TM1IF
TM1IE
GIE
12H TM1CON
13H TM1IN
14H TM1CNT
15H TM1R
T1EN
T1RATE[2:0]
T1CKS
TM1IN[7:0]
TM1CNT[7:0]
TM1R[7:0]
T1RSTB
T1OUT PWMOUT 0xxxx1xx
11111111
00000000
00000000
REV1.1
第 40 页,共 107 页
表 3-7 TM1CON 寄存器各位功能表
位地址
标识符
功能
定时/计数器 1 使能位
1:使能定时器 1
7
T1EN
0:禁止定时器 1
定时/计数器 1 时钟选择
CLK_SEL
0
1
TCK
ICK
ECK
T1RATE [2:0]
TM1CLK
TCK
000
001
010
011
100
101
110
111
6:4
T1RATE[2:0]
TCK /2
TCK /4
TCK /8
TCK /16
TCK /32
TCK /64
TCK /128
定时/计数器 1 时钟源选择位
1:PT2.0 作为时钟
0:TCK 的分频时钟
定时/计数器 1 复位
1:禁止定时/计数器 1 复位
0:使能定时/计数器 1 复位
3
2
T1CKS
T1RSTB
当将该位为 0 时,定时器 1 复位后,T1RST 会自动置 1
PT1.5 口输出控制
T1OUT PWM1OUT
1
0
T1OUT
PT1.5 输出控制,仅当 PT1.5 配置为输出有效
IO 输出
蜂鸣器输出
PWM 输出
PWM 输出
0
1
0
1
0
0
1
1
PWM1OUT
表 3-8 TM1IN 寄存器各位功能表
功能
位地址
标识符
TM1IN[7:0]
7 :0
定时/计数器溢出值
表 3-9 TM1CNT 寄存器各位功能表
位地址
标识符
功能
TM1CNT[7:0]
7 :0
定时/计数器 1 计数寄存器,只读
表 3-10 TM1CNT 寄存器各位功能表
位地址
标识符
功能
TM1R[7:0]
7 :0
定时/计数器 1 的 PWM 高电平占空比控制寄存器
REV1.1
第 41 页,共 107 页
操作:
1) 设置 TM1CLK,为定时/计数器 1 选择输入。
2) 设置 TM1IN,选择定时/计数器 1 溢出值。
3) 设置寄存器标志位:TM1IE 与 GIE,使能定时/计数器 1 中断。
4) 清零寄存器标志位:T1RSTB,复位定时/计数器 1 的计数器。
5) 设置寄存器标志位:T1EN,使能定时/计数器 1 的 计数器。
6) 当定时超时发生时,BZ 输出信号发生跳变,可作为蜂鸣器输出;寄存器标志位 TMIF 会自复位,
程序计数器会复位为 004H。
定时器 1 溢出时间计算方法:
定时器 1 溢出时间=(TM1IN+1)/TM1CLK.
蜂鸣器周期计算方法:
蜂鸣器周期=(TM1IN+1)*2/TM1CLK.
3.3.1 PWM1
操作:
1) 设置 TM1CLK,为定时/计数器 1 模块选择输入。
2) 设置 TM1IN 来配置 PWM 的周期。
3) 设置 TM1R 来配置 PWM 的高电平的的脉宽。
4) 使能 PWMOUT 输出,配置 PT1.5 为输出端口,之后把 T1EN 置 1 启动定时器。
5) PWM 从 PT1.5 输出。
周期为 TM1IN+1,高电平脉宽为 TM1R。如 TM1IN=0x0F,TM1R=0x03 的 PWM 波形输出如下:
...
...
0
1
2
3
15
0
1
2
3
1
15
0
TM1CLK
T1EN
PWMOUT
REV1.1
第 42 页,共 107 页
3.4 定时/计数器 4
PWM4OUT
TM4R[15:0]
PT1.6 IO电路
PT1.6
TM4IN[15:0]
PWM
Compare
MUX
CLK_SEL
T4RATE[2:0]
T4CKS
MUX
ECK
ICK
T4EN
BZ
TCK
TCK~TCK/128
MUX
16 Bits
Counter
DIV2
T4OUT
超时溢出
两个
CPUCLK时
钟采样
PT2.1
TM4LCK
图 3-4 定时/计数器 4 模块的功能框图
定时/计数器 4 模块的输入是 TM4CLK。当作为定时器使用时,定时器时钟由 CLK_SEL 寄存器选
择。(CLK_SEL 同时也控制 MCU 时钟是选择外部时钟还是内部时钟)当用户设置了定时/计数器 4 模块
的使能标志,16 bits 计数器将启动,从 00H 递增到 TM4IN。用户需要设置 TM4IN(定时器模块中断信号
选择器)以选择定时超时中断信号。当定时超时发生时,BZ 输出信号发生跳变。
主要功能:
1) 16 位可编程定时器;
2) 外部事件计数;
3) 蜂鸣器输出;
4) PWM4 输出;
表 3-11 定时器 4 寄存器列表
上电复位
地址
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
值
u0u00u00
00u00u00
3CH INTF
3DH INTE
TM4IF
TM4IE
40H TM4CON
41H TM4INL
42H TM4INH
43H TM4CNTL
44H TM4CNTH
45H TM4RL
46H TM4RH
T4EN
T4RATE[2:0]
T4CKS
TM4IN[7:0]
TM4IN[15:8]
TM4CNT [7:0]
TM4CNT[15:8]
TM4R[7:0]
T4RSTB T4OUT PWM4OUT 00000100
11111111
11111111
00000000
00000000
00000000
00000000
TM4R[15:8]
REV1.1
第 43 页,共 107 页
表 3-12 TM4CON 寄存器各位功能表
位地址
标识符
功能
定时/计数器 4 使能位
1:使能定时器 4
7
T4EN
0:禁止定时器 4
定时/计数器 4 时钟选择
CLK_SEL
0
1
TCK
ICK
ECK
T4RATE [2:0]
TM4CLK
TCK
000
001
010
011
100
101
110
111
6:4
T4RATE[2:0]
TCK /2
TCK /4
TCK /8
TCK /16
T K /32
TCK /64
TCK /128
定时/计数器 4 时钟源选择位
T4CKS TM4CLK
3
2
T4CKS
0
1
TCK 的分频时钟
PT2.1 作为时钟
定时/计数器 4 复位
1:禁止定时/计数器 4 复位
0:使能定时/计数器 4 复位
T4RSTB
当将该位为 0 时,定时器 4 复位后,T4RSTB 会自动置 1
PT1.6 口输出控制
T4OUT PWM 4OUT
1
0
T4OUT
PT1.6 输出控制,仅当 PT1.6 配置为输出有效
IO 输出
蜂鸣器输出
PWM4 输出
PWM4 输出
0
1
0
1
0
0
1
1
PWM4OUT
表 3-13 TM4IN 寄存器各位功能表
功能
位地址
标识符
TM4IN[7:0]
15 :0
定时/计数器 4 溢出值
表 3-14 TM4CNT 寄存器各位功能表
位地址
标识符
功能
TM4CNT[15:0]
15 :0
定时/计数器 4 计数寄存器,只读
表 3-15 TM4CNT 寄存器各位功能表
位地址
标识符
功能
TM4R[15:0]
15 :0
定时/计数器 4 的 PWM 高电平占空比控制寄存器
REV1.1
第 44 页,共 107 页
操作:
1) 设置 TM4CLK,为定时/计数器 4 选择输入。
2) 设置 TM4IN,选择定时/计数器 4 溢出值。
3) 设置寄存器标志位:TM4IE 与 GIE,使能定时/计数器 4 中断。
4) 清零寄存器标志位:T4RSTB,复位定时/计数器 4 的计数器。
5) 设置寄存器标志位:T4EN,使能定时/计数器 4 的 计数器。
6) 当定时超时发生时,BZ 输出信号发生跳变,可作为蜂鸣器输出;寄存器标志位 TM4IF 会自复
位,程序计数器会复位为 004H。
定时器 4 溢出时间计算方法:
定时器 4 溢出时间=(TM4IN+1)/TM4CLK.
蜂鸣器周期计算方法:
蜂鸣器周期=(TM4IN+1)*2/TM4CLK.
3.4.1PWM4
操作:
1) 设置 TM4CLK,为定时/计数器 4 模块选择输入。
2) 设置 TM4IN 来配置 PWM4 的周期。
3) 设置 TM4R 来配置 PWM4 的高电平的的脉宽。
4) 使能 PWM4OUT 输出,配置 PT1.6 为输出端口,之后把 T4EN 置 1 启动定时器。
5) PWM 从 PT1.6 输出。
周期为 TM4IN+1,高电平脉宽为 TM4R。如 TM4IN=0x000F,TM4R=0x0003 的 PWM4 波形输出如下:
...
...
0
1
2
3
15
0
1
2
3
1
15
0
TM4CLK
T4EN
PWM4OUT
REV1.1
第 45 页,共 107 页
3.5 定时/计数器 5
PWM5OUT
TM5R[15:0]
PT1.7 IO电路
PT1.7
TM5IN[15:0]
PWM
Compare
MUX
CLK_SEL
T5RATE[2:0]
T5CKS
MUX
ECK
TCK
MUX
T5EN
BZ
TCK~TCK/128
16 Bits
Counter
DIV2
T5OUT
ICK
超时溢出
两个CPUCLK时钟
采样PT2.2
TM5LCK
PT2.2
图 3-5 定时/计数器 5 模块的功能框图
定时/计数器 5 模块的输入是 TM5CLK。当作为定时器使用时,定时器时钟由 CLK_SEL 寄存器选
择。(CLK_SEL 同时也控制 MCU 时钟是选择外部时钟还是内部时钟)当用户设置了定时/计数器 5 模块
的使能标志,16bits 计数器将启动,从 00H 递增到 TM5IN。用户需要设置 TM5IN(定时器模块中断信号
选择器)以选择定时超时中断信号。当定时超时发生时,BZ 输出信号发生跳变。
主要功能:
1) 16 位可编程定时器;
2) 外部事件计数;
3) 蜂鸣器输出;
4) PWM 输出;
表 3-16 定时器 5 寄存器列表
上电复位
地址
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
值
uuu0uuuu
uuu0uuuu
3CH INTF2
3DH INTE2
TM5IF
TM5IE
48H TM5CON
49H TM5INL
4AH TM5INH
4BH TM5CNTL
4CH TM5CNTH
4DH TM5RL
4EH TM5RH
T5EN
T5RATE[2:0]
T5CKS
TM5IN[7:0]
TM5IN[15:8]
TM5CNT[7:0]
TM5CNT[15:8]
TM5R[7:0]
T5RSTB T5OUT PWM5OUT 0xxxx1xx
11111111
11111111
00000000
00000000
00000000
00000000
TM5R[15:8]
REV1.1
第 46 页,共 107 页
表 3-17 TM5CON 寄存器各位功能表
位地址
标识符
功能
定时/计数器 5 使能位
1:使能定时器 5
7
T5EN
0:禁止定时器 5
定时/计数器 5 时钟选择
C K_SEL
0
1
TCK
ICK
ECK
T5RATE [2:0]
TM5CLK
TCK
000
001
010
011
100
101
110
111
6:4
T5RATE[2:0]
TCK /2
TCK /4
TCK /8
TCK /16
TCK /32
TCK /64
TCK /128
定时/计数器 5 时钟源选择位
1:PT2.2 作为时钟
0:TCK 的分频时钟
定时/计数器 5 复位
1:禁止定时/计数器 5 复位
0:使能定时/计数器 5 复位
3
2
T5CKS
T5RSTB
当将该位为 0 时,定时器 5 复位后,T5RSBT 会自动置 1
PT1.7 口输出控制
T5OUT PWM 5OUT
1
0
T5OUT
PT1.7 输出控制,仅当 PT1.7 配置为输出有效
IO 输出
蜂鸣器输出
PWM5 输出
PWM5 输出
0
1
0
1
0
0
1
1
PWM5OUT
表 3-18 TM5IN 寄存器各位功能表
功能
位地址
标识符
15:0
TM5IN[15:0]
定时/计数器 5 溢出值
表 3-19 TM5CNT 寄存器各位功能表
位地址
标识符
功能
15:0
TM5CNT[15:0]
定时/计数器 5 计数寄存器,只读
表 3-20 TM5CNT 寄存器各位功能表
位地址
标识符
功能
15:0
TM5R[15:0]
定时/计数器 5 的 PWM 高电平占空比控制寄存器
REV1.1
第 47 页,共 107 页
操作:
1) 设置 TM5CLK,为定时/计数器 5 选择输入。
2) 设置 TM5IN,选择定时/计数器 5 溢出值。
3) 设置寄存器标志位:TM5IE 与 GIE,使能定时/计数器 5 中断。
4) 清零寄存器标志位:T5RSTB,复位定时/计数器 5 的计数器。
5) 设置寄存器标志位:T5EN,使能定时/计数器 5 的 计数器。
6) 当定时超时发生时,BZ 输出信号发生跳变,可作为蜂鸣器输出;寄存器标志位 TM5IF 会自复
位,程序计数器会复位为 004H。
定时器 5 溢出时间计算方法:
定时器 5 溢出时间=(TM5IN+1)/TM5CLK.
蜂鸣器周期计算方法:
蜂鸣器周期=(TM5IN+1)*2/TM5CLK.
3.5.1PWM5
操作:
1) 设置 TM5CLK,为定时/计数器 5 模块选择输入。
2) 设置 TM5IN 来配置 PWM5 的周期。
3) 设置 TM5R 来配置 PWM5 的高电平的的脉宽。
4) 使能 PWM5OUT 输出,配置 PT1.7 为输出端口,之后把 T5EN 置 1 启动定时器。
5) PWM5 从 PT1.7 输出。
周期为 TM5IN+1,高电平脉宽为 TM5R。如 TM5IN=0x000F,TM5R=0x0003 的 PWM5 波形输出如下:
...
...
0
1
2
3
15
0
1
2
3
1
15
0
TM5CLK
T5EN
PWM5OUT
REV1.1
第 48 页,共 107 页
3.6 串行通信接口
CSU8RP1382 主要提供一个可编程全双工串行通信接口。该接口能同时进行数据的发送和接收,也可
以作为一个同步移位寄存器使用。工作模式同通用 8051。
3.6.1 工作方式
UART 有 4 种工作方式。在通信之前用户必须先初始化 SCON,选择方式和波特率。如果使用方式 1
或者方式 3 应先初始化定时器 4 或者定时器 5.
在所有四种方式中,任何将 SBUF 作为目标寄存器的写操作都会启动发送。在方式 0 中由条件 RI=0
和 REN=1 初始化接收。这会在 TX 引脚上产生一个时钟信号,然后在 RX 引脚上移 8 位数据。在其他方
式中由输入的起始位初始化接收(如果 REN=1)。通过发送起始位,外部发送器开始通信。
主要四种工作方式:
表 3-21 串口通信工作方式
SM0
0
SM1
0
方式
类型
同步
波特率
fcpuclk/6
帧长度
起始位
无
停止位
无
第 9 位
无
0
8bits
定时器 5 溢出率/16
定时器 4 的溢出率/16 或者 32
0
1
1
1
0
1
1
2
3
异步
异步
异步
10bits
11bits
11bits
1
1
1
1
1
1
无
0,1
0,1
SMOD
波特率
fcpuclk/32
fcpuclk/16
0
1
定时器 5 溢出率/16
定时器 4 的溢出率/16 或者 32
REV1.1
第 49 页,共 107 页
方式 0:同步,半双工通信
方式 0 支持与外部设备的同步通信。在 RX 引脚上首发串行数据。TX 引脚用作发送移位时钟。
CSU8RP1382 提供 TX 引脚上的移位时钟。因此这个方式是串行通信的半双工方式。在这个方式中,每帧
收发 8 位,低位先接收或发送。
功能框图如下图所示。数据通过 RX 引脚进入和移出串行端口。以为时钟有 TX 引脚输出,用来移位
进出 CSU8RP1382 的数据。
Transimit shift register
RX
PARIN
Data Bus
SOUT
Write to
SBUF
LOAD
fcpuclk
CLOCK
TX START
TX CLOCK
TX SHIFT
Serial Port
Interrupt
TI
SERIAL
CONTROLLER
RI
TX
RX CLOCK
SHIFT
CLOCK
LOAD
SBUF
RI
RX START
REN
RX SHIFT
CLOCK
PAROUT
SBUF
RX
SIN
Receive Shift Register
图 3-6 方式 0 功能框图
REV1.1
第 50 页,共 107 页
任何将 SBUF 作为目标寄存器的写操作都会启动发送。下一个系统时钟 TX 控制块开始发送。数据转
换发生在移位时钟的下降沿,移位寄存器的内容逐次从左往右移位,空位置 0。当移位寄存器中的所有 8
位都发送后,TX 控制模块停止发送操作,然后在下一个系统时钟的上升沿将 TI 置 1,并且 RX 引脚保持
高电平。
Ttx0_
a
写
写 SBUF
Ttx0_
b
写
写 写 写
RXD
TXD
TI
D0
D1
D2
D3
D4
D5
D6
D7
图 3-7 方式 0 发送数据波形
REN 置 1 和 RI 清 0 初始化接收。下一个系统时钟启动接收,在移位时钟的上升沿锁存数据,接收转
换寄存器的内容逐次向左移位。当所有 8 为都接收到接收移位寄存器中后,RX 控制块停止接收,然后在
下一个系统时钟的上升沿上 RI 置 1,知道被软件清 0 才允许接收。
Trx0_a
写
写 SCON
Trx0_
c
写
写 写 写
RXD
TXD
RI
D0
D1
D2
D3
D4
D5
D6
D7
Trx0_b
图 3-8 方式 0 接收数据波形
REV1.1
第 51 页,共 107 页
方式 1:8 位 UART,可变波特率,异步全双工
方式 1 提供 10 位全双工异步通信,10 位由一个起始位(逻辑 0),8 个数据位(低位为第一位),
和一个停止位(逻辑 1)组成。在接收时,这 8 个数据位存储在 SBUF 中而停止位存在 RB8 中。方式 1 中
的波特率是可变的,串行收发波特率可被设置为定时器 4 溢出率的 1/16 或 1/32,或是定时器 5 溢出率的
1/16(具体参见 3.6.4 波特率)
功能块框图如下图所示:
Transimit shift register
STOP
Timer4
Overflow
START
PARIN
TX
Data Bus
SOUT
÷2
SMOD
Write to
SBUF
LOAD
CLOCK
0
1
TX START
TX CLOCK
÷16
÷16
TX SHIFT
Timer5
Overflow
0
Serial Port
Interrupt
TI
TCLK
1
SERIAL
CONTROLLER
0
RI
RCLK
RX CLOCK
1
LOAD
SBUF
RI
RX START
REN
RX SHIFT
1 TO 0
DETECTOR
CLOCK
SBUF
PAROUT
BIT
DETECTOR
RX
RB
8
SIN
D8
Receive Shift Register
图 3-9 方式 1 功能框图
REV1.1
第 52 页,共 107 页
任何将 SBUF 作为目标寄存器的写操作都会启动发送,实际上发送是从 16 分频计数器中的下一次跳
变之后的系统时钟开始的,因此位时间与 16 分频计数器是同步的,与对 SBUF 的写操作不同步。起始位
首先在 TX 引脚上移出,然后是 8 为数据位。在发送移位寄存器中的所有 8 为数据都发送完后,停止位在
TX 引脚上移出,在停止位发出的同时 TI 标志置 1。
Ttx1_
a
写
写 SBUF
写
写 写 写
写
写 写
TXD
TI
写
写
写
D0
D1
D2
D3
D4
D5
D6
D7
Ttx1_
b
图 3-10 方式 1 发送数据波形
只有 REN 位置 1 时,才允许接收。当 RX 引脚检测到下降沿时串行口开始接收串行数据。为此,
MCU 对 RX 不断采样,采样速率为波特率的 16 倍。当检测下降沿时,16 分频计数器立即复位,这有助
于 16 分频计数器与 RX 引脚上的串行数据位同步。16 分频计数器八每一位的时间分为 16 个状态,在第
7、8、9 状态时,位检测器对 RX 端的电平进行采样。为抑制噪声,在这 3 个状态采样中至少有 2 次采样
值一致数据才被接收。如果所接收的第一位不是 0,说明这位不是一帧数据的起始位,该位被忽略,接收
电路被复位,等待 RX 引脚上另一个下降沿的到来。若起始位有效,则移入寄存器,并接着移入其它位到
移位寄存器。8 个数据位和 1 个停止位移入之后,移位寄存器的内容被分别装入 SBUF 和 RB8 中,RI 置
1,但必须满足下列条件:
1. RI=0
2. SM2=0 或者接收的停止位=1
如果这些条件满足,那么停止位装入 RB8,8 个数据位装入 SBUF,RI 被置 1.否则接收的帧会丢失。
这时接收器将重新去探测 RX 端是否另一个下降沿。用户必须用软件清除 RI,然后才能再次接收。
写
写 写 写
写
写 写
RXD
RI
写
写
写
D0
D1
D2
D3
D4
D5
D6
D7
Trx1_
a
图 3-11 方式 1 接收数据波形
REV1.1
第 53 页,共 107 页
方式 2:9 位 UART,固定波特率,异步全双工
这个方式使用异步全双工通信中的 11 位。一帧由一个起始位(逻辑 0),8 个数据位(低位为第一
位),一个可编程的第 9 数据位和一个停止位(逻辑 1)组成。方式 2 支持多机通信(详见)。在数据传
送时,第 9 位数据位(SCON 中的 TB8)可以写成 0 或 1,例如,可用作多级通信中的数据/地址标志位。
当接收到数据时,第 9 数据位进入 RB8 而停止位不保存。PCON 中的 SMOD 位选择波特率为 CPU 工作时
钟的 1/16 或 1/32。功能块框图如下所示:
Transimit shift register
TB8
D8
STOP
fcpuclk
START
PARIN
TX
Data Bus
SOUT
÷2
SMOD
Write to
SBUF
LOAD
CLOCK
0
1
TX START
TX CLOCK
÷16
TX SHIFT
TI
Serial Port
Interrupt
SERIAL
CONTROLLER
RI
RX CLOCK
LOAD
SBUF
RI
RX START
REN
RX SHIFT
1 TO 0
DETECTOR
CLOCK
SBUF
PAROUT
BIT
DETECTOR
RX
RB
8
SIN
D8
Receive Shift Register
图 3-12 方式 2 功能框图
REV1.1
第 54 页,共 107 页
任何将 SBUF 作为目标寄存器的写操作都会启动发送,同时也将 TB8 载入到发送移位寄存器的第 9
位中。实际上发送是从 16 分频计数器的下一次跳变之后的系统时钟开始的,因此位时间与 16 分频计数
器是同步的,与对 SBUF 的写操作不同步。起始位首先在 TX 引脚上移出,然后是 9 位数据位(低位为第
一位)。在发送转换寄存器中的所有 9 为数据都发送完后,停止位在 TX 引脚上移出,在停止位发送后,
TI 标志置 1。
Ttx2_
a
写
写 SBUF
写
写 写 写
写
写 写
TXD
TI
写
写
写
D0
D1
D2
D3
D4
D5
D6
D7
TB8
Ttx2_
b
图 3-13 方式 2 发送数据波形
只有 REN 位置 1 时才允许接收。当 RX 引脚检测到下降沿时串行口开始接收串行数据。为此,CPU
对 RX 不断采样,采样速度为波特率的 16 倍。当检测下降沿时,16 位分频计数器立即复位。这有助于 16
分频计数器与 RX 引脚上的串行数据位同步。16 分频计数器把每一位的时间分为 16 个状态,在第 7、8、
9 状态时,位检测器对 RX 端的电平进行采样。为抑制噪声,在这 3 个状态采样中至少有 2 次采样值一致
数据才被接收。如果所接收的第一位不是 0,说明这位不是一帧数据的起始位,改为被忽略,接收电路被
复位,等待 RX 引脚上另一个下降沿的到来。若起始位有效,则移入寄存器,并接着移入其它位到移位寄
存器。9 个数据位和 1 个停止位移入之后,移位寄存器的内容被分别装入 SBUF 和 RB8 中,RI 置 1,但必
须满足下列条件:
1. RI=0
2. SM2=0 或者接收的第 9 位=1,且接收位符合 UART 地址
如果条件满足,那么第 9 位移入 RB8,8 位数据移入 SBUF,RI 被置 1.否则接收的数据帧会丢失。
在停止位的当中,接收器回到寻找 RX 引脚上的另一个下降沿。用户必须用软件清除 RI,然后才能
再次接收。
写
写 写 写
写
写 写
RXD
RI
写
写
写
D0
D1
D2
D3
D4
D5
D6
D7
RB8
Trx2_
a
图 3-14 方式 2 接收数据波形
方式 3:9 位 UART,可变波特率,异步全双工
方式 3 使用方式 2 的传输协议以及方式 1 的波特率产生方式
REV1.1
第 55 页,共 107 页
3.6.2 多机通信
软件地址识别
方式 2 和方式 3 有一个专门的适用于多机通信的功能。在这两个方式下,接收的是 8 位数据,第 9 位
移入 RB8 中,然后再来一位停止位。UART 可以这样来设定:当接收到停止位时,只有 RB8=1 的条件
下,串行口中断才会有效(请求标志 RI 置 1)。可以通过将 SCON 寄存器的 SM2 位置 1 是 UART 具有这
个功能。
在多机通信系统中,以如下所述来利用这一功能。当主机要发送一数据给几个从机中的一个时,它
先送出一地址字节,以辨认目标从机。地址字节与数据字节可用第 9 为数据位来区别,地址字节的第 9
位为 1,数据字节的第 9 位为 0.
如果从接 SM2 为 1,则不会响应数据字节中断。地址字节可以中断所有从机,这样,每一个从机都
检查所接收到的地址字节,以辨别自己是不是目标从机。被寻址的从机 SM2 位清 0,并准备接收即将到
来的数据字节,当接收完毕时,从机再一次将 SM2 置 1。没有被寻址的从机,则维持它们的 SM2 位为
1,忽略到来的数据字节,继续做自己的事情。
注意:在方式 0 中,SM2 用来选择波特率加倍。在方式 1 中,SM2 用来检测停止位是否有效,如果
SM2=1,接收中断不会响应直到接收到一个有效的停止位。
REV1.1
第 56 页,共 107 页
3.6.3 寄存器说明
上电复位
值
地址
名称
Bit7
Bits6
SM1
Bit5
Bits4
REN
Bit3
TB8
Bits2
RB8
Bit1
Bit0
3EH
3FH
79H
7AH SCON2
7BH
7CH
INTF2
INTE2
SCON1
URTIF
URTIE
TCLK
URRIF
URRIE
RCLK
00000000
SM0
SMOD
SM2
SIO
00000000
0uuuuuuu
00000000
uu0uuuuu
SBUF
SIO
位地址
标识符
功能
串口通信工作方式选择寄存器
7:6
5
SM0、SM1
参见表 3-21 串口通信工作方式
SM2
接收控制选择
1:允许接收
4
REN
0:禁止接收
3
2
TB8
RB8
发送数据第 9 位
接收数据第 9 位
发送时钟选择位
1:选择定时器 5 溢出作为时钟,波特率为溢出率/16
1
0
TCLK
RCLK
0:选择定时器 4 溢出作为时钟,SMOD=1,波特率为溢出率/16,
SMOD=0,波特率为溢出率/32
接收时钟选择位
1:选择定时器 5 溢出作为时钟,波特率为溢出率/16
0:选择定时器 4 溢出作为时钟,SMOD=1,波特率为溢出率/16,
SMOD=0,波特率为溢出率/32
位地址
标识符
功能
波特率选择寄存器
参见表 3-21 串口通信工作方式
7
SMOD
位地址
标识符
功能
SIO 配置
SIO
0
1
功能
5
SIO
PT2.5,PT2.6 作为普通 IO 口
PT2.5,PT2.6 作为 UART 通信口
REV1.1
第 57 页,共 107 页
3.6.4 波特率
波特率(K)
TCK=16MHz
定时器配置值
(TM4IN/TM5IN) (T4RATE/T5RATE)
实际波特率(K)
偏差(%)
定时器预分频
1.2
2.4
4.8
9.6
19.2
38.4
1.200
2.398
4.8076
9.6153
19.2307
38.4615
0.04
-0.08
0.16
0.16
0.16
0.16
0340H
01A0 H
00CF H
0067 H
0033 H
0019 H
000
000
000
000
000
000
TCK=8MHz
定时器配置值
波特率(K)
实际波特率(K)
偏差(%)
定时器预分频
(TM4IN/TM5IN) (T4RATE/T5RATE)
1.2
2.4
4.8
9.6
19.2
38.4
1.199
2.4038
4.8076
9.615
19.23
38.46
-0.08
0.16
0.16
0.16
0.16
0.16
01A0H
00CFH
0067H
0033H
0019H
000DH
000
000
000
000
000
000
注意:串口的最高波特率为 38.4KHz。
REV1.1
第 58 页,共 107 页
3.7 电源系统
3.7.1 Regulator
REFP
ADC
LDO
REF
VOUT
ENVS
VS
LDOS0
LDOS1
2.5V,2.8V,3.0V写
写
图 3-15 稳压电路
如图 3-15 所示,用于产生 VS 作为传感器和 ADC 的参考电压,通过选择 LDOS 可以使输出 2.5V,
2.8V,3.0V 可选。ENVS 作为 LDO 的使能信号。LDO 的控制寄存器标志是 ENVS 与 LDOS。输出电压是
VS。ENVB 作为整个模拟电源部分的使能信号,关断之后 ADC 和 charge pump 等将会不工作。
表 3-22 稳压电路寄存器列表
地
址
上电复位
值
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
名称
51H NETE
LDOS[1:0]
ENVS
ENVB
00000000
位地址
标识符
功能
VS 电压值选择
LDOS[1:0]
7:6
1
LDOS[1:0]
00
01
10
VS=3.0V
VS=2.8V
VS=2.5V
LDO 使能信号
ENVS
0
ENVS
ENVB
LDO 不使能
LDO 使能
1
模拟电源使能信号
ENVB
0
0
模拟电源不使能
模拟电源使能
1
操作:
设置 LDOS[1:0],选择 VS 值。
设置 ENVB 置高
设置 ENVS 置高
REV1.1
第 59 页,共 107 页
3.7.2 低电压比较器
SILB[2:0]
MUX
+
LBOUT
-
1.24V
AIN4
图 3-16 低电压比较功能模块框图
低电压比较器用于 DVDD 的低电压检测。CSU8RP1382 集成一个可产生 1/2DVDD 及 1/3DVDD 的分
压器。多路选择器用于选择不同的分压连接到低电压比较器的输入端。多路选择器的输出与 1.24V 进行
比较,它的控制寄存器标志是 SILB[2:0]及 ENLB,比较器的输出是 LBOUT,LBOUT 为只读。请看图
3-16。
表 3-23 低电压比较器寄存器列表
地
址
名称
Bit7
Bits6
Bit5
Bits4
Bit3
Bits2
Bit1
Bits0
上电复位值
19H
LVD
SILB[2:0]
ENLB
LBOUT
uuu00000
操作:
1. 设置寄存器标志位 ENLB,使能低电压比较器。
2. 比较器输出是 LBOUT。
位地址
标识符
功能
低电压比较器检测电压的选择
SILB[2:0]
000
001
010
011
100
101
110
111
检测电压
DVDD
DVDD
DVDD
DVDD
DVDD
DVDD
AIN4
满足条件
则
DVDD>2.4V
DVDD>2.5V
DVDD>2.6V
DVDD>2.7V
DVDD>2.8V
DVDD>3.0V
AIN4>1.24V
DVDD>3.6V
LBOUT=1
LBOUT=1
LBOUT=1
LBOUT=1
LBOUT=1
LBOUT=1
LBOUT=1
LBOUT=1
4:2
SILB[2:0]
DVDD
低电压检测使能信号
ENLB
1
0
ENLB
0
1
低电压检测不使能
低电压检测使能
低电压检测标志
参见 SILB[2:0]说明
LBOUT
REV1.1
第 60 页,共 107 页
3.7.3 Charge pump
Bit7
Bits6
Bit5
Bits4
Bit3
Bits2
Bit1
Bits0
地址
名称
上电复位值
18H
58H
CHPMP
LCDENR
CHP_VPP
LVR_EN
ERV
00000000
00000000
ENPMPL
位地址
标识符
功能
升压泵电压选项
CHP_VPP
0
7
CHP_VPP
LVR_EN
ERV
升压泵电压受 VLCD_X 选择
升压泵电压泵到烧录电压 7.5V
1
低电压复位使能信号
LVR_EN
0
6
低电压复位使能
1
低电压复位不使能
烧录电压检测标志
ERV
0
3
VPP 电压低于 7.5V
VPP 电压高于 7.5V
1
操作说明:
通过寄存器 CHP_VPP 选项,可以使用芯海科技专利技术把 VPP 电压升至 7.5V,此时必须把基准打开
(ENVB 置高),charge pump 使能信号打开(即 ENPMPL 置高),LCDREF[2:0]置为 000,VLCD_X[2:0]
置为 011,LCDEN 置为 0,否则无法达到预定电压。
不同应用情况下的寄存器配置和外置电容接法。
LCDEN
CHP_VPP
ENPMPL
功能
外置电容(VPP 引脚)
无需外接电容
0
0
1
1
0
1
1
0
0
0
0
X
X
1
1
0
1
0
0
0
0
0
1
1
1
0
1
LCD 关闭,不升压,不外部供电
烧录器烧录,LCD 关闭
内部供电显示,LCD 接 DVDD
烧录器烧录,LCD 显示
自烧录,LCD 关闭
做 VPP 电容使用
无需外接电容
做 VPP 电容使用
做 VPP 电容使用
做 VPP 电容使用
做 VLCD 电容使用
接外置电容
自烧录,LCD 显示
内部供电显示,LCD 接 Pump
Pump 关,LCD 关闭
Pump 开,LCD 关闭
接外置电容
REV1.1
第 61 页,共 107 页
3.8 SD 模数转换器(SD ADC)
CSU8RP1382 包含一个高性能的 PGA 和一个 24 位的 sigma delta 型的模数转换器(以下简称 SD
ADC)。其功能框图见图 3-17 PGA 和 ADC 的功能框图
VS
AIN0
Senso
r
+
_
Digital
Filter
ADC
Modulator
PGA
AIN1
AIN2
AIN3
MUX
GAIN[2:0]
Temperatu
re
SDFS[7:0]
ADEN
ADFEN
ADM[2:0]
SINL[2:0]
图 3-17 PGA 和 ADC 的功能框图
SD ADC 的基准由内部的基准电压 VS 提供,但是也可以由外部提供基准电压(此时需要关闭内部的
基准电压,将外部的基准电压接入 VS),同时还提供内部温度检测以及内部短路(此时需要与外部输入
断开,并接到 Vref)测试功能。
REV1.1
第 62 页,共 107 页
3.8.1SD ADC 寄存器说明
表 3-24 SD ADC 功能模块相关寄存器列表
地
址
上电复
位值
名称
Bit7
GIE
Bits6
Bit5
Bits4
Bit3
Bits2
Bit1
Bits0
06H
07H
4FH
50H
51H
52H
53H
54H
55H
INTF
INTE
NETA
NETC
NETE
ADCON
ADOH
ADOL
ADOLL
ADIF
ADIE
00000000
00000000
01010010
00010100
00011000
000uu000
00000000
00000000
00000000
SDFS[7:0]
GAIN[2:0]
SDIB[2:0]
SINL[2:0]
BUFEN
ENVS
ADM[2:0]
ADEN
ENVB
LDOS[1:0]
TEMP[1:0]
ADFEN
ADO[23:16]
ADO[15:8]
ADO[7:0]
NETA 寄存器(地址为 4FH)
R/W-0
Bit5
R/W-1
R/W-0
R/W-1
R/W-0
Sdfs[7:0]
R/W-0
Bit2
R/W-1
Bit1
R/W-0
Bit0
特性
NETA
Bit7
Bit6
Bit4
Bit3
Bit7-0
SDFS[7:0]:调制器采样时钟 FS 选择
表 3-25 采样时钟以及增益选择(当 ADC 的输出速率大于等于 1KHz 时)
SDFS
GAIN
采样时钟(MCK=8MHz)
500KHz
500KHz
500KHz
500KHz
500KHz
500KHz
500KHz
500KHz
增益
1
2
4
8
64
128
256
512
0011_0010
0011_0010
0011_0010
0011_0010
0011_0010
0011_0010
0011_0010
0011_0010
000
001
010
011
100
101
110
111
表 3-26 采样时钟以及增益选择(当 ADC 的输出速率小于 1KHz 时)
SDFS
GAIN
采样时钟(MCK=8MHz)
500KHz
500KHz
500KHz
500KHz
500KHz
500KHz
500KHz
500KHz
增益
1
2
4
8
64
128
256
512
0001_0010
0001_0010
0001_0010
0001_0010
0001_0010
0001_0010
0001_0010
0001_0010
000
001
010
011
100
101
110
111
REV1.1
第 63 页,共 107 页
NETC 寄存器(地址为 50H)
R/W-0
Bit5
R/W-0
Bit4
R/W-0
R/W-0
Sinl[2:0]
Bit6
R/W-0
Gain[2:0]
Bit3
R/W-0
Bit2
R/W-0
bufen
Bit1
R/W-0
ADEN
Bit0
特性
NETC
Bit7
Bit 7-5 SINL[2:0]:SD ADC 输入端的信号选择器
000 = ADC 输入端连接到 AIN0 和 AIN1,AIN0 连接 ADC 输入正端,AIN1 连接 ADC 输入负端
001 = ADC 输入端连接到 AIN2 和 AIN3,AIN2 连接 ADC 输入正端,AIN3 连接 ADC 输入负端
010 = ADC 输入端连接到内置温度传感器
011 = 输入端内短
100 = ADC 输入端连接到 AIN0 和 AIN1,AIN1 连接 ADC 输入正端,AIN0 连接 ADC 输入负端
101 = ADC 输入端连接到 AIN2 和 AIN3,AIN3 连接 ADC 输入正端,AIN2 连接 ADC 输入负端
110 = ADC 输入端连接到内置温度传感器
111 =输入端内短
其中片内集成温度传感器的输入端。
使用温度传感器时 ADC 增益值不能超过 8。
Bit4-2
GAIN[2:0]:SD ADC 增益选择
参见表 3-25 和表 3-26。
Bit1
Bit0
BUFEN:Buffer 使能信号
0 = Buffer 关闭
1 = Buffer 打开
ADEN:Sigma-delta ADC 使能信号
0 = SD ADC 关闭
1 = SD ADC 打开
NETE 寄存器(地址为 51H)
R/W-0
Bit5
R/W-0
特性
NETE
R/W-0
R/W-0
R/W-0
Bit3
U-0
R/W-0
ENVB
Bit1
R/W-0
ENVS
Bit0
LDOS[1:0]
SDIB[2:0]
Bit4
Bit7
Bit6
Bit2
Bit 7-6 LDOS[1:0]:VS 输出电压选择
00 = 3.0V
01 = 2.8V
10 = 2.5V
Bit 5-3 SDIB[2:0]:SD ADC 偏置电流选择
sdib<2:0>
电流配置
模式 1
模式 2
模式 3
模式 4
模式 5
模式 6
模式 7
模式 8
000
001
010(推荐)
011
100
101
110
111
REV1.1
第 64 页,共 107 页
Bit1
Bit0
ENVB:Bandgap 使能信号
0 = Bandgap 关闭
1 = Bandgap 打开
ENVS:VS 输出使能信号
0 = VS 关闭
1 = VS 打开
ADCON 寄存器(地址为 52H)
R/W-0
ADFEN
Bit5
U-0
Bit4
特性
ADCON
U-0
TEMP[1:0]
Bit7
U-0
U-0
U-0
R/W-0
ADM[2:0]
Bit1
R/W-0
Bit0
Bit6
Bit3
Bit2
Bit 7-6 TEMP[1:0]:REF 的负温度系数补偿
该寄存器用于补偿传感器本身有正温度系数偏差的情况,如果传感器本身无温度系数偏差,请选择 00 选
项。
TEMP <1:0>
00
不调整负温度系数
01
负温度系数*1(温度系数达到-50ppm)
负温度系数*2 (温度系数达到-100ppm)
负温度系数*4(温度系数达到-200ppm)
10(推荐使用)
11
Bit 5 ADFEN:数字滤波器使能信号
0 = 数字滤波器关闭
1 = 数字滤波器打开
Bit 2-0 ADM[2:0]:SD ADC 输出速率选择
选择方式见表 3-27
表 3-27 SD ADC 输出速率选择列表
ADM[2:0]
SD ADC 输出速率
FS/128
FS/256
FS/512
FS/1024
FS/2048
FS/4096
FS/8192
FS/16384
000
001
010
011
100
101
110
111
ADOH 寄存器(地址为 53H)
R-0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
特性
ADOH
ADO[23:16]
Bit7
Bit6
Bit5
Bit4
R-0
Bit3
Bit2
Bit1
Bit0
ADOL 寄存器(地址为 54H)
R-0
R-0
R-0
R-0
R-0
R-0
R-0
特性
ADOL
ADO[15:8]
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
REV1.1
第 65 页,共 107 页
ADOLL 寄存器(地址为 55H)
特性
ADOLL
R-0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
ADO[7:0]
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
Bit 23-0 ADO[23:0]:SD ADC 数字输出
ADO[23] = SD ADC 数字输出符号位。0 = 输出为正;1 = 输出为负。
ADO[22] = SD ADC 数字输出数据 bit 22
~
ADO[0] = SD ADC 数字输出数据 bit 0
3.8.2 ADC 操作说明
首先将内部基准 ENVB 打开,然后打开 VS(ENVS),然后配置好 SD ADC 的各种配置参数,打开
全局中断使能以及 SD ADC 中断使能,然后将 ADEN 打开,等待模拟部分建立完成以后,打开数字滤波
器(ADFEN),在刚开始工作时,数字滤波器需要三个数据转换周期的建立时间。
REV1.1
第 66 页,共 107 页
3.9 LCD Driver
LCD 驱动器有 32 个 segment 输出(SEG1-SEG32)和 6 个 common 输出(COM1-COM6)
3.9.1 LCD 控制模式
LCD 驱动器有 4 种控制模式:1/2duty,1/3duty, 1/4duty 及 1/6duty,设置寄存器标志 LCD_DUTY[1:0]
选择一种模式。
表 3-28 LCD 的 duty 选择列表
SEG1-32
LCD_DUTY[1:0]
控制模式
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
COM3
-
COM3
COM3
Bit1
Bit0
00
01
10
11
1/6duty
1/2duty
1/3duty
1/4duty
COM6
COM5
COM4
COM2
COM2
COM2
COM2
COM1
COM1
COM1
COM1
-
-
COM4
LCDCLK
1/6
duty
1/4
duty
1/3
duty
1/2
duty
图 3-18 LCD 的 duty 模式工作周期
REV1.1
第 67 页,共 107 页
3.9.2 LCD 帧频选择
LCD 的帧频率可以通过设置寄存器标志 LCDCKS[1:0]确定。CSU8RP1382 对 LCD 模块的输入时钟进
行分频以获得 LCDCK。
表 3-29 LCDSCK 选择列表
WDT_LCD
CSE_LCD
LCDSCK(KHz)
WDT
ECK
ICK/256
ECK
CLK_SEL
XTALSEL
时钟源(KHz)
WDT
1
0
0
0
0
X
1
0
0
0
X
X
0
1
1
X
X
X
0
32
32
32
32
32
32
32
ECK
ICK
ECK
ECK
8000
32
1
8000
ECK/256
表 3-30 LCDCLK 选择列表
Wdt_lcd
LCDSCKS
LCDCLK(KHz)
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
LCDSCK/32
LCDSCK/30
1
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
1.067
1.143
1.231
1.333
1.455
1.6
1.778
2
2.286
2.667
3.2
LCDSCK/28
LCDSCK/26
LCDSCK/24
LCDSCK/22
LCDSCK/20
LCDSCK/18
LCDSCK/16
LCDSCK/14
LCDSCK/12
LCDSCK/10
LCDSCK/8
LCDSCK/6
LCDSCK/4
LCDSCK/2
4
5.333
8
16
表 3-31 LCD 帧频选择列表
LCDCKS[ 1:0]
LCD 帧频率(LCDCK)
00
01
10
11
LCD 输入时钟频率/4
LCD 输入时钟频率/8
LCD 输入时钟频率/16
LCD 输入时钟频率/32
REV1.1
第 68 页,共 107 页
3.9.3 LCD 偏置电压
LCD 驱动器有 3 个偏置电压,V1、V2 及 V3,有 2 种电源模式:1/3bias、1/2bias。偏置电压的产生
电路采用内部电阻分压,优点是可以节省 V2 与 V1 pin 的外部电容,缺点是在打开 LCD 时分压电路上存
在静态功耗,静态功耗的大小与分压电阻的阻值有关,驱动能力较弱,分压电阻越大驱动能力越弱。
采用电阻分压的方式产生偏置电压
1/3bias 电源系统
V3
VLCD
200K
1uF
100K
50K
10K
V2
V1
LCDREF
LCDREF
LCDREF
200K
100K
50K
10K
200K
100K
50K
10K
图 3-19 LCD 的 1/3bias 电源系统电路连接图(电阻分压)
REV1.1
第 69 页,共 107 页
1/2bias 电源系统
V3
VLCD
200K
1uF
100K
50K
10K
V2
V1
LCDREF
200K
100K
50K
10K
LCDREF
200K
100K
50K
10K
LCDREF
图 3-20 LCD 的 1/2bias 电源系统电路连接图(电阻分压)
LCD 电源可以采用内部的电荷泵来提供,也可以采用内部的电源来提供,此时需要关闭内部的电荷
泵。当使用内部的电荷泵时,需要先将内部的基准源打开(由 ENVB 控制)。
REV1.1
第 70 页,共 107 页
3.9.4 LCD 驱动波形
LCD 驱动波形分为 A 和 B 两种波形,通过寄存器 LCDWS 来选择,其中 B 波形对于大尺寸的显示效
果更好。
Frame
Frame
V3
V2
V1
Vss
COM1
V3
V2
V1
Vss
COM2
COM3
V3
V2
V1
Vss
V3
V2
V1
Vss
COM4
SEG
V3
V2
V1
(1000)
Vss
V3
V2
V1
Vss
SEG
(0000)
1/4 duty, 1/3 bias
图 3-21 LCD 的 1/4duty 1/3bias 电源系统的时钟(A 波形)
REV1.1
第 71 页,共 107 页
Frame
Frame
V3
V2
V1
Vss
COM1
V3
V2
V1
Vss
COM2
COM3
COM4
V3
V2
V1
Vss
V3
V2
V1
Vss
V3
V2
V1
SEG
(100)
Vss
V3
V2
V1
Vss
SEG
(000)
1/3 duty, 1/3 bias
图 3-22 LCD 的 1/3duty 1/3bias 电源系统的时钟(A 波形)
REV1.1
第 72 页,共 107 页
Frame
Frame
V2
V1
Vss
COM1
V2
V1
Vss
COM2
COM3
V2
V1
Vss
V2
V1
Vss
COM4
V2
V1
Vss
SEG
(1000)
V2
V1
Vss
SEG
(0000)
1/4 duty, 1/2 bias
图 3-23 LCD 的 1/4duty 1/2bias 电源系统的时钟(A 波形)
REV1.1
第 73 页,共 107 页
Frame
Frame
V2
V1
Vss
COM1
V2
V1
Vss
COM2
COM3
V2
V1
Vss
V2
V1
Vss
COM4
V2
V1
Vss
SEG
(100)
V2
V1
Vss
SEG
(000)
1/3 duty, 1/2 bias
图 3-24 LCD 的 1/3duty 1/2bias 电源系统的时钟(A 波形)
REV1.1
第 74 页,共 107 页
Frame
Frame
V3
V2
V1
Vss
COM1
V3
V2
V1
Vss
COM2
COM3
COM4
V3
V2
V1
Vss
V3
V2
V1
Vss
V3
V2
V1
SEG
(1000)
Vss
V3
V2
V1
Vss
SEG
(0000)
1/4 duty, 1/3 bias
图 3-25 LCD 的 1/4duty 1/3bias 电源系统的时钟(B 波形)
REV1.1
第 75 页,共 107 页
Frame
Frame
V3
V2
V1
Vss
COM1
V3
V2
V1
Vss
COM2
COM3
COM4
V3
V2
V1
Vss
V3
V2
V1
Vss
V3
V2
V1
SEG
(100)
Vss
V3
V2
V1
Vss
SEG
(000)
1/3 duty, 1/3 bias
图 3-26 LCD 的 1/3duty 1/3bias 电源系统的时钟(B 波形)
REV1.1
第 76 页,共 107 页
Frame
Frame
V2
V1
Vss
COM1
V2
V1
Vss
COM2
COM3
V2
V1
Vss
V2
V1
Vss
COM4
V2
V1
Vss
SEG
(1000)
V2
V1
Vss
SEG
(0000)
1/4 duty, 1/2 bias
图 3-27 LCD 的 1/4duty 1/2bias 电源系统的时钟(B 波形)
REV1.1
第 77 页,共 107 页
Frame
Frame
V2
V1
Vss
COM1
V2
V1
Vss
COM2
COM3
V2
V1
Vss
V2
V1
Vss
COM4
V2
V1
Vss
SEG
(100)
V2
V1
Vss
SEG
(000)
1/3 duty, 1/2 bias
图 3-28 LCD 的 1/3duty 1/2bias 电源系统的时钟(B 波形)
REV1.1
第 78 页,共 107 页
3.9.5 LCD 寄存器说明
表 3-32 LCD 驱动器寄存器列表
上电复位
值
Bit7
Bits6
Bit5
Bits4
Bit3
Bits2
Bit1
Bits0
地址
名称
56H
57H
58H
59H
5AH
5BH
5CH
5DH
5EH
5FH
60H
61H
62H
63H
64H
65H
66H
67H
68H
69H
6AH
6BH
6CH
6DH
6EH
6FH
70H
71H
72H
73H
74H
75H
76H
77H
78H
LCD1
LCD2
LCD3
LCD4
LCD5
LCD6
LCD7
LCD8
SEG1[3:0]
SEG2[3:0]
uuuu0000
uuuu0000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uu000000
uuuuu000
00000000
00000000
SEG3[5:0]
SEG4[5:0]
SEG5[5:0]
SEG6[5:0]
SEG7[5:0]
SEG8[5:0]
SEG9[5:0]
SEG10[5:0]
SEG11[5:0]
SEG12[5:0]
SEG13[5:0]
SEG14[5:0]
SEG15[5:0]
SEG16[5:0]
SEG17[5:0]
SEG18[5:0]
SEG19[5:0]
SEG20[5:0]
SEG21[5:0]
SEG22[5:0]
SEG23[5:0]
SEG24[5:0]
SEG25[5:0]
SEG26[5:0]
SEG27[5:0]
SEG28[5:0]
SEG29[5:0]
SEG30[5:0]
SEG31[5:0]
SEG32[5:0]
LCD9
LCD10
LCD11
LCD12
LCD13
LCD14
LCD15
LCD16
LCD17
LCD18
LCD19
LCD20
LCD21
LCD22
LCD23
LCD24
LCD25
LCD26
LCD27
LCD28
LCD29
LCD30
LCD31
LCD32
LCDCN1
LCDCN2
LCDENR
LCDFC[1:0]
LCDSCKS[3:0]
LCDEN
WDT_LCD
LCDWS
CSE_LCD
VLCDX[2:0]
LCDREF[2:0]
LCD_DUTY[1:0]
LCDCKS[1:0]
LEVEL
ENPMPL
LCD1 寄存器
位地址
标识符
功能
LCD 驱动器控制信号
SEG1
SEG1[3]
SEG1[2]
SEG1[1]
SEG1[0]
COM4
3:0
SEG1
COM3
COM2
COM1
LCD3 寄存器
位地址
标识符
功能
LCD 驱动器控制信号
SEG3
SEG3[5]
SEG3[4]
SEG3[3]
SEG3[2]
SEG3[1]
SEG3[0]
COM6
COM5
COM4
COM3
COM2
COM1
5:0
SEG3
REV1.1
第 79 页,共 107 页
LCDCN1 寄存器
位地址
标识符
功能
省电模式选择
LCDFC[1:0]
00
01
10
11
节省 1/2
节省 1/4
节省 1/8
节省 1/16
6:5
LCDFC[1:0]
选择看门狗作为时钟源
参见 3.9.2LCD 帧频选择
选择外部低速晶振作为时钟源
参见 3.9.2LCD 帧频选择
VLCD 输出电压选择
4
3
WDT_LCD
CSE_LCD
VLCDX[2:0]
VLCD 输出电压
2.6V
2.8V
3.0V
3.2V
3.4V
4.2V
4.5V
4.7V
000
001
010
011
100
101
110
111
2:0
VLCDX[2:0]
LCDCN2 寄存器
位地址
标识符
功能
LCD 帧频选择
参见 3.9.2LCD 帧频选择
LCD 省电模式开关
LCDSP
7:4
LCDSCKS[3:0]
LCDSP
2
0
1
不打开
打开
LCD 分压电阻选择
LCDREF[1:0]
00
01
10
11
100Kohm
50Kohm
20Kohm
10Kohm
1:0
LCDREF[1:0]
REV1.1
第 80 页,共 107 页
LCDENR 寄存器
位地址
标识符
功能
LCD 帧频选择
LCDCKS[1:0]
LCD 的帧频
11
10
01
00
LCD 输入时钟频率的 1/32
LCD 输入时钟频率的 1/16
LCD 输入时钟频率的 1/8
LCD 输入时钟频率的 1/4
7:6
LCDCKS[1:0]
LCD 驱动器使能标志
LCDEN
0
1
5
4
3
LCDEN
LCDWS
LEVEL
LCD 驱动器不使能。LCD 的时钟被停止
LCD 驱动器使能。LCD 的时钟被启动
LCD 充电模式波形选择
LCDWS
0
1
LCD 波形
A 波形
B 波形
LCD 驱动器的偏置电压选择器
LEVEL
0
1
LCD 驱动器的偏置电压
1/3bias
1/2bias
LCD 驱动器控制模式(SEG duty 周期)
LCD_DUTY[1:0]
LCD 驱动器控制模式
1/6duty 周期模式
1/2duty 周期模式
1/3duty 周期模式
1/4duty 周期模式
00
01
10
11
2:1
LCD_DUTY[1:0]
ENPMPL
LCD charge pump 使能标志位
ENPMPL
0
0
1
LCD charge pump 关闭
LCD charge pump 打开
REV1.1
第 81 页,共 107 页
3.9.6 LCD 的操作步骤
1. 将段接口连接到 LCD 面板。
2. 设置寄存器标志 LEVEL 选择 LCD 驱动器电源系统。(0 = 1/3bias,1 = 1/2bias)
3. 设置 ENPMPL 使能 LCD 电荷泵。(需要先打开 ENVB)
4. 设置寄存器标志 LCDCKS[1:0]选择 LCD 的时钟频率(参见 LCD 帧频选择)
5. 设置寄存器标志 LCD_DUTY[1:0],选择控制模式。(SEG duty 周期)
表 3-33 LCD 的 duty 控制模式选择列表
LCD_DUTY[1:0]
控制模式
1/6
1/2
1/3
1/4
00
01
10
11
6. 置位 LCDEN 以使能 LCD 驱动器
REV1.1
第 82 页,共 107 页
3.10数据查表
电路要求:在在线烧录时,VPP(OTP 烧录电压引脚)脚接 7.5V 的烧录电压,或者使用芯片自带的 7.5V
产生电路。使用此功能时,需要作如下配置:CHP_VPP=1,LCDREF[1:0]=00,LCD_EN=0。同时推荐
硬件接法为:VPP 引脚上需接 1uF 电容到地。
表 3-34 在线烧录寄存器列表
地
址
上电复位
值
Bit7
Bits6
Bit5
Bits4
Bit3
Bits2
Bit1
Bits0
名称
05H WORK
工作寄存器
PAR[14:8]
PAR[7:0]
ERV
00000000
u1111111
11111111
00000000
0AH EADRH
0BH EADRL
18H CHPMP
EADRH , EADRL:提供 OTP 在线烧录或者在线读 OTP 的地址。用户程序存储器的地址范围为
0000H~406FH
Work: 提供 OTP 在线烧录时的烧录数据或者在线读 OTP 时的读出的数据
ERV:当 VPP 引脚电压达到烧录电压时,ERV 置高。
操作方式:
在线烧录 OTP 时
1. 检查 ERV 电压值是否达到烧录电压。
2. 将烧录地址写入 EADRH,EADRL 寄存器。
3. 将烧录的数据写入 work 寄存器。
4. 用在线烧录指令(TBLP)烧录。烧录指令中的时间选择(k)参见表 2-44
5. 延时 20ms,返回 1 进行下一次烧录
表 3-35 在线烧录时间选择寄存器
CLK_SEL
CLK_DIV
时钟源(KHz)
ICK
ICK
ICK
k(十进制)
XTALSEL
0
0
0
0
1
1
1
1
X
X
X
X
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
8000
8000
8000
8000
8000
8000
8000
8000
220
110
55
30
110
55
ICK
ECK
ECK
ECK
ECK
30
15
注:MCU 时钟选择外部低速晶振时无法使用在线烧录数据功能。
在线读 OTP 数据时
1. 将读 OTP 地址写入 EADRH,EADRL 寄存器。
2. 用在线读 OTP 指令(MOVP)读出 OTP 数据,执行该指令后,读出存放在 work 寄存器。
执行读操作时,在地址寄存器输入相应的值,之后执行 MOVP 指令,便可在相应的 OTP 地址的数据读入
到 WORK 寄存器中。执行一次读操作需要 3 个指令周期。
REV1.1
第 83 页,共 107 页
3.11烧录模块
烧写器的接口:
A p p lica tio n P C B
V p p
V D D
V S S
P D A
P C L
T o a p p lica tio n circu it
Iso la tio n circu it
图 3-29 烧写器接口图
表 3-36 接口说明
端口名称
VPP
VDD
VSS
型式
说明
备注
输入
烧录电源
电源正端
电源负端
输入
输入
PDA
PCL
输入/输出
输入
PT2.0 端口,数据信号
PT2.1 端口,时钟信号
REV1.1
第 84 页,共 107 页
3.12代码选项
Bit-7
Bit-6
CLKDIV[1:0]
Bit-5
Bit-4
Bit-3
RESET_PIN[1:0]
Bit-2
XTALSEL
Bit-1
Bit-0
SECURITY
位地址
标识符
功能
指令周期选择
CLK_DIV[1:0]
指令周期
00
01
10
11
指令周期=4 个时钟周期
指令周期=8 个时钟周期
指令周期=16 个时钟周期
指令周期=32 个时钟周期
7:6
CLKDIV[1:0]
复位引脚选择
RESET_PIN[1:0]
00
01
11
功能
--
OP_O
作为复位引脚
4:3
RESET_PIN[1:0]
复位引脚选择
XTALSEL
0
2
0
XTALSEL
SECURITY
CPUCLK 选择外部低速晶振
CPUCLK 选择外部高速晶振
1
代码保密位
0:使能代码加密
1:禁止代码加密
3.13Metch 特性
SFR 寄存器 METCH<7:0> 地址 0x7EH
R/W-0
R/W-0
N/A
Bit4
名称
R/W-0
IO_CUR
Bit7
R/W-0
TC_RC
Bit6
R/W-0
N/A
Bit3
R/W-0
N/A
Bit2
R/W-0
N/A
Bit1
R/W-0
N/A
Bit0
LDO_SEL
Bit5
MATCH
Bit7
IO_CUR:PT1.5\PT1.6\PT1.7 输出电流控制位
0 = 驱动电流 3mA
1 =驱动电流 6mA
Bit6 TC_RC:内部 RC 时钟 TC 补偿控制位
1=TC 不补偿
0=TC 补偿
Bit5 LDO_SEL:内部 LDO 选择
1=LDO2
0=不推荐配置
REV1.1
第 85 页,共 107 页
4 MCU 指令集
表 4-1 MCU 指令集
指令
操作
[W]←[W]+k
[PC] ←[PC]+1+[W]
[Destination] ←[f]+[W]
[Destination] ←[f]+[W]+C
[W]←[W] AND k
[Destination] ← [W] AND [f]
[f<b>]←0
指令周期
1
2
1
1
1
1
1
标志位
C,DC,Z
~
C,DC,Z
C,DC,Z
Z
Z
~
ADDLW k
ADDPCW
ADDWF f,d
ADDWFC f,d
ANDLW k
ANDWF f,d
BCF f,b
BSF f,b
[f<b>]←1
1
~
BTFSC f,b
BTFSS f,b
CALL k
Jump if[f<b>]=0
Jump if[f<b>]=1
Push PC+1 and Goto K
[f]←0
1/2
1/2
2
~
~
~
Z
CLRF f
1
CLRWDT
COMF f,d
DAW
DECF f,d
DECFSZ f,d
GOTO k
Clear watch dog timer
[f]←NOT([f])
Decimal Adjust W
[Destination] ←[f] -1
[Destination] ←[f] -1,jump if the result is zero
PC←k
1
1
1
1
1/2
2
~
Z
C,DC
Z
~
~
HALT
CPU Stop
1
~
INCF f,d
INCFSZ f,d
IORLW k
IORWF f,d
MOVFW f
MOVLW k
MOVP
[Destination] ←[f]+1
[Destination] ←[f]+1,jump if the result is zero
[W]←[W] OR k
[Destination] ← [W] OR [f]
[W]←[f]
1
1/2
1
1
1
Z
~
Z
Z
~
~
~
[W]←k
Read table list
1
3
MOVWF k
NOP
[f]←[W]
No operation
1
1
~
~
POP
PUSH
RETFIE
RETLW k
RETURN
RLF f,d
RRF f,d
SLEEP
Pop W and Status
Push W and Status
Pop PC and GIE =1
Return and W=k
2
2
2
2
2
1
1
1
~
~
~
~
~
C,Z
C,Z
PD
Pop PC
[Destination<n+1>] ←[f<n>]
[Destination<n-1>] ←[f<n>]
Stop OSC
SUBLW k
SUBWF f,d
SUBWFC f,d
SWAPF f,d
TBLP k
XORLW k
XORWF f,d
参数说明:
[W] ← k – [W]
1
1
1
1
k+1
1
1
C,DC,Z
C,DC,Z
C,DC,Z
~
~
Z
Z
[Destinnation] ← [f]– [W]
[Destinnation] ← [f]– [W]-1+C
Swap f
[EADRH,EADRL] ←WORK
[W]←[W] XOR k
[Destination] ← [W] XOR [f]
f:数据存储器地址(000H ~1FFH)
W:工作寄存器
k: 立即数
REV1.1
第 86 页,共 107 页
d:目标地址选择: d=0 结果保存在工作寄存器, d=1: 结果保存在数据存储器 f 单元
b:位选择(0~7)
[f]:f 地址的内容
PC:程序计数器
C:进位标志
DC:半加进位标志
Z:结果为零标志
PD:睡眠标志位
TO:看门狗溢出标志
WDT:看门狗计数器
MCU 指令集描述
1
ADDLW
加立即数到工作寄存器
ADDLW K (0<=K<=FFH)
指令格式
操作
(W)<—(W)+K
标志位
描述
C,DC,Z
工作寄存器的内容加上立即数 K 结果保存到工作寄存器中
1
周期
例子
ADDLW 08H
在指令执行之前:
W=08H
在指令执行之后:
W=10H
2
ADDPCW
将 W 的内容加到 PC 中
ADDPCW
指令格式
操作
(PC)<—(PC)+1+(W)
当(W)<=7FH
(PC)<—(PC)+1+(W)-100H 其余
没有
标志位
描述
将地址 PC+1+W 加载到 PC 中
2
周期
例子 1
ADDPCW
在指令执行之前:
W=7FH ,PC=0212H
指令执行之后:
PC=0292H
例子 2
ADDPCW
在指令执行之前:
W=80H ,PC=0212H
指令执行之后:
PC=0193H
例子 3
ADDPCW
在指令执行之前:
W=FEH ,PC=0212H
指令执行之后:
PC=0211H
REV1.1
第 87 页,共 107 页
3
ADDWF
加工作寄存器到 f
ADDWF f,d 0<=f<=1FFH d=0,1
指令格式
操作
[目标地址]<—(f)+(W)
标志位
描述
C,CD,Z
将 f 的内容和工作寄存器的内容加到一起。
如果 d 是 0,结果保存到工作寄存器中。
如果 d 是 1,结果保存到 f 中。
1
周期
例子 1
ADDWF f 0
指令执行之前:
f=C2H W=17H
在指令执行之后
f=C2H W=D9H
指令执行之前
f=C2H W=17H
指令执行之后
f=D9H W=17H
例子 2
ADDWF f 1
4
ADDWFC
将 W f 和进位位相加
指令格式
操作
ADDWFC f,d 0<=f<=1FFH d=0,1
(目标地址)<—(f)+(W)+C
C,DC,Z
将工作寄存器的内容和 f 的内容以及进位位相加
当 d 为 0 时结果保存到工作寄存器
当 d 为 1 时结果保存到 f 中
1
标志位
描述
周期
例子
ADDWFC f,1
指令执行之前
C=1 f=02H W=4DH
指令执行之后
C=0 f=50H W=4DH
5
ANDLW
工作寄存器与立即数相与
ANDLW K 0<=K<=FFH
指令格式
操作
(W)<—(W) AND K
Z
标志位
描述
将工作寄存器的内容与 8bit 的立即数相与,结果保存到工作寄存器中。
1
周期
例子
ANDLW 5FH
在指令执行之前
W=A3H
在指令执行之后
W=03H
REV1.1
第 88 页,共 107 页
6
ANDWF
将工作寄存器和 f 的内容相与
ANDWF f,d 0<=f<=1FFH d=0,1
(目标地址)<—(W) AND (f)
Z
指令格式
操作
标志位
描述
将工作寄存器的内容和 f 的内容相与
如果 d 为 0 结果保存到工作寄存器中
如果 d 为 1 结果保存到 f 中
1
周期
例子 1
ANDWF f,0
在指令执行之前
W=0FH f=88H
在指令执行之后
W=08H f=88H
在指令执行之前
W=0FH f=88H
在指令执行之后
W=0FH f=08H
例子 2
ANDWF f,1
7
BCF
清除 f 的某一位
指令格式
操作
BCF f,b 0<=f<=1FFH 0<=b<=7
(f[b])<—0
无
标志位
描述
F 的第 b 位置为 0
1
周期
例子
BCF FLAG 2
指令执行之前:
FLAG=8DH
指令执行之后:
FLAG=89H
8
BSF
F 的 b 位置 1
指令格式
操作
BSF f,b 0<=f<=1FFH 0<=b<=7
(f[b])<—1
无
标志位
描述
将 f 的 b 位置 1
1
周期
例子
BSF FLAG 2
在指令执行之前
FLAG=89H
在指令执行之后
FLAG=8DH
9
REV1.1
第 89 页,共 107 页
BTFSC
指令格式
操作
如果 bit 测试为 0 则跳转
BTFSC f,b 0<=f<=1FFH 0<=b<=7
Skip if (f[b])=0
标志位
描述
无
如果 f 的 bit 位是 0,下一条取到的指令将被丢到,然后执行一条空指令组成
一个两周期的指令。
周期
无跳转则为 1 个指令周期,否则 2 个指令周期
例子
NODE BTFSC FLAG 2
OP1:
OP2:
在程序执行以前
PC=address(NODE)
指令执行之后
If(FLAG[2])=0
PC=address(OP2)
If(FLAG[2])=1
PC=address(OP1)
10
BTFSS
如果 bit 测试为 1,则跳转
BTFSS f,b 0<=f<=1FFH 0<=b<=7
Skip if (f[b])=1
指令格式
操作
标志位
描述
无
如果 f 的 bit 位是 1,下一条取到的指令将被丢到,然后执行一条空指令组成
一个两周期的指令。
周期
无跳转则为 1 个指令周期,否则 2 个指令周期
例子
NODE BTFSS FLAG 2
OP1:
OP2:
在程序执行以前
PC=address(NODE)
指令执行之后
If(FLAG[2])=0
PC=address(OP1)
If(FLAG[2])=1
PC=address(OP2)
11
CALL
子程序调用
CALL K 0<=K<=1FFFH
指令格式
操作
(top stack)<—PC+1
PC<—K
无
标志位
描述
子程序调用,先将 PC+1 压入堆栈,然后把立即数地址下载到 PC 中。
2
周期
12
REV1.1
第 90 页,共 107 页
CLRF
清除 f
CLRF f 0<=f<=1FFH
指令格式
操作
(f)<—0
Z
标志位
描述
将 f 的内容清零
1
周期
例子
CLRF WORK
在指令执行之前
WORK=5AH
在指令执行之后
WORK=00H
*注。当 clrf status 寄存器时,标志位 Z 不会置高
13
CLRWDT
清除看门狗定时器
CLRWDT
指令格式
操作
看门狗计数器清零
标志位
描述
无
清除看门狗定时器
1
周期
例子
CLRWDT
指令执行之后
WDT=0
14
COMF
f 取反
指令格式
操作
COMF f,d 0<=f<=1FFH d=0,1
(目的地址)<—NOT(f)
Z
标志位
描述
将 f 的内容取反,
当 d 为 0 时,结果保存到工作寄存器中,
当 d 为 1 时,结果保存到 f 中。
1
周期
例子
COMF f,0
在指令执行之前
W=88H,f=23H
在指令执行之后
W=DCH,f=23H
在指令执行之前
W=88H,f=23H
在指令执行之后
W=88H,f=DCH
例子 2
COMF f,1
REV1.1
第 91 页,共 107 页
15
DAW
十进制调整 W 寄存器
DAW
指令格式
操作
十进制调整 W 寄存器
C,DC
标志位
描述
一般与加法一起使用。
如果低半字节的值大于 9 或 DC 为 1 时,低半字节加 6;
如果高半字节的值大于 9 或 C 为 1 时,高半字节加 6
1
周期
例子
在 DAW 指令执行之前
W=25+39 =64=5EH
在指令执行之后
W=64H
若 W=25;
ADDLW 39
DAW
16
DECF
f 减 1
指令格式
操作
DECF f,d 0<=f<=1FFH d=0,1
(目的地址)<—(f)-1
Z
标志位
描述
F 的内容减 1
当 d 为 0 时,结果保存到工作寄存器中
当 d 为 1 时,结果保存到 f 中。
1
周期
例子
DECF f,0
在指令执行之前
W=88H f=23H
在指令执行之后
W=22H f=23H
在指令执行之前
W=88H f=23H
在指令执行之后
W=88H f=22H
例子 2
DECF f,1
17
DECFSZ
f 减 1 如果为 0 则跳转
指令格式
操作
DECFSZ f,d 0<=f<=1FFH d=0,1
(目的地址)<—(f)-1,如果结果为 0 跳转
无
标志位
描述
f 的内容减 1。
如果 d 为 0,结果保存到工作寄存器中。
如果 d 为 1,结果保存到 f 中
如果结果为 0,下一条已经取到的指令将被丢掉,然后插入一条 NOP 指令组
成一个两个周期的指令。
周期
无跳转则为 1 个指令周期,否则 2 个指令周期
例子
Node DECFSZ FLAG,1
OP1:
OP2:
在指令执行之前
PC=address(Node)
在指令执行之后
(FLAFG)=(FLAG)-1
If(FLAG)=0
PC=address(OP2)
If(FLAG)!=0
PC=address(OP1)
REV1.1
第 92 页,共 107 页
18
GOTO
无条件跳转
GOTO K 0<=K<=1FFFH
指令格式
操作
PC<—K
无
标志位
描述
立即地址载入 PC
2
周期
19
HALT
停止 CPU 时钟
HALT
指令格式
操作
CPU 停止
无
标志位
描述
CPU 时钟停止,晶振仍然工作,CPU 能够通过内部或者外部中断重启。
1
周期
20
INCF
f 加 1
指令格式
操作
INCF f,d 0<=f<=1FFH d=0,1
(目的地址)<—(f)+1
Z
标志位
描述
f 加 1
如果 d 为 0,结果保存到工作寄存器中
如果 d 为 1,结果保存到 f 中。
1
周期
例子
INCF f,0
在指令执行之前
W=88H f=23H
在指令执行之后
W=24H f=23H
在指令执行之前
W=88H f=23H
在指令执行之后
W=88H f=24H
例子 2
INCF f,1
REV1.1
第 93 页,共 107 页
21
INCFSZ
f 加 1,如果结果为 0 跳转
INCFSZ f,d 0<=f<=1FFH d=0,1
(目的地址)<—(f)+1 如果结果为 0 就跳转
无
指令格式
操作
标志位
描述
f 的内容加 1。
如果 d 为 0,结果保存到工作寄存器中。
如果 d 为 1,结果保存到 f 中
如果结果为 0,下一条已经取到的指令将被丢掉,然后插入一条 NOP 指令组
成一个两个周期的指令。
周期
无跳转则为 1 个指令周期,否则 2 个指令周期
例子
Node INCFSZ FLAG,1
OP1:
OP2:
在指令执行之前
PC=address(Node)
在指令执行之后
(FLAFG)=(FLAG)+1
If(FLAG)=0
PC=address(OP2)
If(FLAG)!=0
PC=address(OP1)
22
IORLW
工作寄存器与立即数或
IORLW K 0<=K<=FFH
指令格式
操作
(W)<—(W)|K
Z
标志位
描述
立即数与工作寄存器的内容或。结果保存到工作寄存器中。
1
周期
例子
IORLW 85H
在指令执行之前
W=69H
在指令执行之后
W=EDH
23
IORWF
f 与工作寄存器或
IORWF f,d 0<=f<=1FFH d=0,1
(目的地址)<—(W)|(f)
Z
指令格式
操作
标志位
描述
f 和工作寄存器或
当 d 为 0 时,结果保存到工作寄存器中
当 d 为 1 时,结果保存到 f 中
1
周期
例子
IORWF f,1
在指令执行前
W=88H f=23H
在指令执行后
W=88H f=ABH
REV1.1
第 94 页,共 107 页
24
MOVFW
传送到工作寄存器
MOVFW f 0<=f<=FFH
指令格式
操作
(W)<—(f)
无
标志位
描述
将数据从 f 传送到工作寄存器
1
周期
例子
MOVFW f
在指令执行之前
W=88H f=23H
在指令执行之后
W=23H f=23H
25
MOVLW
将立即数传送到工作寄存器中
MOVLW K 0<=K<=FFH
指令格式
操作
(W)<—K
无
标志位
描述
将 8bit 的立即数传送到工作寄存器中
1
周期
例子
MOVLW 23H
在指令执行之前
W=88H
在指令执行之后
W=23H
26
MOVP
读查表区数据
MOVP
指令格式
操作
把 EPROM 数据读到 WORK 中
无
标志位
描述
把地址为 EADRH/EADRL 的查表区数据读到 WORK 中
2
周期
例子
MOVP
在指令执行之前
EADRH=04H,EADRL=00H
地址为 0400H 的查表区数据位 34H
在指令执行之后
W=34H
27
MOVWF
将工作寄存器的值传送到 f 中
MOVWF f 0<=f<=1FFH
指令格式
操作
(f)<—(W)
无
标志位
描述
将工作寄存器的值传送到 f 中
1
周期
例子
MOVWF f
在指令执行之前
W=88H f=23H
在指令执行之后
W=88H f=88H
REV1.1
第 95 页,共 107 页
28
NOP
无操作
NOP
指令格式
操作
无操作
无
标志位
描述
无操作
1
周期
29
PUSH
把 work 和 status 寄存器入栈保护
PUSH
指令格式
操作
(top stack)<—work/status
无
标志位
描述
把 work 和 status 寄存器的值做入栈处理,支持 4 级堆栈,不同于 PC 堆栈;
其中状态寄存器不包括 LVD36,LVD24,PD 和 TO。
2
周期
30
POP
把 work 和 status 寄存器出栈处理
POP
指令格式
操作
(Top Stack)=>work/status
Pop Stack
无
标志位
描述
把当前栈顶的值做出栈处理,分别更新 work 和 status 寄存器,支持 4 级堆
栈,不同于 PC 堆栈;其中状态寄存器不包括 LVD36,LVD24,PD 和 TO。
2
周期
31
RETFIE
从中断返回
RETFIE
(Top Stack)=>PC
Pop Stack
指令格式
操作
1=>GIE
无
标志位
描述
PC 从堆栈顶部得到,然后出栈,设置全局中断使能位为 1
2
周期
32
RETLW
返回,并将立即数送到工作寄存器中
RETLW K 0<=K<=FFH
指令格式
操作
(W)<—K
(Top Stack)=>PC
Pop Stack
无
标志位
描述
将 8bit 的立即数送到工作寄存器中,PC 值从栈顶得到,然后出栈
2
周期
REV1.1
第 96 页,共 107 页
33
RETURN
从子程序返回
RETURN
(Top Stack)=>PC
Pop Stack
无
指令格式
操作
标志位
描述
PC 值从栈顶得到,然后出栈
2
周期
34
RLF
带进位左移
指令格式
操作
RLF f,d 0<=f<=1FFH d=0,1
(目标地址[n+1])<—(f[n])
(目标地址[0])<—C
C<—(f[7])
标志位
描述
C,Z
F 带进位位左移一位
如果 d 为 0,结果保存到工作寄存器
如果 d 为 1,结果保存到 f 中
1
周期
例子
RLF f,1
在指令执行之前
C=0 W=88H f=E6H
在指令执行之后
C=1 W=88H f=CCH
35
RRF
带进位右移
指令格式
操作
RRF f,d 0<=f<=1FFH d=0,1
(目标地址[n-1])<—(f[n])
(目标地址[7])<—C
C<—(f[0])
C
标志位
描述
F 带进位位右移一位
如果 d 为 0,结果保存到工作寄存器
如果 d 为 1,结果保存到 f 中
1
周期
例子
RRF f,0
在指令执行之前
C=0 W=88H f=95H
在指令执行之后
C=1 W=4AH f=95H
36
SLEEP
晶振停止
SLEEP
指令格式
操作
CPU 晶振停止
PD
标志位
描述
CPU 晶振停止。CPU 通过外部中断源重启
1
周期
REV1.1
第 97 页,共 107 页
37
SUBLW
立即数减工作寄存器的值
SUBLW K 0<=K<=FFH
指令格式
操作
(W)<—K-(W)
C,DC,Z
标志位
描述
8bit 的立即数减去工作寄存器的值,结果保存到工作寄存器中
1
周期
例子
SUBLW 02H
在指令执行之前
W=01H
在指令执行之后
W=01H C=1(代表没有借位) Z=0(代表结果非零)
在指令执行之前
例子 2
SUBLW 02H
W=02H
在指令执行之后
W=00H C=1(代表没有借位) Z=1(代表结果为零)
在指令执行之前
例子 2
SUBLW 02H
W=03H
在指令执行之后
W=FFH C=0(代表有借位) Z=0(代表结果非零)
38
SUBWF
f 的值减工作寄存器的值
SUBWF f,d 0<=f<=1FFH d=0,1
(目标地址)<—(f)-(W)
C,DC,Z
f 的值减去工作寄存器的值。
如果 d 为 0,结果保存到工作寄存器
如果 d 为 1,结果保存到 f 中
1
指令格式
操作
标志位
描述
周期
例子
SUBWF f,1
在指令执行之前
f=33H W=01H
在指令执行之后
f=32H C=1 Z=0
在指令执行之前
f=01H W=01H
在指令执行之后
f=00H C=1 Z=1
在指令执行之前
f=04H W=05H
在指令执行之后
f=FFH C=0 Z=0
例子 2
SUBWF f,1
例子 3
SUBWF f,1
REV1.1
第 98 页,共 107 页
39
SUBWFC
带借位的减法
指令格式
操作
SUBWFC f,d 0<=f<=1FFH d=0,1
(目标地址)<—(f)-(W)-1+C
C,DC,Z
f 的值减去工作寄存器的值
如果 d 为 0,结果保存到工作寄存器
如果 d 为 1,结果保存到 f 中
1
标志位
描述
周期
例子
SUBWFC f,1
在指令执行之前
W=01H f=33H C=1
在指令执行之后
f=32H C=1 Z=0
在指令执行之前
W=01H f=02H C=0
在指令执行之后
f=00H C=1 Z=1
在指令执行之前
W=05H f=04H C=0
在指令执行之后
f=FEH C=0 Z=0
例子 2
SUBWFC f,1
例子 3
SUBWFC f,1
40
SWAPF
交换寄存器的值
SWAPF f,d 0<=f<=1FFH d=0,1
(des[3:0])<—f[7:4]
(des[7:4])<—f[3:0]
无
指令格式
操作
标志位
描述
把 f 寄存器的高 4 位数据给目标寄存器的低 4 位;
把 f 寄存器的低位数据给目标寄存器的高 4 位
d 为 1 时,f 寄存器为目标寄存器;否则,w 寄存器为目标寄存器
1
周期
例子
SWAPF f,1
在指令执行之前
f=ACH
在指令执行之后
f=CAH
REV1.1
第 99 页,共 107 页
41
TBLP
将 OTP 的{EADRH,EADRL}的地址写入{WORK}中的数据
TBLP k
指令格式
操作
OTP({EADRH,EADRL})<—({WORK})
无
标志位
描述
将 OTP 的{EADRH,EADRL}的地址写入{WORK}中的数据
与工作时钟有关
周期
例子
TBLP 100
在指令执行之前
OTP memory:
17H= FFH
EADRH =01H
EADRL = 17H
WORK = 05H
在指令执行之后
OTP memory:
117H = 05H
42
XORLW
工作寄存器的值与立即数异或
XORLW K 0<=K<=FFH
指令格式
操作
(W)<—(W)^K
Z
标志位
描述
8bit 的立即数与工作寄存器的值异或,结果保存在工作寄存器中
1
周期
例子
XORLW 5FH
在指令执行之前
W=AcH
在指令执行之后
W=F3H
43
XORWF
f 的值与工作寄存器的值异或
XORWF f,d 0<=f<=1FFH d=0,1
(目标地址)<—(W)^(f)
Z
指令格式
操作
标志位
描述
F 的值与工作寄存器的值异或,
当 d 为 0 时,结果保存到工作寄存器中
当 d 为 1 时,结果保存到 f 中
1
周期
例子
XORWF f,1
在指令执行之前
W=ACH f=5FH
在指令执行之后
f=F3H
REV1.1
第 100 页,共 107 页
5 电气特性
5.1 极限值
表 5-1 CSU8RP1382 极限值
参数
范围
单位
0~3.6
V
电源 DVDD,AVDD
-0.3~DVDD+0.3
-0.3~AVDD+0.3
-40~+85
V
引脚输入电压
ºC
ºC
工作温度
存贮温度
-55~+150
焊接温度,时间
220ºC,10 秒
5.2 直流特性
(DVDD ,AVDD= 3.3V,TA = 25ºC,如无其他说明则都是此条件)
表 5-2 CSU8RP1382 直流特性
符号
DVDD,
AVDD
参数
测试条件
最小值
典型值
最大值
单位
工作电源
2.4
3
3.6
V
CPUCLK=2MHz
CPUCLK=1MHz
CPUCLK=500KHz
CPUCLK=250KHz
Sigma-delta ADC +仪用
放大器
800
600
400
200
uA
uA
uA
uA
IDD1
MCU 模块功耗
IDD2
IDD3
电源电流 2
电源电流 3
2
8
mA
uA
内部振荡器关闭
ECK1 = 32768Hz
内部晶振打开
15
IDD4
IDD5
350
1
uA
uA
Halt 模式下电源电流
睡眠模式下电源电流
睡眠指令
1.5
表 5-3 晶振模块特性
符号
VRC
IRC
参数
内置振荡器工作电压范围
内置振荡器电流
测试条件
最小值
2.4
典型值
3
100
最大值
3.6
单位
V
uA
FRC
TCRC
内置振荡器时钟频率
内置振荡器温度系数
内置振荡器电源电压抑制比
内置振荡器起振时间
看门狗工作电压范围
看门狗电流
7.84
8.00
150
8.16
MHz
ppm/℃
%/V
ms
TA = -40~85ºC
3.3
VWDT
IWDT
2.4
29
3
2
3.6
3
V
uA
FWDT
TCWDT
看门狗时钟频率
32
0.1
1.4
35
KHz
%/℃
%/V
ms
看门狗温度特性
TA = -40~85ºC
看门狗电源电压抑制比
看门狗起振时间
表 5-4 IO 模块特性
符号
VIH
VIL
参数
测试条件
PT1,2(除 PT1.5~1.7)
PT1.5~1.7
最小值
0.7VDD
0.5VDD
典型值
最大值
单位
V
数字输入高电平
数字输入低电平
0.3VDD
V
PT1,2(除 PT1.5~1.7)
REV1.1
第 101 页,共 107 页
PT1.5~1.7
PT1,2 Vin = 0
VOH=VDD-0.3V
PT1,2 (除 PT1.5、
PT1.6、PT1.7)
VOH=VDD-0.3V&
METCH[7]=1
PT1.5、PT1.6、PT1.7
VOL=0.3V
PT1,2 (除 PT1.5、
PT1.6、PT1.7)
VOL=0.3V&
METCH[7]=1
0.5VDD
IPU
IOH
上拉电流
30
3
uA
高电平输出电流
mA
mA
6
3
6
IOL
低电平输出电流
PT1.5、PT1.6、PT1.7
表 5-5 bandgap 模块
符号
VBG
参数
Bandgap 电压
测试条件
最小值
典型值
1.2
最大值
单位
V
IBG
60
uA
Bandgap 电流
TCVBG
Bandgap 电压温度系数
TA = -40~80ºC
50
100
ppm/ºC
表 5-6 低电压检测
测试条件
符号
VLVD
ILVD
参数
工作电压范围
工作电流
最小值
2.4
典型值
最大值
3.6
单位
V
uA
3
3
VREF
TCLVD
外部输入电压比较
比较电压温度特性
1.2
50
V
TA = -40~80ºC
SILB=000
SILB=001
SILB=010
SILB=011
SILB=100
SILB=101
SILB=110
100
ppm/℃
2.4
2.5
2.6
2.7
2.8
3.0
3.6
VLVD
V
低电压检测电压
表 5-7 LCD 模块
测试条件
符号
VLCD
ILCD
参数
工作电压范围
工作电流
最小值 典型值 最大值
3.6
单位
V
uA
2.4
3
LCDREF=000(200Kohm)
VLCDX=000
8
2.6
2.8
3.0
3.2
4.5
VLCDX=001
VLCDO
VLCD 输出电压
DVDD=2.4
VLCDX=010
VLCDX=011
VLCDX=100
V
表 5-8 charge pump
符号
VCHP
ICHP
参数
工作电压范围
工作电流
测试条件
最小值 典型值 最大值
3.6
单位
V
mA
V
2.4
3
0.2
7.5
VCHPO
VDD=2.4V
VPP 电压
表 5-9 LDO 参数
参数
条件
最小值
典型值
最大值
单位
REV1.1
第 102 页,共 107 页
2.4
3.3
V
工作电压范围
工作电流
120
2.5
2.8
3
uA
LDOS[1:0]= 10
LDOS[1:0]= 01
LDOS[1:0]= 00
2.45
2.75
2.55
2.85
3.05
100
参考电压
VS
V
2.95
参考电压温度系数
TA = -40~80ºC
50
ppm/℃
AVDD=3.3V VS=3V
(负载 350ohm)
AVDD=2.6V VS=2.4V
(负载 350ohm)
AVDD=3.3V VS=3V
(没有负载)
8
5
mA
VS 输出电流
12
REV1.1
第 103 页,共 107 页
5.3 ADC 的特性
表 5-10 Sigma Delta ADC 性能指标
(Vref = 3 V,TA = 25ºC,如无其他说明则都是此条件)
参数
模拟输入范围
条件
最小值
典型值
最大值
单位
AGND-0.1
AVDD+0.1
V
V
满幅输入电压
(AIN+) - (AIN-)
±VREF/PGA
模拟输入
系统性能
100
1
打开buffer
关闭buffer
无失码
MΩ
差分输入阻抗
分辨率
24
Bits
uV
2
增益=1
输入噪声(rms)
增益=128
增益=128
增益=128
增益=128
增益=128
增益=128
31
±0.003
10
60
nV
% of FS
uV
积分线性度
失调误差
0.03
0.1
失调误差漂移
增益误差
TA = -40~80ºC
TA = -40~80ºC
uV/℃
%
增益误差漂移
5
10
ppm/℃
(Vref =2.5 V,TA = 25ºC,如无其他说明则都是此条件)
参数
条件
最小值
典型值
最大值
单位
AGND-0.1
AVDD+0.1
V
模拟输入范围
满幅输入电压
(AIN+) - (AIN-)
±VREF/PGA
V
模拟输入
系统性能
打开buffer
关闭buffer
无失码
100
差分输入阻抗
分辨率
MΩ
1
24
Bits
uV
2
2.2
90
增益=1
输入噪声(rms)
68
nV
增益=128
增益=128
增益=128
增益=128
增益=128
增益=128
积分线性度
失调误差
±0.003
10
% of FS
uV
失调误差漂移
增益误差
TA = -40~80ºC
TA = -40~80ºC
0.03
1
uV/℃
%
5
10
增益误差漂移
ppm/℃
REV1.1
第 104 页,共 107 页
6
PAD 坐标
6.1 PIN 分布
54 53 52
50 49 48 47 46 45 44 43 42 41
51
40
38
39
1
2
3
4
SEG2/COM6
37
SEG20
NC
SEG1/COM5
COM4
NC
COM3
COM2
NC
5
6
NC
NC
COM1
AGND
AVDD
7
8
NC
NC
CSU8RP1382D
9
VS
NC
REFP
10
11
NC
NC
AIN0
AIN1
AIN2
AIN3
12
13
NC
NC
14
36
35
34
VLCD/VPP
PT2.7/BZ
REFN
15
NC
NC
PT2.6/RX
27
16
17
18 19
20
21 22 23 24 25 26
28 29 30 31 32
33
66pin-dice
X= 1990um Y=1990um
Pad 大小 70um*75um
其中芯片左上方有“1” 字样
REV1.1
第 105 页,共 107 页
6.2 PIN 坐标
序号
1
2
3
4
5
6
7
8
符号
中心坐标(um)(X:Y) 序号
符号
DGNDIO
PT2.6
PT2.7
VPP
NC
NC
NC
NC
NC
NC
NC
NC
NC
NC
NC
NC
SEG<20>
SEG<19>
SEG<18>
SEG<17>
SEG<16>
SEG<15>
SEG<14>
SEG<13>
SEG<12>
SEG<11>
SEG<10>
SEG<9>
SEG<8>
SEG<7>
SEG<6>
SEG<5>
SEG<4>
SEG<3>
中心坐标(um)(X:Y)
1906:52
1920:209
1920:307
1920:416
1920:654
1920:750
1920:845
1920:940
1920:1035
1920:1135
1920:1230
1920:1325
1920:1425
1920:1520
1920:1615
1920:1710
1920:1805
1766:1920
1670:1920
1574:1920
1478:1920
1382:1920
1285:1920
1188:1920
1093:1920
996:1920
SEG<2>
SEG<1>
COM<4>
COM<3>
COM<2>
COM<1>
AGND
AVDD
VS
70:1770
70:1673
70:1578
70:1482
70:1386
70:1290
70:1186
70:1086
70:986
70:896
70:793
70:698
70:602
70:504
70:409
70:314
80:72
33
34
35
36
9
10
11
12
13
14
15
REFP
AIN0
AIN1
AIN2
AIN3
REFN
NC
NC
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
ERC
181:72
277:72
375:72
476:72
574:72
684:72
782:72
878:72
974:72
1083:72
1188:72
1287:72
1383:72
1478:72
1575:72
1671:72
1768:72
PT1.0
PT1.1
PT1.2
PT1.3
PT1.4
PT1.5
PT1.6
PT1.7
DVDD
DGND
PT2.0
PT2.1
PT2.2
PT2.3
PT2.4
PT2.5
900:1920
804:1920
707:1920
612:1920
515:1920
418:1920
324:1920
229:1920
芯片尺寸:X=1990um,Y=1990um PAD 大小:70um*75um
REV1.1
第 106 页,共 107 页
7 产品命名规则
7.1 产品型号说明
CS
U
X
X
X
X
XXX
X
XX
X
E
封装
材料
E=PB Free封装
温度
范围
N=0~70℃
C=-40~85℃
I=-40~105℃
M=-40~125℃
封装
类型
见下表
空白=第1版
A=第2版
B=第3版
版本
产品
定位
型号
1=高精度ADC类
2=IO类
3=ADC类
功能
分类
4=LCD类
5=ADC+LCD类
7=Energy类
F=Flash
E=EEPROM
P=OTP
ROM
类型
MCU
内核
R=RISC
D=8051核
MCU
位数
8=8位
16=16位
32=32位
产品
分类
U=MCU
公司
名称
Chipsea
标示符
BD
DI
封装类型
Bonding
DIP
SD
SDIP
SO
SOP
SS
TS
QF
SSOP
TSSOP
QFP
LQ
TQ
QN
LQFP
TQFP
QFN
REV1.1
第 107 页,共 107 页
相关型号:
©2020 ICPDF网 联系我们和版权申明