92 系列产品命名规则 名称 SC 92 F X P 48 R 序号 序号 Sinone Chip 缩写 产品系列名称 产品类型 (F:Flash MCU) 系列号 :7:GP 系列,8:TK 系列 含义 ROM

Similar documents
SinOne SC92F7447B/7446B/7445B 超高速 1T 8051 内核 Flash MCU,1 Kbytes SRAM,16 Kbytes Flash,128 bytes 独立 EEPROM,12 位 ADC,1 个模拟比较器,LCD/LED Driver,12 位 PWM,3 个

92 系列产品命名规则 名称 SC 92 F X P 48 R 序号 序号 Sinone Chip 缩写 产品系列名称 产品类型 (F:Flash MCU) 系列号 :7:GP 系列,8:TK 系列 含义 ROM

92 系列产品命名规则 名称 SC 92 F X P 32 R 序号 序号 Sinone Chip 缩写 产品系列名称 产品类型 (F:Flash MCU) 系列号 :7:GP 系列,8:TK 系列 含义 ROM

目录 1 总体描述 主要功能... 1 目录 管脚定义 管脚配置 管脚定义 内部方框图 FLASH ROM 和 SRAM 结构 flash rom Customer

SC92F742X

W77E58中文手册

DPJJX1.DOC

SC92F7490

1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F B. 1(VCC/GND) SH79F6431 C. VDDIO SH79F6431 P4 P5 P0.6 P0.7 VDDIO VDDIO=5V D. 2 V 1.0

2 Keil µ vision 2.1 1) Keil µ vision2 V2.34 µ vision3 2) Sino_Keil.exe Keil c:\keil\ 3) JET51 USB PC C:\Keil\ USB PC 4) S-L

7688使用手冊V10.doc

SC91F711v1.2

SC91F844

SC91F844

SH79F161B I/O 1. SH79F161B SH79F161B IO 30 I/O I/O 4 I/O SH79F161B 30 I/O Px I/O PxCRy I/O PxPCRy x = 0-3 y = IO PxCRy IO x=0-3 y=0-7

Microsoft Word - 專題封面.doc

目 录

1

STC15W4K60S4系列增强型PWM波形发生器应用

2 14 PORTC.1 PORTB.3 PORTA.2/T0 GND PORTB.2 PORTA.0 PORTC.3 PORB.0/OSCO PORTB.1/OSCI PORTC.0 PORTC.2 SH69P21 /SOP PORTA

128K Flash EPROM 的程序?\(Bank=64K\) 切?

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

12232A LED LED LED EL EL CCFL EL CCF

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>

四位微控制器ML64168_ _.doc

5. P0.0 P0.7 P0 4 2 P0.3~P0.6 ADC P1.0 P P1.2(SCL) P1.3(SDA) P1.5 RST P1.5 2 XTAL1(P2.1) 1 XTAL0(P2.0) 2 XTAL1 I/O VDD VSS 6. H5815 4T 16K Flas

General Description: Preliminary TTP916 Consumer IC VCD/DVD LCD Green mode Stand-by mode( 1W ) Features: 2.2V-5.5V LCD RAM read condition 2.6V-5.5V RC

USB解决方案.ppt

µPSD3000 系列

SMART 7P 0 HR7P OTPMCU A/D I/O OTP ROM RAM HR7P HR7P HR7PPMB MSOP0 7+input HR7PPSC HR7PPSD SOP SOP6 +input input HR7PERB SSOP0 7

2 PIC PIC 1 / CPU PIC MCU PIC RC

Microsoft Word - 第1章 MCS-51单片机基础.docx

单片机原理及应用实验指导书.doc

Microsoft Word - IRFWX_A051_C_SyncMOS_with_STC_APN_SC_.doc

CH559指令周期.doc

51 C 51 isp 10 C PCB C C C C KEIL

SST SPAC SST SoftICE SST89C5x/SST89x554RC /564RD /SST89x516/5xRD / SoftICE SoftICE MCU SoftICE SS

RESET OSCO OSCI OSC CPU WDTEN RC RESET PRESCALER PORTA (4-BITS) WATCHDOG TIMER Power on PORTB (4-BITS) PORTA [0:3] PORTB [0:3] LPD PORTC (4-BITS) LPDO

TSINGTEK DISPLAY CO.,LTD LCD CONTROLLER & DRIVER ST7920 OR EQUIVALENT (f) 639 2A f B1

MSP430X1XX 系列微控制器具有以下特征 结构框图 超低功耗结构体系 A 额定工作电流在 1MHz V 工作电压 C11X P11X 和 E11X 为 V 从备用模式唤醒为 6 S 丰富的中断能力减少了查询的需要灵活强大的处理能力源操作数有七种寻址模

从MCS51向AVR的快速转换.PDF

untitled

Ps22Pdf

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

untitled

專題最終版.doc

SPMC75F2413A_EVM_使用说明_V1.2.doc

HD61202 HD HD61203 HD61202, HY HY HD61202 HD61202 HD61203 HD =4096 RAMRAM LCD 2HD HD HD /32--

版权声明 龙芯 免责声明 据 龙芯 2 Building No.2, Loongson Industrial Park, Zhongguancun Environmental Protection Park (Tel) (Fax)

ARM Cortex-M3 (STM32F) STMicroelectronics ( ST) STM32F103 Core: ARM 32-bit Cortex -M3 CPU 72 MHz, 90 DMIPS with 1.25 DMIPS/MHz Single-cycle multiplica

1 TPIS TPIS 2 2

XNS104 产品说明书 AD 型 2.4G 高速无线收发单片机概述 2.4GHz 高速无线收发单片机 XNS104 是一个带 12 位 ADC, 以 OTP 为程序存储基础, 带 2.4G 高速无线收发芯片的单片机 无线收发单元工作在 GHz 世界通用 ISM 频段, 它集

Hz 10MHz 0.5V 5V 0.01% 10s 2 0.5V 5V 1Hz 1kHz 10% 90% 1% 3 1Hz 1MHz 1% EPM7128SLC84-15 LM361 LM361 Zlg

(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor

2005.book

ICD ICD ICD ICD ICD

FM1935X智能非接触读写器芯片

untitled

DATASHEET SEARCH SITE ==

at89S52.doc

《手机维修原理及维修实例详解》目录

Cerris IROS

Microsoft Word - ~ doc

() () () () () () () () DDRAM () II

79F161 V0.2

AT89C2051中文资料.doc

Applications

第5章:汇编语言程序设计

DESCRIPTION

DS_MM32P021_Ver1.9.0

System Design and Setup of a Robot to Pass over Steps Abstract In the research, one special type of robots that can pass over steps is designed and se

untitled

untitled

Microsoft PowerPoint - 第一章(07版).PPT


CA24064B LED LED LED EL EL CCFL EL CCF /

单片机应用编程技巧(专家:邓宏杰)

例 如, 一 个 含 有 2000 个 记 录 的 文 件, 每 个 磁 盘 块 可 容 纳 250 个 记 录, 则 该 文 件 包 含 8 个 磁 盘 块 然 后 对 该 文 件 作 二 路 归 并 的 外 排 序, 每 次 往 内 存 读 入 两 个 磁 盘 块, 排 序 后 再 写 回 磁

2 12

微處理機期末專題

» n ¹ú KS0108 x ÍÍÙ q n KS0108 KS KS0107 KS0108 KS *32 128*64 192*64 KS0108 KS0108 KS0107 KS =4096 RAM RAM LCD 2 KS

第一章

untitled

部分编号派生器件编号 (P89CXX) 操作频率, 最大 (V) 温度范围 (B) 封装 (AA,BB,PN) P89C51 FLASH U=33MHz B=0 70 AA=PLCC P89C52 FLASH F= BB=PQFP P89C54 FLASH PN=PDIP P89C58

Microsoft Word - BL5372_UMAN_V1.1.doc

中文手册

ISO h.PDF

79F161 V0.2

1.1 ML_ONOFF = 1 Q 3 Q 8 C 0.3V M 2 L 1 ML_ONOFF = 0 Q 3 Q 8 C 1. + R31 VCC R21 10K ML_ONOFF R15 0:off 1:on 1K Green Light VCC=5V L1 Q VDD=12V C

SH69P848A 2K 一次性编程 10 位 ADC 型 4 位单片机 特性 基于 SH6610D 的 10 位 ADC 型 4 位单片机 OTPROM:2K X 16 位 RAM:253 X 4 位 - 61 个系统控制寄存器 个数据存储器 工作电压 : - f OSC = 30kH

B1B1z_ch_print.pdf

,Microchip Technology PIC LCD, PIC16F913/914/ 916/917/946 PIC18F6390/6490/8390/8490 PIC16F65J90/85J90 Microchip LCD LCD, Microchip 的优势 LCD PIC, LCD LC

Microsoft Word - sim6xF0xC-0225.doc

untitled

另外,AT89S52 可降至 0Hz 静态逻辑操作, 支持 2 种软件可选择节电模式 空闲模式下,CPU 停止工作, 允许 RAM 定时器/ 计数器 串口 中断继续工作 掉电保护方式下,RAM 内容被保存, 振荡器被冻结, 单片机一切工作停止, 直到下一个中断或硬件复位为止 8 位微控制器 8K 字

Microsoft Word - FG12232A.doc

PCM-3386用户手册.doc

Transcription:

超高速 1T 8051 内核 Flash MCU,2 Kbytes SRAM,32 Kbytes Flash,128 bytes 独立 EEPROM,31 路高灵敏度触控电路,12 位 ADC,1 个模拟比较器,LCD/LED Driver,12 位 PWM,3 个定时器, 乘除法器,UART,SSI,Check Sum 校验模块 1 总体描述 ( 以下简称 SC92F854X) 系列是一颗增强型的超高速 1T 8051 内核工业级 Flash 微控制器, 指令系统完全兼容传统 8051 产品系列 SC92F854X 集成有 32 Kbytes Flash ROM 2 Kbytes SRAM 128 bytes EEPROM 内置有 31 路高灵敏度隔空电容触控电路 最多 46 个 GP I/O 16 个 IO 可外部中断 3 个 16 位定时器 17 路 12 位高精度 ADC 1 个模拟比较器 8 路 12 位 PWM IO 驱动分级控制 (LED segment 口 ) 1 个 16 16 位硬件乘除法器 内部 ±1% 高精度高频 16/8/4/1.33MHz 振荡器和 ±4% 精度低频 128K 振荡器 可外接晶体振荡器 UART 等通讯接口等资源 为提高可靠性及简化客户电路,SC92F854X 内部也集成有 4 级可选电压 LVR 2.4V 基准 ADC 参考电压 低耗电 WDT 等高可靠电路 SC92F854X 具有非常优异的抗干扰性能, 非常适合应用于各种物联网控制 大小智能家电和智能家居 充电器 电源 航模 对讲机 无线通讯 游戏机等工业控制和消费应用领域 2 主要功能 工作电压 :2.4V~5.5V 工作温度 :-40 ~ 85 封装 : SC92F8547 (LQFP48) SC92F8546 (LQFP44) SC92F8543 (SOP28/TSSOP28) SC92F8541 (SOP16) 内核 : 超高速的单字节指令 1T 8051 Flash ROM:32 Kbytes Flash ROM(MOVC 禁止寻址 0000H~00FFH 的 256 bytes) IAP: 可 code option 成 0K 0.5K 1K 或 32K EEPROM:128 bytes, 无需擦除,10 万次写入,10 年以上保存寿命 SRAM: 内部 256 bytes+ 外部 1792 bytes+pwm&lcd RAM 80 bytes 系统时钟 (fsys): 内建高频 16MHz 振荡器 (fhrc) IC 工作的系统时钟, 可通过编程器选择设定为 : 16MHz @2.9~5.5V 8/4/1.33MHz@2.4~5.5V 频率误差 : 跨越 (3.0V~5.5V) 及 (-20 ~ 85 ) 应用环 境, 不超过 ±1% 内置低频晶体振荡器电路 : 可外接 32K 振荡器, 作为 Base Timer 时钟源, 可唤醒 STOP 内建低频 128kHz LRC 振荡器 : 可作为 Base Timer 及 WDT 的时钟源, 并唤醒 STOP 频率误差 : 跨越 (4.0V ~ 5.5V) 及 (-20 ~ 85 ) 应用环 境, 经过寄存器修正后频率误差不超过 ±4% 低电压复位 (LVR): 复位电压有 4 级可选 : 4.3V 3.7V 2.9V 2.3V 缺省值为用户烧写 Code Option 所选值 Flash 烧写和仿真 : 2 线 JTAG 烧写和仿真接口 中断 (INT): Timer0,Timer1,Timer2,INT0~2,ADC,PWM, UART,SSI,Base Timer,TK,CMP 共 13 个中断源 外部中断有 3 个中断向量, 共 16 个中断口, 全部可设上升沿 下降沿 双沿中断 两级中断优先级可设 数字外围 : 最大 46 个双向可独立控制的 I/O 口, 可独立设定上拉电阻 P0~P3L(P3.0/1/2/3) 口源驱动能力分四级控制 全部 IO 具有大灌电流驱动能力 (50mA) 11 位 WDT, 可选时钟分频比 3 个标准 80C51 定时器 Timer0 Timer1 和 Timer2 最多 8 路共用周期 单独可调占空比的 12 位 PWM 1 个独立 UART 通信口 1 个 UART/SPI/IIC 三选一 SSI 通信口 集成 16 16 位硬件乘除法器 LCD/LED 驱动器 : LCD/LED 二选一, 共用寄存器和 IO 口 8 X 24 6 X 26 5 X 27 或 4X 28 段 LED 驱动 LED segment 口源驱动能力分四级控制 8 X 24 6 X 26 5 X 27 或 4X 28 段 LCD 驱动 SC92F8541 无 LCD/LED Driver 模拟外围 : 31 路高灵敏度 TK 电路 可实现 31 路高灵敏度隔空触控按键及衍生功能 高灵活度开发软件库支持, 低开发难度 自动化调试软件支持, 智能化开发 17 路 12 位 ±2LSB ADC 内建基准的 2.4V 参考电压 ADC 的参考电压有 2 种选择, 分别是 VDD 以及内部 2.4V 内部一路 ADC 可直接测量 VDD 电压 可设 ADC 转换完成中断 1 个模拟比较器 四路输入一路参考电压输入 比较电压 16 级可选 (VDD 分压 ) 省电模式 : IDLE Mode, 可由任何中断唤醒 STOP Mode, 可由 INT0~2 和 Base Timer 唤醒 Page 1 of 104 V0.4

92 系列产品命名规则 名称 SC 92 F 8 5 4 7 X P 48 R 序号 1 2 3 4 5 6 7 8 9 10 11 序号 1 2 3 4 5 6 Sinone Chip 缩写 产品系列名称 产品类型 (F:Flash MCU) 系列号 :7:GP 系列,8:TK 系列 含义 ROM Size:1 为 2K,2 为 4K,3 为 8K,4 为 16K,5 为 32K 子系列编号 :0~9,A~Z 7 引脚数 :0:8pin, 1:16pin,2:20pin,3:28pin,5:32pin,6:44pin,7:48pin,8: 64pin,9:100pin 8 版本号 :( 缺省 B C D) 9 10 封装形式 :(D:DIP;M:SOP;X:TSSOP;F:QFP;P:LQFP;Q:QFN;K:SKDIP) 引脚数 11 包装方式 :(U: 管装 ;R: 盘装 ;T: 卷带 ) Page 2 of 104 V0.4

目录 1 总体描述... 1 2 主要功能... 1 92 系列产品命名规则... 2 目录... 3 3 管脚定义... 7 3.1 LQFP48/LQFP44 管脚配置... 7 3.1.1 LQFP48/LQFP44 管脚定义... 9 3.2 SOP28/TSSOP28 管脚配置... 13 3.2.1 SOP28/TSSOP28 管脚定义... 13 3.3 SOP16 管脚配置 ( 无 LED driver)... 16 3.3.1 SOP16 管脚定义... 16 4 内部框图... 18 5 FLASH ROM 和 SRAM 结构... 19 5.1 flash rom... 19 5.2 Customer Option 区域 ( 用户烧写设置 )... 20 5.2.1 Option 相关 SFR 操作说明... 21 5.3 sram... 22 5.3.1 内部 256 bytes SRAM... 22 5.3.2 外部 1792 bytes SRAM... 23 5.3.3 PWM&LCD 80 bytes SRAM... 23 6 特殊功能寄存器 (SFR)... 24 6.1 SFR 映像... 24 6.2 SFR 说明... 25 6.2.1 8051 CPU 内核常用特殊功能寄存器介绍... 26 7 电源 复位和时钟... 27 7.1 电源电路... 27 7.2 上电复位过程... 27 7.2.1 复位阶段... 27 7.2.2 调入信息阶段... 27 Page 3 of 104 V0.4

7.2.3 正常操作阶段... 28 7.3 复位方式... 28 7.3.1 外部 RST 复位... 28 7.3.2 低电压复位 LVR... 28 7.3.3 上电复位 POR... 29 7.3.4 看门狗复位 WDT... 29 7.3.5 复位初始状态... 30 7.4 高频系统时钟电路... 31 7.5 低频振荡器及低频时钟定时器... 32 7.6 STOP 模式和 IDLE 模式... 33 8 中央处理单元 CPU 及指令系统... 35 8.1 CPU... 35 8.2 寻址方式... 35 8.2.1 立即寻址... 35 8.2.2 直接寻址... 35 8.2.3 间接寻址... 35 8.2.4 寄存器寻址... 35 8.2.5 相对寻址... 35 8.2.6 变址寻址... 35 8.2.7 位寻址... 35 9 INTERRUPT 中断... 36 9.1 中断源 向量... 36 9.2 中断结构图... 38 9.3 中断优先级... 39 9.4 中断处理流程... 39 9.5 中断相关 SFR 寄存器... 39 10 定时器 TIMER0 TIMER1... 43 10.1 T0 和 T1 相关特殊功能寄存器... 43 10.2 T0 工作模式... 45 10.3 T1 工作模式... 47 11 定时器 TIMER2... 49 11.1 T2 相关特殊功能寄存器... 49 11.2 T2 工作模式... 51 Page 4 of 104 V0.4

12 乘除法器... 55 13 PWM... 56 13.1 PWM 结构框图... 56 13.2 PWM 相关 SFR 寄存器... 57 13.3 PWM 波形及用法... 58 14 GP I/O... 60 14.1 GPIO 结构图... 60 14.2 I/O 端口相关寄存器... 61 15 LCD/LED 显示驱动... 65 15.1 LCD/LED 显示驱动相关寄存器... 65 15.2 LCD/LED 显示 RAM 配置... 67 15.3 LCD 波形... 68 15.3.1 1/3Bias LCD 波形... 68 15.3.2 1/4Bias LCD 波形... 69 15.4 LED 波形... 70 15.5 LCD/LED 例程... 71 15.5.1 LCD 配置例程... 71 15.5.2 LED 配置例程... 71 16 UART0... 72 16.1 串口通信的波特率... 73 17 SPI/TWI/UART 三选一串行接口 SSI... 74 17.1 SPI... 74 17.1.1 SPI 操作相关寄存器... 74 17.1.2 信号描述... 75 17.1.3 工作模式... 76 17.1.4 传送形式... 77 17.1.5 出错检测... 77 17.2 TWI... 77 17.2.1 信号描述... 79 17.2.2 工作模式... 79 17.2.3 操作步骤... 80 17.3 UART1... 80 Page 5 of 104 V0.4

18 模数转换 ADC... 82 18.1 ADC 相关寄存器... 82 18.2 ADC 转换步骤... 84 19 模拟比较器... 85 19.1 模拟比较器结构框图... 85 20 高灵敏度隔空电容触控电路... 87 21 EEPROM 及 IAP 操作... 87 21.1 EEPROM / IAP 操作相关寄存器... 87 21.2 EEPROM / IAP 操作流程... 89 21.2.1 128 bytes 独立 EEPROM 操作例程... 89 21.2.2 32 Kbytes CODE 区域 IAP 操作例程... 90 22 CHECK SUM 模块... 91 22.1 check sum 校验操作相关寄存器... 91 23 电气特性... 92 23.1 极限参数... 92 23.2 推荐工作条件... 92 23.3 直流电气特性... 92 23.4 交流电气特性... 93 23.5 ADC 电气特性... 94 23.6 模拟比较器电气特性... 94 24 应用电路... 95 25 订购信息... 96 26 封装信息... 97 27 规格更改记录... 104 Page 6 of 104 V0.4

3 管脚定义 3.1 LQFP48/LQFP44 管脚配置 特别说明 :SC92F854X 的 TK9/TK11 与 TK 调试通信口复用, 若需使用 TK 调试功能, 请尽量避免使用 TK9/TK11! P3.4/AIN8/C4/TK3 P3.5/AIN9/C5/TK2 36 35 34 33 32 31 30 29 28 27 26 25 P3.6/AIN10/C6/TK1 TK15/S11/AIN3/INT17/P1.7 P3.7/AIN11/C7/TK0 TK16/S12/AIN4/RX0/INT20/P2.0 22 P4.0/INT10/PWM40/CMP0/AIN12 TK17/S13/AIN5/TX0/INT21/P2.1 TK18/S14/AIN6/INT22/P2.2 TK19/S15/AIN7/INT23/P2.3 TK20/S16/P2.4 TK21/S17/P2.5 TK22/S18/P2.6 TK23/S19/P2.7 TK24/S20/P0.0 TK25/S21/P0.1 40 41 42 43 44 45 46 47 48 1 2 3 4 5 6 7 8 9 10 11 21 20 19 18 17 16 15 14 13 P4.1/INT11/PWM41/CMP1/AIN13 P4.2/INT12/PWM42/CMP2/AIN14 P4.3/INT13/PWM43/CMP3/AIN15 P4.4/CMPR P4.5 VDD P4.6 P4.7 P5.5 TK26/S22/T0/P0.2 TK27/S23/T1/P0.3 TK28/S24/T2EX/INT04/P0.4 TK29/S25/T2/INT05/P0.5 TK30/S26/INT06/P0.6 CMOD/S27/INT07/P0.7 VSS OSCI/PWM50/P5.0 OSCO/PWM51/P5.1 RST/PWM52/P5.2 PWM53/P5.3 P1.5/INT15/AIN1/S9/TK13 P1.4/INT14/AIN0/S8/TK12 P1.3/MOSI/SDA/TX1/S7/TK11/tDIO P1.2/SCK/S6/TK10 P1.1/MISO/RX1/S5/TK9/tCK P1.0/S4/TK8 P3.0/S3/C0/TK7 P3.1/S2/C1/TK6 P3.2/S1/C2/TK5 P3.3/S0/C3/TK4 TK14/S10/AIN2/INT16/P1.6 37 24 38 23 39 SC92F8547 12 P5.4 SC92F8547 管脚配置图 Page 7 of 104 V0.4

TK15/S11/AIN3/INT17/P1.7 TK16/S12/AIN4/RX0/INT20/P2.0 TK17/S13/AIN5/TX0/INT21/P2.1 TK18/S14/AIN6/INT22/P2.2 TK19/S15/AIN7/INT23/P2.3 TK20/S16/P2.4 TK21/S17/P2.5 TK22/S18/P2.6 TK23/S19/P2.7 TK24/S20/P0.0 TK25/S21/P0.1 33 32 31 30 29 28 27 26 25 24 34 35 36 37 38 39 40 41 42 43 44 P1.6/INT16/AIN2/S10/TK14 P1.5/INT15/AIN1/S9/TK13 P1.4/INT14/AIN0/S8/TK12 P1.3/S7/TK11/MOSI/SDA/TX1/tDIO P1.2/S6/SCK/TK10 P1.1/S5/TK9/MISO/RX1/tCK P1.0/S4/TK8 P3.0/S3/C0/TK7 P3.1/S2/C1/TK6 P3.2/S1/C2/TK5 1 2 3 4 5 6 7 8 9 10 11 TK26/S22/T0/P0.2 TK27/S23/T1/P0.3 TK28/S24/T2EX/INT04/P0.4 SC92F8546 TK29/S25/T2/INT05/P0.5 TK30/S26/INT06/P0.6 CMOD/S27/INT07/P0.7 VSS OSCI/PWM50/P5.0 OSCO/PWM51/P5.1 RST/PWM52/P5.2 PWM53/P5.3 P3.3/S0/C3/TK4 23 22 21 20 19 18 17 16 15 14 13 12 P3.4/AIN8/C4/TK3 P3.5/AIN9/C5/TK2 P3.6/AIN10/C6/TK1 P3.7/AIN11/C7/TK0 P4.0/INT10/PWM40/CMP0/AIN12 P4.1/INT11/PWM41/CMP1/AIN13 P4.2/INT12/PWM42/CMP2/AIN14 P4.3/INT13/PWM43/CMP3/AIN15 P4.4/CMPR P4.5 VDD SC92F8546 管脚配置图 Page 8 of 104 V0.4

3.1.1 LQFP48/LQFP44 管脚定义 48pin 脚位数 44pin 管脚名称类型功能说明 1 1 P0.2/T0/S22/TK26 I/O P0.2: GPIO P0.2 T0: 计数器 0 外部输入 S22: LCD/LED SEG22 TK26: TK 的通道 26 2 2 P0.3/T1/S23/TK27 I/O P0.3: GPIO P0.3 T1: 计数器 1 外部输入 S23: LCD/LED SEG23 TK27: TK 的通道 27 3 3 P0.4/INT04/T2EX/S24/TK28 I/O P0.4: GPIO P0.4 INT04: 外部中断 0 的输入 4 T2EX: 定时器 2 外部捕获信号输入 S24: LCD/LED SEG24 TK28: TK 的通道 28 4 4 P0.5/INT05/T2/S25/TK29 I/O P0.5: GPIO P0.5 INT05: 外部中断 0 的输入 5 T2: 计数器 2 外部输入 S25: LCD/LED SEG25 TK29: TK 的通道 29 5 5 P0.6/INT06/S26/TK30 I/O P0.6: GPIO P0.6 INT06: 外部中断 0 的输入 6 S26: LCD/LED SEG26 TK30: TK 的通道 30 6 6 P0.7/INT07/S27/CMOD I/O P0.7: GPIO P0.7 INT07: 外部中断 0 的输入 7 S27: LCD/LED SEG27 CMOD: Touch Key 触控外接电容 7 7 VSS Power 接地 8 8 P5.0/PWM50/OSCI I/O P5.0: GPIO P5.0 PWM50: PWM50 输出口 OSCI: 32k 振荡器的输入脚 9 9 P5.1/PWM51/OSCO I/O P5.1: GPIO P5.1 PWM51: PWM51 输出口 OSCO: 32k 振荡器的输出脚 10 10 P5.2/PWM52/RST I/O P5.2: GPIO P5.2 PWM52: PWM52 输出口 RST: 复位管脚 11 11 P5.3/PWM53 I/O PWM53: PWM53 输出口 P5.3: GPIO P5.3 12 - P5.4 I/O P5.4: GPIO P5.4 13 - P5.5 I/O P5.5: GPIO P5.5 14 - P4.7 I/O P4.7: GPIO P4.7 15 - P4.6 I/O P4.6: GPIO P4.6 16 12 VDD Power 电源 17 13 P4.5 I/O P4.5: GPIO P4.5 Page 9 of 104 V0.4

18 14 P4.4/CMPR I/O P4.4: GPIO P4.4 CMPR: 比较器参考电压输入 19 15 P4.3/INT13/PWM43/CMP3/AIN15 I/O P4.3: GPIO P4.3 INT13: 外部中断 1 的输入 3 PWM43: PWM43 输出口 CMP3: 模拟比较器输入通道 3 AIN15: ADC 输入通道 15 20 16 P4.2/INT12/PWM42/CMP2/AIN14 I/O P4.2: GPIO P4.2 INT12: 外部中断 1 的输入 2 PWM42: PWM42 输出口 CMP2: 模拟比较器输入通道 2 AIN14: ADC 输入通道 14 21 17 P4.1/INT11/PWM41/CMP1/AIN13 I/O P4.1: GPIO P4.1 INT11: 外部中断 1 的输入 1 PWM41: PWM41 输出口 CMP1: 模拟比较器输入通道 1 AIN13: ADC 输入通道 13 22 18 P4.0/INT10/PWM40/CMP0/AIN12 I/O P4.0: GPIO P4.0 INT10: 外部中断 1 的输入 0 PWM40: PWM40 输出口 CMP0: 模拟比较器输入通道 0 AIN12: ADC 输入通道 12 23 19 P3.7/AIN11/C7/TK0 I/O P3.7: GPIO P3.7 AIN11: ADC 输入通道 11 C7: LCD/LED common 输出 7 TK0: TK 的通道 0 24 20 P3.6/AIN10/C6/TK1 I/O P3.6: GPIO P3.6 AIN10: ADC 输入通道 10 C6: LCD/LED common 输出 6 TK1: TK 的通道 1 25 21 P3.5/AIN9/C5/TK2 I/O P3.5: GPIO P3.5 AIN9: ADC 输入通道 9 C5: LCD/LED common 输出 5 TK2: TK 的通道 2 26 22 P3.4/AIN8/C4/TK3 I/O P3.4: GPIO P3.4 AIN8: ADC 输入通道 8 C4: LCD/LED common 输出 4 TK3: TK 的通道 3 27 23 P3.3/S0/C3/TK4 I/O P3.3: GPIO P3.3 S0: LCD/LED SEG0 C3: LCD/LED common 输出 3 TK4: TK 的通道 4 28 24 P3.2/S1/C2/TK5 I/O P3.2: GPIO P3.2 S1: LCD/LED SEG1 C2: LCD/LED common 输出 2 TK5: TK 的通道 5 29 25 P3.1/S2/C1/TK6 I/O P3.1: GPIO P3.1 S2: LCD/LED SEG2 C1: LCD/LED common 输出 1 TK6: TK 的通道 6 Page 10 of 104 V0.4

30 26 P3.0/S3/C0/TK7 I/O P3.0: GPIO P3.0 S3: LCD/LED SEG3 C0: LCD/LED common 输出 0 TK7: TK 的通道 7 31 27 P1.0/S4/TK8 I/O P1.0: GPIO P1.0 S4: LCD/LED SEG4 TK8: TK 的通道 8 32 28 P1.1/MISO/RX1/S5/TK9/tCK I/O P1.1: GPIO P1.1 MISO: SPI 总线主输入 / 从输出口 RX1: UART1 接收口 S5: LCD/LED SEG5 TK9: TK 的通道 9 tck: 烧录和仿真口时钟线 33 29 P1.2/SCK/S6/TK10 I/O P1.2: GPIO P1.2 SCK: SPI 及 TWI 的 SCK S6: LCD/LED SEG6 TK10: TK 的通道 10 34 30 P1.3/MOSI/SDA/TX1/S7/TK11/tDIO I/O P1.3: GPIO P1.3 MOSI: SPI 总线主输出 / 从输入口 SDA: TWI 的 SDA TX1: UART1 发送口 S7: LCD/LED SEG7 TK11: TK 的通道 11 tdio: 烧录和仿真口数据线 35 31 P1.4/INT14/AIN0/S8/TK12 I/O P1.4: GPIO P1.4 INT14: 外部中断 1 的输入 4 AIN0: ADC 输入通道 0 S8: LCD/LED SEG8 TK12: TK 的通道 12 36 32 P1.5/INT15/AIN1/S9/TK13 I/O P1.5: GPIO P1.5 INT15: 外部中断 1 的输入 5 AIN1: ADC 输入通道 1 S9: LCD/LED SEG9 TK13: TK 的通道 13 37 33 P1.6/INT16/AIN2/S10/TK14 I/O P1.6: GPIO P1.6 INT16: 外部中断 1 的输入 6 AIN2: ADC 输入通道 2 S10: LCD/LED SEG10 TK14: TK 的通道 14 38 34 P1.7/INT17/AIN3/S11/TK15 I/O P1.7: GPIO P1.7 INT17: 外部中断 1 的输入 7 AIN3: ADC 输入通道 3 S11: LCD/LED SEG11 TK15: TK 的通道 15 39 35 P2.0/INT20/RX0/AIN4/S12/TK16 I/O P2.0: GPIO P2.0 INT20: 外部中断 2 的输入 0 RX0: UART0 接收口 AIN4: ADC 输入通道 4 S12: LCD/LED SEG12 TK16: TK 的通道 16 Page 11 of 104 V0.4

40 36 P2.1/INT21/TX0/AIN5/S13/TK17 I/O P2.1: GPIO P2.1 INT21: 外部中断 2 的输入 1 TX0: UART0 发送口 AIN5: ADC 输入通道 5 S13: LCD/LED SEG13 TK17: TK 的通道 17 41 37 P2.2/INT22/AIN6/S14/TK18 I/O P2.2: GPIO P2.2 INT22: 外部中断 2 的输入 2 AIN6: ADC 输入通道 6 S14: LCD/LED SEG14 TK18: TK 的通道 18 42 38 P2.3/INT23/AIN7/S15/TK19 I/O P2.3: GPIO P2.3 INT23: 外部中断 2 的输入 3 AIN7: ADC 输入通道 7 S15: LCD/LED SEG15 TK19: TK 的通道 19 43 39 P2.4/S16/TK20 I/O P2.4: GPIO P2.4 S16: LCD/LED SEG16 TK20: TK 的通道 20 44 40 P2.5/S17/TK21 I/O P2.5: GPIO P2.5 S17: LCD/LED SEG17 TK21: TK 的通道 21 45 41 P2.6/S18/TK22 I/O P2.6: GPIO P2.6 S18: LCD/LED SEG18 TK22: TK 的通道 22 46 42 P2.7/S19/TK23 I/O P2.7: GPIO P2.7 S19: LCD/LED SEG19 TK23: TK 的通道 23 47 43 P0.0/S20/TK24 I/O P0.0: GPIO P0.0 S20: LCD/LED SEG20 TK24: TK 的通道 24 48 44 P0.1/S21/TK25 I/O P0.1: GPIO P0.1 S21: LCD/LED SEG21 TK25: TK 的通道 25 Page 12 of 104 V0.4

3.2 SOP28/TSSOP28 管脚配置 特别说明 :SC92F854X 的 TK9/TK11 与 TK 调试通信口复用, 若需使用 TK 调试功能, 请尽量避免使用 TK9/TK11! TK30/S26/INT06/P0.6 CMOD/S27/INT07/P0.7 VSS VDD AIN15/CMP3/PWM43/INT13/P4.3 AIN14/CMP2/PWM42/INT12/P4.2 AIN13/CMP1/PWM41/INT11/P4.1 TK0/C7/AIN11/P3.7 TK1/C6/AIN10/P3.6 TK2/C5/AIN9/P3.5 TK3/C4/AIN8/P3.4 TK4/C3/S0/P3.3 TK5/C2/S1/P3.2 TK6/C1/S2/P3.1 1 2 3 4 5 6 7 8 9 10 SC92F8543 28 27 26 25 24 23 22 21 20 19 11 18 12 17 13 16 14 15 SC92F8543 管脚配置图 P0.5/INT05/T2/S25/TK29 P0.4/INT04/T2EX/S24/TK28 P0.3/T1/RX0/S23/TK27 P0.2/T0/TX0/S22/TK26 P2.5/S17/TK21 P2.4/S16/TK20 P2.3/INT23/AIN7/S15/TK19 P2.2/INT22/AIN6/S14/TK18 P2.1/INT21/AIN5/S13/TK17 P2.0/INT20/AIN4/S12/TK16 P1.3/MOSI/SDA/TX1/S7/TK11/tDIO P1.2/SCK/S6/TK10 P1.1/MISO/RX1/S5/TK9/tCK P3.0/S3/C0/TK7 3.2.1 SOP28/TSSOP28 管脚定义 28pin 管脚名称类型功能说明 1 P0.6/INT06/S26 I/O P0.6: GPIO P0.6 INT06: 外部中断 0 的输入 6 S26: LCD/LED SEG26 2 P0.7/INT07/S27/CMOD I/O P0.7: GPIO P0.7 INT07: 外部中断 0 的输入 7 S27: LCD/LED SEG27 CMOD: Touch Key 触控外接电容 3 VSS Power 接地 4 VDD Power 电源 5 P4.3/INT13/PWM43/CMP3/AIN15 I/O P4.3: GPIO P4.3 INT13: 外部中断 1 的输入 3 PWM43: PWM43 输出口 CMP3: 模拟比较器输入通道 3 AIN15: ADC 输入通道 15 6 P4.2/INT12/PWM42/CMP2/AIN14 I/O P4.2: GPIO P4.2 INT12: 外部中断 1 的输入 2 PWM42: PWM42 输出口 Page 13 of 104 V0.4

CMP2: 模拟比较器输入通道 2 AIN14: ADC 输入通道 14 7 P4.1/INT11/PWM41/CMP1/AIN13 I/O P4.1: GPIO P4.1 INT11: 外部中断 1 的输入 1 PWM41: PWM41 输出口 CMP1: 模拟比较器输入通道 1 AIN13: ADC 输入通道 13 8 P3.7/AIN11/C7 I/O P3.7: GPIO P3.7 AIN11: ADC 输入通道 11 C7: LCD/LED common 输出 7 9 P3.6/AIN10/C6 I/O P3.6: GPIO P3.6 AIN10: ADC 输入通道 10 C6: LCD/LED common 输出 6 10 P3.5/AIN9/C5 I/O P3.5: GPIO P3.5 AIN9: ADC 输入通道 9 C5: LCD/LED common 输出 5 11 P3.4/AIN8/C4 I/O P3.4: GPIO P3.4 AIN8: ADC 输入通道 8 C4: LCD/LED common 输出 4 12 P3.3/S0/C3 I/O P3.3: GPIO P3.3 S0: LCD/LED SEG0 C3: LCD/LED common 输出 3 13 P3.2/S1/C2 I/O P3.2: GPIO P3.2 S1: LCD/LED SEG1 C2: LCD/LED common 输出 2 14 P3.1/S2/C1 I/O P3.1: GPIO P3.1 S2: LCD/LED SEG2 C1: LCD/LED common 输出 1 15 P3.0/S3/C0 I/O P3.0: GPIO P3.0 S3: LCD/LED SEG3 C0: LCD/LED common 输出 0 16 P1.1/MISO/RX1/S5/tCK I/O P1.1: GPIO P1.1 MISO: SPI 总线主输入 / 从输出口 RX1: UART1 接收口 S5: LCD/LED SEG5 tck: 烧录和仿真口时钟线 17 P1.2/SCK/S6 I/O P1.2: GPIO P1.2 SCK: SPI 及 TWI 的 SCK S6: LCD/LED SEG6 18 P1.3/MOSI/SDA/TX1/S7/tDIO I/O P1.3: GPIO P1.3 MOSI: SPI 总线主输出 / 从输入口 SDA: TWI 的 SDA TX1: UART1 发送口 S7: LCD/LED SEG7 tdio: 烧录和仿真口数据线 19 P2.0/INT20/AIN4/S12 I/O P2.0: GPIO P2.0 INT20: 外部中断 2 的输入 0 AIN4: ADC 输入通道 4 S12: LCD/LED SEG12 Page 14 of 104 V0.4

20 P2.1/INT21/AIN5/S13 I/O P2.1: GPIO P2.1 INT21: 外部中断 2 的输入 1 AIN5: ADC 输入通道 5 S13: LCD/LED SEG13 21 P2.2/INT22/AIN6/S14 I/O P2.2: GPIO P2.2 INT22: 外部中断 2 的输入 2 AIN6: ADC 输入通道 6 S14: LCD/LED SEG14 22 P2.3/INT23/AIN7/S15 I/O P2.3: GPIO P2.3 INT23: 外部中断 2 的输入 3 AIN7: ADC 输入通道 7 S15: LCD/LED SEG15 23 P2.4/S16 I/O P2.4: GPIO P2.4 S16: LCD/LED SEG16 24 P2.5/S17 I/O P2.5: GPIO P2.5 S17: LCD/LED SEG17 25 P0.2/T0/TX0/S22 I/O P0.2: GPIO P0.2 T0: 计数器 0 外部输入 TX0: UART0 发送口 S22: LCD/LED SEG22 26 P0.3/T1/RX0/S23 I/O P0.3: GPIO P0.3 T1: 计数器 1 外部输入 RX0: UART0 接收口 S23: LCD/LED SEG23 27 P0.4/INT04/T2EX/S24 I/O P0.4: GPIO P0.4 INT04: 外部中断 0 的输入 4 T2EX: 定时器 2 外部捕获信号输入 S24: LCD/LED SEG24 28 P0.5/INT05/T2/S25 I/O P0.5: GPIO P0.5 INT05: 外部中断 0 的输入 5 T2: 计数器 2 外部输入 S25: LCD/LED SEG25 Page 15 of 104 V0.4

3.3 SOP16 管脚配置 ( 无 LED DRIVER) 特别说明 :SC92F854X 的 TK9/TK11 与 TK 调试通信口复用, 若需使用 TK 调试功能, 请尽量避免使用 TK9/TK11! CMOD/INT07/P0.7 1 16 P0.3/T1/RX0/TK27 VSS 2 15 P0.2/T0/TX0/TK26 VDD TK0/AIN11/P3.7 TK1/AIN10/P3.6 tck/tk9/rx1/miso/p1.1 TK10/SCK/P1.2 3 4 5 6 7 SC92F8541 14 13 12 11 10 P2.3/INT23/AIN7/TK19 P2.2/INT22/AIN6/TK18 P2.1/INT21/AIN5/TK17 P2.0/INT20/AIN4/TK16 P1.5/INT15/AIN1/TK13 tdio/tk11/tx1/sda/mosi/p1.3 8 9 P1.4/INT14/AIN0/TK12 3.3.1 SOP16 管脚定义 SC92F8541 管脚配置 16pin 管脚名称类型功能说明 1 P0.7/INT07/CMOD I/O P0.7: GPIO P0.7 INT07: 外部中断 0 的输入 7 CMOD: Touch Key 触控外接电容 2 VSS Power 接地 3 VDD Power 电源 4 P3.7/AIN11/TK0 I/O P3.7: GPIO P3.7 AIN11: ADC 输入通道 11 TK0: TK 的通道 0 5 P3.6/AIN10/TK1 I/O P3.6: GPIO P3.6 AIN10: ADC 输入通道 10 TK1: TK 的通道 1 6 P1.1/MISO/RX1/TK9/tCK I/O P1.1: GPIO P1.1 MISO: SPI 总线主输入 / 从输出口之一 RX1: UART1 接收口之一 TK9: TK 的通道 9 tck : 烧录和仿真口时钟线 7 P1.2/SCK/TK10 I/O P1.2: GPIO P1.2 SCK: SPI 及 TWI 的 SCK TK10: TK 的通道 10 8 P1.3/MOSI/SDA/TX1/TK11/tDIO I/O P1.3: GPIO P1.3 MOSI: SPI 总线主输出 / 从输入口之一 SDA: TWI 的 SDA 之一 TX1: UART1 发送口之一 TK11: TK 的通道 11 Page 16 of 104 V0.4

tdio: 烧录和仿真口数据线 9 P1.4/INT14/AIN0/TK12 I/O P1.4: GPIO P1.4 INT14: 外部中断 1 的输入 4 AIN0: ADC 输入通道 0 TK12: TK 的通道 12 10 P1.5/INT15/AIN1/TK13 I/O P1.5: GPIO P1.5 INT15: 外部中断 1 的输入 5 AIN1: ADC 输入通道 1 TK13: TK 的通道 13 11 P2.0/INT20/AIN4/TK16 I/O P2.0: GPIO P2.0 INT20: 外部中断 2 的输入 0 AIN4: ADC 输入通道 4 TK16: TK 的通道 16 12 P2.1/INT21/AIN5/TK17 I/O P2.1: GPIO P2.1 INT21: 外部中断 2 的输入 1 AIN5: ADC 输入通道 5 TK17: TK 的通道 17 13 P2.2/INT22/AIN6/ TK18 I/O P2.2: GPIO P2.2 INT22: 外部中断 2 的输入 2 AIN6: ADC 输入通道 6 TK18: TK 的通道 18 14 P2.3/INT23/AIN7/TK19 I/O P2.3: GPIO P2.3 INT23: 外部中断 2 的输入 3 AIN7: ADC 输入通道 7 TK19: TK 的通道 19 15 P0.2/T0/TX0/TK26 I/O P0.2: GPIO P0.2 T0: 计数器 0 外部输入 TX0: UART0 发送口 TK26: TK 的通道 26 16 P0.3/T1/RX0/TK27 I/O P0.3: GPIO P0.3 T1: 计数器 1 外部输入 RX0: UART0 接收口 TK27: TK 的通道 27 Page 17 of 104 V0.4

4 内部框图 LVD LVR Controller reset Internal 256 bytes RAM 128kHz LRC WDT External 1792 bytes RAM 32kHz X OSC WAKECNT Controller PWM&LCD 80 bytes RAM HRC Regulator HRC Voltage Reference 16MHz HRC Clock Controller clock 128 bytes EEPROM 2.4V REG CMP BandGap Voltage Reference ADC LDO & Power Manager ADC Controller CMP Controller UART SPI IIC UART TIMER0 1T 8051 CORE 32 Kbytes Program ROM (Flash) LCD/LED Driver Touch Key Sensor TIMER1 TIMER2 PWM I/O INT IO PADS Interrupt Interrupt Controller SC92F854X BLOCK DIAGRAM Page 18 of 104 V0.4

5 FLASH ROM 和 SRAM 结构 SC92F854X 的 Flash ROM 和 SRAM 结构如下 : 用户 ID 区域 7Fh 00h 7FFFh EEPROM 074Fh 0700h 06FFh LCD RAM 外部 RAM 0000h ( 通过 MOVX/DPTR 寻址 ) 0000h 5.1 FLASH ROM Flash ROM For Program FFh 80h 7Fh 00h Flash ROM 和 SRAM 结构图 RAM ( 间接寻址 ) SFR ( 直接寻址 ) RAM ( 直接寻址或间接寻址 ) SC92F854X 有 32 Kbytes 的 Flash ROM,ROM 地址为 0000H~7FFFH 此 32 Kbytes Flash ROM 可反复写入 1 万次, 可通过 SinOne 提供的专用 ICP 烧写器 (SOC PRO52/DPT52/SC LINK) 来进行编程及擦除 地址为 0000H~00FFH 地址的 256 bytes 区间 MOVC 指令不可寻址 EEPROM 为独立于 32 Kbytes ROM 之外的一块区间, 其地址为 00H~7FH, 可在程序中对其进行单 byte 读写操作, 具体操作方法参考 21 EEPROM 及 IAP 操作 用户 ID 区域 : 出厂时写入用户 ID, 用户只可对其进行读操作, 具体操作方式参考 21 EEPROM 及 IAP 操作 SC92F854X 的 32 Kbytes Flash ROM 能提供查空 BLANK 编程 PROGRAM 校验 VERIFY 和擦除 ERASE 功能, 但不提供读取 READ 的功能 此 Flash ROM 和 EEPROM 通常写入前无需进行擦除操作, 直接写入数据即可实现新数据的覆盖 SC92F854X 的 Flash ROM 通过 tdio tck VDD VSS 来进行编程, 具体连接关系如下 : Page 19 of 104 V0.4

MCU SOC PRO52 SOC DPT52 SC LINK VDD tck tdio VSS VDD CLK DIO GND 用户应用电路 Jumper ICP 模式 Flash Writer 编程连接示意图 5.2 CUSTOMER OPTION 区域 ( 用户烧写设置 ) SC92F854X 内部有单独的一块 Flash 区域用于保存客户的上电初始值设置, 此区域称为 Code Option 区域 用户在烧写 IC 时将此部分代码写入 IC 内部,IC 在复位初始化时, 就会将此设置调入 SFR 作为初始设置 Option 相关 SFR 操作说明 : Option 相关 SFR 的读写操作由 OPINX 和 OPREG 两个寄存器进行控制, 各 Option SFR 的具体位置由 OPINX 确定, 如下表所示 : 符号地址说明 7 6 5 4 3 2 1 0 OP_HRCR 83H@FFH 系统时钟改变寄存器 OP_HRCR[7:0] OP_CTM0 C1H@FFH Customer Option 寄存器 0 ENWDT ENXTL SCLKS[1:0] DISRST DISLVR LVRS[1:0] OP_CTM1 C2H@FFH Customer Option 寄存器 1 VREFS - - - IAPS[1:0] - - OP_HRCR (83H@FFH) 系统时钟改变寄存器 ( 读 / 写 ) 符号 OP_HRCR[7:0] 读 / 写 读 / 写 上电初始值 n n n n n n n n 位编号位符号说明 7~0 OP_HRCR[7:0] 内部高频 RC 频率调校 中心值 10000000b 对应 HRC 中心频率, 数值变大频率加快, 数值变小 频率变慢 OP_CTM0 (C1H@FFH) Customer Option 寄存器 0( 读 / 写 ) 符号 ENWDT ENXTL SCLKS[1:0] DISRST DISLVR LVRS[1:0] 读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写 上电初始值 n n n n n n Page 20 of 104 V0.4

位编号 位符号 说明 7 ENWDT WDT 开关 0:WDT 无效 1:WDT 有效 ( 但 IC 在执行 IAP 过程中 WDT 停止计数 ) 6 ENXTL 外部 32k 晶振选择开关 0: 外部 32k 晶振关闭,P5.0 P5.1 有效 ; 1: 外部 32k 晶振打开,P5.0 P5.1 无效 5~4 SCLKS[1:0] 系统时钟频率选择 : 00: 系统时钟频率为高频振荡器频率除以 1; 01: 系统时钟频率为高频振荡器频率除以 2; 10: 系统时钟频率为高频振荡器频率除以 4; 11: 系统时钟频率为高频振荡器频率除以 12 3 DISRST IO/RST 复位切换控制 0 :P5.2 当复位脚使用 1 :P5.2 当正常的 I/O 管脚使用 2 DISLVR LVR 使能设置 0:LVR 正常使用 1:LVR 无效 1~0 LVRS [1:0] LVR 电压选择控制 11:4.3 V 复位 10:3.7V 复位 01:2.9V 复位 00:2.3V 复位 OP_CTM1 (C2H@FFH) Customer Option 寄存器 1( 读 / 写 ) 符号 VREFS - - - IAPS[1:0] - - 读 / 写读 / 写 - - - 读 / 写读 / 写 - - 上电初始值 n x x x n n x x 位编号 位符号 说明 7 VREFS 参考电压选择 ( 初始值从 Code Option 调入, 用户可修改设置 ) 0: 设定 ADC 的 VREF 为 VDD 1: 设定 ADC 的 VREF 为内部准确的 2.4V 3~2 IAPS[1:0] 00:Code 区域禁止 IAP 操作, 仅 EEPROM 区域可作为数据存储使用 01: 最后 0.5K Code 区域允许 IAP 操作 (7E00H~7FFFH) 10: 最后 1K Code 区域允许 IAP 操作 (7C00H~7FFFH) 11: 全部 Code 区域允许 IAP 操作 (0000H~7FFFH) 5.2.1 OPTION 相关 SFR 操作说明 Option 相关 SFR 的读写操作由 OPINX 和 OPREG 两个寄存器进行控制, 各 Option SFR 的具体位置由 OPINX 确定, 各 Option SFR 的写入值由 OPREG 确定 : 符号地址说明上电初始值 OPINX FEH Option 指针 OPINX[7:0] 00000000b OPREG FFH Option 寄存器 OPREG[7:0] nnnnnnnnb 操作 Option 相关 SFR 时 OPINX 寄存器存放相关 OPTION 寄存器的地址,OPREG 寄存器存放对应的值 例如 : 要将 OP_HRCR 配置为 0x01, 具体操作方法如下 : C 语言例程 : OPINX = 83H; // 将 OP_HRCR 的地址写入 OPINX 寄存器 OPREG = 0x01; // 对 OPREG 寄存器写入 0x01( 待写入 OP_HRCR 寄存器的值 ) Page 21 of 104 V0.4

汇编例程 : MOV OPINX,#83H ; 将 OP_HRCR 的地址写入 OPINX 寄存器 MOV OPREG,#01H ; 对 OPREG 寄存器写入 0x01( 待写入 OP_HRCR 寄存器的值 ) 注意 : 禁止向 OPINX 寄存器写入 Customer Option 区域 SFR 地址之外的数值! 否则会造成系统运行异常! 5.3 SRAM SC92F854X 单片机的 SRAM, 分为内部 256 bytes RAM 外部 1792 bytes RAM 和 80 bytes 的 PWM&LCD RAM 内部 RAM 的地址范围为 00H~FFH, 其中高 128 bytes( 地址 80H~FFH) 只能间接寻址, 低 128 bytes ( 地址 00H~7FH) 可直接寻址也可间接寻址 特殊功能寄存器 SFR 的地址也是 80H~FFH 但 SFR 同内部高 128 bytes SRAM 的区别是 :SFR 寄存器是直接寻址, 而内部高 128 bytes SRAM 只能是间接寻址 外部 RAM 的地址为 0000H~06FFH, 但需通过 MOVX 指令来寻址 5.3.1 内部 256 BYTES SRAM 内部低 128 bytes SRAM 区可分为三部分 :1 工作寄存器组 0~3, 地址 00H~1FH, 程序状态字寄存器 PSW 中的 RS0 RS1 组合决定了当前使用的工作寄存器, 使用工作寄存器组 0~3 可加快运算的速度 ;2 位寻址区 20H~2FH, 此区域用户可以用作普通 RAM 也可用作按位寻址 RAM; 按位寻址时, 位的地址为 00H~7FH,( 此 地址按位编地址, 不同于通用 SRAM 按字节编地址 ), 程序中可由指令区分 ;3 用户 RAM 和堆栈区, SC92F854X 复位过后,8 位的堆栈指针指向堆栈区, 用户一般会在初始化程序时设置初值, 建议设置在 E0H~FFH 的单元区间 高 128 bytes RAM ( 只能间接寻址 ) FFH 特殊功能寄存器 SFR ( 直接寻址 ) FFH 80H 80H 7FH 低 128 bytes RAM ( 可直接寻址 ; 也可间接寻址 ) 00H 内部 256 bytes RAM 结构图 内部低 128 bytes RAM 结构如下 : Page 22 of 104 V0.4

7FH 7F 7E 7D 7C 7B 7A 79 78 2FH 77 76 75 74 73 72 71 70 2E H 6F 6E 6D 6C 6B 6A 69 68 2D H 用户 RAM 及堆栈 RAM 区 67 66 65 64 63 62 61 60 2C H 5F 5E 5D 5C 5B 5A 59 58 2B H 57 56 55 54 53 52 51 50 2A H 4F 4E 4D 4C 4B 4A 49 48 29H 2FH 30H 47 46 45 44 43 42 41 40 28H 3F 3E 3D 3C 3B 3A 39 38 27H 20H 17H 10H 07H 00H 位寻址 RAM 区工作寄存器组 3 工作寄存器组 2 工作寄存器组 1 工作寄存器组 0 1FH 18H 0FH 08H 37 36 35 34 33 32 31 30 26H 2F 2E 2D 2C 2B 2A 29 28 25H 27 26 25 24 23 22 21 20 24H 1F 1E 1D 1C 1B 1A 19 18 23H 17 16 15 14 13 12 11 10 22H 0F 0E 0D 0C 0B 0A 09 08 21H 07 06 05 04 03 02 01 00 20H SRAM 结构图 5.3.2 外部 1792 BYTES SRAM 可通过 MOVX @DPTR, A 来访问外部 1792 bytes RAM; 也可以使用 MOVX A, @Ri 或 MOVX @Ri, A 配合 EXADH 寄存器来访问外部 1792 bytes RAM:EXADH 寄存器存放外部 SRAM 的高位地址, Ri 寄存器存放外部 SRAM 的低 8 位地址 EXADH (F7H) 外部 SRAM 操作地址高位 ( 读 / 写 ) 符号 - - - - - EXADH [2:0] 上电初始值 x x x x x 0 0 0 位编号位符号说明 2~0 EXADH [2:0] 外部 SRAM 操作地址的高位 7~3 - 保留 5.3.3 PWM&LCD 80 BYTES SRAM RAM 地址的 0700H~074FH 作为 80 bytes 的 PWM&LCD SRAM, 其中 : 1. PWM 占空比调节寄存器占用 0740H~074FH, 只可写, 不可读 具体操作方法参考 13.2 PWM 相关 Page 23 of 104 V0.4

SFR 寄存器 ; 2. LCD/LED 显示 RAM 占用 0700H~071BH, 具体操作方法参考 15.2 LCD/LED 显示 RAM 配置 6 特殊功能寄存器 (SFR) 6.1 SFR 映像 SC92F854X 系列有一些特殊功能寄存器, 我们称为 SFR 这些 SFR 寄存器的地址位于 80H~FFH, 有些可以位寻址, 有些不能位寻址 能够进行位寻址操作的寄存器的地址末位数都是 0 或 8, 这些寄存器在需要改变单个位的数值时非常方便 所有的 SFR 特殊功能寄存器都必须使用直接寻址方式寻址 SC92F854X 的特殊功能寄存器名称及地址如下表 : 0/8 1/9 2/A 3/B 4/C 5/D 6/E 7/F F8h - - - - CHKSUML CHKSUMH OPINX OPREG F0h B IAPKEY IAPADL IAPADH IAPADE IAPDAT IAPCTL EXADH E8h - EXA0 EXA1 EXA2 EXA3 EXBL EXBH OPERCON E0h ACC - - - - - - - D8h P5 P5CON P5PH - - - - - D0h PSW - - PWMCON PWMCFG C8h T2CON T2MOD RCAP2L RCAP2H TL2 TH2 BTMCON WDTCON C0h P4 P4CON P4PH - - - INT2F INT2R B8h IP IP1 INT0F INT0R INT1F INT1R - - B0h P3 P3CON P3PH P3VO - - CMPCFG CMPCON A8h IE IE1 ADCCFG2 ADCCFG0 ADCCFG1 ADCCON ADCVL ADCVH A0h P2 P2CON P2PH P2VO - - - - 98h SCON SBUF P0CON P0PH P0VO SSCON0 SSCON1 SSDAT 90h P1 P1CON P1PH DDRCON P1VO SSCON2 IOHCON0 IOHCON1 88h TCON TMOD TL0 TL1 TH0 TH1 TMCON OTCON 80h P0 SP DPL DPH - - - PCON 可位寻址 不可位寻址 说明 : 1. SFR 寄存器中空的部分代表没有此寄存器 RAM, 不建议用户使用 2. SFR 中的 F1H~FFH 为系统配置使用的特殊功能寄存器, 用户使用可能会导致系统异常, 用户在初始化系统时, 不能对这些寄存器进行清零或其它操作 Page 24 of 104 V0.4

6.2 SFR 说明 特殊功能寄存器 SFR 的具体解释说明如下 : 符号地址说明 7 6 5 4 3 2 1 0 上电初始值 P0 80H P0 口数据寄存器 P07 P06 P05 P04 P03 P02 P01 P00 00000000b SP 81H 堆栈指针 SP[7:0] 00000111b DPL 82H DPTR 数据指针低位 DPL[7:0] 00000000b DPH 83H DPTR 数据指针高位 DPH[7:0] 00000000b PCON 87H 电源管理控制寄存器 SMOD - - - - - STOP IDL 0xxxxx00b TCON 88H 定时器控制寄存器 TF1 TR1 TF0 TR0 IE1 - IE0-00000x0xb TMOD 89H 定时器工作模式寄存器 - C/T1 M11 M01 - C/T0 M10 M00 x000x000b TL0 8AH 定时器 0 低 8 位 TL0[7:0] 00000000b TL1 8BH 定时器 1 低 8 位 TL1[7:0] 00000000b TH0 8CH 定时器 0 高 8 位 TH0[7:0] 00000000b TH1 8DH 定时器 1 高 8 位 TH1[7:0] 00000000b TMCON 8EH 定时器频率控制寄存器 - - - - - T2FD T1FD T0FD xxxxx000b OTCON 8FH 输出控制寄存器 SSMOD[1:0] - - VOIRS[1:0] SCS BIAS 00xx0000b P1 90H P1 口数据寄存器 P17 P16 P15 P14 P13 P12 P11 P10 00000000b P1CON 91H P1 口输入 / 输出控制寄存器 P1C7 P1C6 P1C5 P1C4 P1C3 P1C2 P1C1 P1C0 00000000b P1PH 92H P1 口上拉电阻控制寄存器 P1H7 P1H6 P1H5 P1H4 P1H3 P1H2 P1H1 P1H0 00000000b DDRCON 93H 显示驱动控制寄存器 DDRON DMOD DUTY[1:0] VLCD[3:0] 00000000b P1VO 94H P1 口显示驱动输出寄存器 P17VO P16VO P15VO P14VO P13VO P12VO P11VO P10VO 00000000b SSCON2 95H SSI 控制寄存器 2 SSCON2[7:0] 00000000b IOHCON0 96H IOH 设置寄存器 0 P1H[1:0] P1L[1:0] P0H[1:0] P0L[1:0] 00000000b IOHCON1 97H IOH 设置寄存器 1 - - P3L[1:0] P2H[1:0] P2L[1:0] xx000000b SCON 98H 串口控制寄存器 SM0 SM1 SM2 REN TB8 RB8 TI RI 00000000b SBUF 99H 串口数据缓存寄存器 SBUF[7:0] 00000000b P0CON 9AH P0 口输入 / 输出控制寄存器 P0C7 P0C6 P0C5 P0C4 P0C3 P0C2 P0C1 P0C0 00000000b P0PH 9BH P0 口上拉电阻控制寄存器 P0H7 P0H6 P0H5 P0H4 P0H3 P0H2 P0H1 P0H0 00000000b P0VO 9CH P0 口显示驱动输出寄存器 P07VO P06VO P05VO P04VO P03VO P02VO P01VO P00VO 00000000b SSCON0 9DH SSI 控制寄存器 0 SSCON0[7:0] 00000000b SSCON1 9EH SSI 控制寄存器 1 SSCON1[7:0] 00000000b SSDAT 9FH SSI 数据寄存器 SSD[7:0] 00000000b P2 A0H P2 口数据寄存器 P27 P26 P25 P24 P23 P22 P21 P20 00000000b P2CON A1H P2 口输入 / 输出控制寄存器 P2C7 P2C6 P2C5 P2C4 P2C3 P2C2 P2C1 P2C0 00000000b P2PH A2H P2 口上拉电阻控制寄存器 P2H7 P2H6 P2H5 P2H4 P2H3 P2H2 P2H1 P2H0 00000000b P2VO A3H P2 口显示驱动输出寄存器 P27VO P26VO P25VO P24VO P23VO P22VO P21VO P20VO 00000000b IE A8H 中断使能寄存器 EA EADC ET2 EUART ET1 EINT1 ET0 EINT0 00000000b IE1 A9H 中断使能寄存器 1 - - ECMP ETK EINT2 EBTM EPWM ESSI xx000000b ADCCFG2 AAH ADC 设置寄存器 2 - - - - - LOWSP ADCCK[1:0] xxxxx000b ADCCFG0 ABH ADC 设置寄存器 0 EAIN7 EAIN6 EAIN5 EAIN4 EAIN3 EAIN2 EAIN1 EAIN0 00000000b ADCCFG1 ACH ADC 设置寄存器 1 EAIN15 EAIN14 EAIN13 EAIN12 EAIN11 EAIN10 EAIN9 EAIN8 00000000b ADCCON ADH ADC 控制寄存器 ADCEN ADCS EOC/ ADCIF ADCIS[4:0] Page 25 of 104 V0.4 00000000b ADCVL AEH ADC 结果寄存器 ADCV[3:0] - - - - 0000xxxxb ADCVH AFH ADC 结果寄存器 ADCV[11:4] 00000000b P3 B0H P3 口数据寄存器 P37 P36 P35 P34 P33 P32 P31 P30 00000000b P3CON B1H P3 口输入 / 输出控制寄存器 P3C7 P3C6 P3C5 P3C4 P3C3 P3C2 P3C1 P3C0 00000000b P3PH B2H P3 口上拉电阻控制寄存器 P3H7 P3H6 P3H5 P3H4 P3H3 P3H2 P3H1 P3H0 00000000b P3VO B3H P3 口显示驱动输出寄存器 P37VO P36VO P35VO P34VO P33VO P32VO P31VO P30VO 00000000b CMPCFG B6H 模拟比较器设置寄存器 - - - - CMPIM[1:0] CMPIS[1:0] xxxx0000b CMPCON B7H 模拟比较器控制寄存器 CMPEN CMPIF CMPSTA - CMPRF[3:0] 000x0000b IP B8H 中断优先级控制寄存器 - IPADC IPT2 IPUART IPT1 IPINT1 IPT0 IPINT0 x0000000b IP1 B9H 中断优先级控制寄存器 1 - - IPCMP IPTK IPINT2 IPBTM IPPWM IPSSI xx000000b INT0F BAH INT0 下降沿中断控制寄存器 INT0F7 INT0F6 INT0F5 INT0F4 - - - - 0000xxxxb INT0R BBH INT0 上升沿中断控制寄存器 INT0R7 INT0R6 INT0R5 INT0R4 - - - - 0000xxxxb INT1F BCH INT1 下降沿中断控制寄存器 INT1F7 INT1F6 INT1F5 INT1F4 INT1F3 INT1F2 INT1F1 INT1F0 00000000b INT1R BDH INT1 上升沿中断控制寄存器 INT1R7 INT1R6 INT1R5 INT1R4 INT1R3 INT1R2 INT1R1 INT1R0 00000000b P4 C0H P4 口数据寄存器 P47 P46 P45 P44 P43 P42 P41 P40 00000000b

P4CON C1H P4 口输入 / 输出控制寄存器 P4C7 P4C6 P4C5 P4C4 P4C3 P4C2 P4C1 P4C0 00000000b P4PH C2H P4 口上拉电阻控制寄存器 P4H7 P4H6 P4H5 P4H4 P4H3 P4H2 P4H1 P4H0 00000000b INT2F C6H INT2 下降沿中断控制寄存器 - - - - INT2F3 INT2F2 INT2F1 INT2F0 xxxx0000b INT2R C7H INT2 上升沿中断控制寄存器 - - - - INT2R3 INT2R2 INT2R1 INT2R0 xxxx0000b T2CON C8H 定时器 2 控制寄存器 TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2 00000000b T2MOD C9H 定时器 2 工作模式寄存器 - - - - - - T2OE DCEN xxxxxx00b RCAP2L CAH 定时器 2 重载低 8 位 RCAP2L[7:0] 00000000b RCAP2H CBH 定时器 2 重载高 8 位 RCAP2H[7:0] 00000000b TL2 CCH 定时器 2 低 8 位 TL2[7:0] 00000000b TH2 CDH 定时器 2 高 8 位 TH2[7:0] 00000000b BTMCON CEH 低频定时器控制寄存器 ENBTM BTMIF - - BTMFS[3:0] 00xx0000b WDTCON CFH WDT 控制寄存器 - - - CLRWDT - WDTCKS[2:0] xxx0x000b PSW D0H 程序状态字寄存器 CY AC F0 RS1 RS0 OV F1 P 00000000b PWMCON D3H PWM 控制寄存器 PWMPD[7:0] 00000000b PWMCFG D4H PWM 设置寄存器 ENPWM PWMIF PWMCK[1:0] PWMPD[11:8] 00000000b P5 D8H P5 口数据寄存器 - - P55 P54 P53 P52 P51 P50 xx000000b P5CON D9H P5 口输入 / 输出控制寄存器 - - P5C5 P5C4 P5C3 P5C2 P5C1 P5C0 xx000000b P5PH DAH P5 口上拉电阻控制寄存器 - - P5H5 P5H4 P5H3 P5H2 P5H1 P5H0 xx000000b ACC E0H 累加器 ACC[7:0] 00000000b EXA0 E9H 扩展累加器 0 EXA[7:0] 00000000b EXA1 EAH 扩展累加器 1 EXA[15:8] 00000000b EXA2 EBH 扩展累加器 2 EXA[23:16] 00000000b EXA3 ECH 扩展累加器 3 EXA[31:24] 00000000b EXBL EDH 扩展 B 寄存器 L EXB [7:0] 00000000b EXBH EEH 扩展 B 寄存器 H EXB [15:8] 00000000b OPERCON EFH 运算控制寄存器 OPERS MD - - - - - CHKSUMS 00xxxxx0b B F0H B 寄存器 B[7:0] 00000000b IAPKEY F1H IAP 保护寄存器 IAPKEY[7:0] 00000000b IAPADL F2H IAP 写入地址低位寄存器 IAPADR[7:0] 00000000b IAPADH F3H IAP 写入地址高位寄存器 - IAPADR[14:8] x0000000b IAPADE F4H IAP 写入扩展地址寄存器 IAPADER[7:0] 00000000b IAPDAT F5H IAP 数据寄存器 IAPDAT[7:0] 00000000b IAPCTL F6H IAP 控制寄存器 - - - - PAYTIMES[1:0] CMD[1:0] xxxx0000b EXADH F7H 外部 SRAM 操作地址高位 - - - - - EXADH [2:0] xxxxx000b CHKSUML FCH Check Sum 结果寄存器低位 CHKSUML[7:0] 00000000b CHKSUMH FDH Check Sum 结果寄存器高位 CHKSUMH[7:0] 00000000b OPINX FEH Option 指针 OPINX[7:0] 00000000b OPREG FFH Option 寄存器 OPREG[7:0] nnnnnnnnb 6.2.1 8051 CPU 内核常用特殊功能寄存器介绍 程序计数器 PC 程序计数器 PC 不属于 SFR 寄存器 PC 有 16 位, 是用来控制指令执行顺序的寄存器 单片机上电或者复位后,PC 值为 0000H, 也即是说单片机程序从 0000H 地址开始执行程序 累加器 ACC (E0H) 累加器 ACC 是 8051 内核单片机的最常用的寄存器之一, 指令系统中采用 A 作为助记符 常用来存放参加计算或者逻辑运算的操作数及结果 B 寄存器 (F0H) B 寄存器在乘除法运算中必须与累加器 A 配合使用 乘法指令 MUL A,B 把累加器 A 和寄存器 B 中的 8 位无符号数相乘, 所得的 16 位乘积的低位字节放在 A 中, 高位字节放在 B 中 除法指令 DIV A,B 是用 A 除以 B, 整数商放在 A 中, 余数放在 B 中 寄存器 B 还可以作为通用的暂存寄存器使用 堆栈指针 SP (81H) 堆栈指针是一个 8 位的专用寄存器, 它指示出堆栈顶部在通用 RAM 中的位置 单片机复位后,SP 初始值为 07H, 即堆栈会从 08H 开始向上增加 08H~1FH 为工作寄存器组 1~3 Page 26 of 104 V0.4

PSW (D0H) 程序状态字寄存器 ( 读 / 写 ) 符号 CY AC F0 RS1 RS0 OV F1 P 读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写 上电初始值 0 0 0 0 0 0 0 0 位编号 位符号 说明 7 CY 标志位 1: 加法运算最高位有进位, 或者减法运算最高位有借位时 0: 加法运算最高位无进位, 或者减法运算最高位无借位时 6 AC 进位辅助标志位 ( 可在 BCD 码加减法运算时方便调整 ) 1: 加法运算时在 bit3 位有进位, 或减法运算在 bit3 位有借位时 0: 无借位 进位 5 F0 用户标志位 4~3 RS1 RS0 工作寄存器组选择位 : RS1 RS0 当前使用的工作寄存器组 0~3 0 0 组 0 (00H~07H) 0 1 组 1 (08H~0FH) 1 0 组 2 (10H~17H) 1 1 组 3 (18H~1FH) 2 OV 溢出标志位 1 F1 F1 标志用户自定义标志 0 P 奇偶标志位 此标志位为累加器 ACC 中 1 的个数的奇偶值 1:ACC 中 1 的个数为奇数 0:ACC 中 1 的个数为偶数 ( 包括 0 个 ) 数据指针 DPTR (82H 83H) SC92F854X 的数据指针 DPTR 是 16 位的专用寄存器, 由低 8 位 DPL 和高 8 位 DPH 组成 DPTR 是可以直接进行 16 位操作的寄存器, 也可以分别对 DPL 和 DPH 按字节进行操作 7 电源 复位和时钟 7.1 电源电路 SC92F854X 电源核心包括了 BG LDO POR LVR 等电路, 可实现在 2.4~5.5V 范围内可靠工作 此外, IC 内建了一个经调校过的精准 2.4V 电压, 可用作 ADC 内部参考电压 用户可在 18 模数转换 ADC 查找具体设置内容 7.2 上电复位过程 SC92F854X 上电后, 在客户端软件执行前, 会经过以下的过程 : 复位阶段 调入信息阶段 正常操作阶段 7.2.1 复位阶段 是指 SC92F854X 会一直处于复位的情况, 直到供应给 SC92F854X 的电压高过某一电压, 内部才开始有效的 Clock 复位阶段的时间长短和外部电源的上升速度有关, 外部电源达到内建 POR 电压后, 复位阶段才会完成 7.2.2 调入信息阶段 在 SC92F854X 内部有一个预热计数器 在复位阶段期间, 此预热计数器一直被清为 0, 直到电压过了 POR 电压后, 内部 RC 振荡器开始起振, 该预热计数器开始计数 当内部的预热计数器计数到一定数目后, 每隔一定数 Page 27 of 104 V0.4

量个 HRC clock 就会从 Flash ROM 中的 IFB( 包含 Code Option) 读出一个 byte 数据存放到内部系统寄存器中 直到预热完成后, 该复位信号才会结束 7.2.3 正常操作阶段 结束调入信息阶段后,SC92F854X 开始从 Flash 中读取指令代码即进入正常操作阶段 这时的 LVR 电压值是用户写入 Code Option 的设置值 7.3 复位方式 SC92F854X 有 4 种复位方式 :1 外部 RST 复位 2 低电压复位 LVR3 上电复位 POR4 看门狗 WDT 复位 7.3.1 外部 RST 复位 外部 RST 复位就是从外部 RST 给 SC92F854X 一定宽度的复位脉冲信号, 来实现 SC92F854X 的复位 用户在烧录程序前可通过烧录上位机软件配置 Customer Option 项将 P5.2/RST 管脚配置为 RST( 复位脚 ) 使用 7.3.2 低电压复位 LVR SC92F854X 内建了一个低电压复位电路 而复位的门限电压有 4 种选择 :4.3V 3.7V 2.9V 2.3V, 缺省值 Default 是用户写入的 Option 值 OP_CTM0(C1H@FFH) Customer Option 寄存器 0( 读 / 写 ) 符号 ENWDT ENXTL SCLKS[1:0] DISRST DISLVR LVRS[1:0] 读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写 上电初始值 n n n n n n 位编号 位符号 说明 2 DISLVR LVR 使能设置 0:LVR 正常使用 1:LVR 无效 1~0 LVRS [1:0] LVR 电压选择控制 11:4.3 V 复位 10:3.7V 复位 01:2.9V 复位 00:2.3V 复位 SC92F854X 的复位部分电路结构图如下 : RSTN pin De-Bounce LVR 4.3V 3.7V 2.9V 2.3V De-Bounce (~2uS) RESET Code option SFR POR (Power-Up Reset) WatchDogTimer Overflow SC92F854X 复位电路图 Page 28 of 104 V0.4

7.3.3 上电复位 POR SC92F854X 内部有上电复位电路, 当电源电压 VDD 达到 POR 复位电压时, 系统自动复位 7.3.4 看门狗复位 WDT SC92F854X 有一个 WDT, 其时钟源为内部的 128kHz 振荡器 用户可以通过编程器的 Code Option 选择是否开启看门狗复位功能 OP_WDT (85h@FFH) WDT 溢出时间调整寄存器 ( 读 / 写 ) 符号 - - - - - - OP_WDT[1:0] 读 / 写 - - - - - - 读 / 写上电初始值 x x x x x x n n 位编号位符号说明 7~2 - 保留 1~0 OP_WDT [1:0] WDT 溢出时间调整 OP_CTM0 (C1H@FFH) Customer Option 寄存器 0( 读 / 写 ) 符号 ENWDT ENXTL SCLKS[1:0] DISRST DISLVR LVRS[1:0] 读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写 上电初始值 n n n n n n 位编号 位符号 说明 7 ENWDT WDT 开关 ( 此位由系统将用户 Code Option 所设的值调入 ) 1: WDT 开始工作 0: WDT 关闭 WDTCON (CFH) WDT 控制寄存器 ( 读 / 写 ) 符号 - - - CLRWDT - WDTCKS[2:0] 读 / 写 - - - 读 / 写 - 读 / 写 上电初始值 x x x 0 x 0 0 0 位编号 位符号 说明 4 CLRWDT WDT 清 0 位 ( 写 1 有效 ) 1 :WDT 计数器从 0 开始计数此位由系统硬件自动置 0 2~0 WDTCKS [2:0] 看门狗时钟选择 WDTCKS[2:0] WDT 溢出时间 000 500ms 001 250ms 010 125ms 011 62.5ms 100 31.5ms 101 15.75ms 110 7.88ms 111 3.94ms 7~5,3 - 保留 Page 29 of 104 V0.4

7.3.5 复位初始状态 当 SC92F854X 处于复位状态时, 多数寄存器会回到其初始状态 看门狗 WDT 处于关闭的状态 程序计数器 PC 初始值为 0000h, 堆栈指针 SP 初始值为 07h 热启动 的 Reset( 如 WDT LVR 等 ) 不会影响到 SRAM, SRAM 值始终是复位前的值 SRAM 内容的丢失会发生在电源电压低到 RAM 无法保存为止 SFR 寄存器的上电复位初始值如下表 : SFR 名称 初始值 SFR 名称 初始值 ACC 00000000b P1VO 00000000b B 00000000b P2 00000000b PSW 00000000b P2CON 00000000b SP 00000111b P2PH 00000000b DPL 00000000b P2VO 00000000b DPH 00000000b P3 00000000b PCON 0xxxxx00b P3CON 00000000b ADCCFG0 00000000b P3PH 00000000b ADCCFG1 00000000b P3VO 00000000b ADCCFG2 xxxxx000b P4 00000000b ADCCON 00000000b P4CON 00000000b ADCVH 00000000b P4PH 00000000b ADCVL 0000xxxxb P5 xx000000b BTMCON 00xx0000b P5CON xx000000b IAPADE 00000000b P5PH xx000000b IAPADH x0000000b PWMCFG 00000000b IAPADL 00000000b PWMCON 00000000b IAPCTL xxxx0000b RCAP2H 00000000b IAPDAT 00000000b RCAP2L 00000000b IAPKEY 00000000b SBUF 00000000b IE 00000000b SCON 00000000b IE1 xx000000b SSCON0 00000000b INT0R 0000xxxxb SSCON1 00000000b INT1R 00000000b SSCON2 00000000b INT2R xxxx0000b SSDAT 00000000b INT0F 0000xxxxb TA 00000000b INT1F 00000000b TCON 00000x0xb INT2F xxxx0000b TMCON xxxxx000b IP x0000000b TMOD x000x000b IP1 xxx00000b TH0 00000000b OPINX 00000000b TL0 00000000b OPREG nnnnnnnnb TH1 00000000b EXADH xxxxx000b TL1 00000000b OTCON 00xx0000b T2CON 00000000b IOHCON0 00000000b TH2 00000000b IOHCON1 xxxx0000b TL2 00000000b P0 00000000b T2MOD xxxxxx00b P0CON 00000000b WDTCON xxx0x000b P0PH 00000000b CMPCFG xxxxxx00b P0VO xxx00000b CMPCON 000x0000b P1 00000000b DDRCON 00000000b Page 30 of 104 V0.4

P1CON 00000000b CHKSUMH 00000000b P1PH 00000000b CHKSUML 00000000b 7.4 高频系统时钟电路 SC92F854X 内建了一个振荡频率可调的高精度 HRC,HRC 出厂时被精确地调校至 16MHz@5V/25, 用户可以通过编程器的 Code Option 将系统时钟设置为 16/8/4/1.33MHz 使用 调校过程是过滤掉制程上的偏差对精度所造成的影响 此 HRC 受工作的环境温度和工作电压影响会有一定的漂移, 对于压漂 (3.0V~5.5V) 以及 (-20 ~85 ) 的温漂一般状况会在 ±1% 以内 注意 : ADC PWM 和触控电路的时钟源固定为 f HRC = 16MHz, 不会随着内外系统时钟的切换而改变 SCLKS[1:0] UART 16MHz HRC fhrc /1 /2 /4 /12 fsys SSI TIMER0 ADC PWM TK SC92F854X 内部时钟关系 OP_CTM0 (C1H@FFH) Customer Option 寄存器 0( 读 / 写 ) TIMER1 TIMER2 I/O 符号 ENWDT ENXTL SCLKS[1:0] DISRST DISLVR LVRS[1:0] 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 上电初始值 n n n n n n 位编号 位符号 说明 5~4 SCLKS[1:0] 系统时钟频率选择 : 00: 系统时钟频率为高频振荡器频率除以 1; 01: 系统时钟频率为高频振荡器频率除以 2; 10: 系统时钟频率为高频振荡器频率除以 4; 11: 系统时钟频率为高频振荡器频率除以 12 SC92F854X 有一个特殊的功能 : 用户可修改 SFR 的值实现 HRC 频率在一定范围的调整 OP_HRCR (83h@FFH) 系统时钟改变寄存器 ( 读 / 写 ) 符号 OP_HRCR[7:0] 读 / 写读 / 写上电初始值 n n n n n n n n 位编号位符号说明 7~0 OP_HRCR[7:0] HRC 频率改变寄存器 Page 31 of 104 V0.4

7.5 低频振荡器及低频时钟定时器 OP_HRCR[7:0] 在上电后的值 HRC 确保 HRC 可准确工作在 16/8/4/1.33MHz ( 根据用户 Code Option 的选择 ), 此数值的初始值每颗 IC 都可能会有差异 用户可通过修改此寄存器的值实现 HRC 工作频率的改变 初始值为 OP_HRCR[s], 此时 IC 工作在 16/8/4/1.33MHz,OP_HRCR [7:0] 的值每改变 1, 则 HRC 频率在原有频率的基础上改变约 0.23%@16MHz OP_HRCR [7:0] 和 HRC 输出频率的关系如下 : OP_HRCR [7:0] 值 HRC 实际输出频率 (16M 为例 ) OP_HRCR [s]-n 16000*(1-0.23%*n)kHz...... OP_HRCR [s]-2 16000*(1-0.23%*2) = 15926.4kHz OP_HRCR [s]-1 OP_HRCR [s] OP_HRCR [s]+1 OP_HRCR [s]+2 16000*(1-0.23%*1) = 15963.2kHz 16000kHz 16000*(1+0.23%*1) = 16036.8kHz 16000*(1+0.23%*2) = 16073.6kHz...... OP_HRCR [s]+n 16000*(1+0.23%*n)kHz 注意 : 1.IC 每次上电后 OP_HRCR[7:0] 的值都是 HRC 工作在最接近 16/8/4/1.33MHz 的 HRC; 用户可借助 EEPROM 在每次上电后修正 HRC 的值以让 HRC 工作在用户需要的频率 ; 2. 为保证 IC 工作可靠,IC 最高工作频率尽量勿超过 16MHz 的 10% 即 17.6MHz; 3. 请用户确认 HRC 频率的改变不会影响其它功能 SC92F854X 内建一个频率为 128kHz 的 RC 及 32.768kHz 晶体振荡电路, 都可作为低频时钟定时器 Base Timer 的时钟源 该振荡器直接连接一个 Base Timer, 可以把 CPU 从 STOP mode 唤醒, 并且产生中断 BTMCON (CEH) 低频定时器控制寄存器 ( 读 / 写 ) 符号 ENBTM BTMIF - - BTMFS[3:0] 读 / 写读 / 写读 / 写 - - 读 / 写上电初始值 0 0 x x 0 0 0 0 位编号 位符号 说明 7 ENBTM 低频 Base Timer 启动控制 0:Base Timer 及其时钟源不启动 1:Base Timer 及其时钟源启动 6 BTMIF Base Timer 中断申请标志 当 CPU 接受 Base Timer 的中断后, 此标志位会被硬件自动清除 3~0 BTMFS [3:0] 低频时钟中断频率选择 0000: 每 15.6ms 产生一个中断 0001: 每 31.3ms 产生一个中断 0010: 每 62.5ms 产生一个中断 0011: 每 125ms 产生一个中断 0100: 每 0.25 秒产生一个中断 0101: 每 0.5 秒产生一个中断 0110: 每 1.0 秒产生一个中断 Page 32 of 104 V0.4

0111: 每 2.0 秒产生一个中断 1xxx: 每 4.0 秒产生一个中断 5~4 - 保留 OP_CTM0 (C1H@FFH) Customer Option 寄存器 0( 读 / 写 ) 符号 ENWDT ENXTL SCLKS[1:0] DISRST DISLVR LVRS[1:0] 读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写 上电初始值 n n n n n n 位编号 位符号 说明 6 ENXTL 外部 32k 晶振选择开关 0: 外部 32k 晶振关闭,P5.0 P5.1 有效, 内部 LRC 有效 ; 1: 外部 32k 晶振打开,P5.0 P5.1 无效, 内部 LRC 无效 P5.0/P5.1 外接 32K 振荡器作为 BaseTimer 使用的接法电路如下 : OSCI/P5.1 OSCO/P5.0 Base Timer 内外部振荡选择关系图如下 : 外部 32K 晶振 内部 128K LRC 32k 外部晶振连接图 振荡源选择开关 C1(10~12P) 32.768K Crystal C2(10~12P) Basetimer Counter BTMIF ENXTL ENBTM 7.6 STOP 模式和 IDLE 模式 Base Timer 结构图 SC92F854X 提供了一个特殊功能寄存器 PCON, 配置该寄存器的 bit0 和 bit1 可控制 MCU 进入不同的工作模式 对 PCON.1 写入 1, 内部的高频系统时钟就会停止, 进到 STOP 模式, 达到省电功能 在 STOP 模式下, 用户可以通过外部中断 INT0~INT2 低频时钟中断及 WDT 把 SC92F854X 唤醒, 也可以通过外部复位将 STOP 唤醒 对 PCON.0 写入 1, 程序停止运行, 进入 IDLE 模式, 但外部设备及时钟继续运行, 进入 IDLE 模式前所有 CPU 状态都被保存 IDLE 模式可由任何中断唤醒 PCON (87H) 电源管理控制寄存器 ( 只写 * 不可读 *) 符号 SMOD - - - - - STOP IDL 读 / 写只写 - - - - - 只写只写 Page 33 of 104 V0.4

上电初始值 0 x x x x x 0 0 位编号位符号说明 1 STOP STOP 模式控制 0: 正常操作模式 1: 节能模式, 高频振荡器停止工作, 低频振荡器及 WDT 可根据设定选择工作与否 0 IDL IDLE 模式控制 0: 正常操作模式 1: 节能模式, 程序停止运行, 但外部设备及时钟继续运行, 进入 IDLE 模式前所有 CPU 状态都被保存 注意 : 配置 MCU 进入 STOP 或 IDLE 模式时, 对 PCON 寄存器进行配置操作的语句后面要加上 8 个 NOP 指令, 不能直接跟其它指令, 否则在唤醒后无法正常执行后续的指令! 例如 : 设置 MCU 进入 STOP 模式 : C 语言例程 : #include intrins.h PCON = 0x02; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); 汇编例程 : ORL PCON,#02H NOP NOP NOP NOP NOP NOP NOP NOP //PCON 的 bit1 STOP 位写 1, 配置 MCU 进入 STOP 模式 // 至少需要 8 个 _nop_() ; PCON 的 bit1 STOP 位写 1, 配置 MCU 进入 STOP 模式 ; 至少需要 8 个 NOP Page 34 of 104 V0.4

8 中央处理单元 CPU 及指令系统 8.1 CPU SC92F854X 所用的 CPU 是一个超高速的 1T 标准 8051 内核, 其指令完全兼容传统 8051 内核单片机 8.2 寻址方式 SC92F854X 的 1T 8051 CPU 指令的寻址方式有 :1 立即寻址 2 直接寻址 3 间接寻址 4 寄存器寻址 5 相对寻 址 6 变址寻址 7 位寻址 8.2.1 立即寻址 立即寻址也称为立即数, 它是在指令操作数中直接给出参加运算的操作数, 指令举例如下 : MOV A, #50H ( 这条指令是将立即数 50H 送到累加器 A 中 ) 8.2.2 直接寻址 在直接寻址方式中, 指令操作数域给出的是参加运算操作数的地址 直接寻址方式只能用来表示特殊功能寄存器 内部数据寄存器和位地址空间 其中特殊功能寄存器和位地址空间只能用直接寻址方式访问 举例如下 : ANL 50H, #91H ( 表示 50H 单元中的数与立即数 91H 相 与, 结果存放在 50H 单元中 其中 50H 为直接地址, 表示内部数据寄存器 RAM 中的一个单元 ) 8.2.3 间接寻址 间接寻址采用 R0 或 R1 前添加 @ 符号来表示 假设 R1 中的数据是 40H, 内部数据存储器 40H 单元的数据为 55H, 则指令为 MOV A, @R1 ( 把数据 55H 传送至累加器 A) 8.2.4 寄存器寻址 寄存器寻址时对选定的工作寄存器 R7~R0 累加器 A 通用寄存器 B 地址寄存器和进位 C 中的数进行操作 其中寄存器 R7~R0 由指令码的低 3 位表示,ACC B DPTR 及进位位 C 隐含在指令码中 因此, 寄存器寻址也包含一种隐含寻址方式 寄存器工作区的选择由程序状态字寄存器 PSW 中的 RS1 RS0 来决定 指令操作数指定的寄存器均指当前工作区的寄存器 INC R0 是指 (R0)+1 R0 8.2.5 相对寻址 相对寻址是将程序计数器 PC 中的当前值与指令第二字节给出的数相加, 其结果作为转移指令的转移地址 转移地址也成为转移目的地址,PC 中的当前值成为基地址, 指令第二字节给出的数成为偏移量 由于目的地址是相对于 PC 中的基地址而言, 所以这种寻址方式成为相对寻址 偏移量为带符号的数, 所能表示的范围为 +127~- 128. 这种寻址方式主要用于转移指令 JC $+50H 表示若进位位 C 为 0, 则程序计数器 PC 中的内容不改变, 即不转移 若进位位 C 为 1, 则以 PC 中的当前值及基地址, 加上偏移量 50H 后所得到的结果作为该转移指令的目的地址 8.2.6 变址寻址 在变址寻址方式中, 指令操作数制定一个存放变址基址的变址寄存器 变址寻址时, 偏移量与变址基值相加, 其结果作为操作数的地址 变址寄存器有程序计数器 PC 和地址寄存器 DPTR MOVC A, @A+DPTR 表示累加器 A 为偏移量寄存器, 其内容与地址寄存器 DPTR 中的内容相加, 其结果作为操作数的地址, 取出该单元中的数送入累加器 A 中 8.2.7 位寻址 位寻址是指对一些可进行位操作的内部数据存储器 RAM 和特殊功能寄存器进行位操作时的寻址方式 在进行位操作时, 借助于进位位 C 作为位操作累加器, 指令操作数直接给出该位的地址, 然后根据操作码的性质对该位进行位操作 位地址与字节直接寻址中的字节地址编码方式完全一样, 主要由操作指令的性质加以区分, 使用时应特别注意 Page 35 of 104 V0.4

MOV C, 20H ( 将地址为 20H 的位操作寄存器值送入进位位 C 中 ) 9 INTERRUPT 中断 SC92F854X 单片机提供 13 个中断源 :Timer0,Timer1,Timer2,INT0~2,ADC,PWM,UART,SSI, Base Timer,TK,CMP 这 13 个中断源分为 2 个中断优先级, 并可以单独分别设置为高优先级或者低优先级 三个外部中断可以分别设定其中每个中断源的触发条件为上升 下降或上下沿, 每个中断分别有独立的优先级设置位 中断标志 中断向量和使能位, 总的使能位 EA 可以实现所有中断的打开或者关闭 9.1 中断源 向量 SC92F854X 的中断源 中断向量 及相关控制位列表如下 : 中断源 中断发生时间 中断标志 中断使能控制 中断优先权控制 中断向量查询优先级 INT0 外部中断 0 条件符合 Timer0 Timer0 溢出 INT1 外部中断 1 条件符合 Timer1 UART Timer2 ADC SSI Timer1 溢出 接收或发送完成 Timer2 溢出 ADC 转换完成 接收或发送完成 中断号 (C51) 标志清除方式 Page 36 of 104 V0.4 能否唤醒 STOP IE0 EINT0 IPINT0 0003H 1 ( 高 ) 0 H/W Auto 能 TF0 ET0 IPT0 000BH 2 1 H/W Auto 不能 IE1 EINT1 IPINT1 0013H 3 2 H/W Auto 能 TF1 ET1 IPT1 001BH 4 3 H/W Auto 不能 RI/TI EUART IPUART 0023H 5 4 必须用户 清除 TF2 ET2 IPT2 002BH 6 5 必须用户 清除 ADCIF EADC IPADC 0033H 7 6 必须用户 清除 SPIF/TWIF ESSI IPSPI 003BH 8 7 必须用户 清除 PWM PWM 溢出 PWMIF EPWM IPPWM 0043H 9 8 必须用户 清除 BTM Base timer 溢出 INT2 外部中断 2 条件符合 TK CMP Touch Key 计数器溢出 比较器中断条件符合 BTMIF EBTM IPBTM 004BH 10 9 H/W Auto 能 - EINT2 IPINT2 0053H 11 10 - 能 TKIF ETK IPTK 005BH 12 11 H/W Auto 不能 CMPIF ECMP IPCMP 0063H 13 12 必须用户 清除 在 EA=1 及各中断使能控制为 1 的情况下, 各中断发生情况如下 : 定时器中断 :Timer0 和 Timer1 溢出时会产生中断并将中断标志 TF0 和 TF1 置为 1, 当单片机执行该定时器中断时, 中断标志 TF0 和 TF1 会被硬件自动清 0 Timer2 溢出时会产生中断并将中断标志 TF2 置为 1, 在 Timer2 中断发生后, 硬件并不会自动清除 TF2 位, 此 bit 必须由使用者的软件负责清除 UART 中断 : 当 UART0 接收或发送一帧数据完成时 RI 或 TI 位会被硬件自动置 1,UART 中断产生 在 UART 中断发生后, 硬件并不会自动清除 RI/TI 位, 此 bit 必须由使用者的软件负责清除 ADC 中断 :ADC 中断的发生时间为 ADC 转换完成时, 其中断标志就是 ADC 转换结束标志 EOC/ADCIF (ADCCON.5) 当使用者设定 ADCS 开始转换后,EOC 会被硬件自动清除为 0 ; 当转换完成后,EOC 会被硬件自动置为 1 使用者在 ADC 中断发生之后, 进入中断服务程序时, 必须用软件去清除它 SSI 中断 : 当 SSI 接收或发送一帧数据完成时 SPIF/TWIF 位会被硬件自动置 1,SSI 中断产生 当单片机执行该 SSI 中断时, 中断标志 SPIF/TWIF 必须由使用者的软件负责清除 PWM 中断 : 当 PWM 计数器溢出时 ( 也就是说 : 数到超过 PWMPD 时 ), 此位会被硬件自动设定成 1 如果此 不能 不能 不能 不能 不能 能

时 IE1[1] (EPWM) 也是被设定成 1,PWM 的中断产生 在 PWM 中断发生后, 硬件并不会自动清除此位, 此位必须由使用者的软件负责清除 外部中断 INT0~2: 当外部中断口有中断条件发生时, 外部中断就发生了 其中 INT0 和 INT1 会产生中断标志为 IE0/IE1, 用户不需要处理, 硬件会自动清除 INT0 有四个外部中断源,INT1 有八个外部中断源,INT2 有四个外部中断源, 用户可以根据需要设成上沿 下沿或者双沿中断, 可通过设置 SFR (INTxF 和 INTxR) 来实现 用户可通过 IP 寄存器来设置每个中断的优先级级别 外部中断 INT0~2 还可以唤醒单片机的 STOP Page 37 of 104 V0.4

9.2 中断结构图 SC92F854X 的中断结构如下图所示 : INT0 IE[7] (EA) IE[0](EINT0) TCON[1](IE0) Interrupt to 03h Timer-0 IE[7] (EA) IE[1] (ET0) TCON[5] (TF0) Interrupt to 0Bh INT1 IE[7] (EA) IE[2] (EINT1) TCON[3](IE1) Interrupt to 13h Timer-1 IE[7] (EA) IE[3] (ET1) TCON[7] (TF1) Interrupt to 1Bh UART Timer-2 ADC SSI IE[7] (EA) IE[4] (EUART) SCON[1:0] (TI/RI) IE[7] (EA) IE[5] (ET2) T2CON[7] (TF2) IE[7] (EA) IE[6] (EADC) ADCCON[5] (EOC/ADCIF) IE[7] (EA) IE1[0] (ESSI) SPIF/TWIF Interrupt to 23h Interrupt to 2Bh Interrupt to 33h Interrupt to 3Bh PWM IE[7] (EA) IE1[1] (EPWM) PWMCFG[6] (PWMIF) Interrupt to 43h BTM IE[7] (EA) IE1[2] (EBTM) BTMCON[6] (BTMIF) Interrupt to 4Bh INT2 IE[7] (EA) IE1[3] (EINT2) Interrupt to 53h TK IE[7] (EA) IE1[4] (ETK) TKIF Interrupt to 5Bh CMP IE[7] (EA) IE1[5] (ECMP) CMPCON[6] (CMPIF) Interrupt to 63h SC92F854X 中断结构和向量 Page 38 of 104 V0.4

9.3 中断优先级 SC92F854X 单片机的中断具有两个中断优先级, 这些中断源的请求可编程为高优先级中断或者低优先级中断, 即可实现两级中断服务程序的嵌套 一个正在执行的低优先级中断能被高优先级中断请求所中断, 但不能被另一个同一优先级的中断请求所中断, 一直执行到结束, 遇到返回指令 RETI, 返回主程序后再执行一条指令才能响应新的中断请求 也就是说 : 1 低优先级中断可被高优先级中断请求所中断, 反之不能 ; 2 任何一种中断, 在响应过程中, 不能被同一优先级的中断请求所中断 中断查询顺序 :SC92F854X 单片机的同一优先级中断, 如果同时来几个中断, 则中断响应的优先顺序同 C51 中的中断查询号相同, 即查询号小的会优先响应, 查询号大的会慢响应 9.4 中断处理流程 当一个中断产生并且被 CPU 响应, 则主程序运行被中断, 将执行下述操作 1 当前正在执行的指令执行完 ; 2 PC 值被压入堆栈, 保护现场 ; 3 中断向量地址载入程序计数器 PC; 4 执行相应的中断服务程序 ; 5 中断服务程序结束并 RETI; 6 将 PC 值退栈, 并返回执行中断前的程序 在此过程中, 系统不会立即执行其它同一优先级的中断, 但会保留所发生的中断请求, 在当前中断处理结束后, 转去执行新的中断请求 9.5 中断相关 SFR 寄存器 IE (A8H) 中断使能寄存器 ( 读 / 写 ) 符号 EA EADC ET2 EUART ET1 EINT1 ET0 EINT0 读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写 上电初始值 0 0 0 0 0 0 0 0 位编号位符号说明 7 EA 中断使能的总控制 0: 关闭所有的中断 1: 打开所有的中断 6 EADC ADC 中断使能控制 0: 关闭 ADC 中断 1: 允许 ADC 转换完成时产生中断 5 ET2 Timer2 中断使能控制 0: 关闭 TIMER2 中断 1: 允许 TIMER2 中断 4 EUART UART 中断使能控制 0: 关闭 UART 中断 1: 允许 UART 中断 3 ET1 Timer1 中断使能控制 0: 关闭 TIMER1 中断 1: 允许 TIMER1 中断 2 EINT1 外部中断 1 使能控制 0: 关闭 INT1 中断 1: 打开 INT1 中断 1 ET0 Timer0 中断使能控制 Page 39 of 104 V0.4

0: 关闭 TIMER0 中断 1: 允许 TIMER0 中断 0 EINT0 外部中断 0 使能控制 0: 关闭 INT0 中断 1: 打开 INT0 中断 IP (B8H) 中断优先级控制寄存器 ( 读 / 写 ) 符号 - IPADC IPT2 IPUART IPT1 IPINT1 IPT0 IPINT0 读 / 写 - 读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写 上电初始值 x 0 0 0 0 0 0 0 位编号位符号说明 6 IPADC ADC 中断优先权选择 0:ADC 中断优先权为低 1:ADC 中断优先权为高 5 IPT2 Timer2 中断优先权选择 0:Timer2 中断优先权为低 1:Timer2 中断优先权为高 4 IPUART UART 中断优先权选择 0:UART 中断优先权为低 1:UART 中断优先权为高 3 IPT1 Timer1 中断优先权选择 0:Timer1 中断优先权为低 1:Timer1 中断优先权为高 2 IPINT1 INT1 计数器中断优先权选择 0:INT1 中断优先权为低 1:INT1 中断优先权为高 1 IPT0 Timer0 中断优先权选择 0:Timer0 中断优先权为低 1:Timer0 中断优先权为高 0 IPINT0 INT0 计数器中断优先权选择 0:INT0 中断优先权为低 1:INT0 中断优先权为高 7 - 保留 IE1 (A9H) 中断使能寄存器 1( 读 / 写 ) 符号 - - ECMP ETK EINT2 EBTM EPWM ESSI 读 / 写 - - 读写 读写 读 / 写 读 / 写 读 / 写 读 / 写 上电初始值 x x 0 0 0 0 0 0 位编号 位符号 说明 5 ECMP 模拟比较器中断使能控制 0: 关闭模拟比较器中断 1: 打开模拟比较器中断 4 ETK Touch Key 中断使能控制 0: 关闭 Touch Key 中断 1: 打开 Touch Key 中断 3 EINT2 外部中断 2 使能控制 Page 40 of 104 V0.4

0: 关闭 INT2 中断 1: 打开 INT2 中断 2 EBTM Base Timer 中断使能控制 0: 关闭 Base Timer 中断 1: 允许 Base Timer 中断 1 EPWM PWM 中断使能控制 0: 关闭 PWM 中断 1: 允许 PWM 计数溢出时产生中断 0 ESSI 三合一串口中断使能控制 0: 关闭串口中断 1: 允许串口中断 7~6 - 保留 IP1 (B9H) 中断优先级控制寄存器 1( 读 / 写 ) 符号 - - IPCMP IPTK IPINT2 IPBTM IPPWM IPSSI 读 / 写 - - 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 上电初始值 x x 0 0 0 0 0 0 位编号 位符号 说明 5 IPCMP 模拟比较器中断优先权选择 0: 模拟比较器中断优先权为低 1: 模拟比较器中断优先权为高 4 IPTK Touch Key 中断优先权选择 0:Touch Key 中断优先权为低 1:Touch Key 中断优先权为高 3 IPINT2 INT2 计数器中断优先权选择 0:INT2 中断优先权为低 1:INT2 中断优先权为高 2 IPBTM Base Timer 中断优先权选择 0:Base Timer 中断优先权为低 1:Base Timer0 中断优先权为高 1 IPPWM PWM 中断使能选择 0: PWM 中断优先权为低 1: PWM 中断优先权为高 0 IPSSI 三合一串口中断优先权选择 0: SSI 中断优先权为低 1: SSI 中断优先权为高 7~5 - 保留 TCON (88H) 定时器控制寄存器 ( 读写 ) 符号 TF1 TR1 TF0 TR0 IE1 - IE0 - 读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写 - 读 / 写 - 上电初始值 0 0 0 0 0 x 0 x 位编号位符号说明 3 IE1 INT1 溢出中断请求标志 INT1 产生溢出, 发生中断时, 硬件将 IE1 置 为 1, 申请中断,CPU 响应时, 硬件清 0 1 IE0 INT0 溢出中断请求标志 INT0 产生溢出, 发生中断时, 硬件将 IE0 置 为 1, 申请中断,CPU 响应时, 硬件清 0 2,0 - 保留 Page 41 of 104 V0.4

INT0F (BAH) INT0 下降沿中断控制寄存器 ( 读 / 写 ) 符号 INT0F7 INT0F6 INT0F5 INT0F4 - - - - 读 / 写读 / 写读 / 写读 / 写读 / 写 - - - - 上电初始值 0 0 0 0 x x x x 位编号 位符号 说明 7~4 INT0Fn (n=7~4) INT0 下降沿中断控制 0 : INT0n 下降沿中断关闭 1: INT0n 下降沿中断使能 3~0 - 保留 INT0R (BBH) INT0 上升沿中断控制寄存器 ( 读 / 写 ) 符号 INT0R7 INT0R6 INT0R5 INT0R4 - - - - 读 / 写读 / 写读 / 写读 / 写读 / 写 - - - - 上电初始值 0 0 0 0 x x x x 位编号 位符号 说明 7~4 INT0Rn (n=7~4) INT0 上升沿中断控制 0 : INT0n 上升沿中断关闭 1: INT0n 上升沿中断使能 3~0 - 保留 INT1F (BCH) INT1 下降沿中断控制寄存器 ( 读 / 写 ) 符号 INT1F7 INT1F6 INT1F5 INT1F4 INT1F3 INT1F2 INT1F1 INT1F0 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 上电初始值 0 0 0 0 0 0 0 0 位编号 位符号 说明 7~0 INT1Fn (n=7~0) INT1 下降沿中断控制 0 : INT1n 下降沿中断关闭 1: INT1n 下降沿中断使能 INT1R (BDH) INT1 上升沿中断控制寄存器 ( 读 / 写 ) 符号 INT1R7 INT1R6 INT1R5 INT1R4 INT1R3 INT1R2 INT1R1 INT1R0 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 上电初始值 0 0 0 0 0 0 0 0 位编号 位符号 说明 7~0 INT1Rn (n=7~0) INT1 上升沿中断控制 0 : INT1n 上升沿中断关闭 1: INT1n 上升沿中断使能 INT2F (C6H) INT2 下降沿中断控制寄存器 ( 读 / 写 ) 符号 - - - - INT2F3 INT2F2 INT2F1 INT2F0 读 / 写 - - - - 读 / 写 读 / 写 读 / 写 读 / 写 上电初始值 x x x x 0 0 0 0 Page 42 of 104 V0.4

位编号 位符号 说明 3~0 INT2Fn (n=3~0) INT2 下降沿中断控制 0 : INT2n 下降沿中断关闭 1: INT2n 下降沿中断使能 7~4 - 保留 INT2R (C7H) INT1 上升沿中断控制寄存器 ( 读 / 写 ) 符号 - - - - INT2R3 INT2R2 INT2R1 INT2R0 读 / 写 - - - - 读 / 写 读 / 写 读 / 写 读 / 写 上电初始值 x x x x 0 0 0 0 位编号 位符号 说明 3~0 INT2Rn (n=3~0) INT2 上升沿中断控制 0 : INT2n 上升沿中断关闭 1: INT2n 上升沿中断使能 7~4 - 保留 10 定时器 TIMER0 TIMER1 SC92F854X 单片机内部的两个 16 位定时器 / 计数器, 它们具有计数方式和定时方式两种工作模式 特殊功能寄存器 TMOD 中有一个控制位 C/Tx 来选择 T0 和 T1 是定时器还是计数器 它们本质上都是一个加法计数器, 只是计数的来源不同 定时器的来源为系统时钟或者其分频时钟, 但计数器的来源为外部管脚的输入脉冲 只有在 TRx=1 的时候,T0 和 T1 才会被打开计数 计数器模式下,P0.2/T0 和 P0.3/T1 管脚上的每一个脉冲,T0 和 T1 的计数值分别增加 1 定时器模式下, 可通过特殊功能寄存器 TMCON 来选择 T0 和 T1 的计数来源是 fsys/12 或 fsys (fsys 为分频后的系统时钟 ) 定时器 / 计数器 T0 有 4 种工作模式, 定时器 / 计数器 T1 有 3 种工作模式 ( 模式三不存在 ): 1 模式 0:13 位定时器 / 计数器模式 2 模式 1:16 位定时器 / 计数器模式 3 模式 2: 8 位自动重载模式 4 模式 3: 两个 8 位定时器 / 计数器模式在上述模式中,T0 和 T1 的模式 0 1 2 都相同, 模式 3 不同 10.1 T0 和 T1 相关特殊功能寄存器 符号地址说明 7 6 5 4 3 2 1 0 Reset 值 TCON 88H 定时器控制寄存器 TF1 TR1 TF0 TR0 IE1 - IE0-00000x0xb TMOD 89H 定时器工作模式寄存器 - C/T1 M11 M01 - C/T0 M10 M00 x000x000b TL0 8AH 定时器 0 低 8 位 TL0[7:0] 00000000b TL1 8BH 定时器 1 低 8 位 TL1[7:0] 00000000b TH0 8CH 定时器 0 高 8 位 TH0[7:0] 00000000b TH1 8DH 定时器 1 高 8 位 TH1[7:0] 00000000b TMCON 8EH 定时器频率控制寄存器 - - - - - T2FD T1FD T0FD xxxxx000b 各寄存器的解释说明如下 : TCON (88H) 定时器控制寄存器 ( 读 / 写 ) 符号 TF1 TR1 TF0 TR0 IE1 - IE0 - 读 / 写读 / 写读 / 写读 / 写读 / 写读 / 写 - 读 / 写 - 上电初始值 0 0 0 0 0 x 0 x Page 43 of 104 V0.4

位编号位符号说明 7 TF1 T1 溢出中断请求标志 T1 产生溢出, 发生中断时, 硬件将 TF1 置为 1, 申请中断,CPU 响应时, 硬件清 0 6 TR1 定时器 T1 的运行控制位 此位由软件置 1 和清 0 当 TR1=1 时, 允许 T1 开始计数 TR1=0 时禁止 T1 计数 5 TF0 T0 溢出中断请求标志 T0 产生溢出, 发生中断时, 硬件将 TF0 置为 1, 申请中断,CPU 响应时, 硬件清 0 4 TR0 定时器 T0 的运行控制位 此位由软件置位和清 0 当 TR0=1 时, 允许 T0 开始计数 TR0=0 时禁止 T0 计数 2,0 - 保留 TMOD (89H) 定时器工作模式寄存器 ( 读 / 写 ) 符号 - C/T1 M11 M01 - C/T0 M10 M00 读 / 写 - 读 / 写 读 / 写 读 / 写 - 读 / 写 读 / 写 读 / 写 上电初始值 x 0 0 0 x 0 0 0 T1 T0 位编号位符号说明 6 C/T1 TMOD[6] 控制定时器 1 0: 定时器,T1 计数来源于 fsys 分频 1: 计数器,T1 计数来源于外部管脚 T1/P0.3 5~4 M11,M01 定时器 / 计数器 1 模式选择 00 : 13 位定时器 / 计数器,TL1 高 3 位无效 01 : 16 位定时器 / 计数器,TL1 和 TH1 全 10 : 8 位自动重载定时器, 溢出时将 TH1 存放的值自动重装入 TL1 11 : 定时器 / 计数器 1 无效 ( 停止计数 ) 2 C/T0 TMOD[2] 控制定时器 0 0: 定时器,T0 计数来源于 fsys 分频 1: 计数器,T0 计数来源于外部管脚 T0/P0.2 1~0 M10,M00 定时器 / 计数器 0 模式选择 00 : 13 位定时器 / 计数器,TL0 高 3 位无效 01 : 16 位定时器 / 计数器,TL0 和 TH0 全 10 : 8 位自动重载定时器, 溢出时将 TH0 存放的值自动重装入 TL0 11 : 定时器 0 此时作为双 8 位定时器 / 计数器 TL0 作为一个 8 位定时器 / 计数器, 通过标准定时器 0 的控制位控制 ;TH0 仅作为一个 8 位定时器, 由定时器 1 的控制位控制 7,3 - 保留 TMOD 寄存器中 TMOD[0]~TMOD[2] 是设置 T0 的工作模式 ;TMOD[4]~TMOD[6] 是设置 T1 的工作模式 定时器和计数器 Tx 功能由特殊功能寄存器 TMOD 的控制位 C/Tx 来选择,M0x 和 M1x 都是用来选择 Tx 的工作模式 TRx 作为 T0 和 T1 的开关控制, 只有 TRx=1 时 T0 和 T1 才打开 TMCON (8EH) 定时器频率控制寄存器 ( 读 / 写 ) 符号 - - - - - T2FD T1FD T0FD 读 / 写 - - - - - 读 / 写 读 / 写 读 / 写 上电初始值 x x x x x 0 0 0 Page 44 of 104 V0.4

位编号位符号说明 1 T1FD T1 输入频率选择控制 0:T1 频率源自于 fsys/12 1:T1 频率源自于 fsys 0 T0FD T0 输入频率选择控制 0:T0 频率源自于 fsys/12 1:T0 频率源自于 fsys IE (A8H) 中断使能寄存器 ( 读 / 写 ) 符号 EA EADC ET2 EUART ET1 EINT1 ET0 EINT0 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 上电初始值 0 0 0 0 0 0 0 0 位编号位符号说明 3 ET1 Timer1 中断使能控制 0: 关闭 TIMER1 中断 1: 允许 TIMER1 中断 1 ET0 Timer0 中断使能控制 0: 关闭 TIMER0 中断 1: 允许 TIMER0 中断 IP (B8H) 中断优先级控制寄存器 ( 读 / 写 ) 符号 - IPADC IPT2 IPUART IPT1 IPINT1 IPT0 IPINT0 读 / 写 - 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 读 / 写 上电初始值 x 0 0 0 0 0 0 0 位编号位符号说明 3 IPT1 Timer1 中断优先权 0: 设定 Timer 1 的中断优先权是 低 1: 设定 Timer 1 的中断优先权是 高 1 IPT0 Timer0 中断优先权 0: 设定 Timer 0 的中断优先权是 低 1: 设定 Timer 0 的中断优先权是 高 10.2 T0 工作模式 通过对寄存器 TMOD 中的 M10 M00(TMOD[1] TMOD[0]) 的设置, 定时器 / 计数器 0 可实现 4 种不同的工作模式 工作模式 0: 13 位计数器 / 定时器 TH0 寄存器存放 13 位计数器 / 定时器的高 8 位 (TH0.7~TH0.0),TL0 存放低 5 位 (TL0.4~TL0.0) TL0 的高三位 (TL0.7~TL0.5) 是不确定值, 读取时应被忽略掉 当 13 位定时器 / 计数器递增溢出时, 系统会将定时器溢出标志 TF0 置 1 如果定时器 0 中断被允许, 将会产生一个中断 C/T0 位选择计数器 / 定时器的时钟输入源 如果 C/T0=1, 定时器 0 输入脚 T0(P0.2) 的电平从高到低的变化, 会使定时器 0 数据寄存器加 1 如果 C/T0=0, 选择系统时钟的分频为定时器 0 的时钟源 当 TR0 置 1 打开定时器 T0 TR0 置 1 并不强行复位定时器, 意味着如果 TR0 置 1, 定时器寄存器将从上次 TR0 清 0 时的值开始计数 所以, 在允许定时器之前, 应该设定定时器寄存器的初始值 当作为定时器应用时, 可配置 T0FD 来选择时钟源的分频比例 Page 45 of 104 V0.4