SM39R04G1W10MP [SYNCMOS]

SM39R04G1 内嵌4KB 具有 ISP 功能的Flash 和256B RAM的8 位控制器; SM39R04G1\n内嵌4KB\n具有ISP功能的闪存\n和256B RAM的8位控制器
SM39R04G1W10MP
型号: SM39R04G1W10MP
厂家: SYNCMOS TECHNOLOGIES,INC    SYNCMOS TECHNOLOGIES,INC
描述:

SM39R04G1 内嵌4KB 具有 ISP 功能的Flash 和256B RAM的8 位控制器
SM39R04G1\n内嵌4KB\n具有ISP功能的闪存\n和256B RAM的8位控制器

闪存 控制器
文件: 总47页 (文件大小:932K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
FOSVOS TEL: 021-58998693  
.....................................................................................................................................................................................3  
.....................................................................................................................................................................................3  
各封装引脚配置...................................................................................................................................................................4  
系统方框..........................................................................................................................................................................5  
管脚描述..............................................................................................................................................................................6  
特殊功能寄存器(SFR).........................................................................................................................................................8  
功能描述........................................................................................................................................................................10  
1.  
总特征.......................................................................................................................................................................10  
1.1.  
1.2.  
1.3.  
1.4.  
嵌入式程序存储器 .......................................................................................................................................10  
IO ............................................................................................................................................................10  
指令时钟周期选择 .......................................................................................................................................10  
复位 .............................................................................................................................................................11  
1.4.1.  
硬件复位功能..................................................................................................................................11  
软件复位功能..................................................................................................................................11  
Time Access Key register (TAKEY)................................................................................................11  
软件复位寄存器(SWRES) ..............................................................................................................12  
Example of software reset .............................................................................................................12  
1.4.2.  
1.4.3.  
1.4.4.  
1.4.5.  
1.5.  
时钟源 .........................................................................................................................................................12  
2.  
3.  
指令设...................................................................................................................................................................13  
存储器结构 ...............................................................................................................................................................17  
3.1.  
3.2.  
程序存储器 ..................................................................................................................................................17  
数据存储器 ..................................................................................................................................................18  
3.2.1.  
3.2.2.  
数据内存-128 字节(00h to 7Fh) .................................................................................................18  
数据存储器-128 字节(80h to FFh) .............................................................................................18  
4.  
CPU 结构..................................................................................................................................................................19  
4.1.  
4.2.  
4.3.  
4.4.  
4.5.  
4.6.  
4.7.  
累加器 .........................................................................................................................................................19  
B 寄存器 .....................................................................................................................................................19  
程序状态字 ..................................................................................................................................................20  
堆栈指......................................................................................................................................................20  
数据指......................................................................................................................................................20  
数据指针 1...................................................................................................................................................21  
接口控制寄存...........................................................................................................................................21  
5.  
6.  
GPIO ........................................................................................................................................................................22  
定时器 0 和定时器 1 ................................................................................................................................................23  
6.1.  
6.2.  
6.3.  
定时器/计数器模式控制寄存器(TMOD) .......................................................................................................23  
定时/计数控制寄存器(TCON)......................................................................................................................24  
T0T1 可配置性: ....................................................................................................................................24  
7.  
串行接口 0................................................................................................................................................................25  
7.1.  
7.2.  
7.3.  
7.4.  
7.5.  
7.6.  
模式 0 ..........................................................................................................................................................26  
模式 1 ..........................................................................................................................................................26  
模式 2 ..........................................................................................................................................................27  
模式 3 .........................................................................................................................................................27  
串行接口 0 的多重机通讯 ...........................................................................................................................27  
波特率发生器...............................................................................................................................................28  
7.6.1.  
串行接口 0 的模式 1 3................................................................................................................28  
7.7.  
波特率的时钟...........................................................................................................................................28  
8.  
9.  
看门狗定时器............................................................................................................................................................29  
中断 ..........................................................................................................................................................................32  
9.1.  
优先权配置 ..................................................................................................................................................34  
电源管理单...................................................................................................................................................36  
待机模式(空闲模式).................................................................................................................................36  
10.  
10.1.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
1
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
10.2.  
停止模式..................................................................................................................................................36  
IIC ...........................................................................................................................................................37  
LVI 低压中..................................................................................................................................................41  
在系统编程(Internal ISP) .................................................................................................................................42  
ISP 服务程..........................................................................................................................................42  
锁定位(N) ................................................................................................................................................42  
ISP 服务程序编...............................................................................................................................42  
启动 ISP 服务程序...................................................................................................................................42  
ISP 寄存器TAKEY, IFCON, ISPFAH, ISPFAL, ISPFD and ISPFC ......................................................43  
11.  
12.  
13.  
13.1.  
13.2.  
13.3.  
13.4.  
13.5.  
工作环境............................................................................................................................................................................46  
DC 电气特性 .....................................................................................................................................................................46  
FOSVOS TEL: 021-58998693  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
2
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
产品目录  
特征  
工作电压:2.7V ~ 5.5V  
高速 1T 架构,最高可达 25MHz.  
SM39R04G1W14NP,  
SM39R04G1W14OP,  
SM39R04G1W10MP  
1~8T 模式可使用软件编程.  
指令设置兼容 MCS-51.  
内置 RC 振荡器,频率范围为 1MHz~24MHz  
4K 字节的片上闪存程序存储器  
256 字节的标准的 8052 RAM  
描述  
一个全双工通信的串行接口.附加鲍率产生器  
两个 16-bit 的定时器/计数器(计时器 0, 1)  
12 GPIOs(14L PDIP& SOP)GPIOs 可选择四种型  
(准双向口输入)认准双向口(上  
)  
原来的 8052 12 时钟结构. 一个机器周期需要 12 个时  
钟,大多数指令是一个或两个机器周期.因此,除了乘除和  
DIV 指令, 8052 的每个指令使用 12 24 个时钟.此外,  
8052 中的每个周期用了两个记忆提取.在许多情况下,第  
二个是假的提取,和额外的时钟被浪费了.  
具有四级优先权的外部中断 01  
可编程的看门狗定时器(WDT.  
一个 IIC 接口(主/从机模式)  
片上闪存存储器支持 ISP/IAP/ICP EEPROM 功  
.  
SM39R04G1 是一个快速的单芯片 8 位微控制器内核.  
这是一个全功能的 8 位嵌入式控制器,执行所有 ASM51  
指令,具有与 MCS - 51 相同的指令设置.  
ISP服务程序存储空间设置N*256 byte (N=0 to 4).  
片上在线仿真功能(ICE)及片上在线调试功能(OCD).  
ALE 输出选择.  
订货信息  
SM39R04G1ihhkL yymmv  
i: 工艺标志{W = 2.7V ~ 5.5V}  
hh:封装脚位  
低电压中断/低电压复位(LVI/LVR ).  
管脚 ESD 性能超过 4KV.  
k: 封装形式后缀{as table below }  
L: 无铅标志  
增强用户代码保护.  
电源管理单元空闲及掉电模式.  
{无文字即含铅,”P” 即无铅}  
yy: 年  
mm: 月  
v: 版本标志{ A, B,…}  
Pin / Pad  
Configuration  
Postfix  
Package  
N
O
M
PDIP (300 mil)  
SOP (150 mil)  
MSOP (118 mil)  
Page 4  
Page 4  
Page 4  
FOSVOS TEL: 021-58998693  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
3
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
各封装引脚配置  
INT0/T0/RXD/P3.0  
INT1/T1/TXD/P3.1  
P1.2/XTAL2  
P1.3/XTAL1  
INT0/P3.2  
VCC  
1
2
3
4
5
6
7
14  
13  
12  
11  
10  
9
P3.7/INT1/T1  
RESET(default)/P3.6/INT0/T0  
P3.5/T1  
P3.4/T0  
INT1/P3.3  
P1.1/SCL  
VSS  
P1.0/SDA  
8
INT0/T0/RXD/P3.0  
INT1/T1/TXD/P3.1  
P1.2/XTAL2  
P1.3/XTAL1  
INT0/P3.2  
VCC  
1
2
3
4
5
6
7
14  
13  
12  
11  
10  
9
P3.7/INT1/T1  
RESET(default)/P3.6/INT0/T0  
P3.5/T1  
P3.4/T0  
INT1/P3.3  
P1.1/SCL  
VSS  
P1.0/SDA  
8
1
10  
INT0/T0/RXD/P3.0  
INT1/T1/TXD/P3.1  
XTAL2/P3.2  
XTAL1/P3.3  
VSS  
VCC  
2
3
4
5
9
8
7
6
P3.7/INT1/T1  
RESET(default)/P3.6/INT0/T0  
P3.5/SCL  
P3.4/SDA  
附注:  
1. 管脚 Reset/P3.6 于出厂时设置为 RESET 使用者需于上电时将此管脚置低使用者可于刻录时将此管脚定义为一  
I/O(P3.6)。  
2. 为避免偶然的情况下进入 ISP 刻录状态(参考第 13.4 单元),在上电时必须确保没有连续的脉冲信号在管脚 P3.0 及管  
”ISP 启动管脚(14L P3.710L P3.3)必须置高。  
3. 于使用 ICP 刻录功能时,用户如果定义管脚 SDA SCL 为一般 I/O 使用,必须设计成双向 I/O。  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
4
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
系统方框图  
RESET  
MAX810  
UART 0  
IIC  
SRAM  
256Bytes  
XTAL2  
XTAL1  
Port 1  
Port 1  
Port 3  
Port 3  
Flash 4KBytes  
CPU  
Watchdog  
Interrupt  
T0  
T1  
Timer 0/1  
ICE  
ICP  
Interface control  
FOSVOS TEL: 021-58998693  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
5
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
管脚描述  
14L  
PDIP/SOP  
I/O  
I/O  
I/O  
代号  
描述  
P3 口的位 0 & 串行接口通道接收/发送数据 & (外部中断 0 or 计时器 0 外部  
1
2
P3.0/RXD/#INT0/T0  
输入)  
P3 口的位 1 &串行接口通道 0 数据传输或接收模式 0 时钟 & (外部中断 1 or  
计时器 1 外部输入)  
P3.1/TXD/#INT1/T1  
3
4
5
6
7
XTAL2/P1.2  
XTAL1/P1.3  
P3.2/#INT0  
P3.3/#INT1  
VSS  
I/O 晶振输出& P1 口的位 2  
I/O 晶振输入& P1 口的位 3  
I/O P3 口的位 2 & 外部中断 0  
I/O P3 口的位 3 & 外部中断 1  
I
供电电源地  
8
9
10  
11  
P1.0/SDA  
P1.1/SCL  
P3.4/T0  
I/O P1 口的位 0 & ICE ICP 功能的指令及数据输入  
I/O P1 口的位 1 & ICE ICP 功能的时钟输入  
I/O P3 口的位 4 & 计时器 0 外部输入  
P3.5/T1  
I/O P3 口的位 5 & 计时器 1 外部输入  
RESET(default)/P3.6/#I  
NT0/T0  
P3.7/#INT1/T1  
12  
I/O 复位(初始设定) & (P3 口的位 6 or 外部中断 0 or 计时器 0 外部输入)  
I/O P3 口的位 7 & (外部中断 1 or 计时器 1 外部输入)  
13  
14  
VDD  
I
数位电源电压  
特殊功能脚可依下表配置(可于特殊功能寄存器中选择):  
特殊功能脚  
#INT0  
#INT1  
T0  
默认  
5(P3.2)  
6(P3.3)  
10(P3.4) 12(P3.6)  
11(P3.5) 13(P3.7)  
选择 1  
1(P3.0)  
2(P3.1)  
选择 2  
12(P3.6)  
13(P3.7)  
1(P3.0)  
2(P3.1)  
T1  
当使用片上硬件复位机制时,复位脚可配置为 P3.6。  
当主系统时钟源设置为使用振荡器(时钟由晶振输入脚输入)或片内 RC 振荡器,晶振输出脚可于 ICP ISP 中选择配置为  
P1.2。  
当主系统时钟源设置为片内 RC 振荡器, 晶振输入脚可于 ICP ISP 中选择配置为 P1.3。  
FOSVOS TEL: 021-58998693  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
6
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
10L  
MSOP  
1
I/O  
代号  
描述  
P3.0/RXD/#INT0/T0  
I/O P3 口的位 0 & 串行接口通道接收/发送数据 & (外部中断 0 or 计时器 0 外部输入)  
P3 口的位 1 &串行接口通道 0 数据传输或接收模式 0 时钟 & (外部中断 1 or 计时  
1 外部输入)  
2
P3.1/TXD/#INT1/T1  
I/O  
3
4
5
6
7
XTAL2/P3.2  
XTAL1/P3.3  
VSS  
P3.4/SDA  
P3.5/SCL  
I/O 晶振输出& P3 口的位 2  
I/O 晶振输入& P3 口的位 3  
I
供电电源地  
I/O P3 口的位 4 & ICE ICP 功能的指令及数据输入  
I/O P3 口的位 5 & ICE ICP 功能的时钟输入  
RESET(default)/P3.6/#  
INT0/T0  
P3.7/#INT1/T1  
8
I/O 复位(初始设定) & (P3 口的位 6 or 外部中断 0 or 计时器 0 外部输入)  
I/O P3 口的位 7 & (外部中断 1 or 计时器 1 外部输入)  
9
10  
VDD  
I
数位电源电压  
特殊功能脚可依下表配置(可于特殊功能寄存器中选择):  
特殊功能脚  
#INT0  
#INT1  
T0  
默认  
选择 1  
1(P3.0)  
2(P3.1)  
8(P3.6)  
9(P3.7)  
选择 2  
8(P3.6)  
9(P3.7)  
1(P3.0)  
2(P3.1)  
8(P3.6)  
9(P3.7)  
8(P3.6)  
9(P3.7)  
T1  
当使用片上硬件复位机制时,复位脚可配置为 P3.6。  
当主系统时钟源设置为使用振荡器(时钟由晶振输入脚输入)或片内 RC 振荡器,晶振输出脚可于 ICP ISP 中选择配置为  
P3.2。  
当主系统时钟源设置为片内 RC 振荡器, 晶振输入脚可于 ICP ISP 中选择配置为 P3.3。  
FOSVOS TEL: 021-58998693  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
7
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
特殊功能寄存器(SFR)  
特殊功能寄存器分布图如下所示:  
Hex\Bin  
F8  
X000  
IICS  
B
X001  
X010  
X011  
X100  
X101  
X110  
X111  
Bin/Hex  
FF  
IICCTL  
IICA1  
IICA2  
IICRWD  
IICEBT  
F0  
TAKEY  
SWRES  
F7  
E8  
EF  
E0  
ACC  
PSW  
ISPFAH  
ISPFAL  
P3M0  
ISPFD  
P3M1  
ISPFC  
P1M0  
LVC  
E7  
D8  
DF  
D0  
P1M1  
D7  
C8  
CF  
C0  
IRCON  
IEN1  
P3  
C7  
B8  
IP1  
IP0  
S0RELH  
S0RELL  
BF  
B0  
WDTC  
WDTK  
B7  
A8  
IEN0  
AF  
A0  
P1WE  
P3WE  
A7  
98  
S0CON  
P1  
S0BUF  
AUX  
9F  
90  
97  
88  
TCON  
TMOD  
SP  
TL0  
DPL  
X010  
TL1  
DPH  
X011  
TH0  
DPL1  
X100  
TH1  
DPH1  
X101  
CKCON  
IFCON  
PCON  
X111  
8F  
80  
87  
Hex\Bin  
X000  
X001  
X110  
Bin/Hex  
注:SM39R04G1 特殊功能寄存器的重置值在下表描述  
寄存器  
SP  
地址  
81h  
82h  
83h  
84h  
85h  
87h  
88h  
89h  
8Ah  
8Bh  
8Ch  
8Dh  
8Eh  
8Fh  
90h  
91h  
重置值  
07h  
00h  
00h  
00h  
00h  
40h  
00h  
00h  
00h  
00h  
00h  
00h  
10h  
40h  
FFh  
00h  
描述  
Stack Pointer  
DPL  
Data Pointer 0 low byte  
Data Pointer 0 high byte  
Data Pointer 1 low byte  
Data Pointer 1 high byte  
Power Control  
DPH  
DPL1  
DPH1  
PCON  
TCON  
TMOD  
TL0  
Timer/Counter Control  
Timer Mode Control  
Timer 0, low byte  
TL1  
Timer 1, low byte  
TH0  
Timer 0, high byte  
Timer 1, high byte  
Clock control register  
Interface control register  
Port 1  
TH1  
CKCON  
IFCON  
P1  
AUX  
Auxiliary register  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
8
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
寄存器  
S0CON  
S0BUF  
P1WE  
P3WE  
IEN0  
地址  
98h  
99h  
A3h  
A4h  
A8h  
A9h  
AAh  
B0h  
B6h  
B7h  
B8h  
B9h  
BAh  
C0h  
D0h  
D4h  
D5h  
DAh  
DBh  
E0h  
E1h  
E2h  
E3h  
E4h  
E6h  
E7h  
F0h  
F7h  
F8h  
F9h  
FAh  
FBh  
FCh  
FDh  
重置值  
00h  
00h  
FFh  
FFh  
00h  
00h  
00h  
FFh  
04h  
00h  
00h  
00h  
00h  
00h  
00h  
00h  
00h  
00h  
00h  
00h  
FFh  
FFh  
FFh  
00h  
20h  
00h  
00h  
00h  
00h  
04h  
A0h  
60h  
00h  
00h  
描述  
Serial Port 0, Control Register  
Serial Port 0, Data Buffer  
Port 1 output enable  
Port 3 output enable  
Interrupt Enable Register 0  
Interrupt Priority Register 0  
IP0  
S0RELL  
P3  
Serial Port 0, Reload Register, low byte  
Port 3  
WDTC  
WDTK  
IEN1  
Watchdog timer control register  
Watchdog timer refresh key.  
Interrupt Enable Register 1  
Interrupt Priority Register 1  
Serial Port 0, Reload Register, high byte  
Interrupt Request Control Register  
Program Status Word  
IP1  
S0RELH  
IRCON  
PSW  
P1M0  
P1M1  
P3M0  
P3M1  
ACC  
Port 1 output mode 0  
Port 1 output mode 1  
Port 3 output mode 0  
Port 3 output mode 1  
Accumulator  
ISPFAH  
ISPFAL  
ISPFD  
ISPFC  
LVC  
ISP Flash Address-High register  
ISP Flash Address-Low register  
ISP Flash Data register  
ISP Flash control register  
Low voltage control register  
Software Reset register  
B Register  
SWRES  
B
TAKEY  
IICS  
Time Access Key register  
IIC status register  
IICCTL  
IICA1  
IICA2  
IICRWD  
IICS2  
IIC control register  
IIC channel 1 Address 1 register  
IIC channel 1 Address 2 register  
IIC channel 1 Read / Write Data buffer  
IIC status2 register  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
9
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
功能描述:  
1. 总特征  
SM39R04G1是一个8位的微处理器,它的所有功能以及特殊功能寄存器(SFR)的详细定义将在以下章节给出.  
1.1. 嵌入式程序存储器  
可通过编程器或在线编程(ISP)将程序加载到4KB的嵌入式闪存体中,其高品质的闪存体具有100K次的重复可擦写编程并记  
忆数据,如EEPROM。  
1.2. IO 口  
SM39R04G1 2 I / O 端口: Port 1 Port 3. Ports 3 8 I / O 端口及 Port 1 4 I / O 端口(10 管脚包装只有 Ports  
3 8 I / O 端口). 四种型态: 准双向口(标准 8051 输出口), 推挽, 开漏, 与仅为输入. 在章节 5 中有详细说明。  
14管脚包装 (DIP/SOP),外部中断0、外部中断1、计时器0外部输入、计时器1外部输入之特殊功能脚可依下表配置:  
特殊功能脚  
#INT0  
#INT1  
T0  
默认  
5(P3.2)  
6(P3.3)  
10(P3.4) 12(P3.6)  
11(P3.5) 13(P3.7)  
选择 1  
1(P3.0)  
2(P3.1)  
选择 2  
12(P3.6)  
13(P3.7)  
1(P3.0)  
2(P3.1)  
T1  
10管脚包装 (MSOP),外部中断0、外部中断1、计时器0外部输入、计时器1外部输入之特殊功能脚可依下表配置:  
特殊功能脚  
#INT0  
#INT1  
T0  
默认  
选择 1  
1(P3.0)  
2(P3.1)  
8(P3.6)  
9(P3.7)  
选择 2  
8(P3.6)  
9(P3.7)  
1(P3.0)  
2(P3.1)  
8(P3.6)  
9(P3.7)  
8(P3.6)  
9(P3.7)  
T1  
当使用片上硬件复位机制时,复位脚可配置为P3.6。  
当主系统时钟源设置为使用振荡器(时钟由晶振输入脚输入)或片内 RC 振荡器,可于 ICP ISP 中选择将晶振输出脚配置为  
I / O 端口,如下表:  
振荡器  
Xtal1  
P1.2  
Xtal1  
P3.2  
片内RC振荡器  
P1.3  
晶振输入脚  
晶振输出脚  
晶振输入脚  
晶振输出脚  
14管脚包装  
10管脚包装  
P1.2  
P3.3  
P3.2  
所有的P1P3口都可通过转化速率来降低EMI。另一种降低EMI的方式是在禁止ALE输出,可通过特殊功能寄存器(SFR)  
来进行选择控制,在高静电环境且在人体接触模式中,其I/O口的ESD可达4KV,可以保证 SM39R04G1在高静电环境下的  
品质.  
1.3. 指令时钟周期选择  
传统的52 系列单片机时钟周期是12T, 12 个振荡器时钟为1个机器周期.SM39R04G11T~8T的微控制器, 即机器周期  
1个时钟周期~8个时钟周期。换句话说, 执行一条指令可是1个时钟~8个时钟。  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
10  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Mnemonic: CKCON  
Address: 8Eh  
7
-
6
5
ITS  
4
3
-
2
-
1
-
0
-
Reset  
10H  
ITS:  
指令时钟周期选择.  
ITS [6:4]  
000  
指令时钟周期  
1T 模式  
001  
010  
2T 模式(默认)  
3T 模式  
011  
4T 模式  
100  
5T 模式  
101  
6T 模式  
110  
7T 模式  
111  
8T 模式  
默认为2T模式, 在任何时候,CKCON [6:4](地址为8Eh改变时. 每条指令并不是都能在一个机器周期内被执行的。所  
有指令的确切机器周期将在下一章节中给出.  
1.4. 复位  
1.4.1. 硬件复位功能  
SM39R04G1提供了片上硬件复位机制, 片上硬件复位的时间长度可以通过编程器或ISP设置.  
片上硬件复位的时间长度  
25ms (default)  
200ms  
100ms  
50ms  
16ms  
8ms  
4ms  
1.4.2. 软件复位功能  
SM39R04G1提供一种软件复位机制来实现整个芯片的复位.要实现软件复位,于程序中需把3个特殊值 55h,AAh5Ah按顺  
序写到TAKEY寄存器来使能软件复位寄存器(SWRES)之写入. 在软件复位寄存器获得可写权后,可以对SWRES寄存器写入  
FFh. 硬件将解码出复位讯号它是与其他硬件复位讯号作 “OR”处理. 软件复位寄存器在软件复位过程的最后会进行自复位.  
Mnemonic  
Description  
Direct  
Bit 7  
Bit 6  
Bit 5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0  
RESET  
Software Reset function  
Time Access Key  
register  
Software Reset  
register  
TAKEY  
F7h  
E7h  
TAKEY [7:0]  
SWRES [7:0]  
00H  
00H  
SWRES  
1.4.3. Time Access Key register (TAKEY)  
Mnemonic: TAKEY  
Address: F7H  
7
6
5
4
3
2
1
0
Reset  
00H  
TAKEY [7:0]  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 11  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
软件复位寄存器(SWRES) 默认为只读; 软件把 3 个特殊值按顺序写到 TAKEY 寄存器来使能软件复位  
寄存器(SWRES)可写. 它们是  
MOV TAKEY, #55h  
MOV TAKEY, #0AAh  
MOV TAKEY, #5Ah  
1.4.4. 软件复位寄存器(SWRES)  
Mnemonic: SWRES  
Address: E7H  
7
6
5
4
3
2
1
0
Reset  
00H  
SWRES [7:0]  
SWRES[7:0]:  
软件复位寄存器. 在软件复位过程的最后会进行自重置.  
SWRES [7:0] = FFh, 产生软件复位.  
SWRES [7:0] = 00h ~ FEh, 不产生复位动作.  
1.4.5. Example of software reset  
MOV TAKEY, #55h  
MOV TAKEY, #0AAh  
MOV TAKEY, #5Ah ; enable SWRES write attribute  
MOV SWRES, #0FFh; software reset MCU  
1.5. 时钟源  
默认时钟来自于内部12MHz晶振时钟信号,其时钟应用于初始化阶段,其主要的工作是确定时钟源使用的正常运行。  
内部时钟源来源于不同分频的内部OSC如表1-1所示,时钟源可在编程器或ICP中设置.  
Table 1-1: Selection of clock source  
Clock source  
external crystal (use XTAL1 and XTAL2 pins )  
external crystal (only use XTAL1, the XTAL2 define as I/O)  
20MHz from on-chip RC-Oscillator  
16MHz from on-chip RC-Oscillator  
12MHz from on-chip RC-Oscillator(default)  
8MHz from on-chip RC-Oscillator  
4MHz from on-chip RC-Oscillator  
2MHz from on-chip RC-Oscillator  
1MHz from on-chip RC-Oscillator  
对于来源于内部OSC的频率,这将有些许误差,在应用程序中需要精确的频率时,须注意使用.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
12  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
2. 指令设置  
所有SM39R04G1的指令都是兼容的二进制码,且具有标准的8051一样的功能,以下表格列出了以SM39R04G1微控器为核心  
的指令集的周期的总结,这里的周期表示为机器周期。  
Table 2-1: Arithmetic operations  
Mnemonic  
ADD A,Rn  
Description  
Add register to accumulator  
Code  
28-2F  
25  
Bytes Cycles  
1
2
1
2
1
2
1
2
1
2
1
2
1
1
2
1
1
1
1
2
1
1
1
1
1
2
2
2
1
2
2
2
1
2
2
2
1
2
3
3
1
1
2
3
3
5
5
1
ADD A,direct  
ADD A,@Ri  
ADD A,#data  
ADDC A,Rn  
ADDC A,direct  
ADDC A,@Ri  
ADDC A,#data  
SUBB A,Rn  
SUBB A,direct  
SUBB A,@Ri  
SUBB A,#data  
INC A  
Add direct byte to accumulator  
Add indirect RAM to accumulator  
Add immediate data to accumulator  
Add register to accumulator with carry flag  
Add direct byte to A with carry flag  
Add indirect RAM to A with carry flag  
Add immediate data to A with carry flag  
Subtract register from A with borrow  
Subtract direct byte from A with borrow  
Subtract indirect RAM from A with borrow  
Subtract immediate data from A with borrow  
Increment accumulator  
26-27  
24  
38-3F  
35  
36-37  
34  
98-9F  
95  
96-97  
94  
04  
INC Rn  
Increment register  
08-0F  
05  
INC direct  
INC @Ri  
Increment direct byte  
Increment indirect RAM  
06-07  
A3  
INC DPTR  
DEC A  
Increment data pointer  
Decrement accumulator  
14  
DEC Rn  
Decrement register  
18-1F  
15  
DEC direct  
DEC @Ri  
MUL AB  
Decrement direct byte  
Decrement indirect RAM  
16-17  
A4  
Multiply A and B  
DIV  
Divide A by B  
84  
DA A  
Decimal adjust accumulator  
D4  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 13  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Table 2-2: Logic operations  
Mnemonic  
ANL A,Rn  
Description  
Code  
Bytes Cycles  
AND register to accumulator  
58-5F  
55  
1
2
1
2
2
3
1
2
1
2
2
3
1
2
1
2
2
3
1
1
1
1
1
1
1
1
2
2
2
3
4
1
2
2
2
3
4
1
2
2
2
3
4
1
1
1
1
1
1
1
ANL A,direct  
ANL A,@Ri  
ANL A,#data  
ANL direct,A  
ANL direct,#data  
ORL A,Rn  
ORL A,direct  
ORL A,@Ri  
ORL A,#data  
ORL direct,A  
ORL direct,#data  
XRL A,Rn  
AND direct byte to accumulator  
AND indirect RAM to accumulator  
AND immediate data to accumulator  
AND accumulator to direct byte  
AND immediate data to direct byte  
OR register to accumulator  
56-57  
54  
52  
53  
48-4F  
45  
OR direct byte to accumulator  
OR indirect RAM to accumulator  
OR immediate data to accumulator  
OR accumulator to direct byte  
46-47  
44  
42  
OR immediate data to direct byte  
Exclusive OR register to accumulator  
Exclusive OR direct byte to accumulator  
Exclusive OR indirect RAM to accumulator  
Exclusive OR immediate data to accumulator  
Exclusive OR accumulator to direct byte  
Exclusive OR immediate data to direct byte  
Clear accumulator  
43  
68-6F  
65  
XRL A,direct  
XRL A,@Ri  
XRL A,#data  
XRL direct,A  
XRL direct,#data  
CLR A  
66-67  
64  
62  
63  
E4  
CPL A  
Complement accumulator  
F4  
RL A  
Rotate accumulator left  
23  
RLC A  
Rotate accumulator left through carry  
Rotate accumulator right  
33  
RR A  
03  
RRC A  
Rotate accumulator right through carry  
Swap nibbles within the accumulator  
13  
SWAP A  
C4  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 14  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Table 2-3: Data transfer  
Mnemonic  
MOV A,Rn  
Description  
Code  
E8-EF  
E5  
Bytes Cycles  
Move register to accumulator  
1
2
1
2
1
2
2
2
2
3
2
3
1
2
2
3
1
1
2
2
1
2
1
1
1
2
2
2
2
4
2
3
3
4
4
3
3
5
3
3
3
3
4
3
2
3
3
3
MOV A,direct  
MOV A,@Ri  
Move direct byte to accumulator  
Move indirect RAM to accumulator  
Move immediate data to accumulator  
Move accumulator to register  
E6-E7  
74  
MOV A,#data  
MOV Rn,A  
F8-FF  
A8-AF  
78-7F  
F5  
MOV Rn,direct  
MOV Rn,#data  
MOV direct,A  
MOV direct,Rn  
MOV direct1,direct2  
MOV direct,@Ri  
MOV direct,#data  
MOV @Ri,A  
Move direct byte to register  
Move immediate data to register  
Move accumulator to direct byte  
Move register to direct byte  
88-8F  
85  
Move direct byte to direct byte  
Move indirect RAM to direct byte  
Move immediate data to direct byte  
Move accumulator to indirect RAM  
Move direct byte to indirect RAM  
Move immediate data to indirect RAM  
Load data pointer with a 16-bit constant  
Move code byte relative to DPTR to accumulator  
Move code byte relative to PC to accumulator  
Push direct byte onto stack  
86-87  
75  
F6-F7  
A6-A7  
76-77  
90  
MOV @Ri,direct  
MOV @Ri,#data  
MOV DPTR,#data16  
MOVC A,@A+DPTR  
MOVC A,@A+PC  
PUSH direct  
93  
83  
C0  
POP direct  
Pop direct byte from stack  
D0  
XCH A,Rn  
Exchange register with accumulator  
Exchange direct byte with accumulator  
Exchange indirect RAM with accumulator  
Exchange low-order nibble indir. RAM with A  
C8-CF  
C5  
XCH A,direct  
XCH A,@Ri  
C6-C7  
D6-D7  
XCHD A,@Ri  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 15  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Table 2-4: Program branches  
Mnemonic  
ACALL addr11  
Description  
Code  
xxx11  
12  
Bytes Cycles  
Absolute subroutine call  
2
3
1
1
2
3
2
1
2
2
2
2
3
3
3
3
3
3
3
2
3
1
6
6
4
4
3
4
3
2
3
3
3
3
4
4
4
4
4
4
4
3
4
1
LCALL addr16  
RET  
Long subroutine call  
from subroutine  
22  
RETI  
from interrupt  
32  
AJMP addr11  
LJMP addr16  
SJMP rel  
Absolute jump  
xxx01  
02  
Long iump  
Short jump (relative addr.)  
80  
JMP @A+DPTR  
JZ rel  
Jump indirect relative to the DPTR  
Jump if accumulator is zero  
Jump if accumulator is not zero  
Jump if carry flag is set  
73  
60  
JNZ rel  
70  
JC rel  
40  
JNC  
Jump if carry flag is not set  
Jump if direct bit is set  
50  
JB bit,rel  
20  
JNB bit,rel  
Jump if direct bit is not set  
30  
JBC bit,direct rel  
CJNE A,direct rel  
CJNE A,#data rel  
CJNE Rn,#data rel  
CJNE @Ri,#data rel  
DJNZ Rn,rel  
DJNZ direct,rel  
NOP  
Jump if direct bit is set and clear bit  
Compare direct byte to A and jump if not equal  
Compare immediate to A and jump if not equal  
Compare immed. to reg. and jump if not equal  
Compare immed. to ind. and jump if not equal  
Decrement register and jump if not zero  
Decrement direct byte and jump if not zero  
No operation  
10  
B5  
B4  
B8-BF  
B6-B7  
D8-DF  
D5  
00  
Table 2-5: Boolean manipulation  
Description  
Mnemonic  
CLR C  
Code  
C3  
Bytes Cycles  
Clear carry flag  
1
2
1
2
1
2
2
2
2
2
2
2
1
3
1
3
1
3
2
2
2
2
2
3
CLR bit  
Clear direct bit  
C2  
D3  
D2  
B3  
B2  
82  
B0  
72  
A0  
A2  
92  
SETB C  
Set carry flag  
SETB bit  
CPL C  
Set direct bit  
Complement carry flag  
Complement direct bit  
AND direct bit to carry flag  
AND complement of direct bit to carry  
OR direct bit to carry flag  
OR complement of direct bit to carry  
Move direct bit to carry flag  
Move carry flag to direct bit  
CPL bit  
ANL C,bit  
ANL C,/bit  
ORL C,bit  
ORL C,/bit  
MOV C,bit  
MOV bit,C  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 16  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
3. 存储器结构  
SM39R04G1存储器结构和通用的8051结构相同,它们是作为程序存储器的4KB的嵌入式Flash.  
3.1. 程序存储器  
SM39R04G14K的嵌入式flash,可做为通用的程序存储或EEPROM.其他还包括最大为1K的特定ISP服务程序存储空间.  
4K的地址从$000 to $FFF. ISP服务程序的地址从$C00 to $FFF. ISP服务程序空间可以被分割N256字节(N=0 to 4). 当  
N=0,意味着没有ISP复位程序空间可用. 全部的4K字节空间都被用来做程序存储. N=1,意味着地址$F00 to $FFF保  
留为ISP服务程序空间. N=2意味着内存地址$E00 to $FFF保留为ISP服务程序空间等等... 数值N可以通过编程器或ICP  
方式编程或设置.它可象EEPROM那样用来记录任何数据.EEPROM的应用功能在第13章节的内部ISP部分有描述.  
FFF  
F00  
E00  
D00  
C00  
N=0  
N=1  
ISP service  
Program space,  
Up to 1K  
N=2  
N=3  
N=4  
4K Program  
Memory space  
000  
Fig. 3-1: SM39R04G1 programmable Flash  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 17  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
3.2. 数据存储器  
SM39R04G1具有256 Bytes的片上SRAM, 256 Bytes和通用的8052内部存储器结构一样.  
FF  
FF  
80  
Higher 128 Bytes (Accessed by  
indirect addressing mode only)  
SFR (Accessed by direct addressing  
mode only)  
80  
7F  
Lower 128 Bytes (Accessed by  
direct & indirect addressing mode )  
00  
Fig. 3-3: RAM architecture  
3.2.1. 数据内存-128 字节(00h to 7Fh)  
数据存储器从 00h FFh 的地址和在 8052 中的定义是一样的.  
0h 7Fh 的地址可通过直接或者间接寻址方式访问.  
00h 1Fh 是寄存器的空间,  
20h 2Fh 是位寻址空间,  
30h 7Fh 是通用的数据存储区.  
3.2.2. 数据存储器-128 字节(80h to FFh)  
80h FFh 的地址仅仅能从间接寻址的方式访问,它是一个数据区.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
18  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
4. CPU结构  
SM39R04G1结构由以下四部分组成:  
a. 控制单元  
b. 算法-逻辑单元  
c. 存储器控制单元  
d. RAMSFR控制单元  
SM39R04G1结构允许接受来自程序存储器的指令并与RAMSFR做数据处理,以下各段详细叙述了主要功能寄存器。  
Mnemonic  
Description  
Direct  
Bit 7  
Bit 6  
8051 Core  
ACC.7 ACC.6 ACC.5 ACC.4 ACC.3 ACC.2 ACC.1 ACC.0  
Bit 5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0  
RESET  
ACC  
B
Accumulator  
B register  
E0h  
F0h  
00H  
00H  
B.7  
B.6  
B.5  
B.4  
B.3  
B.2  
B.1  
B.0  
Program status  
word  
PSW  
D0h  
CY  
AC  
F0  
RS[1:0]  
OV  
PSW.1  
P
00H  
SP  
DPL  
Stack Pointer  
Data pointer low 0  
Data pointer high  
0
Data pointer low 0  
Data pointer high  
0
Auxiliary register  
Interface control  
register  
81h  
82h  
SP[7:0]  
DPL[7:0]  
07H  
00H  
DPH  
DPL1  
DPH1  
AUX  
83h  
84h  
85h  
91h  
8Fh  
DPH[7:0]  
DPL1[7:0]  
DPH1[7:0]  
PTS[1:0]  
00H  
00H  
00H  
00H  
00H  
BRGS  
-
-
-
-
PINTS[1:0]  
DPS  
IFCON  
CDPR  
-
-
-
-
ISPE  
4.1. 累加器  
ACC是一个累加器,大部分单操作指令的一个操作数取自累加器.  
Mnemonic: ACC  
Address: E0h  
7
6
5
4
3
2
1
0
Reset  
ACC.7 ACC.6 ACC05 ACC.4 ACC.3 ACC.2 ACC.1 ACC.0  
00h  
ACC[7:0]: The A (or ACC) register is the standard 8052 accumulator.  
4.2. B 寄存器  
B寄存器被用于乘法或除法指令,也可作为一般寄存器以存储临时数据.  
Mnemonic: B  
Address: F0h  
7
6
5
4
3
2
1
0
Reset  
B.7  
B.6  
B.5  
B.4  
B.3  
B.2  
B.1  
B.0  
00h  
B[7:0]: The B register is the standard 8052 register that serves as a second accumulator.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
19  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
4.3. 程序状态字  
Mnemonic: PSW  
Address: D0h  
7
6
5
4
3
2
1
0
Reset  
CY  
AC  
F0  
RS [1:0]  
OV  
F1  
P
00h  
CY:  
进位标志位.  
AC:  
F0:  
BCD 辅助进位标志位  
用户设置标志位 0  
RS[1:0]:  
寄存器组选择位,用来选择工作寄存器区域.  
RS[1:0]  
Bank Selected  
Bank 0  
Location  
00h 07h  
08h 0Fh  
10h 17h  
18h 1Fh  
00  
01  
10  
Bank 1  
Bank 2  
Bank 3  
11  
溢出标志位  
OV:  
F1:  
P:  
用户设置标志位 1  
奇偶校验位, 受硬件影响, 显示累加器中的奇偶的 1 位,即奇偶校验  
4.4. 堆栈指针  
堆栈指针是一个1字节的寄存器,在复位后初始化值为07h.此寄存器在执行PUSHCALL指令之前增值,使得堆栈指针在08h  
开始执行  
Mnemonic: SP  
Address: 81h  
7
6
5
4
3
2
1
0
Reset  
07h  
SP [7:0]  
SP[7:0]:  
堆栈指针储存了暂时寄存器的地址,该地址是堆栈指针的起始位置.换言之,它总是指向堆栈指  
针的顶端。  
4.5. 数据指针  
数据指针为2字节.低位为DPL.高位为DPH.它可以作为一个2字节的寄存器(MOV DPTR,#data16)来使用,或者作为两个寄存  
(例如,MOV DPL,#data8),它通常被用作是运行外部程序或者是数据空间(,MOVC A,@ A+DPTR 或者各自的MOV A, @  
DPTR).  
Mnemonic: DPL  
Address: 82h  
7
6
5
4
3
2
1
0
Reset  
00h  
DPL [7:0]  
DPL[7:0]: Data pointer Low 0  
Mnemonic: DPH  
Address: 83h  
7
6
5
4
3
2
1
0
Reset  
00h  
DPH [7:0]  
DPH [7:0]: Data pointer High 0  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 20  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
4.6. 数据指针 1  
双数据指针加速了块状数据的运行速度.标准的DPTR 是一个16位的寄存器,是用来寻址外部空间或者外部存储器. 在  
SM39R04G1准的数据指针称为DPTR,第二个数据指针称为DPTR1.选择位用来选择使用的数据指针.数据指针的选择  
位位于AUX寄存器的LSB(DPS).  
用户通过触发AUX寄存器中的LSB位进行切换. 所有有关的DPTR指令都将为当前选用的DPTR所操作。  
Mnemonic: DPL1  
Address: 84h  
7
6
5
4
3
2
2
2
1
1
1
0
Reset  
00h  
DPL1 [7:0]  
DPL1[7:0]: Data pointer Low 1  
Mnemonic: DPH1  
Address: 85h  
0
7
6
5
4
3
Reset  
00h  
DPH1 [7:0]  
DPH1[7:0]: Data pointer High 1  
Mnemonic: AUX  
Address: 91h  
0
DPS  
7
6
-
5
-
4
3
Reset  
00H  
BRGS  
PTS[1:0]  
PINTS[1:0]  
DPS:  
数据指针选择位.  
DPS = 1 选择数据指针 1.  
4.7. 接口控制寄存器  
Mnemonic: IFCON  
Address: 8Fh  
7
-
6
5
-
4
-
3
-
2
-
1
-
0
Reset  
00H  
CDPR  
ISPE  
CDPR:  
ISPE:  
程序码已加密指示位(仅读)  
ISP 功能使能位  
ISPE = 1, 允许使用 ISP 功能  
ISPE = 0, 禁止使用 ISP 功能  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 21  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
5. GPIO  
SM39R04G12I / O端口: Port 1Port 3. Ports 38I / O端口及Port 14I / O端口(10管脚包装只有Ports 38位  
I / O端口). 他们是: 准双向口 (标准的8051端口输出),推挽电路,开漏, 与只输入. 两种寄存器的配置为每个端口的每个位选  
择输出方式.SM39R04G1的所有端口可以通过软件配置四种型号的一种.如下表显示:  
Mnemonic  
Description  
Direct  
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0  
RESET  
I/O port function register  
P1M0[3:0]  
P1M0  
P1M1  
P3M0  
P3M1  
P1WE  
P3WE  
Port 1 output mode 0  
Port 1 output mode 1  
Port 3 output mode 0  
Port 3 output mode 1  
Port 3 output enable  
Port 1 output enable  
D4h  
D5h  
DAh  
DBh  
A3h  
A4h  
00H  
00H  
00H  
00H  
FFH  
FFH  
P1M1[3:0]  
P3M0[7:0]  
P3M1[7:0]  
P1WE[3:0]  
P3WE[7:0]  
PxM1.y  
PxM0.y  
Port output mode  
0
0
1
1
0
1
0
1
准双向口 (标准的 8051 端口输出)  
推挽电路  
只输入 (high-impedance)  
开漏  
当使用片上硬件复位机制时,复位脚可配置为P3.6。  
当主系统时钟源设置为使用振荡器(时钟由晶振输入脚输入)或片内RC振荡器,可于ICPISP中选择将晶振输出脚及晶振输  
入脚选择配置I / O端口.  
Mnemonic: P1WE  
Address: A3h  
7
6
5
4
3
P1.3  
2
P1.2  
1
P1.1  
0
P1.0  
Reset  
FFH  
Mnemonic: P3WE  
Address: A4h  
7
P3.7  
6
P3.6  
5
P3.5  
4
P3.4  
3
P3.3  
2
P3.2  
1
P3.1  
0
P3.0  
Reset  
FFH  
一般的应用,每个管脚都可独立的置高或置低.如下表显示:  
Mnemonic  
Description  
Direct  
Bit 7  
Bit 6  
Bit 5  
Ports  
P3.5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0 RESET  
Port 3  
Port 1  
Port 3  
Port 1  
B0h  
90h  
P3.7  
P3.6  
P3.4  
P3.3  
P1.3  
P3.2  
P1.2  
P3.1  
P1.1  
P3.0  
P1.0  
FFh  
FFh  
Mnemonic: P1  
Address: 90h  
7
6
5
4
3
P1.3  
2
P1.2  
1
P1.1  
0
P1.0  
Reset  
FFh  
P1.3~ 0: Port1 [3] ~ Port1 [0]  
Mnemonic: P3  
Address: B0h  
7
6
5
4
3
2
1
0
Reset  
P3.7  
P3.6  
P3.5  
P3.4  
P3.3  
P3.2  
P3.1  
P3.0  
FFh  
P3.7~ 0: Port3 [7] ~ Port3 [0]  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 22  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
6. 定时器0 和定时器1  
SM39R04G1有二个16bit的定时/计数寄存器: 定时器0, 定时器1. 所有这些都可以被设置为定时或计数操作.  
在定时器模式中, 定时器0或定时器1在每12个机器周期中得到递增,这意味着在每12个晶体或振荡信号中,计数会得到增加.  
在计数的模式中检测到相应的输入脚T0/T1有下降沿产生时存器便得到递增,由于它需要2个机器周期来识别由10  
的跳变,其最大输入的计数频率为振荡器频率的1/2,从而使得这里没有限制的占空比,以确定适当的识别为01的状态,  
因此,一个输入信号至少要稳定在1个机器周期.  
定时器0和定时器1都有四种操作模式选择,在选择操作模式中,两个特殊功能寄存器(TMOD and TCON)被应用其中.  
Mnemonic  
Description  
Direct  
Bit 7  
Bit 6  
Bit 5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0 RESET  
Timer 0 and 1  
TL0  
TH0  
TL1  
TH1  
Timer 0 , low byte  
Timer 0 , high  
byte  
Timer 1 , low byte  
Timer 1 , high  
byte  
8Ah  
8Ch  
8Bh  
8Dh  
TL0[7:0]  
00h  
00h  
00h  
00h  
TH0[7:0]  
TL1[7:0]  
TH1[7:0]  
Timer Mode  
Control  
Timer/Counter  
Control  
TMOD  
89h  
GATE  
C/T  
M1  
M0  
TR0  
GATE  
IE1  
C/T  
IT1  
M1  
IE0  
M0  
00h  
TCON  
AUX  
88h  
91h  
TF1  
TR1  
-
TF0  
-
IT0  
00h  
00H  
Auxiliary register  
BRGS  
PTS[1:0]  
PINTS[1:0]  
DPS  
6.1. 定时器/计数器模式控制寄存器(TMOD)  
Mnemonic: TMOD  
Address: 89h  
7
6
C/T  
5
M1  
4
M0  
3
2
1
M1  
0
M0  
Reset  
00h  
GATE  
GATE  
C/T  
Timer 0  
Timer 1  
GATE:  
该位被置位时为门控时,仅当„INT0 或者INT1‟脚为高时,且„TRx‟控制位被置位  
(参考TCON 寄存器)时使能,计数器在每个T0 T1 输入脚处于下减沿触发  
时得到加强。  
C/T:  
门控定时器或计数器选择器位被置位时用作计数器功能,该位被清零时用作定  
时器功能.  
M[1:0]:  
定时/计数器 0 或定时/计数器 1 的选择模式  
M1  
M0  
Mode  
Function  
0
0
Mode0  
13bit计数器/定时器, 包含TL0/TL1寄存器的低5  
位及TH0/TL1寄存器的全部8TL0/TL1寄存  
器的高 3 位可设置为 0.  
0
1
1
0
Mode1  
Mode2  
16 位计数器/定时器.  
8 位自动装载的计数器/定时器,自动装载的值保  
留在TH0 TH1.同时TL0 或者TL1 在每个机  
器周期内都会递增. 当溢出时THx 存放的值  
装入 TLx.  
1
1
Mode3  
如定时器1 M1 M2 位被设置为1,定时器  
2 停止计数。如定时器0 M1 M0 位被设置  
1时器0 作为两个独立的8 位定时器/计数  
.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 23  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
6.2. 定时/计数控制寄存器(TCON)  
Mnemonic: TCON  
Address: 88h  
7
TF1  
6
TR1  
5
TF0  
4
TR0  
3
IE1  
2
IT1  
1
IE0  
0
IT0  
Reset  
00h  
TF1:  
定时器1 溢出标志。定时器/计数器溢出时由硬件置位。中断执行时硬件清零,  
或由软件清零。.  
TR1:  
TF0:  
定时器 1 运行控制位。 如置位/清零, 关闭定时器/计数器 1.  
定时器0 溢出标志。定时器/计数器溢出时由硬件置位。中断执行时硬件自动清  
零,或由软件清零  
TR0:  
IE1:  
定时器 0 运行控制位。如置位/清零,关闭定时器/计数器 0.  
中断1 边沿标志。当检测到外部中断1 边沿/低电平时由硬件置位该标志。中  
断处理时由硬件清零,或通过软件清零.  
IT1:  
IE0:  
IT0:  
中断1 类型控制位,通过软件置位/清零该位来选择外部中断1 以下降沿/低电  
平方式触发  
中断0 边沿标志。当检测到外部中断0 边沿/低电平时由硬件置位该标志。中  
断处理时由硬件清零,或通过软件清零.  
中断0 类型控制位。通过软件置位/清零该位来选择外部中断0 以下降沿/低电  
平方式触发.  
6.3. T0T1 可配置性:  
计时器0外部输入(T0)及计时器1外部输入(T1)脚可于AUX寄存器中之PTS[1:0]配置至其他I/O。  
Mnemonic: AUX Address: 91h  
7
6
-
5
-
4
3
2
1
0
DPS  
Reset  
00H  
BRGS  
PTS [1:0]  
PINTS[1:0]  
Package = 14 Pin  
PTS [1:0]  
0x00  
T0  
P3.4  
P3.0  
P3.6  
T1  
P3.5  
P3.1  
P3.7  
P3.5  
0x01  
0x10  
0x11  
P3.4  
Package = 10 Pin  
PTS[1:0]  
0x00  
0x01  
0x10  
0x11  
T0  
T1  
P3.6  
P3.0  
P3.6  
P3.6  
P3.7  
P3.1  
P3.7  
P3.7  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 24  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
7. 串行接口0  
两个串行缓冲器组成两个单独寄存器,即一个传输缓冲区和一个接收缓冲区。  
写入数据到特殊功能寄存器(SFRS0BUF并设置这些数据在串行输出缓冲,并开始传输, 来自S0BUF的读取及从串行接  
收缓冲区读取数据行口可同时传输和接收数据也可在接收时缓存1字节CPU在第一个字节传输完成之前读取第  
二个字节,以防接收数据丢失。  
Mnemonic  
Description  
Direct  
Bit 7  
Bit 6  
Bit 5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0  
RESET  
Serial interface 0  
PCON  
AUX  
Power control  
Auxiliary register  
Serial Port 0  
control register  
Serial Port 0 data  
buffer  
Serial Port 0 reload  
register low byte  
Serial Port 0 reload  
register high byte  
87H  
91h  
SMOD  
BRGS  
-
-
-
-
-
-
-
STOP  
IDLE  
DPS  
40H  
00H  
PTS[1:0]  
PINTS[1:0]  
S0CON  
S0BUF  
98H  
99H  
AAH  
BAH  
SM0  
SM1  
SM20  
REN0  
TB80  
RB80  
TI0  
RI0  
00H  
00H  
00H  
00H  
S0BUF[7:0]  
S0REL S0REL S0REL S0REL S0REL S0REL S0REL S0REL  
S0RELL  
S0RELH  
.7 .6 .5 .4 .3 .2 .1 .0  
S0REL S0REL  
-
.9  
Address: 91h  
.8  
Mnemonic: AUX  
7
6
-
5
-
4
3
2
1
0
DPS  
Reset  
00H  
BRGS  
PTS[1:0]  
PINTS[1:0]  
BRGS:  
BRGS = 0 鲍率产生器使用定时器 1 TH1 寄存器.  
BRGS = 1 鲍率产生器使用 S0REL 寄存器.  
Mnemonic: S0CON  
Address: 98h  
7
SM0  
6
SM1  
5
4
3
2
1
TI0  
0
RI0  
Reset  
00h  
SM20  
REN0  
TB80  
RB80  
SM0,SM1:  
串行口 0 模式选择.  
SM0 SM1  
Mode  
0
0
1
1
0
1
0
1
0
1
2
3
UART0 4 种模式中,模式 0~3 稍后解释  
SM20:  
REN0:  
TB80:  
多处理机通信使能位  
如置位,串行接收使能,软件清除禁止接收  
在模式2 3 送的第9 位数据位位或清零取决与它执行的功能奇  
偶校验功能, 多处理机通信等。  
RB80:  
在模式2 3 RB80 为接收的第9 位数据位模式1 SM20=0RB80  
为停止位。在模式 0 中,此位不被使用。须由软件清除。  
发送中断标志位.在完成串行传输后由硬件置位,须由软件清除。  
接收中断标志。在完成串行传输后由硬件置位,须由软件清除.  
TI0:  
RI0:  
串行接口0由以下4种模式可以设置:  
SM0  
0
SM1  
0
Mode  
Description  
Shift register  
Board Rate  
0
Fosc/12  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 25  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
0
1
1
1
0
1
1
2
3
8-bit UART  
9-bit UART  
9-bit UART  
Variable  
Fosc/32 or Fosc/64  
Variable  
这里的Fosc是晶体或振荡器的频率。  
7.1. 模式 0  
引脚RXD0充当输入和输出。TXD0输出时钟。每次发送或接收以LSB最低位作首位,每次8特率固定为的晶体的频率  
1/12,接收通过以下的在S0CON中的设置标志在模式0中初始化:RI0 = 0 and REN0 = 1。在其他模式中,当REN0=1时,  
开始从起始位接收串行数据.  
Fig. 7-1: Transmit mode 0 for Serial 0  
Fig. 7-2: Receive mode 0 for Serial 0  
7.2. 模式 1  
引脚RXD0充当输入,TXD0充当串行输出,无任何外部时钟被使用,每次数据为10位:一个起始位(=0)8个数据位(LSB  
位在前),及一个停止位(=1)。在接收据数据时, 起始位将被同步传输,8个数据位可通过S0BUF来读取, 一个停止位存于  
特殊功能寄存器S0CON的设置标志RB80内,在模式1中,无论是内部的波特率发生器或定时器1可以用来指定波特率。  
Fig. 7-3: Transmit mode 1 for Serial 0  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
26  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Fig. 7-4: Receive mode 1 for Serial 0  
7.3. 模式 2  
该模式和模式1类似,但有两点不同。波特率被固定在振荡器的频率的1/32SMOD=1)或1/64SMOD=0),且有11位数  
据被传输或接收: 1个起始位(=0),8个数据位(LSB在前),一个可编程的第9位及一个停止位(=1),9位可以用来控  
制串行接口的奇偶性。在传输中,S0CON中的TB80输出第9位,在接收中,S0CON中的RB80将被影响。  
7.4. 模式 3  
模式23的唯一不同之处在于:在模式3中,无论是内部的波特率发生器或定时器1可以用来指定波特率。  
Fig. 7-5: Transmit modes 2 and 3 for Serial 0  
Fig. 7-6: Receive modes 2 and 3 for Serial 0  
7.5. 串行接口 0 的多重机通讯  
在串行接口 0 的模式2 3 或串行接口1 的模式A 中,接收9 位的功能, 可用于多处理器的通讯。  
在这种情况下,从机在S0CON 中的位SM20被置位为1。当主机输出从机的地址时,Bit9 将被置1,从而在所有的从机中  
导致串行口接收中断。从机将接收到的字节和它们的网络地址比较,如匹配,其从机将清除SM20,并接收其余的信息,其  
他的从机将远离SM20无效,并忽略此信息。在解决从机后,其主机在Bit9 0 时将输出剩余部分的信息,因此,没有串  
口接收中断会产生在未选中的处理机中。  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
27  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
7.6. 波特率发生器  
7.6.1. 串行接口 0 的模式 1 3  
(a) BRGS = 0 (AUX寄存器):  
2SMOD FOSC  
Baud Rate   
Baud Rate   
32 12   
256 TH1  
(b) BRGS = 1 (AUX寄存器):  
2SMOD FOSC  
64  
210 S0REL  
7.7. 波特率的时钟源  
当串行接口功能被使用时,须注意使用内部的振荡器作为时钟源的精度,其原因是先前章节所涉及到的波特率必须尽可能  
的准确,而内部的OSC的时钟频率有+3%浮动的差异, 因此,对于时钟频率精度要求高的应用环境,用户可选外部晶体或  
振荡器作为时钟源。  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
28  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
8. 看门狗定时器  
看门狗定时器是一个8位的计数器并会在计数器溢出时产生复位讯号.WDT在噪音.电源干扰,或断电等导致软件死循环或跑  
飞程序等情况下非常有用.WDT功能可以帮助拥护的软件从不正常的软件状态中恢复正常.WDT不同于通用的8052的计时器  
0,1,2.为了防止WDT复位,可以通过软件定时清除WDT计数器.当不可预料的复位发生时,用户应该检查WDTC寄存器的  
WDTF. 在一外部复位后,该看门狗定时器将无效且所有寄存器都清零。  
看门狗定时器是一个自由运行的片上RC振荡器 (250 KHz ±20%). WDT将保持运行就算是系统时钟被关闭(例如,在睡眠  
状态).在正常的运行或睡眠状态,一个WDT超时(如使能)将导致MCU复位.WDT在正常状态下可随时被使能或失效.请注意  
WDTC寄存器的WDTE.默认的WDT超时时间为接近16.38ms (WDTM [3:0] = 0100b).  
WDT有可选择的分频.要选择分频,需要正确设置看门控制寄存器(WDTC)的位3~0(WDTM [3:0])  
250KHz  
WDTCLK  
2WDTM  
256  
Watchdog reset time =  
WDTCLK  
Table 8.1 WDT time-out period  
Divider  
(250 KHz RC oscillator in)  
WDTM [3:0]  
Time period @ 250KHz  
0000  
0001  
0010  
0011  
0100  
0101  
0110  
0111  
1000  
1001  
1010  
1011  
1100  
1101  
1110  
1111  
1
2
4
8
16  
1.02ms  
2.05ms  
4.10ms  
8.19ms  
16.38ms (default)  
32.77ms  
65.54ms  
131.07ms  
262.14ms  
524.29ms  
1.05s  
32  
64  
128  
256  
512  
1024  
2048  
4096  
8192  
16384  
32768  
2.10s  
4.19s  
8.39s  
16.78s  
33.55s  
MCU复位,MCU将会读WDTEN控制位状态.WDTEN位被设置为1,无论WDTE位状态如何,看门狗功能将会失效.当  
WDTEN位被清0,WDTE位被通过变成设为1的情况下,看门狗功能将被使能.用户可通过烧路器或ISP设置WDTEN.  
WDTE位写入1同时WDTEN控制位清0,能使WDT功能使能.WDTE设为1.8位的计数器用通过WDTM[3:0]设置好的分  
频进行计数.它在溢出时将会产生复位讯号.WDTE位在MCU重启时将被自动清0,同时硬件复位或WDT复位.  
看门狗一旦开始工作将无法停止.WDTK寄存器用户可通过对看门狗定时器重置密钥(WDTK)写入55h实现WDT计时器清0.  
这将会清除8位计数器内容并让计数器重启. 看门狗定时器必须定时刷新以防来自可变的重置复位请求信号.  
当看门狗定时器溢出时, WDTF标志位将被置1并自动重置复位MCU.该标志位可被软件或外部复位清除.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
29  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Clear  
WDTF = 0  
Power on reset  
External reset  
Software write “0”  
250KHz RC  
oscillator  
WDTF  
Set WDTF = 1  
WDT time-out reset  
WDTCLK  
1
TAKEY  
(55, AA, 5A)  
WDT  
Counter  
2WDTM  
WDTM[3:0]  
Enable/Disable  
WDT  
Refresh  
WDT Counter  
WDTC  
Enable WDTC  
write attribute  
WDTK  
(0x55)  
WDTEN  
Fig. 8-1: Watchdog timer block diagram  
Mnemonic  
Description  
Direct  
Bit 7  
Bit 6  
Bit 5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0  
RESET  
Watchdog Timer  
Time Access Key  
register  
Watchdog timer  
control register  
Watchdog timer  
refresh key  
TAKEY  
WDTC  
WDTK  
F7h  
B6h  
B7h  
TAKEY [7:0]  
-
00H  
04H  
00H  
WDTF  
-
WDTE  
WDTM [3:0]  
WDTK[7:0]  
Mnemonic: TAKEY  
Address: F7h  
7
6
5
4
3
2
1
0
Reset  
00H  
TAKEY [7:0]  
看门狗控制寄存器(WDTC)默认为仅读;软件需依序于寄存器 TAKEY 写入 55h, AAh 5Ah 才能对看  
门狗控制寄存器(WDTC)执行写入,启动看门狗功能及设定重置时间  
MOV TAKEY, #55h  
MOV TAKEY, #AAh  
MOV TAKEY, #5Ah  
Mnemonic: WDTC  
Address: B6h  
7
6
-
5
4
-
3
2
1
0
Reset  
04H  
WDTF  
WDTE  
WDTM [3:0]  
WDTF:  
WDTE:  
看门狗定时器产生重置信号之旗标位.  
MCU 之重置是由看门狗定时器产生时, 此位将被置高.此旗标位清零可由软件、外部  
重置信号或上电之重置信号.  
看门狗定时器使能位.  
此位需于WDTEN=0(此值于出厂时已设为0)时设置才有作用,既于刻录(使用ICP,ISP或一  
般刻录器)时于看门狗选项选择使用.  
0: 禁能.  
1: 使能.  
WDTM [3:0]:  
看门狗重置信号产生时间选择位.请参考表格 8.1 所列看门狗重置信号产生时间.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 30  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Mnemonic: WDTK  
Address: B7h  
7
6
5
4
3
2
1
0
Reset  
WDTK[7:0]  
00h  
WDTK:  
看门狗定时器计数器清零寄存器.  
于此寄存器写入 0x55, 看门狗定时器计数器将清零重新计数.  
範例:  
看门狗定时器使能並选择重置信号产生时间為 262.14ms.  
第一步,先确认刻录时看门狗功能已选择使用.  
第二步,如下  
MOV TAKEY, #55h  
MOV TAKEY, #AAh  
MOV TAKEY, #5Ah  
MOV WDTC, #28h  
; enable WDTC write attribute.  
; Set WDTM [3:0] = 1000b. Set WDTE =1 to enable WDT  
; function.  
.
.
.
MOV WDTK, #55h  
; Clear WDT timer to 0.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 31  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
9. 中断  
SM39R04G1提供7个中断源并带有4级优先权. 每一中断源都在特殊寄存器(SFR)中有自身的请求标志,每个中断请求信号  
通过相应的标志及特殊寄存器(SFR)中的IEN0IEN1中的使能位来独自允许或禁止。  
当中断发生时,CPU将会跳转预先设定的地址,如9-1图表所示,一旦中断开始执行,就只能被更高优先级的中断终止,其  
中断服务会被来自指令RETI的返回所终结RETI被执行时且中断发生时理器将将返回此指令执行下一条指令。  
当中断条件发生时,该处理器通过设置一个标志位来表示,无论中断使能或禁止,每个中断标志都将在每个机器周期中采  
样一次,随后采样由硬件来检测,当中断被使能时,且采样指出相应中断时,中断请求标志被设置。在随后的指令周期中,  
中断将被硬件所确定。从而迫使一个LCALL 指向相应的地址向量。  
当中断发生时,中断响应将需要不同的时间,这取决于相关的处理器。如一处理器执行的中断服务程序同等或更优先,新  
的中断将不会启用,在其他情况下,响应时间将取决于当前的指令。以最快的速度回应一个中断是需要7个机器周期,这包  
括一个检测中断的机器周期和6周期执行LCALL周期。  
Table 9-1: 中断向量  
Interrupt Vector  
Address  
Interrupt Number  
*(use Keil C Tool)  
Interrupt Request Flags  
IE0 External interrupt 0  
0003h  
000Bh  
0013h  
001Bh  
0023h  
0063h  
006Bh  
0
1
TF0 Timer 0 interrupt  
IE1 External interrupt 1  
TF1 Timer 1 interrupt  
2
3
RI0/TI0 Serial channel 0 interrupt  
LVIIF Low Voltage Interrupt  
IICIF IIC interrupt  
4
12  
13  
*See Keil C about C51 User‟s Guide about Interrupt Function description  
Mnemonic  
Description  
Direct  
Bit 7  
Bit 6  
Bit 5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0  
RESET  
Interrupt  
-
AUX  
IEN0  
Auxiliary register  
Interrupt Enable  
0 register  
Interrupt Enable  
1 register  
Interrupt request  
register  
Interrupt priority  
level 0  
91h  
BRGS  
EA  
-
-
PTS[1:0]  
PINTS[1:0]  
DPS  
EX0  
00H  
00H  
A8H  
-
ES0  
IELVI  
LVIIF  
IP0.4  
IP1.4  
ET1  
-
EX1  
-
ET0  
-
IEN1  
IRCON  
IP0  
B8H  
C0H  
A9h  
B9h  
-
-
-
-
-
-
-
-
IEIIC  
IICIF  
IP0.5  
IP1.5  
-
00H  
00H  
00h  
00h  
-
-
-
-
IP0.3  
IP1.3  
IP0.2  
IP1.2  
IP0.1  
IP1.1  
IP0.0  
IP1.0  
Interrupt priority  
level 1  
IP1  
Mnemonic: AUX  
Address: 91h  
7
6
-
5
-
4
3
2
1
0
DPS  
Reset  
00H  
BRGS  
PTS[1:0]  
PINTS[1:0]  
外部中断0(INT0)、外部中断1(INT1)脚可于AUX寄存器中之PINTS[1:0]配置至其他I/O。  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
32  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Package = 14 Pin  
INT0  
PINTS [1:0]  
0x00  
INT1  
P3.3  
P3.1  
P3.7  
P3.3  
P3.2  
P3.0  
P3.6  
P3.2  
0x01  
0x10  
0x11  
Package = 10 Pin  
PINTS [1:0]  
0x00  
INT0  
P3.6  
P3.0  
P3.6  
P3.6  
INT1  
P3.7  
P3.1  
P3.7  
P3.7  
0x01  
0x10  
0x11  
Interrupt Enable 0 register(IEN0)  
Mnemonic: IEN0  
Address: A8h  
7
EA  
6
-
5
-
4
ES0  
3
ET1  
2
EX1  
1
ET0  
0
EX0  
Reset  
00h  
EA:  
ES0:  
ET1:  
EX1:  
ET0:  
EX0:  
EA=0 禁能所有中断.  
EA=1 使能所有中断.  
ES0=0 禁能串行口 0 中断.  
ES0=1 使能串行口 0 中断.  
ET1=0 禁能定时器 1 中断.  
ET1=1 使能定时器 1 中断.  
EX1=0 禁能外部中断 1.  
EX1=1 使能外部中断 1.  
ET0=0 禁能定时器 0 中断.  
ET0=1 使能定时器 0 中断.  
EX0=0 禁能外部中断 0.  
EX0=1 使能外部中断 0.  
Interrupt Enable 1 register(IEN1)  
Mnemonic: IEN1  
Address: B8h  
7
-
6
-
5
IEIIC  
4
3
-
2
-
1
-
0
-
Reset  
00h  
IELVI  
IEIIC:  
IELVI:  
IIC 中断使能位.  
IEIICS = 0 禁能 IIC 中断.  
IEIICS = 1 使能 IIC 中断.  
低压中断使能位.  
IELVI = 0 禁能低压中断.  
IELVI = 1 使能低压中断.  
Interrupt request register(IRCON)  
Mnemonic: IRCON  
Address: C0h  
7
-
6
-
5
IICIF  
4
3
-
2
-
1
-
0
-
Reset  
00H  
LVIIF  
IICIF:  
LVIIF:  
IIC 中断旗标位.  
低压中断旗标位  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 33  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
9.1. 优先权配置  
所有中断来源相组合于以下组中:  
Table 9-2: Priority level groups  
Groups-  
外部中断 0  
定时器 0 中断  
外部中断 1  
定时器 1 中断  
串行口 0 中断  
-
-
-
-
低压中断  
IIC中断  
通过对SFRs中的IP0IP1置位或清零,每一组中断都可被独自编程为四个优先级中的一个,如要求相同的优先级被同时接  
收,一内部轮询序列将依次确定哪个请求被优先服务.  
Mnemonic: IP0  
Address: A9h  
7
-
6
-
5
4
3
2
1
0
Reset  
00h  
IP0.5  
IP0.4  
IP0.3  
IP0.2  
IP0.1  
IP0.0  
Mnemonic: IP1  
Address: B9h  
7
-
6
-
5
4
3
2
1
0
Reset  
00h  
IP1.5  
IP1.4  
IP1.3  
IP1.2  
IP1.1  
IP1.0  
Table 9-3: Priority levels  
IP1.x  
IP0.x  
优先权层级  
0
0
1
1
0
1
0
1
Level0 (最低)  
Level1  
Level2  
Level3 (最高)  
Table 9-4: Groups of priority  
Group  
Bit  
IP1.0, IP0.0  
IP1.1, IP0.1  
IP1.2, IP0.2  
IP1.3, IP0.3  
IP1.4, IP0.4  
外部中断 0  
定时器 0 中断  
外部中断 1  
定时器 1 中断  
串行口 0 中断  
-
-
-
低压中断  
IP1.5, IP0.5  
-
IIC中断  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 34  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Table 9-5: Polling sequence  
Interrupt source  
Sequence  
外部中断 0  
定时器 0 中断  
外部中断 1  
定时器 1 中断  
串行口 0 中断  
低压中断  
IIC中断  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 35  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
10.电源管理单元  
电源管理单元提供两种电源管理模式,即IDLE(待机/空闲)和STOP(停止),并为用户提供省电功能。  
Mnemonic: PCON Address: 87h  
7
6
-
5
-
4
-
3
-
2
-
1
0
IDLE  
Reset  
40h  
SMOD  
STOP  
STOP:  
IDLE:  
STOP 模式控制位。设置此位将运行 STOP 模式,  
STOP 位总是读为 0.  
IDIE 模式控制位。设置此位将运行 IDLE 模式,  
IDLE 位总是读为 0  
10.1. 待机模式(空闲模式)  
使用IDLE(待机模式(空闲模式))模式可通过对PCON寄存器的IDLE位置位。空闲模式停止MCU的时钟源,但外部的时钟  
源依旧保持,由于此时CPU不工作,电源功耗将被降低。当任何一中断信号或者一复位信号时,CPU将退出待机模式(空  
闲模式)。  
10.2. 停止模式  
使用STOP(停止模式)模式可通过对PCON寄存器的STOP位置位。在此模式中,所有的中断源将全部被关闭,CPU将从  
一个无时钟的中断(外部中断0/1及低压中断)或者一个重置(看门狗及低压重置)条件下退出该模式。  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
36  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
11.IIC 功能  
这些IIC模块使用SCL(时钟SDA(数据线来联系其他的IIC界面, 其速度可以由软件设置特殊寄存SFRIICBR[2:  
0] ,从而使其高达到400KBpS(最大值). IIC模块可以是主机也可以是从机,,提供两个中断(RXIF,TXIF),并有两个  
地址以作数据传输,它将产生开始,在主机模式中,反复启动和停止信号,在从机模式中,它将检测开始,反复启动和停  
止信号, 最大沟通的长度及连接设备的数目被一个最大400pF 的电容所限制  
中断向量为6Bh.  
Mnemonic  
Description  
Direct  
Bit 7  
Bit 6  
Bit 5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0  
RESET  
IIC function  
BF_E  
N
IICCTL  
IICS  
IIC control register  
IIC status register  
F9h  
F8h  
FAh  
FBh  
FCh  
IICEN  
-
MSS  
MPIF  
MAS AB_EN  
IICBR[2:0]  
TXAK  
04H  
00H  
A0H  
60H  
00H  
RW,B  
B
LAIF  
RXIF  
TXIF  
RXAK  
IIC Address 1  
register  
IIC Address 2  
register  
IIC Read/Write  
register  
MATCH1  
or RW1  
MATCH2  
or RW2  
IICA1  
IICA1[7:1]  
IICA2[7:1]  
IICA2  
IICRWD  
IICRWD[7:0]  
IIC Enaable Bus  
Transaction  
IICEBT  
FDh  
FU_EN  
-
00H  
Mnemonic: IICCTL  
Address: F9h  
7
6
5
4
3
2
1
0
Reset  
BF_E  
N
IICEN  
MSS  
MAS AB_EN  
IICBR[2:0]  
04h  
IICEN:  
MSS:  
IIC 模式使能  
ICEN = 1,使能  
IICEN = 0,禁止  
\从机模式选择  
MSS = 1, 选择主机模式  
MSS = 0, 选择从机模式  
软件必须在设置其他寄存器之前置位  
主模式的地址选择(仅在主机模式中)  
MAS = 0,使用IICA1  
MAS:  
MAS = 1,使用 IICA2  
AB_EN:  
仲裁失去了使能位. (仅主机模式)  
AB_EN位使能, 硬件将检查仲裁丢失位.一旦发生丢失仲裁, 硬件将返回到空闲状态. 如果此位  
被清除, 硬件也不会理会仲裁丢失情况.当多主机与从机连接时需设置此位.于单主机与从机时清  
除此位.  
BF_EN:  
总线忙碌使能位. (仅主机模式)  
BF_EN位使能,硬件将不会产生开始信号至总在线直到BF已置低.此位若被清零将永远产生开  
始信号至总线当MStart置高.当多主机与从机连接时需设置此位.于单主机与从机时清除此位.  
波特率选择(仅在主机模式)这里的Fosc 为外部晶体或振荡器的频率,系统默认为Fosc/512  
以便用户选择  
IICBR[2:0]:  
IICBR[2:0]  
000  
Baud rate  
Fosc/32  
Fosc/64  
001  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 37  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
010  
011  
100  
101  
110  
111  
Fosc/128  
Fosc/256  
Fosc/512  
Fosc/1024  
Fosc/2048  
Fosc/4096  
Mnemonic: IICS  
Address: F8H  
7
6
5
4
3
2
1
0
Reset  
-
MPIF  
LAIF  
RXIF  
TXIF  
RXAK  
TxAK  
RW  
00H  
MPIF:  
LAIF:  
RxIF:  
停止条件中断旗标  
当停止条件发生此位将置高.此位需由软件清零  
仲裁失去中断旗标. (只主机模式)  
当仲裁失去条件发生此位将置高.此位需由软件清零  
数据接收中断标志位  
IICRWDIIC 读写数据缓存入一个新的接收数据时被置位件清零该位后IIC 中  
断标志位(IICIF)将自动清零。  
数据传输中断标志位  
TxIF:  
当所有位于转换寄存器中的位数据被传输时位被置位IICRWD(IIC /写数据缓  
)8位数据被下载至转换寄存器中;软件清零该位后,IIC 中断标志位(IICIF)将自动  
清零。  
RxAK:  
TxAK:  
接收确认位. 置零,这意味着一个确认信号已经收到在完成8位数据传输总线上后.  
传输确认位. 当收到完整的8位数据, 此位将设置(NoAck) 或清除(Ack) 并传输到主机显  
示接收状态. 事实上, 它是被作为一个字节的传输在第9位如Fig. 11-1.  
主机模式:  
RW:  
总线忙碌表示位  
当侦测到 scl=0 sda=0 或总线产生开始信号,此位将置高.当侦测到停止信号,此位将清  
. 此位可由软件清零以使系统回到就绪状态.  
从机模式:  
从机模式的读取(接收)或写(传输) IIC总线. 当此位被清除, 表示从机模式在IIC总线  
接收数据.(只从机模式)  
Fig. 11-1: Acknowledgement bit in the 9th bit of a byte transmission  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 38  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Mnemonic: IICA1  
Address: FAH  
7
6
5
4
3
2
1
0
Reset  
Match1 or  
RW1  
R or R/W  
IICA1[7:1]  
R/W  
A0H  
从机模式:  
IICA1[7:1]:  
IIC 地址寄存器  
这是为从机模式的第一个 7-bit 的地址,它在一个地址(来自主机模式)接收后被检测  
IICA1 和来自主机模式方的接收地址匹配时,该位将被硬件置位,当 IIC 总线讀或寫第一筆資料  
時,该位将被自动清除。  
Match1:  
主机模式:  
IICA1[7:1]:  
IIC 地址寄存器  
显示要与它通讯的从机的 7 位地址  
th  
RW1:  
如模块被设置为 Mstart Rstart bit,该位将被作为从机方的 RW 发送,它在 IIC 地址之后的抵 8  
位显示,如 Fig. 11-2.。它用来告诉从属模式中将来的通信的方向。如设置为 1,模块在主模式中为  
接收方,如是 0,模块在主模式中为传输方。  
Fig. 11-2: RW bit in the 8th bit after IIC address  
Address: FBh  
Mnemonic: IICA2  
7
6
5
4
3
2
1
0
Reset  
60h  
IICA2[7:1]  
R/W  
Match2 or RW2  
R or R/W  
从机模式:  
IICA2[7:1]:  
IIC 地址寄存器  
这是为从机模式的第二个 7-bit 的地址, 它在一个地址(来自主机模式)接收后被检测  
IICA2 和来自主机模式方的接收地址匹配时,该位将被硬件置位,当 IIC 总线讀或寫第一筆資料  
時,该位将被自动清除。  
Match2:  
主机模式:  
IICA2[7:1]:  
IIC 地址寄存器  
显示要与它通讯的从机的 7 位地址  
RW2:  
如模块被设置为 Mstart 或者 Rstart bit,该位将被作为从机方的 RW 发送,它用来告诉从机模式中  
将来的通信的方向。如设置为 1,模块在主模式中为接收方,如是 0,模块在主模式中为传输方。  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 39  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Mnemonic: IICRWD  
Address: FCh  
7
6
5
4
3
2
1
0
Reset  
00h  
IICRWD[7:0]  
IICRWD[7:0]:  
IIC 读写缓存  
在接收(读)模式中,接收的字节存储于此  
在传输模式中,该字节通过该 SDA 被转换  
Mnemonic: IICEBT  
Address: FDH  
Res  
et  
00H  
7
6
5
-
4
-
3
2
-
1
-
0
FU_EN  
-
-
主机模式:  
00:  
01:  
10:  
保留  
IIC 模块将致能以便由 SDA SCL 读写数据.  
IIC 模块将于 SDA SCL 发出开始信号,再送出储存于 IICA1 IICA2(MAS  
位选择)的地址  
11:  
01:  
IIC 模块将于 SDA SCL 发出停止信号.  
从机模式:  
FU_EN[7:6] 此两位于从机模式仅能写入 01.其他值是无效的.  
注意:  
1. FU_EN[7:6] 当总线空闲时,于读写数据前此两位需先写入01;否则,SCL将被  
锁住(置低).  
2. FU_EN[7:6] 当读写数据后并收到主机之停止信号时此两位需接着再写入01.  
3. 在传送数据时(从机模式),于此两位写入01前待传送数据需先写入IICRWD.  
4. FU_EN[7:6] 此两位将自动清零,软件需重复写入.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 40  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
12.LVI 低压中断  
中断向量为63h.  
Mnemonic: LVC  
Address: E6h  
7
6
5
4
3
-
2
-
1
0
-
Reset  
20H  
LVI_EN LVI_VS LVRXE LVSIF  
EPSIF  
LVI_EN:  
LVI_VS:  
LVRXE:  
LVSIF  
使能低电压中断功能.  
0: 禁能低电压检测中断功能.  
1: 使能低电压检测中断功能.  
低电压中断电压等级选择位  
0 : 选择低阶为低电压中断电压等级  
1 : 选择高阶为低电压中断电压等级  
使能外部低电压重置功能.  
0: 禁能外部低电压重置功能.  
1: 使能外部低电压重置功能.  
低电压状态旗标位  
1:表示外部电压低于低电压中断电压  
0:表示外部电压高于低电压中断电压  
芯片外部电压等级状态旗标位  
1: 表示外部电压低于 3.8V  
EPSIF:  
0: 表示外部电压高于3.9V  
高阶:  
Symbol  
Parameter  
Low Voltage Interrupt Voltage Level  
Low Voltage Reset Voltage Level  
Min  
3.4  
3.2  
Typ  
3.7  
3.5  
Max  
4.0  
3.8  
Units  
V
V
VLVI  
VLVR  
Notes: The VLVI always above VLVR about 0.2V.  
低阶:  
Symbol  
Parameter  
Low Voltage Interrupt Voltage Level  
Low Voltage Reset Voltage Level  
Min  
2.1  
1.9  
Typ  
2.3  
2.1  
Max  
2.5  
2.3  
Units  
V
V
VLVI  
VLVR  
Notes: The VLVI always above VLVR about 0.2V.  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 41  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
13.在系统编程(Internal ISP)  
SM39R04G1 可通过内部硬件电路产生 flash 控制讯号.用户利用 flash 控制寄存器,flash 地址寄存器和 flash 数据寄存器在不  
需要将 SM39R04G1 移出系统的情况下实现 ISP 功能. SM39R04G1 提供了可以实现 flash 编程/芯片擦除/页擦除/保护功能  
flash 控制讯号.用户需要去设计和使用任何 SM39R04G1 可以输入数据的接口,然后利用 ISP 服务程序去实现 flash 的编  
/芯片擦除/页擦除/保护功能.  
13.1. ISP 服务程序  
ISP服务程序是由用户自行开发并放置于 ISP服务程序区的韧件. 用户可依需求决定 ISP 服务程序的大小. 另外用户需  
ISP 服务程序刻录至 SM39R04G1 芯片中才可使用 ISP 功能.  
由于 ISP 服务程序是由用户自行开发需包括 flash 数据寄存器的刻录及 SM39R04G1 芯片与上位机的通讯协议. 举  
例来说, 使用者使用 SM39R04G1 芯片上之 UART 接口与上位机作数据之传送及接收SM39R04G1 芯片上之 ISP  
服务程序内需有波特率设定,为避免数据传输错误需有数据总合检查或同位检查或其他错误检查机制.  
于正常动作模式或空闲模式可启动 ISP 服务程序,于停止模式则不行.  
13.2. 锁定位(N)  
锁定位 N 有两个功能:一是配置服务程序的大小,另一个则是通过 flash 擦除功能锁定 ISP 服务程序的空间.  
ISP 服务程序地址位从$C00 to $FFF. 可被分为 N*256 字节(N=0-4). N 0 时没有 ISP 功能.所有的 4K 字节 flash  
都被用来做程序存储.N 1 ,ISP 服务程序占用 256 字节,剩余的 3.75K 字节 flash 可被用做程序存储.ISP 服务程  
序的最大空间为 1K 字节(N 4 ). 在这样的配置下,可用的程序存储空间为 3K 字节.  
N 定下来后,SM39R04G1 会从上往下(从最顶端到地址$FFF)保存 ISP 服务程序空间.ISP 服务程序的开始地址位于  
$0C00. 请参考章节 3.1 有关 ISP 服务程序与程序内存之关系图.  
锁定位 N 功能不同于 flash 保护功能,flash 擦除功能可以擦除除 ISP 服务程序空间外的所有 flash 记忆体.flash 没有  
被保护,ISP 服务程序的内容一直可被读.flash 被保护,所有的 flash 程序空间包括 ISP 服务程序空间不能被读.  
Table 13.1 ISP code area.  
N
0
1
2
3
4
ISP service program address  
No ISP service program  
256 bytes ($F00h ~ $FFFh)  
512 bytes ($E00h ~ $FFFh)  
768 bytes ($D00h ~ $FFFh)  
1.0 K bytes ($C00h ~ $FFFh)  
ISP 服务程序配置于 N*256 字节 (N= 0 ~ 4)  
13.3. ISP 服务程序编程  
在锁定位 N 被设置并 ISP 服务程序被编程后,ISP 服务程序记忆体被自动的保护(锁定).锁定位 N 有它自己的编程/擦除  
时序.这不同于 flash 记忆体的编程/擦除时序.因此,被锁定的 ISP 服务程序不可被 flash 擦除功能所擦除.如客户需要擦  
除锁定的 ISP 服务程序,他只可以通过烧写器实现.SM39R04G1 在系统时,客户不可改变 ISP 服务程序.  
13.4. 启动 ISP 服务程序  
要启动 ISP 服务程序就是要在 ISP 服务程序的开始地址装载程序计数(PC)并执行它.有四种实现的方法:  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054  
42  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
(1) 空复位.用首地址为空($000=#FFH)的硬件复位会在 ISP 服务程序的开始地址装载 PC.硬件复位包括内  
(电源或重启)和外部重置端口复位.  
(2) 执行 jump 指令可在 ISP 服务程序的开始地址装载 PC  
(3) 通过硬件设置进入 ISP 服务程序.用户可通过设置当硬件复位时,“ISP 启动 I/O” (14L P3.710L  
P3.3) ‟为低‟ ,SM39R04G1 会强行进入 ISP 服务程序. 硬件复位包括内部(电源或重启)和外部键盘复  
.在应用系统设计时,用户因该对 “ISP 启动管脚” (14L P3.710L P3.3), 在复位时间内防止  
SM39R04G1 进入 ISP 服务程序.  
(4) 通过硬件设置进入 ISP 服务程序.P3.0 在硬件复位时会侦测到 2 个时钟讯号. 硬件复位包括内部(电源  
或重启)和外部键盘复位  
在硬件复位周期内, 硬件可以侦测“ISP 启动” (14L P3.710L P3.3)P3.0 状态. 如果他们满足了上面的其中一  
个条件,芯片将会自动跳转到 ISP 模式.ISP 服务程序被执行后,用户需要对 SM39R04G1, 进行复位,通过硬件复位或  
WDT,或是‟JUMP‟至地址$0000 来实现重启程序.  
为了用户的不同应用情况,这里有 6 种不同的进入机制.这个进入方法可以在烧路器或 ISP 中选取.  
(1) 首地址为空例如$0000 = 0xFF. 且由内部重置信号触发.  
(2) 首地址为空例如$0000 = 0xFF. 且由外部重置信号触发.  
(3) “ISP 启动管脚” (14L P3.710L P3.3)=0. 且由内部重置信号触发.  
(4) “ISP 启动管脚” (14L P3.710L P3.3)=0. 且由外部重置信号触发.  
(5) P3.0 输入 2 个时钟. 且由内部重置信号触发.  
(6) P3.0 输入 2 个时钟. 且由外部重置信号触发.  
13.5. ISP 寄存器TAKEY, IFCON, ISPFAH, ISPFAL, ISPFD and ISPFC  
Mnemonic  
Description  
Direct  
Bit 7  
Bit 6  
Bit 5  
Bit 4  
Bit 3  
Bit 2  
Bit 1  
Bit 0  
RESET  
ISP function  
Time Access Key  
register  
Interface Control  
register  
TAKEY  
IFCON  
F7h  
8Fh  
TAKEY [7:0]  
00H  
00H  
-
CDPR  
-
-
-
-
-
ISPE  
ISP Flash  
ISPFAH  
ISPFAL  
Address - High  
register  
ISP Flash  
Address - Low  
register  
ISP Flash Data  
register  
E1h  
E2h  
-
ISPFAH [3:0]  
FFH  
FFH  
ISPFAL [7:0]  
ISPFD [7:0]  
ISPFD  
ISPFC  
E3h  
E4h  
FFH  
00H  
ISP Flash Control  
register  
EMF1  
EMF2  
EMF3  
3
EMF4  
-
ISPF.2 ISPF.1 ISPF.0  
Mnemonic: TAKEY  
Address: F7H  
7
6
5
4
2
1
0
Reset  
00H  
TAKEY [7:0]  
ISP 使能位(ISPE)默认为只读,软件必须连续的对 TAKEY 寄存器写三个特定值 55h,AAH,5Ah,使 ISPE 位可写.  
这是:  
MOV TAKEY, #55h  
MOV TAKEY, #AAh  
MOV TAKEY, #5Ah  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 43  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
Mnemonic: IFCON  
Address: 8FH  
7
-
6
5
-
4
-
3
-
2
-
1
-
0
Reset  
00H  
CDPR  
ISPE  
0(ISPE) of IFCON ISP 使能位,用户可通过设置 ISPE 位为 1 使能 SM39R04G1 的全部 ISP 功能,通过设置  
ISPE 0 来禁止全部 ISP 功能.ISPE 的作用象一个加密匙.用户可禁止所有的 ISP 功能以保护软件程序不被意外  
的擦除.ISP 寄存器 ISPFAH,ISPFAL,ISPFD,ISPFC 默认为只读.软件必须将 ISPE 位设为 1 以使上述 4 个寄存  
器为可写.  
Mnemonic: ISPFAH  
Address: E1H  
7
-
6
-
5
-
4
-
3
2
1
0
Reset  
FFH  
ISPFAH3 ISPFAH2 ISPFAH1 ISPFAH0  
ISPFAH [3:0]:  
使用ISP功能之地址高字节  
Mnemonic: ISPFAL  
Address: E2H  
7
6
5
4
3
2
1
0
Reset  
FFH  
ISPFAL7 ISPFAL6 ISPFAL5 ISPFAL4 ISPFAL3 ISPFAL2 ISPFAL1 ISPFAL0  
ISPFAL [7:0]:  
使用ISP功能之地址低字节  
ISPFAH ISPFAL 提供了 12 flash 记忆体地址用做 ISP 功能.这个 flash 记忆体地址不应该包括 ISP 服务程  
序空间地址.ISPFAH & ISPFAL 寄存器控制的 flash 记忆体地址覆盖了 ISP 服务程序空间的地址.这个 flash 程  
/页擦除等 ISP 功能的执行将会无效.  
Mnemonic: ISPFD  
Address: E3H  
7
6
5
4
3
2
1
0
Reset  
ISPFD7  
ISPFD6  
ISPFD5 ISPFD4  
ISPFD3  
ISPFD2  
ISPFD1  
ISPFD0  
FFH  
ISPFD [7:0]:  
使用ISP功能之数值.  
ISPFD 寄存器提供 ISP 功能中所需之 8 位数据寄存器.  
Mnemonic: ISPFC  
Address: E4H  
7
6
5
4
3
-
2
1
0
Reset  
00H  
EMF1  
EMF2  
EMF3  
EMF4  
ISPF[2]  
ISPF[1]  
ISPF[0]  
EMF1:  
EMF2:  
EMF3:  
进入机制 (1) 标志位, 由复位信号清除. (仅读)  
进入机制 (2) 标志位, 由复位信号清除. (仅读)  
进入机制 (3) 标志位, 由复位信号清除. (仅读)  
进入机制 (4) 标志位, 由复位信号清除. (仅读)  
ISP功能选择位.  
EMF4:  
ISPF [2:0]:  
ISPF[2:0]  
ISP function  
Byte program  
Chip protect  
Page erase  
Chip erase  
000  
001  
010  
011  
100  
101  
110  
111  
Write option  
Read option  
Erase option  
Finish Flag  
闪存一页有256字节  
可设定功能选择位如晶振输入输出脚可配置为一般I/O (1.2节描述)部复位时间选择  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 44  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
(1.4.1节描述)钟源来源选择 (1.5节描述)位脚可配置为一般I/O(于第5章描述)、  
看门狗功能启动位(于第8章描述)、或 ISP 进入机制选择(于第13章描述)。  
只能读取功能选择位于芯片被加密后.  
选择的 ISP 功能在软件对 ISPFC 寄存器写入数据时将会执行一次.  
要实现字节编程/页擦除 ISP 功能,用户需要在开始时指定 flash 地址.在实现页擦除功能时,SM39R04G1 将除  
ISPFAH ISPFAL 寄存器中显示地址所在的整页.  
范例. 闪存地址: $YMN  
将对地址$Y00 to $YFF 执行页抹除  
要实现芯片擦除 ISP 功能,SM39R04G1 将擦除除 ISP 服务程序外的所有 flash 程序记忆体. 要实现芯片保护 ISP  
功能,SM39R04G1 内容将被读为#00H.  
范例:将对地址$0105H 执行字节写,写入#22H  
MOV TAKEY, #55h  
MOV TAKEY, #AAh  
MOV TAKEY, #5Ah  
MOV IFCON, #01H  
MOV ISPFAH, #01H  
MOV ISPFAL, #05H  
MOV ISPFD, #22H  
MOV ISPFC, #00H  
; 启动 ISPE 可写入属性  
; 启动 SM39R04G1 ISP 功能  
; 设定闪存高字节地址,01H  
; 设定闪存低字节地址, 05H  
; 设定将写入闪存之资料,资料= 22H  
; 开始将写入闪存之资料#22H 写入地址$0105H  
FOSVOS TEL: 021-58998693  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 45  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
工作环境  
Symbol  
TA  
Description  
Operating temperature  
Supply voltage  
Min.  
-40  
2.7  
Typ.  
25  
Max.  
85  
Unit.  
Remarks  
Ambient temperature under bias  
23MHz(Max)  
VCC  
5.5  
5.5  
V
V
VCC  
Supply voltage  
3.0  
25MHz(Max)  
DC 电气特性  
TA = -40to 85, VCC = 5.0V  
Symbol  
Parameter  
Valid  
Min  
Max  
0.8  
Units  
Conditions  
VIL1 Input Low-voltage  
VIL2 Input Low-voltage  
VIH1 Input High-voltage  
VIH2 Input High-voltage  
VOL Output Low-voltage  
Port 1,3  
-0.5  
0
V
V
V
V
V
Vcc=5V  
RES, XTAL1  
Port 1,3  
0.8  
2.0  
VCC + 0.5  
RES, XTAL1  
Port 1,3  
70%Vcc VCC + 0.5  
0.4  
IOL=5.0mA  
IOH= -16mA  
Vcc=5V  
Output High-voltage  
VOH1  
Port 1,3  
Port 1,3  
2.4  
V
using Strong Pull-up(1)  
Output High-voltage  
VOH2  
2.4  
V
IOH= -280uA  
Vin= 0.45V  
using Weak Pull-up(2)  
IIL  
ITL  
Logic 0 Input Current Port 1,3  
-75  
uA  
uA  
uA  
kΩ  
pF  
mA  
Logical Transition  
Current  
Port 1,3  
-650  
±10  
Vin= 2.0V  
ILI  
Input Leakage Current Port 1,3  
0.45V<Vin<Vcc  
Reset Pull-down  
RES  
RRST  
CIO  
50  
300  
10  
Resistor  
Pin Capacitance  
Freq= 1MHz, Ta= 25℃  
Active mode,  
12MHz, Vcc=5V, 25   
11  
Idle mode,  
ICC  
Power Supply Current VDD  
10  
3
mA  
uA  
12MHz, Vcc=5V, 25 ℃  
Power down mode  
Vcc=5V, 25 ℃  
Notes1. Port in Push-Pull Output Mode  
2. Port in Quasi-Bidirectional Mode  
FOSVOS TEL: 021-58998693  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 46  
Ver.H SM39R04G1 08/2013  
SM39R04G1  
内嵌 4KB  
具有 ISP 功能的 Flash  
256B RAM 8 位控制器  
TA = -40to 85, VCC = 3.0V  
Symbol  
Parameter  
Valid  
Min  
-0.5  
0
Max  
0.8  
Units  
Conditions  
VIL1 Input Low-voltage  
VIL2 Input Low-voltage  
VIH1 Input High-voltage  
VIH2 Input High-voltage  
VOL Output Low-voltage  
Port 1,3  
V
V
V
V
V
Vcc=3.0V  
RES, XTAL1  
Port 1,3  
0.8  
2.0  
VCC + 0.5  
RES, XTAL1  
Port 1,3  
70%Vcc VCC + 0.5  
0.4  
IOL=3.0mA  
Vcc=3.0V  
Output High-voltage  
VOH1  
Port 1,3  
Port 1,3  
2.4  
V
IOH= -3.2mA  
using Strong Pull-up(1)  
Output High-voltage  
VOH2  
2.4  
V
IOH= -55uA  
Vin= 0.45V  
Vin=1.5V  
using Weak Pull-up(2)  
IIL  
ITL  
Logic 0 Input Current Port 1,3  
-75  
uA  
uA  
uA  
kΩ  
pF  
mA  
Logical Transition  
Current  
Port 1,3  
-650  
±10  
ILI  
Input Leakage Current Port 1,3  
0.45V<Vin<Vcc  
Reset Pull-down  
RES  
RRST  
CIO  
50  
300  
10  
Resistor  
Pin Capacitance  
Freq= 1MHz, Ta= 25℃  
Active mode,  
12MHz, Vcc=3.0V, 25 ℃  
10  
Idle mode,  
ICC  
Power Supply Current VDD  
9
2
mA  
uA  
12MHz, Vcc=3.0V, 25 ℃  
Power down mode,  
Vcc=3.0V, 25 ℃  
Notes1. Port in Push-Pull Output Mode  
2. Port in Quasi-Bidirectional Mode  
Suggest circuit connect  
SM39R04G1  
Vcc  
Vcc  
>0.1uF  
VSS  
FOSVOS TEL: 021-58998693  
本说明书如有修改,恕不另行通知,请接洽您的销售代理商以获取最新版本信息。  
ISSFD-M054 47  
Ver.H SM39R04G1 08/2013  

相关型号:

SM39R04G1W14NP

SM39R04G1 内嵌4KB 具有 ISP 功能的Flash 和256B RAM的8 位控制器
SYNCMOS

SM39R04G1W14OP

SM39R04G1 内嵌4KB 具有 ISP 功能的Flash 和256B RAM的8 位控制器
SYNCMOS

SM39R08A3U20

SM39R08A3 8-Bit Micro-controller with 8KB+1KB ISP Flash & 512B RAM embedded
SYNCMOS

SM39R08A5U10MP

SM39R08A5 8-Bit Micro-controller with 8KB Flash & 256B RAM embedded
SYNCMOS

SM39R08A5W10MP

SM39R08A5 8-Bit Micro-controller with 8KB Flash & 256B RAM embedded
SYNCMOS

SM39R16A3U20

SM39R16A3 内嵌 16KB 具有 ISP功能的 Flash 和 512B RAM的 8 位控制器
SYNCMOS

SM39R16A6U28

39R16A6 内嵌 16KB 具有 ISP 功能的 Flash 和 1K+256BRAM的 8 位控制器
SYNCMOS

SM39R16A6U32

39R16A6 内嵌 16KB 具有 ISP 功能的 Flash 和 1K+256BRAM的 8 位控制器
SYNCMOS

SM39R2051W20

SM39R4051/SM39R2051 8-Bit Micro-controller 4KB/2KB with ISP Flash & 256B RAM embedded
SYNCMOS

SM39R4051W20

SM39R4051/SM39R2051 8-Bit Micro-controller 4KB/2KB with ISP Flash & 256B RAM embedded
SYNCMOS

SM39S

4 Lead Surface Mount Plastic Crystal
ETC

SM39S-10

4 Lead Surface Mount Plastic Crystal
PLETRONICS