CSU8RP3429 [CHIPSEA]
12 - bit ADC 8 - bit RISC OTP MCU;型号: | CSU8RP3429 |
厂家: | Core Technology (Shenzhen) Co., Ltd. |
描述: | 12 - bit ADC 8 - bit RISC OTP MCU |
文件: | 总100页 (文件大小:2000K) |
中文: | 中文翻译 | 下载: | 下载PDF数据表文档文件 |
CSU8RP3427/CSU8RP3429 用户手册
带12-bit ADC 的8 位RISC OTP MCU
REV 1.4
通讯地址:深圳市南山区蛇口南海大道1079号花园城数码大厦A座9楼
邮政编码:518067
公司电话:+(86 755)86169257
真:+(86 755)86169057
传
公司网站:www.chipsea.com
微 信 号:芯海科技
微信二维码:
Rev.1.4
第1 页,共100 页
CSU8RP3427/CSU8RP3429
版本历史
历史版本.
REV 1.0
修改内容
版本日期
2013-11-19
2014-5-21
初始版本
REV 1.1
不支持MOVP指令
去除第68页
指令周期=2 个时钟周期
REV 1.2
2014-8-12
更新5.18 1.45V 内部参考电压温度特性小节
更新5.21 4.0V 内部参考电压温度特性小节
在PIN配置中增加PT1.3的使用注意说明
ADC章节示例程序笔误修改
REV 1.3
REV 1.4
2015-4-3
2015-4-22
Rev.1.4
第2 页,共100 页
CSU8RP3427/CSU8RP3429
目 录
版本历史................................................................................................................................................................. 2
目 录...................................................................................................................................................................... 3
1 产品概述......................................................................................................................................................... 6
1.1 功能描述................................................................................................................................................. 6
1.2 主要特性................................................................................................................................................. 6
1.3
PIN 配置.................................................................................................................................................. 7
2 标准功能......................................................................................................................................................... 9
2.1
CPU 核..................................................................................................................................................... 9
存储器........................................................................................................................................... 11
状态寄存器................................................................................................................................... 13
SFR ................................................................................................................................................ 14
2.1.1
2.1.2
2.1.3
2.2 时钟系统............................................................................................................................................... 16
2.2.1
2.2.2
2.2.3
2.2.4
2.2.5
2.2.6
2.2.7
2.2.8
2.2.9
概述............................................................................................................................................... 16
时钟框图....................................................................................................................................... 16
寄存器........................................................................................................................................... 17
内部高速RC 时钟........................................................................................................................ 18
内部低速WDT 时钟.................................................................................................................... 18
外部高速晶振时钟....................................................................................................................... 18
外部低速晶振时钟....................................................................................................................... 18
外部RC 振荡器............................................................................................................................ 18
外部时钟源................................................................................................................................... 18
2.3 复位系统............................................................................................................................................... 19
2.3.1
2.3.2
2.3.3
2.3.4
上电复位....................................................................................................................................... 20
看门狗复位................................................................................................................................... 20
掉电复位....................................................................................................................................... 20
外部硬件复位............................................................................................................................... 21
2.4 中断....................................................................................................................................................... 22
2.4.1
2.4.2
2.4.3
2.4.4
2.4.5
2.4.6
2.4.7
2.4.8
2.4.9
2.4.10
中断使能寄存器........................................................................................................................... 23
中断标志寄存器........................................................................................................................... 24
外部中断0 .................................................................................................................................... 25
外部中断1 .................................................................................................................................... 25
AD 中断溢出................................................................................................................................. 27
定时器0 溢出中断........................................................................................................................ 27
定时/计数器2 溢出中断.............................................................................................................. 27
定时/计数器3 溢出中断.............................................................................................................. 27
比较器0 中断................................................................................................................................ 27
PUSH 和POP 处理....................................................................................................................... 27
2.5 定时器0 ................................................................................................................................................ 28
2.6
I/O PORT............................................................................................................................................... 30
PT1 口............................................................................................................................................ 30
PT3 口............................................................................................................................................ 34
PT5 口............................................................................................................................................ 35
2.6.1
2.6.2
2.6.3
3 增强功能....................................................................................................................................................... 37
3.1 HALT 和SLEEP 模式.............................................................................................................................. 37
3.2 看门狗(WDT) ....................................................................................................................................... 39
Rev.1.4
第3 页,共100 页
CSU8RP3427/CSU8RP3429
3.3 定时/计数器2 ....................................................................................................................................... 41
3.3.1
3.3.2
3.3.3
寄存器说明................................................................................................................................... 41
蜂鸣器........................................................................................................................................... 43
PWM.............................................................................................................................................. 43
3.4 定时/计数器3 ....................................................................................................................................... 45
3.4.1
3.4.2
3.4.3
寄存器说明................................................................................................................................... 45
蜂鸣器........................................................................................................................................... 47
PWM.............................................................................................................................................. 47
3.5 模数转换器(ADC)........................................................................................................................... 49
3.5.1
3.5.2
3.5.3
3.5.4
3.5.5
3.5.6
3.5.7
3.5.8
寄存器说明................................................................................................................................... 49
转换时间....................................................................................................................................... 53
使用内部参考电压的校准方法................................................................................................... 56
AD 失调电压校正......................................................................................................................... 57
数字比较器................................................................................................................................... 59
内部测量VDD 的电压................................................................................................................. 61
温度传感器................................................................................................................................... 61
运算放大器2 ................................................................................................................................ 62
3.6 比较器/运算放大器.............................................................................................................................. 63
3.6.1
3.6.2
3.6.3
比较器/运算放大器...................................................................................................................... 63
比较器参考电压........................................................................................................................... 65
比较器中断................................................................................................................................... 65
VDD 电压自检...................................................................................................................................... 66
4*5 LCD ................................................................................................................................................ 66
3.7
3.8
3.9 输入逻辑电平电压配置....................................................................................................................... 67
3.10
3.11
3.12
输出电流配置................................................................................................................................... 67
烧录模块........................................................................................................................................... 68
代码选项........................................................................................................................................... 69
4
MCU 指令集................................................................................................................................................. 70
5 电气特性....................................................................................................................................................... 86
5.1 极限值................................................................................................................................................... 86
5.2 直流特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件).................................................... 86
5.3
ADC 特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)............................................. 88
5.4 温度传感器特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)........................................ 89
5.5 比较器/运算放大器的直流特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)............... 89
5.6 运算放大器2 的直流特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)......................... 90
5.7
5.8
5.9
LCD 直流特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)............................................ 90
32MHZ IHRC 时钟频率特性................................................................................................................ 91
16MHZ IHRC 时钟频率特性................................................................................................................ 91
5.10 8MHZ IHRC 时钟频率特性.................................................................................................................. 91
5.11 4MHZ IHRC 时钟频率特性.................................................................................................................. 92
5.12 2MHZ IHRC 时钟频率特性.................................................................................................................. 92
5.13 32KHZ WDT 时钟频率特性................................................................................................................. 93
5.14 2.0V 掉电复位温度特性....................................................................................................................... 93
5.15 2.4V 低电压复位温度特性................................................................................................................... 93
5.16 3.0V 低电压复位温度特性................................................................................................................... 94
5.17 3.6V 低电压复位温度特性................................................................................................................... 94
5.18 1.45V 内部参考电压温度特性............................................................................................................. 95
5.19 2.0V 内部参考电压温度特性............................................................................................................... 95
5.20 3.0V 内部参考电压温度特性............................................................................................................... 95
5.21 4.0V 内部参考电压温度特性............................................................................................................... 96
Rev.1.4
第4 页,共100 页
CSU8RP3427/CSU8RP3429
6 封装图........................................................................................................................................................... 97
6.1
6.2
SOP-16PIN ............................................................................................................................................. 97
SSOP-20PIN ........................................................................................................................................... 98
7 单片机产品命名规则................................................................................................................................... 99
7.1 产品型号说明....................................................................................................................................... 99
7.2 命名举例说明..................................................................................................................................... 100
7.3 产品印字说明..................................................................................................................................... 100
Rev.1.4
第5 页,共100 页
CSU8RP3427/CSU8RP3429
1 产品概述
1.1 功能描述
CSU8RP3427/CSU8RP3429 是带12-bitADC 的8 位RISC MCU,内置4K×16 位OTP 程序存储器。
1.2 主要特性
高性能的RISC CPU
所有 IO 可配置上拉电阻,同时 PT5.0 和
PT1.4 还支持下拉电阻配置。
8 位单片机MCU
PT3.3,PT5.0 和 PT5.1 可配置为大驱动输
出,高达40mA@5V
4KX16 位OTP 程序存储器
256 字节数据存储器(SRAM)
41 条单字指令
输入逻辑电平电压可配置,在 5V 工作电压
下可支持与3V 器件通信
8 级PC 存储堆栈
VDD 过压自检(4.8V,4.9V,5.4V 和5.6V)
4*5 LCD 驱动,1/4duty,1/2bias
8 级PUSH 和POP 存储堆栈
振荡器
专用微控制器的特性
上电复位(POR)
上电复位和硬件复位延迟定时器(98ms)
内带 2.0V、2.4V、3.0V 和 3.6V 低电压复位
(LVR)
内带 IHRC(32/16/8/4/2MHz)和 ILRC(32KHz)
振荡器,IHRC 精度为±1%@5V,25ºC,
ILRC精度为±2%@5V,25ºC
外部32768Hz 晶振(RTC)或
2MHz~16MHz 晶振或
定时器0
—可编程预分频的8 位的定时计数器
定时/计数器2
ERC 8M@5V DC,ERC 4M@3V DC
外设特性
—可编程预分频的12 位的分频器
定时/计数器3
—可编程预分频的12 位的分频器
扩展型看门狗定时器(32KHz WDT)
— 可编程的时间范围
13/17 位双向I/O 口,1 位输入口
2 路蜂鸣器输出,2 路PWM 输出
5 个内部中断,2 个外部中断
8 个具有唤醒功能的输入口
5/8 路12bitADC
CMOS 技术
工作电压范围
— 2.2V~5.5V@fcpu=4MHz(指令周期)
工作温度范围
— -40~85ºC(工业级)
— 内 部 1.45V 、 2.0V 、 3.0V 、 4.0V 、
VDD、外部输入六种参考电压选择
— 带数字比较器
— 带温度传感器
低功耗特性
1 个内置模拟比较器
MCU 工作电流
— 正常模式1mA@4MHz(工作电压3V)
— 正常模式10uA@32KHz(工作电压3V)
— 休眠模式下的电流小于1μA
2 个模拟运算放大器,分别支持内部
PGA=16 和PGA=32 配置
提供 1 个在1.45V,2.0V,3.0V 和4.0V 之间
可选的参考电压,2.0V 和 3.0V 精度为
±1%@5V,25ºC
封装
SOP16
SSOP20
应用范围
低电压检测(LVD)引脚,内部提供 2.4V、
3.0V、3.6V 电压检测
移动电源
小家电
6 个开漏输出(P1.1、P5.0~P5.4;外部上拉
电压不高于VDD+0.3V)
堆 Wake-8/12位 12位
栈
ADC 比较器 温度
up 定时器 PWM/Buzzer(Ch*Bit) /运放 传感器
VDD
过压自检
√
型号
ROM RAM IO
LCD
/
封装
CSU8RP3427 4K*16 256 8 14 4
CSU8RP3429 4K*16 256 8 18 8
1/2
1/2
2
2
5*12
8*12
1/2
1/2
√
SOP16
√ 4*5 √
SSOP20
Rev.1.4
第6 页,共100 页
1.3 PIN 配置
16
15
VSS
1
2
3
4
5
6
7
VDD
P1.1/T3/INT1/XIN/
PCL
P3.4/AIN4
P3.3/AIN3
P1.2/INT1/XOUT/PDA
P1.3/INT1/RST/VPP
P1.4/INT1
14
13
P3.2/AIN2/C2N
P3.1/AIN1/C2P
P3.0/AIN0/VREF
P5.0/PWM2/BZ2
P5.1/PWM3/BZ3
12
11
P5.4/C0P
P5.3/C0N
10
9
P5.2/CO
8
VSS
20
19
VDD
1
P1.1/T3/INT1/XIN/
P1.0/T2/INT0/
SEG0
2
3
4
5
6
7
8
SEG1/PCL
P1.2/INT1/XOUT/
P3.4/AIN4
18
17
SEG2/PDA
P1.3/INT1/RST/VPP
P3.3/AIN3
P1.4/INT1/COM0
16
15
14
P3.2/AIN2/C2N
P3.1/AIN1/C2P
P3.0/AIN0/VREF
P1.5/INT1/C1P/AIN5/
COM1
P1.6/INT1/C1N/AIN6/C
OM2
P1.7/INT1//C1/AIN7
/COM3
P5.0/PWM2/BZ2
13
12
P5.4/C0P/SEG3
9
P5.1/PWM3/BZ3
P5.2/CO
P5.3/C0N/SEG4
11
10
图1 配置图
表1 引脚说明表
管脚名称
VSS
输入/ 管脚 描述
输出
P
序号
1
2
地
P1.1 /T3/INT1/XIN/SEG1/PCL I/O
IO,具有开漏输出功能;定时/计数器3 外部输入;外
部中断1 输入,具有唤醒功能;外置晶振输入;烧录
时钟线;LCD 驱动SEG1 输出
Rev.1.4
第7 页,共100 页
CSU8RP3427/CSU8RP3429
P1.2/INT1/XOUT/SEG2/PDA
I/O
I
3
4
5
6
IO;外部中断1 输入,具有唤醒功能;外置晶振输
出;LCD 驱动SEG2 输出;烧录数据线;
普通输入口(默认开上拉);外部中断1 输入,具有唤
醒功能;复位输入;烧录电压
P1.3/INT1/ RST /VPP
P1.4/INT1 /COM0
I/O
I/O
IO;外部中断1 输入,具有唤醒功能;LCD 驱动
COM0 输出
P1.5/INT1 /C1P/AIN5/COM1
P1.6/INT1 /C1N/AIN6/COM2
P1.7/INT1/ C1/AIN7/COM3
IO;外部中断1 输入,具有唤醒功能;运放1 的正端
输入;ADC 输入0(模拟通道时,ADC 优先,比较器
次之);LCD 驱动COM1 输出
I/O
I/O
7
8
IO;外部中断1 输入,具有唤醒功能;运放1 的负端
输入;ADC 输入6(模拟通道时,ADC 优先,比较器
次之);LCD 驱动COM2 输出
IO;外部中断1 输入,具有唤醒功能;运放1 的输
出;ADC 输入7(模拟通道时,ADC 优先,比较器次
之);LCD 驱动COM3 输出
P5.4/C0P/SEG3
P5.3/C0N/SEG4
I/O
I/O
9
IO,具有开漏输出功能;比较器的输入端/运放的正端
输入;LCD 驱动SEG3 输出
10
IO,具有开漏输出功能;比较器的输入端/运放的负端
输入;LCD 驱动SEG4 输出
P5.2/CO
I/O
I/O
11
12
IO,具有开漏输出功能;比较器/运放的输出
IO(默认开上拉),具有开漏输出功能;PWM3 输出;
蜂鸣器输出
P5.1/PWM3/BZ3
P5.0/PWM2/BZ2
I/O
13
IO(默认开下拉),具有开漏输出功能;PWM2 输出;
蜂鸣器输出
P3.0/AIN0/VREF
P3.1/AIN1/C2P
P3.2/AIN2/C2N
P3.3/AIN3
I/O
I/O
I/O
I/O
I/O
I/O
14
15
16
17
18
19
IO;ADC 输入0;ADC 参考电压输入
IO;ADC 输入1;运放的正端输入
IO;ADC 输入2;运放的负端输入
IO;ADC 输入3
P3.4/AIN4
IO;ADC 输入4
P1.0/T2/INT0/SEG0
IO;定时/计数器2 外部输入;外部中断0 输入,具有
唤醒功能;LCD 驱动SEG0 输出
电源
VDD
P
20
注:PT1.3 输入信号的上升沿时间小于10us时,对电源有干扰,建议在使用AD测量的情况下该输入
口作为电平检测或按键中断口。
Rev.1.4
第8 页,共100 页
CSU8RP3427/CSU8RP3429
2 标准功能
2.1 CPU 核
Program Bus
(12 bits)
OTP
Program
Counter
SRAM
Data memory
256 bytes
Program Memory
4K*16bits
Program Data
Address
Mux
Stack Register
8 Level
(16 bits)
Instruction
Register
Data
Mux
FSR
Instruction
Decoder
Work
Register
Control information
ALU
Status
Register
图2
CSU8RP3427/CSU8RP3429 CPU 核的功能模块图
椐CPU 核的功能模块图,它主要包含7 个主要寄存器及2 个存储器单元。
Rev.1.4
第9 页,共100 页
CSU8RP3427/CSU8RP3429
表2 MCU架构说明
模块名称
描述
程序计数器
此寄存器在CPU 的工作周期间起到很重要的作用,它记录CPU 每个周期处理程
序存储器中指令的指针。在一个CPU 周期中,程序计数器将程序存储器地址
(12bits),指令指针推送到程序存储器,然后自动加1 以进行下一次周期。
堆栈寄存器是用来记录程序返回的指令指针。当程序调用函数,程序计数器会将
指令指针推送到堆栈寄存器。在函数执行结束之后,堆栈寄存器会将指令指针送
回到程序计数器以继续原来的程序处理。
堆栈寄存器
指令寄存器
程序计数器将指令指针(程序存储器地址)推送到程序存储器,程序存储器将程
序存储器的数据(16bits)推送到指令寄存器。
CSU8RP3427/CSU8RP3429 的指令是16bits,包括3 种信息:直接地址,立即
数及控制信息。
直接地址(8bits):数据存储器的地址。CPU 能利用此地址来对数据存储器
进行操作。
立即数(8bits):CPU 通过ALU 利用此数据对工作寄存器进行操作。
控制信息:它记录着ALU 的操作信息。
指令译码器
指令寄存器将控制信息推送到指令译码器以进行译码,然后译码器将译码后的信
息发送到相关的寄存器。
算术逻辑单元
算术逻辑单元不仅能完成8 位二进制的加,减,加1,减1 等算术计算,还能对8
位变量进行逻辑的与,或,异或,循环移位,求补,清零等逻辑运算。
工作寄存器是用来缓存数据存储器中某些存储地址的数据。
当CPU 利用ALU 处理寄存器数据时,如下的状态会随着如下顺序变化:PD,
TO,DC,C 及Z。
工作寄存器
状态寄存器
文件选择寄存器
程序存储器
在CSU8RP3427/CSU8RP3429 的指令集中,FSR 是用于间接数据处理(即实现间
接寻址)。用户可以利用FSR 来存放数据存储器中的某个寄存器地址,然后通过
IND 寄存器对这个寄存器进行处理。
CSU8RP3427/CSU8RP3429 内带4K×16 位的OTP 作为程序存储器。由于指令的
操作码(OPCODE)是16bits,用户最多只能编程4K 的指令。程序存储器的地址
总线是12bits,数据总线是16bits。
数据存储器
CSU8RP3427/CSU8RP3429 内带256bytes 的SRAM 作为数据存储器。此数据存储
器的地址总线是8bits,数据总线是8bits。
Rev.1.4
第10 页,共100 页
CSU8RP3427/CSU8RP3429
2.1.1 存储器
(1)程序存储器
程序存储器主要用于指令的存储,在CSU8RP3427/CSU8RP3429 中,该程序存储器是4K*16bit 的程
序OTP,对于程序员来说,该存储器只读,不可以写入。系统的reset 地址为0x000,中断入口地址为
0x004,需要注意的一点就是所有的中断共用同一个中断入口地址。
0x0000
Reset Vector
Program Counter
0x0004
Interrupt Vector
Stack Level1
Stack Level2
Stack Level3
Stack Level4
Stack Level5
Stack Level6
Stack Level7
Stack Level8
0x0FF6
0x0FF7
保留,用于内部参考电压校准
0x0FFF
图3
程序存储器
Rev.1.4
第11 页,共100 页
CSU8RP3427/CSU8RP3429
(2)数据存储器
数据存储器主要用于程序运行过程中,全局以及中间变量的存储。该存储器分为三个部分。地址
的00H 至07H 是系统特殊功能寄存器,例如间接地址,间接地址指针,状态寄存器,工作寄存器,中
断标志位,中断控制寄存器。地址的08H 至7FH 外设特殊功能寄存器,例如IO 端口,定时器,系统
特殊功能寄存器和外设特殊功能寄存器是用寄存器实现,而通用数据存储器是RAM 实现,可以读出也
可以写入。
表3 数据存储器地址分配
数据存储器
起始地址
0x00
0x08
结束地址
0x07
0x7F
系统特殊功能寄存器
外设特殊功能寄存器
通用数据存储器
0x80
0x17F
通过IND0 以及FSR0 这两个寄存器可以对数据存储器以及特殊功能寄存器进行间接访问。当从间
接地址寄存器(IND0)读入数据时,MCU 实际上是以FSR0 中的值作为地址去访问数据存储器得到
数据。当向间接寄存器(IND0)写入数据时,MCU 实际上是以FSR0 中的值作为地址去访问数据存
储器将值存入该地址。其访问方式见。
Data Memory
FSR0
00H
IND0
80H
80H
97H
97H
FFH
图4 间接地址访问
BSR 寄存器(地址为08h)
R/W-0
IRP0
Bit7
U-0
U-0
U-0
U-0
U-0
U-0
Bit1
U-0
特性
BSR
Bit6
Bit5
Bit4
Bit3
Bit2
Bit0
Bit 7 IRP0:IND0 间接页寻址位
1 = 间接寻址IND0 时,访问后256byte 地址
0 = 间接寻址IND0 时,访问前256byte 地址
Rev.1.4
第12 页,共100 页
CSU8RP3427/CSU8RP3429
2.1.2 状态寄存器
状态寄存器包含ALU的算术状态及复位状态。状态寄存器类似于其它寄存器,可以作为任何指令
的目标寄存器。如果状态寄存器是某条指令的目标寄存器,而且影响到Z,DC或C位,那么对这三个
位的写是不使能。这些位是由器件逻辑进行置位或清零。TO及PD位是不可写的。
状态寄存器(地址为04h)
特性
R-0
R-0
U-0
R-0
PD
R-0
TO
R/W-0
DC
R/W-0
C
R/W-0
Z
STATUS
METCH2
LVD36
LVD24
LVD30
Bit6
Bit7
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
Bit 7 LVD36:3.6V LVD工作电压标志位
1:表明芯片工作电压低于3.6V
0:表明芯片工作电压高于3.6V
Bit 6 LVD24:2.4V LVD工作电压标志位
1:表明芯片工作电压低于2.4V
0:表明芯片工作电压高于2.4V
Bit 4
Bit 3
Bit 2
PD:掉电标志位。通过对此位写0清零,sleep后置此位
1:执行SLEEP指令后
0:上电复位后或硬件复位或CLRWDT指令之后
TO:看门狗定时溢出标志。通过对此位写0清零,看门狗定时溢出设置此位
1:看门狗定时溢出发生
0:上电复位后或硬件复位或CLRWDT指令后或SLEEP指令后
DC:半字节进位标志/借位标志
用于借位时,极性相反
1:结果的第4位出现进位溢出
0:结果的第4位不出现进位溢出
Bit 1 C: 进位标志/借位标志
用于借位时,极性相反
1:结果的最高位(MSB)出现进位溢出
0:结果的最高位(MSB)不出现进位溢出
Z:零标志
Bit 0
1:算术或逻辑操作是结果为0
0:算术或逻辑操作是结果不为0
METCH2寄存器(地址为7dh)
特性
U-0
R-0
LVD30
Bit6
R/W-0
U-0
U-0
U-0
U-0
U-0
METCH2
Bit7
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
Bit 6 LVD30:3.0V LVD工作电压标志位
1:表明芯片工作电压低于3.0V
0:表明芯片工作电压高于3.0V
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值 ‘1’= 位已设置
‘0’= 位已清零
X = 不确定位
Rev.1.4
第13 页,共100 页
CSU8RP3427/CSU8RP3429
2.1.3 SFR
特殊功能寄存器(SFR)包含系统专用寄存器和辅助专用寄存器。
系统专用寄存器用于完成CPU 核的功能,由间接地址,间接地址指针,状态寄存器,工作寄存
器,中断标志及中断控制寄存器。
辅助专用寄存器是为辅助功能而设计,比如I/O 口,定时器,信号的条件控制寄存器。
表4 寄存器列表
地
址
上电复位
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
值
00hIND0
以FSR0中内容作为地址的数据存储器中的数据
间接数据存储器的地址指针0
xxxxxxxx
00000000
xxu00000
00000000
02hFSR0
04hSTATUS
05hWORK
LVD36
LVD24
PD
TO
DC
C
Z
工作寄存器
06hINTF
TM2IF
TM2IE
TM0IF
TM0IE
SRADIF
SRADIE
E1IF
E1IE
E0IF u0u00u00
E0IE 00u00u00
0uuuuuuu
07hINTE
GIE
08hBSR
IRP0
0AhEADRH
0BhEADRL
0ChEDATH
0DhWDTCON
0EhWDTIN
0FhTM0CON
10hTM0IN
11hTM0CNT
16hMCK
PAR[11:8]
uuuu0000
PAR[7:0]
00000000
EDATH[7:0]
00000000
WDTEN
T0EN
WTS[2:0]
T0SEL[1:0]
0uuuu000
WDTIN[7:0]
11111111
T0RATE[2:0]
T0RSTB
0000u100
11111111
00000000
00101100
TM0IN[7:0]
TM0CNT[7:0]
CST
CST_IN
CST_WDT
EO_SLP
CPUCLK_SEL[1:0]
CLKSEL[1:0]
17hTM2CON
18hTM2IN
19hTM2CNT
1ahTM2R
T2EN
T2RATE[2:0]
T2CKS
TM2IN[7:0]
T2RSTB
T3RSTB
T2OUT PWM2OUT 00000100
11111111
TM2CNT[7:0]
TM2R[7:0]
00000000
00000000
1bhTM3CON
1chTM3IN
1dhTM3CNT
1ehTM3R
T3EN
T3RATE[2:0]
T3CKS
T3OUT PWM3OUT 00000100
11111111
TM3IN[7:0]
TM3CNT[7:0]
TM3R[7:0]
PT1[7:0]
00000000
00000000
20hPT1
xxxxxxxx
21hPT1EN
22hPT1PU
PT1EN[7:4]
PT1EN[2:0]
E0M[1:0]
0000u000
00001000
00000000
uuuxxxxx
uuu00000
uuu00000
00000000
uuuxxxxx
uuu00000
uuu00010
uuu00000
uuuuu000
uuu0uuuu
uuu0uuuu
0uuuuuuu
0uuuuuuu
uuuu1111
uuuu0000
uuuu0000
uuuu1111
uuuu0000
PT1PU[7:0]
23hPT1CON0 PT11OD
28hPT3
PT1W1[3:0]
E1M
PT3[4:0]
29hPT3EN
PT3EN[4:0]
PT3PU[4:0]
2ahPT3PU
2bhPT3CON
30hPT5
PT3CON[7:0]
PT5[4:0]
PT5EN[4:0]
PT5PU[4:0]
PT5OD[4:0]
31hPT5EN
32hPT5PU
33hPT5CON
38hPT1CON1
3chINTF2
PT1W2[2:0]
TM3IF
TM3IE
3dhINTE2
3ehINTF3
CMP0IF
CMP0IE
3fhINTE3
40hTM2INH
41hTM2CNTH
42hTM2RH
TM2IN[11:8]
TM2CNT[11:8]
TM2R[11:8]
43hTM3INH
44hTM3CNTH
TM3IN[11:8]
TM3CNT[11:8]
Rev.1.4
第14 页,共100 页
CSU8RP3427/CSU8RP3429
45hTM3RH
TM3R[11:8]
CMP0_R
uuuu0000
00000000
00000000
0000uu00
0u000000
00000000
uuuu0000
00000000
uuuu0000
10000000
50hSRADCON0 SROFT_SEL[1:0]
51hSRADCON1 SRADEN SRADS
52hSRADCON2
SRADACKS[1:0]
OFTEN
TEM_CMP_CH
ENOV
SRADCKS[1:0]
VREFS[1:0]
CALIF
OFFEX
CHS[3:0]
SRCK_DLY CHEX
CHOP_EN
DEM_EN
REF_SEL[1:0]
53h TEMCON
54h SRADL
55h SRADH
56h SROFTL
57h SROFTH
5ahTRIM_REF
5chCV_CTL
TS_EN
CHOP_CK[1:0]
SRAD[7:0]
TS_CH[2:0]
SRAD[11:8]
SROFT[11:8]
SROFT[7:0]
TRIM_REF[7:0]
SV_SEL[1:0]
SV_OUT u00uuuu0
6ahCMPCON0 CMPEN
6bhCMPCON1
COS[2:0]
CMP_CFG1
CMP_CFG0
CMP_IO CMPOUT 00000000
CMPOFT_INV
CMPOFT_SEL[1:0]
uuuuu00u
ux0uuuuu
7dhMETCH2
LVD30
VTHSEL PT50PD
BDRV_P33
7ehMETCH
PT14PD
T3SEL
T2SEL VREF_OEN01uu0000
注:进行读操作时,无效位读出为0
特性(Property):
R = 可读位
-n = 上电复位后的值 ‘1’= 位已设置
W = 可写位
U = 无效位
‘0’= 位已清零
X = 不确定位
Rev.1.4
第15 页,共100 页
CSU8RP3427/CSU8RP3429
2.2 时钟系统
2.2.1 概述
芯片的时钟系统包括内置32/16/8/4/2MHz 的RC 振荡时钟(IHRC)、外置高速晶振、内置低速
32KHz 的WDT 时钟、外置低速的晶振时钟、外部RC 时钟、外部时钟源。Fcpu 是CPU 时钟频率。
普通模式(高速时钟):Fcpu=Fosc/N,N=4、8、16
低速模式(低速时钟):Fcpu=Fosc/N,N=4、8、16
2.2.2 时钟框图
CLK_SEL[1]
ERC
代码选项
XTAL_PIN[1:0]
XTAL1
32768Hz
22pF
ECK
XIN
VSS
VSS
XTAL2
2~16MHz
CLK_SEL[0]
MUX
XOUT
代码选项CLKDIV或
CPUCLK_SEL[1:0]
WDTCK
ICK
内置WDT
晶振
22pF
MUX
MCK
CPUCLK
MCK/4~MCK/16
内置
IHRC电路
图5
CSU8RP3427/CSU8RP3429 振荡器状态框图A
CLK_SEL[1]
ERC
VDD
代码选项
XTAL_PIN[1:0]
XTAL1
32768Hz
ECK
XIN
VSS
XTAL2
2~16MHz
CLK_SEL[0]
MUX
XOUT
代码选项CLKDIV或
CPUCLK_SEL[1:0]
内置WDT
晶振
WDTCK
MUX
MCK
CPUCLK
MCK/4~MCK/16
内置
IHRC电路
ICK
图6
CSU8RP3427/CSU8RP3429 振荡器状态框图B
Rev.1.4
第16 页,共100 页
CSU8RP3427/CSU8RP3429
2.2.3 寄存器
表5 CSU8RP3427/CSU8RP3429 时钟系统寄存器列表
地址
名称
Bit7
CST
Bits6
Bit5
Bits4
Bit3
Bits2
Bit1
Bit0
上电复位值
16h
MCK
CST_IN
CST_WDT
EO_SLP
CPUCLK_SEL[1:0]
CLKSEL[1:0]
00101100
表6 MCk 寄存器各位功能表
功能
位地址
标识符
CST
外部晶振启动开关
1:外部晶振关闭
7
0:外部晶振打开
内部晶振启动开关
1:内部晶振关闭
0:内部晶振打开
内部WDT 晶振启动开关
1:内部WDT 晶振关闭
0:内部WDT 晶振打开
外部低速晶振控制位
6
5
CST_IN
CST_WDT
1:如果选择的是外部低速晶振(32768Hz),在sleep 模式下不关闭
外部晶振
4
EO_SLP
0:sleep 模式下关闭外部晶振
指令周期配置
CPUCLK_SEL[1:0]
指令周期
00
01
10
11
保留,禁止配置为00
指令周期=4 个时钟周期
指令周期=8 个时钟周期
指令周期=16 个时钟周期
3:2
CPUCLK_SEL[1:0]
代码选项INS_OP 设置为支持动态指令周期配置,则
CPUCLK_SEL[1:0]有效,可通过CPUCLK_SEL[1:0]实现动态指令
周期配置。
时钟源选择位
CLK_SEL[1]
时钟源2 选择
0
1
外部晶振系统时钟
内部WDT 晶振时钟
CLK_SEL[0]
0
CPU 时钟
使用时钟源1(内部高速晶振时钟)
作为CPU 时钟
1
使用时钟源2 作为CPU 时钟
1:0
CLKSEL[1:0]
进行时钟源切换时,不能直接从外部晶振切换到内部WDT 晶振
或者从内部WDT 晶振切换到外部晶振,即当CLK_SEL[1:0]=2’b01
时,不能直接将它改写为2’b 10 或2’b 11,同样
CLK_SEL[1:0]=2’b11 或2’b 10 时,不能直接将它改写为2’b 01,否
则可能导致切换不成功或系统工作不正常。(CLK_SEL[0]=1 时,
CLK_SEL[1]不可写)
如果要在外部晶振和内部WDT 晶振间切换,建议先切换到内部
高速晶振,再从内部高速晶振切换到外部晶振或内部WDT 晶振
对MCK 寄存器进行写操作时,建议使用bcf 或bsf 指令。
Rev.1.4
第17 页,共100 页
CSU8RP3427/CSU8RP3429
bcf mck,7
call delay
bsf mck,0
nop
;打开外部晶振
;低速32768Hz推荐延迟2S;高速16MHz推荐延迟15mS
;切换到外部晶振
bsf mck,6
…
;关闭内部晶振
注意:把CPU 时钟由内部晶振切换到外部晶振,并把内部晶振关闭时应按照以上顺序执行
2.2.4 内部高速RC 时钟
内部高速RC 时钟(32/16/8/4/2MHz),通过寄存器CST_IN 使能开关。当使用内部高速RC 时钟
做为系统的主时钟时,外部晶振引脚PT1.1、PT1.2 可以通过代码选项配置做为普通的GPIO 口。
2.2.5 内部低速WDT 时钟
内部低速WDT 时钟(32KHz),通过寄存器CST_WDT 使能开关。内部WDT 时钟可作为WDT
和定时器0 使用,也可作为系统主时钟。
2.2.6 外部高速晶振时钟
外部高速晶振时钟,通过代码选项配置为外部高速时钟,同时通过寄存器CST 使能开关。此时,
PT1.1、PT1.2 口做为晶振引脚。
2.2.7 外部低速晶振时钟
外部低速晶振时钟,通过代码选项配置为外部低速时钟,同时通过寄存器CST 使能开关。此时,
PT1.1、PT1.2 口做为晶振引脚。
2.2.8 外部RC 振荡器
外部RC 振荡器,通过代码选项配置为外部RC 振荡器,同时通过寄存器CST 使能开关。此时,
PT1.1 口做为RC 输入引脚,PT1.2 做为普通的GPIO 口。外置RC 振荡器的频率最高可以到8MHz,最
低可以到几KHz,甚至更低。
2.2.9 外部时钟源
外部时钟源,通过代码选项配置为外部高速时钟或外部低速时钟或外部RC 振荡器,同时通过寄存
器CST 使能开关。外部时钟源通过PT1.1 口灌入时钟。当外部时钟源频率较快时,代码选项建议选择
外部高速时钟或外部RC 时钟;当外部时钟源频率较低时(与外部低速时钟频率相当),代码选项可以
选择外部低速时钟或外部RC 时钟。
Rev.1.4
第18 页,共100 页
CSU8RP3427/CSU8RP3429
2.3 复位系统
CSU8RP3427/CSU8RP3429 有以下方式复位:
1)上电复位
2) RST 硬件复位(正常操作)
3) RST 硬件复位(从Sleep 模式)
4)WDT 复位(正常操作)
5)WDT 复位(从Sleep 模式)
6)低电压复位(LVR)
上述任意一种复位发生时,所有系统寄存器恢复默认状态(WDT 复位TO、PD 标志位除外),程序停
止运行,同时程序计数器PC 清零。复位结束后,系统从向量000H 重新开始。各种复位情况下的
TO,PD 标志位如下表所示。
表7 复位信号和状态寄存器关系
TO
0
PD
0
条件
上电复位
0
0
RST 硬件复位(正常操作)
0
0
RST 硬件复位(从Sleep 模式)
WDT 复位(正常操作)
WDT 复位(从Sleep 模式)
低电压复位
1
1
0
不变
不变
0
下图给出了复位电路原理图。
POR
DRT
RST
LVR(2.0V)
To CPU
LVR(2.4V)
LVR(3.0V)
LVR(3.6V)
WDT Reset
图7
复位电路原理图
Rev.1.4
第19 页,共100 页
CSU8RP3427/CSU8RP3429
任何一种复位情况都需要一定的响应时间,系统提供完善的复位流程以保证复位动作的顺利进行。对
于不同类型的振荡器起振的时间不同,所以完成复位的时间也有所不同。RC 振荡器起振时间最短,外
置低速晶振起振时间最长。所以在有外部晶振电路应用的情况下,用户应在上电复位后,预留一定的
时间再从内部RC 时钟切换到外部晶振电路。用户在终端使用过程中,应注意考虑主机对上电复位的要
求。
VPOR
VLVR
VDD
Internal
reset
tWVS
图8
上电复位电路示例及上电过程
参数
VPOR
最小值
1.8V
典型值
2.0V
最大值
2.2V
VLVR
1.8V
2.0V
2.2V
tWVS
78.4ms
98ms
117.6ms
(测试条件:VDD=5V,
T=25℃)
VPOR:上电复位
VLVR:低电压复位
tWVS: 等待电压稳定时间
2.3.1 上电复位
系统上电呈现逐渐上升的曲线形式,需要一定时间才能达到正常的工作电压(对于不同的指令周期所
需工作电压是不同的,指令周期越快相应所需的工作电压就越高,见5.2 直流特性)。要求用户系统的
上电速度要大于0.07V/mS,尤其是要注意指令周期是4MHz 时,因为他要求的工作电压最高。
2.3.2 看门狗复位
看门狗复位是一种系统的保护设置。在正常状态下,程序将看门狗定时器清零。如出错,系统处于未
知状态,此时利用看门狗复位。看门狗复位后,系统重新进入正常状态。
2.3.3 掉电复位
掉电复位针对外部引起的系统电压跌落情况,例如受到干扰或者负载变化。系统掉电可能会引起系统
工作状态不正常或者程序执行错误。
Rev.1.4
第20 页,共100 页
CSU8RP3427/CSU8RP3429
图9
系统掉电复位示意图
电压跌落可能会进入系统死区。进入系统死区,即电源电压不能满足系统的最小工作电压要求。系统
掉电复位示意图如上图所示。芯片的掉电复位点在2.0V,芯片的低电压复位点可以通过代码选项设置
成2.4V 或者不设置低电压复位点。
为避免进入系统死区,建议利用低电压复位(LVR)功能,尤其是指令周期是高速应用的情况。
不同指令周期的系统出错区域不同,取决于指令周期工作电压范围,见5.2。掉电复位性能的改善可以
通过如下几点实现:
1) 低电压复位(LVR)
2) 看门狗复位
3) 降低系统指令周期
4) 采用外部复位电路(稳压二极管复位电路;电压偏移复位电路;外部IC 复位)
2.3.4 外部硬件复位
外部复位由代码选项RESET_PIN 控制,见3.10。通过设置该代码选项,可使能外部硬件复位功能。外
部硬件复位引脚为施密特触发结构,低电平有效。硬件复位引脚为高电平时,系统正常工作;硬件复
位引脚为低电平时,系统复位。
在芯片代码选项使能外部硬件复位功能后,需要注意的是:在系统上电完成后,外部复位需要输入高
电平,否则,系统会一直复位,直到外部硬件复位结束。
外部硬件复位可以在上电过程中使用系统复位。良好的外部复位电路可以保护系统避免进入系统死
区。
Rev.1.4
第21 页,共100 页
CSU8RP3427/CSU8RP3429
2.4 中断
CSU8RP3427/CSU8RP3429 有7 个中断源,只有1 个中断入口地址004H。与中断相关的SFR:中
断使能控制寄存器INTE、INTE2、INTE3 和中断标志位寄存器INTF、INTF2、INTF3。这8 个中断源
都各自有一个中断使能,和一个总使能位GIE,并且它们的标志位硬件置位,软件清0。标志位在没有
打开中断使能时,状态改变时也会置1
当响应中断时,会把当前的PC 值入栈保护,并把PC 置为004H,同时把总使能位GIE 清0。执行
完中断服务程序,并用RETFIE 返回到之前的主程序,并把GIE 置1。
所有的中断都可以唤醒sleep 睡眠模式和halt 停止模式。
CMPIF
CMPIE
E0IF
E0IE
E1IF
Interrup to CPU
E1IE
ADIF
ADIE
TM0IF
TM0IE
TM2IF
TM2IE
TM3IF
TM3IE
GIE
图10 中断逻辑
Rev.1.4
第22 页,共100 页
CSU8RP3427/CSU8RP3429
2.4.1 中断使能寄存器
INTE 寄存器(地址为07h)
R/W-0
GIE
Bit7
R/W-0
TM2IE
Bit6
U-0
R/W-0
TM0IE
Bit4
R/W-0
SRADIE
Bit3
U-0
R/W-0
E1IE
Bit1
R/W-0
E0IE
Bit0
特性
INTE
Bit5
Bit2
Bit 7 GIE:全局中断使能标志
1 = 使能所有非屏蔽中断
0 = 不使能所有中断
Bit 6 TM2IE:12-Bit 定时/计数器2 中断使能标志
1 = 使能定时/计数器2 中断
0 = 不使能定时/计数器2 中断
Bit 4 TM0IE:8-Bit 定时0 器中断使能标志
1 = 使能定时器0 中断
0 = 不使能定时器0 中断
Bit 3 SRADIE:AD 中断使能标志
1 = 使能AD 中断
0 = 不使能AD 中断
Bit 1 E1IE:外部中断1 使能标志
1 =使能外部中断1
0 = 不使能外部中断1
Bit 0 E0IE:外部中断0 使能标志
1 = 使能外部中断0
0 = 不使能外部中断0
INTE2 寄存器(地址为3dh)
U-0
U-0
U-0
R/W-0
TM3IE
Bit4
U-0
U-0
U-0
U-0
特性
INTE2
Bit7
Bit6
Bit5
Bit3
Bit2
Bit1
Bit0
Bit 4 TM3IE:12-Bit 定时/计数器3 中断使能标志
1 = 使能定时/计数器3 中断
0 = 不使能定时/计数器3 中断
INTE3 寄存器(地址为3fh)
R/W-0
CMP0IF
Bit7
U-0
U-0
U-0
U-0
U-0
U-0
U-0
特性
INTE2
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
Bit 7 CMP0IE:比较器0 中断使能标志
1 = 使能比较器0 中断
0 = 不使能比较器0 中断
特性(Property):
R = 可读位
-n = 上电复位后的值 ‘1’= 位已设置
W = 可写位
U = 无效位
‘0’= 位已清零
X = 不确定位
Rev.1.4
第23 页,共100 页
CSU8RP3427/CSU8RP3429
2.4.2 中断标志寄存器
中断标志位都是硬件置1,软件清0。中断标志位,就算其中断使能不为1 时,也可能硬件置位。
INTF 寄存器(地址为06h)
U-0
R/W-0
TM2IF
Bit6
U-0
R/W -0
TM0IF
Bit4
R/W -0
SRADIF
Bit3
U-0
R/W -0
E1IF
Bit1
R/W -0
E0IF
Bit0
特性
INTF
Bit7
Bit5
Bit2
Bit 6 TM2IF:12-Bit 定时/计数器2 中断标志,软件清零,硬件置高
1 = 发生定时中断,必须软件清0
0 = 没发生定时中断
Bit 4 TM0IF:8-Bit 定时器0 中断标志,软件清零,硬件置高
1 = 发生定时中断,必须软件清0
0 = 没发生定时中断
Bit 3 SRADIF:AD 中断中断标志,软件清零,硬件置高
1 = 发生AD 中断,必须软件清0
0 = 没发生AD 中断
Bit 1 E1IF:外部中断1 中断标志,软件清零,硬件置高
1 =外部中断1 发生中断,必须软件清0
0 =外部中断1 没发生中断
Bit 0 E0IF:外部中断0 中断标志,软件清零,硬件置高
1 = 外部中断0 发生中断,必须软件清0
0 =外部中断0 没发生中断
INTF2 寄存器(地址为3ch)
U-0
U-0
U-0
R/W -0
TM3IF
Bit4
U-0
U-0
U-0
U-0
特性
INTF2
Bit7
Bit6
Bit5
Bit3
Bit2
Bit1
Bit0
Bit 4 TM3IF:12-Bit 定时/计数器3 中断标志,软件清零,硬件置高
1 = 发生定时中断,必须软件清0
0 = 没发生定时中断
INTF3 寄存器(地址为3eh)
R/W -0
CMP0IF
Bit7
U-0
U-0
U-0
U-0
U-0
U-0
U-0
特性
INTF2
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
Bit 7 CMP0IF:比较器0 中断标志,软件清零,硬件置高
1 = 发生比较器0 中断,必须软件清0
0 = 没发生比较器0 中断
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值 ‘1’= 位已设置
‘0’= 位已清零
X = 不确定位
Rev.1.4
第24 页,共100 页
CSU8RP3427/CSU8RP3429
2.4.3 外部中断0
PT1.0 为外部中断0 的输入端。触发方式由PT1CON0 寄存器中的E0M[1:0]寄存器决定。INTE 寄
存器中的E0IE 为外部中断0 的使能位,INTF 寄存器中的E0IF 为中断标志位,硬件置1,软件清0。
可唤醒sleep 或halt 模式。不管E0IE 是否使能,只要PT1.0 被触发,中断标志位E0IF 就会置1。
PT1CON0 寄存器(地址为23h)
R/W-0
R/W-0
R/W-0
Bit5
R/W-0
Bit4
R/W-0
Bit3
R/W-0
E1M
Bit2
R/W-0
R/W-0
Bit0
特性
PT1CON0
E0M[1:0]
Bit7
Bit6
Bit1
Bit 2 E1M:外部中断1 触发模式
1 = 外部中断1 为下降沿触发
0 = 外部中断1 在状态改变时触发
Bit 1-0 E0M[1:0]:外部中断0 触发模式
11 = 外部中断0 在状态改变时触发
10 = 外部中断0 在状态改变时触发
01 = 外部中断0 为上升沿触发
00 = 外部中断0 为下降沿触发
2.4.4 外部中断1
PT1.1、PT1.2、PT1.3、PT1.4、PT1.5、PT1.6 和PT1.7 都可作为外部中断1 的输入端。触发方式由
PT1CON0 寄存器中的E1M 寄存器决定。INTE 寄存器中的E1IE 为外部中断1 的使能位,INTF 寄存器
中的E1IF 为中断标志位,硬件置1,软件清0。不管E1IE 是否使能,只要外部中断1 被触发,中断标
志位E1IF 就会置1。
PT1CON0 寄存器(地址为23h)
R/W-0
R/W-0
R/W-0
R/W-0
Bit4
R/W-0
Bit3
R/W-0
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT1CON0
PT1W[3:0]
Bit7
Bit6
Bit5
Bit 6
Bit 5
Bit 4
Bit 3
PT1W[3]:PT1.5 外部中断1 使能
0 = 禁止PT1.5 外部中断1,外部中断1 不会被触发,中断标志位E1IF 不会被置1
1 = 使能PT1.5 外部中断1
PT1W[2]:PT1.4 外部中断1 使能
0 = 禁止PT1.4 外部中断1,外部中断1 不会被触发,中断标志位E1IF 不会被置1
1 = 使能PT1.4 外部中断1
PT1W[1]:PT1.3 外部中断1 使能
0 = 禁止PT1.3 外部中断1,外部中断1 不会被触发,中断标志位E1IF 不会被置1
1 = 使能PT1.3 外部中断1
PT1W[0]:PT1.1 外部中断1 使能
0 = 禁止PT1.1 外部中断1,外部中断1 不会被触发,中断标志位E1IF 不会被置1
1 = 使能PT1.1 外部中断1
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值 ‘1’= 位已设置
‘0’= 位已清零
X = 不确定位
Rev.1.4
第25 页,共100 页
CSU8RP3427/CSU8RP3429
U-0
U-0
U-0
U-0
U-0
R/W-0
Bit2
R/W-0
PT1W2[2:0]
Bit1
R/W-0
Bit0
特性
PT1CON1
Bit7
Bit6
Bit5
Bit4
Bit3
Bit 2
Bit 1
Bit 0
PT1W2[2]:PT1.7 外部中断1 使能
0 = 禁止PT1.7 外部中断1,外部中断1 不会被触发,中断标志位E1IF 不会被置1
1 = 使能PT1.7 外部中断1
PT1W2[1]:PT1.6 外部中断1 使能
0 = 禁止PT1.6 外部中断1,外部中断1 不会被触发,中断标志位E1IF 不会被置1
1 = 使能PT1.6 外部中断1
PT1W2[0]:PT1.2 外部中断1 使能
0 = 禁止PT1.2 外部中断1,外部中断1 不会被触发,中断标志位E1IF 不会被置1
1 = 使能PT1.2 外部中断1
特性(Property):
R = 可读位
-n = 上电复位后的值 ‘1’= 位已设置
W = 可写位
U = 无效位
‘0’= 位已清零
X = 不确定位
Rev.1.4
第26 页,共100 页
CSU8RP3427/CSU8RP3429
2.4.5 AD 中断溢出
INTE 寄存器中的SRADIE 为ADC 中断的使能位,INTF 寄存器中的SRADIF 为中断标志位,软件
清0。当ADC 转换完成时,不管SRADIE 是否使能,SRADIF 都会硬件置1。
2.4.6 定时器0 溢出中断
INTE 寄存器中的TM0IE 为定时器0 中断的使能位,INTF 寄存器中的TM0IF 为中断标志位,软件
清0。当定时器0 溢出时,不管TM0IE 是否使能,TM0IF 都会硬件置1。
2.4.7 定时/计数器2 溢出中断
INTE 寄存器中的TM2IE 为定时/计数器2 中断的使能位,INTF 寄存器中的TM2IF 为中断标志
位,软件清0。当定时/计数器2 溢出时,不管TM2IE 是否使能,TM2IF 都会硬件置1。
2.4.8 定时/计数器3 溢出中断
INTE2 寄存器中的TM3IE 为定时/计数器3 中断的使能位,INTF2 寄存器中的TM3IF 为中断标志
位,软件清0。当定时/计数器3 溢出时,不管TM3IE 是否使能,TM3IF 都会硬件置1。
2.4.9 比较器0 中断
INTE3 寄存器中的CMP0IE 为比较器中断的使能位,INTF3 寄存器中的CMP0IF 为中断标志位,
软件清0。当比较器0 结果改变时,不管CMP0IE 是否使能,CMP0IF 都会硬件置1。
2.4.10 PUSH 和POP 处理
CSU8RP3427/CSU8RP3429 有8 级的PUSH 和POP 堆栈。有中断请求被响应后,程序跳转到004h
执行子程序。响应中断之前必须保存WORK 和STATUS 中的的标志位(只保存C,DC,Z)。芯片提供
PUSH 和POP 指令进行入栈保存和出栈恢复,从而避免中断结束后程序运行错误。子程序中也可以使
用PUSH 和POP 指令对WORK 和STATUS(C,DC,Z)进行保存和恢复。
…
org 004H
goto int_server
…
int_server:
push
btfsc intf,e0if ;判断外部中断0标志
goto ex0_int
btfsc intf,e1if ;判断外部中断1标志
goto ex1_int
btfsc intf,tm0if ;判断定时器0中断标志
goto tm0_int
btfsc intf,tm2if ;判断定时/计数器2中断标志
goto tm2_int
btfsc intf,tm3if ;判断定时/计数器3中断标志
goto tm3_int
…
ex0_int:
bcf intf, e1if
…
;清除e1if
pop
retfie
…
Rev.1.4
第27 页,共100 页
CSU8RP3427/CSU8RP3429
2.5 定时器0
TM0IN[7:0]
代码选项CLKDIV或
CPUCLK_SEL[1:0]
T0SEL[1:0]
T0RATE[2:0]
超时溢出
T0EN
EN
OUT
MCK
CPUCLK
MCK/4~MCK/16
MCK
RTC
8 Bits Counter
CLK
CKT0
TM0CLK
MUX
CKT0~CKT0/128
32KHz WDTCLK
图11 定时器0 功能框图
定时器0 模块的输入为MCK 或者CPUCLK。在定时器0 模块集成了一个分频器,分频的时钟
TM0CLK 作为8 bits 计数器的输入时钟。当用户设置了定时器0 模块的使能标志,8 bits 计数器将启
动,将会从000H 递增到TM0IN。用户需要设置TM0IN(定时器0 模块中断信号选择器)以选择定时
器超时时间。当定时超时发生时,中断标志位硬件置1,程序计数器会跳转到004H 以执行中断服务程
序。
表8 定时器0 寄存器列表
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
地址 名称
上电复位
值
06H
07H
0FH
10H
11H
INTF
INTE
TM0CON T0EN
TM0IN
TM0IF
TM0IE
T0RATE[2:0]
u0u00u00
00u00u00
0000u100
11111111
00000000
GIE
T0RSTB
T0SEL[1:0]
TM0IN[7:0]
TM0CNT[7:0]
TM0CNT
Rev.1.4
第28 页,共100 页
CSU8RP3427/CSU8RP3429
表9 TM0CON 寄存器各位功能表
位地址
标识符
功能
定时器0 使能位
7
T0EN
1:使能定时器0
0:禁止定时器0
定时器0 时钟选择
T0RATE [2:0]
000
TM0CLK
CKT0
001
010
011
100
101
110
111
CKT0 /2
CKT0 /4
CKT0 /8
CKT0 /16
CKT0 /32
CKT0 /64
CKT0 /128
6:4
T0RATE[2:0]
定时器0 复位
1:禁止定时器0 复位
0:使能定时器0 复位
2
T0RSTB
当将该位为0 时,定时器0 复位后,T0RSTB 会自动置1
时钟源选择
T0SEL[1:0]
定时器0 时钟源
00
01
10
CPUCLK
MCK
1:0
T0SEL[1:0]
外部32768Hz 晶振时钟,
仅当外部接32768Hz 晶振,且晶振打开时有效
内部32K WDT 时钟,
仅当内部WDT 晶振打开时有效
11
表10 TM0IN 寄存器各位功能表
位地址
标识符
功能
7 :0
TM0IN[7:0]
定时器0 溢出值(溢出值:1~255)
表11 TM0CNT 寄存器各位功能表
位地址
7 :0
操作:
标识符
功能
TM0CNT[7:0]
定时器0 计数寄存器,只读
1) 设置TM0CLK,为定时器0 模块选择输入。
2) 设置TM0IN,选择定时器0 溢出值。(溢出值:1~255)
3) 设置寄存器标志位:TM0IE 与GIE,使能定时器0 中断。
4) 清零寄存器标志位:T0RSTB,复位定时器0 模块的计数器。
5) 设置寄存器标志位:T0EN,使能定时器0 模块的8 bits 计数器。
6) 当定时超时发生时,程序计数器会跳转到004H。
定时器0 溢出时间计算方法:
定时器0 溢出时间=(TM0IN+1)/TM0CLK.
Rev.1.4
第29 页,共100 页
CSU8RP3427/CSU8RP3429
2.6 I/O PORT
CSU8RP3427/CSU8RP3429 包括13/17 个双向IO 口,1 个输入口PT1.3。所有IO 口都可以配置上
拉,PT5.0、PT1.4 还可以配置下拉,其中PT5.0 默认打开下拉,PT1.3、PT5.1 默认打开上拉。
其他IO 特性:
6 个开漏输出(P1.1、P5.0~P5.4)
PT3.3,PT5.0 和PT5.1 可配置为大驱动输出,高达40mA
PT3.0~PT3.4,PT1.5、PT1.6、PT1.7 可配置为模拟口。
PT1.0 为外部中断0,PT1.1~PT1.7 可配置为外部中断1 输入,触发方式可配置
IO 其他功能复用见相关功能模块描述
表12 I/O 口寄存器表
地
址
上电复位
值
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
20h PT1
21h PT1EN
22h PT1PU
23h PT1CON0 PT11OD
28h PT3
29h PT3EN
2ah PT3PU
2bh PT3CON
30h PT5
31h PT5EN
32h PT5PU
PT1[7:0]
xxxxxxxx
0000u000
00001000
00000000
uuuxxxxx
uuu00000
uuu00000
00000000
uuuxxxxx
uuu00000
uuu00010
uuu00000
uuuuu000
ux0uuuuu
01uu0000
PT1EN[7:4]
PT1EN[2:0]
PT1PU[7:0]
PT1W1[3:0]
E1M
E0M[1:0]
PT3[4:0]
PT3EN[4:0]
PT3PU[4:0]
PT3CON[7:0]
PT5[4:0]
PT5EN[4:0]
PT5PU[4:0]
PT5OD[4:0]
33h PT5CON
38h PT1CON1
7dh METCH2
7eh METCH
PT1W2[2:0]
BDRV_PT33
PT50PD
PT14PD
微控制器中的通用I/O 口(GPIO)用于通用的输入与输出功能。用户可以通过GPIO 接收数据信
号或将数据传送给其它的数字设备。CSU8RP3427/CSU8RP3429 的部分GPIO 可以被定义为其它的特殊
功能。在本节,只说明GPIO 的通用I/O 口功能,特殊功能将会在接下来的章节中说明。
2.6.1 PT1 口
PT1 寄存器(地址为20h)
R/W-X
R/W-X
R/W-X
Bit5
R/W-X
PT1[7:0]
Bit3
R/W-X
R/W-X
Bit2
R/W-X
Bit1
R/W-X
Bit0
特性
PT1
Bit7
Bit6
Bit4
Bit 7-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 数据标志位
Rev.1.4
第30 页,共100 页
CSU8RP3427/CSU8RP3429
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值‘1’= 位已设置 ‘0’= 位已清零
X = 不确定位
PT1[0] = GPIO1 bit 0 数据标志位
Rev.1.4
第31 页,共100 页
CSU8RP3427/CSU8RP3429
PT1EN 寄存器(地址为21h)
R/W-0
R/W-0
R/W-0
Bit5
R/W-0
Bit4
U-0
Bit3
R/W-0
Bit2
R/W-0
PT1EN[2:0]
Bit1
R/W-0
Bit0
特性
PT1EN
PT1EN[7:4]
Bit7
Bit6
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[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 = 定义为输出口
PT1PU 寄存器(地址为22h)
R/W-0
R/W-0
R/W-0
Bit5
R/W-0
PT1PU[7:0]
Bit3
R/W-0
R/W-0
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT1PU
Bit7
Bit6
Bit4
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 = 使用上拉电阻
PT3CON 寄存器(地址为2bh)
R/W-0
R/W-0
PT3CON[7:5]
Bit6
R/W-0
Bit5
R/W-0
Bit4
R/W-0
Bit3
R/W-0
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT3CON
Bit7
Bit7-5 PT3CON[7:5]:GPIO1 口模拟/数字端口使能标志
PT3CON[7] = GPIO1 bit 7 的I/O 控制标志位;0 = 定义为数字口,1 = 定义为模拟口
PT3CON[6] = GPIO1 bit 6 的I/O 控制标志位;0 = 定义为数字口,1 = 定义为模拟口
PT3CON[5] = GPIO1 bit 5 的I/O 控制标志位;0 = 定义为数字口,1 = 定义为模拟口
METCH 寄存器(地址为7Eh)
R/W-0
R/W-0
U-0
U-0
R/W-0
PT14PD
Bit3
R/W-0
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
METCH
Bit7
Bit6
Bit5
Bit4
Bit 3 PT14PD:GPIO1 bit4 口下拉电阻使能标志(默认打开下拉)
0 = 断开下拉电阻,1 = 使用下拉电阻
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值‘1’= 位已设置 ‘0’= 位已清零
X = 不确定位
Rev.1.4
第32 页,共100 页
CSU8RP3427/CSU8RP3429
PT1CON0 寄存器(地址为23h)
R/W-0
PT11OD
Bit7
R/W-0
R/W-0
R/W-0
Bit4
R/W-0
Bit3
R/W-0
E1M
Bit2
R/W-0
R/W-0
Bit0
特性
PT1CON0
PT1W[3:0]
E0M[1:0]
Bit6
Bit5
Bit1
Bit 7 PT11OD:PT1.1 漏极开路使能位
0 = 禁止PT1.1 漏极开路
1 = 使能PT1.1 漏极开路
Bit 6
Bit 5
Bit 4
Bit 3
PT1W[3]:PT1.5 外部中断1 使能
0 = 禁止PT1.5 外部中断1
1 = 使能PT1.5 外部中断1
PT1W[2]:PT1.4 外部中断1 使能
0 = 禁止PT1.4 外部中断1
1 = 使能PT1.4 外部中断1
PT1W[1]:PT1.3 外部中断1 使能
0 = 禁止PT1.3 外部中断1
1 = 使能PT1.3 外部中断1
PT1W[0]:PT1.1 外部中断1 使能
0 = 禁止PT1.1 外部中断1
1 = 使能PT1.1 外部中断1
Bit 2 E1M:外部中断1 触发模式
1 = 外部中断1 为下降沿触发
0 = 外部中断1 在状态改变时触发
Bit 1-0 E0M[1:0]:外部中断0 触发模式
11 = 外部中断0 在状态改变时触发
10 = 外部中断0 在状态改变时触发
01 = 外部中断0 为上升沿触发
00 = 外部中断0 为下降沿触发
注:做开漏输出时,外部上拉电压不高于VDD+0.3V。
PT1CON1 寄存器(地址为38h)
U-0
U-0
U-0
U-0
U-0
R/W-0
Bit2
R/W-0
PT1W2[2:0]
Bit1
R/W-0
Bit0
特性
PT1CON1
Bit7
Bit6
Bit5
Bit4
Bit3
Bit 2
Bit 1
Bit 0
PT1W2[2]:PT1.7 外部中断1 使能
0 = 禁止PT1.7 外部中断1
1 = 使能PT1.7 外部中断1
PT1W2[1]:PT1.6 外部中断1 使能
0 = 禁止PT1.6 外部中断1
1 = 使能PT1.6 外部中断1
PT1W2[0]:PT1.2 外部中断1 使能
0 = 禁止PT1.2 外部中断1
1 = 使能PT1.2 外部中断1
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值‘1’= 位已设置 ‘0’= 位已清零
X = 不确定位
Rev.1.4
第33 页,共100 页
CSU8RP3427/CSU8RP3429
2.6.2 PT3 口
PT3 寄存器(地址为28h)
U-0
U-0
U-0
R/W-X
Bit4
R/W-X
Bit3
R/W-X
PT3[4:0]
Bit2
R/W-X
Bit1
R/W-X
Bit0
特性
PT3
Bit7
Bit6
Bit5
Bit 4-0 PT3[4:0]:GPIO3 口数据标志位
PT3[4] = GPIO3 bit 4 的数据标志位
PT3[3] = GPIO3 bit 3 的数据标志位
PT3[2] = GPIO3 bit 2 的数据标志位
PT3[1] = GPIO3 bit 1 的数据标志位
PT3[0] = GPIO3 bit 0 的数据标志位
PT3EN 寄存器(地址为29h)
U-0
U-0
U-0
R/W-0
Bit4
R/W-0
Bit3
R/W-0
PT3EN[4:0]
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT3EN
Bit7
Bit6
Bit5
Bit 4-0 PT3EN[4:0]:GPIO 3 口输入/输出控制标志
PT3EN[4] = GPIO3 bit 4 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT3EN[3] = GPIO3 bit 3 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT3EN[2] = GPIO3 bit 2 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT3EN[1] = GPIO3 bit 1 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT3EN[0] = GPIO3 bit 0 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT3PU 寄存器(地址为2ah)
U-0
U-0
U-0
R/W-0
Bit4
R/W-0
Bit3
R/W-0
PT3PU[4:0]
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT3PU
Bit7
Bit6
Bit5
Bit 4-0 PT3PU[4:0]:GPIO3 口上拉电阻使能标志
PT3PU[4] = GPIO3 bit 4 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT3PU[3] = GPIO3 bit 3 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT3PU[2] = GPIO3 bit 2 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT3PU[1] = GPIO3 bit 1 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT3PU[0] = GPIO3 bit 0 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值‘1’= 位已设置 ‘0’= 位已清零
X = 不确定位
Rev.1.4
第34 页,共100 页
CSU8RP3427/CSU8RP3429
PT3CON 寄存器(地址为2bh)
R/W-0
R/W-0
R/W-0
Bit5
R/W-0
Bit4
R/W-0
Bit3
R/W-0
PT3CON[4:0]
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT3CON
Bit7
Bit6
Bit4-0 PT3CON[4:0]:GPIO1/GPIO3 口模拟/数字端口使能标志
PT3CON[4] = GPIO3bit 4 的I/O 控制标志位;0 = 定义为数字口,1 = 定义为模拟口
PT3CON[3] = GPIO3bit 3 的I/O 控制标志位;0 = 定义为数字口,1 = 定义为模拟口
PT3CON[2] = GPIO3bit 2 的I/O 控制标志位;0 = 定义为数字口,1 = 定义为模拟口
PT3CON[1] = GPIO3bit 1 的I/O 控制标志位;0 = 定义为数字口,1 = 定义为模拟口
PT3CON[0] = GPIO3bit 0 的I/O 控制标志位;0 = 定义为数字口,1 = 定义为模拟口
注:PT3.0 设为参考电压输出时,直接作为模拟口输出电压,优先级高于PT3CON[0]设置。
METCH2 寄存器(地址为7Dh)
U-0
R-X
R/W-0
BDRV_P33
Bit5
U-0
U-0
U-0
U-0
U-0
特性
METCH2
Bit7
Bit6
Bit4
Bit3
Bit2
Bit1
Bit0
Bit 5 PT3.3 驱动能力选择位
0:正常驱动能力
1:IOH 为大驱动电流(40mA)
2.6.3 PT5 口
PT5 寄存器(地址为30h)
U-0
U-0
U-0
R/W-X
Bit4
R/W-X
Bit3
R/W-X
PT5[4:0]
Bit2
R/W-X
Bit1
R/W-X
Bit0
特性
PT5
Bit7
Bit6
Bit5
Bit 4-0 PT5[4:0]:GPIO5 口数据标志位
PT5[4] = GPIO5 bit 4 的数据标志位
PT5[3] = GPIO5 bit 3 的数据标志位
PT5[2] = GPIO5 bit 2 的数据标志位
PT5[1] = GPIO5 bit 1 的数据标志位
PT5[0] = GPIO5 bit 0 的数据标志位
PT5EN 寄存器(地址为31h)
U-0
U-0
U-0
R/W-0
Bit4
R/W-0
Bit3
R/W-0
PT5EN[4:0]
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT5EN
Bit7
Bit6
Bit5
Bit 4-0 PT5EN[4:0]:GPIO5 口输入/输出控制标志
PT5EN[4] = GPIO5 bit 4 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT5EN[3] = GPIO5 bit 3 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT5EN[2] = GPIO5 bit 2 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT5EN[1] = GPIO5 bit 1 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
PT5EN[0] = GPIO5 bit 0 的I/O 控制标志位;0 = 定义为输入口,1 = 定义为输出口
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值‘1’= 位已设置 ‘0’= 位已清零
X = 不确定位
Rev.1.4
第35 页,共100 页
CSU8RP3427/CSU8RP3429
PT5PU 寄存器(地址为32h)
U-0
U-0
U-0
R/W-0
Bit4
R/W-0
Bit3
R/W-0
PT5PU[4:0]
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT5PU
Bit7
Bit6
Bit5
Bit 4-0 PT5PU[4:0]:GPIO5 口上拉电阻使能标志
PT5PU[4] = GPIO5 bit 4 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT5PU[3] = GPIO5 bit 3 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT5PU[2] = GPIO5 bit 2 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT5PU[1] = GPIO5 bit 1 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT5PU[0] = GPIO5 bit 0 控制标志位;0 = 断开上拉电阻,1 = 使用上拉电阻
PT5CON 寄存器(地址为33h)
U-0
U-0
U-0
R/W-0
Bit4
R/W-0
Bit3
R/W-0
PT5OD[4:0]
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
PT5CON
Bit7
Bit6
Bit5
Bit 4-0 PT5CON[4:0]:GPIO5 口控制标志
PT5CON[4] = GPIO5 bit 4 控制标志位;0 = 禁止开漏输出,1 = 使能开漏输出
PT5CON[3] = GPIO5 bit 3 控制标志位;0 = 禁止开漏输出,1 = 使能开漏输出
PT5CON[2] = GPIO5 bit 2 控制标志位;0 = 禁止开漏输出,1 = 使能开漏输出
PT5CON[1] = GPIO5 bit 1 控制标志位;0 = 禁止开漏输出,1 = 使能开漏输出
PT5CON[0] = GPIO5 bit 0 控制标志位;0 = 禁止开漏输出,1 = 使能开漏输出
注:做开漏输出时,外部上拉电压不高于VDD+0.3V。
METCH 寄存器(地址为7Eh)
R/W-0
R/W-0
PT50PD
Bit6
U-0
U-0
R/W-0
Bit3
R/W-0
Bit2
R/W-0
Bit1
R/W-0
Bit0
特性
METCH
Bit7
Bit5
Bit4
Bit 6 PT50PD:GPIO5 bit0 口下拉电阻使能标志(默认打开下拉)
0 = 断开下拉电阻,1 = 使用下拉电阻
特性(Property):
R = 可读位
W = 可写位
U = 无效位
-n = 上电复位后的值‘1’= 位已设置 ‘0’= 位已清零
X = 不确定位
Rev.1.4
第36 页,共100 页
CSU8RP3427/CSU8RP3429
3 增强功能
3.1 Halt 和Sleep 模式
CSU8RP3427/CSU8RP3429 支持低功耗工作模式。为了使其处于待机状态,可以让CPU 停止工作
使CSU8RP3427/CSU8RP3429 进行停止或睡眠模式,减低功耗。这两种模式描述如下:
停止模式
CPU 执行停止指令后,程序计数器停止计数直到出现中断指令。为了避免由中断返回(Interrupt
Return)引起的程序错误,建议在停止指令之后加一NOP 指令以保证程序返回时能正常运行。
睡眠模式
CPU 执行睡眠指令后,所有的振荡器停止工作(EO_SLP 为0 时)直到出现一个外部中断指令复位
CPU。为了避免由中断返回(Interrupt Return)引起的程序错误,建议停止指令之后加一NOP 指令以
保证程序的正常运行。在睡眠模式下的功耗大约有1uA。
为了保证CPU 在睡眠模式下的功耗最小,在执行睡眠指令之前,需要把IO 口的上拉电阻断开,
并且保证所有的输入口是接到VDD 或VSS 电平。
注:
芯片如果处于sleep 状态,这时候降低电压,配置2.4/3.0/3.6V 低电压复位不会起作用,低于2.0V 掉
电复位点才会复位。如果sleep 唤醒后,此时还处于低电压复位点以下,则会立即复位。
Rev.1.4
第37 页,共100 页
CSU8RP3427/CSU8RP3429
Halt 示范程序:
…
movlw 01h
movwf pt1up ;断开pt1 除bit0(pt1[0])外的其他接口的上拉电阻
movlw feh
movwf pt1en ;pt1口除bit0(pt1[0])做输入口外,其他接口作为输出口(pt1.3除外)
clrf pt1
clrf pt3up
clrf pt3en
;将pt1[4:1]输出为低
;断开pt3上拉电阻
;pt3 口用作输入口
clrf pt3con ;pt3 口用作数字口
clrf pt3
clrf pt5up
clrf pt5en
clrf pt5
clrf intf
movlw 81h
movwf inte
halt
;将pt3 输出为低
;断开pt5上拉电阻
;pt5 口用作输入口
;将pt5 输出为低
;清除中断标志位
;使能外部中断0
;进入停止模式
nop
…
;保证CPU 重启后程序能正常工作
Sleep 示范程序:
…
movlw 01h
movwf pt1up ;断开pt1 除bit0(pt1[0])外的其他接口的上拉电阻
movlw feh
movwf pt1en ;pt1口除bit0(pt1[0])做输入口外,其他接口作为输出口(pt1.3除外)
clrf pt1
clrf pt3up
clrf pt3en
;将pt1[4:1]输出为低
;断开pt3上拉电阻
;pt3 口用作输入口
clrf pt3con ;pt3 口用作数字口
clrf pt3
clrf pt5up
clrf pt5en
clrf pt5
clrf intf
movlw 81h
movwf inte
sleep
;将pt3 输出为低
;断开pt5上拉电阻
;pt5 口用作输入口
;将pt5 输出为低
;清除中断标志位
;使能外部中断0
;进入睡眠模式
nop
…
;保证CPU 重启后程序能正常工作
Rev.1.4
第38 页,共100 页
CSU8RP3427/CSU8RP3429
3.2 看门狗(WDT)
WDTOEN
WDTS[2:0]
WDT_IN[7:0]
WDTEN
Watch Dog
Timer
Ocsillator
WDTCNT[7:0]
Compare
WDT_RST
wdtck/2~
wdtck/256
8Bits Counter
图12 看门狗定时器功能框图
看门狗定时器(WDT)用于防止程序由于某些不确定因素而失去控制。当WDT 启动时,WDT 计
时超时后将使CPU 复位。在运行的程序一般在WDT 复位CPU 之前先复位WDT。当出现某些故障
时,程序会被WDT 复位到正常状态下,但程序不会复位WDT。
当用户把CST_WDT 清0 时,则内部的看门狗定时器振荡器(32KHz)将会启动,产生的时钟会
进行2 到256 分频。用户通过寄存器标志位WDTS[2:0]选择看门狗模块的计数时钟。当用户使能
WDTEN 时,8 位计数器开始计数,当8 bits 计数器计数值与WDTIN 数值相等时溢出,溢出时它会发
送WDTOVERFLOW 信号复位CPU 及置位TO 标志位。用户可以使用指令CLRWDT 复位WDT。
表13 看门狗定时器寄存器表
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
地址 名称
上电复位
值
04H
STATUS
TO
xxu00000
0uuuu000
11111111
WDTEN
0DH WDTCON
0Eh
WDTS[2:0]
WDTIN
WDT_IN[7:0]
位地址
标识符
功能
7
6:3
WDTEN
保留
看门狗使能位,高电平有效
保留
WDT 计数时钟选择
WDTS [2:0]
000
001
010
011
100
101
110
WDT 计数时钟
WDTCLK /256
WDTCLK /128
WDTCLK /64
WDTCLK /32
WDTCLK /16
WDTCLK /8
WDTCLK /4
WDTCLK /2
2:0
WDTS[2:0]
111
Rev.1.4
第39 页,共100 页
CSU8RP3427/CSU8RP3429
操作:
1.设置WDTS[3:0],选择WDT 时钟频率。
2.设置WDTIN,选择不同的溢出时间值
2.置位寄存器标志位:WDTEN,使能WDT。
3.把CST_WDT 清0,打开WDT 的晶振。
4.在程序中执行CLRWDT 指令复位WDT。
WDT 溢出时间计算公式:
2(8WDTS[2:0])
溢出时间
*(WDTIN[7:0]1)
32768
WDTS[2:0]范围为0~7,WDTIN[7:0]范围为0~255。
WDTS[2:0]
计数器时钟
WDTA [0]
WDTA [1]
WDTA [2]
WDTA [3]
WDTA [4]
WDTA [5]
WDTA [6]
WDTA [7]
时间(当WDTIN==FFH)
000
001
010
011
100
101
110
111
2048ms
1024ms
512ms
256ms
128ms
64ms
32ms
16ms
Rev.1.4
第40 页,共100 页
CSU8RP3427/CSU8RP3429
3.3 定时/计数器2
PWM2OUT
TM2R[11:0]
PT5.0 IO电路
PT5.0
代码选项CLKDIV或
CPUCLK_SEL[1:0]
T2SEL
TM2IN[11:0]
PWM
Compare
MUX
T2RATE[2:0]
T2CKS
MUX
CPUCLK
MCK
MCK
T2EN
MCK/4~MCK/16
BZ
CKT2
MUX
CKT2~CKT2/128
12 Bits
Counter
DIV2
T2OUT
超时溢出
两个MCK时钟采
样PT1.0
TM2LCK
PT1.0
图13 定时/计数器2 模块的功能框图
定时/计数器2 模块的输入是TM2CLK。当用户设置了定时/计数器2 模块的使能标志,12 bits 计数
器将启动,从000h 递增到TM2IN。用户需要设置TM2IN(定时器模块中断信号选择器)以选择定时
超时中断信号。当定时超时发生时,BZ 输出信号发生跳变。
主要功能:
1)12 位可编程定时器;
2)外部事件计数;
3)蜂鸣器输出;
4)PWM2 输出;
3.3.1 寄存器说明
表14 定时器寄存器列表
地
址
上电复位
值
名称
Bit7
Bit6 Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
06h INTF
07h INTE
TM2IF
TM2IE
u0u00u00
00u00u00
00000100
11111111
00000000
00000000
uuuu1111
uuuu0000
uuuu0000
01uu0000
GIE
T2EN
PWM2OUT
17h TM2CON
18h TM2IN
19h TM2CNT
1ah TM2R
70h TM2INH
41hTM2CNTH
42h TM2RH
7eh METCH
T2RATE[2:0]
T2CKS T2RSTB T2OUT
TM2IN[7:0]
TM2CNT[7:0]
TM2R[7:0]
TM2IN[11:8]
TM2CNT[11:8]
TM2R[11:8]
T2SEL
Rev.1.4
第41 页,共100 页
CSU8RP3427/CSU8RP3429
表15 TM2CON 寄存器各位功能表
功能
位地址 标识符
定时/计数器2 使能位
1:使能定时器2
7
T2EN
0:禁止定时器2
定时/计数器2 时钟分频
T2RATE [2:0]
TM2CLK
000
001
010
011
100
101
110
111
CKT2
CKT2 /2
CKT2 /4
CKT2 /8
CKT2 /16
CKT2 /32
CKT2 /64
CKT2 /128
6:4
T2RATE[2:0]
可通过METCH[1]选择定时器2 时钟
定时/计数器2 时钟源选择位
1:PT1.0 作为时钟
0:CPUCLK 或MCK 的分频时钟
定时/计数器2 复位
1:禁止定时/计数器2 复位
0:使能定时/计数器2 复位
当将该位为0 时,定时器2 复位后,T2RSTB 会自动置1
PT5.0 口输出控制
3
2
T2CKS
T2RSTB
T2OUT
PWM2OUT
1
0
T2OUT
PT5.0 输出控制,仅当PT5.0 配置为输出有效
IO 输出
PWM2 输出
蜂鸣器输出
PWM2 取反输出
0
0
1
1
0
1
0
1
PWM2OUT
表16 TM2IN 寄存器各位功能表
位地址
标识符
功能
7 :0
TM2IN[7:0]
定时/计数器溢出值
表17 TM2INH 寄存器各位功能表
位地址
标识符
功能
3 :0
TM2IN[11:8]
定时/计数器溢出值
表18 TM2CNT 寄存器各位功能表
位地址
标识符
功能
7 :0
TM2CNT[7:0]
定时/计数器2 计数寄存器,只读
表19 TM2CNTH 寄存器各位功能表
位地址
标识符
功能
3 :0
TM2CNT[11:8]
定时/计数器2 计数寄存器,只读
Rev.1.4
第42 页,共100 页
CSU8RP3427/CSU8RP3429
表20 TM2R 寄存器各位功能表
功能
位地址
标识符
7 :0
TM2R[7:0]
定时/计数器2 的PWM 高电平占空比控制寄存器
表21 TM2RH 寄存器各位功能表
位地址
标识符
功能
3 :0
TM2R[11:8]
定时/计数器2 的PWM 高电平占空比控制寄存器
表22 METCH 寄存器各位功能表
位地址
标识符
功能
定时器2 时钟选择
0:CPUCLK
1:MCK
1
T2SEL
3.3.2 蜂鸣器
操作:
1) 设置TM2CLK,为定时器模块选择输入。
2) 设置TM2IN,选择定时器溢出值。
3) 设置寄存器标志位:TM2IE 与GIE,使能定时器中断。
4) 清零寄存器标志位:T2RSTB,复位定时器模块的计数器。
5) 设置寄存器标志位:T2EN,使能定时器模块的12 bits 计数器。
6) 当定时超时发生时,BZ 输出信号发生跳变,可作为蜂鸣器输出;寄存器标志位TM2IF 会自复
位,程序计数器会复位为04h。
定时器2 溢出时间计算方法:
定时器2 溢出时间=(TM2IN+1)/TM2CLK. (TM2IN 不为0)
蜂鸣器周期计算方法:
蜂鸣器周期=(TM2IN+1)*2/TM2CLK. (TM2IN 不为0)
3.3.3 PWM
操作:
1) 设置TM2CLK,为定时/计数器2 模块选择输入。
2) 设置TM2IN 来配置PWM2 的周期。
3) 设置TM2R 来配置PWM2 的高电平的的脉宽。
4) 使能PWM2OUT 输出,配置PT5.0 为输出端口,之后把T2EN 置1 启动定时器。
5) PWM 从PT5.0 输出。
周期为TM2IN+1,高电平脉宽为TM2R。如TM2IN=0x0F,TM2R=0x03 的PWM2 波形输出如下:
Rev.1.4
第43 页,共100 页
CSU8RP3427/CSU8RP3429
...
...
0
1
2
3
15
0
1
2
3
1
15
0
TM2CLK
T2EN
PWM2OUT
PWM2OUT
取反
Rev.1.4
第44 页,共100 页
CSU8RP3427/CSU8RP3429
3.4 定时/计数器3
PWM3OUT
TM3R[11:0]
PT5.1 IO电路
代码选项CLKDIV或
CPUCLK_SEL[1:0]
PT5.1
T3SEL
TM3IN[11:0]
PWM
Compare
MUX
T3RATE[2:0]
T3CKS
MCK
CPUCLK
MCK
T3EN
MCK/4~MCK/16
BZ
CKT3
MUX
CKT3~CKT3/128
12 Bits
Counter
DIV2
T3OUT
超时溢出
TM3LCK
MUX
两个MCK时钟采
样PT1.1
PT1.1
图14 定时/计数器1 模块的功能框图
定时/计数器3 模块的输入是TM3CLK。当用户设置了定时/计数器3 模块的使能标志,12 bits 计数
器将启动,从000h 递增到TM3IN。用户需要设置TM3IN(定时器模块中断信号选择器)以选择定时
超时中断信号。当定时超时发生时,BZ 输出信号发生跳变。
主要功能:
1)12 位可编程定时器;
2)外部事件计数;
3)蜂鸣器输出;
4)PWM 输出;
3.4.1 寄存器说明
表23 定时器寄存器列表
地
址
上电复位
值
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
3ch INTF2
3dh INTE2
TM3IF
TM3IE
uuu0uuuu
uuu0uuuu
00000100
11111111
00000000
00000000
uuuu1111
uuuu0000
uuuu0000
01uu0000
PWM3OUT
1bh TM3CON
1ch TM3IN
1dh TM3CNT
1eh TM3R
43h TM3INH
44h TM3CNTH
45h TM3RH
7eh METCH
T3EN
T3RATE[2:0]
T3CKS T3RSTB T3OUT
TM3IN[7:0]
TM3CNT[7:0]
TM3R[7:0]
TM3IN[11:8]
TM3CNT[11:8]
TM3R[11:8]
T3SEL
Rev.1.4
第45 页,共100 页
CSU8RP3427/CSU8RP3429
表24 TM3CON 寄存器各位功能表
功能
位地址 标识符
定时/计数器3 使能位
1:使能定时器3
7
T3EN
0:禁止定时器3
定时/计数器3 时钟分频
T3RATE [2:0]
TM3CLK
000
001
010
011
100
101
110
111
CKT3
CKT3 /2
CKT3 /4
CKT3 /8
CKT3 /16
CKT3 /32
CKT3 /64
CKT3 /128
6:4
T3RATE[2:0]
可通过METCH[2]选择定时器3 时钟
定时/计数器3 时钟源选择位
1:PT1.1 作为时钟
0:CPUCLK 或MCK 的分频时钟
定时/计数器3 复位
1:禁止定时/计数器3 复位
0:使能定时/计数器3 复位
当将该位为0 时,定时器3 复位后,T3RSBT 会自动置1
PT5.1 口输出控制
3
2
1
0
T3CKS
T3RSTB
T3OUT
T3OUT
PWM3OUT
PT5.1 输出控制,仅当PT5.1 配置为输出有
效
0
0
1
1
0
1
0
1
IO 输出
PWM3 输出
蜂鸣器输出
PWM3 取反输出
PWM3OUT
表25 TM3IN 寄存器各位功能表
位地址
标识符
功能
7 :0
TM3IN[7:0]
定时/计数器溢出值
表26 TM3INH 寄存器各位功能表
位地址
标识符
功能
3 :0
TM3IN[11:8]
定时/计数器溢出值
表27 TM3CNT 寄存器各位功能表
位地址
标识符
功能
7 :0
TM3CNT[7:0]
定时/计数器3 计数寄存器,只读
表28 TM3CNTH 寄存器各位功能表
位地址
标识符
功能
3 :0
TM3CNT[11:8]
定时/计数器3 计数寄存器,只读
Rev.1.4
第46 页,共100 页
CSU8RP3427/CSU8RP3429
表29 TM3R 寄存器各位功能表
功能
位地址
标识符
7 :0
TM3R[7:0]
定时/计数器3 的PWM 高电平占空比控制寄存器
表30 TM3RH 寄存器各位功能表
位地址
标识符
功能
3 :0
TM3R[11:8]
定时/计数器3 的PWM 高电平占空比控制寄存器
表31 METCH 寄存器各位功能表
位地址
标识符
功能
定时器3 时钟选择
0:CPUCLK
1:MCK
2
T3SEL
3.4.2 蜂鸣器
操作:
1) 设置TM3CLK,为定时器模块选择输入。
2) 设置TM3IN,选择定时器溢出值。
3) 设置寄存器标志位:TM3IE 与GIE,使能定时器中断。
4) 清零寄存器标志位:T3RSTB,复位定时器模块的计数器。
5) 设置寄存器标志位:T3EN,使能定时器模块的12 bits 计数器。
6) 当定时超时发生时,BZ 输出信号发生跳变,可作为蜂鸣器输出;寄存器标志位TM3IF 会自复
位,程序计数器会复位为04h。
定时器3 溢出时间计算方法:
定时器3 溢出时间=(TM3IN+1)/TM3CLK. (TM3IN 不为0)
蜂鸣器周期计算方法:
蜂鸣器周期=(TM3IN+1)*2/TM3CLK. (TM3IN 不为0)
3.4.3 PWM
操作:
1) 设置TM3CLK,为定时/计数器3 模块选择输入。
2) 设置TM3IN 来配置PWM3 的周期。
3) 设置TM3R 来配置PWM3 的高电平的的脉宽。
4) 使能PWM3OUT 输出,配置PT5.1 为输出端口,之后把T3EN 置1 启动定时器。
5) PWM3 从PT5.1 输出。
周期为TM3IN+1,高电平脉宽为TM3R。如TM3IN=0x0F,TM3R=0x03 的PWM3 波形输出如下:
Rev.1.4
第47 页,共100 页
CSU8RP3427/CSU8RP3429
...
...
0
1
2
3
15
0
1
2
3
1
15
0
TM3CLK
T3EN
PWM3OUT
PWM3OUT
取反
Rev.1.4
第48 页,共100 页
CSU8RP3427/CSU8RP3429
3.5 模数转换器(ADC)
CSU8RP3427/CSU8RP3429 模数转换模块共用8 条外部通道(AIN0~AIN7)和5 条特殊通道
(AIN8:内部1/8VDD;AIN9:内部参考电压;AIN10:GND;AIN11:运算放大器0 输出作输入;
AIN12:温度传感器/运放2 输出作为输入),可以将模拟信号转换成12 位数字信号。进行AD 转换时,
首先要选择输入通道(AIN0~AIN12),然后把SRADEN 置1 使能ADC,之后把SRADS 置1,启动AD
转换。转换结束后,系统自动将ADS 清0,并将转换结果存入寄存器SRADL 和SRADH 中。
AIN0/P3.0
AIN1/P3.1
AIN2/P3.2
AIN3/P3.3
AIN4/P3.4
AIN5/P1.5
数
AIN6/P1.6
12-bit
模数转换器
ADC
据
总
线
AIN7/P1.7
AIN8(内部1/
8 VDD)
AIN9(内部参
考电压)
AIN10(接地)
AIN11(运算放大器
0输出C0作输入)
AIN12(温度
传感器输入)
图15 模数转换器ADC 功能框图
表32 ADC 寄存器列表
3.5.1 寄存器说明
上电复位
值
地址
名称
Bit7
GIE
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
06h INTF
07h INTE
ADIF
ADIE
u0u00u00
00u00u00
TEM_C
MP_CH
SRADCON0
50h
SROFT_SEL[1:0] SRADACKS[1:0]
CMP0_R SRADCKS[1:0] 00000000
VREFS[1:0] 00000000
REF_SEL[1:0] 00000000
SRADCON1 SRADEN
SRADCON2
51h
52h
SRADS OFTEN CALIF ENOV OFFEX
CHOP_EN DEM_EN
CHS[3:0]
53h TEMCON
54h SRADL
55h SRADH
56h SROFTL
TS_EN
CHEX
CHOP_CK[1:0] TS_CH[2:0]
SRCK_DLY
00000000
00000000
uuuu0000
00000000
SRAD[7:0]
SROFT[7:0]
SRAD[11:8]
Rev.1.4
第49 页,共100 页
CSU8RP3427/CSU8RP3429
57h SROFTH
5ah TRIM_REF
SROFT[11:8]
uuuu0000
10000000
TRIM_REF[7:0]
VREF_O
EN
7eh METCH
00000000
表33 SRADCON0 寄存器各位功能表
位地址
标识符
功能
AD 失调电压选择
SROFT_SEL[1:0]
失调电压校正方式选择
默认失调电压
00
01
10
11
使失调电压往负方向偏3mV
使失调电压往正方向偏3mV
使失调电压往正方向偏6mV
7:6
SROFT_SEL[1:0]
配置SROFT_SEL[1:0]=10 或SROFT_SEL[1:0]=11,会变为正方向的
失调电压,可以在初始化选择通道AIN10 测出正的失调电压,并放入
SROFTL,SROFTH 寄存器中,且把CALIF,ENOV 置1,这样得到
的AD 值已抵消了失调电压。
ADC 输入信号获取时间
SRADACKS[1:0]
ADC 输入信号获取时间
16 个ADC 时钟
8 个ADC 时钟
4 个ADC 时钟
2 个ADC 时钟
00
01
10
11
5:4
SRADACKS[1:0]
不同的外部信号输入阻抗对应要求不同的信号获取时间。外部信号输
入阻抗越大要求的获取时间越长。对应外部信号10K 的输入阻抗,为
了保证AD 精度,要使ADC 输入信号的获取时间大于或等于4us。
做温度传感器时,温度传感器信号获取时间必须大于或等于8us
PT3.1,PT3.2 口功能选择
0:PT3.1,PT3.2 做为普通IO 口
3
2
TEM_CMP_CH
CMP0_R
1:PT3.1,PT3.2 做为运放2 输入口
如选择PT3.1,PT3.2 输入做为运放2 输入,则放大倍数默认为内部放
大32 倍
运算放大器0 到ADC 输入电阻选择位
0:不接电阻
1:接1K 电阻
ADC 时钟
SRADCKS[1:0]
ADC 采样时钟
CPUCLK
CPUCLK/2
CPUCLK/4
CPUCLK/8
00
01
10
11
1:0
SRADCKS[1:0]
表34 SRADCON1 寄存器各位功能表
位地址
标识符
功能
ADC 使能位
1:使能
7
SRADEN
Rev.1.4
第50 页,共100 页
CSU8RP3427/CSU8RP3429
0:禁止
ADC 启动位/状态控制位
1:开始,转换过程中
0:停止,转换结束
6
SRADS
当置位后,启动ADC 转换,转换完成会自动清0
转换结果选择控制位
5
4
3
OFTEN
CALIF
ENOV
1:转换结果放在SROFT 寄存器中
0:转换结果放在SRAD 寄存器中
校正控制位(OFTEN 为0 时有效)
1:使能校正,即AD 转换的结果是减去了SROFT 失调电压值
0:禁止校正,即AD 转换结果是没有减去SROFT 失调电压值
使能比较器溢出模式(CALIF 为1 时有效)
1:使能,上溢或下溢直接是减去后的结果
0:禁止,下溢为000h,上溢为fffh
OFFSET 交换
1:比较器两端信号交换
0:比较器两端信号不交换(正端为信号,负端为参考电压)
2
OFFEX
仅对SROFT_SEL[1:0]=00 时有效,当SROFT_SEL[1:0]不为00 时,
OFFEX 需配置为0。
ADC 参考电源选择
VREFS[1:0]
AD 参考电压
00
01
VDD
PT3.0 外部参考电源输入(由于所有IO 做输入时,最
大允许电流Imax 为50mA,所以外接LDO 电压
时,需用电阻限流)
1:0
VREFS[1:0]
10
11
内部参考电压
PT3.0 输出内部参考电压,PT3.0 可外接电容作为内
置参考电压滤波使用,以提高精度。
表35 TEMCON 寄存器各位功能表
位地址
标识符
TS_EN
SRCK_DLY
CHEX
功能
温度传感器使能位
1:使能
0:禁止
7
6
5
需配置为0
信号交换使能位
1:使能交换输入信号和参考电压
0:禁止交换输入信号和参考电压
斩波时钟分频选择位
CHOP_CK[1:0]
斩波时钟
MCK/16
MCK/8
MCK/4
MCK/2
00
01
10
11
4:3
2:0
CHOP_CK[1:0]
通过分频得到的CHOP_CLK 时钟最好在1M 左右,尽量选择在500K
到2M 之间的频率
温度传感器电流源动态匹配控制
TS_CH[2:0]
TS_CH[2:0]
温度传感器电流源动态匹配控制
Rev.1.4
第51 页,共100 页
CSU8RP3427/CSU8RP3429
000
001
010
011
100
101
110
111
温度传感器电流源1
温度传感器电流源2
温度传感器电流源3
温度传感器电流源4
温度传感器电流源5
温度传感器电流源6
无效
无效
在温度传感器使用中,需要依次使用温度传感器电流源1 到6,并针
对每个电流源做一次转换
使用温度传感器时,打开温度传感器使能后需要等待至少10us,然后选择温度传感器电流源,依次选
择温度传感器电流源1 到6,并对每个电流源做一次AD 转换,将6 次转换的结果取平均值,即为我们
所需要的温度传感器所得值。
表36 SRADCON2 寄存器各位功能表
位地址
标识符
功能
ADC 输入通道选择位
CHS[3:0]
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
输入通道
AIN0 输入
AIN1 输入
AIN2 输入
AIN3 输入
AIN4 输入
AIN5 输入
AIN6 输入
AIN7 输入
AIN8 输入,内部1/8VDD
AIN9 输入,内部参考电压
AIN10 输入,内部接地
AIN11 输入,运算放大器0 的输出C0 作
为AD 的输入
7:4
CHS[3:0]
1100
AIN12 输入,温度传感器/运放2 输出
内短
其它
3
2
CHOP_EN
DEM_EN
需配置为0
需配置为0
内部参考电压选择
REF_SEL[1:0]
内部参考电压
1.45V
2.0V
3.0V
4.0V
00
01
10
11
1:0
REF_SEL[1:0]
表37 METCH 寄存器各位功能表
位地址
标识符
功能
SAR_ADC 内部参考电压输出使能
0:不输出内部参考电压
1:输出内部参考电压
0
VREF_OEN
Rev.1.4
第52 页,共100 页
CSU8RP3427/CSU8RP3429
注:当VREF_OEN=0 时,把VREFS[1:0]配置为2’b11,也可以通过
PT3.0 输出内部参考电压。
表38 SRADL 寄存器各位功能表
位地址
标识符
功能
7:0
SRAD[7:0]
ADC 数据的低8 位,只可读
表39 SRADH 寄存器各位功能表
位地址
标识符
功能
3:0
SRAD[11:8]
ADC 数据的高4 位,只可读
表40 SROFTL 寄存器各位功能表
位地址
标识符
功能
7:0
SROFT[7:0]
校正值数据的低8 位
表41 SROFTH 寄存器各位功能表
位地址
标识符
功能
3:0
SROFT[11:8]
校正值数据的高4 位
表42 TRIM_REF 寄存器各位功能表
位地址
标识符
功能
7:0
TRIM_REF[7:0] 内部参考电压TRIMMING 值
表43 输入电压和SRAD 输出数据的关系
SRAD[11:0]
输入电压
11
0
0
10
0
0
9
0
0
8
0
0
7
0
0
6
0
0
5
0
0
4
0
0
3
0
0
2
0
0
1
0
0
0
0
1
0/4096*VREF
1/4096*VREF
…
…
4094/4096*VREF
4095/4096*VREF
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
3.5.2 转换时间
12 位AD 转换时间=(1/ADC 时钟频率)× (12+CALIF+ADC输入信号获取时间)
表44 转换时间说明表(1)
指令周期
CALIF SRADCKS SRADACKS
AD转换时间
4MHz
0
01
00
1/ ( (16MHz / 4) / 2) × (12 + 0 + 16) = 14us
Rev.1.4
第53 页,共100 页
CSU8RP3427/CSU8RP3429
01
00
01
10
00
01
10
11
00
01
00
01
10
00
01
10
11
00
01
00
01
10
00
01
10
11
00
01
10
11
00
01
00
01
10
00
01
10
11
00
01
10
11
00
01
10
00
01
10
1/ ( (16MHz / 4) / 2) × (12 + 0 + 8) = 10us
1/ ( (16MHz / 4) / 4) × (12 + 0 + 16) = 28us
1/ ( (16MHz / 4) / 4) × (12 + 0 + 8) = 20us
1/ ( (16MHz / 4) / 4) × (12 + 0 + 4) = 16us
1/ ( (16MHz / 4) / 8) × (12 + 0 + 16) = 56us
1/ ( (16MHz / 4) / 8) × (12 + 0 + 8) = 40us
1/ ( (16MHz / 4) / 8) × (12 + 0 + 4) = 32us
1/ ( (16MHz / 4) / 8) × (12 + 0 + 2) = 28us
1/ ( (16MHz / 4) / 2) × (12 + 1 + 16) = 14.5us
1/ ( (16MHz / 4) / 2) × (12 + 1 + 8) = 10.5us
1/ ( (16MHz / 4) / 4) × (12 + 1 + 16) = 29us
1/ ( (16MHz / 4) / 4) × (12 + 1 + 8) = 21us
1/ ( (16MHz / 4) / 4) × (12 + 1 + 4) = 17us
1/ ( (16MHz / 4) / 8) × (12 + 1 + 16) = 58us
1/ ( (16MHz / 4) / 8) × (12 + 1 + 8) = 42us
1/ ( (16MHz / 4) / 8) × (12 + 1 + 4) = 34us
1/ ( (16MHz / 4) / 8) × (12 + 1 + 2) = 30us
1/ ( (16MHz / 8) / 1) × (12 + 0 + 16) = 14us
1/ ( (16MHz / 8) / 1) × (12 + 0 + 8) = 10us
1/ ( (16MHz / 8) / 2) × (12 + 0 + 16) = 28us
1/ ( (16MHz / 8) / 2) × (12 + 0 + 8) = 20us
1/ ( (16MHz / 8) / 2) × (12 + 0 + 4) = 16us
1/ ( (16MHz / 8) / 4) × (12 + 0 + 16) = 56us
1/ ( (16MHz / 8) / 4) × (12 + 0 + 8) = 40us
1/ ( (16MHz / 8) / 4) × (12 + 0 + 4) = 32us
1/ ( (16MHz / 8) / 4) × (12 + 0 + 2) = 24us
1/ ( (16MHz / 8) / 8) × (12 + 0 + 16) = 112us
1/ ( (16MHz / 8) / 8) × (12 + 0 + 8) = 80us
1/ ( (16MHz / 8) / 8) × (12 + 0 + 4) = 64us
1/ ( (16MHz / 8) / 8) × (12 + 0 + 2) = 56us
1/ ( (16MHz / 8) / 1) × (12 + 1 + 16) = 14.5us
1/ ( (16MHz / 8) / 1) × (12 + 1 + 8) = 10.5us
1/ ( (16MHz / 8) / 2) × (12 + 1 + 16) = 29us
1/ ( (16MHz / 8) / 2) × (12 + 1 + 8) = 21us
1/ ( (16MHz / 8) / 2) × (12 + 1 + 4) = 17us
1/ ( (16MHz / 8) / 4) × (12 + 1 + 16) = 58us
1/ ( (16MHz / 8) / 4) × (12 + 1 + 8) = 42us
1/ ( (16MHz / 8) / 4) × (12 + 1 + 4) = 34us
1/ ( (16MHz / 8) / 4) × (12 + 1 + 2) = 30us
1/ ( (16MHz / 8) / 8) × (12 + 1 + 16) = 116us
1/ ( (16MHz / 8) / 8) × (12 + 1 + 8) = 84us
1/ ( (16MHz / 8) / 8) × (12 + 1 + 4) = 68us
1/ ( (16MHz / 8) / 8) × (12 + 1 + 2) = 60us
1/ ( (16MHz / 16) / 1) × (12 + 0 + 16) = 28us
1/ ( (16MHz / 16) / 1) × (12 + 0 + 8) = 20us
1/ ( (16MHz / 16) / 1) × (12 + 0 + 4) = 16us
1/ ( (16MHz / 16) / 2) × (12 + 0 + 16) = 56us
1/ ( (16MHz / 16) / 2) × (12 + 0 + 8) = 40us
1/ ( (16MHz / 16) / 2) × (12 + 0 + 4) = 32us
10
11
01
10
1
11
00
01
0
10
11
2MHz
00
01
1
10
11
00
01
1MHz
0
Rev.1.4
第54 页,共100 页
CSU8RP3427/CSU8RP3429
11
00
01
10
11
00
01
10
11
00
01
10
00
01
10
11
00
01
10
11
00
01
10
11
00
01
10
11
00
01
10
11
00
01
10
11
00
01
10
11
00
01
10
11
00
01
10
11
00
1/ ( (16MHz / 16) / 2) × (12 + 0 + 2) = 28us
1/ ( (16MHz / 16) / 4) × (12 + 0 + 16) = 112us
1/ ( (16MHz / 16) / 4) × (12 + 0 + 8) = 80us
1/ ( (16MHz / 16) / 4) × (12 + 0 + 4) = 64us
1/ ( (16MHz / 16) / 4) × (12 + 0 + 2) = 48us
1/ ( (16MHz / 16) / 8) × (12 + 0 + 16) = 224us
1/ ( (16MHz / 16) / 8) × (12 + 0 + 8) = 160us
1/ ( (16MHz / 16) / 8) × (12 + 0 + 4) = 128us
1/ ( (16MHz / 16) / 8) × (12 + 0 + 2) = 112us
1/ ( (16MHz / 16) / 1) × (12 + 1 + 16) = 29us
1/ ( (16MHz / 16) / 1) × (12 + 1 + 8) = 21us
1/ ( (16MHz / 16) / 1) × (12 + 1 + 4) = 17us
1/ ( (16MHz / 16) / 2) × (12 + 1 + 16) = 58us
1/ ( (16MHz / 16) / 2) × (12 + 1 + 8) = 42us
1/ ( (16MHz / 16) / 2) × (12 + 1 + 4) = 34us
1/ ( (16MHz / 16) / 2) × (12 + 1 + 2) = 15us
1/ ( (16MHz / 16) / 4) × (12 + 1 + 16) = 116us
1/ ( (16MHz / 16) / 4) × (12 + 1 + 8) = 84us
1/ ( (16MHz / 16) / 4) × (12 + 1 + 4) = 68us
1/ ( (16MHz / 16) / 4) × (12 + 1 + 2) = 60us
1/ ( (16MHz / 16) / 8) × (12 + 1 + 16) = 232us
1/ ( (16MHz / 16) / 8) × (12 + 1 + 8) = 168us
1/ ( (16MHz / 16) / 8) × (12 + 1 + 4) = 136us
1/ ( (16MHz / 16) / 8) × (12 + 1 + 2) = 120us
1/ ( (16MHz / 32) / 1) × (12 + 0 + 16) = 56us
1/ ( (16MHz / 32) / 1) × (12 + 0 + 8) = 40us
1/ ( (16MHz / 32) / 1) × (12 + 0 + 4) = 32us
1/ ( (16MHz / 32) / 1) × (12 + 0 + 2) = 28us
1/ ( (16MHz / 32) / 2) × (12 + 0 + 16) = 112us
1/ ( (16MHz / 32) / 2) × (12 + 0 + 8) = 80us
1/ ( (16MHz / 32) / 2) × (12 + 0 + 4) = 64us
1/ ( (16MHz / 32) / 2) × (12 + 0 + 2) = 56us
1/ ( (16MHz / 32) / 4) × (12 + 0 + 16) = 224us
1/ ( (16MHz / 32) / 4) × (12 + 0 + 8) = 160us
1/ ( (16MHz / 32) / 4) × (12 + 0 + 4) = 128us
1/ ( (16MHz / 32) / 4) × (12 + 0 + 2) = 96us
1/ ( (16MHz / 32) / 8) × (12 + 0 + 16) = 448us
1/ ( (16MHz / 32) / 8) × (12 + 0 + 8) = 320us
1/ ( (16MHz / 32) / 8) × (12 + 0 + 4) = 256us
1/ ( (16MHz / 32) / 8) × (12 + 0 + 2) = 224us
1/ ( (16MHz / 32) / 1) × (12 + 1 + 16) = 58us
1/ ( (16MHz / 32) / 1) × (12 + 1 + 8) = 42us
1/ ( (16MHz / 32) / 1) × (12 + 1 + 4) = 34us
1/ ( (16MHz / 32) / 1) × (12 + 1 + 2) = 30us
1/ ( (16MHz / 32) / 2) × (12 + 1 + 16) = 116us
1/ ( (16MHz / 32) / 2) × (12 + 1 + 8) = 84us
1/ ( (16MHz / 32) / 2) × (12 + 1 + 4) = 68us
1/ ( (16MHz / 32) / 2) × (12 + 1 + 2) = 60us
1/ ( (16MHz / 32) / 4) × (12 + 1 + 16) = 232us
10
11
00
01
1
10
11
00
01
10
11
00
0
500KHz
1
01
10
Rev.1.4
第55 页,共100 页
CSU8RP3427/CSU8RP3429
01
10
11
00
01
10
11
1/ ( (16MHz / 32) / 4) × (12 + 1 + 8) = 168us
1/ ( (16MHz / 32) / 4) × (12 + 1 + 4) = 136us
1/ ( (16MHz / 32) / 4) × (12 + 1 + 2) = 120us
1/ ( (16MHz / 32) / 8) × (12 + 1 + 16) = 464us
1/ ( (16MHz / 32) / 8) × (12 + 1 + 8) = 336us
1/ ( (16MHz / 32) / 8) × (12 + 1 + 4) = 272us
1/ ( (16MHz / 32) / 8) × (12 + 1 + 2) = 240us
11
3.5.3 使用内部参考电压的校准方法
内部参考电压作参考时,由于参考电压本身的具有离散性,所以需要对内部参考电压进行校正。在
烧录芯片的时候,已经在程序区(地址为0xFF7~0xFFF)烧录了参考电压的校准程序段,所以在上电的时
候,需要把这个校准系数读出来,并赋值给TRIM_REF寄存器。
读取校准系数用法:
movlw xxh
call 0ff7h
movwf TRIM_REF
给W 工作寄存器赋值(xxh=03h/02h/01h/00h 分别表示读取1.45V/2.0V/3.0V/4.0V 的校准系数),
使用call 0ff7h 调用校准程序段,之后对应的内部参考电压的校准系数会存在W 工作寄存器。最后把
W 工作寄存器值赋给TRIM_REF寄存器,则完成内部参考电压的校准。如果需要用到2个或2个以上内
部参考电压,只需把这些内部参考电压的校准系数各自保存起来,在使用的过程中只需把这个系数赋
值给TRIM_REF寄存器,即对相应的参考电压进行校准。可参照以下例程:
(如果有多个通道在使用时,当检测其中任一通道时,其它模拟口要设置为数字口。)
movlf macro d1,f1
movlw d1
movwf f1
endm
movff macro f1,f2
movfw f1
movwf f2
endm
;************************************************************************
AD_ROUT:
movlw
call
;上电先从程序区中读出内部参考电压的校准系数
03H
0ff7H
AD14_TEMP
movwf
;把内部参考电压1.4V的校准系数放在AD14_TEMP中
movlw
call
movwf
02H
0ff7H
AD20_TEMP
; 把内部参考电压2.0V的校准系数放在AD20_TEMP中
; 把内部参考电压3.0V的校准系数放在AD30_TEMP中
movlw
call
movwf
01H
0ff7H
AD30_TEMP
movlw
call
00H
0ff7H
Rev.1.4
第56 页,共100 页
CSU8RP3427/CSU8RP3429
movwf
return
AD40_TEMP
; 把内部参考电压4.0V的校准系数放在AD40_TEMP中
AD_init:
;CPUCLK = 16/4 =4MHZ
movlw 11000001B
movwf SRADCON0
movlw 00000010B
movwf SRADCON1
movlw 00001000B
movwf SRADCON2
return
;B1:B0 01
;B5 B4 = 0 0
;B[5] 0
ADC CLOCK = CPUCLK/2=2M
ADC输入信号获取时间 16个ADC时钟
结果放在SRAD中
;B[1:0] 10
;00H
内部参考电压
AIN0输入, 1.45V
…
ADC14_CONVERT:
movlf 00001000B
movwf PT3CON
movlf 38h,SRADCON2
;把其它的模拟口设为数字口,打开当前的模拟口
;转换第3通道的信号
bsf SRADCON1,ADEN
movff AD14_TEMP,TRIM_REF ;内部参考电压1.45V校准
call delay40US
bsf
nop
SRADCON1,SRADS
btfsc SRADCON1,SRADS
goto $-1
movfw SRADL
movwf AD3_VALU_l,1
movfw SRADH
movwf AD3_VALU_h,1
…
ADC20_CONVERT:
movlf 00000100B
movwf PT3CON
movlf 28h,SRADCON2
;把其它的模拟口设为数字口,打开当前的模拟口
;转换第2通道的信号
bsf SRADCON1,ADEN
movff AD20_TEMP,TRIM_REF ;内部参考电压2.0V校准
call delay40US
bsf
nop
SRADCON1,SRADS
btfsc SRADCON1,SRADS
goto $-1
movfw SRADL
movwf AD3_VALU_l,1
movfw SRADH
movwf AD3_VALU_h,1
…
3.5.4 AD 失调电压校正
不同芯片由于离散性的原因,AD 的失调电压可能有正有负。
方法一:
Rev.1.4
第57 页,共100 页
CSU8RP3427/CSU8RP3429
在AD 转换过程中通过不断变换SRADCON1 寄存器中的OFFEX 的值。如第一次AD 转换OFFEX
置0,第二次AD 转换OFFEX 置1,然后将第一次和第二次测试的AD 值求平均值。两次转换得到的
平均值就是去掉失调电压的正确结果。
…
clrf sradcon1
movlw 20h
;VDD为参考电压,often=0,calif=0;enov=0,offex=0,vrefs=00
movwf sradcon2
bsf sradcon1,7
call delay_40us
…
;chs[3:0]=0010,选择通道2
;使能ADC模块
bsf sradcon1,6
;srads=1,开始转换
btfsc sradcon1,6 ;检测转换是否完成
goto $-1
movfw sradl
movwf adtmp1_l
movfw sradh
movwf adtmph_l
…
bsf sradcon1,2
bsf sradcon1,6
;offex=1
;srads=1,开始转换
btfsc sradcon1,6 ;检测转换是否完成
goto $-1
movfw sradl
movwf adtmp1_2
movfw sradh
movwf adtmph_2
aver adtmph_1,adtmpl_1,adtmph_2,adtmpl_2 ;求两次AD值平均值,并保存在
;adtmph_1,adtmpl_1
…
方法二:
1)配置SROFT_SEL[1:0]=2’b11 或SROFT_SEL[1:0]=2’b10,把失调电压变为正方向的失调电
压。
2)初始化时,选择AIN10 通道(即AD 输入内部接地),AD 转换得到的结果为失调电压的值,并
把这个值保存在SROFTL,SROFTH 寄存器中。
3)在测量信号时,把CALIF,ENOV 都置1,之后AD 转换的结果自动减去之前的失调电压值,
并保存在SRADL 和SRADH 寄存器中。
注:初始化计算得到的失调电压是相对于当前的ADC 的参考电压,之后只有在相同的参考电压下,才
可以进行减法校正。如果有使用过程中有多个不同的参考电压切换(参考电压都是恒定的),在初始
化时,可以保存多个失调电压值,之后各自减去失调电压。
Rev.1.4
第58 页,共100 页
CSU8RP3427/CSU8RP3429
…
movlf 41h,sradcon0 ;sroft_sel[1:0]=10,sradack[1:0]=00,sradck[1:0]=01
movlf 82h,sradcon1 ;内部2V为参考电压,often=0,calif=0;enov=0,offex=0,vrefs=10
movlf 21h,sradcon2 ;chs[3:0]=0010,选择通道2;选择内部2V
call delay_10us
…
bsf sradcon1,6
;srads=1,开始转换
btfsc sradcon1,6 ;检测转换是否完成
goto $-1
movlw sradl
movwf sroftl
movlw sradh
movwf srofth
…
bsf sradcon1,3
bsf sradcon1,4
…
;enov =1
;calif=1
bsf sradcon1,6
;srads=1,开始转换
btfsc sradcon1,6 ;检测转换是否完成
goto $-1
movlw sradl
movwf adtmp1
movlw sradh
movwf adtmph
…
3.5.5 数字比较器
ADC 模块可作为一个数字比较器。被测信号的输入频率应小于转换频率的1/2。比较器的速率是和AD
转换频率相关的。
操作:
1)通过ADC 通道选择控制位chs[3:0]选择比较器负端的信号输入,之后把OFTEN 置1,CALIF 清
0,ENOV 置0,把SRADEN 置1 使能ADC,SRADS 置1 启动转换,转换完成可把转换结果写入
SROFT 寄存器。
也可以直接把负端信号的AD 值直接写到SROFT 寄存器中,即人为指定负端电压值。
2)通过ADC 通道选择控制位chs[3:0]选择比较器正端的信号输入,之后把OFTEN 置0,CALIF 清
1,ENOV 置1,把SRADEN 置1 使能ADC,SRADS 置1 启动转换。
3)AD 数据的最高位SRAD[11]则是比较器的结果,为0 时表示正端电压大于负端电压,为1 时表示
正端电压小于负端电压。SRAD[11:0]为差值,带符号位的补码。
比较通道0 和通道1 的电压值,通道0 接比较器正端,通道1 接比较器负端。
Rev.1.4
第59 页,共100 页
CSU8RP3427/CSU8RP3429
…
clrf sradcon1
bsf sradcon1,5
movlw 00h
;VDD为参考电压,often=0,calif=0;enov=0,offex=0,vrefs=00
;often=1,结果保存在sroft寄存器中
movwf sradcon2
bsf sradcon1,7
call delay_10us
bsf sradcon1,6
;chs[3:0]=0000,选择通道0 作为比较器负端
;使能ADC模块
;srads=1,开始转换
btfsc sradcon1,6 ;检测转换是否完成
goto $-1
…
movlw 10h
movwf sradcon2
bcf sradcon1,5
bsf sradcon1,4
bsf sradcon1,3
bsf sradcon1,6
;chs[3:0]=0001,选择通道1 作为比较器正端
;often=0
;calif=1
;enov=1
;srads=1,开始转换
btfsc sradcon1,6 ;检测转换是否完成
goto $-1
btfsc sradh,3
goto le_cmp
goto gt_cmp
…
;正端电压小于负端电压
;正端大于等于负端电压
比较1V 电压和通道1 的电压,通道1 接比较器正端,1V 接比较器负端,假设采用5V 的VDD 作为参
考电压,那么1V 的AD 值为0x333。
…
clrf sradcon1
movlw 10h
;VDD为参考电压,often=0,calif=0;enov=0,offex=0,vrefs=00
movwf sradcon2
bsf sradcon1,4
bsf sradcon1,3
movlw 03h
;chs[3:0]=0001,选择通道1 作为比较器正端
;calif=1
;enov=1
movwf srofth
movlw 33h
movwf sroftl
bsf sradcon1,7
call delay_10us
bsf sradcon1,6
;sroft寄存器存入333h,即1V作为比较器负端
;使能ADC模块
;srads=1,开始转换
btfsc sradcon1,6 ;检测转换是否完成
goto $-1
btfsc sradh,3
goto le_cmp
goto gt_cmp
…
;正端电压小于负端电压
;正端大于等于负端电压
Rev.1.4
第60 页,共100 页
CSU8RP3427/CSU8RP3429
3.5.6 内部测量VDD 的电压
用户可以通过使用内部参考电压或者外部参考电压输入(外部参考电压固定且不随 VDD 电压变
化)两种方法来测试芯片内部VDD 的电压。
使用外部参考电压,使用条件较多,需额外提供参考源。
使用内部参考电压不需要额外的硬件条件。但是,使用内部参考电压会由于本身内部参考电压值
的不准而影响精度。可以通过内部参考电压校正来提高测试的精度。
外接3V 作为参考电压,测VDD 电压。选择通道8,测出1/8VDD 的AD 值,之后乘以8 得出VDD 的
AD 值,再乘以参考电压则为VDD 电压。
…
clrf sradcon1
bsf sradcon1,0
movlw 88h
;often=0,calif=0;enov=0,offex=0,vrefs=00
;vrefs=01,选择外部参考电压,接3V
movwf sradcon2
bsf sradcon1,7
call delay_10us
bsf sradcon1,6
;chs[3:0]=0101,选择通道8 ,1/8VDD
;使能ADC模块
;srads=1,开始转换
btfsc sradcon1,6 ;检测转换是否完成
goto $-1
movfw sradl
movwf adtmp1
movfw sradh
movwf adtmph
bcf status,c
rlf adtmp1
rlf adtmph
rlf adtmp1
rlf adtmph
rlf adtmp1
rlf adtmph
…
;AD值乘以2
;AD值乘以4
;AD值乘以8,小数点在adtmph的bit3和bit4之间
3.5.7 温度传感器
CSU8RP3427/CSU8RP3429 包含一个温度传感器,可以测量的温度范围是-40℃到85℃。温度传感
器与SAR_ADC 复用,因此做为温度传感器时,不能同时做为ADC 进行AD 转换。
做温度传感器时,温度传感器信号获取时间必须大于或等于8us,通过配置SRADCON0 的
SRADACKS[1:0]和SRADCKS[1:0]实现。使用温度传感器时,打开温度传感器使能后需要等待至少
10us,然后选择温度传感器电流源,依次选择温度传感器电流源1 到6,并对每个电流源做一次AD 转
换,将6 次转换的结果取平均值,即为我们所需要的温度传感器所得值
Rev.1.4
第61 页,共100 页
CSU8RP3427/CSU8RP3429
…
MOVLW 02H
MOVWF SRADCON0
;配置转换时间
BSF SRADCON1,SRADEN ;ADC使能
BSF TEMCON,TS_EN
CALL delay_15us
;使能温度传感器
;使能温度传感器后延时至少10us
BCF INTE,ADIE
BCF INTE,GIE
BCF INTF,ADIF
MOVLW 80H
MOVWF TEMCON
;选择温度传感器电流源1
BSF SRADCON1,SRADS ;进行转换
btfsc SRADCON1,SRADS
GOTO $-1
MOVFW SRADL
MOVWF TEM10
MOVFW SRADH
MOVWF TEM11
;转换完成,读取AD值低8位
;保存AD值低8位
;读取AD值高4位
;保存AD值高4位
MOVLW 81H
MOVWF TEMCON
;选择温度传感器电流源2
BSF SRADCON1,SRADS ;进行转换
btfsc SRADCON1,SRADS
GOTO $-1
MOVFW SRADL
MOVWF TEM20
MOVFW SRADH
MOVWF TEM21
;转换完成,读取AD值低8位
;保存AD值低8位
;读取AD值高4位
;保存AD值高4位
…
MOVLW 85H
;选择温度传感器电流源6
MOVWF TEMCON
BSF SRADCON1,SRADS
btfsc SRADCON1,SRADS
GOTO $-1
MOVFW SRADL
MOVWF TEM60
;转换完成,读取AD值低8位
;保存AD值低8位
;读取AD值高4位
MOVFW SRADH
MOVWF TEM61
;保存AD值高4位
…
对6次转换的AD值进行算术平均,即可得到相应温度对应的AD值
3.5.8 运算放大器2
SRADC 模块可以可以做为一个运算放大器使用。做为运算放大器时,可选择PT3.1,PT3.2 作为
运算放大器输入,运算放大器输出做为AIN12 的输入。如选择PT3.1,PT3.2 输入做为运放2 输入,则
放大倍数默认为内部放大32 倍。PT3.2 为运放正端输入,PT3.1 为负端输入
Rev.1.4
第62 页,共100 页
CSU8RP3427/CSU8RP3429
3.6 比较器/运算放大器
CSU8RP3427/CSU8RP3429 有两个模拟比较器/运算放大器,但是同一个核心电路,不能同时使用,只
能分时复用。由CMP_IO 配置模拟比较器/运算放大器的管脚。CMP_IO=0 时,做模拟比较器/运算放大
器0;否则,做模拟比较器/运算放大器1。
3.6.1 比较器/运算放大器
模拟比较器/运算放大器0,带两个模拟输入端C0P 和C0N,也可以使用内部参考电压VREF/2 作
为比较器的一个输入,CO 脚可做为比较器/运算放大器的输出。
如果在输入输出之间外间一个反馈电阻,则比较器可做运算放大器使用。做运算放大器使用时,
需配置CMPCON 寄存器的COS[2:0]位为3’b100。
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
地 名称
址
上电复
位值
3eh
3fh
INTF3
INTE3
CMPIF
CMPIE
0uuuuuuu
0uuuuuuu
00000000
uuuu000u
6ah CMPCON0
6bh CMPCON1
CMPEN
COS[2:0]
CMP_CFG1
CMPOFT_INV
CMP_CFG0
CMP_IO
CMPOUT
CMPOFT_SEL[1:0]
表45 CMPCON0 寄存器各位功能表
位地址
标识符
功能
7
比较器/运算放大器使能位
1:使能
CMPEN
0:禁止
6:4
比较器/运算放大器选择
COS[2:0]
000
功能描述
比较器/运算放大器位使用,PT5.2、PT5.3、
PT5.4 做为普通IO
001
010
011
100
101
110
111
用作比较器,PT5.3 接比较器负端,PT5.4 接
比较器正端,PT5.2 做为普通IO
用作比较器,PT5.3 接比较器正端,PT5.4 接
比较器负端,PT5.2 做为普通IO
用作比较器,PT5.3 接比较器正端,VREF/2
接比较器负端,PT5.4、PT5.2 做为普通IO
用作运算放大器,PT5.2 做为运算放大器输出
口,PT5.4 接运放正端,PT5.3 接运放负端,
用作比较器,PT5.3 接比较器负端,PT5.4 接
比较器正端,PT5.2 做为比较器输出
COS[2:0]
用作比较器,PT5.3 接比较器正端,PT5.4 接
比较器负端,PT5.2 做为比较器输出
用作比较器,PT5.3 接比较器正端,VREF/2
接比较器负端,PT5.2 做为比较器输出
CMP_IO=0 时,PT5.2 做为比较器/运算放大器输出口,PT5.4 接
比较器/运放正端,PT5.3 接比较器/运放负端,PT1.5,PT1.6,
PT1.7 做普通IO 口;否则,PT1.7 做为比较器/运算放大器输出
口,PT1.5 接比较器/运放正端,PT1.6 接比较器/运放负端,
PT5.2,PT5.3,PT5.4 做普通IO 口。上表只给出CMP_IO=0 的
情况。
3
CMP_CFG1
运算放大器放大方式选择
Rev.1.4
第63 页,共100 页
CSU8RP3427/CSU8RP3429
0:放大倍数由外部电路决定
1:内部放大16 倍
单端输入选择位(仅当CMP_CFG1 配置为1 时有效)
2
CMP_CFG0
0:正常输入
1:单端输入
比较器/运算放大器管脚选择
0:PT5.2 做为比较器/运算放大器输出口,PT5.4 接比较器/运放正
端,PT5.3 接比较器/运放负端,PT1.5,PT1.6,PT1.7 做普通
1
0
CMP_IO
IO 口
1:PT1.7 做为比较器/运算放大器输出口,PT1.5 接比较器/运放正
端,PT1.6 接比较器/运放负端,PT5.2,PT5.3,PT5.4 做普通
IO 口
比较器的比较结果
CMPOUT
表46 CMPCON1 寄存器各位功能表
位地址
标识符
功能
3
CMPOFT_INV
需配置为0
2:1
比较器/运算放大器失调电压选择
CMPOFT_SEL[1:0]
失调电压
00
01
10
11
默认失调电压
CMPOFT_SEL[1:0]
使失调电压往负方向偏5mV
使失调电压往正方向偏5mV
使失调电压往正方向偏10mV
表47 比较器/运算放大器的寄存器各位功能表
PT5.2/PT1.7
COS[2]
COS[1]
COS[0]
cmp_en
pt5en[2]/pt1en[7] pt5od[2]
x(GPIO)
Z
Ao
Z
Z
0
Co(1)
Co
Z
Z
0
1
1
1
1
1
1
1
1
1
1
1
x
0
0
0
0
0
0
0
1
1
1
1
x
0
0
1
1
1
1
1
0
0
0
0
x
0
1
x
x
0
1
1
x
x
0
1
x
x
x
0
x
1
1
1
0
x
1
1
x
x
x
x
x
x
1
0
x
x
x
1
0
Co(1)
Co
Z
Z
0
Co(1)
Co
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
x
x
0
1
1
1
0
x
1
1
1
0
x
x
x
1
0
注:(1)此处的比较器输出是开漏输出,需要外部上拉电阻。
Ao 表示运算放大器模拟输出;Co 表示比较器输出;Z 表示高阻
下图为各种情况下比较器及运算放大器的使用示意图
Rev.1.4
第64 页,共100 页
CSU8RP3427/CSU8RP3429
比较器
运算放大器
COS=3'B000
D
PT5.3/C0N
COS=3'B100
A
PT5.3/C0N
-
-
OFF
CMPOUT
D
D
A
A
PT5.4/C0P
PT5.2/CO
PT5.4/C0P
PT5.2/CO
+
+
比较器
比较器
COS=3'B001
A
PT5.3/C0N
COS=3'B101
A
PT5.3/C0N
-
-
CMPOUT
CMPOUT
A
D
A
A
PT5.4/C0P
PT5.2/CO
PT5.4/C0P
PT5.2/CO
+
+
比较器
比较器
COS=3'B010
A
PT5.4/C0P
COS=3'B110
A
PT5.4/C0P
-
-
CMPOUT
CMPOUT
A
D
A
A
PT5.3/C0N
PT5.2/CO
PT5.3/C0N
PT5.2/CO
+
+
比较器
比较器
VREF/2
VREF/2
COS=3'B011
D
COS=3'B111
D
PT5.4/C0P
PT5.4/C0P
-
-
CMPOUT
CMPOUT
A
A
A
PT5.3/C0N
PT5.2/CO
PT5.3/C0N
PT5.2/CO
+
+
D
3.6.2 比较器参考电压
用户可以使用内部参考电压VERF 作为比较器的一个输入,参考电压值可以为VDD、内部
1.45/2.0/3.0/4.0V 参考电压和P3.0 输入的外部参考电压,通过SRADCON2 寄存器的VREFS[1:0]位进行
选择。
3.6.3 比较器中断
1、必须是比较器使能的情况下,比较器中断使能才能有效。
2、在比较器使能的情况下,比较器输出端的状态变化都会使比较器结果变化标志位置1。如果将比较
器中断使能,比较器输出端的状态变化会使芯片进入中断,同时置标志位。
Rev.1.4
第65 页,共100 页
CSU8RP3427/CSU8RP3429
3.7 VDD 电压自检
VDD 电压自检功能即将VDD 电压与选定电压进行比较,输出结果可以控制PT5.0,PT5.1 输
出。
表48 VDD 电压自检寄存器列表
上电复位
值
地址
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
5ch CV_CTL
SV_SEL[1:0]
SV_OUT
u00uuuu0
表49 CV_CTL 寄存器各位功能表
位地址
标识符
功能
VDD 自检参考电压选择
SV_SEL[1:0]
参考电压
4.8V
4.9V
5.4V
5.6V
00
01
10
11
6:5
SV_SEL[1:0]
CV_OUT
将VDD 与参考电压进行比较,VDD 大于参考电压则比较器输出结果
CV_OUT 为1,否则为0。
需将SRADEN=1 且REF_SEL[1:0]=01,否则比较器输出恒为0。
VDD 自检结果输出
1:VDD 大于参考电压
0
0:VDD 小于参考电压
3.8 4*5 LCD
CSU8RP3429 中内置一个4*5 LCD 驱动,1/4duty,1/2bias,但这需要配合软件使用。使用LCD 的时
候,需把SRADEN 置1。
当使能LCD 时,在VDD>=3V 的情况下,PT1.4(COM0),PT1.5(COM1),PT1.6(COM2),
PT1.7(COM3),PT1.0(SEG0),PT1.1(SEG1),PT1.2(SEG2),PT5.4(SEG3)和PT5.3(SEG4)这9 个IO 口
输出高电平时,IO 电压为3V;输出低电压时,IO 口电压为0V。另外PT1.4(COM0),PT1.5(COM1),
PT1.6(COM2)和PT1.7(COM3)做输入时电压为1.5V。这就提供了3V LCD 所需的电压,只需通过程序
对这些IO 的控制就可以进行LCD 控制。
注:通过代码选项使能LCD 后,再给COM 口或SEG 口赋值时,请使用movwf 指令,不要使用
iorwf,andwf,iorwf,xorwf,andwf 等指令。因为这些指令都会先从IO 口读取数据再进行运算及写
回,而COM 口或SEG 口电压可能处于中间电压(没有达到逻辑高电平或低电平的门限电压,可能是
逻辑高电平或是逻辑低电平),这样会导致LCD 显示不正确。同时使用movfw 读取COM 口和SEG
口时也会出现中间电压的情况;在该种情况下进行读操作,需先结合IO 口的输入逻辑电平设置,判断
设置是否满足分辨高低电平状态的需求。
例如:VDD=5V,LCD 使能并且COM 口输出3V,如果METCH[VTHSEL]=0(高电平门限电压为
0.75VDD=3.75V,低电平门限电压为0.3VDD=1.5V),读取COM 口,可能识别为高电平或低电平;如
果METCH[VTHSEL]=1(高电平门限电压为2.0V,低电平门限电压为0.8V),读取COM 口数据可以
识别为高电平。
Rev.1.4
第66 页,共100 页
CSU8RP3427/CSU8RP3429
3.9 输入逻辑电平电压配置
表50 METCH 寄存器列表
Bit5 Bit4 Bit3
地
址
上电复位
值
名称
Bit7
Bit6
Bit2
Bit1
Bit0
7eh METCH
VTHSEL
01uu0000
表51 METCH 寄存器各位功能表
位地址 标识符
功能
输入逻辑电平电压控制信号
VTHSEL
0
输入逻辑电平
单
最小值 典型值 最大值 位
符号 参数
VIH1
VIL1
0.75VDD
0.8VDD
V
V
V
V
数字输入高电平
复位输入高电平
数字输入低电平
复位输入低电平
0.3VDD
0.2VDD
7
VTHSEL
1
单
最小值 典型值 最大值 位
符号 参数
VIH2
2.0
2.0
2.5
V
V
V
V
V
V
数字输入高电平
复位输入高电平
OSCI(PT1.4,PT1.5)
数字输入低电平
复位输入低电平
OSCI(PT1.4,PT1.5)
VIL2
0.8
0.8
1.0
3.10 输出电流配置
有3 个IO 口PT3.3,PT5.0 和PT5.1 输出电流大小可进行配置。PT5.0 和PT5.1,PT1.6 和PT1.7 输
出电流大小由代码选项进行配置(有20mA 或40mA 选择)。PT3.3 输出电流则有METCH2 寄存器中的
BDRV_P33 进行配置。
表52 METCH 寄存器列表
地
址
上电复位
值
名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
7dh METCH2
BDRV_P33
xx0uuuuu
表53 METCH 寄存器各位功能表
位地址 标识符
功能
PT3.3 输出电流选择
3
BDRV_P33 0:PT3.3 的输出电流IOH/IOL 为20mA/20mA@5V
1:PT3.3 的输出电流IOH/IOL 为20mA/40mA@5V
Rev.1.4
第67 页,共100 页
CSU8RP3427/CSU8RP3429
3.11 烧录模块
烧写器的接口:
Application PCB
VS
VPP
VDD
VSS
PDA
PCL
To application circuit
Isolation circuit
图16 烧写器接口图
表54 烧录接口说明
端口名称 型式
说明
VPP
VDD
VSS
PDA
PCL
VS
输入
PT1[3]端口,烧录电源
电源正端
输入
输入
电源负端
输入/输出
输入
PT1[2]端口,数据信号[1]
PT1[1]端口,时钟信号[2]
PT3[0] AD 校正信号线
输入
Rev.1.4
第68 页,共100 页
CSU8RP3427/CSU8RP3429
3.12 代码选项
标识符
功能
内部晶振频率选择
2M
4M
8M
ICK_SEL
16M
32M
PT5.0,PT5.1 驱动能力选择位
20mA@5V
40mA@5V
指令周期配置选项
BDRI_OP0
INS_OP
指令周期不支持动态配置,指令周期由代码选项CLKDIV 决定
指令周期支持动态配置,指令周期由MCK 寄存器中的CPUCLK_SEL[1:0]决定
LCD 使能位
使能LCD
LCD_OP
禁止LCD
指令周期选择
指令周期=4 个时钟周期
指令周期=8 个时钟周期
CLKDIV
指令周期=16 个时钟周期
LVD 配置
VDD 低于2.0V,LVD 复位系统
VDD 低于2.0V,LVD 复位系统;
STATUS 的LVD24 作为2.4V 的低电压检测器
STATUS 的LVD30 作为3.0V 的低电压检测器
STATUS 的LVD36 作为3.6V 的低电压检测器
VDD 低于2.4V,LVD 复位系统;
STATUS 的LVD30 作为3.0V 的低电压检测器
STATUS 的LVD36 作为3.6V 的低电压检测器
VDD 低于3.0V,LVD 复位系统;
STATUS 的LVD36 作为3.6V 的低电压检测器
VDD 低于3.6V,LVD 复位系统;
复位引脚选择
LVD_SEL
PT1.3 作为复位引脚
PT1.3 作为普通输入口
晶振引脚选择
RESET_PIN
XTAL_PIN
SECURITY
PT1.1 和PT1.2 作为普通IO 口
PT1.1 作为外部RC 时钟输入;或者PT1.1 通过外部时钟源直接灌入时钟;PT1.2
还是普通IO 口;
PT1.1 和PT1.2 接外部晶振为32768Hz
PT1.1 和PT1.2 接外部晶振2M~16MHz;还可通过PT1.1 灌时钟,PT1.2 悬空
代码保密位
使能代码加密
禁止代码加密
Rev.1.4
第69 页,共100 页
CSU8RP3427/CSU8RP3429
4 MCU 指令集
表55 表MCU 指令集
指令
操作
[W]←[W]+k
指令周期
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
[PC] ←[PC]+1+[W]
[Destination] ←[f]+[W]
[Destination] ←[f]+[W]+C
[W]←[W] AND k
[Destination] ← [W] AND [f]
[f<b>]←0
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
MOVWF f
NOP
[Destination] ←[f]+1
[Destination] ←[f]+1,jump if the result is zero
[W]←[W] OR k
[Destination] ← [W] OR [f]
[W]←[f]
[W]←k
[f]←[W]
No operation
1
1/2
1
1
1
1
1
1
Z
~
Z
Z
~
~
~
~
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
POP PC
[Destination<n+1>] ←[f<n>]
[Destination<n-1>] ←[f<n>]
STOP OSC
2
2
2
2
2
1
1
1
~
~
~
~
~
C,Z
C,Z
PD
SUBLW k
SUBWF f,d
SUBWFC f,d
SWAPF f,d
XORLW k
XORWF f,d
参数说明:
[W] ← k – [W]
1
1
1
1
1
1
C,DC,Z
C,DC,Z
C,DC,Z
~
Z
Z
[Destinnation] ← [f]– [W]
[Destinnation] ← [f]– [W]-1+C
swap f
[W]←[W] XOR k
[Destination] ← [W] XOR [f]
f:数据存储器地址(00h ~17Fh)
W:工作寄存器
k: 立即数
d:目标地址选择: d=0 结果保存在工作寄存器, d=1: 结果保存在数据存储器f 单元
b:位选择(0~7)
[f]:f 地址的内容
Rev.1.4
第70 页,共100 页
CSU8RP3427/CSU8RP3429
PC:程序计数器
C:进位标志
DC:半加进位标志
Z:结果为零标志
PD:睡眠标志位
TO:看门狗溢出标志
WDT:看门狗计数器
表56 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
Rev.1.4
第71 页,共100 页
CSU8RP3427/CSU8RP3429
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
Rev.1.4
第72 页,共100 页
CSU8RP3427/CSU8RP3429
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
Rev.1.4
第73 页,共100 页
CSU8RP3427/CSU8RP3429
9
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<=FFFH
指令格式
操作
(top stack)<—PC+1
PC<—K
无
标志位
描述
子程序调用,先将PC+1 压入堆栈,然后把立即数地址下载到PC 中。
2
周期
Rev.1.4
第74 页,共100 页
CSU8RP3427/CSU8RP3429
12
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
Rev.1.4
第75 页,共100 页
CSU8RP3427/CSU8RP3429
15
DAW
十进制调整W 寄存器
DAW
指令格式
操作
十进制调整W 寄存器
C,DC
标志位
描述
一般与加法一起使用。
如果低半字节的值大于9 或DC 为1 时,低半字节加6;
如果高半字节的值大于9 或C 为1 时,高半字节加6
1
周期
例子
在DAW 指令执行之前
W=25H+39H =64=5EH
在指令执行之后
若W=25H;
ADDLW 39H
DAW
W=(64)BCD
25H
+ 39H
----------
5EH
+ 06H
----------
64H
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
Rev.1.4
第76 页,共100 页
CSU8RP3427/CSU8RP3429
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)
18
GOTO
无条件跳转
GOTO K 0<=K<=FFFH
指令格式
操作
PC<—K
无
标志位
描述
立即地址载入PC
2
周期
19
HALT
停止CPU 时钟
HALT
指令格式
操作
CPU 停止
无
标志位
描述
CPU 时钟停止,晶振仍然工作,CPU 能够通过内部或者外部中断重启。
1
周期
Rev.1.4
第77 页,共100 页
CSU8RP3427/CSU8RP3429
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
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
Rev.1.4
第78 页,共100 页
CSU8RP3427/CSU8RP3429
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
24
MOVFW
传送到工作寄存器
MOVFW f 0<=f<=1FFH
指令格式
操作
(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
Rev.1.4
第79 页,共100 页
CSU8RP3427/CSU8RP3429
26
MOVWF
将工作寄存器的值传送到f 中
MOVWF f 0<=f<=1FFH
指令格式
操作
(f)<—(W)
无
标志位
描述
将工作寄存器的值传送到f 中
1
周期
例子
MOVWF f
在指令执行之前
W=88H f=23H
在指令执行之后
W=88H f=88H
27
NOP
无操作
NOP
无操作
无
指令格式
操作
标志位
描述
无操作
1
周期
28
PUSH
把work 和status 寄存器入栈保护
PUSH
指令格式
操作
(top stack)<—work/status
无
标志位
描述
把work 和status 寄存器的值做入栈处理,支持8 级堆栈,不同于PC 堆栈;
其中状态寄存器不包括LVD36,LVD24,PD 和TO。
2
周期
29
POP
把work 和status 寄存器出栈处理
POP
指令格式
操作
(Top Stack)=>work/status
Pop Stack
无
标志位
描述
把当前栈顶的值做出栈处理,分别更新work 和status 寄存器,支持8 级堆
栈,不同于PC 堆栈;其中状态寄存器不包括LVD36,LVD24,PD 和
TO。
2
周期
30
RETFIE
从中断返回
RETFIE
(Top Stack)=>PC
Pop Stack
1=>GIE
指令格式
操作
标志位
描述
无
PC 从堆栈顶部得到,然后出栈,设置全局中断使能位为1
Rev.1.4
第80 页,共100 页
CSU8RP3427/CSU8RP3429
2
周期
31
RETLW
返回,并将立即数送到工作寄存器中
RETLW K 0<=K<=FFH
指令格式
操作
(W)<—K
(Top Stack)=>PC
Pop Stack
无
标志位
描述
将8bit 的立即数送到工作寄存器中,PC 值从栈顶得到,然后出栈
2
周期
32
RETURN
从子程序返回
RETURN
(Top Stack)=>PC
Pop Stack
无
指令格式
操作
标志位
描述
PC 值从栈顶得到,然后出栈
2
周期
33
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
34
RRF
带进位右移
指令格式
操作
RRF f,d 0<=f<=1FFH d=0,1
(目标地址[n-1])<—(f[n])
(目标地址[7])<—C
C<—(f[7])
C
标志位
描述
F 带进位位右移一位
如果d 为0,结果保存到工作寄存器
如果d 为1,结果保存到f 中
1
周期
例子
RRF f,0
在指令执行之前
C=0 W=88H f=95H
在指令执行之后
Rev.1.4
第81 页,共100 页
CSU8RP3427/CSU8RP3429
C=1 W=4AH f=95H
35
SLEEP
晶振停止
SLEEP
指令格式
操作
CPU 晶振停止
PD
标志位
描述
CPU 晶振停止。CPU 通过外部中断源重启
1
周期
Rev.1.4
第82 页,共100 页
CSU8RP3427/CSU8RP3429
36
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(代表结果非零)
37
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
Rev.1.4
第83 页,共100 页
CSU8RP3427/CSU8RP3429
38
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
39
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
40
XORLW
工作寄存器的值与立即数异或
XORLW K 0<=K<=FFH
指令格式
操作
(W)<—(W)^K
Z
标志位
描述
8bit 的立即数与工作寄存器的值异或,结果保存在工作寄存器中
1
周期
例子
XORLW 5FH
在指令执行之前
W=ACH
在指令执行之后
W=F3H
41
XORWF
f 的值与工作寄存器的值异或
Rev.1.4
第84 页,共100 页
CSU8RP3427/CSU8RP3429
指令格式
操作
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
Rev.1.4
第85 页,共100 页
CSU8RP3427/CSU8RP3429
5 电气特性
5.1 极限值
参数
范围
-0.3~6.0
-0.3~VDD+0.3
-40~+125
-55~+150
220ºC,10 秒
单位
V
V
ºC
ºC
电源VDD
引脚输入电压
工作温度
存贮温度
焊接温度,时间
5.2 直流特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)
符号
参数
测试条件
25 ºC
-40 ºC ~+85 ºC
最小值 典型值 最大值 单位
2.2
2.3
5
5
5.5
5.5
V
V
VDD
工作电压
外部晶振频
率
FXT
16
MHz
IO 口做输入
时允许最大
电流
Imax
50
mA
25 ºC,代码选项 XTAL_PIN 选
ERC
25 ºC,代码选项 XTAL_PIN 选外
部低速晶振
16
50
4
MHz
KHz
MHz
V/ms
外部灌入时
钟
EXT_CK
Vpor
25 ºC,代码选项 XTAL_PIN 选外
部高速晶振
系统电源电
压上升速率
0.07
4.8V
4.9V
5.4V
5.6V
4.8
4.9
5.4
5.6
VDD 电压自
检参考电压
CVREF
Tcpu
指令周期
数字输入高
电平
VDD:2.2V~5.5V
250
ns
V
0.75VDD
PT1,PT3,PT5
VIH1
(VTH_SEL=0)
复位输入高
电平
0.8VDD
数字输入低
电平
0.3VDD
0.2VDD
PT1, PT3,PT5
VIL1
(VTH_SEL=0)
V
复位输入低
电平
数字输入高
电平
2.0
PT1,PT3,PT5(普通IO)
VIH2
(VTH_SEL=1)
复位输入高
电平
V
V
2.0
2.5
OSCI
数字输入低
电平
PT1.1,PT1.2(做时钟口时)
PT1, PT3,PT5
0.8
0.8
VIL2
(VTH_SEL=1)
复位输入低
Rev.1.4
第86 页,共100 页
CSU8RP3427/CSU8RP3429
电平
1.0
OSCI
上拉电流
PT1.1,PT1.2(做时钟口时)
PT1, PT3,PT5;Vin = 0;
VOH=0.9VDD;VDD=5V
VOH=0.9VDD;VDD=3V
VOH=0.9VDD;VDD=5V
PT5.0 和PT5.1 配置大驱动
VOH=0.9VDD;VDD=3V
PT5.0 和PT5.1 配置大驱动
VOH=0.9VDD;VDD=5V
PT3.3 配置大驱动
IPU
35
18
7.5
37
uA
mA
mA
mA
mA
mA
mA
17
18
高电平输出
电流
IOH
7.5
VOH=0.9VDD;VDD=3V
PT3.3 配置大驱动
20
9
52
VOL=0.1VDD;VDD=5V
VOL=0.1VDD;VDD=3V
VOL=0.1VDD;VDD=5V
PT5.0 和PT5.1 配置大驱动
VOL=0.1VDD;VDD=3V
PT5.0 和PT5.1 配置大驱动
VOL=0.1VDD;VDD=5V
PT3.3 配置大驱动
mA
mA
mA
mA
mA
mA
25
40
20
低电平输出
电流
IOL
VOL=0.1VDD;VDD=3V
PT3.3 配置大驱动
2.0V 上电/掉电复位点;-40~85 度
2.4V 上电/掉电复位点;-40~85 度
3.0V 上电/掉电复位点;-40~85 度
3.6V 上电/掉电复位点;-40~85 度
25℃,5V
-40℃~85℃, 3.0V~5.5V
25℃,5V
-40℃~85℃, 2.3V~5.5V
25℃,5V
-40℃~85℃, 2.3V~5.5V
25℃,5V
-40℃~85℃, 2.3V~5.5V
25℃,5V
-40℃~85℃, 2.3V~5.5V
25℃,5V
-40℃~85℃, 2.3V~5.5V
1.9
2.4
3.0
2.1
2.5
3.2
2.3
2.7
3.4
复位电压/低
电压检测电
压
LVD
V
3.7
4.2
4.4
31.68
30.4
15.84
15.20
7.92
7.60
3.96
3.80
1.98
1.90
31.36
30.04
32.00
32.00
16.00
16.00
8.00
8.00
4.00
4.00
2.00
2.00
32.00
32.00
32.32
33.6
16.16
16.80
8.08
8.40
4.04
4.20
2.02
2.10
32.64
33.60
内置 RC 时
钟32MHz
内置 RC 时
钟16MHz
内置 RC 时
钟8MHz
MHz
MHz
MHz
MHz
MHz
IHRC
内置 RC 时
钟4MHz
内置 RC 时
钟2MHz
KHz
KHz
内置看门狗
时钟
WDT
中断触发脉
宽
Tint0,1
25℃,5V
Tcpu
ns
VDD=3V, 关掉WDT
VDD=3V, 打开WDT
VDD=5V, 关掉WDT
VDD=5V, 打开WDT
内部振荡器关闭
(fcpu=fosc/4)
0.3
2.4
0.6
3.2
uA
uA
uA
uA
sleep 模式电
流
IDD1
IDD2
工作电流
IHRC=16MHz
10
uA
uA
fosc = 32768Hz,3V
内部振荡器关闭
16.5
Rev.1.4
第87 页,共100 页
CSU8RP3427/CSU8RP3429
(fcpu=fosc/4)
fosc = 32768Hz,5V
内 部 晶 振 模 式 , F=16MHz ,
VDD=3V,fcpu=fosc/4
内 部 晶 振 模 式 , F=16MHz ,
VDD=3V,fcpu=fosc/8
内 部 晶 振 模 式 , F=16MHz ,
VDD=3V,fcpu=fosc/16
内 部 晶 振 模 式 , F=16MHz ,
VDD=5V,fcpu=fosc/4
内 部 晶 振 模 式 , F=16MHz ,
VDD=5V,fcpu=fosc/8
内 部 晶 振 模 式 , F=16MHz ,
VDD=5V,fcpu=fosc/16
内 部 晶 振 模 式 , F=32MHz ,
VDD=3V,fcpu=fosc/4
内 部 晶 振 模 式 , F=32MHz ,
VDD=3V,fcpu=fosc/8
内 部 晶 振 模 式 , F=32MHz ,
VDD=3V,fcpu=fosc/16
内 部 晶 振 模 式 , F=32MHz ,
VDD=5V,fcpu=fosc/4
内 部 晶 振 模 式 , F=32MHz ,
VDD=5V,fcpu=fosc/8
内 部 晶 振 模 式 , F=32MHz ,
VDD=5V,fcpu=fosc/16
1.0
0.7
0.5
1.8
1.2
0.9
1.9
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
1.3
1.0
3.5
2.3
1.7
工作电流
IHRC=32MHz
IDD3
ERC 模式,VDD=5V,fcpu=fosc/4
F=11.1MHZ
F=4.1MHZ
F=468KHZ
F=61KHZ
R=1KΩ
8.80
4.93
5.03
4.44
R=10KΩ
R=100KΩ
R=1MΩ
C=47P
IDD4
工作电流
mA
ERC 模式,VDD=3V,fcpu=fosc/4
F=8.8MHZ
F=1.9MHZ
F=249KHZ
F=30KHZ
R=1KΩ
4.62
2.65
2.48
2.05
R=10KΩ
R=100KΩ
R=1MΩ
C=47P
5.3 ADC 特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)
符号
参数
测试条件
25 ºC
-40 ºC ~+85 ºC
最小值 典型值 最大值 单位
2.3
2.5
5
5
5.5
5.5
V
V
ADC 工作电
压范围
VDD
模拟输入范
围
AIN0~ AIN5
input voltage
VREF 受寄存器VREFS[1:0]控制
0
0
VREF
VDD
V
V
外部参考电
压输入范围
Vref
input range
VREFS[1:0]=01
VDD=5V(VDD 作为参考电压)
VDD=3V(VDD 作为参考电压)
注意模拟信号的输出阻抗对于
ADC 转换周期的限制,典型值
10uS 要求输出阻抗不超过10K
0.45
0.4
mA
mA
ADC current
consumption
ADC 功耗
ADC
Conversion
Cycle Time
ADC 转换周
期
10
uS
Rev.1.4
第88 页,共100 页
CSU8RP3427/CSU8RP3429
SRADACKS[1:0]=01;
SRADCKS[1:0]=01;
VREFS[1:0]=01,外部参考电压
VREFS[1:0]=00,VDD 做为参考电
压
INL
积分非线性
无失码
±4
11
±8
12
11
9
LSB
Bits
Bits
Bits
V
10
9
No missing
code
10
VREFS[1:0]=10,内部参考电压
7
8
内部参考电
压1.45V
内部参考电
压2.0V
内部参考电
压3.0V
内部参考电
压4.0V
REF_SEL[1:0]=00
REF_SEL[1:0]=01
REF_SEL[1:0]=10
REF_SEL[1:0]=11
1.45
2.00
3.00
4.00
50
V
V
V
IVREF
内部参考电
压温漂
IVREF temp
drift
ppm
mV
sroft_sel[1:0]=00
sroft_sel[1:0]=01
sroft_sel[1:0]=10
sroft_sel[1:0]=11
-3
-6
0.5
2
ADC 失调电
压
Offset
mV
5.4 温度传感器特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)
符号
参数
测试条件
25 ºC
-40 ºC ~+85 ºC
最小值 典型值 最大值
单位
V
V
2.3
2.5
5
5
5.5
5.5
VDD
工作电压
Itemp
工作电流
精度
160
±3
±1
uA
℃
℃
Accuracy
Resolution
±5
分辨率
5.5 比较器/运算放大器的直流特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)
符号
参数
测试条件
25 ºC
-40 ºC ~+85 ºC
最小值 典型值 最大值
单位
V
V
2.3
2.5
5
5
5.5
5.5
VDD
工作电压
比较器/运算放大器
的失调电压温漂
Comp Vos
drift
5*
uV
Comp IVR 比较器输入电压范围 VDD=5V,GND=0V
0
0
5
0.3
5
V
V
比较器/运算放大器
输出电压范围
VDD=5V ,GND=0V ,
Rload=10KΩ
COMP OVS
4.7
V
Icomp
Iopa
比较器工作电流
150
350
uA
uA
运算放大器工作电流
OPA
amplify
multiple
运算放大器内置放大
倍数
16
运算放大器大信号增
益
Large signal
voltage gain
Rload=2KΩ
40*
60*
60*
V/mV
dB
比较器/运算放大器
电源电压抑制比
比较器/运算放大器
共模抑制比
PSRR
CMRR
dB
Rev.1.4
第89 页,共100 页
CSU8RP3427/CSU8RP3429
比较器/运算放大器
工作电压范围
Comp/opa
vdd range
2.3V
5.5
V
Comp
Reponse
CMP LSB
11
比较器响应时间
uS
mV
比较器最小分辨率
1
2
CMPOFT_SEL[1:0]=00
CMPOFT_SEL[1:0]=01
CMPOFT_SEL[1:0]=10
CMPOFT_SEL[1:0]=11
-3
8
CMP Offset 比较器失调电压
mV
19
比较器、运算放大器
Comp VCM
0
5
V
共模电压输入范围
Isource(v+=1,v-=0,
VDD=5V,CO=2V)
Isink (v+=0 ,v-=1 ,
20*
20*
mA
mA
OPA output
current
运算放大器输出电流 VDD=5V,CO=2V)
Isink (v+=0 ,v-=1 ,
3*
VDD=5V
,
mA
CO=200mV)
VDD=5V,Vopp=5V
VDD=5V,Vopp=4V
VDD=5V,Vopp=3V
VDD=2.3,Vopp=2.3V
VDD=2.3V,Vopp=1V
60*
80*
95*
55*
75*
dB
dB
dB
dB
dB
运放的谐波失真
Vsin=10KHz
OPA THD
Max CAP
允许直接接到运算放
大器输出端的最大到
地的负载电容
100
pF
(1) 响应时间测量是在比较器一端接(VDD-1.5)/2,另外一端从VSS 跳变到VDD-1.5。
* 表示理论设计值,未经过实际测试。
5.6 运算放大器2 的直流特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)
符号
参数
测试条件
25 ºC
-40 ºC ~+85 ºC
最小值 典型值 最大值
单位
V
V
2.3
2.5
5
5
5.5
5.5
VDD
工作电压
运算放大器 2 工作电
流
Iopa
160*
uA
OPA
amplify
multiple
运算放大器 2 内置放
大倍数
32
* 表示理论设计值,未经过实际测试。
5.7 LCD 直流特性(VDD = 5V,TA = 25ºC,如无其他说明则都是此条件)
符号
参数
测试条件
25 ºC
最小值 典型值 最大值
单位
V
V
3.0
3.0
5
5
5.5
5.5
VDD
工作电压
-40 ºC ~+85 ºC
3V~5V,25 ºC
(输出低电平)
3V~5V,25 ºC
(输入不接上拉)
3V~5V,25 ºC
(输出高电平)
V1com
V2com
V3com
COM V1 电压
COM V2 电压
COM V3 电压
0
V
V
V
1.50
3.00
Rev.1.4
第90 页,共100 页
CSU8RP3427/CSU8RP3429
3V~5V,25 ºC
(输出低电平)
3V~5V,25 ºC
(输出高电平)
V1seg
SEG V1 电压
SEG V3 电压
0
V
V
V3com
3.00
5.8 32MHz IHRC 时钟频率特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
32MHz IRC时钟频率随电压和温度变化曲线
35
33
31
29
27
25
5.5V
5.0V
4.5V
4.0V
3.5V
3.0V
2.5V
-35
-20
0
20
40
60
85
温度(度)
图17 RC 时钟频率的电压和温度特性
5.9 16MHz IHRC 时钟频率特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
16MHz IRC时钟频率随电压和温度变化曲线
16.5
16.2
15.9
15.6
15.3
15
5.5V
5.0V
4.5V
4.0V
3.5V
3.0V
2.5V
-35
-20
0
20
40
60
85
温度(度)
图18 RC 时钟频率的电压和温度特性
5.10 8MHz IHRC 时钟频率特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
Rev.1.4
第91 页,共100 页
CSU8RP3427/CSU8RP3429
8MHz IRC时钟频率随电压和温度变化曲线
8.2
8.1
8
5.5V
5.0V
4.5V
4.0V
7.9
7.8
3.5V
3.0V
2.5V
-35
-20
0
20
40
60
85
折线图 8
温度(度)
图19 RC 时钟频率的电压和温度特性
5.11 4MHz IHRC 时钟频率特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
4MHz IRC时钟频率随电压和温度变化曲线
4.05
4.02
3.99
3.96
3.93
5.5V
5.0V
4.5V
4.0V
3.5V
3.0V
2.5V
-35
-20
0
20
40
60
85
温度(度)
图20 RC 时钟频率的电压和温度特性
5.12 2MHz IHRC 时钟频率特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
2MHz IRC时钟频率随电压和温度变化曲线
2.05
2.025
2
5.5V
5.0V
4.5V
4.0V
1.975
1.95
3.5V
3.0V
2.5V
-35 -20
0
20 40 60 85
折线图 8
温度(度)
图21 RC 时钟频率的电压和温度特性
Rev.1.4
第92 页,共100 页
CSU8RP3427/CSU8RP3429
5.13 32KHz WDT 时钟频率特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
WDT时钟频率随电压和温度变化曲线
33
32.5
32
5.5V
5.0V
4.5V
4.0V
3.5V
3.0V
2.5V
31.5
31
-35
-20
0
20
40
60
85
温度(度)
图22 WDT 频率的电压和温度特性
5.14 2.0V 掉电复位温度特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
2.0V低电压复位随温度变化曲线
2.25
2.15
2.05
1.95
2.0V
-35
-20
0
20
40
60
85
温度(度)
图23 2.0V 掉电复位温度特性
5.15 2.4V 低电压复位温度特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
Rev.1.4
第93 页,共100 页
CSU8RP3427/CSU8RP3429
2.4V低电压复位随温度变化曲线
2.6
2.55
2.5
2.4V
2.45
-35
-20
0
20
40
60
85
温度(度)
5.16 3.0V 低电压复位温度特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
3.0V低电压复位随温度变化曲线
3.4
3.3
3.2
3.1
3
3.0V
-35
-20
0
20
40
60
85
温度(度)
图24 3.0V 低电压复位温度特性
图25
5.17 3.6V 低电压复位温度特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
3.6V低电压复位随温度变化曲线
4.3
4.2
4.1
4
3.6V
3.9
3.8
-35
-20
0
20
40
60
85
温度(度)
图26 3.6V 低电压复位温度特性
Rev.1.4
第94 页,共100 页
CSU8RP3427/CSU8RP3429
5.18 1.45V 内部参考电压温度特性
下图为实际芯片的测试数据(对精度要求高的场合,不建议使用),不同芯片会略微有所差异,仅供
参考。
内部参考电压温度特性
1.45
1.44
IVREF
1.43
1.42
-35
-20
0
20
40
60
85
85
85
温度(度)
图27 内置参考电压温度特性
5.19 2.0V 内部参考电压温度特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
内部参考电压温度特性
1.99
1.98
1.97
1.96
IVREF
-35
-20
0
20
40
60
温度(度)
图28 内置参考电压温度特性
5.20 3.0V 内部参考电压温度特性
下图为实际芯片的测试数据,不同芯片会略微有所差异,仅供参考。
内部参考电压温度特性
3
2.99
2.98
2.97
IVREF
-35
-20
0
20
40
60
温度(度)
图29 内置参考电压温度特性
Rev.1.4
第95 页,共100 页
CSU8RP3427/CSU8RP3429
5.21 4.0V 内部参考电压温度特性
下图为实际芯片的测试数据(对精度要求高的场合,不建议使用),不同芯片会略微有所差异,仅供
参考。
内部参考电压温度特性
4.03
4.02
IVREF
4.01
4
-35
-20
0
20
40
60
85
温度(度)
图30 内置参考电压温度特性
Rev.1.4
第96 页,共100 页
CSU8RP3427/CSU8RP3429
6 封装图
6.1 SOP-16pin
MIN
NOR
(mm)
MAX
SYMBOLS
A
A1
b
C
D
E
1.3
1.40
-
-
1.5
0.225
0.48
0.26
10.10
4.10
0.05
0.39
0.21
9.70
3.70
-
9.90
3.90
1.27BSC
-
e
α
0°
8°
H
5.8
6.0
6.2
L
0.5
-
0.8
Rev.1.4
第97 页,共100 页
CSU8RP3427/CSU8RP3429
6.2 SSOP-20pin
MIN
NOR
(mm)
MAX
SYMBOLS
A
A1
b
C
D
E
1.30
0.10
0.23
0.21
8.45
3.70
1.40
-
-
-
8.65
3.90
1.50
0.25
0.33
0.26
8.85
4.10
e
α
0.635BSC
-
0°
8°
H
5.80
6.00
6.20
L
0.50
-
0.80
Rev.1.4
第98 页,共100 页
CSU8RP3427/CSU8RP3429
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
Rev.1.4
第99 页,共100 页
CSU8RP3427/CSU8RP3429
7.2 命名举例说明
ROM
类型
功能
分类
产品定
位型号
芯片
版本
封装
形式
工作温度
围
名称
内核
封装材料
范
8 位 Risc
MCU
CSU8RP3429-SS-CE
OTP
ADC
429
SSOP
-40~85 ºC
第1 版
无铅封装(PB-Free 封装)
7.3 产品印字说明
CHIPSEA
产品型号
XXXXX
A
C
B
芯片正面印字一般有3 行:
第一行为公司名称,为CHIPSEA。
第二行为产品型号。对于一些小尺寸封装,会对产品型号进行缩减。
第三行为日期码。从左端起算,前两位为公历年号后两位;第三第四位为本年度日历周数,不足
两位时左端补0;最后一位为产品随机号。
例如,CSU8RP3429印字如下:
CHIPSEA
RP3429-SS
1346A
A
C
B
Rev.1.4
第100 页,共100 页
相关型号:
©2020 ICPDF网 联系我们和版权申明