深圳国芯人工智能有限公司
车规 AEC-Q100 Grade1 MCU 设计公司
STC8G 系列
单片机原理及应用
技术支持网站:www.STCAI.com
官方技术论坛:www.STCAIMCU.com
资料更新日期:2025/3/4
(本文档可直接添加备注和标记)
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
目录
1
1.1
1.1.1
1.1.2
1.1.3
1.2
1.3
1.4
2
2.1
2.1.1
2.1.2
2.1.3
2.1.4
2.1.5
2.1.6
2.1.7
2.1.8
2.1.9
2.1.10
2.1.11
2.1.12
2.1.13
2.1.14
2.1.15
2.1.16
2.1.17
2.2
2.2.1
2.2.2
2.2.3
2.2.4
2.2.5
2.2.6
2.2.7
2.2.8
2.2.9
2.2.10
2.2.11
2.2.12
单片机基础概述 ...................................................................................................................... 1
数制与编码 .............................................................................................................................. 1
数制转换 .................................................................................................................................. 1
原码、反码及补码 .................................................................................................................. 4
常用编码 .................................................................................................................................. 5
几种常用的逻辑运算及其图形符号 ...................................................................................... 5
STC8G 单片机性能概述 ......................................................................................................... 9
STC8G 单片机产品线 ............................................................................................................. 9
STC8G 系列各子系列选型简介、特性、价格、管脚图 .................................................. 10
STC8G1K08-36I-SOP8/DFN8 系列...................................................................................... 10
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机) .................................. 10
STC8G1K08-36I-SOP8/DFN8 管脚图,ISP 下载/编程线路图 .......................................... 12
管脚说明 ................................................................................................................................ 13
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯 ................................. 14
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯 ............................ 15
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V ........................... 16
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图............................. 17
USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择 ......................... 18
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图 ............................ 19
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图 ......................... 20
USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择 ......................... 21
USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图....................... 22
USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图 .......................... 23
USB-Link1D 支持 脱机下载 说明..................................................................................... 24
USB-Link1D 支持 脱机下载,如何免烧录环节 ............................................................... 25
USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录 ................................................ 27
USB-Writer1A 支持 自动烧录机,通信协议和接口 ........................................................ 28
STC8G1K08A-36I-SOP8/DFN8/DIP8 系列 ......................................................................... 30
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机) .................................. 30
STC8G1K08A-36I-SOP8/DFN8/DIP8 管脚图,ISP 下载/编程线路图.............................. 33
管脚说明 ................................................................................................................................ 34
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯 ................................. 36
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯 ............................ 37
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V ........................... 38
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图............................. 39
USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择 ......................... 40
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图 ............................ 41
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图 ......................... 42
USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择 ......................... 43
USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图....................... 44
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-i-
STC8G 系列技术手册
2.2.13
2.2.14
2.2.15
2.2.16
2.2.17
2.3
2.3.1
2.3.2
2.3.3
2.3.4
2.3.5
2.3.6
2.3.7
2.3.8
2.3.9
2.3.10
2.3.11
2.3.12
2.3.13
2.3.14
2.3.15
2.3.16
2.3.17
2.3.18
2.3.19
2.4
2.4.1
2.4.2
2.4.3
2.4.4
2.4.5
2.4.6
2.4.7
2.4.8
2.4.9
2.4.10
2.4.11
2.4.12
2.4.13
2.4.14
2.4.15
2.4.16
2.4.17
2.4.18
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图 .......................... 45
USB-Link1D 支持 脱机下载 说明..................................................................................... 46
USB-Link1D 支持 脱机下载,如何免烧录环节 ............................................................... 47
USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录 ................................................ 49
USB-Writer1A 支持 自动烧录机,通信协议和接口 ........................................................ 50
STC8G1K08-38I-TSSOP20/QFN20/SOP16 系列................................................................. 52
特性及价格 ............................................................................................................................ 52
STC8G1K08-38I-TSSOP20 管脚图,ISP 下载/编程线路图 .............................................. 55
STC8G1K08-38I-QFN20 管脚图,ISP 下载/编程线路图 .................................................. 57
STC8G1K08-38I-SOP16 管脚图,ISP 下载/编程线路图 ................................................... 59
管脚说明 ................................................................................................................................ 61
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯 ................................. 64
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯 ............................ 65
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V ........................... 66
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图............................. 67
USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择 ......................... 68
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图 ............................ 69
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图 ......................... 70
USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择 ......................... 71
USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图....................... 72
USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图 .......................... 73
USB-Link1D 支持 脱机下载 说明..................................................................................... 74
USB-Link1D 支持 脱机下载,如何免烧录环节 ............................................................... 75
USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录 ................................................ 77
USB-Writer1A 支持 自动烧录机,通信协议和接口 ........................................................ 78
STC8G2K64S4-36I-LQFP48/32、QFN48/32 系列(45 路增强型 PWM)....................... 80
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机) .................................. 80
STC8G2K64S4-36I-LQFP48/QFN48 管脚图,ISP 下载/编程线路图 ............................... 83
STC8G2K64S4-36I-LQFP32/QFN32 管脚图,ISP 下载/编程线路图 ............................... 85
STC8G2K64S4-36I-PDIP40 管脚图,ISP 下载/编程线路图 ............................................. 87
管脚说明 ................................................................................................................................ 89
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯 ................................. 95
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯 ............................ 96
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V ........................... 97
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图............................. 98
USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择 ......................... 99
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图 ...........................100
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图 ........................101
USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择 ........................102
USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图......................103
USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图 .........................104
USB-Link1D 支持 脱机下载 说明....................................................................................105
USB-Link1D 支持 脱机下载,如何免烧录环节 ..............................................................106
USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录 ...............................................108
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- ii -
STC8G 系列技术手册
2.4.19
2.5
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
2.5.6
2.5.7
2.5.8
2.5.9
2.5.10
2.5.11
2.5.12
2.5.13
2.5.14
2.5.15
2.5.16
2.5.17
2.5.18
2.6
2.6.1
2.6.2
2.6.3
2.6.4
2.6.5
2.6.6
2.6.7
2.7
2.7.1
2.7.2
2.7.3
2.7.4
2.7.5
2.7.6
2.8
2.9
2.9.1
2.9.2
2.9.3
2.9.4
3
3.1
3.1.1
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Writer1A 支持 自动烧录机,通信协议和接口 .......................................................109
STC8G2K64S2-36I-LQFP48/QFN48 系列(8 路增强型 PWM)..................................... 111
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机) ................................. 111
STC8G2K64S2-36I-LQFP48/QFN48 管脚图,ISP 下载/编程线路图 .............................. 114
STC8G2K64S2-36I-PDIP40 管脚图,ISP 下载/编程线路图 ............................................ 116
管脚说明 ............................................................................................................................... 118
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯 ................................124
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯 ...........................125
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V ..........................126
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图............................127
USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择 ........................128
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图 ...........................129
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图 ........................130
USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择 ........................131
USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图......................132
USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图 .........................133
USB-Link1D 支持 脱机下载 说明....................................................................................134
USB-Link1D 支持 脱机下载,如何免烧录环节 ..............................................................135
USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录 ...............................................137
USB-Writer1A 支持 自动烧录机,通信协议和接口 .......................................................138
STC15H-LQFP44/32、SOP28 系列(传统 STC15 系列提升性能特殊型号) ...............140
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机) .................................140
STC15H-LQFP44 管脚图,ISP 下载/编程线路图 .............................................................141
STC15H-PDIP40 管脚图,ISP 下载/编程线路图 ..............................................................143
STC15H-LQFP32/QFN32 管脚图,ISP 下载/编程线路图 ................................................145
STC15H-SOP28 管脚图,ISP 下载/编程线路图 ...............................................................147
USB-Link1D 对 STC15H 系列进行自动串口烧录、仿真+串口通讯 ..............................148
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯 ...........................149
USB-Link1D 工具使用注意事项.........................................................................................150
工具接口说明 .......................................................................................................................150
附送的各种强大的人性化配线图片及使用说明 ...............................................................151
USB-Link1D 实际应用 ........................................................................................................156
USB-Link1D 插上电脑并正常识别到后的显示 .................................................................163
如电脑端新版本 ISP 软件提示 USB-Link1D 工具固件需升级 ........................................164
制作 USB-Link1D 主控芯片................................................................................................165
ISP 下载相关硬件选项的说明 ............................................................................................168
通用 USB 转双串口芯片: USB-2UART, TSSOP20/SOP16 ............................................169
通用 USB 转双串口芯片 USB-2UART-45I-TSSOP20,自动停电上电 ...........................169
通用 USB 转双串口芯片 USB-2UART-45I-TSSOP20,手动停电上电 ...........................170
通用 USB 转双串口芯片 USB-2UART-45I- SOP16,自动停电上电 ...............................171
通用 USB 转双串口芯片 USB-2UART-45I-SOP16,手动停电上电 ................................172
功能脚切换 ...........................................................................................................................173
功能脚切换相关寄存器 .......................................................................................................173
外设端口切换控制寄存器 1(P_SW1),串口 1、CCP、SPI 切换 .................................173
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- iii -
STC8G 系列技术手册
3.1.2
3.1.3
3.2
3.2.1
3.2.2
3.2.3
3.2.4
3.2.5
3.2.6
3.2.7
3.2.8
3.2.9
4
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
5
5.1
5.1.1
5.1.2
5.2
5.3
5.4
5.4.1
5.4.2
5.4.3
5.4.4
5.4.5
5.4.6
5.5
5.5.1
5.5.2
5.5.3
5.6
5.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
外设端口切换控制寄存器 2(P_SW2),串口 2/3/4、I2C、比较器输出切换 ...............175
时钟选择寄存器(MCLKOCR) .......................................................................................176
范例程序 ...............................................................................................................................177
串口 1 切换 ...........................................................................................................................177
串口 2 切换 ...........................................................................................................................178
串口 3 切换 ...........................................................................................................................180
串口 4 切换 ...........................................................................................................................181
SPI 切换 ................................................................................................................................183
PCA/CCP/PWM 切换 ...........................................................................................................184
I2C 切换 ................................................................................................................................186
比较器输出切换 ...................................................................................................................188
主时钟输出切换 ...................................................................................................................189
封装尺寸图 ...........................................................................................................................192
SOP8 封装尺寸图 .................................................................................................................192
DFN8 封装尺寸图(3mm*3mm) ......................................................................................193
SOP16 封装尺寸图 ...............................................................................................................194
TSSOP20 封装尺寸图 ..........................................................................................................195
QFN20 封装尺寸图(3mm*3mm) ....................................................................................196
LQFP32 封装尺寸图(9mm*9mm) ..................................................................................197
QFN32 封装尺寸图(4mm*4mm) ....................................................................................198
LQFP48 封装尺寸图(9mm*9mm) ..................................................................................199
QFN48 封装尺寸图(6mm*6mm) ....................................................................................200
LQFP64S 封装尺寸图(12mm*12mm) ............................................................................201
QFN64 封装尺寸图(8mm*8mm) ....................................................................................202
STC8G 系列单片机命名规则 ..............................................................................................203
编译、仿真开发环境的建立与 ISP 下载 ...........................................................................204
安装 Keil ...............................................................................................................................204
安装 C51 编译环境 ..............................................................................................................204
如何同时安装 Keil 的 C51、C251 和 MDK .......................................................................207
添加型号和头文件到 Keil ...................................................................................................208
STC 单片机程序中头文件的使用方法 ...............................................................................210
新建项目与项目设置 ...........................................................................................................212
设置项目路径和项目名称 ...................................................................................................212
选择目标单片机型号(STC8H8K64U) ...........................................................................213
添加源代码文件到项目 .......................................................................................................214
设置项目 1(设置“Memory Model”) ...............................................................................215
设置项目 3(“Code Rom Size”选择 Large) .....................................................................217
设置项目 5(HEX 文件格式设置) ...................................................................................218
如何在 Keil C51 中对变量、表格数据、函数指定绝对地址 ...........................................219
Keil C51 中,变量如何指定绝对地址 ................................................................................219
Keil C51 中,表格数据如何指定绝对地址 ........................................................................220
Keil C51 中,函数如何指定绝对地址 ................................................................................222
Keil 软件中获取帮助的简单方法 .......................................................................................224
在 Keil 中建立多文件项目的方法 ......................................................................................227
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- iv -
STC8G 系列技术手册
5.8
5.9
5.9.1
5.9.2
5.10
5.11
5.11.1
5.11.2
5.11.3
5.11.4
5.11.5
5.11.6
5.11.7
5.11.8
5.11.9
5.11.10
5.11.11
5.11.12
5.11.13
5.11.14
5.11.15
5.11.16
5.11.17
5.11.18
5.11.19
5.11.20
5.12
5.13
5.13.1
5.13.2
5.13.3
5.13.4
5.13.5
6
6.1
6.2
6.3
6.3.1
6.3.2
6.3.3
6.3.4
6.3.5
6.3.6
6.3.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Keil 小技巧----在多文件项目的源文件中声明并使用外部变量和外部函数 ..................230
扩展 Keil 对中断号数量的支持,中断号大于 31 编译出错的处理.................................232
如何下载 Keil 中断号拓展工具,及安装 ..........................................................................232
如不使用扩展中断号工具,则需借用保留中断号进行中转 ...........................................235
用户程序复位到系统区进行 USB 模式 ISP 下载的方法(不停电) ..............................244
ISP 下载流程及典型应用线路图 ........................................................................................247
ISP 下载流程图(串口下载模式) ....................................................................................247
ISP 下载流程图(硬件/软件模拟 USB+串口模式) ........................................................248
使用 USB-Link1D 工具下载,支持在线和脱机下载 ........................................................249
软件模拟 USB 直接 ISP 下载,建议尝试,不支持仿真(5V 系统) ............................252
软件模拟 USB 直接 ISP 下载,建议尝试,不支持仿真(3.3V 系统) .........................254
使用一箭双雕之 USB 转串口工具下载 .............................................................................256
使用 USB 转双串口/TTL 下载(有外部晶振) ................................................................258
使用 USB 转双串口/TTL 下载(无外部晶振) ................................................................259
使用 USB 转双串口/TTL 下载(自动停电/上电) ...........................................................261
使用 USB 转双串口/RS485 下载(5.0V).........................................................................262
使用 USB 转双串口/RS485 下载(3.3V).........................................................................262
使用 USB 转双串口/RS232 下载(5.0V).........................................................................264
使用 USB 转双串口/RS232 下载(3.3V).........................................................................264
使用 U8-Mini 工具下载,支持 ISP 在线和脱机下载,也可支持仿真 ............................265
使用 U8W 工具下载,支持 ISP 在线和脱机下载,也可支持仿真 .................................267
使用 RS-232 转换器下载(无独立 VREF 脚),也可支持仿真 .......................................270
使用 RS-232 转换器下载(有独立 VREF 脚、一般精度 ADC),也可支持仿真 ..........271
使用 RS-232 转换器下载(有独立 VREF 脚、高精度 ADC),也可支持仿真 ..............272
使用 PL2303-GL 下载,也可支持仿真 ..............................................................................273
单片机电源控制参考电路 ...................................................................................................274
用 STC 一箭双雕之 USB 转双串口仿真 STC8 系列 MCU ...............................................275
AIapp-ISP 下载软件高级应用 .............................................................................................283
发布项目程序 .......................................................................................................................283
程序加密后传输(防烧录时串口分析出程序) ...............................................................287
发布项目程序+程序加密后传输结合使用 .........................................................................291
用户自定义下载(实现不停电下载) ...............................................................................293
如何简单的控制下载次数,通过 ID 号来限制实际可以下载的 MCU 数量 ..................297
时钟、复位、省电模式与系统电源管理,芯片上电工作过程 .......................................304
系统时钟控制 .......................................................................................................................304
芯片上电工作过程: ...........................................................................................................305
相关寄存器 ...........................................................................................................................306
系统时钟选择寄存器(CLKSEL) ....................................................................................307
时钟分频寄存器(CLKDIV) ............................................................................................307
内部高速高精度 IRC 控制寄存器(HIRCCR) ................................................................307
外部振荡器控制寄存器(XOSCCR) ...............................................................................308
内部 32KHz 低速 IRC 控制寄存器(IRC32KCR) ..........................................................308
主时钟输出控制寄存器(MCLKOCR) ...........................................................................309
内部高速 IRC 时钟恢复振荡到稳定需要等待的时钟数控制寄存器(IRCDB) ...........310
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-v-
STC8G 系列技术手册
6.4
6.4.1
6.4.2
6.4.3
6.4.4
6.4.5
6.5
6.5.1
6.5.2
6.5.3
6.5.4
6.5.5
6.5.6
6.6
6.6.1
6.6.2
6.7
6.7.1
6.7.2
6.8
6.8.1
6.9
6.9.1
6.9.2
6.9.3
6.9.4
6.9.5
6.9.6
6.9.7
6.9.8
6.9.9
6.9.10
6.9.11
6.9.12
6.9.13
6.9.14
6.9.15
7
7.1
7.2
7.2.1
7.2.2
7.2.3
7.2.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G 系列内部 IRC 频率调整 ......................................................................................... 311
IRC 频段选择寄存器(IRCBAND).................................................................................. 311
内部 IRC 频率调整寄存器(IRTRIM) ............................................................................. 311
内部 IRC 频率微调寄存器(LIRTRIM) ..........................................................................312
时钟分频寄存器(CLKDIV) ............................................................................................312
分频出 3MHz 用户工作频率,并用户动态改变频率追频示例 .......................................313
系统复位 ...............................................................................................................................316
看门狗复位(WDT_CONTR) ..........................................................................................317
软件复位(IAP_CONTR) .................................................................................................319
低压复位(RSTCFG) ........................................................................................................319
低电平上电复位参考电路(一般不需要) .......................................................................320
低电平按键手动复位参考电路 ...........................................................................................320
传统 8051 高电平上电复位参考电路 .................................................................................321
外部晶振及外部时钟电路 ...................................................................................................322
外部晶振输入电路 ...............................................................................................................322
外部时钟输入电路(P1.6 为高阻输入模式,可当输入口使用) ...................................322
时钟停振/省电模式与系统电源管理 ..................................................................................323
电源控制寄存器(PCON) ................................................................................................323
内部高速 IRC 时钟恢复振荡到稳定需要等待的时钟数控制寄存器(IRCDB) ...........324
掉电唤醒定时器 ...................................................................................................................325
掉电唤醒定时器计数寄存器(WKTCL,WKTCH) ......................................................325
范例程序 ...............................................................................................................................326
选择系统时钟源 ...................................................................................................................326
主时钟分频输出 ...................................................................................................................328
看门狗定时器应用 ...............................................................................................................330
软复位实现自定义下载 .......................................................................................................332
低压检测 ...............................................................................................................................334
省电模式 ...............................................................................................................................336
使用 INT0/INT1/INT2/INT3/INT4 管脚中断唤醒省电模式..............................................338
使用 T0/T1/T2/T3/T4 管脚中断唤醒 MCU 省电模式........................................................341
使用 RxD/RxD2/RxD3/RxD4 管脚中断唤醒 MCU 省电模式 ...........................................346
使用 I2C 的 SDA 脚唤醒 MCU 省电模式 ..........................................................................349
使用掉电唤醒定时器唤醒省电模式 ...................................................................................352
LVD 中断唤醒省电模式,建议配合使用掉电唤醒定时器...............................................354
使用 CCP0/CCP1/CCP2 管脚中断唤醒 MCU 省电模式 ...................................................356
比较器中断唤醒省电模式,建议配合使用掉电唤醒定时器 ...........................................359
使用 LVD 功能检测工作电压(电池电压) .....................................................................362
存储器 ...................................................................................................................................367
程序存储器 ...........................................................................................................................367
数据存储器 ...........................................................................................................................368
内部 RAM .............................................................................................................................368
程序状态寄存器(PSW) ...................................................................................................369
内部扩展 RAM,XRAM,XDATA ....................................................................................370
辅助寄存器(AUXR) ........................................................................................................370
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- vi -
STC8G 系列技术手册
7.2.5
7.2.6
7.2.7
7.2.8
7.3
7.3.1
7.3.2
7.3.3
7.3.4
7.3.5
7.3.6
7.3.7
7.3.8
8
8.1
8.2
8.3
8.4
8.5
8.6
8.7
9
9.1
9.1.1
9.1.2
9.1.3
9.1.4
9.1.5
9.1.6
9.1.7
9.2
9.3
9.3.1
9.3.2
9.3.3
9.3.4
9.3.5
9.3.6
9.3.7
9.3.8
9.4
9.4.1
9.4.2
9.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
外部扩展 RAM,XRAM,XDATA ....................................................................................371
总线速度控制寄存器(BUS_SPEED) .............................................................................371
8051 中可位寻址的数据存储器 ..........................................................................................372
扩展 SFR 使能寄存器 EAXFR 的使用说明 .......................................................................374
存储器中的特殊参数,在 ISP 下载时可烧录进程序 FLASH ..........................................375
读取内部 1.19V 参考信号源-BGV 值 (从 Flash 程序存储器(ROM)中读取) ...........377
读取内部 1.19V 参考信号源-BGV 值 (从 RAM 中读取) .................................................380
读取全球唯一 ID 号 (从 Flash 程序存储器(ROM)中读取) ........................................383
读取全球唯一 ID 号 (从 RAM 中读取) .............................................................................386
读取 32K 掉电唤醒定时器的频率 (从 Flash 程序存储器(ROM)中读取) .................389
读取 32K 掉电唤醒定时器的频率 (从 RAM 中读取) .......................................................392
用户自定义内部 IRC 频率 (从 Flash 程序存储器(ROM)中读取) .............................396
用户自定义内部 IRC 频率 (从 RAM 中读取) ...................................................................401
特殊功能寄存器 ...................................................................................................................404
STC8G1K08 系列 .................................................................................................................404
STC8G1K08-8Pin 系列 ........................................................................................................405
STC8G1K08A 系列 ..............................................................................................................406
STC8G2K64S4 系列 .............................................................................................................407
STC8G2K64S2 系列 .............................................................................................................410
STC15H2K64S4 系列 ...........................................................................................................413
特殊功能寄存器列表 ...........................................................................................................416
I/O 口 ....................................................................................................................................430
I/O 口相关寄存器 .................................................................................................................431
端口数据寄存器(Px) .......................................................................................................433
端口模式配置寄存器(PxM0,PxM1) ............................................................................433
端口上拉电阻控制寄存器(PxPU) ..................................................................................434
端口施密特触发控制寄存器(PxNCS) ...........................................................................434
端口电平转换速度控制寄存器(PxSR) ..........................................................................434
端口驱动电流控制寄存器(PxDR) .................................................................................435
端口数字信号输入使能控制寄存器(PxIE) ...................................................................435
配置 I/O 口............................................................................................................................436
I/O 的结构图.........................................................................................................................437
准双向口(弱上拉) ...........................................................................................................437
推挽输出 ...............................................................................................................................437
高阻输入 ...............................................................................................................................438
开漏模式 ...............................................................................................................................438
新增 4.1K 上拉电阻 .............................................................................................................439
如何设置 I/O 口对外输出速度 ............................................................................................439
如何设置 I/O 口电流驱动能力 ............................................................................................440
如何降低 I/O 口对外辐射 ....................................................................................................440
AIapp-ISP | I/O 口配置工具 .................................................................................................441
普通配置模式 .......................................................................................................................441
高级配置模式 .......................................................................................................................442
范例程序 ...............................................................................................................................443
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - vii -
STC8G 系列技术手册
9.5.1
9.5.2
9.6
9.7
9.8
9.9
9.10
9.11
9.12
10
10.1
10.1.1
10.1.2
10.1.3
10.1.4
10.1.5
10.1.6
10.1.7
10.2
10.3
10.4
10.5
11
11.1
11.2
11.3
11.4
11.4.1
11.4.2
11.4.3
11.5
11.5.1
11.5.2
11.5.3
11.5.4
11.5.5
11.5.6
11.5.7
11.5.8
11.5.9
11.5.10
11.5.11
11.5.12
11.5.13
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
端口模式设置 .......................................................................................................................443
双向口读写操作 ...................................................................................................................444
一种典型三极管控制电路 ...................................................................................................447
典型发光二极管控制电路 ...................................................................................................447
混合电压供电系统 3V/5V 器件 I/O 口互连 .......................................................................448
如何让 I/O 口上电复位时为低电平 ....................................................................................450
利用 74HC595 驱动 8 个数码管(串行扩展,3 根线)的线路图 ...........................................451
I/O 口直接驱动 LED 数码管应用线路图 ...........................................................................452
用 STC 系列 MCU 的 I/O 口直接驱动段码 LCD ..............................................................453
指令系统 ...............................................................................................................................472
寻址方式 ...............................................................................................................................472
立即寻址 ...............................................................................................................................472
直接寻址 ...............................................................................................................................472
间接寻址 ...............................................................................................................................472
寄存器寻址 ...........................................................................................................................472
相对寻址 ...............................................................................................................................472
变址寻址 ...............................................................................................................................473
位寻址 ...................................................................................................................................473
指令表 ...................................................................................................................................473
指令详解(中文) ...............................................................................................................476
指令详解(英文) ...............................................................................................................509
多级流水线内核的中断响应 ...............................................................................................544
中断系统 ...............................................................................................................................546
STC8G 系列中断源 ..............................................................................................................546
STC8G 中断结构图 ..............................................................................................................548
STC8G 系列中断列表 ..........................................................................................................549
中断相关寄存器 ...................................................................................................................552
中断使能寄存器(中断允许位) .......................................................................................555
中断请求寄存器(中断标志位) .......................................................................................561
中断优先级寄存器 ...............................................................................................................565
范例程序 ...............................................................................................................................569
INT0 中断(上升沿和下降沿),可同时支持上升沿和下降沿 ........................................569
INT0 中断(下降沿) .........................................................................................................571
INT1 中断(上升沿和下降沿),可同时支持上升沿和下降沿 ........................................572
INT1 中断(下降沿) .........................................................................................................574
INT2 中断(下降沿),只支持下降沿中断........................................................................576
INT3 中断(下降沿),只支持下降沿中断........................................................................578
INT4 中断(下降沿),只支持下降沿中断........................................................................580
定时器 0 中断 .......................................................................................................................582
定时器 1 中断 .......................................................................................................................583
定时器 2 中断 .......................................................................................................................585
定时器 3 中断 .......................................................................................................................587
定时器 4 中断 .......................................................................................................................590
UART1 中断 .........................................................................................................................592
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - viii -
STC8G 系列技术手册
11.5.14
11.5.15
11.5.16
11.5.17
11.5.18
11.5.19
11.5.20
11.5.21
11.5.22
11.5.23
12
12.1
12.2
12.2.1
12.2.2
12.2.3
12.2.4
12.2.5
12.2.6
12.2.7
12.2.8
12.2.9
12.2.10
12.2.11
12.2.12
12.2.13
12.2.14
12.2.15
12.3
12.3.1
12.3.2
12.3.3
12.3.4
12.3.5
12.3.6
12.4
12.4.1
12.4.2
12.4.3
12.4.4
12.4.5
12.4.6
12.4.7
12.4.8
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART2 中断 .........................................................................................................................594
UART3 中断 .........................................................................................................................597
UART4 中断 .........................................................................................................................599
ADC 中断 .............................................................................................................................602
LVD 中断 ..............................................................................................................................604
PCA 中断 ..............................................................................................................................606
SPI 中断 ................................................................................................................................609
比较器中断 ........................................................................................................................... 611
PWM 中断 ............................................................................................................................613
I2C 中断 ................................................................................................................................615
定时器/计数器 ......................................................................................................................619
定时器的相关寄存器 ...........................................................................................................620
定时器 0/1 .............................................................................................................................621
定时器 0/1 控制寄存器(TCON) .....................................................................................621
定时器 0/1 模式寄存器(TMOD) ....................................................................................622
定时器 0 模式 0(16 位自动重装载模式) .......................................................................623
定时器 0 模式 1(16 位不可重装载模式) .......................................................................624
定时器 0 模式 2(8 位自动重装载模式) .........................................................................625
定时器 0 模式 3(不可屏蔽中断 16 位自动重装载,实时操作系统节拍器)...............626
定时器 1 模式 0(16 位自动重装载模式) .......................................................................627
定时器 1 模式 1(16 位不可重装载模式) .......................................................................628
定时器 1 模式 2(8 位自动重装载模式) .........................................................................629
定时器 0 计数寄存器(TL0,TH0) .................................................................................630
定时器 1 计数寄存器(TL1,TH1) .................................................................................630
辅助寄存器 1(AUXR) .....................................................................................................630
中断与时钟输出控制寄存器(INTCLKO) ......................................................................630
定时器 0 定时计算公式 .......................................................................................................631
定时器 1 定时计算公式 .......................................................................................................632
定时器 2(24 位定时器,8 位预分频+16 位定时) .........................................................633
辅助寄存器 1(AUXR) .....................................................................................................633
中断与时钟输出控制寄存器(INTCLKO) ......................................................................633
定时器 2 计数寄存器(T2L,T2H) .................................................................................633
定时器 2 的 8 位预分频寄存器(TM2PS) .......................................................................633
定时器 2 工作模式 ...............................................................................................................634
定时器 2 计算公式 ...............................................................................................................634
定时器 3/4(24 位定时器,8 位预分频+16 位定时) ......................................................635
定时器 4/3 控制寄存器(T4T3M)....................................................................................635
定时器 3 计数寄存器(T3L,T3H) .................................................................................636
定时器 4 计数寄存器(T4L,T4H) .................................................................................636
定时器 3 的 8 位预分频寄存器(TM3PS) .......................................................................636
定时器 4 的 8 位预分频寄存器(TM4PS) .......................................................................636
定时器 3 工作模式 ...............................................................................................................637
定时器 4 工作模式 ...............................................................................................................638
定时器 3 计算公式 ...............................................................................................................639
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- ix -
STC8G 系列技术手册
12.4.9
12.5
12.6
12.6.1
12.6.2
12.6.3
12.6.4
12.6.5
12.6.6
12.6.7
12.6.8
12.6.9
12.6.10
12.6.11
12.6.12
12.6.13
12.6.14
12.6.15
12.6.16
12.6.17
12.6.18
12.6.19
12.6.20
12.6.21
12.6.22
12.6.23
12.6.24
12.6.25
12.6.26
12.6.27
12.6.28
12.6.29
12.6.30
13
13.1
13.2
13.3
13.3.1
13.3.2
13.3.3
13.3.4
13.3.5
13.3.6
13.3.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 4 计算公式 ...............................................................................................................639
AIapp-ISP | 定时器计算器工具 ..........................................................................................640
范例程序 ...............................................................................................................................641
定时器 0(模式 0-16 位自动重载),用作定时 ..............................................................641
定时器 0(模式 1-16 位不自动重载)
,用作定时 ..........................................................642
定时器 0(模式 2-8 位自动重载),用作定时 ................................................................644
定时器 0(模式 3-16 位自动重载不可屏蔽中断)
,用作定时 ......................................646
定时器 0(外部计数-扩展 T0 为外部下降沿中断) ......................................................648
定时器 0(测量脉宽-INT0 高电平宽度).......................................................................650
定时器 0(模式 0),时钟分频输出 ...................................................................................652
定时器 1(模式 0-16 位自动重载),用作定时 ..............................................................654
定时器 1(模式 1-16 位不自动重载)
,用作定时 ..........................................................656
定时器 1(模式 2-8 位自动重载),用作定时 ................................................................657
定时器 1(外部计数-扩展 T1 为外部下降沿中断) ......................................................659
定时器 1(测量脉宽-INT1 高电平宽度).......................................................................661
定时器 1(模式 0),时钟分频输出 ...................................................................................663
定时器 1(模式 0)做串口 1 波特率发生器 .....................................................................665
定时器 1(模式 2)做串口 1 波特率发生器 .....................................................................669
定时器 2(16 位自动重载),用作定时 .............................................................................673
定时器 2(外部计数-扩展 T2 为外部下降沿中断) ......................................................675
定时器 2,时钟分频输出 ....................................................................................................677
定时器 2 做串口 1 波特率发生器 .......................................................................................679
定时器 2 做串口 2 波特率发生器 .......................................................................................682
定时器 2 做串口 3 波特率发生器 .......................................................................................686
定时器 2 做串口 4 波特率发生器 .......................................................................................690
定时器 3(16 位自动重载),用作定时 .............................................................................694
定时器 3(外部计数-扩展 T3 为外部下降沿中断) ......................................................697
定时器 3,时钟分频输出 ....................................................................................................699
定时器 3 做串口 3 波特率发生器 .......................................................................................701
定时器 4(16 位自动重载),用作定时 .............................................................................705
定时器 4(外部计数-扩展 T4 为外部下降沿中断) ......................................................708
定时器 4,时钟分频输出 ....................................................................................................710
定时器 4 做串口 4 波特率发生器 .......................................................................................712
串口通信 ...............................................................................................................................717
串口功能脚切换 ...................................................................................................................718
串口相关寄存器 ...................................................................................................................719
串口 1 ....................................................................................................................................720
串口 1 控制寄存器(SCON) ............................................................................................720
串口 1 数据寄存器(SBUF) .............................................................................................721
电源管理寄存器(PCON) ................................................................................................721
辅助寄存器 1(AUXR) .....................................................................................................721
串口 1 模式 0,模式 0 波特率计算公式 ............................................................................722
串口 1 模式 1,模式 1 波特率计算公式 ............................................................................724
串口 1 模式 2,模式 2 波特率计算公式 ............................................................................726
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-x-
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.3.8 串口 1 模式 3,模式 3 波特率计算公式 ............................................................................727
13.3.9 自动地址识别,从机地址控制寄存器(SADDR,SADEN).........................................728
13.4
串口 2 ....................................................................................................................................729
13.4.1 串口 2 控制寄存器(S2CON) ..........................................................................................729
13.4.2 串口 2 数据寄存器(S2BUF) ...........................................................................................729
13.4.3 串口 2 模式 0,模式 0 波特率计算公式 ............................................................................730
13.4.4 串口 2 模式 1,模式 1 波特率计算公式 ............................................................................731
13.5
串口 3 ....................................................................................................................................732
13.5.1 串口 3 控制寄存器(S3CON) ..........................................................................................732
13.5.2 串口 3 数据寄存器(S3BUF) ...........................................................................................732
13.5.3 串口 3 模式 0,模式 0 波特率计算公式 ............................................................................733
13.5.4 串口 3 模式 1,模式 1 波特率计算公式 ............................................................................734
13.6
串口 4 ....................................................................................................................................735
13.6.1 串口 4 控制寄存器(S4CON) ..........................................................................................735
13.6.2 串口 4 数据寄存器(S4BUF) ...........................................................................................735
13.6.3 串口 4 模式 0,模式 0 波特率计算公式 ............................................................................736
13.6.4 串口 4 模式 1,模式 1 波特率计算公式 ............................................................................737
13.7
串口注意事项 .......................................................................................................................738
13.8
AIapp-ISP | 串口波特率计算器工具 ..................................................................................739
13.9
AIapp-ISP | 串口助手/USB-CDC ........................................................................................740
13.10
范例程序 ...............................................................................................................................744
13.10.1 串口 1 使用定时器 2 做波特率发生器 ...............................................................................744
13.10.2 串口 1 使用定时器 1(模式 0)做波特率发生器 .............................................................747
13.10.3 串口 1 使用定时器 1(模式 2)做波特率发生器 .............................................................751
13.10.4 串口 2 使用定时器 2 做波特率发生器 ...............................................................................755
13.10.5 串口 3 使用定时器 2 做波特率发生器 ...............................................................................759
13.10.6 串口 3 使用定时器 3 做波特率发生器 ...............................................................................763
13.10.7 串口 4 使用定时器 2 做波特率发生器 ...............................................................................767
13.10.8 串口 4 使用定时器 4 做波特率发生器 ...............................................................................771
13.10.9 串口多机通讯 .......................................................................................................................776
13.10.10 串口转 LIN 总线 ..................................................................................................................777
14
比较器,掉电检测,内部 1.19V 参考信号源(BGV)...................................................786
14.1
比较器内部结构图 ...............................................................................................................786
14.2
比较器功能脚切换 ...............................................................................................................787
14.3
比较器相关的寄存器 ...........................................................................................................788
14.3.1 比较器控制寄存器 1(CMPCR1) ....................................................................................788
14.3.2 比较器控制寄存器 2(CMPCR2) ....................................................................................789
14.4
范例程序 ...............................................................................................................................790
14.4.1 比较器的使用(中断方式) ...............................................................................................790
14.4.2 比较器的使用(查询方式) ...............................................................................................792
14.4.3 比较器的多路复用应用(比较器+ADC 输入通道)........................................................795
14.4.4 比较器作外部掉电检测(掉电过程中应及时保存用户数据到 EEPROM 中) .............797
14.4.5 比较器检测工作电压(电池电压) ...................................................................................798
15
IAP/EEPROM/DATA-FLASH ...........................................................................................802
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- xi -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
EEPROM 操作时间 ..............................................................................................................802
EEPROM 相关的寄存器 ......................................................................................................802
EEPROM 数据寄存器(IAP_DATA) ...............................................................................803
EEPROM 地址寄存器(IAP_ADDR) ..............................................................................803
EEPROM 命令寄存器(IAP_CMD) ................................................................................803
EEPROM 触发寄存器(IAP_TRIG) ................................................................................803
EEPROM 控制寄存器(IAP_CONTR) ............................................................................804
EEPROM 等待时间控制寄存器(IAP_TPS) ...................................................................804
EEPROM 大小及地址 ..........................................................................................................805
范例程序 ...............................................................................................................................809
EEPROM 基本操作 ..............................................................................................................809
使用 MOVC 读取 EEPROM ................................................................................................812
使用串口送出 EEPROM 数据 .............................................................................................816
串口 1 读写 EEPROM-带 MOVC 读...................................................................................820
口令擦除写入-多扇区备份-串口 1 操作.............................................................................827
16
ADC 模数转换,内部 1.19V 参考信号源(BGV) .........................................................836
16.1
ADC 相关的寄存器..............................................................................................................836
16.1.1 ADC 控制寄存器(ADC_CONTR),PWM 触发 ADC 控制 ...........................................837
16.1.2 ADC 配置寄存器(ADCCFG) .........................................................................................839
16.1.3 ADC 转换结果寄存器(ADC_RES,ADC_RESL) ........................................................840
16.1.4 ADC 时序控制寄存器..........................................................................................................841
16.2
ADC 相关计算公式..............................................................................................................842
16.2.1 ADC 速度计算公式..............................................................................................................842
16.2.2 ADC 转换结果计算公式......................................................................................................842
16.2.3 反推 ADC 输入电压计算公式 .............................................................................................843
16.2.4 反推工作电压计算公式 .......................................................................................................843
16.3
10 位 ADC 静态特性............................................................................................................844
16.4
12 位 ADC 静态特性............................................................................................................844
16.5
ADC 应用参考线路图..........................................................................................................845
16.5.1 无独立 VREF 脚参考线路图 ...............................................................................................845
16.5.2 有独立 VREF 脚、一般精度 ADC 参考线路图.................................................................846
16.5.3 有独立 VREF 脚、高精度 ADC 参考线路图.....................................................................847
16.6
AIapp-ISP | ADC 转换速度计算器工具 ..............................................................................848
16.7
范例程序 ...............................................................................................................................848
16.7.1 ADC 基本操作(查询方式) ..............................................................................................848
16.7.2 ADC 基本操作(中断方式) ..............................................................................................851
16.7.3 格式化 ADC 转换结果.........................................................................................................853
16.7.4 利用 ADC15 通道在内部固定接的 1.19V 辅助固定信号源,反推其他通道的输入电压或
VCC,只需计算一次 ..........................................................................................................................855
16.7.5 ADC 做电容感应触摸按键 ..................................................................................................860
16.7.6 ADC 作按键扫描应用线路图 ..............................................................................................866
16.7.7 检测负电压参考线路图 .......................................................................................................867
16.7.8 常用加法电路在 ADC 中的应用 .........................................................................................868
17
PCA/CCP/PWM 应用 .........................................................................................................869
15.1
15.2
15.2.1
15.2.2
15.2.3
15.2.4
15.2.5
15.2.6
15.3
15.4
15.4.1
15.4.2
15.4.3
15.4.4
15.4.5
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - xii -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
PCA 功能脚切换 ..................................................................................................................870
PCA 相关的寄存器 ..............................................................................................................870
PCA 控制寄存器(CCON) ...............................................................................................871
PCA 模式寄存器(CMOD) ..............................................................................................871
PCA 计数器寄存器(CL,CH) ........................................................................................871
PCA 模块模式控制寄存器(CCAPMn) ..........................................................................872
PCA 模块模式捕获值/比较值寄存器(CCAPnL,CCAPnH) .......................................872
PCA 模块 PWM 模式控制寄存器(PCA_PWMn)..........................................................873
PCA 工作模式 ......................................................................................................................874
捕获模式 ...............................................................................................................................874
软件定时器模式 ...................................................................................................................875
高速脉冲输出模式 ...............................................................................................................875
PWM 脉宽调制模式及频率计算公式.................................................................................876
利用 CCP/PCA/PWM 模块实现 8~16 位 DAC 的参考线路图 ..........................................880
范例程序 ...............................................................................................................................881
PCA 输出 PWM(6/7/8/10 位) .........................................................................................881
PCA 捕获测量脉冲宽度 ......................................................................................................884
PCA 实现 16 位软件定时 ....................................................................................................887
PCA 实现 16 位软件定时(ECI 外部时钟模式) .............................................................891
PCA 输出高速脉冲 ..............................................................................................................894
PCA 扩展外部中断 ..............................................................................................................897
18
精度可达 15 位的增强型 PWM(最多可输出 45 路各自独立的 PWM) .....................900
18.1
PWM 相关的寄存器 ............................................................................................................901
18.1.1 增强型 PWM 全局配置寄存器(PWMSET) ...................................................................910
18.1.2 增强型 PWM 配置寄存器(PWMCFGn) ........................................................................ 911
18.1.3 PWM 中断标志寄存器(PWMnIF) .................................................................................912
18.1.4 PWM 异常检测控制寄存器(PWMnFDCR) ...................................................................912
18.1.5 PWM 计数器寄存器(PWMnCH,PWMnCL) ...............................................................913
18.1.6 PWM 时钟选择寄存器(PWMnCKS),输出频率计算公式 ...........................................914
18.1.7 PWM 触发 ADC 计数器寄存器(PWMnTADC) ............................................................915
18.1.8 PWM 电平输出设置计数值寄存器(PWMnT1,PWMnT2) .........................................915
18.1.9 PWM 通道控制寄存器(PWMnCR) ................................................................................920
18.1.10 PWM 通道电平保持控制寄存器(PWMnHLD) .............................................................922
18.2
范例程序 ...............................................................................................................................924
18.2.1 输出任意周期和任意占空比的波形 ...................................................................................924
18.2.2 两路 PWM 实现互补对称带死区控制的波形 ....................................................................926
18.2.3 PWM 实现渐变灯(呼吸灯).............................................................................................930
18.2.4 使用 PWM 触发 ADC 转换 .................................................................................................934
18.2.5 产生 3 路相位差 120 度的互补带死区的 PWM 波形 ........................................................938
18.2.6 输出占空比为 100%(固定输出高)和 0%(固定输出低)的 PWM 波形的方法(以 PWM00
为例) 941
18.2.7 增强型 PWM-频率可调-脉冲计数 ......................................................................................942
18.2.8 增强型 PWM 时钟输出应用(系统时钟 2 分频输出) ....................................................945
19
同步串行外设接口 SPI ........................................................................................................947
17.1
17.2
17.2.1
17.2.2
17.2.3
17.2.4
17.2.5
17.2.6
17.3
17.3.1
17.3.2
17.3.3
17.3.4
17.4
17.5
17.5.1
17.5.2
17.5.3
17.5.4
17.5.5
17.5.6
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - xiii -
STC8G 系列技术手册
19.1
19.2
19.2.1
19.2.2
19.2.3
19.3
19.3.1
19.3.2
19.3.3
19.4
19.5
19.6
19.6.1
19.6.2
19.6.3
19.6.4
19.6.5
19.6.6
20
20.1
20.2
20.3
20.3.1
20.3.2
20.3.3
20.3.4
20.4
20.4.1
20.4.2
20.4.3
20.4.4
20.5
20.5.1
20.5.2
20.5.3
20.5.4
20.5.5
20.5.6
21
21.1
21.1.1
21.1.2
21.1.3
21.1.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
SPI 功能脚切换 ....................................................................................................................948
SPI 相关的寄存器 ................................................................................................................948
SPI 状态寄存器(SPSTAT)...............................................................................................948
SPI 控制寄存器(SPCTL),SPI 速度控制........................................................................949
SPI 数据寄存器(SPDAT) ................................................................................................949
SPI 通信方式 ........................................................................................................................950
单主单从 ...............................................................................................................................950
互为主从 ...............................................................................................................................951
单主多从 ...............................................................................................................................952
配置 SPI ................................................................................................................................953
数据模式 ...............................................................................................................................955
范例程序 ...............................................................................................................................956
SPI 单主单从系统主机程序(中断方式) ........................................................................956
SPI 单主单从系统从机程序(中断方式) ........................................................................958
SPI 单主单从系统主机程序(查询方式) ........................................................................960
SPI 单主单从系统从机程序(查询方式) ........................................................................962
SPI 互为主从系统程序(中断方式) ................................................................................964
SPI 互为主从系统程序(查询方式) ................................................................................967
I2C 总线 ................................................................................................................................971
I2C 功能脚切换.....................................................................................................................972
I2C 相关的寄存器 .................................................................................................................972
I2C 主机模式.........................................................................................................................973
I2C 配置寄存器(I2CCFG),总线速度控制 ....................................................................973
I2C 主机控制寄存器(I2CMSCR) ...................................................................................974
I2C 主机辅助控制寄存器(I2CMSAUX) ........................................................................976
I2C 主机状态寄存器(I2CMSST) ....................................................................................976
I2C 从机模式.........................................................................................................................977
I2C 从机控制寄存器(I2CSLCR) ....................................................................................977
I2C 从机状态寄存器(I2CSLST) .....................................................................................977
I2C 从机地址寄存器(I2CSLADR) .................................................................................979
I2C 数据寄存器(I2CTXD,I2CRXD)............................................................................980
范例程序 ...............................................................................................................................981
I2C 主机模式访问 AT24C256(中断方式) ......................................................................981
I2C 主机模式访问 AT24C256(查询方式) ......................................................................987
I2C 主机模式访问 PCF8563.................................................................................................992
I2C 从机模式(中断方式) .................................................................................................998
I2C 从机模式(查询方式) ...............................................................................................1003
测试 I2C 从机模式代码的主机代码 ..................................................................................1007
增强型双数据指针 .............................................................................................................1014
相关的特殊功能寄存器 .....................................................................................................1014
第 1 组 16 位数据指针寄存器(DPTR0) .......................................................................1014
第 2 组 16 位数据指针寄存器(DPTR1) .......................................................................1014
数据指针控制寄存器(DPS) ..........................................................................................1015
数据指针控制寄存器(TA) ............................................................................................1016
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - xiv -
STC8G 系列技术手册
21.2
21.2.1
21.2.2
22
22.1
22.1.1
22.1.2
22.1.3
22.1.4
22.2
22.3
附录 A
A.1
A.2
A.3
A.4
附录 B
附录 C
附录 D
附录 E
E.1
E.2
E.3
E.4
E.5
E.6
附录 F
附录 G
附录 H
附录 I
附录 J
附录 K
K.1
K.2
K.3
K.4
附录 L
附录 M
附录 N
附录 O
附录 P
附录 Q
Q.1
Q.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
范例程序 .............................................................................................................................1017
示例代码 1 ..........................................................................................................................1017
示例代码 2 ..........................................................................................................................1018
MDU16 硬件 16 位乘除法器 ............................................................................................1020
相关的特殊功能寄存器 .....................................................................................................1020
操作数 1 数据寄存器(MD0~MD3) ............................................................................1021
操作数 2 数据寄存器(MD4~MD5) ............................................................................1021
MDU 模式控制寄存器(ARCON),运算所需时钟数 ...................................................1022
MDU 操作控制寄存器(OPCON) .................................................................................1022
关于 MDU16 的网友应用杂谈(提供思路,仅供参考) ..............................................1023
范例程序 .............................................................................................................................1025
应用注意事项 .....................................................................................................................1027
STC8G1K08A 系列 ............................................................................................................1027
STC8G2K64S4/S2 系列 .....................................................................................................1027
STC8G1K08 系列 ...............................................................................................................1028
STC15H2K64S4 系列 .........................................................................................................1028
STC8G 系列单片机取代 STC15 系列的注意事项 .........................................................1029
STC8G 系列单片机取代 STC8A8K64S4A12/8F 系列的注意事项 ...............................1031
STC15H 系列单片机取代 STC15F/L/W 系列的注意事项 ............................................1032
电气特性 .............................................................................................................................1034
绝对最大额定值 .................................................................................................................1034
直流特性(3.3V) .............................................................................................................1035
直流特性(5.0V) .............................................................................................................1037
I/O 口驱动能力(驱动电流对应的 I/O 上的电压)........................................................1038
内部 IRC 温漂特性(参考温度 25℃) ...........................................................................1038
低压复位门槛电压(测试温度 25℃) ............................................................................1039
关于回流焊前是否要烘烤 .................................................................................................1040
如何使用万用表检测芯片 I/O 口好坏 .............................................................................1041
大批量生产,如何省去专门的烧录人员,如何无烧录环节 .........................................1042
如何使用 AIapp-ISP 下载软件制作和编辑 EEPROM 文件 .........................................1043
编译器(汇编器)/仿真器/头文件使用指南 ...................................................................1044
AIapp-ISP 下载软件高级应用..........................................................................................1051
发布项目程序 .....................................................................................................................1051
程序加密后传输(防烧录时串口分析出程序) .............................................................1055
发布项目程序+程序加密后传输结合使用 .......................................................................1059
用户自定义下载(实现不停电下载) .............................................................................1060
如何测试 I/O 口 .................................................................................................................1064
如何让传统的 8051 单片机学习板可仿真 .......................................................................1065
STC-USB 驱动程序安装说明 ...........................................................................................1067
USB 下载步骤演示 ............................................................................................................ 1103
RS485 自动控制或 I/O 口控制线路图 ............................................................................. 1105
STC 工具使用说明书 ........................................................................................................ 1106
概述 ..................................................................................................................................... 1106
系统可编程(ISP)流程说明 ........................................................................................... 1106
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - xv -
STC8G 系列技术手册
Q.3
Q.3.1
Q.3.2
Q.3.3
Q.3.4
Q.3.5
Q.3.6
Q.3.7
Q.3.8
Q.3.9
Q.3.10
Q.4
Q.4.1
Q.4.2
Q.4.3
Q.4.4
Q.4.5
Q.5
Q.5.1
Q.5.2
附录 R
R.1
R.2
R.3
R.4
R.4.1
R.4.2
R.5
R.5.1
R.5.2
R.5.3
附录 S
附录 T
附录 U
附录 V
附录 W
附录 X
附录 Y
附录 Z
附录 AA
附录 BB
附录 CC
附录 DD
附录 EE
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 型联机/脱机下载工具 U8W/U8W-Mini ................................................................... 1107
安装 U8W/U8W-Mini 驱动程序 ........................................................................................ 1109
U8W 的功能介绍 ............................................................................................................... 1112
U8W 的在线联机下载使用说明 ....................................................................................... 1113
U8W 的脱机下载使用说明 ............................................................................................... 1116
U8W-Mini 的功能介绍 ...................................................................................................... 1124
U8W-Mini 的在线联机下载使用说明............................................................................... 1125
U8W-Mini 的脱机下载使用说明....................................................................................... 1126
制作/更新 U8W/U8W-Mini................................................................................................ 1132
U8W/U8W-Mini 设置直通模式(可用于仿真) ............................................................. 1134
U8W/U8W-Mini 的参考电路 ............................................................................................. 1134
STC 通用 USB 转串口工具 ............................................................................................... 1136
STC 通用 USB 转串口工具外观图 ................................................................................... 1136
STC 通用 USB 转串口工具布局图 ................................................................................... 1137
STC 通用 USB 转串口工具驱动安装 ............................................................................... 1138
使用 STC 通用 USB 转串口工具下载程序到 MCU ........................................................ 1139
使用 STC 通用 USB 转串口工具仿真用户代码 .............................................................. 1141
应用线路图 ......................................................................................................................... 1148
U8W 工具应用参考线路图 ............................................................................................... 1148
STC 通用 USB 转串口工具应用参考线路图 ................................................................... 1149
STC 仿真使用说明书 ........................................................................................................ 1150
概述 ..................................................................................................................................... 1150
安装 Keil 软件 .................................................................................................................... 1151
安装仿真驱动 ..................................................................................................................... 1152
串口直接仿真 ..................................................................................................................... 1155
制作串口仿真芯片 ............................................................................................................. 1155
在 Keil 软件中使用串口进行仿真 .................................................................................... 1158
USB 直接仿真(目前只有 STC8H8K64U-B 版本芯片支持) ....................................... 1159
制作 USB 仿真芯片 ........................................................................................................... 1159
在 Keil 软件中进行 USB 仿真设置 .................................................................................. 1162
在 Keil 软件中使用 USB 进行仿真 .................................................................................. 1163
U8W 下载工具中 RS485 部分线路图 .............................................................................. 1165
运行用户程序时收到用户命令后自动启动 ISP 下载(不停电) ...................................... 1166
使用 STC 的 IAP 系列单片机开发自己的 ISP 程序 ...................................................... 1167
用户程序复位到系统区进行 ISP 下载的方法(不停电) ............................................. 1179
使用第三方 MCU 对 STC8G 系列单片机进行 ISP 下载范例程序 .............................. 1185
使用第三方应用程序调用 STC 发布项目程序对单片机进行 ISP 下载 ....................... 1193
关于 Keil 软件中 0xFD 问题的说明................................................................................. 1196
在 Keil 中建立多文件项目的方法 .................................................................................... 1197
关于中断号大于 31 在 Keil 中编译出错的处理 ..............................................................1200
触摸按键的 PCB 设计指导 ...............................................................................................1209
QFN/DFN 封装元器件焊接方法 ...................................................................................... 1211
可以自己去生产的【USB 转双串口】资料 ....................................................................1214
单片机是否可以提供裸芯 .................................................................................................1215
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - xvi -
STC8G 系列技术手册
附录 FF
附录 GG
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8 系列命名花絮 ..........................................................................................................1216
更新记录 .............................................................................................................................1217
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - xvii -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1 单片机基础概述
——无微机原理的用户请从本章开始学习
这一章主要讲述的内容有:①在数字设备中进行算术运算的基本知识——数制和编码;②数字电路
中一些常用逻辑运算及其图形符号。它们是学习单片机这门课程的基础。对于没有微机原理基础的用户
和同学,请从这章开始学习。
1.1 数制与编码
数制是人们利用符号进行计数的科学方法。
数制有很多种,常用的数制有:二进制,十进制和十六进制。
进位计数制是把数划分为不同的位数,逐位累加,加到一定数量之后,再从零开始,同时向高位进
位。进位计数制有三个要素:数码符号、进位规律和计数基数。下表是各常用数制的总体介绍。
常用的数制
表示符号
数码符号
进制规律
计数基数
二进制
B
0、1
逢二进一
2
十进制
D
0、1、2、3、4、5、6、7、8、9
逢十进一
10
十六进制
H
0、1、2、3、4、5、6、7、8、9、
A、B、C、D、E、F
逢十六进一
16
我们日常生活中计数一般采用十进制。计算机中采用的是二进制,因为二进制具有运算简单,易实
现且可靠,为逻辑设计提供了有利的途径、节省设备等优点。为区别于其它进制数,二进制数的书写通
常在数的右下方注上基数 2,或加后面加 B 表示。二进制数中每一位仅有 0 和 1 两个可能的数码,所以
计数基数为 2。二进制数的加法和乘法运算如下:
0
+
0 = 0
0 × 0 = 0
0
+
1 = 1
+
0 = 1
0 × 1 = 1 × 0 =0
1
+
1 = 10
1 × 1 = 1
由于二进制数在使用中位数太长,不容易记忆,为了便于描述,又常用十六进制作为二进制的缩写。
十六进制通常在表示时用尾部标志 H 或下标 16 以示区别。
1.1.1
数制转换
现在我们来介绍这些常用数制之间的转换。
一:二进制 — 十进制转换
方法:将二进制数按权(如下式)展开,然后将各项的数值按十进制数相加,就得到相应的等值十进
制数。
例如:N=(1101.101)B,那么 N 所对应的十进制数时多少呢?
按权展开 N=1×2 3+1×2 2+0×2 1+1×2 0+1×2 -1+0×2 -2+1×2 -3=8+4+0+1+0.5+0+0.125 =(13.625)D
二:十进制 — 二进制转换
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-1-
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
方法:分两部分进行即整数部分和小数部分。
①整数部分转换(基数除法):
★ 把我们要转换的数除以二进制的基数(二进制的基数为 2),把余数作为二进制的最低位;
★ 把上一次得的商在除以二进制基数(即 2),把余数作为二进制的次低位;
★ 继续上一步,直到最后的商为零,这时的余数就是二进制的最高位.
②小数部分转换(基数乘法):
★ 把要转换数的小数部分乘以二进制的基数(二进制的基数为 2),把得到的整数部分作为二进制小数
部分的最高位;
★ 把上一步得的小数部分再乘以二进制的基数(即 2),把整数部分作为二进制小数部分的次高位;
★ 继续上一步,直到小数部分变成零为止。或者达到预定的要求也可以。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-2-
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
例如:将(213.8125)10 化为二进制数可按如下进行:
先化整数部分:
2
213
2 106
53
2
26
2
13
2
6
2
3
2
1
2
0
于是整数部分(213)10=(11010101)2
余数=1=k0
余数=0=k1
余数=1=k2
余数=0=k3
余数=1=k4
余数=0=k5
余数=1=k6
余数=1=k7
再化小数部分:
0.8125
2
×
1.6250
整数部分=1=k-1
0.6250
2
×
1.2500
整数部分=1=k-2
0.2500
2
×
0.5000
整数部分=0=k-3
0.5000
2
×
1.0000
整数部分=1=k-4
于是小数部分(0.8125)10=(0.1101)2
综上所述,十进制数 213.8125=(11010101.1101)2=(11010101.1101)B
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-3-
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
三:二进制 — 十六进制转换
方法:二进制和十六进制之间满足 24 的关系,因此把要转换的二进制从低位到高位每 4 位一组,高
位不足时在有效位前面添“0”,然后把每组二进制数转换成十六进制即可。
例如,将(010111011110.10110010)B 转换为十六进制数:
(0101 1101 1110 . 1011 0010)B
↓
↓ ↓
↓
↓
=( 5
D E
B 2 )H
于是,(010111011110.10110010)B=(5DE.B2)H
四:十六进制 — 二进制转换
方法:十六进制转换为二进制时,把上面二进制转换十六进制的过程逆过来,即转换时只需将十六
进制的每一位用等值的 4 位二进制代替就行了。
例如:将(C1B.C6)H 转换为二进制数:
( C
1
↓
↓
B.
↓
C
↓
6 )H
↓
= (1100 0001 1011 1100 0110)B
于是,(C1B.C6)H=(110000011011.11000110)B
五:十六进制 — 十进制转换
方法:将十六进制数按权(如下式)展开,然后将各项的数值按十进制数相加,就得到相应的等值十
进制数。
例如:N=(2A.7F)H,那么 N 所对应的十进制数时多少呢?
按权展开 N=2×16 1+10×16 0+7×16 -1+15×16 -2=32+10+0.4375+0.05859375 =(42.49609375)D
于是,(2A.7F)H =(42.49609375)D
六:十进制 — 十六进制转换
方法:将十进制数转换为十六进制数时,可以先将十进制数转换为二进制数,然后再将得到的二进
制数转换为等值的十六进制数。
1.1.2
原码、反码及补码
在生活中,数有正负之分,在计算机中是怎样表示数的正负符号呢?
在生活中表示数的时候一般都是把正数前面加一个“+”
,负数前面加一个“-”,但是计算机是不认
识这些的,通常在二进制数前面增加一位符号位。符号位为“0”表示“+”,符号位为“1”表示“-”。
这种形式的二进制数称为原码。如果原码为正数,则原码的反码和补码都与原码相同。如果原码为负数,
则将原码(除符号位外)按位取反,所得的新二进制数称为原码的反码,反码加 1 为其补码。
原码、反码、补码这三种形式的总结如下表所示:
真值
原码
反码
补码
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-4-
STC8G 系列技术手册
正数
负数
官方网站: www.STCAI.com
+N
-N
0N
1N
0N
(2n-1)+N
车规 MCU 设计公司
选型顾问: 13922805190
0N
2n+N
例 1:求+18 和-18 八位原码、反码、补码形式。
真值
原码
反码
+18
00010010
00010010
-18
10010010
11101101
1.1.3
研发顾问:13922829991
补码
00010010
11101110
常用编码
指定某一组二进制数去代表某一指定的信息,就称为编码。
一:十进制编码
用二进制码表示的十进制数,称为十进制编码。它具有二进制的形式,还具有十进制的特点它可作
为人们与数字系统的联系的一种间表示。十进制编码有很多种,最常用的一种是 BCD 码,又称 8421 码。
下面我们用表列出几种常见的十进制编码:
编码种类
8421 码
(BCD 码)
余3码
2421 码
5211 码
7321 码
十进制数
0
0000
0011
0000
0000
0000
1
0001
0100
0001
0001
0001
2
0010
0101
0010
0100
0010
3
0011
0110
0011
0101
0011
4
0100
0111
0100
0111
0101
5
0101
1000
1011
1000
0110
6
0110
1001
1100
1001
0111
7
0111
1010
1101
1100
1000
8
1000
1011
1110
1101
1001
9
1001
1100
1111
1111
1010
权
8421
2421
5211
7321
十进制编码分为有权和无权编码。有权编码码是指每一位十进制数符均用一组四位二进制码来表示,
而且二进制码的每一位都有固定权值。无权编码码是指二进制码中每一位都没有固 定的权值。上表中
8421 码(即 BCD 码)、2421 码、5211 码、7321 码都是有权编码,而余 3 码是无权编码。
二:奇偶校验码
在数据的存取、运算和传送过程中,难免会发生错误,把“1”错成“0”或把“0”错成“1”
。奇偶
校验码是一种能检验这种错误的代码。它分为两部分;信息位和奇偶校验位。有奇数个“1”称为奇校验,
有偶数个“1”则称为偶校验。
1.2 几种常用的逻辑运算及其图形符号
逻辑代数中常用的运算有:与(AND)、或(OR)、非(NOT)、与非(NAND)、或非(NOR)、与或非
(AND-NOR)、异或(EXCLUSIVE OR)、同或(EXCLUSIVE NOR)等。其中与(AND)、或(OR)、非(NOT)
运算时三种最基本的运算。
一:与运算及与门
与运算:决定事件结果的全部条件同时具备时,事件才发生。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-5-
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
逻辑变量 A 和 B 进行与运算时可写成:Y=A·B
真值表
A
B
Y
0
0
0
0
1
0
1
0
0
1
1
1
与门:实行与逻辑运算的单元电路。
与门图形符号:
二:或运算及或门
或运算:决定事件结果的各条件中只要有任何一个满足,事件就会发生。
逻辑变量 A 和 B 进行或运算时可写成:Y=A+B
真值表
A
B
Y
0
0
0
0
1
1
1
0
1
1
1
1
或门:实行或逻辑运算的单元电路。
或门图形符号:
三:非运算及非门
非运算:条件具备时,事件不会发生;条件不具备时,事件才会发生。
逻辑变量 A 进行非运算时可写成:Y=A′
真值表
A
Y
0
1
1
0
非门:实行非逻辑运算的单元电路。
非门图形符号:
四:与非运算及与非图形符号
与非运算:先进行与运算,然后将结果求反,最后得到的即为与非运算结果。
逻辑变量 A 和 B 进行与非运算时可写成:Y=(A·B)′
真值表
A
B
0
0
0
1
1
0
1
1
与非图形符号:
Y
1
1
1
0
五:或非运算及或非图形符号
或非运算:先进行或运算,然后将结果求反,最后得到的即为或非运算结果。
逻辑变量 A 和 B 进行或非运算时可写成:Y=(A+B)′
真值表
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-6-
STC8G 系列技术手册
官方网站: www.STCAI.com
A
B
0
0
0
1
1
0
1
1
或非图形符号:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Y
1
0
0
0
六:与或非运算及与或非图形符号
与或非运算:在与或非逻辑运算中有 4 个逻辑变量 A、B、C、D。假设 A 和 B 为一组,C 和 D 为一 组,
A、B 之间以及 C、D 之间都是与的关系,只要 A、B 或 C、D 任何一组同时为 1, 输出 Y 就是 0。只
有当每一组输入都不全是 1 时,输出 Y 才是 1。
逻辑变量 A 和 B 进行或非运算时可写成:Y=(A·B+C·D)′
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
真值表
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Y
1
1
1
0
1
1
1
0
1
1
1
0
0
0
0
0
与或非图形符号:
七:异或运算及异或图形符号
异或运算:当 A、B 不同时,输出 Y 为 1;而当 A、B 相同时,输出 Y 为 0。 逻辑变量 A 和 B 进行异
或运算时可写成:Y = A⊕B = (A·B′) + (A′·B)
真值表
A
B
0
0
0
1
1
0
1
1
异或图形符号:
Y
0
1
1
0
八:同或运算及同或图形符号
同或运算:当 A、B 不同时,输出 Y 为 0;而当 A、B 相同时,输出 Y 为 1。 逻辑变量 A 和 B 进行同
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-7-
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
或运算时可写成:Y = A⊙B = (A·B)+(A′·B′)
真值表
A
B
0
0
0
1
1
0
1
1
同或图形符号:
Y
1
0
0
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
-8-
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1.3 STC8G 单片机性能概述
STC8G 系列单片机是不需要外部晶振和外部复位的单片机,是以超强抗干扰/超低价/高速/低功耗为
目标的 8051 单片机,在相同的工作频率下,STC8G 系列单片机比传统的 8051 约快 12 倍
(速度快 11.2~13.2
倍),依次按顺序执行完全部的 111 条指令,STC8G 系列单片机仅需 147 个时钟,而传统 8051 则需要
1944 个时钟。STC8G 系列单片机是 STC 生产的单时钟/机器周期(1T)的单片机,是宽电压/高速/高可靠/
低功耗/强抗静电/较强抗干扰的新一代 8051 单片机,超级加密。指令代码完全兼容传统 8051。
MCU 内部集成高精度 R/C 时钟(±0.3% ,常温下+25℃),-1.38%~+1.42%温飘(-40℃~+85℃) ,
-0.88%~+1.05%温飘(-20℃~+65℃)。ISP 编程时 4MHz~35MHz 宽范围可设置(注意:温度范围为-40℃
~+85℃时,最高频率须控制在 35MHz 以下),可彻底省掉外部昂贵的晶振和外部复位电路(内部已集成高
可靠复位电路,ISP 编程时 4 级复位门槛电压可选)。
MCU 内部有 3 个可选时钟源:内部高精度 IRC 时钟(ISP 下载时可进行调节)、内部 32KHz 的低
速 IRC、外部 4M~33M 晶振或外部时钟信号。用户代码中可自由选择时钟源,时钟源选定后可再经过 8-bit
的分频器分频后再将时钟信号提供给 CPU 和各个外设(如定时器、串口、SPI 等)。
MCU 提供两种低功耗模式:IDLE 模式和 STOP 模式。IDLE 模式下,MCU 停止给 CPU 提供时钟,
CPU 无时钟,CPU 停止执行指令,但所有的外设仍处于工作状态,此时功耗约为 1.0mA(6MHz 工作频
率)。STOP 模式即为主时钟停振模式,即传统的掉电模式/停电模式/停机模式,此时 CPU 和全部外设
都停止工作,功耗可降低到 0.6uA@Vcc=5.0V,0.4uA@Vcc=3.3V。
掉电模式可以使用 INT0(P3.2)、INT1(P3.3)、INT2(P3.6)、INT3(P3.7)、INT4(P3.0)、T0(P3.4)、T1(P3.5)、
T2(P1.2) 、 T3(P0.4) 、 T4(P0.6) 、 RXD(P3.0/P3.6/P1.6/P4.3) 、 RXD2(P1.0/P4.6) 、 RXD3(P0.0/P5.0) 、
RXD4(P0.2/P5.2)、CCP0(P1.1/P3.5/P2.5)、CCP1(P1.0/P3.6/P2.6)、CCP2(P3.7/P2.7)、I2C_SDA(P1.4/P2.4/P3.3)
以及比较器中断、低压检测中断、掉电唤醒定时器唤醒。
MCU 提供了丰富的数字外设(串口、定时器、PCA、PWM 以及 I2C、SPI)接口与模拟外设(超高
速 ADC、比较器),可满足广大用户的设计需求。
STC8G 系列单片机内部集成了增强型的双数据指针。通过程序控制,可实现数据指针自动递增或递
减功能以及两组数据指针的自动切换功能。
1.4 STC8G 单片机产品线
增强型
PWM
产品线
I/O
UART
定时器
ADC
STC8G1K08 系列
18
2
3
15CH*10B
STC8G1K08-8Pin 系列
6
1
2
STC8G1K08A 系列
6
1
2
6CH*10B
STC8G2K64S4 系列
45
4
5
15CH*10B
●
●
STC8G2K64S2 系列
45
2
5
15CH*10B
●
STC15H2K64S4 系列
42
4
5
15CH*10B
●
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
PCA
CMP
SPI
I2C
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
MDU16
技术交流及选型论坛:www.STCAIMCU.com
-9-
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2 STC8G 系列各子系列选型简介、特性、价格、管脚图
2.1 STC8G1K08-36I-SOP8/DFN8 系列
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机)
2.1.1
选型价格(不需要外部晶振、不需要外部复位)
/
1
内
部
高
精
准
时
钟
(
程
序
加
密
后
传
输
(
防
拦
截
)
可
设
置
下
次
更
新
程
序
需
口
令
支
持
支 软 本
持 件 身
就
可
在
线
下 直 仿
载 接 真
下
载
2
有
有
有 4级 有
是
有
是
是
是
是 ¥0.59 ¥0.65
STC8G1K17 1.9-5.5 17K 256 1K
2
IAP
6
1
有
有
有
2
有
有
有 4级 有
是
有
是
是
-
- ¥0.69 ¥0.75
DFN8
有
SOP8
有
位
乘
除
法
器
36MHz
有
字 字
节 节 字
节
16
1
SRAM
6
万
次
DPTR
4K
10
2
)
8051 RAM
STC8G1K08 1.9-5.5 8K 256 1K
V
USB
可
对
外
输
出
时
钟
以 及
下 复
可 位
调
)
追
频
价
格
及
封
装
RS485
A/D
看
门
狗
复
位
定
时
器
内
部
高
可
靠
复
位
(
可
选
复
位
门
槛
电
压
)
I2 C
T0-T1
硬
件
比
较
器
( 内
可 部
当 低
压
路 检
测
中
, 断
可 并
作 可
外 掉
部 电
掉 唤
电 醒
检
测
)
SPI
口
最
万 多
可 次 数
量
增
可 字
减 节
串
口
并
可
掉
电
唤
醒
MDU16
强
大
的
双
I/O
,
内
部
大
容
量
扩
展
EEPROM 10
,
内
部
传
统
xdata
Flash
工
作
电
压
(
idata
单
片
机
型
号
程
序
存
储
器
定
时
器
计
数
器
( 掉
电
唤
醒
外 专
部 用
管 定
脚 时
也 器
可
掉
电
唤
醒
)
主
力
产
品
供
货
信
息
现
货
注:以上的单价为 10K 及以上订货量的价格,量小则每片需增加 0.1 元人民币。
内核
超高速 8051 内核(1T),比传统 8051 约快 12 倍以上
指令代码完全兼容传统 8051
11 个中断源,4 级中断优先级
支持在线仿真
工作电压
1.9V~5.5V
内建 LDO
工作温度
-40℃~85℃(超温度范围应用请参考电器特性章节说明)
Flash 存储器
最大 17K 字节 FLASH 程序存储器(ROM),用于存储用户代码
支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上
支持在系统编程方式(ISP)更新用户应用程序,无需专用编程器
支持单芯片仿真,无需专用仿真器,理论断点个数无限制
SRAM
128 字节内部直接访问 RAM(DATA)
128 字节内部间接访问 RAM(IDATA)
1024 字节内部扩展 RAM(内部 XDATA)
时钟控制
内部高精度、高稳定的高速 IRC(4MHz~38MHz,ISP 编程时可进行上下调整,还可以用户软件分频到
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 10 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
较低的频率工作,如 100KHz)
误差±0.3%(常温下 25℃)
-0.88%~+1.05%温漂(温度范围,-20℃~65℃)
-1.38%~+1.42%温漂(全温度范围,-40℃~85℃)
内部 32KHz 低速 IRC(为了低功耗,省去了温度补偿和电压补偿电路,误差较大)
(芯片上电工作过程:上电复位/复位脚复位/看门狗复位/低压检测复位时,芯片默认从 ISP 系统程序开始执行代
码,此时固定使用内部 24MHz 的高速 IRC 时钟,当需要下载用户程序且下载完成后复位到用户程序区或者不需
要下载直接复位到用户程序区时,默认会使用上次用户下载时所调节的高速 IRC 时钟,如果用户程序需要使用
外部高速晶振、外部 32.768KHz 晶振或者内部 30KHz 低速 IRC,则需要用户软件先启动相应的时钟,然后通过
设置 CLKSEL 寄存器进行切换)
复位
硬件复位
上电复位。(在芯片未使能低压复位功能时有效)
复位脚复位。出厂时 P5.4 默认为 I/O 口,ISP 下载时可将 P5.4 管脚设置为复位脚(注意:当设置 P5.4
管脚为复位脚时,复位电平为低电平)
看门狗溢出复位
低压检测复位,提供 4 级低压检测电压:2.0V、2.4V、2.7V、3.0V。
软件复位
软件方式写复位触发寄存器
中断
提供 11 个中断源:INT0(支持上升沿和下降沿中断)、INT1(支持上升沿和下降沿中断)、INT2(只支
持下降沿中断)、INT3(只支持下降沿中断)、INT4(只支持下降沿中断)、定时器 0、定时器 1、串口
1、LVD 低压检测、SPI、I2C
提供 4 级中断优先级
时钟停振模式下可以唤醒的中断:INT0(P3.2)、INT1(P3.3)、INT2(P3.6)、INT3(P3.7)、INT4(P3.0)、T0(P3.4)、
T1(P3.5)、RXD(P3.0/P3.2/P5.4)、I2C_SDA(P3.3/P5.5)以及低压检测中断、掉电唤醒定时器唤醒。
数字外设
2 个 16 位定时器:定时器 0、定时器 1、其中定时器 0 的模式 3 具有 NMI(不可屏蔽中断)功能,定时器
0 和定时器 1 的模式 0 为 16 位自动重载模式
1 个高速串口:串口 1,波特率时钟源最快可为 FOSC/4
SPI:支持主机模式和从机模式以及主机/从机自动切换
I2C:支持主机模式和从机模式
MDU16:硬件 16 位乘除法器(支持 32 位除以 16 位、16 位除以 16 位、16 位乘 16 位、数据移位以及数
据规格化等运算)
GPIO
最多可达 6 个 GPIO:P3.0~P3.3、P5.4~P5.5
所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏模式、高阻输入模式
除 P3.0 和 P3.1 外,其余所有 I/O 口上电后的状态均为高阻输入状态,用户在使用 I/O 口时必须先设置 I/O
口模式,另外每个 I/O 均可独立使能内部 4K 上拉电阻
封装
SOP8,DFN8(3mm*3mm)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 11 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G1K08-36I-SOP8/DFN8 管脚图,ISP 下载/编程线路图
2.1.2
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
10u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
以上
Gnd
MCU-VCC
1
2
3
4
8
STC8G1K08 7
SOP8/DFN8
6
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
UART1
RxD
P3.0
P3.2
P5.4
-
SPI
TxD
P3.1
P3.3
P5.5
-
I2C
SS
P5.5
-
MOSI MISO SCLK
P5.4 P3.3 P3.2
-
SCL
P3.2
P5.4
-
SDA
P3.3
P5.5
-
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
使用USB转串口芯片进行ISP下载/烧录/仿真,目标系统 手动停电/上电
Ai8H2K12U
USB+5V
USB接口
USB+5V
1 P5.4/nRST
+5V
DD+
Gnd
P3.3/P1.1/TxD2
连接目标单片机的P3.0
8
1
2
连接目标单片机的P3.1
22R
3
4
2 Vcc
D-
D+
22R
USB-TypeA
建议用USB-TypeC
10u
以上
0.1u
0.1u
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
RMB0.95
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 12 -
STC8G 系列技术手册
2.1.3
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
管脚说明
名称
类型
说明
P5.4
I/O
NRST
I
复位引脚(低电平复位)
MCLKO
O
主时钟分频输出
INT2
I
外部中断 2
T0
I
定时器 0 外部时钟输入
T1CLKO
O
定时器 1 时钟分频输出
RxD_3
I
串口 1 的接收脚
MOSI
I/O
SPI 主机输出从机输入
SCL_2
I/O
I2C 的时钟线
Vcc
Vcc
电源脚
P5.5
I/O
标准 I/O 口
INT3
I
外部中断 3
T1
I
定时器 1 外部时钟输入
T0CLKO
O
定时器 0 时钟分频输出
TxD_3
O
串口 1 的发送脚
SS
I
SPI 的从机选择脚(主机为输出)
SDA_2
I/O
I2C 的数据线
Gnd
Gnd
地线
P3.0
I/O
标准 I/O 口
RxD
I
串口 1 的接收脚
INT4
I
外部中断 4
P3.1
I/O
标准 I/O 口
TxD
O
P3.2
I/O
标准 I/O 口
INT0
I
外部中断 0
SCLK
I/O
SPI 的时钟脚
SCL
I/O
I2C 的时钟线
RxD_2
I
P3.3
I/O
标准 I/O 口
INT1
I
外部中断 1
MISO
I/O
SPI 主机输入从机输出
SDA
I/O
I2C 的数据线
TxD_2
O
SOP8
1
2
3
4
5
6
7
8
标准 I/O 口
串口 1 的发送脚
串口 1 的接收脚
串口 1 的发送脚
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 13 -
STC8G 系列技术手册
2.1.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯
使用【USB Link1D】对 STC8G1K08系列 进行全自动停电/上电串口烧录、仿真+串口通讯
【USB Link1D】工具:支持 全自动 停电 / 上电,在线下载 / 脱机下载,仿真
连接 目标单 片机P3.1
连接 目标单 片机P3.0
MC U-VCC
连接 目标单 片机第n组串口 发送脚TxDn
连接 目标单 片机第n组串口 接收脚RxDn
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
10u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
以上
Gnd
M CU-VCC
1
8
2 STC8G1K08 7
3
6
SOP8/DFN8
4
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 14 -
STC8G 系列技术手册
2.1.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯
使用【一箭双雕之USB转双串口】对 STC8G1K08系列 进行串口烧录、仿真+串口通讯
【一箭双雕之USB转双串口】:支持 全自动 停电 / 上电,在线下载,仿真
5V/3.3V 通过 跳线选择
连接目标单片机第n组串口接收脚RxDn
连接目标单片机第n组串口发送脚TxDn
MCU-VCC
连接目标单片机P3.0
连接目标单片机P3.1
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
M CU-VCC
10u
以上
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
Gnd
1
8
2 STC8G1K08 7
3
6
SOP8/DFN8
4
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 15 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V
2.1.6
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,5V
USB转第二组串口
第二组串口用于和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
1N5819
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
1
2
22R
3
4
D-
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
0.1u
10u
以上
D+
22R
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
USB转第一组串口
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
推挽/开漏
16
高阻输入
15
14
13
12
300R
11
可做电源
10 D+
供应模块
9 D关电/供电
手动按键
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源
(可从USB取电)
Q1
P-MOS
S
MCU-VCC
D
0.47u
10u
以上
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
USB-TypeA
建议用USB-TypeC
第一组用于下载或者通讯
1N5819
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
470R
一般不焊
20K
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCU-VCC
10u
以上
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
Gnd
1
2
3
4
8
STC8G1K08 7
SOP8/DFN8
6
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 16 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图
2.1.7
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,3.3V
USB转第二组串口
第二组串口用于和目标系统的
其他串口通讯
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组的TxDn
连接目标单片机的第n组的RxDn
1N5819
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
1
2
22R
3
4
D-
0.1u
D+
22R
10u
以上
1
推挽/开漏 2
3
4
PowerCtrl 5
6
7
8
0.1u
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
16
15
14
13
12
11
10
9
USB转第一组串口
高阻输入
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
P3.5管脚低电平供电 系统电源输入 Vin
P5.4管脚高电平供电 也可电脑USB+5V供电
或充电宝USB+5V供电
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
D+
D-
1
2
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
VIN
PowerCtrl
电源按键
VOUT
MCU-VCC
5
GND
CE
10K
C1
0.1u
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
USB-TypeA
建议用USB-TypeC
第一组用于下载或者通讯
1N5819
推挽/开漏
芯片上电时 P5.4-nRST 输出高电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,会自动
控制MCU-VCC停电0.5S再上电进行ISP
下载。下载完成后会持续供电
NC
×
按下按键停电
松开按键上电
C2
0.1u
该按键可不焊
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCU-VCC
10u
以上
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
Gnd
1
2
3
4
8
STC8G1K08 7
SOP8/DFN8
6
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 17 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择
2.1.8
使用 USB转双串口 芯片 进行 全自动 烧录/仿真+串口通讯,5V/3.3V跳线选择
USB+5V
USB接口
+5V
DD+
Gnd
1
22R
2
3
USB转第二组串口
第二组串口用于和目标系统
的其他串口通讯
D-
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
D+
22R
4
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
USB-TypeA
建议用USB-TypeC
1N5819
用跳线选择工作电压5V或3.3V
3
1
0.1u
3
VOUT
VIN
1117M3-33
GND
10u
以上
Vcc
2
跳线插座
2.54mm
USB+5V
1
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
USB转第一组串口
推挽/开漏
高阻输入
16
15
14
13
12
300R
11
10 D+
9 D-
第一组用于下载或者通讯
1N5819
S-RxD 连接目标单片机的P3.0/RxD
S-TxD 连接目标单片机的P3.1/TxD
Q1
P-MOS
Vcc
可做电源
供应模块
关电/供电 10u
手动按键 以上
S
MCU-VCC
D
0.47u
104
G
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
20K
3.3V
2
104
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
10u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
以上
Gnd
MCU-VCC
1
2
3
4
8
STC8G1K08 7
SOP8/DFN8
6
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 18 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图
2.1.9
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,5V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
Power-On
2
22R
3
4
1 P5.4/nRST
P3.3/P1.1/TxD2
2 Vcc
P3.2/P1.0/RxD2
连接 目标单 片机的P3.0
8
连接 目标单 片机的P3.1
1
D-
10u
D+
以上
0.1u
0.1u
22R
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
RMB0.95 SOP8
USB-TypeA
建议用USB-TypeC
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
Q1
P-MOS
1u
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
R1
10K
R3
20K
S
M CU-VCC
D
G
0.1u
R4
20K
R2
Power-On
20K
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
Q2
SS8050
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCU-VCC
10u
以上
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
Gnd
1
2
3
4
8
STC8G1K08 7
SOP8/DFN8
6
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 19 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.1.10 通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,3.3V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
USB+5V
+5V
DD+
Gnd
1
2
Power-On
22R
3
4
1 P5.4/nRST
连接 目标单 片机的P3.0
P3.3/P1.1/TxD2
8
P3.2/P1.0/RxD2
7
1
连接 目标单 片机的P3.1
D-
2
D+
10u
22R
0.1u
Vcc
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
以上
0.1u
RMB0.95
USB-TypeA
建议用USB-TypeC
SOP8
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
2
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
VIN
VOUT
M CU-VCC
5
GND
3
CE
NC
4
×
10K
C1
0.1u
C2
0.1u
Power-On 高输 出,低关 断
P5.4管脚高电平供电
全自动控制电源开/关
电源开关,可不焊
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCU-VCC
10u
以上
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
Gnd
1
2
3
4
8
STC8G1K08 7
SOP8/DFN8
6
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 20 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.1.11 USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择
USB转串口 芯片 全自动 停电/上电,烧录/仿真/通信,5V/3.3V跳线选择
用跳线选择工作电压5V或3.3V
2
D-
3
D+
Vcc
22R
4
1117M3-33
10u
以上
3
USB-TypeA
建议用USB-TypeC
VOUT
Gnd
22R
VIN
D-
D+
跳线插座
2.54mm
1
GND
+5V
3
1
USB接口
2
USB+5V
1
10u
以上
3.3V
2
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
Vcc
Q1
P-MOS
Ai8H2K12U
Vcc
Power-On
1 P5.4/nRST
连接 目标单 片机的P3.0
P3.3/P1.1/TxD2
8
P3.2/P1.0/RxD2
7
1u
连接 目标单 片机的P3.1
2
10u
0.1u
3
Vcc
UCap
D+/TxD/P3.1
6
D-/RxD/P3.0
5
以上
0.1u
4 Gnd/AGnd
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
RMB0.95 SOP8
R1
10K
R3
20K
S
M CU-VCC
D
G
0.1u
R4
20K
R2
Power-On
Q2
SS8050
20K
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCU-VCC
10u
以上
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
Gnd
1
2
3
4
8
STC8G1K08 7
SOP8/DFN8
6
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 21 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.1.12 USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己手动停电/上电
Ai8H2K12U
USB+5V
USB接口
USB+5V
1
+5V
D-
D+
Gnd
P5.4/nRST
P3.3/P1.1/TxD2
连接 目标单 片机的P3.0
8
1
2
连接 目标单 片机的P3.1
22R
3
4
22R
USB-TypeA
建议用USB-TypeC
10u
以上
0.1u
0.1u
Vcc
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
2
DD+
D+
D-
RMB0.95
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCU-VCC
10u
以上
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
Gnd
1
2
3
4
8
STC8G1K08 7
SOP8/DFN8
6
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 22 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.1.13 USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己 手动 停电/上电
Ai8H2K12U
USB+5V
USB+5V
USB接口
1
+5V
2
D-
4
Gnd
P3.3/P1.1/TxD2
8
2 Vcc
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
连接 目标单 片机的P3.1
22R
D10u
3
D+
连接 目标单 片机的P3.0
1 P5.4/nRST
D+
0.1u
以上
22R
0.1u
D+
D-
RMB0.95
USB-TypeA
建议用USB-TypeC
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
STC8G1K08-36I-SOP8/DFN8 最小系统 示意图
MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/P5.4
Vcc
0.1u
10u
SDA_2/SS/TxD_3/T0CLKO/T1/INT3/P5.5
以上
Gnd
MCU-VCC
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
2
VIN
CE
10K
NC
4
按下按键停电
松开按键上电
电源按键
SOP8/DFN8
6
5
P3.3/TxD_2/INT1/MISO/SDA
P3.2/RxD_2/INT0/SCLK/SCL
P3.1/TxD
P3.0/RxD/INT4
MCU-VCC
5
GND
3
C1
0.1u
VOUT
8
STC8G1K08 7
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
1
2
3
4
×
C1
0.1u
注意:
如不需要进行【软件模拟USB下载】,芯片上电/复位时
P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时,指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 23 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.1.14 USB-Link1D 支持 脱机下载 说明
脱机下载是指脱离电脑主机进行下载的一种方法,一般是使用下载控制芯片(又称脱机下载母片)
进行控制。USB-Link1D 工具除了支持在线 ISP 下载,还支持脱机下载。USB-Link1D 工具使用外部的
22.1184MHz 晶振,可保证对目标芯片进行在线或脱机下载时,校准频率的精度。用户可将代码下载到
USB-Link1D 工具中,就可实现脱机下载。USB-Link1D 主控芯片如内部存储空间不够时,会将部分被
下载的用户程序用加密的方式加密放部分到片外串行 Flash。
先将 USB-Link1D 工具使用 USB 线连接到电脑,然后按照下面的步骤进行脱机下载:
1、选择目标芯片的型号
2、打开需要下载的文件
3、设置硬件选项
4、进入“USB-Link1D 脱机”页面,点击“将用户程序下载到编程器以供脱机下载“按钮,即可将
用户代码下载到 USB-Linik1D 工具中。下载完成后便使用 USB-Link1D 工具对目标芯片进行脱
机下载了
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 24 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.1.15 USB-Link1D 支持 脱机下载,如何免烧录环节
大批量生产,如何省去专门的烧录人员,如何无烧录环节
大批量生产,你在将由 STC 的 MCU 作为主控芯片的控制板组装到设备里面之前,在你将 STC MCU 贴
片到你的控制板完成之后,你必须测试你的控制板的好坏。不要说 100%,直通无问题,那是抬杠,不
是搞生产,只要生产,就会虚焊,短路,部分原件贴错,部分原件采购错。
所以在贴片回来后,组装到外壳里面之前,你必须要测试,你的含有 STC MCU 控制板的好坏,好的去
组装,坏的去维修抢救。
控制板的测试/不是烧录!
控制板的测试环节必须有,但烧录环节可以省!
大批量生产,必须要有方便控制板测试的测试架/下面接上我们的脱机烧录工具:
USB-Link1D / U8W-Mini / U8W,还要接上其他控制部分!
1、通过 USER-VCC、P3.0、P3.1、GND 连接,要工人每次都开电源
2、通过 S-VCC、P3.0、P3.1、GND 连接,不要你开电源,STC 的脱机工具给你自动供电
外面帮你做一个测试架的成本 500 元以下,就是有机玻璃,夹具,顶针。
1 个测试你控制板是否正常的工人管理 2 - 3 个 测试架
操作流程:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 25 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1、将你的 MCU 控制板 卡到测试架 1 上
2、将你的 MCU 控制板 卡到测试架 2 上,测试架 1 上的程序已烧录完成/感觉不到烧录时间
3、测试 测试架 1 上的 MCU 主控板功能是否正常,正常放到正常区,不正常,放到不正常区
4、给测试架 1 卡上新的未测试的无程序的控制板
5、测试 测试架 2 上的未测试控制板/程序不知何时早就不知不觉的烧好了,换新的未测试未烧录的控制
板
6、循环步骤 3 到步骤 5
========不需要安排烧录人员
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 26 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.1.16 USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录
10u
以上
nRST/P5.4
Vcc
0.1u
P5.5
Gnd
1
2
3
4
8
STC8G1K08 7
SOP8/DFN8
6
5
P3.3
P3.2
P3.1/TxD
P3.0/RxD
1、SOP8封装可以使用SOP8转DIP8转换座或
SOP16转DIP16转换座,插在烧录锁紧座上进行烧录
2、DFN8封装可以使用DFN8转DIP8转换座,
插在烧录锁紧座上进行烧录
USB型 脱机/联机烧录工具 USB-Writer1A (人民币100元)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 27 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.1.17 USB-Writer1A 支持 自动烧录机,通信协议和接口
S-P3.0(连接从机的P3.0)
(仅从本工具用户系统供电)S-Vcc
S-P3.1(连接从机的P3.1)
USB-CDC串口连接用户的TxD
USB-CDC串口连接用户的RxD
Gnd(地线)
(仅由用户系统给本工具供电)User-Vcc
脱机烧录用户程序按键
编程接口
USB Type-C接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
40Pin锁紧座
USB接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
USB Writer1A更新系统程序按键
升级USB Writer1A编程器
主控CPU电源按键
自动烧录机
分选机接口
ERROR(错误信号)
OK(成功信号)
EOT(完成信号)
Start(开始信号)
Gnd(地线)
自动烧录接口(分选机自动控制接口)协议:
Start:开始信号输入脚。从外部输入低电平信号触发开始脱机烧录,低电平必须维持 25 毫秒以上
EOT:烧录完成信号输出脚。脱机烧录完成后,工具输出 20ms~250ms 的低电平 EOT 信号。电平宽
度如下图所示的地方进行设置
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 28 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
OK:良品信号输出脚。下载成功后工具从 OK 脚输出低电平信号,信号与 EOT 信号同步。
Err:不良品信号输出脚。若下载失败,工具从 ERR 脚输出输出低电平信号,信号与 EOT 完成信号同
步。
25ms以上
20ms~200ms
Start
EOT
OK
Err
开始下载
脱机下载
下载完成
OK和Err只会输出其中一个信号
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 29 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.2 STC8G1K08A-36I-SOP8/DFN8/DIP8 系列
2.2.1
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机)
选型价格(不需要外部晶振、不需要外部复位,10 位 ADC,6 通道)
6
PCA/CCP/PWM
看
门
狗
复
位
定
时
器
1
内
部
低
压
检
测
中
断
并
可
掉
电
唤
醒
ADC 3
路 比
高 较
速 器
(
可
当
掉 (
电
(
路
可 唤 路
当 醒
外 专
,
部 用 可 可
中 定 当 作
断 时
外
并 器 路 部
可
掉
掉
电
电
使 检
唤
用 测
醒
) )
)
内
部
高
精
准
时
钟
(
程
序
加
密
后
传
输
(
防
拦
截
)
可
设
置
下
次
更
新
程
序
需
口
令
支
持
支 软 本
持 件 身
就
可
在
线
下 直 仿
接
载
下 真
载
主
力
产
品
供
货
信
( 息
不
建
议
使
用
)
有 10 位
有
有 4级 有
是
有
是
是
是
是 ¥0.65 ¥0.69 ¥0.75
STC8G1K17A 1.9-5.5 17K 256 1K
2
IAP
6
1
有
有
有
2
3
有 10 位
有
有 4级 有
是
有
是
是
-
- ¥0.75 ¥0.79 ¥0.85
DIP8
3
3
D/A
DFN8
2
SOP8
有
外
部
管
脚
也
可
掉
电
唤
醒
)
36MHz
有
位
乘
除
法
器
PCA
有
字 字
节 节 字
节
16
1
SRAM
6
万
次
DPTR
4K
10
2
)
8051 RAM
STC8G1K08A 1.9-5.5 8K 256 1K
V
USB
可
对
外
输
出
时
钟
以 及
下 复
可 位
调
)
追
频
价
格
及
封
装
RS485
A/D
内
部
高
可
靠
复
位
(
可
选
复
位
门
槛
电
压
)
I2 C
T0-T1
硬
件
支
持
上
升
沿
中
断
、
下
降
沿
中
断
以
及
边
沿
中
断
SPI
口
最
万 多
可 次 数
量
增
可 字
减 节
串
口
并
可
掉
电
唤
醒
MDU16
I/O
强
大
的
双
EEPROM 10
,
内
部
大
容
量
扩
展
,
内
部
传
统
/
xdata
Flash
idata
单
片
机
型
号
工
作
电
压
(
程
序
存
储
器
定
时
器
计
数
器
(
现
货
注:以上的单价为 10K 及以上订货量的价格,量小则每片需增加 0.1 元人民币。
内核
超高速 8051 内核(1T),比传统 8051 约快 12 倍以上
指令代码完全兼容传统 8051
13 个中断源,4 级中断优先级
支持在线仿真
工作电压
1.9V~5.5V
内建 LDO
工作温度
-40℃~85℃(超温度范围应用请参考电器特性章节说明)
Flash 存储器
最大 17K 字节 FLASH 程序存储器(ROM),用于存储用户代码
支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上
支持在系统编程方式(ISP)更新用户应用程序,无需专用编程器
支持单芯片仿真,无需专用仿真器,理论断点个数无限制
SRAM
128 字节内部直接访问 RAM(DATA)
128 字节内部间接访问 RAM(IDATA)
1024 字节内部扩展 RAM(内部 XDATA)
时钟控制
内部高精度、高稳定的高速 IRC(4MHz~38MHz,ISP 编程时可进行上下调整,还可以用户软件分频到
较低的频率工作,如 100KHz)
误差±0.3%(常温下 25℃)
-0.88%~+1.05%温漂(温度范围,-20℃~65℃)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 30 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
-1.38%~+1.42%温漂(全温度范围,-40℃~85℃)
内部 32KHz 低速 IRC(为了低功耗,省去了温度补偿和电压补偿电路,误差较大)
(芯片上电工作过程:上电复位/复位脚复位/看门狗复位/低压检测复位时,芯片默认从 ISP 系统程序开始执行代
码,此时固定使用内部 24MHz 的高速 IRC 时钟,当需要下载用户程序且下载完成后复位到用户程序区或者不需
要下载直接复位到用户程序区时,默认会使用上次用户下载时所调节的高速 IRC 时钟,如果用户程序需要使用
外部高速晶振、外部 32.768KHz 晶振或者内部 30KHz 低速 IRC,则需要用户软件先启动相应的时钟,然后通过
设置 CLKSEL 寄存器进行切换)
复位
硬件复位
上电复位。(在芯片未使能低压复位功能时有效)
复位脚复位。出厂时 P5.4 默认为 I/O 口,ISP 下载时可将 P5.4 管脚设置为复位脚(注意:当设置 P5.4
管脚为复位脚时,复位电平为低电平)
看门狗溢出复位
低压检测复位,提供 4 级低压检测电压:2.0V、2.4V、2.7V、3.0V。
软件复位
软件方式写复位触发寄存器
中断
提供 13 个中断源:INT0(支持上升沿和下降沿中断)、INT1(支持上升沿和下降沿中断)、INT2(只支
持下降沿中断)、INT3(只支持下降沿中断)、INT4(只支持下降沿中断)、定时器 0、定时器 1、串口
1、ADC 模数转换、LVD 低压检测、SPI、I2C、PCA/CCP/PWM
提供 4 级中断优先级
时钟停振模式下可以唤醒的中断:INT0(P3.2)、INT1(P3.3)、INT2(P3.6)、INT3(P3.7)、INT4(P3.0)、T0(P3.4)、
T1(P3.5)、RXD(P3.0/P3.2/P1.6/P5.4)、CCP0(P3.2/P3.1)、CCP1(P3.3)、CCP2(P5.4/P5.5)、I2C_SDA(P3.3/P5.5)
以及低压检测中断、掉电唤醒定时器唤醒。
数字外设
2 个 16 位定时器:定时器 0、定时器 1、其中定时器 0 的模式 3 具有 NMI(不可屏蔽中断)功能,定时器
0 和定时器 1 的模式 0 为 16 位自动重载模式
1 个高速串口:串口 1,波特率时钟源最快可为 FOSC/4
3 组 16 位 CCP/PCA/PWM 模块:CCP0、CCP1、CCP2,可用于捕获、高速脉冲输出,及 6/7/8/10 位的 PWM
输出
SPI:支持主机模式和从机模式以及主机/从机自动切换
I2C:支持主机模式和从机模式
MDU16:硬件 16 位乘除法器(支持 32 位除以 16 位、16 位除以 16 位、16 位乘 16 位、数据移位以及数
据规格化等运算)
模拟外设
超高速 ADC,支持 10 位精度 6 通道(通道 0~通道 5)的模数转换,速度最快能达到 500K(每秒进行
50 万次 ADC 转换)
ADC 的通道 15 用于测试内部 1.19V 参考信号源(芯片在出厂时,内部参考信号源已调整为 1.19V)
DAC:3 路 PCA/CCP/PWM 可当 3 路 DAC 使用
GPIO
最多可达 6 个 GPIO:P3.0~P3.3、P5.4~P5.5
所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏模式、高阻输入模式
除 P3.0 和 P3.1 外,其余所有 I/O 口上电后的状态均为高阻输入状态,用户在使用 I/O 口时必须先设置 I/O
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 31 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
口模式,另外每个 I/O 均可独立使能内部 4K 上拉电阻
封装
SOP8,DFN8(3mm*3mm),DIP8
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 32 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G1K08A-36I-SOP8/DFN8/DIP8 管脚图,ISP 下载/编程线路图
2.2.2
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
MCU-VCC
10u
以上
CCP2_2/CCP2/MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVcc
0.1u ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
Gnd/AGnd
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MISO/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
UART1
RxD
P3.0
P3.2
P5.4
-
SPI
TxD
P3.1
P3.3
P5.5
-
SS
P5.5
-
I2C
MOSI
P5.4
-
MISO
P3.3
-
SCLK
P3.2
-
PCA
SCL
P3.2
P5.4
-
SDA
P3.3
P5.5
-
ECI
P5.5
P5.5
P3.1
-
ADC
CCP0
P3.2
P3.1
P3.2
-
CCP1
P3.3
P3.3
P3.3
-
CCP2
P5.4
P3.4
P3.4
-
ADC0
P3.0
ADC8
-
ADC1
P3.1
ADC9
-
ADC2
P3.2
ADC10
-
ADC3
P3.3
ADC11
-
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
ADC4
P5.4
ADC12
-
ADC5
P5.5
ADC13
-
ADC6
ADC14
-
ADC7
ADC15
1.19V
这个功能
使用USB转串口芯片进行ISP下载/烧录/仿真,目标系统 手动停电/上电
Ai8H2K12U
USB+5V
USB接口
+5V
D-
D+
Gnd
USB+5V
连接目标单片机的P3.0
1 P5.4/nRST
P3.3/P1.1/TxD2
2 Vcc
P3.2/P1.0/RxD2
7
D+/TxD/P3.1
6
D-/RxD/P3.0
5
8
1
2
连接目标单片机的P3.1
22R
3
4
DD+
22R
USB-TypeA
建议用USB-TypeC
10u
以上
0.1u
3 UCap
0.1u
4 Gnd/AGnd
RMB0.95
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 33 -
STC8G 系列技术手册
2.2.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
管脚说明
编号
SOP8
名称
类型
说明
P5.4
I/O
NRST
I
复位引脚(低电平复位)
MCLKO
O
主时钟分频输出
INT2
I
外部中断 2
T0
I
定时器 0 外部时钟输入
T1CLKO
O
定时器 1 时钟分频输出
RxD_3
I
串口 1 的接收脚
MOSI
I/O
SPI 主机输出从机输入
SCL_2
I/O
I2C 的时钟线
ADC4
I
CCP2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
CCP2_2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
Vcc
Vcc
电源脚
AVcc
Vcc
ADC 电源脚
P5.5
I/O
标准 I/O 口
INT3
I
外部中断 3
T1
I
定时器 1 外部时钟输入
T0CLKO
O
定时器 0 时钟分频输出
TxD_3
O
串口 1 的发送脚
SS
I
SPI 的从机选择脚(主机为输出)
SDA_2
I/O
ADC5
I
ADC 模拟输入通道 5
ECI
I
PCA 的外部脉冲输入
ECI_2
I
PCA 的外部脉冲输入
CCP2_3
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
Gnd
Gnd
地线
AGnd
Gnd
ADC 地线
P3.0
I/O
标准 I/O 口
RxD
I
串口 1 的接收脚
INT4
I
外部中断 4
ADC0
I
ADC 模拟输入通道 0
P3.1
I/O
TxD
O
串口 1 的发送脚
ADC1
I
ADC 模拟输入通道 1
ECI_3
I
PCA 的外部脉冲输入
CCP0_2
I/O
DFN8
DIP8
1
2
3
4
5
6
标准 I/O 口
ADC 模拟输入通道 4
I2C 的数据线
标准 I/O 口
PCA 的捕获输入、脉冲输出和 PWM 输出
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 34 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
编号
SOP8
名称
类型
说明
P3.2
I/O
标准 I/O 口
INT0
I
外部中断 0
SCLK
I/O
SPI 的时钟脚
SCL
I/O
I2C 的时钟线
RxD_2
I
串口 1 的接收脚
ADC2
I
ADC 模拟输入通道 2
CCP0
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
CCP0_3
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P3.3
I/O
标准 I/O 口
INT1
I
外部中断 1
MISO
I/O
SPI 主机输入从机输出
SDA
I/O
I2C 的数据线
TxD_2
O
串口 1 的发送脚
ADC3
I
ADC 模拟输入通道 3
CCP1
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
CCP1_2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
CCP1_3
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
DFN8
DIP8
7
8
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 35 -
STC8G 系列技术手册
2.2.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯
使用【USB Link1D】对 STC8G1K08A系列 进行全自动停电/上电串口烧录、仿真+串口通讯
【USB Link1D】工具:支持 全自动 停电 / 上电,在线下载 / 脱机下载,仿真
连接 目标单 片机P3.1
连接 目标单 片机P3.0
MC U-VCC
连接 目标单 片机第n组串口 发送脚TxDn
连接 目标单 片机第n组串口 接收脚RxDn
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
CCP2_2/CCP2/MC LKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVc c
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
10u
以上
Gnd/AGnd
0.1u
M CU-VCC
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MIS O/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 36 -
STC8G 系列技术手册
2.2.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯
使用【一箭双雕之USB转双串口】对 STC8G1K08A系列 进行串口烧录、仿真+串口通讯
【一箭双雕之USB转双串口】:支持 全自动 停电 / 上电,在线下载,仿真
5V/3.3V 通过 跳线选择
连接目标单片机第n组串口接收脚RxDn
连接目标单片机第n组串口发送脚TxDn
MCU-VCC
连接目标单片机P3.0
连接目标单片机P3.1
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
CCP2_2/CCP2/MC LKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVc c
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
10u
以上
Gnd/AGnd
0.1u
M CU-VCC
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MIS O/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 37 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V
2.2.6
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,5V
USB转第二组串口
第二组串口用于和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
1N5819
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
1
22R
2
3
D-
0.1u
D+
22R
4
USB-TypeA
建议用USB-TypeC
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
USB转第一组串口
第一组用于下载或者通讯
1N5819
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
推挽/开漏
16
高阻输入
15
14
13
12
300R
11
可做电源
10 D+
供应模块
9 D关电/供电
手动按键
S-RxD
S-TxD
系统电源
(可从USB取电)
Q1
P-MOS
S
MCU-VCC
D
0.47u
10u
以上
104
G
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
470R
一般不焊
20K
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
MCU-VCC
10u
以上
CCP2_2/CCP2/MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVcc
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
Gnd/AGnd
0.1u
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MISO/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 38 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图
2.2.7
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,3.3V
USB转第二组串口
第二组串口用于和目标系统的
其他串口通讯
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组的TxDn
连接目标单片机的第n组的RxDn
1N5819
USB+5V
USB接口
+5V
D-
D+
Gnd
USB+5V
1
2
22R
3
4
D-
0.1u
D+
22R
USB-TypeA
建议用USB-TypeC
10u
以上
1
推挽/开漏 2
3
4
PowerCtrl 5
6
7
8
0.1u
USB转第一组串口
第一组用于下载或者通讯
1N5819
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
推挽/开漏
16
高阻输入
15
14
P3.5管脚低电平供电
13
12 P5.4管脚高电平供电
11
10
D+
9
D-
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源输入 Vin
也可电脑USB+5V供电
或充电宝USB+5V供电
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
VIN
2
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
芯片上电时 P5.4-nRST 输出高电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,会自动
控制MCU-VCC停电0.5S再上电进行ISP
下载。下载完成后会持续供电
VOUT
GND
CE
C1
0.1u
PowerCtrl
10K
电源按键
MCU-VCC
5
NC
×
按下按键停电
松开按键上电
C2
0.1u
该按键可不焊
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
CCP2_2/CCP2/MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVcc
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
10u
Gnd/AGnd
以上
0.1u
MCU-VCC
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MISO/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 39 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择
2.2.8
使用 USB转双串口 芯片 进行 全自动 烧录/仿真+串口通讯,5V/3.3V跳线选择
USB+5V
USB接口
1
+5V
22R
2
D-
3
D+
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
D+
22R
4
Gnd
USB转第二组串口
第二组串口用于和目标系统
的其他串口通讯
D-
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
USB-TypeA
建议用USB-TypeC
1N5819
用跳线选择工作电压5V或3.3V
3
1
Vcc
2
跳线插座
2.54mm
USB+5V
0.1u
GND
VIN
3
VOUT
1117M3-33
10u
以上
1
2
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
USB转第一组串口
推挽/开漏
高阻输入
16
15
14
13
12
300R
11
10 D+
9 D-
第一组用于下载或者通讯
1N5819
S-RxD 连接目标单片机的P3.0/RxD
S-TxD 连接目标单片机的P3.1/TxD
Q1
P-MOS
Vcc
可做电源
供应模块
关电/供电 10u
手动按键 以上
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
S
MCU-VCC
D
0.47u
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
20K
3.3V
104
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
CCP2_2/CCP2/MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVcc
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
10u
Gnd/AGnd
以上
0.1u
MCU-VCC
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MISO/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 40 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图
2.2.9
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,5V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
Power-On
2
22R
3
4
1
P5.4/nRST
P3.3/P1.1/TxD2
22R
USB-TypeA
建议用USB-TypeC
D-
10u
D+
以上
0.1u
0.1u
2
Vcc
3
4
Q1
P-MOS
连接 目标单 片机的P3.0
8
连接 目标单 片机的P3.1
1
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
P3.2/P1.0/RxD2
7
UCap
D+/TxD/P3.1
6
Gnd/AGnd
D-/RxD/P3.0
5
1u
D+
D-
RMB0.95 SOP8
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
Power-On
R1
10K
R3
20K
S
M CU-VCC
D
G
0.1u
R4
20K
R2
20K
Q2
SS8050
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
CCP2_2/CCP2/MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVcc
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
10u
Gnd/AGnd
以上
0.1u
MCU-VCC
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MISO/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 41 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.2.10 通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,3.3V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
USB+5V
+5V
D-
D+
Gnd
1
2
Power-On
22R
3
4
P3.3/P1.1/TxD2
8
2
Vcc
P3.2/P1.0/RxD2
7
10u
0.1u
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
以上
0.1u
USB-TypeA
建议用USB-TypeC
P5.4/nRST
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
连接 目标单 片机的P3.1
DD+
22R
连接 目标单 片机的P3.0
1
RMB0.95
D+
D-
SOP8
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
2
VIN
3
CE
C1
0.1u
VOUT
M CU-VCC
5
GND
NC
4
×
10K
C2
0.1u
Power-On 高输 出,低关 断
全自动控制电源开/关
P5.4管脚高电平供电
电源开关,可不焊
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
MCU-VCC
10u
以上
CCP2_2/CCP2/MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVcc
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
Gnd/AGnd
0.1u
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MISO/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 42 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.2.11 USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择
USB转串口 芯片 全自动 停电/上电,烧录/仿真/通信,5V/3.3V跳线选择
用跳线选择工作电压5V或3.3V
Gnd
D-
3
D+
Vcc
22R
4
1117M3-33
10u
以上
3
USB-TypeA
建议用USB-TypeC
VOUT
D+
22R
2
GND
D-
跳线插座
2.54mm
1
VIN
+5V
3
1
USB接口
2
USB+5V
1
10u
以上
3.3V
2
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
Q1
P-MOS
Vcc
Ai8H2K12U
Vcc
Power-On
1
P5.4/nRST
连接 目标单 片机的P3.0
P3.3/P1.1/TxD2
8
P3.2/P1.0/RxD2
7
1u
连接 目标单 片机的P3.1
2 Vcc
10u
0.1u
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
以上
0.1u
D+
D-
RMB0.95 SOP8
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
R1
10K
S
R3
20K
M CU-VCC
D
G
0.1u
R4
20K
Power-On
R2
20K
P5.4管脚高电平供电
Q2
SS8050
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
MCU-VCC
10u
以上
CCP2_2/CCP2/MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVcc
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
Gnd/AGnd
0.1u
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MISO/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 43 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.2.12 USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己手动停电/上电
Ai8H2K12U
USB+5V
USB接口
USB+5V
1 P5.4/nRST
+5V
DD+
Gnd
P3.3/P1.1/TxD2
连接 目标单 片机的P3.0
8
1
2
连接 目标单 片机的P3.1
22R
3
4
2 Vcc
DD+
22R
USB-TypeA
建议用USB-TypeC
10u
以上
0.1u
0.1u
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
D+
D-
RMB0.95
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
MCU-VCC
10u
以上
CCP2_2/CCP2/MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVcc
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
Gnd/AGnd
0.1u
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3/ADC3/TxD_2/INT1/MISO/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
正看芯片丝印最下面一行最后一个字母为芯片版本号
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 44 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.2.13 USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己 手动 停电/上电
+5V
DD+
Gnd
Ai8H2K12U
USB+5V
USB+5V
USB接口
连接 目标单 片机的P3.0
1
1 P5.4/nRST
P3.3/P1.1/TxD2
2
2 Vcc
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
连接 目标单 片机的P3.1
22R
D10u
3
4
8
D+
0.1u
以上
22R
0.1u
D+
D-
RMB0.95
USB-TypeA
建议用USB-TypeC
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
STC8G1K08A-36I-SOP8/DFN8/DIP8 最小系统 示意图
MCU-VCC
10u
以上
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
CCP2_2/CCP2/MCLKO/nRST/SCL_2/MOSI/RxD_3/T1CLKO/T0/INT2/ADC4/P5.4
Vcc/AVcc
ECI_2/ECI/CCP2_3/SDA_2/SS/TxD_3/T0CLKO/T1/INT3/ADC5/P5.5
Gnd/AGnd
0.1u
正看芯片丝印最下面一行最后一个字母为芯片版本号
2
VIN
VOUT
MCU-VCC
5
GND
3
CE
C1
0.1u
P3.3/ADC3/TxD_2/INT1/MISO/SDA/CCP1/CCP1_2/CCP1_3
P3.2/ADC2/RxD_2/INT0/SCLK/SCL/CCP0/CCP0_3
P3.1/ADC1/TxD/CCP0_2/ECI_3
P3.0/ADC0/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
10K
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
NC
4
按下按键停电
松开按键上电
×
C1
0.1u
注意:如不需要进行【软件模拟USB下载】,芯片上电/复位时
P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
电源按键
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 45 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.2.14 USB-Link1D 支持 脱机下载 说明
脱机下载是指脱离电脑主机进行下载的一种方法,一般是使用下载控制芯片(又称脱机下载母片)
进行控制。USB-Link1D 工具除了支持在线 ISP 下载,还支持脱机下载。USB-Link1D 工具使用外部的
22.1184MHz 晶振,可保证对目标芯片进行在线或脱机下载时,校准频率的精度。用户可将代码下载到
USB-Link1D 工具中,就可实现脱机下载。USB-Link1D 主控芯片如内部存储空间不够时,会将部分被
下载的用户程序用加密的方式加密放部分到片外串行 Flash。
先将 USB-Link1D 工具使用 USB 线连接到电脑,然后按照下面的步骤进行脱机下载:
1、选择目标芯片的型号
2、打开需要下载的文件
3、设置硬件选项
4、进入“USB-Link1D 脱机”页面,点击“将用户程序下载到编程器以供脱机下载“按钮,即可将
用户代码下载到 USB-Linik1D 工具中。下载完成后便使用 USB-Link1D 工具对目标芯片进行脱
机下载了
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 46 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.2.15 USB-Link1D 支持 脱机下载,如何免烧录环节
大批量生产,如何省去专门的烧录人员,如何无烧录环节
大批量生产,你在将由 STC 的 MCU 作为主控芯片的控制板组装到设备里面之前,在你将 STC MCU 贴
片到你的控制板完成之后,你必须测试你的控制板的好坏。不要说 100%,直通无问题,那是抬杠,不
是搞生产,只要生产,就会虚焊,短路,部分原件贴错,部分原件采购错。
所以在贴片回来后,组装到外壳里面之前,你必须要测试,你的含有 STC MCU 控制板的好坏,好的去
组装,坏的去维修抢救。
控制板的测试/不是烧录!
控制板的测试环节必须有,但烧录环节可以省!
大批量生产,必须要有方便控制板测试的测试架/下面接上我们的脱机烧录工具:
USB-Link1D / U8W-Mini / U8W,还要接上其他控制部分!
1、通过 USER-VCC、P3.0、P3.1、GND 连接,要工人每次都开电源
2、通过 S-VCC、P3.0、P3.1、GND 连接,不要你开电源,STC 的脱机工具给你自动供电
外面帮你做一个测试架的成本 500 元以下,就是有机玻璃,夹具,顶针。
1 个测试你控制板是否正常的工人管理 2 - 3 个 测试架
操作流程:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 47 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1、将你的 MCU 控制板 卡到测试架 1 上
2、将你的 MCU 控制板 卡到测试架 2 上,测试架 1 上的程序已烧录完成/感觉不到烧录时间
3、测试 测试架 1 上的 MCU 主控板功能是否正常,正常放到正常区,不正常,放到不正常区
4、给测试架 1 卡上新的未测试的无程序的控制板
5、测试 测试架 2 上的未测试控制板/程序不知何时早就不知不觉的烧好了,换新的未测试未烧录的控制
板
6、循环步骤 3 到步骤 5
========不需要安排烧录人员
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 48 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.2.16 USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录
10u
以上
0.1u
nRST/P5.4
Vcc/AVcc
P5.5
Gnd/AGnd
1
8
2 STC8G1K08A 7
3 SOP8/DFN8/DIP8 6
4
5
P3.3
P3.2
P3.1
P3.0
1、SOP8封装可以使用SOP8转DIP8转换座或
SOP16转DIP16转换座,插在烧录锁紧座上进行烧录
2、DFN8封装可以使用DFN8转DIP8转换座,
插在烧录锁紧座上进行烧录
3、DIP8封装可以直接插在烧录锁紧座上进行烧录
USB型 脱机/联机烧录工具 USB-Writer1A (人民币100元)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 49 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.2.17 USB-Writer1A 支持 自动烧录机,通信协议和接口
S-P3.0(连接从机的P3.0)
(仅从本工具用户系统供电)S-Vcc
S-P3.1(连接从机的P3.1)
USB-CDC串口连接用户的TxD
USB-CDC串口连接用户的RxD
Gnd(地线)
(仅由用户系统给本工具供电)User-Vcc
脱机烧录用户程序按键
编程接口
USB Type-C接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
40Pin锁紧座
USB接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
USB Writer1A更新系统程序按键
升级USB Writer1A编程器
主控CPU电源按键
自动烧录机
分选机接口
ERROR(错误信号)
OK(成功信号)
EOT(完成信号)
Start(开始信号)
Gnd(地线)
自动烧录接口(分选机自动控制接口)协议:
Start:开始信号输入脚。从外部输入低电平信号触发开始脱机烧录,低电平必须维持 25 毫秒以上
EOT:烧录完成信号输出脚。脱机烧录完成后,工具输出 20ms~250ms 的低电平 EOT 信号。电平宽
度如下图所示的地方进行设置
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 50 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
OK:良品信号输出脚。下载成功后工具从 OK 脚输出低电平信号,信号与 EOT 信号同步。
Err:不良品信号输出脚。若下载失败,工具从 ERR 脚输出输出低电平信号,信号与 EOT 完成信号同
步。
25ms以上
20ms~200ms
Start
EOT
OK
Err
开始下载
脱机下载
下载完成
OK和Err只会输出其中一个信号
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 51 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3 STC8G1K08-38I-TSSOP20/QFN20/SOP16 系列
特性及价格
2.3.1
选型价格(不需要外部晶振、不需要外部复位,10 位 ADC,15 通道)
4K 18
3
3
有
是
是
DIP16
2
SOP16
是
¥1.65 ¥1.65 ¥1.95 ¥1.65 ¥1.85
10
STC8G1K08 1.9-5.5 8K 256 1K
DIP20
有
支
持
支 软 本
持 件 身
就
可
在
线
下 直 仿
接
载
下 真
载
QFN20 (3mm*3mm)
可
设
置
下
次
更
新
程
序
需
口
令
主
力
产
品
供
货
信
息
价
格
及
封
装
TSSOP20
程
序
加
密
后
传
输
(
防
拦
截
)
USB
D/A
可
对
外
输
出
时
钟
以 及
下 复
可 位
调
)
追
频
36MHz
A/D
3
看
门
狗
复
位
定
时
器
内
部
高
精
准
时
钟
(
内
部
高
可
靠
复
位
(
可
选
复
位
门
槛
电
压
)
RS485
1
PCA
(
可
当
外
部
中
断
并
可
掉
电
唤
醒
)
掉
电
唤
醒
专
用
定
时
器
比
路 较
高 器
速 ( 内
可 部
当 低
压
(
路 检
路
测
中
, 断
可 并
可 作 可
当 外 掉
部 电
路 掉 唤
电 醒
检
使 测
用 )
)
ADC 3
有
支
持
上
升
沿
中
断
、
下
降
沿
中
断
以
及
边
沿
中
断
15
有
T0-T2
2
外
部
管
脚
也
可
掉
电
唤
醒
)
PCA/CCP/PWM
/
I2 C
口
最
万 多
可 次 数
量
增
可 字
减 节
串
口
并
可
掉
电
唤
醒
SPI
I/O
SRAM
字 字
节 节 字
节
强
大
的
双
DPTR
8051 RAM
万
次
,
内
部
大
容
量
扩
展
EEPROM 10
idata
)
10
V
单
片
机
型
号
,
内
部
传
统
xdata
Flash
工
作
电
压
(
程
序
存
储
器
定
时
器
计
数
器
(
有
有
有 4级 有
是
是
位
¥1.75 ¥1.75 ¥2.05 ¥1.75 ¥1.95
10
STC8G1K17 1.9-5.5 17K 256 1K
2 IAP 18
2
有
有
3
3
有
有
有
有 4级 有
是
有
是
是
-
现
货
-
位
内核
超高速 8051 内核(1T),比传统 8051 约快 12 倍以上
指令代码完全兼容传统 8051
16 个中断源,4 级中断优先级
支持在线仿真
工作电压
1.9V~5.5V
内建 LDO
工作温度
-40℃~85℃(超温度范围应用请参考电器特性章节说明)
Flash 存储器
最大 17K 字节 FLASH 程序存储器(ROM),用于存储用户代码
支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上
支持在系统编程方式(ISP)更新用户应用程序,无需专用编程器
支持单芯片仿真,无需专用仿真器,理论断点个数无限制
SRAM
128 字节内部直接访问 RAM(DATA)
128 字节内部间接访问 RAM(IDATA)
1024 字节内部扩展 RAM(内部 XDATA)
时钟控制
内部高精度、高稳定的高速 IRC(4MHz~36MHz,ISP 编程时可进行上下调整,还可以用户软件分频到
较低的频率工作,如 100KHz)
误差±0.3%(常温下 25℃)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 52 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
-0.88%~+1.05%温漂(温度范围,-20℃~65℃)
-1.38%~+1.42%温漂(全温度范围,-40℃~85℃)
研发顾问:13922829991
内部 32KHz 低速 IRC(为了低功耗,省去了温度补偿和电压补偿电路,误差较大)
外部晶振(4MHz~36MHz)和外部时钟
选型顾问: 13922805190
(芯片上电工作过程:上电复位/复位脚复位/看门狗复位/低压检测复位时,芯片默认从 ISP 系统程序开始执行代
码,此时固定使用内部 24MHz 的高速 IRC 时钟,当需要下载用户程序且下载完成后复位到用户程序区或者不需
要下载直接复位到用户程序区时,默认会使用上次用户下载时所调节的高速 IRC 时钟,如果用户程序需要使用
外部高速晶振、外部 32.768KHz 晶振或者内部 30KHz 低速 IRC,则需要用户软件先启动相应的时钟,然后通过
设置 CLKSEL 寄存器进行切换)
复位
硬件复位
上电复位。(在芯片未使能低压复位功能时有效)
复位脚复位。出厂时 P5.4 默认为 I/O 口,ISP 下载时可将 P5.4 管脚设置为复位脚(注意:当设置 P5.4
管脚为复位脚时,复位电平为低电平)
看门狗溢出复位
低压检测复位,提供 4 级低压检测电压:2.0V、2.4V、2.7V、3.0V。
软件复位
软件方式写复位触发寄存器
中断
提供 16 个中断源:INT0(支持上升沿和下降沿中断)、INT1(支持上升沿和下降沿中断)、INT2(只支
持下降沿中断)、INT3(只支持下降沿中断)、INT4(只支持下降沿中断)、定时器 0、定时器 1、定时
器 2、串口 1、串口 2、ADC 模数转换、LVD 低压检测、SPI、I2C、比较器、PCA/CCP/PWM
提供 4 级中断优先级
时钟停振模式下可以唤醒的中断:INT0(P3.2)、INT1(P3.3)、INT2(P3.6)、INT3(P3.7)、INT4(P3.0)、T0(P3.4)、
T1(P3.5)、T2(P1.2)、RXD(P3.0/P3.6/P1.6)、RXD2(P1.0)、CCP0(P1.1/P3.5)、CCP1(P1.0/P3.6)、CCP2(P3.7)、
I2C_SDA(P1.4/P3.3)以及比较器中断、低压检测中断、掉电唤醒定时器唤醒。
数字外设
3 个 16 位定时器:定时器 0、定时器 1、定时器 2,其中定时器 0 的模式 3 具有 NMI(不可屏蔽中断)功
能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式
2 个高速串口:串口 1、串口 2,波特率时钟源最快可为 FOSC/4
3 组 16 位 CCP/PCA/PWM 模块:CCP0、CCP1、CCP2,可用于捕获、高速脉冲输出,及 6/7/8/10 位的 PWM
SPI:支持主机模式和从机模式以及主机/从机自动切换
I2C:支持主机模式和从机模式
输出
模拟外设
超高速 ADC,支持 10 位精度 15 通道(通道 0~通道 14)的模数转换,速度最快能达到 500K(每秒进行
50 万次 ADC 转换)
ADC 的通道 15 用于测试内部 1.19V 参考信号源(芯片在出厂时,内部参考信号源已调整为 1.19V)
比较器,一组比较器(比较器的正端可选择 CMP+端口和所有的 ADC 输入端口,所以比较器可当作多路
比较器进行分时复用)
DAC:3 路 PCA/CCP/PWM 可当 3 路 DAC 使用
GPIO
最多可达 18 个 GPIO:P1.0~P1.7、P3.0~P3.7、P5.4~P5.5
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 53 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏模式、高阻输入模式
除 P3.0 和 P3.1 外,其余所有 I/O 口上电后的状态均为高阻输入状态,用户在使用 I/O 口时必须先设置 I/O
口模式,另外每个 I/O 均可独立使能内部 4K 上拉电阻
封装
TSSOP20、QFN20(3mm*3mm)、SOP20、DIP20、SOP16、DIP16
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 54 -
STC8G 系列技术手册
2.3.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G1K08-38I-TSSOP20 管脚图,ISP 下载/编程线路图
STC8G1K08-38I-TSSOP20 最小系统 示意图
UART1
RxD
P3.0
P3.6
P1.6
-
UART2
TxD
P3.1
P3.7
P1.7
-
RxD2
P1.0
-
PCA/CCP/PWM
TxD2
P1.1
-
ECI
P1.2
P3.4
-
CCP0
P1.1
P3.5
-
SPI
CCP1
P1.0
P3.6
-
CCP2
P3.7
P3.7
-
I2C
SS
P1.2
P3.5
MOSI
P1.3
P3.4
MISO
P1.4
P3.3
SCLK
P1.5
P3.2
SCL
P1.5
P3.2
SDA
P1.4
P3.3
CMP1.19V
P3.6
CMPO
P3.4
-
ADC
ADC0
P1.0
ADC8
P3.0
ADC1
P1.1
ADC9
P3.1
ADC2
P1.2
ADC10
P3.2
ADC3
P1.3
ADC11
P3.3
ADC4
P1.4
ADC12
P3.4
ADC5
P1.5
ADC13
P3.5
ADC6
P1.6
ADC14
P3.6
TSSOP20
1
2
3
4
5
6
7
8
9
10
CMP+
P3.7
ADCIN
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
M CU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
0.1u
10u
P5.5
以上
Gnd/AGnd
CMP
ADC7
P1.7
ADC15
1.19V
20
19
18
17
16
15
14
13
12
11
P1.1/ADC1/TxD2/CCP0
CCP是英文单词的缩写
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMP- PWM(脉宽调制)
P3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
使用USB转串口芯片进行ISP下载/烧录/仿真,目标系统 手动停电/上电
Ai8H2K12U
USB+5V
USB接口
USB+5V
1
+5V
DD+
Gnd
P5.4/nRST
P3.3/P1.1/TxD2
连接 目标单 片机的P3.0
8
1
2
连接 目标单 片机的P3.1
22R
3
4
2 Vcc
D-
D+
22R
USB-TypeA
建议用USB-TypeC
10u
以上
0.1u
0.1u
P3.2/P1.0/RxD2
7
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
RMB0.95
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 55 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 56 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G1K08-38I-QFN20 管脚图,ISP 下载/编程线路图
2.3.3
UART1
RxD
P3.0
P3.6
P1.6
-
UART2
TxD
P3.1
P3.7
P1.7
-
P3.7/INT3/TxD_2/CCP2/CCP2_2/CMP+
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMPP3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
STC8G1K08-38I-QFN20 最小系统 示意图
CMP
RxD2
P1.0
-
TxD2
P1.1
-
CMP+
P3.7
ADCIN
CMP1.19V
P3.6
CMPO
P3.4
-
ADC
ADC1 ADC2 ADC3 ADC4 ADC5 ADC6 ADC7
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
ADC9 ADC10 ADC11 ADC12 ADC13 ADC14 ADC15
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
1.19V
SS
P1.2
P3.5
I2C
MOSI
P1.3
P3.4
MISO
P1.4
P3.3
SCLK
P1.5
P3.2
SCL
P1.5
P3.2
SDA
P1.4
P3.3
CCP1
P1.0
P3.6
-
CCP2
P3.7
P3.7
-
PCA/CCP/PWM
ECI
P1.2
P3.4
-
CCP是英文单词的缩写
Capture(捕获)
Compare(比较)
PWM(脉宽调制)
CCP0
P1.1
P3.5
-
15
14
13
12
11
ADC0
P1.0
ADC8
P3.0
SPI
16
10
17
9
STC8G1K08
18
8
QFN20
19
7
20
6
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
Gnd/AGnd
P5.5
1
2
3
4
5
CCP1/RxD2/ADC0/P1.0
I2CSDA/MISO/ADC4/P1.4
T2CLKO/MOSI/ADC3/P1.3
T2/ECI/SS/ADC2/P1.2
CCP0/TxD2/ADC1/P1.1
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
M CU-VCC
0.1u
10u
以上
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,3.3V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
USB+5V
+5V
DD+
Gnd
1
2
Power-On
22R
3
4
P5.4/nRST
P3.3/P1.1/TxD2
8
2
Vcc
P3.2/P1.0/RxD2
7
10u
0.1u
D+/TxD/P3.1
6
D-/RxD/P3.0
5
3 UCap
以上
USB-TypeA
建议用USB-TypeC
0.1u
4
Gnd/AGnd
RMB0.95
SOP8
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
连接 目标单 片机的P3.1
DD+
22R
连接 目标单 片机的P3.0
1
2
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
VIN
M CU-VCC
5
GND
3
CE
C1
0.1u
VOUT
NC
4
×
10K
C2
0.1u
Power-On 高输 出,低关 断
全自动控制电源开/关
电源开关,可不焊
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 57 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 58 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G1K08-38I-SOP16 管脚图,ISP 下载/编程线路图
2.3.4
STC8G1K08-38I-SOP16 最小系统 示意图
UART1
SPI
UART2
RxD
P3.0
P3.6
P1.6
-
TxD
P3.1
P3.7
P1.7
-
RxD2
P1.0
-
I2C
SS
P3.5
TxD2
P1.1
-
MOSI
P3.4
MISO
P3.3
SCLK
P3.2
SCL
P3.2
PCA/CCP/PWM
SDA
P3.3
ECI
P3.4
-
CCP0
P1.1
P3.5
-
CCP1
P1.0
P3.6
-
CCP2
P3.7
P3.7
-
ADC
ADC0
P1.0
ADC8
P3.0
ADC1
P1.1
ADC9
P3.1
ADC2
ADC10
P3.2
ADC3
ADC11
P3.3
ADC4
ADC12
P3.4
ADC5
ADC13
P3.5
ADC6
P1.6
ADC14
P3.6
ADC7
P1.7
ADC15
1.19V
CMP
CMP+
P3.7
ADCIN
CMPO
P3.4
-
CCP是英文单词的缩写
P3.7/INT3/TxD_2/CCP2/CCP2_2CMP+
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMP- Capture(捕获)
Compare(比较)
P3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
PWM(脉宽调制)
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
1
16
2
15
3
14
4 STC8G1K08 13
5
12
SOP16
6
11
7
10
8
9
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
0.1u
10u
P5.5
以上
Gnd/AGnd
CMP1.19V
P3.6
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
使用 USB转双串口 芯片 进行 全自动 烧录/仿真+串口通讯,5V/3.3V跳线选择
USB+5V
USB接口
+5V
DD+
Gnd
1
22R
2
3
USB转第二组串口
第二组串口用于和目标系统
的其他串口通讯
D-
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
D+
22R
4
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
USB-TypeA
建议用USB-TypeC
1N5819
用跳线选择工作电压5V或3.3V
3
0.1u
3
GND
VOUT
1117M3-33
VIN
10u
以上
2
USB+5V
Vcc
1
跳线插座
2.54mm
1
2
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
USB转第一组串口
推挽/开漏
高阻输入
16
15
14
13
12
300R
11
10 D+
9 D-
第一组用于下载或者通讯
1N5819
S-RxD 连接目标单片机的P3.0/RxD
S-TxD 连接目标单片机的P3.1/TxD
Q1
P-MOS
Vcc
可做电源
供应模块
关电/供电 10u
手动按键 以上
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
S
MCU-VCC
D
0.47u
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
20K
3.3V
104
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 59 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 60 -
STC8G 系列技术手册
2.3.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
管脚说明
编号
TSSOP20
SOP16
名称
类型
说明
P1.2
I/O
ADC2
I
SS
I/O
T2
I
定时器 2 外部时钟输入
ECI
I
PCA 的外部脉冲输入
P1.3
I/O
ADC3
I
ADC 模拟输入通道 3
T2CLKO
O
定时器 2 时钟分频输出
MOSI
I/O
SPI 主机输出从机输入
P1.4
I/O
标准 I/O 口
ADC4
I
ADC 模拟输入通道 4
MISO
I/O
SPI 主机输入从机输出
SDA
I/O
I2C 接口的数据线
P1.5
I/O
标准 I/O 口
ADC5
I
SCLK
I/O
SPI 的时钟脚
SCL
I/O
I2C 的时钟线
P1.6
I/O
标准 I/O 口
ADC6
I
ADC 模拟输入通道 6
RxD_3
I
串口 1 的接收脚
MCLKO_2
O
主时钟分频输出
XTALO
O
外部晶振脚
P1.7
I/O
标准 I/O 口
ADC7
I
ADC 模拟输入通道 7
TxD_3
O
串口 1 的发送脚
XTALI
I
外部晶振脚
P5.4
I/O
标准 I/O 口
NRST
I
复位引脚(低电平复位)
MCLKO
O
主时钟分频输出
Vcc
Vcc
电源脚
AVcc
Vcc
ADC 电源
ADC_VRef+
I
P5.5
I/O
标准 I/O 口
Gnd
Gnd
地线
AGnd
Gnd
ADC 地线
QFN20
DIP20
1
2
3
4
5
6
7
8
DIP16
19
18
17
1
2
3
4
5
3
4
5
6
9
6
7
10
7
8
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
标准 I/O 口
ADC 模拟输入通道 2
SPI 从机选择
标准 I/O 口
ADC 模拟输入通道 5
ADC 外部参考电压源输入脚,要
求不高时可直接接 MCU 的 VCC
技术交流及选型论坛:www.STCAIMCU.com
- 61 -
STC8G 系列技术手册
官方网站: www.STCAI.com
编号
TSSOP20
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P3.0
I/O
RxD
I
串口 1 的接收脚
ADC8
I
ADC 模拟输入通道 8
INT4
I
外部中断 4
P3.1
I/O
标准 I/O 口
TxD
O
串口 1 的发送脚
ADC9
I
ADC 模拟输入通道 9
P3.2
I/O
标准 I/O 口
INT0
I
外部中断 0
ADC10
I
ADC 模拟输入通道 10
SCL_4
I/O
I2C 的时钟线
SCLK_4
I/O
SPI 的时钟脚
P3.3
I/O
标准 I/O 口
INT1
I
外部中断 1
ADC11
I
ADC 模拟输入通道 11
SDA_4
I/O
I2C 的数据线
MISO_4
I/O
SPI 主机输入从机输出
P3.4
I/O
标准 I/O 口
T0
I
定时器 0 外部时钟输入
T1CLKO
O
定时器 1 时钟分频输出
ADC12
I
ADC 模拟输入通道 12
ECI_2
I
PCA 的外部脉冲输入
CMPO
O
比较器输出
MOSI_4
I/O
SPI 主机输出从机输入
P3.5
I/O
标准 I/O 口
T1
I
定时器 1 外部时钟输入
T0CLKO
O
定时器 0 时钟分频输出
ADC13
I
ADC 模拟输入通道 13
CCP0_2
I/O
SS_4
I
P3.6
I/O
标准 I/O 口
INT2
I
外部中断 2
RxD_2
I
串口 1 的接收脚
ADC14
I
ADC 模拟输入通道 14
CCP1_2
I/O
CMP-
I
选型顾问: 13922805190
说明
SOP16
QFN20
DIP20
11
12
13
14
15
16
17
DIP16
8
9
10
11
12
13
14
9
10
11
12
13
14
15
标准 I/O 口
PCA 的捕获输入、脉冲输出和 PWM 输出
SPI 的从机选择脚(主机为输出)
PCA 的捕获输入、脉冲输出和 PWM 输出
比较器负极输入
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 62 -
STC8G 系列技术手册
官方网站: www.STCAI.com
编号
TSSOP20
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
名称
类型
说明
P3.7
I/O
标准 I/O 口
INT3
I
外部中断 3
TxD_2
O
串口 1 的发送脚
CCP2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
CCP2_2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
CMP+
I
P1.0
I/O
RxD2
I
串口 2 的接收脚
ADC0
I
ADC 模拟输入通道 0
CCP1
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P1.1
I/O
标准 I/O 口
TxD2
O
串口 2 的发送脚
ADC1
I
ADC 模拟输入通道 1
CCP0
I/O
SOP16
QFN20
DIP20
18
19
20
DIP16
15
16
20
16
1
2
比较器正极输入
标准 I/O 口
PCA 的捕获输入、脉冲输出和 PWM 输出
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 63 -
STC8G 系列技术手册
2.3.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯
使用【USB Link1D】对 STC8G1K08系列 进行全自动停电/上电串口烧录、仿真+串口通讯
【USB Link1D】工具:支持 全自动 停电 / 上电,在线下载 / 脱机下载,仿真
连接 目标单 片机P3.1
连接 目标单 片机P3.0
MC U-VCC
连接 目标单 片机第n组串口 发送脚TxDn
连接 目标单 片机第n组串口 接收脚RxDn
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-38I-TSSOP20 最小系统 示意图
TSSOP20
1
2
3
4
5
6
7
8
9
10
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
M CU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
0.1u
10u
P5.5
以上
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
P1.1/ADC1/TxD2/CCP0
CCP是英文单词的缩写
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMP- PWM(脉宽调制)
P3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 64 -
STC8G 系列技术手册
2.3.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯
使用【一箭双雕之USB转双串口】对 STC8G1K08系列 进行串口烧录、仿真+串口通讯
【一箭双雕之USB转双串口】:支持 全自动 停电 / 上电,在线下载,仿真
5V/3.3V 通过 跳线选择
连接目标单片机第n组串口接收脚RxDn
连接目标单片机第n组串口发送脚TxDn
MCU-VCC
连接目标单片机P3.0
连接目标单片机P3.1
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-38I-TSSOP20 最小系统 示意图
TSSOP20
1
2
3
4
5
6
7
8
9
10
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
M CU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
0.1u
10u
P5.5
以上
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
P1.1/ADC1/TxD2/CCP0
CCP是英文单词的缩写
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMP- PWM(脉宽调制)
P3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 65 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V
2.3.8
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,5V
USB转第二组串口
第二组串口用于和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
1N5819
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
1
2
22R
3
4
DD+
22R
USB-TypeA
建议用USB-TypeC
0.1u
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
USB转第一组串口
第一组用于下载或者通讯
1N5819
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
推挽/开漏
16
高阻输入
15
14
13
12
300R
11
可做电源
10 D+
供应模块
9 D关电/供电
手动按键
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源
(可从USB取电)
Q1
P-MOS
S
MCU-VCC
D
0.47u
10u
以上
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
470R
一般不焊
20K
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-38I-TSSOP20 最小系统 示意图
TSSOP20
1
2
3
4
5
6
7
8
9
10
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
10u
0.1u
P5.5
以上
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
CCP是英文单词的缩写
P1.1/ADC1/TxD2/CCP0
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
PWM(脉宽调制)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMPP3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 66 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图
2.3.9
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,3.3V
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
USB转第二组串口
第二组串口用于
和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组的TxDn
连接目标单片机的第n组的RxDn
1N5819
USB+5V
USB接口
+5V
D-
D+
Gnd
USB+5V
1
2
22R
3
4
DD+
22R
USB-TypeA
建议用USB-TypeC
0.1u
10u
以上
1
推挽/开漏 2
3
4
PowerCtrl 5
6
7
8
0.1u
USB转第一组串口
第一组用于下载或者通讯
1N5819
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
推挽/开漏
16
高阻输入
15
14
P3.5管脚低电平供电
13
12 P5.4管脚高电平供电
11
10
D+
9
D-
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
芯片上电时 P5.4-nRST 输出高电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,会自动
控制MCU-VCC停电0.5S再上电进行ISP
下载。下载完成后会持续供电
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源输入 Vin
也可电脑USB+5V供电
或充电宝USB+5V供电
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
2
VIN
CE
C1
0.1u
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
PowerCtrl
10K
VOUT
MCU-VCC
5
GND
NC
×
按下按键停电
松开按键上电
电源按键
C2
0.1u
该按键可不焊
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-38I-TSSOP20 最小系统 示意图
TSSOP20
1
2
3
4
5
6
7
8
9
10
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
10u
0.1u
P5.5
以上
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
CCP是英文单词的缩写
P1.1/ADC1/TxD2/CCP0
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
PWM(脉宽调制)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMPP3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 67 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.10 USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择
使用 USB转双串口 芯片 进行 全自动 烧录/仿真+串口通讯,5V/3.3V跳线选择
USB+5V
USB接口
+5V
D-
D+
Gnd
USB转第二组串口
第二组串口用于
和目标系统的
其他串口通讯
1
2
22R
D-
3
4
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
D+
22R
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
USB-TypeA
建议用USB-TypeC
1N5819
用跳线选择工作电压5V或3.3V
3
1
0.1u
3
VOUT
VIN
1117M3-33
GND
10u
以上
Vcc
2
跳线插座
2.54mm
USB+5V
1
2
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
USB转第一组串口
16
15
14
13
12
300R
11
10 D+
9 D-
推挽/开漏
高阻输入
第一组用于下载或者通讯
1N5819
S-RxD 连接目标单片机的P3.0/RxD
S-TxD 连接目标单片机的P3.1/TxD
Q1
P-MOS
Vcc
可做电源
供应模块
关电/供电 10u
手动按键 以上
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
S
MCU-VCC
D
0.47u
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
20K
3.3V
104
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-38I-TSSOP20 最小系统 示意图
TSSOP20
1
2
3
4
5
6
7
8
9
10
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
10u
0.1u
P5.5
以上
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
CCP是英文单词的缩写
P1.1/ADC1/TxD2/CCP0
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
PWM(脉宽调制)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMPP3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 68 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.11 通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,5V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
+5V
D-
D+
Gnd
USB+5V
Power-On
2
22R
3
4
1 P5.4/nRST
P3.3/P1.1/TxD2
2 Vcc
P3.2/P1.0/RxD2
连接 目标单 片机的P3.0
8
连接 目标单 片机的P3.1
1
22R
USB-TypeA
建议用USB-TypeC
D-
10u
D+
以上
0.1u
0.1u
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
Q1
P-MOS
7
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
1u
D+
D-
RMB0.95 SOP8
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
S
M CU-VCC
D
G
R1
10K
Power-On
R3
20K
0.1u
R4
20K
R2
20K
Q2
SS8050
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-38I-TSSOP20 最小系统 示意图
TSSOP20
1
2
3
4
5
6
7
8
9
10
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
10u
0.1u
P5.5
以上
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
CCP是英文单词的缩写
P1.1/ADC1/TxD2/CCP0
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
PWM(脉宽调制)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMPP3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 69 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.12 通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,3.3V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
USB+5V
+5V
DD+
Gnd
1
2
Power-On
22R
3
4
USB-TypeA
建议用USB-TypeC
P5.4/nRST
P3.3/P1.1/TxD2
8
2
Vcc
P3.2/P1.0/RxD2
7
10u
0.1u
3
UCap
D+/TxD/P3.1
6
D-/RxD/P3.0
5
以上
0.1u
4
Gnd/AGnd
RMB0.95
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
SOP8
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
连接 目标单 片机的P3.1
DD+
22R
连接 目标单 片机的P3.0
1
2
VIN
M CU-VCC
5
GND
3
CE
C1
0.1u
VOUT
NC
4
×
10K
C2
0.1u
Power-On 高输 出,低关 断
全自动控制电源开/关
P5.4管脚高电平供电
电源开关,可不焊
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-38I-TSSOP20 最小系统 示意图
TSSOP20
1
2
3
4
5
6
7
8
9
10
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
10u
0.1u
P5.5
以上
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
CCP是英文单词的缩写
P1.1/ADC1/TxD2/CCP0
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
PWM(脉宽调制)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMPP3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 70 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.13 USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择
USB转串口 芯片 全自动 停电/上电,烧录/仿真/通信,5V/3.3V跳线选择
用跳线选择工作电压5V或3.3V
Gnd
3
D-
D+
Vcc
1117M3-33
10u
以上
22R
4
3
USB-TypeA
建议用USB-TypeC
VOUT
D+
22R
2
GND
D-
跳线插座
2.54mm
1
VIN
+5V
3
1
USB接口
2
USB+5V
1
10u
以上
3.3V
2
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
Q1
P-MOS
Vcc
Ai8H2K12U
Vcc
Power-On
1
P5.4/nRST
连接 目标单 片机的P3.0
P3.3/P1.1/TxD2
8
P3.2/P1.0/RxD2
7
1u
连接 目标单 片机的P3.1
2 Vcc
10u
0.1u
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
以上
0.1u
D+
D-
RMB0.95 SOP8
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
R1
10K
R3
20K
M CU-VCC
D
G
0.1u
R4
20K
Power-On
R2
Q2
SS8050
20K
P5.4管脚高电平供电
S
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
STC8G1K08-38I-TSSOP20 最小系统 示意图
TSSOP20
1
2
3
4
5
6
7
8
9
10
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
10u
0.1u
P5.5
以上
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
CCP是英文单词的缩写
P1.1/ADC1/TxD2/CCP0
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
PWM(脉宽调制)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMPP3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 71 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.14 USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己手动停电/上电
Ai8H2K12U
USB+5V
USB接口
USB+5V
1 P5.4/nRST
+5V
DD+
Gnd
P3.3/P1.1/TxD2
连接 目标单 片机的P3.0
8
1
2
连接 目标单 片机的P3.1
22R
3
4
2 Vcc
D-
D+
0.1u
10u
以上
0.1u
22R
USB-TypeA
建议用USB-TypeC
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
RMB0.95
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
STC8G1K08-38I-TSSOP20 最小系统 示意图
TSSOP20
1
2
3
4
5
6
7
8
9
10
STC8G1K08
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
10u
0.1u
P5.5
以上
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
CCP是英文单词的缩写
P1.1/ADC1/TxD2/CCP0
Capture(捕获)
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+ Compare(比较)
PWM(脉宽调制)
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMPP3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 72 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.15 USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己 手动 停电/上电
Ai8H2K12U
USB+5V
USB+5V
USB接口
1
+5V
2
D-
D+
P3.3/P1.1/TxD2
8
2 Vcc
P3.2/P1.0/RxD2
7
0.1u
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
以上
22R
4
Gnd
D10u
3
D+
连接 目标单 片机的P3.0
1 P5.4/nRST
连接 目标单 片机的P3.1
22R
0.1u
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
D+
D-
RMB0.95
USB-TypeA
建议用USB-TypeC
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
1
2
VIN
CE
NC
4
电源按键
T2/ECI/SS/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
MCU-VCC
MCLKO/nRST/P5.4
Vcc/AVcc/ADC_VRef+
10u
0.1u
P5.5
以上
Gnd/AGnd
C1
0.1u
1
2
3
4
5
6
7
8
9
10
TSSOP20
按下按键停电
松开按键上电
×
STC8G1K08
10K
VOUT
MCU-VCC
5
GND
3
C1
0.1u
STC8G1K08-38I-TSSOP20 最小系统 示意图
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
20
19
18
17
16
15
14
13
12
11
P1.1/ADC1/TxD2/CCP0
P1.0/ADC0/RxD2/CCP1
P3.7/INT3/TxD_2/CCP2_2/CCP2/CMP+
P3.6/ADC14/INT2/RxD_2/CCP1_2/CMPP3.5/ADC13/T1/T0CLKO/CCP0_2/SS_4
P3.4/ADC12/T0/T1CLKO/ECI_2/CMPO/MOSI_4
P3.3/ADC11/INT1/MISO_4/I2CSDA_4
P3.2/ADC10/INT0/SCLK_4/I2CSCL_4
P3.1/ADC9/TxD
P3.0/ADC8/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
CCP是英文单词的缩写
Capture(捕获)
Compare(比较)
PWM(脉宽调制)
这个功能
技术交流及选型论坛:www.STCAIMCU.com
- 73 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.16 USB-Link1D 支持 脱机下载 说明
脱机下载是指脱离电脑主机进行下载的一种方法,一般是使用下载控制芯片(又称脱机下载母片)
进行控制。USB-Link1D 工具除了支持在线 ISP 下载,还支持脱机下载。USB-Link1D 工具使用外部的
22.1184MHz 晶振,可保证对目标芯片进行在线或脱机下载时,校准频率的精度。用户可将代码下载到
USB-Link1D 工具中,就可实现脱机下载。USB-Link1D 主控芯片如内部存储空间不够时,会将部分被
下载的用户程序用加密的方式加密放部分到片外串行 Flash。
先将 USB-Link1D 工具使用 USB 线连接到电脑,然后按照下面的步骤进行脱机下载:
1、选择目标芯片的型号
2、打开需要下载的文件
3、设置硬件选项
4、进入“USB-Link1D 脱机”页面,点击“将用户程序下载到编程器以供脱机下载“按钮,即可将
用户代码下载到 USB-Linik1D 工具中。下载完成后便使用 USB-Link1D 工具对目标芯片进行脱
机下载了
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 74 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.17 USB-Link1D 支持 脱机下载,如何免烧录环节
大批量生产,如何省去专门的烧录人员,如何无烧录环节
大批量生产,你在将由 STC 的 MCU 作为主控芯片的控制板组装到设备里面之前,在你将 STC MCU 贴
片到你的控制板完成之后,你必须测试你的控制板的好坏。不要说 100%,直通无问题,那是抬杠,不
是搞生产,只要生产,就会虚焊,短路,部分原件贴错,部分原件采购错。
所以在贴片回来后,组装到外壳里面之前,你必须要测试,你的含有 STC MCU 控制板的好坏,好的去
组装,坏的去维修抢救。
控制板的测试/不是烧录!
控制板的测试环节必须有,但烧录环节可以省!
大批量生产,必须要有方便控制板测试的测试架/下面接上我们的脱机烧录工具:
USB-Link1D / U8W-Mini / U8W,还要接上其他控制部分!
1、通过 USER-VCC、P3.0、P3.1、GND 连接,要工人每次都开电源
2、通过 S-VCC、P3.0、P3.1、GND 连接,不要你开电源,STC 的脱机工具给你自动供电
外面帮你做一个测试架的成本 500 元以下,就是有机玻璃,夹具,顶针。
1 个测试你控制板是否正常的工人管理 2 - 3 个 测试架
操作流程:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 75 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1、将你的 MCU 控制板 卡到测试架 1 上
2、将你的 MCU 控制板 卡到测试架 2 上,测试架 1 上的程序已烧录完成/感觉不到烧录时间
3、测试 测试架 1 上的 MCU 主控板功能是否正常,正常放到正常区,不正常,放到不正常区
4、给测试架 1 卡上新的未测试的无程序的控制板
5、测试 测试架 2 上的未测试控制板/程序不知何时早就不知不觉的烧好了,换新的未测试未烧录的控制
板
6、循环步骤 3 到步骤 5
========不需要安排烧录人员
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 76 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.18 USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录
STC8G1K08
1
2
3
4
5
6
7
8
9
10
TSSOP20
10u
以上
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
nRST/P5.4
Vcc/AVcc/ADC_VRef+
0.1u
P5.5
Gnd/AGnd
20
19
18
17
16
15
14
13
12
11
P1.1
P1.0
P3.7
P3.6
P3.5
P3.4
P3.3
P3.2
P3.1
P3.0
1、TSSOP20封装可以使用TSSOP20转DIP20
转换座或者TSSOP28转DIP28转换座,
插在烧录锁紧座上进行烧录
2、QFN20封装可以使用QFN20转DIP20转换座,
插在烧录锁紧座上进行烧录
3、SOP16封装可以使用SOP16转DIP16转换座,
插在烧录锁紧座上进行烧录
USB型 脱机/联机烧录工具 USB-Writer1A (人民币100元)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 77 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.3.19 USB-Writer1A 支持 自动烧录机,通信协议和接口
S-P3.0(连接从机的P3.0)
(仅从本工具用户系统供电)S-Vcc
S-P3.1(连接从机的P3.1)
USB-CDC串口连接用户的TxD
USB-CDC串口连接用户的RxD
Gnd(地线)
(仅由用户系统给本工具供电)User-Vcc
脱机烧录用户程序按键
编程接口
USB Type-C接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
40Pin锁紧座
USB接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
USB Writer1A更新系统程序按键
升级USB Writer1A编程器
主控CPU电源按键
自动烧录机
分选机接口
ERROR(错误信号)
OK(成功信号)
EOT(完成信号)
Start(开始信号)
Gnd(地线)
自动烧录接口(分选机自动控制接口)协议:
Start:开始信号输入脚。从外部输入低电平信号触发开始脱机烧录,低电平必须维持 25 毫秒以上
EOT:烧录完成信号输出脚。脱机烧录完成后,工具输出 20ms~250ms 的低电平 EOT 信号。电平宽
度如下图所示的地方进行设置
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 78 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
OK:良品信号输出脚。下载成功后工具从 OK 脚输出低电平信号,信号与 EOT 信号同步。
Err:不良品信号输出脚。若下载失败,工具从 ERR 脚输出输出低电平信号,信号与 EOT 完成信号同
步。
25ms以上
20ms~200ms
Start
EOT
OK
Err
开始下载
脱机下载
下载完成
OK和Err只会输出其中一个信号
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 79 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G2K64S4-36I-LQFP48/32、QFN48/32 系列(45 路增强型 PWM)
2.4
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机)
2.4.1
选型价格(不需要外部晶振、不需要外部复位,10 位 ADC,15 通道)
15
1
ADC
内
部
高
精
准
时
钟
(
可
设
置
下
次
更
新
程
序
需
口
令
支
持
支 软 本
持 件 身
就
可
在
线
下 直 仿
接
载
下 真
载
有 10 位 有
有
有 4级 有
是
有
是
是
是
是
¥4
¥4 ¥3.8 ¥3.8
STC8G2K48S4 1.9-5.5 48K 256 2K
2 16K 45
4
有
有
有
5
45
3
有 10 位 有
有
有 4级 有
是
有
是
是
是
是
¥4
¥4 ¥3.8 ¥3.8
STC8G2K60S4 1.9-5.5 60K 256 2K
2
4K 45
4
有
有
有
5
45
3
有 10 位 有
有
有 4级 有
是
有
是
是
是
是
√ √ √
STC8G2K64S4 1.9-5.5 64K 256 2K
2
IAP 45
4
有
有
有
5
45
3
有 10 位 有
有
有 4级 有
是
有
是
是
是
是
¥4
D/A
QFN32
3
满
足
舞
台
灯
光
要
求
LQFP32
45
外
部
管
脚
也
可
掉
电
唤
醒
)
36MHz
5
位
乘
除
法
器
PWM
有
字 字
节 节 字
节
16
有
SRAM
有
万
次
DPTR
4
10
2 32K 45
)
8051 RAM
STC8G2K32S4 1.9-5.5 32K 256 2K
V
LQFP48
程
序
加
密
后
传
输
(
防
拦
截
)
QFN48
可
对
外
输
出
时
钟
以 及
下 复
可 位
调
)
追
频
价
格
及
封
装
USB
看
门
狗
复
位
定
时
器
内
部
高
可
靠
复
位
(
可
选
复
位
门
槛
电
压
)
RS485
A/D
PWM
T0-T4
PCA/CCP/PWM
/
15
(
可
当
外
部
中
断
并
可
掉
电
唤
醒
)
掉
电
唤
醒
专
用
定
时
器
比
路 较
高 器
速 ( 内
可 部
当 低
压
(
全 路 检
测
部
中
, 断
可 并
可
均 作
掉
可 外
电
当 部
掉 唤
电 醒
检
使 测
用 )
)
I2 C
硬
件
位
增
强
型
支
持
上
升
沿
中
断
、
下
降
沿
中
断
以
及
边
沿
中
断
SPI
口
最
万 多
可 次 数
量
增
可 字
减 节
串
口
并
可
掉
电
唤
醒
MDU16
强
大
的
双
I/O
,
内
部
大
容
量
扩
展
EEPROM 10
,
内
部
传
统
xdata
Flash
单
片
机
型
号
idata
工
作
电
压
(
程
序
存
储
器
定
时
器
计
数
器
(
¥4 ¥3.8 ¥3.8
注:以上的单价为 10K 及以上订货量的价格,量小则每片需增加 0.1 元人民币。
如需要选择 48 管脚的芯片,建议选 LQFP48 封装,QFN48 需要提前订货
内核
超高速 8051 内核(1T),比传统 8051 约快 12 倍以上
指令代码完全兼容传统 8051
29 个中断源,4 级中断优先级
支持在线仿真
工作电压
1.9V~5.5V
内建 LDO
工作温度
-40℃~85℃(超温度范围应用请参考电器特性章节说明)
Flash 存储器
最大 64K 字节 FLASH 程序存储器(ROM),用于存储用户代码
支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上
支持在系统编程方式(ISP)更新用户应用程序,无需专用编程器
支持单芯片仿真,无需专用仿真器,理论断点个数无限制
SRAM
128 字节内部直接访问 RAM(DATA)
128 字节内部间接访问 RAM(IDATA)
2048 字节内部扩展 RAM(内部 XDATA)
时钟控制
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 80 -
主
力
产
品
供
货
信
息
现
货
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
内部高精度、高稳定的高速 IRC(4MHz~38MHz,ISP 编程时可进行上下调整,还可以用户软件分频到
较低的频率工作,如 100KHz)
误差±0.3%(常温下 25℃)
-0.88%~+1.05%温漂(温度范围,-20℃~65℃)
-1.38%~+1.42%温漂(全温度范围,-40℃~85℃)
内部 32KHz 低速 IRC(为了低功耗,省去了温度补偿和电压补偿电路,误差较大)
外部晶振(4MHz~38MHz)和外部时钟
(芯片上电工作过程:上电复位/复位脚复位/看门狗复位/低压检测复位时,芯片默认从 ISP 系统程序开始执行代
码,此时固定使用内部 24MHz 的高速 IRC 时钟,当需要下载用户程序且下载完成后复位到用户程序区或者不需
要下载直接复位到用户程序区时,默认会使用上次用户下载时所调节的高速 IRC 时钟,如果用户程序需要使用
外部高速晶振、外部 32.768KHz 晶振或者内部 30KHz 低速 IRC,则需要用户软件先启动相应的时钟,然后通过
设置 CLKSEL 寄存器进行切换)
复位
硬件复位
上电复位。(在芯片未使能低压复位功能时有效)
复位脚复位。出厂时 P5.4 默认为 I/O 口,ISP 下载时可将 P5.4 管脚设置为复位脚(注意:当设置 P5.4
管脚为复位脚时,复位电平为低电平)
看门狗溢出复位
低压检测复位,提供 4 级低压检测电压:2.0V、2.4V、2.7V、3.0V。
软件复位
软件方式写复位触发寄存器
中断
提供 29 个中断源:INT0(支持上升沿和下降沿中断)、INT1(支持上升沿和下降沿中断)、INT2(只支
持下降沿中断)、INT3(只支持下降沿中断)、INT4(只支持下降沿中断)、定时器 0、定时器 1、定时
器 2、定时器 3、定时器 4、串口 1、串口 2、串口 3、串口 4、ADC 模数转换、LVD 低压检测、SPI、I2C、
比较器、PCA/CCP/PWM、增强型 PWM0、增强型 PWM1、增强型 PWM2、增强型 PWM3、增强型 PWM4、
增强型 PWM5、增强型 PWM0 异常检测、增强型 PWM2 异常检测、增强型 PWM4 异常检测。
提供 4 级中断优先级
时钟停振模式下可以唤醒的中断:INT0(P3.2)、INT1(P3.3)、INT2(P3.6)、INT3(P3.7)、INT4(P3.0)、T0(P3.4)、
T1(P3.5)、T2(P1.2)、T3(P0.4)、T4(P0.6)、RXD(P3.0/P3.6/P1.6/P4.3)、RXD2(P1.0/P4.6)、RXD3(P0.0/P5.0)、
RXD4(P0.2/P5.2)、CCP0(P1.1/P3.5/P2.5)、CCP1(P1.0/P3.6/P2.6)、CCP2(P3.7/P2.7)、I2C_SDA(P1.4/P2.4/P3.3)
以及比较器中断、低压检测中断、掉电唤醒定时器唤醒。
数字外设
5 个 16 位定时器:定时器 0、定时器 1、定时器 2、定时器 3、定时器 4,其中定时器 0 的模式 3 具有 NMI
(不可屏蔽中断)功能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式
4 个高速串口:串口 1、串口 2、串口 3、串口 4,波特率时钟源最快可为 FOSC/4
3 组 16 位 CCP/PCA/PWM 模块:CCP0、CCP1、CCP2,可用于捕获、高速脉冲输出,及 6/7/8/10 位的 PWM
输出
45 组 15 位增强型 PWM,可实现带死区的控制信号,并支持外部异常检测功能(另外还有 3 组传统的
PCA/CCP/PWM 可作 PWM)
SPI:支持主机模式和从机模式以及主机/从机自动切换
I2C:支持主机模式和从机模式
MDU16:硬件 16 位乘除法器(支持 32 位除以 16 位、16 位除以 16 位、16 位乘 16 位、数据移位以及数
据规格化等运算)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 81 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
模拟外设
超高速 ADC,支持 10 位精度 15 通道(通道 0~通道 14)的模数转换,速度最快能达到 500K(每秒进行
ADC 的通道 15 用于测试内部 1.19V 参考信号源(芯片在出厂时,内部参考信号源已调整为 1.19V)
比较器,一组比较器(比较器的正端可选择 CMP+端口和所有的 ADC 输入端口,所以比较器可当作多路
50 万次 ADC 转换)
比较器进行分时复用)
DAC:3 路 PCA/CCP/PWM 可当 3 路 DAC 使用,45 路增强型 PWM 可当 45 路 DAC 使用
GPIO
最多可达 45 个 GPIO:P0.0~P0.7、P1.0~P1.7、P2.0~P2.7、P3.0~P3.7、P4.0~P4.7、P5.0~P5.4
所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏模式、高阻输入模式
除 P3.0 和 P3.1 外,其余所有 I/O 口上电后的状态均为高阻输入状态,用户在使用 I/O 口时必须先设置 I/O
口模式,另外每个 I/O 均可独立使能内部 4K 上拉电阻
封装
LQFP48、QFN48、LQFP32
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 82 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G2K64S4-36I-LQFP48/QFN48 管脚图,ISP 下载/编程线路图
2.4.2
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
ADC
ADC0
P1.0
ADC8
P0.0
ADC1
P1.1
ADC9
P0.1
UART1
RxD
P3.0
P3.6
P1.6
P4.3
UART2
TxD
P3.1
P3.7
P1.7
P4.4
RxD2
P1.0
P4.6
UART3
TxD2
P1.1
P4.7
UART4
TxD3
P0.1
P5.1
RxD4
P0.2
P5.2
TxD4
P0.3
P5.3
I2C
SS
P1.2
P2.2
P5.4
P3.5
MOSI
P1.3
P2.3
P4.0
P3.4
MISO
P1.4
P2.4
P4.1
P3.3
SCLK
P1.5
P2.5
P4.3
P3.2
SCL
P1.5
P2.5
P3.2
SDA
P1.4
P2.4
P3.3
CCP1
P1.0
P3.6
P2.6
-
CCP2
P3.7
P3.7
P2.7
-
CMP1.19V
P3.6
CMPO
P3.4
P4.1
PCA/CCP/PWM
ECI
P1.2
P3.4
P2.4
-
CCP0
P1.1
P3.5
P2.5
-
CMP
CMP+
P3.7
ADCIN
36
35
34
33
32
31
30
29
28
27
26
25
RxD3
P0.0
P5.0
SPI
ADC2 ADC3 ADC4 ADC5 ADC6 ADC7
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
ADC10 ADC11 ADC12 ADC13 ADC14 ADC15
P0.2
P0.3
P0.4
P0.5
P0.6
1.19V
37
38
39
40
41
42
43
44
45
46
47
48
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
0.1u
10u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
1
2
3
4
5
6
7
8
9
10
11
12
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
使用USB转串口芯片进行ISP下载/烧录/仿真,目标系统 手动停电/上电
Ai8H2K12U
USB+5V
USB接口
USB+5V
1 P5.4/nRST
+5V
D-
D+
Gnd
P3.3/P1.1/TxD2
连接 目标单 片机的P3.0
8
1
2
连接 目标单 片机的P3.1
22R
3
4
2 Vcc
DD+
22R
USB-TypeA
建议用USB-TypeC
10u
以上
0.1u
0.1u
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
RMB0.95
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 83 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 84 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G2K64S4-36I-LQFP32/QFN32 管脚图,ISP 下载/编程线路图
2.4.3
UART2
RxD
P3.0
P3.6
P1.6
-
TxD
P3.1
P3.7
P1.7
-
RxD2
P1.0
-
UART3
TxD2
P1.1
-
RxD3
P0.0
-
UART4
TxD3
P0.1
-
RxD4
P0.2
-
ADC
ADC1
P1.1
ADC9
P0.1
ADC2 ADC3 ADC4 ADC5 ADC6 ADC7
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
ADC10 ADC11 ADC12 ADC13 ADC14 ADC15
P0.2
P0.3
1.19V
SS
P1.2
P2.2
P3.5
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP是英文单词的缩写
CCP2_3/A15/PWM27/P2.7
Capture(捕获)
Compare(比较) RxD3/AD0/ADC8/PWM00/P0.0
PWM(脉宽调制) TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
ECI
P1.2
P3.4
P2.4
-
25
16
26
15
27 STC8G2K64S4 14
28
13
29
LQFP32
12
30
QFN32
11
31
10
32
9
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
MISO
P1.4
P2.4
P3.3
SCLK
P1.5
P2.5
P3.2
CCP0
P1.1
P3.5
P2.5
-
CCP1
P1.0
P3.6
P2.6
-
CCP2
P3.7
P3.7
P2.7
-
SCL
P1.5
P2.5
P3.2
SDA
P1.4
P2.4
P3.3
CMP1.19V
P3.6
CMPO
P3.4
-
CMP
CMP+
P3.7
ADCIN
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3 0.1u
1
2
3
4
5
6
7
8
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
I2C
MOSI
P1.3
P2.3
P3.4
PCA/CCP/PWM
24
23
22
21
20
19
18
17
ADC0
P1.0
ADC8
P0.0
SPI
TxD4
P0.3
-
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
XTALI/TxD_3/ADC7/PWM17/P1.7
UART1
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
STC8G2K64S4-36I-LQFP32/QFN32 最小系统 示意图
M CU-VCC
10u
以上
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,3.3V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
USB+5V
+5V
D-
D+
Gnd
1
2
Power-On
22R
3
4
P5.4/nRST
P3.3/P1.1/TxD2
8
2
Vcc
P3.2/P1.0/RxD2
7
10u
0.1u
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
以上
USB-TypeA
建议用USB-TypeC
0.1u
RMB0.95
SOP8
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
连接 目标单 片机的P3.1
DD+
22R
连接 目标单 片机的P3.0
1
2
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
VIN
3
CE
C1
0.1u
VOUT
M CU-VCC
5
GND
NC
4
×
10K
C2
0.1u
Power-On 高输 出,低关 断
全自动控制电源开/关
电源开关,可不焊
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 85 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 86 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G2K64S4-36I-PDIP40 管脚图,ISP 下载/编程线路图
2.4.4
STC8G2K64S4-36I-PDIP40 最小系统 示意图
UART1
UART2
RxD
P3.0
P3.6
P1.6
-
TxD
P3.1
P3.7
P1.7
-
RxD2
P1.0
-
UART3
TxD2
P1.1
-
UART4
RxD3
P0.0
-
TxD3
P0.1
-
RxD4
P0.2
-
SPI
TxD4
P0.3
-
I2C
SS
P1.2
P2.2
P3.5
MOSI
P1.3
P2.3
P3.4
MISO
P1.4
P2.4
P3.3
SCLK
P1.5
P2.5
P3.2
SCL
P1.5
P2.5
P3.2
SDA
P1.4
P2.4
P3.3
CMP1.19V
P3.6
CMPO
P3.4
P4.1
PCA/CCP/PWM
ADC
ADC0
P1.0
ADC8
P0.0
ADC1
P1.1
ADC9
P0.1
ADC2
P1.2
ADC10
P0.2
ADC3
P1.3
ADC11
P0.3
ADC4
P1.4
ADC12
P0.4
ADC5
P1.5
ADC13
P0.5
ADC6
P1.6
ADC14
P0.6
ECI
P1.2
P3.4
P2.4
-
ADC7
P1.7
ADC15
1.19V
PDIP40
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
STC8G2K64S4
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
XTALI/TxD_3/ADC7/PWM17/P1.7
SS_3/MCLKO/nRST/PWM54/P5.4
MCU-VCC
Vcc/AVcc
0.1u
10u
ADC_VRef+
以上
Gnd/AGnd
CCP0
P1.1
P3.5
P2.5
-
CCP1
P1.0
P3.6
P2.6
-
CCP2
P3.7
P3.7
P2.7
-
CMP
CMP+
P3.7
ADCIN
CCP是英文单词的缩写
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
P4.5/PWM45/ALE
Capture(捕获)
P2.7/PWM27/A15/CCP2_3 Compare(比较)
P2.6/PWM26/A14/CCP1_3 PWM(脉宽调制)
P2.5/PWM25/A13/CCP0_3/I2CSCL_2/SCLK_2
P2.4/PWM24/A12/ECI_3/I2CSDA_2/MISO_2
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
使用 USB转双串口 芯片 进行 全自动 烧录/仿真+串口通讯,5V/3.3V跳线选择
USB+5V
USB接口
+5V
DD+
Gnd
1
22R
2
3
USB转第二组串口
第二组串口用于和目标系统
的其他串口通讯
D-
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
D+
22R
4
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
USB-TypeA
建议用USB-TypeC
1N5819
用跳线选择工作电压5V或3.3V
3
2
0.1u
3
GND
VOUT
1117M3-33
VIN
10u
以上
Vcc
1
跳线插座
2.54mm
USB+5V
1
2
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
USB转第一组串口
16
15
14
13
12
300R
11
10 D+
9 D-
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
推挽/开漏
高阻输入
第一组用于下载或者通讯
1N5819
S-RxD 连接目标单片机的P3.0/RxD
S-TxD 连接目标单片机的P3.1/TxD
Q1
P-MOS
Vcc
可做电源
供应模块
关电/供电 10u
手动按键 以上
S
MCU-VCC
D
0.47u
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
20K
3.3V
104
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 87 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 88 -
STC8G 系列技术手册
2.4.5
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
管脚说明
名称
类型
说明
P5.3
I/O
PWM53
O
增强 PWM 输出脚
TxD4_2
O
串口 4 的发送脚
P0.5
I/O
PWM05
O
AD5
I/O
ADC13
I
ADC 模拟输入通道 13
T3CLKO
O
定时器 3 时钟分频输出
P0.6
I/O
PWM06
O
AD6
I/O
ADC14
I
ADC 模拟输入通道 14
T4
I
定时器 4 外部时钟输入
PWMFLT2
I
增强 PWM 的外部异常检测脚
P0.7
I/O
PWM07
O
AD7
I/O
T4CLKO
O
定时器 4 时钟分频输出
PWMFLT3
I
增强 PWM 的外部异常检测脚
P1.0
I/O
PWM10
O
增强 PWM 输出脚
ADC0
I
ADC 模拟输入通道 0
CCP1
I/O
RxD2
I
P1.1
I/O
PWM11
O
增强 PWM 输出脚
ADC1
I
ADC 模拟输入通道 1
CCP0
I/O
TxD2
O
P4.7
I/O
PWM47
O
增强 PWM 输出脚
TxD2_2
O
串口 2 的发送脚
P1.2
I/O
PWM12
O
增强 PWM 输出脚
ADC2
I
ADC 模拟输入通道 2
ECI
I
PCA 的外部脉冲输入
SS
I
SPI 的从机选择脚(主机为输出)
T2
I
定时器 2 外部时钟输入
LQFP48
1
2
3
4
5
6
7
8
标准 IO 口
标准 IO 口
增强 PWM 输出脚
地址/数据总线
标准 IO 口
增强 PWM 输出脚
地址/数据总线
标准 IO 口
增强 PWM 输出脚
地址/数据总线
标准 IO 口
PCA 的捕获输入、脉冲输出和 PWM 输出
串口 2 的接收脚
标准 IO 口
PCA 的捕获输入、脉冲输出和 PWM 输出
串口 2 的发送脚
标准 IO 口
标准 IO 口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 89 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P1.3
I/O
PWM13
O
增强 PWM 输出脚
ADC3
I
ADC 模拟输入通道 3
MOSI
I/O
SPI 主机输出从机输入
T2CLKO
O
定时器 2 时钟分频输出
P1.4
I/O
PWM14
O
增强 PWM 输出脚
ADC4
I
ADC 模拟输入通道 4
MISO
I/O
SPI 主机输入从机输出
SDA
I/O
I2C 接口的数据线
P1.5
I/O
标准 IO 口
PWM15
O
增强 PWM 输出脚
ADC5
I
ADC 模拟输入通道 5
SCLK
I/O
SPI 的时钟脚
SCL
I/O
I2C 的时钟线
P1.6
I/O
标准 IO 口
PWM16
O
增强 PWM 输出脚
ADC6
I
ADC 模拟输入通道 6
RxD_3
I
串口 1 的接收脚
MCLKO_2
O
主时钟分频输出
XTALO
O
外部晶振的输出脚
P1.7
I/O
PWM17
O
增强 PWM 输出脚
ADC7
I
ADC 模拟输入通道 7
TxD_3
O
串口 1 的发送脚
XTALI
I
外部晶振/外部时钟的输入脚
P5.4
I/O
PWM54
O
增强 PWM 输出脚
NRST
I
复位引脚(低电平复位)
MCLKO
O
主时钟分频输出
SS_3
I
SPI 的从机选择脚(主机为输出)
Vcc
Vcc
电源脚
AVcc
Vcc
ADC 电源脚
ADC_VRef+
I
Gnd
Gnd
地线
AGnd
Gnd
ADC 地线
选型顾问: 13922805190
说明
LQFP48
9
10
11
12
13
14
15
16
17
标准 IO 口
标准 IO 口
标准 IO 口
标准 IO 口
ADC 外部参考电压源输入脚,要求不高时可直接接 MCU 的 VCC
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 90 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P4.0
I/O
PWM40
O
MOSI_3
I/O
SPI 主机输出从机输入
P3.0
I/O
标准 IO 口
PWM30
O
增强 PWM 输出脚
RxD
I
串口 1 的接收脚
INT4
I
外部中断 4
P3.1
I/O
标准 IO 口
PWM31
O
增强 PWM 输出脚
TxD
O
串口 1 的发送脚
P3.2
I/O
PWM32
O
增强 PWM 输出脚
INT0
I
外部中断 0
SCLK_4
I/O
SPI 的时钟脚
SCL_4
I/O
I2C 的时钟线
P3.3
I/O
标准 IO 口
PWM33
O
增强 PWM 输出脚
INT1
I
外部中断 1
MISO_4
I/O
SPI 主机输入从机输出
SDA_4
I/O
I2C 接口的数据线
P3.4
I/O
标准 IO 口
PWM34
O
增强 PWM 输出脚
T0
I
定时器 0 外部时钟输入
T1CLKO
O
定时器 1 时钟分频输出
ECI_2
I
PCA 的外部脉冲输入
MOSI_4
I/O
SPI 主机输出从机输入
CMPO
O
比较器输出
P5.0
I/O
标准 IO 口
PWM50
O
增强 PWM 输出脚
RxD3_2
I
串口 3 的接收脚
P5.1
I/O
PWM52
O
增强 PWM 输出脚
TxD3_2
O
串口 3 的发送脚
选型顾问: 13922805190
说明
LQFP48
18
19
20
21
22
23
24
25
标准 IO 口
增强 PWM 输出脚
标准 IO 口
标准 IO 口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 91 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P3.5
I/O
PWM35
O
增强 PWM 输出脚
T1
I
定时器 1 外部时钟输入
T0CLKO
O
定时器 0 时钟分频输出
SS_4
I
SPI 的从机选择脚(主机为输出)
CCP0_2
I/O
PWMFLT
I
P3.6
I/O
PWM36
O
增强 PWM 输出脚
INT2
I
外部中断 2
RxD_2
I
串口 1 的接收脚
CMP-
I
比较器负极输入
CCP1_2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P3.7
I/O
标准 IO 口
PWM37
O
增强 PWM 输出脚
INT3
I
外部中断 3
TxD_2
O
串口 1 的发送脚
CMP+
I
比较器正极输入
CCP2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
CCP2_2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P4.1
I/O
标准 IO 口
PWM41
O
MISO_3
I/O
CMPO_2
O
比较器输出
P4.2
I/O
标准 IO 口
PWM42
O
增强 PWM 输出脚
WR
O
外部总线的写信号线
P4.3
I/O
PWM43
O
增强 PWM 输出脚
RxD_4
I
串口 1 的接收脚
SCLK_3
I/O
SPI 的时钟脚
P4.4
I/O
标准 IO 口
PWM44
O
增强 PWM 输出脚
RD
O
外部总线的读信号线
TxD_4
O
串口 1 的发送脚
P2.0
I/O
PWM20
O
增强 PWM 输出脚
A8
O
地址总线
选型顾问: 13922805190
说明
LQFP48
26
27
28
29
30
31
32
33
标准 IO 口
PCA 的捕获输入、脉冲输出和 PWM 输出
增强 PWM 的外部异常检测脚
标准 IO 口
增强 PWM 输出脚
SPI 主机输入从机输出
标准 IO 口
标准 IO 口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 92 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P2.1
I/O
PWM21
O
增强 PWM 输出脚
A9
O
地址总线
P2.2
I/O
标准 IO 口
PWM22
O
增强 PWM 输出脚
A10
O
地址总线
SS_2
I
SPI 的从机选择脚(主机为输出)
P2.3
I/O
PWM23
O
增强 PWM 输出脚
A11
O
地址总线
MOSI_2
I/O
SPI 主机输出从机输入
CCP0_2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P2.4
I/O
标准 IO 口
PWM24
O
增强 PWM 输出脚
A12
O
地址总线
ECI_3
I
PCA 的外部脉冲输入
SDA_2
I/O
I2C 接口的数据线
MISO_2
I/O
SPI 主机输入从机输出
P2.5
I/O
标准 IO 口
PWM25
O
增强 PWM 输出脚
A13
O
地址总线
CCP0_3
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
SCL_2
I/O
I2C 的时钟线
SCLK_2
I/O
SPI 的时钟脚
P2.6
I/O
标准 IO 口
PWM26
O
增强 PWM 输出脚
A14
O
地址总线
CCP1_3
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P2.7
I/O
标准 IO 口
PWM27
O
增强 PWM 输出脚
A15
O
地址总线
CCP2_3
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P4.5
I/O
标准 IO 口
PWM45
O
增强 PWM 输出脚
ALE
O
地址锁存信号
选型顾问: 13922805190
说明
LQFP48
34
35
36
37
38
39
40
41
标准 IO 口
标准 IO 口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 93 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P4.6
I/O
PWM46
O
增强 PWM 输出脚
RxD2_2
I
串口 2 的接收脚
P0.0
I/O
PWM00
O
增强 PWM 输出脚
ADC8
I
ADC 模拟输入通道 8
AD0
I/O
RxD3
I
P0.1
I/O
PWM01
O
增强 PWM 输出脚
ADC9
I
ADC 模拟输入通道 9
AD1
I/O
TxD3
O
P0.2
I/O
PWM02
O
增强 PWM 输出脚
ADC10
I
ADC 模拟输入通道 10
AD2
I/O
RxD4
I
P0.3
I/O
PWM03
O
增强 PWM 输出脚
ADC11
I
ADC 模拟输入通道 11
AD3
I/O
TxD4
O
P0.4
I/O
PWM04
O
增强 PWM 输出脚
ADC12
I
ADC 模拟输入通道 12
AD4
I/O
T3
I
P5.2
I/O
PWM52
O
增强 PWM 输出脚
RxD4_2
I
串口 4 的接收脚
选型顾问: 13922805190
说明
LQFP48
42
43
44
45
46
47
48
标准 IO 口
标准 IO 口
地址/数据总线
串口 3 的接收脚
标准 IO 口
地址/数据总线
串口 3 的发送脚
标准 IO 口
地址/数据总线
串口 4 的接收脚
标准 IO 口
地址/数据总线
串口 4 的发送脚
标准 IO 口
地址/数据总线
定时器 3 外部时钟输入
标准 IO 口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 94 -
STC8G 系列技术手册
2.4.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯
使用【USB Link1D】对 STC8G2K64S4系列 进行全自动停电/上电串口烧录、仿真+串口通讯
【USB Link1D】工具:支持 全自动 停电 / 上电,在线下载 / 脱机下载,仿真
连接 目标单 片机P3.1
连接 目标单 片机P3.0
MC U-VCC
连接 目标单 片机第n组串口 发送脚TxDn
连接 目标单 片机第n组串口 接收脚RxDn
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
0.1u
10u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 95 -
STC8G 系列技术手册
2.4.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯
使用【一箭双雕之USB转双串口】对 STC8G2K64S4系列 进行串口烧录、仿真+串口通讯
【一箭双雕之USB转双串口】:支持 全自动 停电 / 上电,在线下载,仿真
5V/3.3V 通过 跳线选择
连接目标单片机第n组串口接收脚RxDn
连接目标单片机第n组串口发送脚TxDn
MCU-VCC
连接目标单片机P3.0
连接目标单片机P3.1
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
0.1u
10u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 96 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V
2.4.8
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,5V
USB转第二组串口
第二组串口用于和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
1N5819
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
1
2
22R
3
4
DD+
22R
USB-TypeA
建议用USB-TypeC
0.1u
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
USB转第一组串口
第一组用于下载或者通讯
1N5819
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
推挽/开漏
16
高阻输入
15
14
13
12
300R
11
可做电源
10 D+
供应模块
9 D关电/供电
手动按键
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源
(可从USB取电)
Q1
P-MOS
S
MCU-VCC
D
0.47u
10u
以上
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
470R
一般不焊
20K
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
0.1u
10u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 97 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图
2.4.9
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,3.3V
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
USB转第二组串口
第二组串口用于
和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组的TxDn
连接目标单片机的第n组的RxDn
1N5819
USB+5V
USB接口
+5V
D-
D+
Gnd
USB+5V
1
2
22R
3
4
DD+
22R
USB-TypeA
建议用USB-TypeC
0.1u
10u
以上
1
推挽/开漏 2
3
4
PowerCtrl 5
6
7
8
0.1u
USB转第一组串口
第一组用于下载或者通讯
1N5819
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4
Vcc
VRef+
Gnd
推挽/开漏
16
高阻输入
15
14
P3.5管脚低电平供电
13
12 P5.4管脚高电平供电
11
10
D+
9
D-
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
芯片上电时 P5.4-nRST 输出高电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,会自动
控制MCU-VCC停电0.5S再上电进行ISP
下载。下载完成后会持续供电
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源输入 Vin
也可电脑USB+5V供电
或充电宝USB+5V供电
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
2
VIN
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
PowerCtrl
10K
电源按键
MCU-VCC
5
GND
CE
C1
0.1u
VOUT
NC
×
按下按键停电
松开按键上电
C2
0.1u
该按键可不焊
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
0.1u
10u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 98 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.4.10 USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择
使用 USB转双串口 芯片 进行 全自动 烧录/仿真+串口通讯,5V/3.3V跳线选择
USB+5V
USB接口
+5V
DD+
Gnd
USB转第二组串口
第二组串口用于
和目标系统的
其他串口通讯
1
2
22R
D-
3
4
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
D+
22R
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
USB-TypeA
建议用USB-TypeC
1N5819
用跳线选择工作电压5V或3.3V
3
2
0.1u
3
GND
VOUT
1117M3-33
VIN
10u
以上
Vcc
1
跳线插座
2.54mm
USB+5V
1
2
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
USB转第一组串口
推挽/开漏
高阻输入
16
15
14
13
12
300R
11
10 D+
9 D-
第一组用于下载或者通讯
1N5819
S-RxD 连接目标单片机的P3.0/RxD
S-TxD 连接目标单片机的P3.1/TxD
Q1
P-MOS
Vcc
可做电源
供应模块
关电/供电 10u
手动按键 以上
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
S
MCU-VCC
D
0.47u
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
20K
3.3V
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
104
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
0.1u
10u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 99 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.4.11 通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,5V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
Power-On
2
2
22R
3
4
1
P5.4/nRST
P3.3/P1.1/TxD2
22R
USB-TypeA
建议用USB-TypeC
D-
10u
D+
以上
0.1u
0.1u
Vcc
P3.2/P1.0/RxD2
Q1
P-MOS
连接 目标单 片机的P3.0
8
连接 目标单 片机的P3.1
1
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
7
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
1u
D+
D-
RMB0.95 SOP8
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
Power-On
R1
10K
M CU-VCC
D
G
0.1u
R4
20K
R2
20K
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
R3
20K
S
Q2
SS8050
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
10u
0.1u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 100 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.4.12 通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,3.3V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
USB+5V
+5V
D-
D+
Gnd
1
2
Power-On
22R
3
4
22R
10u
P3.3/P1.1/TxD2
8
2
Vcc
P3.2/P1.0/RxD2
7
0.1u
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
D+
以上
0.1u
USB-TypeA
建议用USB-TypeC
P5.4/nRST
RMB0.95
D-
SOP8
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
连接 目标单 片机的P3.1
DD+
连接 目标单 片机的P3.0
1
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
2
VIN
3
CE
C1
0.1u
VOUT
M CU-VCC
5
GND
NC
4
×
10K
C2
0.1u
Power-On 高输 出,低关 断
全自动控制电源开/关
P5.4管脚高电平供电
电源开关,可不焊
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
10u
0.1u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 101 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.4.13 USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择
USB转串口 芯片 全自动 停电/上电,烧录/仿真/通信,5V/3.3V跳线选择
用跳线选择工作电压5V或3.3V
3
1
D-
3
D+
Vcc
4
1117M3-33
10u
以上
22R
3
USB-TypeA
建议用USB-TypeC
VOUT
Gnd
22R
2
GND
DD+
跳线插座
2.54mm
1
VIN
+5V
2
USB+5V
USB接口
1
10u
以上
3.3V
2
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
Vcc
Q1
P-MOS
Ai8H2K12U
Vcc
Power-On
1
P5.4/nRST
P3.3/P1.1/TxD2
连接 目标单 片机的P3.0
1u
8
0.1u
2
Vcc
P3.2/P1.0/RxD2
7
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
以上
0.1u
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
RMB0.95 SOP8
M CU-VCC
D
G
连接 目标单 片机的P3.1
10u
S
R1
10K
0.1u
R4
20K
Power-On
R2
20K
P5.4管脚高电平供电
R3
20K
Q2
SS8050
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
0.1u
10u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 102 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.4.14 USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己手动停电/上电
Ai8H2K12U
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
连接 目标单 片机的P3.0
1 P5.4/nRST
P3.3/P1.1/TxD2
8
2 Vcc
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
1
2
连接 目标单 片机的P3.1
22R
3
4
DD+
0.1u
10u
以上
0.1u
22R
USB-TypeA
建议用USB-TypeC
RMB0.95
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
0.1u
10u
P4.0/PWM40/MOSI_3
以上
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式 这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 103 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.4.15 USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己 手动 停电/上电
+5V
DD+
Gnd
Ai8H2K12U
USB+5V
USB+5V
USB接口
1
连接 目标单 片机的P3.0
1 P5.4/nRST
P3.3/P1.1/TxD2
8
2 Vcc
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
连接 目标单 片机的P3.1
22R
2
D10u
3
D+
0.1u
以上
22R
4
0.1u
D+
D-
RMB0.95
USB-TypeA
建议用USB-TypeC
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
2
VIN
3
CE
10K
C1
0.1u
VOUT
MCU-VCC
5
GND
NC
4
按下按键停电
松开按键上电
×
C1
0.1u
36
35
34
33
32
31
30
29
28
27
26
25
电源按键
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1/PWM51/TxD3_2
STC8G2K64S4-36I-LQFP48/QFN48 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.0/PWM50/RxD3_2
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
M CU-VCC
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
0.1u
10u
以上
P4.0/PWM40/MOSI_3
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/PWM54/nRST/MCLKO/SS_3
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
TxD4_2/PWM53/P5.3
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP是英文单词的缩写 CCP1_3/A14/PWM26/P2.6
Capture(捕获) CCP2_3/A15/PWM27/P2.7
Compare(比较)
ALE/PWM45/P4.5
PWM(脉宽调制)
RxD2_2/PWM46/P4.6
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
RxD4_2/PWM52/P5.2
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 104 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.4.16 USB-Link1D 支持 脱机下载 说明
脱机下载是指脱离电脑主机进行下载的一种方法,一般是使用下载控制芯片(又称脱机下载母片)
进行控制。USB-Link1D 工具除了支持在线 ISP 下载,还支持脱机下载。USB-Link1D 工具使用外部的
22.1184MHz 晶振,可保证对目标芯片进行在线或脱机下载时,校准频率的精度。用户可将代码下载到
USB-Link1D 工具中,就可实现脱机下载。USB-Link1D 主控芯片如内部存储空间不够时,会将部分被
下载的用户程序用加密的方式加密放部分到片外串行 Flash。
先将 USB-Link1D 工具使用 USB 线连接到电脑,然后按照下面的步骤进行脱机下载:
1、选择目标芯片的型号
2、打开需要下载的文件
3、设置硬件选项
4、进入“USB-Link1D 脱机”页面,点击“将用户程序下载到编程器以供脱机下载“按钮,即可将
用户代码下载到 USB-Linik1D 工具中。下载完成后便使用 USB-Link1D 工具对目标芯片进行脱
机下载了
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 105 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.4.17 USB-Link1D 支持 脱机下载,如何免烧录环节
大批量生产,如何省去专门的烧录人员,如何无烧录环节
大批量生产,你在将由 STC 的 MCU 作为主控芯片的控制板组装到设备里面之前,在你将 STC MCU 贴
片到你的控制板完成之后,你必须测试你的控制板的好坏。不要说 100%,直通无问题,那是抬杠,不
是搞生产,只要生产,就会虚焊,短路,部分原件贴错,部分原件采购错。
所以在贴片回来后,组装到外壳里面之前,你必须要测试,你的含有 STC MCU 控制板的好坏,好的去
组装,坏的去维修抢救。
控制板的测试/不是烧录!
控制板的测试环节必须有,但烧录环节可以省!
大批量生产,必须要有方便控制板测试的测试架/下面接上我们的脱机烧录工具:
USB-Link1D / U8W-Mini / U8W,还要接上其他控制部分!
1、通过 USER-VCC、P3.0、P3.1、GND 连接,要工人每次都开电源
2、通过 S-VCC、P3.0、P3.1、GND 连接,不要你开电源,STC 的脱机工具给你自动供电
外面帮你做一个测试架的成本 500 元以下,就是有机玻璃,夹具,顶针。
1 个测试你控制板是否正常的工人管理 2 - 3 个 测试架
操作流程:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 106 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1、将你的 MCU 控制板 卡到测试架 1 上
2、将你的 MCU 控制板 卡到测试架 2 上,测试架 1 上的程序已烧录完成/感觉不到烧录时间
3、测试 测试架 1 上的 MCU 主控板功能是否正常,正常放到正常区,不正常,放到不正常区
4、给测试架 1 卡上新的未测试的无程序的控制板
5、测试 测试架 2 上的未测试控制板/程序不知何时早就不知不觉的烧好了,换新的未测试未烧录的控制
板
6、循环步骤 3 到步骤 5
========不需要安排烧录人员
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 107 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
36
35
34
33
32
31
30
29
28
27
26
25
P2.3
P2.2
P2.1
P2.0
P4.4
P4.3
P4.2
P4.1
P3.7
P3.6
P3.5
P5.1
2.4.18 USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录
STC8G2K64S4
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.0
P3.4
P3.3
P3.2
P3.1
P3.0
P4.0
Gnd/AGnd
ADC_VRef+
Vcc/AVcc
P5.4/nRST
P1.7
0.1u
10u
以上
P5.3
P0.5
P0.6
P0.7
P1.0
P1.1
P4.7
P1.2
P1.3
P1.4
P1.5
P1.6
P2.4
P2.5
P2.6
P2.7
P4.5
P4.6
P0.0
P0.1
P0.2
P0.3
P0.4
P5.2
USB型 脱机/联机烧录工具 USB-Writer1A (人民币100元)
1、LQFP48/32封装:对应使用LQFP48/32转DIP48/32转换座,插在烧录锁紧座上进行烧录
2、QFN48封装:使用QFN48转DIP48转换座,插在烧录锁紧座上进行烧录
3、PDIP040封装可以直接插在烧录锁紧座上进行烧录
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 108 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.4.19 USB-Writer1A 支持 自动烧录机,通信协议和接口
S-P3.0(连接从机的P3.0)
(仅从本工具用户系统供电)S-Vcc
S-P3.1(连接从机的P3.1)
USB-CDC串口连接用户的TxD
USB-CDC串口连接用户的RxD
Gnd(地线)
(仅由用户系统给本工具供电)User-Vcc
脱机烧录用户程序按键
编程接口
USB Type-C接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
40Pin锁紧座
USB接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
USB Writer1A更新系统程序按键
升级USB Writer1A编程器
主控CPU电源按键
自动烧录机
分选机接口
ERROR(错误信号)
OK(成功信号)
EOT(完成信号)
Start(开始信号)
Gnd(地线)
自动烧录接口(分选机自动控制接口)协议:
Start:开始信号输入脚。从外部输入低电平信号触发开始脱机烧录,低电平必须维持 25 毫秒以上
EOT:烧录完成信号输出脚。脱机烧录完成后,工具输出 20ms~250ms 的低电平 EOT 信号。电平宽
度如下图所示的地方进行设置
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 109 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
OK:良品信号输出脚。下载成功后工具从 OK 脚输出低电平信号,信号与 EOT 信号同步。
Err:不良品信号输出脚。若下载失败,工具从 ERR 脚输出输出低电平信号,信号与 EOT 完成信号同
步。
25ms以上
20ms~200ms
Start
EOT
OK
Err
开始下载
脱机下载
下载完成
OK和Err只会输出其中一个信号
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 110 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.5 STC8G2K64S2-36I-LQFP48/QFN48 系列(8 路增强型 PWM)
注意:STC8G2K64S2 系列只有 P2 口才有增强型 PWM,其他口没有
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机)
2.5.1
选型价格(不需要外部晶振、不需要外部复位,10 位 ADC,15 通道)
15
1
-
8
3
有 10 位 有
有
有 4级 有
是
有
是
是
是
是
¥3
¥3
¥3
STC8G2K48S2 1.9-5.5 48K 256 2K
2 16K 45
2
有
有
有
5
-
8
3
有 10 位 有
有
有 4级 有
是
有
是
是
是
是
¥3
¥3
¥3
STC8G2K64S2 1.9-5.5 64K 256 2K
2
2
有
有
有
5
-
8
3
有 10 位 有
有
有 4级 有
是
有
是
是
是
是
¥3
¥3
¥3
IAP 45
36MHz
5
位
乘
除
法
器
D/A
有
16
有
SRAM
有
字 字
节 节 字
节
DPTR
2
万
次
8051 RAM
2 32K 45
)
10
STC8G2K32S2 1.9-5.5 32K 256 2K
V
QFN48
支
持
支 软 本
持 件 身
就
可
在
线
直
下
仿
载 接 真
下
载
价
格
及
封
装
LQFP32
可
设
置
下
次
更
新
程
序
需
口
令
LQFP48
可
对
外
输
出
时
钟
以 及
下 复
可 位
调
)
追
频
程
序
加
密
后
传
输
(
防
拦
截
)
USB
看
门
狗
复
位
定
时
器
内
部
高
精
准
时
钟
(
RS485
A/D
ADC PWM
PWM
PWM
(
可
当
外
部
中
断
并
可
掉
电
唤
醒
)
掉
电
唤
醒
专
用
定
时
器
内
部
高
可
靠
复
位
(
可
选
复
位
门
槛
电
压
)
I2 C
T0-T4
PCA/CCP/PWM
15
16
/
硬
件
比
较
路 器
高 ( 内
速 可 部
当 低
压
路 检
(
测
中
, 断
可 并
可 作 可
当 外 掉
部 电
掉 唤
使 电 醒
用 检
) 测
)
SPI
口
最
万 多
可 次 数
量
增
可 字
减 节
串
口
并
可
掉
电
唤
醒
MDU16
强
大
的
双
I/O
,
内
部
大
容
量
扩
展
EEPROM 10
idata
单
片
机
型
号
,
内
部
传
统
xdata
Flash
工
作
电
压
(
程
序
存
储
器
定
支
时
持
器
计 位 位 上
数 高 增 升
器 级 强 沿
中
(
型 断
、
下
定
外 时 满 降
部 器 足 沿
中
管
舞
脚 互 台 断
也 补 灯 以
可 对 光 及
掉 称 要 边
电 死 求 沿
中
唤 区
断
醒
)
主
力
产
品
供
货
信
息
现
货
注:以上的单价为 10K 及以上订货量的价格,量小则每片需增加 0.1 元人民币。
内核
超高速 8051 内核(1T),比传统 8051 约快 12 倍以上
指令代码完全兼容传统 8051
27 个中断源,4 级中断优先级
支持在线仿真
工作电压
1.9V~5.5V
内建 LDO
工作温度
-40℃~85℃(超温度范围应用请参考电器特性章节说明)
Flash 存储器
最大 64K 字节 FLASH 程序存储器(ROM),用于存储用户代码
支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上
支持在系统编程方式(ISP)更新用户应用程序,无需专用编程器
支持单芯片仿真,无需专用仿真器,理论断点个数无限制
SRAM
128 字节内部直接访问 RAM(DATA)
128 字节内部间接访问 RAM(IDATA)
2048 字节内部扩展 RAM(内部 XDATA)
时钟控制
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 111 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
内部高精度、高稳定的高速 IRC(4MHz~38MHz,ISP 编程时可进行上下调整,还可以用户软件分频到
较低的频率工作,如 100KHz)
误差±0.3%(常温下 25℃)
-1.38%~+1.42%温漂(全温度范围,-40℃~85℃)
-0.88%~+1.05%温漂(温度范围,-20℃~65℃)
内部 32KHz 低速 IRC(为了低功耗,省去了温度补偿和电压补偿电路,误差较大)
外部晶振(4MHz~38MHz)和外部时钟
(芯片上电工作过程:上电复位/复位脚复位/看门狗复位/低压检测复位时,芯片默认从 ISP 系统程序开始执行代
码,此时固定使用内部 24MHz 的高速 IRC 时钟,当需要下载用户程序且下载完成后复位到用户程序区或者不需
要下载直接复位到用户程序区时,默认会使用上次用户下载时所调节的高速 IRC 时钟,如果用户程序需要使用
外部高速晶振、外部 32.768KHz 晶振或者内部 30KHz 低速 IRC,则需要用户软件先启动相应的时钟,然后通过
设置 CLKSEL 寄存器进行切换)
复位
硬件复位
上电复位。(在芯片未使能低压复位功能时有效)
复位脚复位。出厂时 P5.4 默认为 I/O 口,ISP 下载时可将 P5.4 管脚设置为复位脚(注意:当设置 P5.4
管脚为复位脚时,复位电平为低电平)
看门狗溢出复位
低压检测复位,提供 4 级低压检测电压:2.0V、2.4V、2.7V、3.0V。
软件复位
软件方式写复位触发寄存器
中断
提供 27 个中断源:INT0(支持上升沿和下降沿中断)、INT1(支持上升沿和下降沿中断)、INT2(只支
持下降沿中断)、INT3(只支持下降沿中断)、INT4(只支持下降沿中断)、定时器 0、定时器 1、定时
器 2、定时器 3、定时器 4、串口 1、串口 2、ADC 模数转换、LVD 低压检测、SPI、I2C、比较器、PCA/CCP/PWM、
增强型 PWM0、增强型 PWM1、增强型 PWM2、增强型 PWM3、增强型 PWM4、增强型 PWM5、增强型
PWM0 异常检测、增强型 PWM2 异常检测、增强型 PWM4 异常检测。
提供 4 级中断优先级
时钟停振模式下可以唤醒的中断:INT0(P3.2)、INT1(P3.3)、INT2(P3.6)、INT3(P3.7)、INT4(P3.0)、T0(P3.4)、
T1(P3.5)、T2(P1.2)、T3(P0.4)、T4(P0.6)、RXD(P3.0/P3.6/P1.6/P4.3)、RXD2(P1.0/P4.6)、CCP0(P1.1/P3.5/P2.5)、
CCP1(P1.0/P3.6/P2.6)、CCP2(P3.7/P2.7)、I2C_SDA(P1.4/P2.4/P3.3)以及比较器中断、低压检测中断、掉电
唤醒定时器唤醒。
数字外设
5 个 16 位定时器:定时器 0、定时器 1、定时器 2、定时器 3、定时器 4,其中定时器 0 的模式 3 具有 NMI
(不可屏蔽中断)功能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式
2 个高速串口:串口 1、串口 2,波特率时钟源最快可为 FOSC/4
3 组 16 位 CCP/PCA/PWM 模块:CCP0、CCP1、CCP2,可用于捕获、高速脉冲输出,及 6/7/8/10 位的 PWM
输出
8 组 15 位增强型 PWM,可实现带死区的控制信号,并支持外部异常检测功能(另外还有 3 组传统的
PCA/CCP/PWM 可作 PWM)
SPI:支持主机模式和从机模式以及主机/从机自动切换
I2C:支持主机模式和从机模式
MDU16:硬件 16 位乘除法器(支持 32 位除以 16 位、16 位除以 16 位、16 位乘 16 位、数据移位以及数
据规格化等运算)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 112 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
模拟外设
超高速 ADC,支持 10 位精度 15 通道(通道 0~通道 14)的模数转换,速度最快能达到 500K(每秒进行
ADC 的通道 15 用于测试内部 1.19V 参考信号源(芯片在出厂时,内部参考信号源已调整为 1.19V)
比较器,一组比较器(比较器的正端可选择 CMP+端口和所有的 ADC 输入端口,所以比较器可当作多路
50 万次 ADC 转换)
比较器进行分时复用)
DAC:3 路 PCA/CCP/PWM 可当 3 路 DAC 使用,45 路增强型 PWM 可当 45 路 DAC 使用
GPIO
最多可达 45 个 GPIO:P0.0~P0.7、P1.0~P1.7、P2.0~P2.7、P3.0~P3.7、P4.0~P4.7、P5.0~P5.4
所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏模式、高阻输入模式
除 P3.0 和 P3.1 外,其余所有 I/O 口上电后的状态均为高阻输入状态,用户在使用 I/O 口时必须先设置 I/O
口模式,另外每个 I/O 均可独立使能内部 4K 上拉电阻
封装
LQFP48、QFN48
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 113 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G2K64S2-36I-LQFP48/QFN48 管脚图,ISP 下载/编程线路图
2.5.2
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
SPI
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
ADC
RxD
P3.0
P3.6
P1.6
P4.3
UART2
TxD
P3.1
P3.7
P1.7
P4.4
RxD2
P1.0
P4.6
TxD2
P1.1
P4.7
CMP
MOSI
P1.3
P2.3
P4.0
P3.4
MISO SCLK
P1.4
P1.5
P2.4
P2.5
P4.1
P4.3
P3.3
P3.2
SCL
P1.5
P2.5
P3.2
SDA
P1.4
P2.4
P3.3
PCA/CCP/PWM
ECI
P1.2
P3.4
P2.4
-
CCP0
P1.1
P3.5
P2.5
-
CCP1
P1.0
P3.6
P2.6
-
CCP2
P3.7
P3.7
P2.7
-
36
35
34
33
32
31
30
29
28
27
26
25
CMP+ CMP- CMPO
P3.7 1.19V P3.4
ADCIN P3.6
P4.1
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
UART1
I2C
SS
P1.2
P2.2
P5.4
P3.5
ADC0 ADC1 ADC2 ADC3 ADC4 ADC5 ADC6 ADC7
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
ADC8 ADC9 ADC10 ADC11 ADC12 ADC13 ADC14 ADC15
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6 1.19V
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
使用USB转串口芯片进行ISP下载/烧录/仿真,目标系统 手动停电/上电
Ai8H2K12U
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
连接 目标单 片机的P3.0
1
P5.4/nRST
P3.3/P1.1/TxD2
2
Vcc
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4
D-/RxD/P3.0
5
8
1
2
连接 目标单 片机的P3.1
22R
3
4
D-
D+
22R
USB-TypeA
建议用USB-TypeC
10u
以上
0.1u
0.1u
Gnd/AGnd
D+
D-
RMB0.95
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 114 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 115 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G2K64S2-36I-PDIP40 管脚图,ISP 下载/编程线路图
2.5.3
STC8G2K64S2-36I-PDIP40 最小系统 示意图
UART1
UART2
CMP
I2C
SPI
RxD
TxD
RxD2
TxD2
CMP+
CMP-
CMPO
SCL
SDA
SS
MOSI
MISO
SCLK
P3.0
P3.1
P1.0
P1.1
P3.7
1.19V
P3.4
P1.5
P1.4
P1.2
P1.3
P1.4
P1.5
P3.6
P3.7
-
-
ADCIN
P3.6
P4.1
P2.5
P2.4
P2.2
P2.3
P2.4
P2.5
P1.6
P1.7
-
-
-
-
-
-
-
-
P3.2
P3.3
P3.5
P3.4
P3.3
P3.2
ADC
PCA/CCP/PWM
ADC0
ADC1
ADC2
ADC3
ADC4
ADC5
ADC6
ADC7
ECI
CCP0
CCP1
CCP2
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P1.2
P1.1
P1.0
P3.7
ADC8
ADC9
ADC10
ADC11
ADC12
ADC13
ADC14
ADC15
P3.4
P3.5
P3.6
P3.7
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
1.19V
P2.4
P2.5
P2.6
P2.7
-
-
-
-
PDIP40
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
STC8G2K64S2
AD0/ADC8/P0.0
AD1/ADC9/P0.1
AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
XTALI/TxD_3/ADC7/P1.7
SS_3/MCLKO/nRST/P5.4
M CU-VCC
Vcc/AVcc
10u
0.1u
ADC_VRef+
以上
Gnd/AGnd
CCP是英文单词的缩写
Capture(捕获)
Compare(比较)
PWM(脉宽调制)
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
P4.5/ALE
P2.7/PWM27/A15/CCP2_3
P2.6/PWM26/A14/CCP1_3
P2.5/PWM25/A13/CCP0_3/I2CSCL_2/SCLK_2
P2.4/PWM24/A12/ECI_3/I2CSDA_2/MISO_2
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,5V
USB转第二组串口
第二组串口用于和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
1N5819
USB+5V
USB接口
+5V
D-
D+
Gnd
USB+5V
1
2
22R
3
4
DD+
22R
USB-TypeA
建议用USB-TypeC
0.1u
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
USB转第一组串口
推挽/开漏
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
16
高阻输入
15
14
13
12
300R
11
可做电源
10 D+
供应模块
9 D关电/供电
手动按键
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
第一组用于下载或者通讯
1N5819
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源
(可从USB取电)
Q1
P-MOS
S
MCU-VCC
D
0.47u
10u
以上
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
470R
一般不焊
20K
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 116 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 117 -
STC8G 系列技术手册
2.5.4
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
管脚说明
名称
类型
说明
P5.3
I/O
PWM53
O
P0.5
I/O
PWM05
O
AD5
I/O
ADC13
I
ADC 模拟输入通道 13
T3CLKO
O
定时器 3 时钟分频输出
P0.6
I/O
PWM06
O
AD6
I/O
ADC14
I
ADC 模拟输入通道 14
T4
I
定时器 4 外部时钟输入
PWMFLT2
I
增强 PWM 的外部异常检测脚
P0.7
I/O
PWM07
O
AD7
I/O
T4CLKO
O
定时器 4 时钟分频输出
PWMFLT3
I
增强 PWM 的外部异常检测脚
P1.0
I/O
PWM10
O
增强 PWM 输出脚
ADC0
I
ADC 模拟输入通道 0
CCP1
I/O
RxD2
I
P1.1
I/O
PWM11
O
增强 PWM 输出脚
ADC1
I
ADC 模拟输入通道 1
CCP0
I/O
TxD2
O
P4.7
I/O
PWM47
O
增强 PWM 输出脚
TxD2_2
O
串口 2 的发送脚
P1.2
I/O
PWM12
O
增强 PWM 输出脚
ADC2
I
ADC 模拟输入通道 2
ECI
I
PCA 的外部脉冲输入
SS
I
SPI 的从机选择脚(主机为输出)
T2
I
定时器 2 外部时钟输入
LQFP48
1
2
3
4
5
6
7
8
标准 IO 口
增强 PWM 输出脚
标准 IO 口
增强 PWM 输出脚
地址/数据总线
标准 IO 口
增强 PWM 输出脚
地址/数据总线
标准 IO 口
增强 PWM 输出脚
地址/数据总线
标准 IO 口
PCA 的捕获输入、脉冲输出和 PWM 输出
串口 2 的接收脚
标准 IO 口
PCA 的捕获输入、脉冲输出和 PWM 输出
串口 2 的发送脚
标准 IO 口
标准 IO 口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 118 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P1.3
I/O
PWM13
O
增强 PWM 输出脚
ADC3
I
ADC 模拟输入通道 3
MOSI
I/O
SPI 主机输出从机输入
T2CLKO
O
定时器 2 时钟分频输出
P1.4
I/O
PWM14
O
增强 PWM 输出脚
ADC4
I
ADC 模拟输入通道 4
MISO
I/O
SPI 主机输入从机输出
SDA
I/O
I2C 接口的数据线
P1.5
I/O
标准 IO 口
PWM15
O
增强 PWM 输出脚
ADC5
I
ADC 模拟输入通道 5
SCLK
I/O
SPI 的时钟脚
SCL
I/O
I2C 的时钟线
P1.6
I/O
标准 IO 口
PWM16
O
增强 PWM 输出脚
ADC6
I
ADC 模拟输入通道 6
RxD_3
I
串口 1 的接收脚
MCLKO_2
O
主时钟分频输出
XTALO
O
外部晶振的输出脚
P1.7
I/O
PWM17
O
增强 PWM 输出脚
ADC7
I
ADC 模拟输入通道 7
TxD_3
O
串口 1 的发送脚
XTALI
I
外部晶振/外部时钟的输入脚
P5.4
I/O
PWM54
O
增强 PWM 输出脚
NRST
I
复位引脚(低电平复位)
MCLKO
O
主时钟分频输出
SS_3
I
SPI 的从机选择脚(主机为输出)
Vcc
Vcc
电源脚
AVcc
Vcc
ADC 电源脚
ADC_Vref+
I
Gnd
Gnd
地线
AGnd
Gnd
ADC 地线
选型顾问: 13922805190
说明
LQFP48
9
10
11
12
13
14
15
16
17
标准 IO 口
标准 IO 口
标准 IO 口
标准 IO 口
ADC 外部参考电压源输入脚,要求不高时可直接接
MCU 的 VCC
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 119 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P4.0
I/O
PWM40
O
MOSI_3
I/O
SPI 主机输出从机输入
P3.0
I/O
标准 IO 口
PWM30
O
增强 PWM 输出脚
RxD
I
串口 1 的接收脚
INT4
I
外部中断 4
P3.1
I/O
标准 IO 口
PWM31
O
增强 PWM 输出脚
TxD
O
串口 1 的发送脚
P3.2
I/O
PWM32
O
增强 PWM 输出脚
INT0
I
外部中断 0
SCLK_4
I/O
SPI 的时钟脚
SCL_4
I/O
I2C 的时钟线
P3.3
I/O
标准 IO 口
PWM33
O
增强 PWM 输出脚
INT1
I
外部中断 1
MISO_4
I/O
SPI 主机输入从机输出
SDA_4
I/O
I2C 接口的数据线
P3.4
I/O
标准 IO 口
PWM34
O
增强 PWM 输出脚
T0
I
定时器 0 外部时钟输入
T1CLKO
O
定时器 1 时钟分频输出
ECI_2
I
PCA 的外部脉冲输入
MOSI_4
I/O
SPI 主机输出从机输入
CMPO
O
比较器输出
P5.0
I/O
标准 IO 口
PWM50
O
增强 PWM 输出脚
RxD3_2
I
串口 3 的接收脚
P5.1
I/O
PWM52
O
选型顾问: 13922805190
说明
LQFP48
18
19
20
21
22
23
24
25
标准 IO 口
增强 PWM 输出脚
标准 IO 口
标准 IO 口
增强 PWM 输出脚
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 120 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P3.5
I/O
PWM35
O
增强 PWM 输出脚
T1
I
定时器 1 外部时钟输入
T0CLKO
O
定时器 0 时钟分频输出
SS_4
I
SPI 的从机选择脚(主机为输出)
CCP0_2
I/O
PWMFLT
I
P3.6
I/O
PWM36
O
增强 PWM 输出脚
INT2
I
外部中断 2
RxD_2
I
串口 1 的接收脚
CMP-
I
比较器负极输入
CCP1_2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P3.7
I/O
标准 IO 口
PWM37
O
增强 PWM 输出脚
INT3
I
外部中断 3
TxD_2
O
串口 1 的发送脚
CMP+
I
比较器正极输入
CCP2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
CCP2_2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P4.1
I/O
标准 IO 口
PWM41
O
MISO_3
I/O
CMPO_2
O
比较器输出
P4.2
I/O
标准 IO 口
PWM42
O
增强 PWM 输出脚
WR
O
外部总线的写信号线
P4.3
I/O
PWM43
O
增强 PWM 输出脚
RxD_4
I
串口 1 的接收脚
SCLK_3
I/O
SPI 的时钟脚
P4.4
I/O
标准 IO 口
PWM44
O
增强 PWM 输出脚
RD
O
外部总线的读信号线
TxD_4
O
串口 1 的发送脚
P2.0
I/O
PWM20
O
增强 PWM 输出脚
A8
O
地址总线
选型顾问: 13922805190
说明
LQFP48
26
27
28
29
30
31
32
33
标准 IO 口
PCA 的捕获输入、脉冲输出和 PWM 输出
增强 PWM 的外部异常检测脚
标准 IO 口
增强 PWM 输出脚
SPI 主机输入从机输出
标准 IO 口
标准 IO 口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 121 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P2.1
I/O
PWM21
O
增强 PWM 输出脚
A9
O
地址总线
P2.2
I/O
标准 IO 口
PWM22
O
增强 PWM 输出脚
A10
O
地址总线
SS_2
I
SPI 的从机选择脚(主机为输出)
P2.3
I/O
PWM23
O
增强 PWM 输出脚
A11
O
地址总线
MOSI_2
I/O
SPI 主机输出从机输入
CCP0_2
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P2.4
I/O
标准 IO 口
PWM24
O
增强 PWM 输出脚
A12
O
地址总线
ECI_3
I
PCA 的外部脉冲输入
SDA_2
I/O
I2C 接口的数据线
MISO_2
I/O
SPI 主机输入从机输出
P2.5
I/O
标准 IO 口
PWM25
O
增强 PWM 输出脚
A13
O
地址总线
CCP0_3
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
SCL_2
I/O
I2C 的时钟线
SCLK_2
I/O
SPI 的时钟脚
P2.6
I/O
标准 IO 口
PWM26
O
增强 PWM 输出脚
A14
O
地址总线
CCP1_3
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P2.7
I/O
标准 IO 口
PWM27
O
增强 PWM 输出脚
A15
O
地址总线
CCP2_3
I/O
PCA 的捕获输入、脉冲输出和 PWM 输出
P4.5
I/O
标准 IO 口
PWM45
O
增强 PWM 输出脚
ALE
O
地址锁存信号
选型顾问: 13922805190
说明
LQFP48
34
35
36
37
38
39
40
41
标准 IO 口
标准 IO 口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 122 -
STC8G 系列技术手册
编号
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
名称
类型
P4.6
I/O
PWM46
O
增强 PWM 输出脚
RxD2_2
I
串口 2 的接收脚
P0.0
I/O
PWM00
O
增强 PWM 输出脚
ADC8
I
ADC 模拟输入通道 8
AD0
I/O
地址/数据总线
P0.1
I/O
标准 IO 口
PWM01
O
增强 PWM 输出脚
ADC9
I
ADC 模拟输入通道 9
AD1
I/O
地址/数据总线
P0.2
I/O
标准 IO 口
PWM02
O
增强 PWM 输出脚
ADC10
I
ADC 模拟输入通道 10
AD2
I/O
地址/数据总线
P0.3
I/O
标准 IO 口
PWM03
O
增强 PWM 输出脚
ADC11
I
ADC 模拟输入通道 11
AD3
I/O
地址/数据总线
P0.4
I/O
标准 IO 口
PWM04
O
增强 PWM 输出脚
ADC12
I
ADC 模拟输入通道 12
AD4
I/O
T3
I
P5.2
I/O
PWM52
O
选型顾问: 13922805190
说明
LQFP48
42
43
44
45
46
47
48
标准 IO 口
标准 IO 口
地址/数据总线
定时器 3 外部时钟输入
标准 IO 口
增强 PWM 输出脚
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 123 -
STC8G 系列技术手册
2.5.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 对 STC8G 系列进行自动串口烧录、仿真+串口通讯
使用【USB Link1D】对 STC8G2K64S2系列 进行全自动停电/上电串口烧录、仿真+串口通讯
【USB Link1D】工具:支持 全自动 停电 / 上电,在线下载 / 脱机下载,仿真
连接 目标单 片机P3.1
连接 目标单 片机P3.0
MC U-VCC
连接 目标单 片机第n组串口 发送脚TxDn
连接 目标单 片机第n组串口 接收脚RxDn
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 124 -
STC8G 系列技术手册
2.5.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯
使用【一箭双雕之USB转双串口】对 STC8G2K64S2系列 进行串口烧录、仿真+串口通讯
【一箭双雕之USB转双串口】:支持 全自动 停电 / 上电,在线下载,仿真
5V/3.3V 通过 跳线选择
连接目标单片机第n组串口接收脚RxDn
连接目标单片机第n组串口发送脚TxDn
MCU-VCC
连接目标单片机P3.0
连接目标单片机P3.1
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 125 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动停电/上电烧录,串口仿真+串口通讯,5V
2.5.7
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,5V
USB转第二组串口
第二组串口用于和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
1N5819
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
1
2
22R
3
4
D-
D+
22R
USB-TypeA
建议用USB-TypeC
0.1u
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
USB转第一组串口
第一组用于下载或者通讯
1N5819
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
推挽/开漏
16
高阻输入
15
14
13
12
300R
11
可做电源
10 D+
供应模块
9 D关电/供电
手动按键
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源
(可从USB取电)
Q1
P-MOS
S
MCU-VCC
D
0.47u
10u
以上
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
470R
一般不焊
20K
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 126 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片全自动烧录,串口仿真+串口通讯,3.3V 原理图
2.5.8
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,3.3V
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
USB转第二组串口
第二组串口用于
和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组的TxDn
连接目标单片机的第n组的RxDn
1N5819
USB+5V
USB接口
+5V
D-
D+
Gnd
USB+5V
1
2
22R
3
4
DD+
22R
USB-TypeA
建议用USB-TypeC
0.1u
10u
以上
1
推挽/开漏 2
3
4
PowerCtrl 5
6
7
8
0.1u
USB转第一组串口
第一组用于下载或者通讯
1N5819
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
推挽/开漏
16
高阻输入
15
14
P3.5管脚低电平供电
13
12 P5.4管脚高电平供电
11
10
D+
9
D-
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
芯片上电时 P5.4-nRST 输出高电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,会自动
控制MCU-VCC停电0.5S再上电进行ISP
下载。下载完成后会持续供电
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源输入 Vin
也可电脑USB+5V供电
或充电宝USB+5V供电
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
2
VIN
CE
C1
0.1u
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
PowerCtrl
10K
电源按键
VOUT
MCU-VCC
5
GND
NC
×
按下按键停电
松开按键上电
C2
0.1u
该按键可不焊
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 127 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 转双串口芯片进行自动烧录/仿真+串口通讯,5V/3.3V 跳线选择
2.5.9
使用 USB转双串口 芯片 进行 全自动 烧录/仿真+串口通讯,5V/3.3V跳线选择
USB+5V
USB接口
+5V
DD+
Gnd
USB转第二组串口
第二组串口用于
和目标系统的
其他串口通讯
1
2
22R
D-
3
4
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
D+
22R
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
USB-TypeA
建议用USB-TypeC
1N5819
用跳线选择工作电压5V或3.3V
3
1
0.1u
3
VOUT
VIN
1117M3-33
GND
10u
以上
Vcc
2
跳线插座
2.54mm
USB+5V
1
2
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
USB转第一组串口
推挽/开漏
高阻输入
16
15
14
13
12
300R
11
10 D+
9 D-
第一组用于下载或者通讯
1N5819
S-RxD 连接目标单片机的P3.0/RxD
S-TxD 连接目标单片机的P3.1/TxD
Q1
P-MOS
Vcc
可做电源
供应模块
关电/供电 10u
手动按键 以上
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
S
MCU-VCC
D
0.47u
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
20K
3.3V
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
104
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 128 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.5.10 通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,5V 原理图
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,5V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
+5V
D-
D+
Gnd
USB+5V
Power-On
2
2
22R
3
4
1
P5.4/nRST
P3.3/P1.1/TxD2
22R
USB-TypeA
建议用USB-TypeC
D-
10u
D+
以上
0.1u
0.1u
Vcc
P3.2/P1.0/RxD2
Q1
P-MOS
连接 目标单 片机的P3.0
8
连接 目标单 片机的P3.1
1
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
7
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
1u
D+
D-
RMB0.95 SOP8
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
Power-On
R1
10K
R3
20K
S
M CU-VCC
D
G
0.1u
R4
20K
R2
20K
Q2
SS8050
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 129 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.5.11 通用 USB 转串口芯片全自动停电/上电烧录,串口仿真,3.3V 原理图
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,3.3V
USB接口
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB+5V
+5V
DD+
Gnd
1
2
Power-On
22R
3
4
USB-TypeA
建议用USB-TypeC
P5.4/nRST
P3.3/P1.1/TxD2
8
P3.2/P1.0/RxD2
7
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
连接 目标单 片机的P3.1
DD+
22R
1
连接 目标单 片机的P3.0
2 Vcc
10u
0.1u
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
以上
0.1u
RMB0.95
SOP8
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
2
VIN
3
CE
C1
0.1u
VOUT
M CU-VCC
5
GND
NC
4
×
10K
C2
0.1u
Power-On 高输 出,低关 断
全自动控制电源开/关
P5.4管脚高电平供电
电源开关,可不焊
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 130 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.5.12 USB 转串口芯片全自动停电/上电烧录/仿真/通信,5V/3.3V 跳线选择
USB转串口 芯片 全自动 停电/上电,烧录/仿真/通信,5V/3.3V跳线选择
用跳线选择工作电压5V或3.3V
Gnd
D-
3
Vcc
22R
4
1117M3-33
10u
以上
D+
3
USB-TypeA
建议用USB-TypeC
VOUT
D+
22R
2
GND
D-
跳线插座
2.54mm
1
VIN
+5V
3
1
USB接口
2
USB+5V
1
10u
以上
3.3V
2
P-MOS:
SI2301/RM B0.045
AO3401/RM B0.075
Q1
P-MOS
Vcc
Ai8H2K12U
Vcc
Power-On
1
P5.4/nRST
P3.3/P1.1/TxD2
连接 目标单 片机的P3.0
1u
8
连接 目标单 片机的P3.1
2
10u
0.1u
Vcc
P3.2/P1.0/RxD2
3
UCap
D+/TxD/P3.1
6
4
Gnd/AGnd
D-/RxD/P3.0
5
以上
0.1u
R1
10K
7
D+
D-
RMB0.95 SOP8
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
R3
20K
S
M CU-VCC
D
G
0.1u
R4
20K
Power-On
R2
20K
P5.4管脚高电平供电
Q2
SS8050
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 131 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.5.13 USB 转串口芯片进行烧录/串口仿真,手动停电/上电,5V/3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己手动停电/上电
Ai8H2K12U
USB+5V
USB接口
USB+5V
1 P5.4/nRST
+5V
DD+
Gnd
P3.3/P1.1/TxD2
连接 目标单 片机的P3.0
8
1
2
连接 目标单 片机的P3.1
22R
3
4
2 Vcc
DD+
10u
以上
0.1u
0.1u
22R
USB-TypeA
建议用USB-TypeC
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4 Gnd/AGnd
D-/RxD/P3.0
5
RMB0.95
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 132 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.5.14 USB 转串口芯片进行烧录,串口仿真,手动停电/上电,3.3V 原理图
使用 USB转串口 芯片,进行 ISP烧录/仿真/通信,目标系统自己 手动 停电/上电
+5V
DD+
Gnd
Ai8H2K12U
USB+5V
USB+5V
USB接口
连接 目标单 片机的P3.0
1
1 P5.4/nRST
P3.3/P1.1/TxD2
8
2
2 Vcc
P3.2/P1.0/RxD2
7
D+/TxD/P3.1
6
D-/RxD/P3.0
5
连接 目标单 片机的P3.1
22R
D10u
3
D+
0.1u
3 UCap
以上
22R
4
0.1u
4 Gnd/AGnd
D+
D-
RMB0.95
USB-TypeA
建议用USB-TypeC
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
2
VIN
3
CE
10K
C1
0.1u
VOUT
MCU-VCC
5
GND
NC
4
按下按键停电
松开按键上电
×
C1
0.1u
电源按键
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP2_3/A15/PWM27/P2.7
ALE/P4.5
CCP是英文单词的缩写
RxD2_2/P4.6
Capture(捕获) AD0/ADC8/P0.0
Compare(比较) AD1/ADC9/P0.1
PWM(脉宽调制) AD2/ADC10/P0.2
AD3/ADC11/P0.3
T3/AD4/ADC12/P0.4
P5.2
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
36
35
34
33
32
31
30
29
28
27
26
25
1
37
38
39
40
41
42
43
44
45
46
47
48
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
P5.3
T3CLKO/AD5/ADC13/P0.5
PWMFLT2/T4/AD6/ADC14/P0.6
PWMFLT3/T4CLKO/AD7/P0.7
RxD2/CCP1/ADC0/P1.0
TxD2/CCP0/ADC1/P1.1
TxD2_2/P4.7
T2/SS/ECI/ADC2/P1.2
T2CLKO/MOSI/ADC3/P1.3
I2CSDA/MISO/ADC4/P1.4
I2CSCL/SCLK/ADC5/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/P1.6
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/RD/TxD_4
P4.3/RxD_4/SCLK_3
P4.2/WR
P4.1/MISO_3/CMPO_2
P3.7/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/INT2/RxD_2/CMP-/CCP1_2
P3.5/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P5.1
STC8G2K64S2-36I-LQFP48/QFN48 最小系统 示意图
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P5.0
P3.4/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/INT1/MISO_4/I2CSDA_4
P3.2/INT0/SCLK_4/I2CSCL_4
P3.1/TxD
P3.0/RxD/INT4
P4.0/MOSI_3
Gnd/AGnd
ADC_Vref+
M CU-VCC
Vcc/AVcc
P5.4/nRST/MCLKO/SS_3 0.1u
10u
以上
P1.7/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 133 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.5.15 USB-Link1D 支持 脱机下载 说明
脱机下载是指脱离电脑主机进行下载的一种方法,一般是使用下载控制芯片(又称脱机下载母片)
进行控制。USB-Link1D 工具除了支持在线 ISP 下载,还支持脱机下载。USB-Link1D 工具使用外部的
22.1184MHz 晶振,可保证对目标芯片进行在线或脱机下载时,校准频率的精度。用户可将代码下载到
USB-Link1D 工具中,就可实现脱机下载。USB-Link1D 主控芯片如内部存储空间不够时,会将部分被
下载的用户程序用加密的方式加密放部分到片外串行 Flash。
先将 USB-Link1D 工具使用 USB 线连接到电脑,然后按照下面的步骤进行脱机下载:
1、选择目标芯片的型号
2、打开需要下载的文件
3、设置硬件选项
4、进入“USB-Link1D 脱机”页面,点击“将用户程序下载到编程器以供脱机下载“按钮,即可将
用户代码下载到 USB-Linik1D 工具中。下载完成后便使用 USB-Link1D 工具对目标芯片进行脱
机下载了
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 134 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.5.16 USB-Link1D 支持 脱机下载,如何免烧录环节
大批量生产,如何省去专门的烧录人员,如何无烧录环节
大批量生产,你在将由 STC 的 MCU 作为主控芯片的控制板组装到设备里面之前,在你将 STC MCU 贴
片到你的控制板完成之后,你必须测试你的控制板的好坏。不要说 100%,直通无问题,那是抬杠,不
是搞生产,只要生产,就会虚焊,短路,部分原件贴错,部分原件采购错。
所以在贴片回来后,组装到外壳里面之前,你必须要测试,你的含有 STC MCU 控制板的好坏,好的去
组装,坏的去维修抢救。
控制板的测试/不是烧录!
控制板的测试环节必须有,但烧录环节可以省!
大批量生产,必须要有方便控制板测试的测试架/下面接上我们的脱机烧录工具:
USB-Link1D / U8W-Mini / U8W,还要接上其他控制部分!
1、通过 USER-VCC、P3.0、P3.1、GND 连接,要工人每次都开电源
2、通过 S-VCC、P3.0、P3.1、GND 连接,不要你开电源,STC 的脱机工具给你自动供电
外面帮你做一个测试架的成本 500 元以下,就是有机玻璃,夹具,顶针。
1 个测试你控制板是否正常的工人管理 2 - 3 个 测试架
操作流程:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 135 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1、将你的 MCU 控制板 卡到测试架 1 上
2、将你的 MCU 控制板 卡到测试架 2 上,测试架 1 上的程序已烧录完成/感觉不到烧录时间
3、测试 测试架 1 上的 MCU 主控板功能是否正常,正常放到正常区,不正常,放到不正常区
4、给测试架 1 卡上新的未测试的无程序的控制板
5、测试 测试架 2 上的未测试控制板/程序不知何时早就不知不觉的烧好了,换新的未测试未烧录的控制
板
6、循环步骤 3 到步骤 5
========不需要安排烧录人员
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 136 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G2K64S2
LQFP48
QFN48
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
37
38
39
40
41
42
43
44
45
46
47
48
P5.0
P3.4
P3.3
P3.2
P3.1
P3.0
P4.0
Gnd/AGnd
ADC_Vref+
Vcc/AVcc
P5.4/nRST
P1.7
0.1u
10u
以上
P5.3
P0.5
P0.6
P0.7
P1.0
P1.1
P4.7
P1.2
P1.3
P1.4
P1.5
P1.6
P2.4
P2.5
P2.6
P2.7
P4.5
P4.6
P0.0
P0.1
P0.2
P0.3
P0.4
P5.2
36
35
34
33
32
31
30
29
28
27
26
25
P2.3
P2.2
P2.1
P2.0
P4.4
P4.3
P4.2
P4.1
P3.7
P3.6
P3.5
P5.1
2.5.17 USB-Writer1A 编程器/烧录器·支持·插在·锁紧座上·烧录
USB型 脱机/联机烧录工具 USB-Writer1A (人民币100元)
1、LQFP48/32封装:对应使用LQFP48/32转DIP48/32转换座,插在烧录锁紧座上进行烧录
2、QFN48封装:使用QFN48转DIP48转换座,插在烧录锁紧座上进行烧录
3、PDIP040封装可以直接插在烧录锁紧座上进行烧录
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 137 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.5.18 USB-Writer1A 支持 自动烧录机,通信协议和接口
S-P3.0(连接从机的P3.0)
(仅从本工具用户系统供电)S-Vcc
S-P3.1(连接从机的P3.1)
USB-CDC串口连接用户的TxD
USB-CDC串口连接用户的RxD
Gnd(地线)
(仅由用户系统给本工具供电)User-Vcc
脱机烧录用户程序按键
编程接口
USB Type-C接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
40Pin锁紧座
USB接口
用于USB通信和供电
如电脑USB电流不够,外接5V电源供电
USB Writer1A更新系统程序按键
升级USB Writer1A编程器
主控CPU电源按键
自动烧录机
分选机接口
ERROR(错误信号)
OK(成功信号)
EOT(完成信号)
Start(开始信号)
Gnd(地线)
自动烧录接口(分选机自动控制接口)协议:
Start:开始信号输入脚。从外部输入低电平信号触发开始脱机烧录,低电平必须维持 25 毫秒以上
EOT:烧录完成信号输出脚。脱机烧录完成后,工具输出 20ms~250ms 的低电平 EOT 信号。电平宽
度如下图所示的地方进行设置
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 138 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
OK:良品信号输出脚。下载成功后工具从 OK 脚输出低电平信号,信号与 EOT 信号同步。
Err:不良品信号输出脚。若下载失败,工具从 ERR 脚输出输出低电平信号,信号与 EOT 完成信号同
步。
25ms以上
20ms~200ms
Start
EOT
OK
Err
开始下载
脱机下载
下载完成
OK和Err只会输出其中一个信号
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 139 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2.6 STC15H-LQFP44/32、SOP28 系列(传统 STC15 系列提升性
能特殊型号)
2.6.1
特性及价格(有 16 位硬件乘除法器 MDU16,准 16 位单片机)
15
1
内
部
高
精
准
时
钟
(
支
持
支 软 本
持 件 身
就
可
在
线
下 直 仿
载 接 真
下
载
SOP28<
PDIP40
LQFP32
LQFP44
可
设
置
下
次
更
新
程
序
需
口
令
LQFP48
程
序
加
密
后
传
输
(
防
拦
截
)
价
格
及
封
装
USB
D/A
暂
无
STC15H2K48S4 1.9-5.5 48K 256 2K
2 16K 42
4
有
有
有
5
-
42
3
有 10 位 有
有
有 4级 有
是
有
是
是
是
是
√ √ √ √
STC15H2K64S4 1.9-5.5 64K 256 2K
2
4
有
有
有
5
-
42
3
有 10 位 有
有
有 4级 有
是
有
是
是
是
是
¥4 √ ¥3.8 ¥3.8
IAP 42
注意:由于传统 STC15F2K 系列的芯片的性能需要提升,外加目前晶圆供货紧张,所以使用 STC8G2K64S4 系列的
晶圆生产上面的特殊型号,如需购买以上特殊型号,请提前订货
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
主
力
产
品
供
货
信
息
>
可
对
外
输
出
时
钟
以 及
下 复
可 位
调
)
追
频
RS485
看
门
狗
复
位
定
时
器
内
部
高
可
靠
复
位
(
可
选
复
位
门
槛
电
压
)
36MHz
PWM
A/D
掉
电
唤
醒
专
用
定
时
器
比
路 较
高 器
速 ( 内
可 部
当 低
压
(
全 路 检
测
部
中
, 断
可 并
可
均 作
掉
可 外
电
当 部
掉 唤
电 醒
检
使 测
用 )
)
ADC
PCA/CCP/PWM
(
可
当
外
部
中
断
并
可
掉
电
唤
醒
)
PWM
PWM
I2 C
T0-T4
16
位
乘
除
法
器
15
16
/
硬
件
SPI
口
最
万 多
可 次 数
量
增
可 字
减 节
串
口
并
可
掉
电
唤
醒
MDU16
I/O
SRAM
字 字
节 节 字
节
强
大
的
双
EEPROM 10
,
内
部
大
容
量
扩
展
DPTR
8051 RAM
万
次
idata
10
)
,
内
部
传
统
xdata
Flash
V
单
片
机
型
号
工
作
电
压
(
程
序
存
储
器
定
支
时
持
器
计 位 位 上
数 高 增 升
器 级 强 沿
中
(
型 断
、
下
定
外 时 满 降
部 器 足 沿
中
管
舞
脚 互 台 断
也 补 灯 以
可 对 光 及
掉 称 要 边
电 死 求 沿
中
唤 区
断
醒
)
技术交流及选型论坛:www.STCAIMCU.com - 140 -
现
货
STC8G 系列技术手册
2.6.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC15H-LQFP44 管脚图,ISP 下载/编程线路图
33
32
31
30
29
28
27
26
25
24
23
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
STC15H2K64S4-LQFP44 最小系统 示意图
34
35
36
37
38
39
40
41
42
43
44
STC15H2K64S4
LQFP44
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
22
21
20
19
18
17
16
15
14
13
12
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
1
2
3
4
5
6
7
8
9
10
11
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP是英文单词的缩写
CCP2_3/A15/PWM27/P2.7
Capture(捕获)
ALE/PWM45/P4.5
Compare(比较)
RxD2_2/PWM46/P4.6
PWM(脉宽调制)
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
P4.0/PWM40/MOSI_3
Gnd/AGnd
M CU-VCC
P5.2/PWM52/RxD4_2
Vcc/Avcc/ADC_VRef+
10u
P5.4/PWM54/nRST/MCLKO/SS_3 0.1u
以上
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
使用USB转串口芯片进行ISP下载/烧录/仿真,目标系统 手动停电/上电
Ai8H2K12U
USB+5V
USB接口
USB+5V
1 P5.4/nRST
+5V
DD+
Gnd
P3.3/P1.1/TxD2
连接 目标单 片机的P3.0
8
1
2
连接 目标单 片机的P3.1
22R
3
4
D+
22R
USB-TypeA
建议用USB-TypeC
P3.2/P1.0/RxD2
7
3 UCap
D+/TxD/P3.1
6
4
D-/RxD/P3.0
5
2
D-
10u
以上
0.1u
0.1u
Vcc
Gnd/AGnd
RMB0.95
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
也可以用STC8H2K12U-SOP8取代Ai8H2K12U-SOP8
【ISP下载/编程/烧录,操作步骤】
1、点击电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新给目标系统上电
如果在点击【下载/编程】按钮前,目标系统已上电,则需要停电再重新上电
电脑端软件提示:下载编程进行中,数秒后提示成功
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 141 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 142 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC15H-PDIP40 管脚图,ISP 下载/编程线路图
2.6.3
STC15H2K64S4-PDIP40 最小系统 示意图
CCP是英文单词的缩写
PDIP40
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
STC15H2K64S4
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
XTALI/TxD_3/ADC7/PWM17/P1.7
SS_3/MCLKO/nRST/PWM54/P5.4
M CU-VCC
Vcc/Avcc/ADC_Vref+
10u
0.1u
RxD4_2/PWM52/P5.2
以上
Gnd/AGnd
Capture(捕获)
P4.5/PWM45/ALE
Compare(比较)
P2.7/PWM27/A15/CCP2_3
PWM(脉宽调制)
P2.6/PWM26/A14/CCP1_3
P2.5/PWM25/A13/CCP0_3/I2CSCL_2/SCLK_2
P2.4/PWM24/A12/ECI_3/I2CSDA_2/MISO_2
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
注意:1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
使用 USB转双串口 芯片 进行 全自动 烧录/仿真+串口通讯,5V/3.3V跳线选择
USB+5V
USB接口
+5V
DD+
Gnd
1
22R
2
3
USB转第二组串口
第二组串口用于和目标系统
的其他串口通讯
D-
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
D+
22R
4
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
USB-TypeA
建议用USB-TypeC
1N5819
用跳线选择工作电压5V或3.3V
3
1
0.1u
3
GND
VOUT
1117M3-33
VIN
10u
以上
Vcc
2
跳线插座
2.54mm
USB+5V
1
2
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
USB转第一组串口
16
15
14
13
12
300R
11
10 D+
9 D-
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
推挽/开漏
高阻输入
第一组用于下载或者通讯
1N5819
S-RxD 连接目标单片机的P3.0/RxD
S-TxD 连接目标单片机的P3.1/TxD
Q1
P-MOS
Vcc
可做电源
供应模块
关电/供电 10u
手动按键 以上
S
MCU-VCC
D
0.47u
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
20K
3.3V
104
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 143 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 144 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC15H-LQFP32/QFN32 管脚图,ISP 下载/编程线路图
2.6.4
24
23
22
21
20
19
18
17
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
STC15H2K64S4-LQFP32 最小系统 示意图
1
2
3
4
5
6
7
8
25
16
26
15
27
14
28 STC15H2K64S4 13
LQFP32
29
12
30
11
31
10
32
9
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
XTALI/TxD_3/ADC7/PWM17/P1.7
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP是英文单词的缩写
CCP2_3/A15/PWM27/P2.7
Capture(捕获)
Compare(比较) RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
PWM(脉宽调制)
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
Gnd/AGnd
P5.2/PWM52/RxD4_2
Vcc/Avcc/ADC_VRef+
P5.4/PWM54/nRST/MCLKO/SS_3 0.1u
M CU-VCC
10u
以上
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
使用 USB转串口 芯片 进行 全自动 停电/上电,烧录/仿真/串口通讯,3.3V
系统 电源输 入 Vin
也可 电脑USB+5V供电
或充 电宝USB+5V供电
Ai8H2K12U
USB+5V
USB接口
USB+5V
+5V
D-
D+
Gnd
1
2
Power-On
22R
3
4
P5.4/nRST
P3.3/P1.1/TxD2
8
2
Vcc
P3.2/P1.0/RxD2
7
10u
0.1u
3
UCap
D+/TxD/P3.1
6
D-/RxD/P3.0
5
以上
USB-TypeA
建议用USB-TypeC
0.1u
4
Gnd/AGnd
RMB0.95
SOP8
6211: 输出 3.3V,输入 5.5V - 3.6V
6231: 输出 3.3V,输入 18V - 3.6V
1
连接 目标单 片机的P3.1
DD+
22R
连接 目标单 片机的P3.0
1
2
D+
D-
USB转串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
P5.4管脚高电平供电
VIN
3
CE
C1
0.1u
VOUT
M CU-VCC
5
GND
NC
4
×
10K
C2
0.1u
Power-On 高输 出,低关 断
全自动控制电源开/关
电源开关,可不焊
也可以用STC8H2K12U-SOP8取代Ai8H2K12U
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 145 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 146 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC15H-SOP28 管脚图,ISP 下载/编程线路图
2.6.5
STC15H2K64S4-SOP28 最小系统 示意图
SOP28
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
XTALI/TxD_3/ADC7/PWM17/P1.7
SS_3/MCLKO/nRST/PWM54/P5.4
M CU-VCC
Vcc/Avcc/ADC_Vref+
0.1u
10u
RxD4_2/PWM52/P5.2
以上
Gnd/AGnd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
STC15H2K64S4
CCP是英文单词的缩写
CCP1_3/A14/PWM26/P2.6
Capture(捕获)
CCP2_3/A15/PWM27/P2.7
Compare(比较) RxD2/CCP1/ADC0/PWM10/P1.0
PWM(脉宽调制) TxD2/CCP0/ADC1/PWM11/P1.1
28
27
26
25
24
23
22
21
20
19
18
17
16
15
P2.5/PWM25/A13/CCP0_3/I2CSCL_2/SCLK_2
P2.4/PWM24/A12/ECI_3/I2CSDA_2/MISO_2
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
注意:
1、ADC的外部参考电源管脚ADC_VRef+,必须接外部参考电源【电压:2.4V ~ MCU-VCC】,浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
这个功能
使用 USB转双串口 芯片 进行 全自动 停电/上电,烧录/仿真+串口通讯,5V
USB转第二组串口
第二组串口用于和目标系统的
其他串口通讯
Ai8H2K08U-SOP16
Ai8H2K12U-SOP16
高阻输入
连接目标单片机的第n组串口的TxDn
连接目标单片机的第n组串口的RxDn
1N5819
USB+5V
USB接口
+5V
DD+
Gnd
USB+5V
1
2
22R
3
4
D-
0.1u
D+
22R
USB-TypeA
建议用USB-TypeC
芯片上电时P3.5输出低电平,
MCU-VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU-VCC停电0.5S再
上电进行ISP下载。下载完成后
会持续供电
此处的二极管和电阻的作用是防止USB器件给目标芯片供电。由于
目标芯片断电过程中,USB器件是不能断电的,USB器件的发送脚
一般都是强推挽输出,通过I/O供电芯片就能工作,所以当使用
USB转串口TTL对单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可以省此处的隔离二极管
10u
以上
1
推挽/开漏 2
3
4
5
6
7
8
0.1u
USB转第一组串口
第一组用于下载或者通讯
1N5819
P1.0/RxD2
P1.1/TxD2
P1.3
UCap
P5.4/nRST
Vcc
VRef+
Gnd
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
推挽/开漏
16
高阻输入
15
14
13
12
300R
11
可做电源
10 D+
供应模块
9 D关电/供电
手动按键
也可以用STC8H2K08U-SOP16取代
也可以用STC8H2K12U-SOP16取代
USB转双串口芯片,
出厂自带USB转串口程序,
USB-HID烧录,免驱动安装
S-RxD
S-TxD
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源
(可从USB取电)
Q1
P-MOS
S
MCU-VCC
D
0.47u
10u
以上
104
G
Q1可选:
SI2301,RMB0.045
AO3401,RMB0.075
20K
470R
一般不焊
20K
P3.5管脚低电平供电
P5.4管脚高电平供电
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉/准双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO
口前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能
同时为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换
到双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普
通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电
阻依然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口
驱动外部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 147 -
STC8G 系列技术手册
2.6.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 对 STC15H 系列进行自动串口烧录、仿真+串口通讯
使用【USB Link1D】对 STC15H2K64S4系列 进行全自动停电/上电串口烧录、仿真+串口通讯
【USB Link1D】工具:支持 全自动 停电 / 上电,在线下载 / 脱机下载,仿真
连接 目标单 片机P3.1
连接 目标单 片机P3.0
MC U-VCC
连接 目标单 片机第n组串口 发送脚TxDn
连接 目标单 片机第n组串口 接收脚RxDn
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区自动跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
33
32
31
30
29
28
27
26
25
24
23
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
STC15H2K64S4-LQFP44 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC15H2K64S4
LQFP44
1
2
3
4
5
6
7
8
9
10
11
34
35
36
37
38
39
40
41
42
43
44
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP是英文单词的缩写
CCP2_3/A15/PWM27/P2.7
Capture(捕获)
ALE/PWM45/P4.5
Compare(比较)
RxD2_2/PWM46/P4.6
PWM(脉宽调制)
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
22
21
20
19
18
17
16
15
14
13
12
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
P4.0/PWM40/MOSI_3
Gnd/AGnd
M CU-VCC
P5.2/PWM52/RxD4_2
Vcc/Avcc/ADC_VRef+
10u
P5.4/PWM54/nRST/MCLKO/SS_3 0.1u
以上
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 148 -
STC8G 系列技术手册
2.6.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用【一箭双雕之 USB 转双串口】进行串口烧录、仿真+串口通讯
使用【一箭双雕之USB转双串口】对 STC15H2K64S4系列 进行串口烧录、仿真+串口通讯
【一箭双雕之USB转双串口】:支持 全自动 停电 / 上电,在线下载,仿真
5V/3.3V 通过 跳线选择
连接目标单片机第n组串口接收脚RxDn
连接目标单片机第n组串口发送脚TxDn
MCU-VCC
连接目标单片机P3.0
连接目标单片机P3.1
【应用场景一:从本工具给目标系统 自动 停电/上电,供电】
点击 电脑端 ISP 软件的【下载/编程】按钮,工具会 自动 给目标系统停电0.5秒/再自动供电,
数秒后提示下载编程成功,工具默认会再 自动 给目标系统停电0.5秒/再自动供电给目标系统工作。
【应用场景二:不从本工具给目标系统供电】
1、点击 电脑端 ISP 软件的【下载/编程】按钮
2、给目标系统上电,或者重新上电(如果在点击【下载/编程】按钮前已上电,则需要停电重新上电),
电脑端软件提示下载编程进行中,数秒后下载成功,目标MCU会自动复位到用户程序区跑用户程序。
部分不常用设置,需要停电上电一次才生效,如改变 EEPROM大小,P5.4/nRST变成复位脚
33
32
31
30
29
28
27
26
25
24
23
P2.3/PWM23/A11/MOSI_2
P2.2/PWM22/A10/SS_2
P2.1/PWM21/A9
P2.0/PWM20/A8
P4.4/PWM44/RD/TxD_4
P4.3/PWM43/RxD_4/SCLK_3
P4.2/PWM42/WR
P4.1/PWM41/MISO_3/CMPO_2
P3.7/PWM37/INT3/TxD_2/CMP+/CCP2_2/CCP2
P3.6/PWM36/INT2/RxD_2/CMP-/CCP1_2
P3.5/PWM35/T1/T0CLKO/SS_4/CCP0_2/PWMFLT
STC15H2K64S4-LQFP44 最小系统 示意图
正看芯片丝印左下方小圆点处为第一脚
正看芯片丝印最下面一行最后一个字母
为芯片版本号
STC15H2K64S4
LQFP44
1
2
3
4
5
6
7
8
9
10
11
34
35
36
37
38
39
40
41
42
43
44
22
21
20
19
18
17
16
15
14
13
12
T3CLKO/AD5/ADC13/PWM05/P0.5
PWMFLT2/T4/AD6/ADC14/PWM06/P0.6
PWMFLT3/T4CLKO/AD7/PWM07/P0.7
RxD2/CCP1/ADC0/PWM10/P1.0
TxD2/CCP0/ADC1/PWM11/P1.1
TxD2_2/PWM47/P4.7
T2/SS/ECI/ADC2/PWM12/P1.2
T2CLKO/MOSI/ADC3/PWM13/P1.3
I2CSDA/MISO/ADC4/PWM14/P1.4
I2CSCL/SCLK/ADC5/PWM15/P1.5
XTALO/MCLKO_2/RxD_3/ADC6/PWM16/P1.6
MISO_2/I2CSDA_2/ECI_3/A12/PWM24/P2.4
SCLK_2/I2CSCL_2/CCP0_3/A13/PWM25/P2.5
CCP1_3/A14/PWM26/P2.6
CCP是英文单词的缩写
CCP2_3/A15/PWM27/P2.7
Capture(捕获)
ALE/PWM45/P4.5
Compare(比较)
RxD2_2/PWM46/P4.6
PWM(脉宽调制)
RxD3/AD0/ADC8/PWM00/P0.0
TxD3/AD1/ADC9/PWM01/P0.1
RxD4/AD2/ADC10/PWM02/P0.2
TxD4/AD3/ADC11/PWM03/P0.3
T3/AD4/ADC12/PWM04/P0.4
注意:
1、ADC的外部参考电源管脚ADC_VRef+,
必须接外部参考电源【电压:2.4V ~ MCU-VCC】,
浮空会有漏电流
2、如不需要进行【软件模拟USB下载】,
芯片上电/复位时P3.0/P3.1/P3.2 不可同时为低电平
否则会进入【等待进入软件模拟USB下载模式】,
可在 ISP烧录时指定取消 下次下载时使能USB-ISP模式
P3.4/PWM34/T0/T1CLKO/ECI_2/MOSI_4/CMPO
P3.3/PWM33/INT1/MISO_4/I2CSDA_4
P3.2/PWM32/INT0/SCLK_4/I2CSCL_4
P3.1/PWM31/TxD
P3.0/PWM30/RxD/INT4
P4.0/PWM40/MOSI_3
Gnd/AGnd
M CU-VCC
P5.2/PWM52/RxD4_2
Vcc/Avcc/ADC_VRef+
10u
P5.4/PWM54/nRST/MCLKO/SS_3 0.1u
以上
P1.7/PWM17/ADC7/TxD_3/XTALI
在Vcc和Gnd之间就近加上电源去耦电容
【大电容10uF以上+小电容0.1uF】
这个功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 149 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
2.7
USB-Link1D 工具使用注意事项
2.7.1
工具接口说明
选型顾问: 13922805190
USB-Link1D 工具是 USB Link1 的升级版、功能在 USB Link1 的基础上增加了两个 STC-CDC 串口,可
作为通用 USB 转串口使用。
工具 STC-USB Link1 的使用注意事项请参考附录章节
工具正面图
User-Vcc,外部给工具供电
S-RxD,第2组STC-CDC串口发送脚,
接用户单片机串口的接收脚
S-TxD,第2组STC-CDC串口接收脚,
接用户单片机串口的发送脚
S-Vcc,本工具给外部系统供电
S-P3.0,Link1硬件仿真数据线、
Link1进行ISP下载的串口发送脚、
第1组STC-CDC串口发送脚
S-P3.1,Link1硬件仿真时钟线、
Link1进行ISP下载的串口接收脚、
第1组STC-CDC串口接收脚
工具反面图
Gnd,地线
管脚编号
接口名称
接口功能
1
User-Vcc
2
S-RxD
第 2 组 STC-CDC 串口的发送脚,连接用户单片机串口的接收脚
3
S-TxD
第 2 组 STC-CDC 串口的接收脚,连接用户单片机串口的发送脚
4
S-Vcc
仅从本工具给用户系统供电
仅由用户系统给本工具供电
使用 Link1D 进行 ISP 下载时的串口发送脚,连接目标单片机的 P3.0
5
S-P3.0
使用 Link1D 进行 SWD 硬件仿真时的数据脚,连接目标单片机的 SWDDAT
第 1 组 STC-CDC 串口的发送脚,连接用户单片机串口的接收脚
使用 Link1D 进行 ISP 下载时的串口接收脚,连接目标单片机的 P3.1
6
S-P3.1
使用 Link1D 进行 SWD 硬件仿真时的时钟脚,连接目标单片机的 SWDCLK
第 1 组 STC-CDC 串口的接收脚,连接用户单片机串口的发送脚
7
Gnd
地线
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 150 -
STC8G 系列技术手册
2.7.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
附送的各种强大的人性化配线图片及使用说明
正面
反面
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 151 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 各种豪华配线的应用场景介绍
USB转双串口/TTL,连接线
不从本工具供电
连接目标用户系统的Gnd
连接目标用户系统的P3.1或串口发送脚
连接目标用户系统的P3.0或串口接收脚
不从本工具给目标系统供电,目标系统自己供电
连接目标用户系统的第n组串口的TxDn
连接目标用户系统的第n组申口的RxDn
这种连接方式为本工具和目标系统各自独立供电,ISP下载需要手动给目标系统停电再上电。
当目标系统的耗电大于300mA时,在线下载、脱机下载、在线仿真,可选这种接线方式。
USB转双串口/TTL,连接线
从本工具供电
连接目标用户系统的Gnd
连接目标用户系统的P3.1或串口发送脚
连接目标用户系统的P3.0或串口接收脚
从本工具给目标用户系统供电,300mA以内
连接目标用户系统的第n组串口的TxDn
连接目标用户系统的第n组串口的RxDn
这种连接方式为本工具给目标系统自动 停电/上电 供电,ISP下载不需要手动停电/上电。
当目标系统电流不超过300mA时,在线下载、脱机下载、在线仿真,可选择这种线方式。
USB转串口/TTL,脱机烧录连接线
从用户系统给本工具供电
连接目标用户系统的Gnd
连接目标用户系统的P3.1
连接目标用户系统的P3.0
目标用户系统给工具供电
这种连接方式为常用的脱机下载连接方式,从用户的目标系统给本脱机工具供电。
如果用户系统电流大于300mA,建议使用这种连接方式。用户系统上电之后自动脱机下载程
序,下载成功之后,给用户系统停电,换下一个待烧录用户程序的新的用户系统,再上
电,脱机下载程序,重复如上过程即为常见的【批量生产脱机烧录】。
特别注意:用户系统给本工具供电的电压不能超过5.3V
USB转串口/TTL,专门定制的TypeC接口线
但此处为TTL串口,不是USB
连接目标用户系统的Gnd
连接目标用户系统的P3.1或串口发送脚
连接目标用户系统的P3.0或串口接收脚
从本工具给目标用户系统供电,300mmA以内
连接目标用户系统的Gnd
连接目标用户系统的P3.1或串口发送脚
连接目标用户系统的P3.0或串口接收脚
USB转串口/TTL,专门定制的TypeA接口线
但此处为TTL串口,不是USB
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
从本工具给目标用户系统供电,300mmA以内
技术交流及选型论坛:www.STCAIMCU.com - 152 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB直接下载连接示意图
使用 USB-TypeA 到 USB-TypeC 线
这种一端为 USB-TypeA ,另一端为 USB-TypeC 的标准线,STCAI.com 也会提供这种连接线,
方便预留了 USB-TypeC 接口的用户系统,进行硬件USB直接下载。
此处连接
电脑的USB口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 153 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 直接下载连接示意图
使用 USB-TypeA 到 USB-TypeA 线
这种两端同为 USB-TypeA 接口的标准线,
方便预留了 USB-TypeA 接口的用户系统,进行硬件USB直接下载
此处连接
电脑的USB口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 154 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB 直接下载连接示意图
使用 USB-TypeA 到流行的 2.54mm 间距通用插座
STCAI.com提供这种连接线,方便对只预留了2.54mm间距的通用插座目标系统芯片
进行硬件USB直接下载
此处连接
电脑的USB口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 155 -
STC8G 系列技术手册
2.7.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 实际应用
1、使用 USB-Link1D 工具对 STC8G 系列单片机进行 SWD 硬件仿真
按照如下图所示的方式将工具的 S-Vcc、S-P3.0、S-P3.1、GND 分别与目标单片机的 M-Vcc、P3.0
(SWDDAT)、P3.1(SWDCLK)、GND 相连接,然后参考前面章节中硬件仿真的步骤和设置即可
进行 SWD 硬件仿真
使用 USB-Link1D 的 USB转串口/TTL,
用单排2.54mm间距插头连接目标芯片系统,
串口下载连接示意图-正面
此处连接电脑的USB口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 156 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用 USB-Link1D 的 USB转串口/TTL,
用单排2.54mm间距插头连接目标芯片系统,
串口下载连接示意图-反面
此处连接电脑的USB口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 157 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用USB-Link1D的USB转串口对目标系统进行串口下载
注意:此处连接目标系统的 USB-TypeC接口 是 USB转串口/TTL,
对目标系统芯片 串口/TTL 下载连接示意图
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 158 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用USB-Link1D的USB转串口对目标系统进行串口下载
注意:此处连接目标系统的 USB-TypeA接口 是 USB转串口/TTL,
对目标系统芯片 串口/TTL 下载连接示意图
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 159 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用USB-Link1D的USB转串口对目标系统进行串口下载
注意:此处连接目标系统的 普通四芯单排插座接口 是 USB转串口/TTL,
对目标系统芯片 串口/TTL 下载连接示意图
2、使用 USB-Link1D 工具对 STC15 和 STC8 系列进行串口仿真
工具的 S-Vcc、S-P3.0、S-P3.1、GND 分别与目标单片机的 M-Vcc、P3.0(RxD)、P3.1(TxD)、GND
相连接,然后 Keil 仿真设置中选择 STC-CDC1 所对应的串口号,然后参考 STC15/STC8 系列数据手
册中的直接串口仿真章节中仿真的步骤和设置,即可进行串口仿真
3、使用 USB-Link1D 工具对 STC 全系列单片机进行 ISP 在线下载
工具的 S-Vcc、S-P3.0、S-P3.1、GND 分别与目标单片机的 M-Vcc、P3.0(RxD)、P3.1(TxD)、GND
相连接,在 AIapp-ISP 下载软件中的串口号选择“USB Link1 (LNK1)”,打开程序文件以及设置相关
硬件选项,然后点击“下载/编程”按钮即可进行 ISP 在线下载
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 160 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4、使用 USB-Link1D 工具对 STC 全系列单片机进行 ISP 脱机下载
在 AIapp-ISP 下载软件中的串口号选择“STC-USB Link1 (LNK1)”,打开程序文件以及设置相关硬件
选项,后点击“U8W/Link1 脱机”页面中的“将用户程序下载到编程器以供脱机下载”按钮,将用
户代码和相关设置下载到 STC-USB Link1 工具上的存储器中。
将工具的 S-Vcc、S-P3.0、S-P3.1、GND 分别与目标单片机的 M-Vcc、P3.0(RxD)、P3.1(TxD)、
GND 相连接,然后按下工具上的“Key1”按键即可对目标芯片进行脱机下载(即不需要 PC 端的控
制,独立进行 ISP 下载)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 161 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
5、USB-Link1D 工具当作通用 USB 专串口工具使用
USB-Link1D 工具提供了两个 STC-CDC 串口,可作为通用 USB 专串口工具使用,由于第一个串口
CDC1 与硬件仿真、ISP 下载共用 S-P3.0 和 S-P3.1 端口,而第二个串口 CDC2 是独立串口,所以建
议 S-P3.0 和 S-P3.1 作为仿真和 ISP 下载使用,当需要使用通用 USB 专串口工具时,使用 S-TxD 和
S-RxD 所对应的 CDC2。
(注:在没有使用冲突的情况下,CDC1 和 CDC2 均可各自独立的当作通用
USB 专串口工具使用)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 162 -
STC8G 系列技术手册
2.7.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 插上电脑并正常识别到后的显示
USB-Link1D 工具在出厂时,主控芯片内已烧录了 USB-Link1D 的控制程序。正常情况下,工具连
接到电脑后,在 AIapp-ISP 下载软件中会立即识别出“USB Link1 (LNK1)”
,如下图所示
正确识别后,即可使用 USB-Link1D 进行在线 ISP 下载或者脱机 ISP 下载。
在驱动安装成功后,还会自动识别出两个 STC-CDC 串口,如下图所示:
可以当作通用 USB 转串口工具使用。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 163 -
STC8G 系列技术手册
2.7.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
如电脑端新版本 ISP 软件提示 USB-Link1D 工具固件需升级
当使用工具进行 ISP 下载时,软件弹出如下画面,表示工具的固件需要升级
点击“是”按钮,工具便会自动开始升级。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 164 -
STC8G 系列技术手册
2.7.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
制作 USB-Link1D 主控芯片
USB-Link1D 工具在出厂时,我公司的操作人员已经将主控芯片制作完成,所以客户拿到工具后不
需要自己手动再次制作 USB-Link1D 工具的主控芯片。只有在客户将工具的主控芯片更换为一颗全新的
芯片才需要进行下面的步骤。
1、将 USB-Link1D 工具插入电脑的 USB 口,如果 AIapp-ISP 下载软件的端口列表中没有显示出“USBHID-UART1 (Link1)”的设备(如下图),则说明工具的主控芯片为空片,需要继续接下来的步骤
2、先使用 USB 线将工具和电脑相连,按住工具的“Key1”按键不要松开,再轻按一下“Key2”按键后
松开 Key2 按键(此时需要保持 Key1 按键一直处于按下状态)
,等待 AIapp-ISP 下载软件的端口列表中
显示出“USB Writer (HID1)”的设备(如下图)时,再松开 Key1 按键(注:工具上的 Key1 为主控芯片
的 P3.2 口,Key2 为工具主控芯片的电源键)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 165 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
3 、 点 击 AIapp-ISP 下 载 软 件 中 “ USB-Link1D/U8W/U8W-Mini 脱 机 ” 页 面 的 “ 设 置
USB-Link1D/U8W/U8W-Mini 主控芯片”按钮
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 166 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4、弹出的 Link1D 工具设置窗口中可以根据实际需要进行设置,若无特殊需要可保持默认选项
5、接下来软件会自动开始制作 USB-Link1D 工具的主控芯片。制作完成后,建议将工具的 USB 线重新
插拔一次(特别是对一颗全新的芯片第一次制作主控芯片时必须重新插拔一次)。
当主控芯片制作完成并再次重新插入电脑的 USB 口时,AIapp-ISP 下载软件的端口列表中显示出
“STC-USB-HID-UART1 (Link1)”的设备(如下图),则说明工具的主控芯片制作成功。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 167 -
STC8G 系列技术手册
2.8
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
ISP 下载相关硬件选项的说明
硬件选项
选项何时生效
需要重新上电才生效
动态调整,立即生效
需要重新上电才生效
只与本次下载有关
需要重新上电才生效
下次下载时有效
需要重新上电才生效
需要重新上电才生效
需要重新上电才生效
需要重新上电才生效
需要重新上电才生效
需要重新上电才生效
下次下载时有效
每次下载时一并写入
需要重新上电才生效:选项修改后,目标芯片需要断电一次(停电),重新再上电,新的设置才生效
动态调整,立即生效:本次 ISP 下载有效
只与本次下载有关:此选项只与本次 ISP 下载有关,不影响下一次下载
下次下载时有效:选项修改后,下次下载时才生效,修改对本次 ISP 下载无效
每次下载时一并写入:选择此选项后,在本次下载时将附加的数据一并写入,与下次下载无关
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 168 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
通用 USB 转双串口芯片: USB-2UART, TSSOP20/SOP16
2.9
通用 USB 转双串口芯片 USB-2UART-45I-TSSOP20,自动
2.9.1
停电上电
此处的二极管和电阻的作用是防止USB器件
给目标芯片供电。由于目标芯片断电过程
此处的晶振可焊: 中,USB器件是不能断电的,USB器件的发送
22.1184M、24M、
脚一般都是强推挽输出,通过I/O供电芯片
11.0592M、12M
就能工作,所以当使用USB转串口TTL对STC
建议焊接22.1184MHz 单片机下载程序时此处的隔离二极管不能省
(也可以不焊)
注:烧录我们的最新USB转双串口软件,可
以省此处的隔离二极管
22.1184MHz
0.1u
10u 0.1u
1
2
3
4
5
6
7
8
9
10
P1.4
P1.5
P1.6
P1.7
P1.3
UCap
P5.4
Vcc
Vref+
Gnd
RxD2/P1.0
TxD2/P1.1
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
20
19
18
17
16
15
14
13
12
11
这两个端口为第二组串口
第一组用于下载或者通讯
第二组串口用于串口通讯
1N5819
推挽输出
1N5819
高阻输入
22R
22R
STC通用USB转双串口芯片,
出厂自带USB程序,免驱动安装
Power On
Vin
22u
MCU_VCC
104
1
2
3
4
5
6
7
8
9
10
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P5.4
Vcc
Vref+
Gnd
P1.1
P1.0
P3.7
P3.6
P3.5
P3.4
P3.3
P3.2
P3.1
P3.0
20
19
18
17
16
15
14
13
12
11
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
系统电源
(可从USB取电)
USB +5V
STC USB-2UART
TSSOP20
系统电源
(可从USB取电)
S-TxD2
S-RxD2
S-RxD
S-TxD
高阻输入
推挽输出
芯片上电时P3.5输出低电平,
MCU_VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU_VCC停电0.5s再
上电进行ISP下载。下载完成后
会持续供电
1
+5V
2
D3
D+
4
GND
USB接口
2SB1204
22u
MCU_VCC
104
4.7u
470R
1K
如果目标系统功耗不大
2SB1204可使用SS8550替代
0R/22R/33R/100R
STC8H1K08
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 169 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
通用 USB 转双串口芯片 USB-2UART-45I-TSSOP20,手动
2.9.2
停电上电
22.1184MHz
0.1u
10u 0.1u
P1.4
P1.5
P1.6
P1.7
P1.3
UCap
P5.4
Vcc
Vref+
Gnd
RxD2/P1.0
TxD2/P1.1
TxD/P3.7
RxD/P3.6
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
20
19
18
17
16
15
14
13
12
11
推挽输出
1N5819
推挽输出
1N5819
高阻输入
USB +5V
22R
22R
STC USB-2UART
TSSOP20
STC通用USB转双串口芯片,
出厂自带USB程序,免驱动安装
系统电源
(可从USB取电)
Power On
Vin
22u
MCU_VCC
104
1
2
3
4
5
6
7
8
9
10
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P5.4
Vcc
Vref+
Gnd
P1.1
P1.0
P3.7
P3.6
P3.5
P3.4
P3.3
P3.2
P3.1
P3.0
S-TxD2
S-RxD2
S-RxD
S-TxD
高阻输入
1
+5V
2
D3
D+
4
GND
USB接口
20
19
18
17
16
15
14
13
12
11
连接目标单片机的P3.0/RxD
1
2
3
4
5
6
7
8
9
10
这两个端口为第二组串口
第一组用于下载或者通讯
第二组串口用于串口通讯
连接目标单片机的P3.1/TxD
此处的二极管和电阻的作用是防止USB器件
给目标芯片供电。由于目标芯片断电过程
此处的晶振可焊: 中,USB器件是不能断电的,USB器件的发送
22.1184M、24M、
脚一般都是强推挽输出,通过I/O供电芯片
11.0592M、12M
就能工作,所以当使用USB转串口TTL对STC
建议焊接22.1184MHz 单片机下载程序时此处的隔离二极管不能省
(也可以不焊)
注:烧录我们的最新USB转双串口软件,可
以省此处的隔离二极管
0R/22R/33R/100R
STC8H1K08
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 170 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
通用 USB 转双串口芯片 USB-2UART-45I- SOP16,自动停
2.9.3
电上电
此处的二极管和电阻的作用是防止USB器件
给目标芯片供电。由于目标芯片断电过程
中,USB器件是不能断电的,USB器件的发送
脚一般都是强推挽输出,通过I/O供电芯片
就能工作,所以当使用USB转串口TTL对STC
单片机下载程序时此处的隔离二极管不能省
这两个端口为第二组串口 注:烧录我们的最新USB转双串口软件,可
第一组用于下载或者通讯 以省此处的隔离二极管
第二组串口用于串口通讯
S-RxD2
S-TxD2
高阻输入
推挽输出
1N5819
0.1u
10u 0.1u
1
2
3
4
5
6
7
8
P1.0/RxD2 TxD/P3.7
P1.1/TxD2 RxD/P3.6
P1.3
UCap
P5.4
Vcc
Vref+
Gnd
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
16
15
14
13
12
11
10
9
芯片上电时P3.5输出低电平,
MCU_VCC处于供电状态。
当检测到需要进行ISP下载时,
会自动控制MCU_VCC停电0.5s再
上电进行ISP下载。下载完成后
会持续供电
1N5819
高阻输入
22R
22R
STC通用USB转双串口芯片,
出厂自带USB程序,免驱动安装
系统电源
(可从USB取电)
Power On
Vin
22u
MCU_VCC
104
1
2
3
4
5
6
7
8
9
10
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P5.4
Vcc
Vref+
Gnd
P1.1
P1.0
P3.7
P3.6
P3.5
P3.4
P3.3
P3.2
P3.1
P3.0
系统电源
(可从USB取电)
USB +5V
STC USB-2UART
SOP16
20
19
18
17
16
15
14
13
12
11
连接目标单片机的P3.0/RxD
连接目标单片机的P3.1/TxD
S-RxD
S-TxD
推挽输出
1
+5V
2
D3
D+
4
GND
USB接口
2SB1204
22u
MCU_VCC
104
4.7u
470R
1K
如果目标系统功耗不大
2SB1204可使用SS8550替代
0R/22R/33R/100R
STC8H1K08
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 171 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
通用 USB 转双串口芯片 USB-2UART-45I-SOP16,手动停电
2.9.4
上电
3
4
5
6
7
8
1N5819
0.1u
P1.0/RxD2 TxD/P3.7
P1.1/TxD2 RxD/P3.6
推挽输出2
10u 0.1u
P1.3
UCap
P5.4
Vcc
Vref+
Gnd
P3.5
P3.4
P3.3
P3.2
D+/P3.1
D-/P3.0
16
15
14
13
12
11
10
9
推挽输出
USB +5V
22R
22R
STC USB-2UART
SOP16
STC通用USB转双串口芯片,
出厂自带USB程序,免驱动安装
系统电源
(可从USB取电)
Power On
Vin
22u
MCU_VCC
104
1
2
3
4
5
6
7
8
9
10
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P5.4
Vcc
Vref+
Gnd
P1.1
P1.0
P3.7
P3.6
P3.5
P3.4
P3.3
P3.2
P3.1
P3.0
S-RxD
S-TxD
1N5819
高阻输入
1
+5V
2
D3
D+
4
GND
USB接口
20
19
18
17
16
15
14
13
12
11
连接目标单片机的P3.0/RxD
高阻输入1
S-TxD2
S-RxD2
连接目标单片机的P3.1/TxD
这两个端口为第二组串口
第一组用于下载或者通讯
第二组串口用于串口通讯
此处的二极管和电阻的作用是防止USB器件
给目标芯片供电。由于目标芯片断电过程
中,USB器件是不能断电的,USB器件的发送
脚一般都是强推挽输出,通过I/O供电芯片
就能工作,所以当使用USB转串口TTL对STC
单片机下载程序时此处的隔离二极管不能省
注:烧录我们的最新USB转双串口软件,可
以省此处的隔离二极管
0R/22R/33R/100R
STC8H1K08
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 172 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
3 功能脚切换
STC8G 系列单片机的特殊外设串口、SPI、PCA、I2C 以及总线控制脚可以在多个 I/O 直接进行切换,
以实现一个外设当作多个设备进行分时复用。
3.1 功能脚切换相关寄存器
位地址与符号
符号
描述
地址
复位值
B7
P_SW1
外设端口切换寄存器 1
A2H
P_SW2
外设端口切换寄存器 2
BAH
符号
描述
地址
B6
B5
S1_S[1:0]
B4
B3
CCP_S[1:0]
EAXFR
-
B2
B1
B0
0
-
nn00,000x
S4_S
S3_S
S2_S
0x00,0000
B2
B1
SPI_S[1:0]
I2C_S[1:0]
CMPO_S
位地址与符号
复位值
B7
MCLKOCR
3.1.1
主时钟输出控制寄存器
FE05H
B6
B5
B4
B3
B0
MCLKODIV[6:0]
MCLKO_S
0000,0000
外设端口切换控制寄存器 1(P_SW1)
,串口 1、CCP、SPI
切换
符号
地址
P_SW1
A2H
B7
B6
B5
S1_S[1:0]
B4
CCP_S[1:0]
B3
B2
SPI_S[1:0]
B1
B0
0
-
S1_S[1:0]:串口 1 功能脚选择位
S1_S[1:0]
RxD
TxD
00
P3.0
P3.1
01
P3.6
P3.7
10
P1.6
P1.7
11
P4.3
P4.4
S1_S[1:0]:串口 1 功能脚选择位(STC8G1K08-8Pin 系列、STC8G1K08A 系列)
S1_S[1:0]
RxD
TxD
00
P3.0
P3.1
01
P3.2
P3.3
10
P5.4
P5.5
11
-
-
CCP_S[1:0]:PCA 功能脚选择位
CCP_S[1:0]
ECI
CCP0
CCP1
CCP2
00
P1.2
P1.1
P1.0
P3.7
01
P3.4
P3.5
P3.6
P3.7
10
P2.4
P2.5
P2.6
P2.7
11
-
-
-
-
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 173 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
CCP_S[1:0]:PCA 功能脚选择位(STC8G1K08A 系列)
CCP_S[1:0]
ECI
CCP0
CCP1
CCP2
00
P5.5
P3.2
P3.3
P5.4
01
P5.5
P3.1
P3.3
P5.4
10
P3.1
P3.2
P3.3
P5.5
11
-
-
-
-
SPI_S[1:0]:SPI 功能脚选择位
SPI_S[1:0]
SS
MOSI
MISO
SCLK
00
P1.2
P1.3
P1.4
P1.5
01
P2.2
P2.3
P2.4
P2.5
10
P5.4
P4.0
P4.1
P4.3
11
P3.5
P3.4
P3.3
P3.2
SPI_S[1:0]:SPI 功能脚选择位(STC8G1K08-8Pin 系列、STC8G1K08A 系列)
SPI_S[1:0]
SS
MOSI
MISO
SCLK
00
P5.5
P5.4
P3.3
P3.2
01
-
-
-
-
10
-
-
-
-
11
-
-
-
-
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 174 -
STC8G 系列技术手册
3.1.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
外设端口切换控制寄存器 2(P_SW2),串口 2/3/4、I2C、
比较器输出切换
符号
地址
B7
B6
P_SW2
BAH
EAXFR
-
B5
B4
I2C_S[1:0]
B3
CMPO_S
B2
S4_S
B1
S3_S
B0
S2_S
EAXFR:扩展 RAM 区特殊功能寄存器(XFR)访问控制寄存器
0:禁止访问 XFR
1:使能访问 XFR。
当需要访问 XFR 时,必须先将 EAXFR 置 1,才能对 XFR 进行正常的读写
I2C_S[1:0]:I2C 功能脚选择位
I2C_S[1:0]
SCL
SDA
00
P1.5
P1.4
01
P2.5
P2.4
10
P7.7
P7.6
P3.2
P3.3
11
I2C_S[1:0]:I C 功能脚选择位(STC8G1K08-8Pin 系列、STC8G1K08A 系列)
2
I2C_S[1:0]
SCL
SDA
00
P3.2
P3.3
01
P5.4
P5.5
10
-
-
11
-
-
CMPO_S:比较器输出脚选择位
CMPO_S
CMPO
0
P3.4
1
P4.1
S4_S:串口 4 功能脚选择位
S4_S
RxD4
TxD4
0
P0.2
P0.3
1
P5.2
P5.3
S3_S:串口 3 功能脚选择位
S3_S
RxD3
TxD3
0
P0.0
P0.1
1
P5.0
P5.1
S2_S:串口 2 功能脚选择位
S2_S
RxD2
TxD2
0
P1.0
P1.1
1
P4.6
P4.7
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 175 -
STC8G 系列技术手册
3.1.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
时钟选择寄存器(MCLKOCR)
符号
地址
B7
MCLKOCR
FE05H
MCLKO_S
B6
B5
B4
B3
B2
B1
B0
MCLKODIV[6:0]
MCLKO_S:主时钟输出脚选择位
MCLKO_S
MCLKO
0
P5.4
1
P1.6
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 176 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
3.2 范例程序
串口 1 切换
3.2.1
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
sfr
P_SW1
=
0xa2;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
//
//
P_SW1 = 0x00;
P_SW1 = 0x40;
P_SW1 = 0x80;
P_SW1 = 0xc0;
//RXD/P3.0, TXD/P3.1
//RXD_2/P3.6, TXD_2/P3.7
//RXD_3/P1.6, TXD_3/P1.7
//RXD_4/P4.3, TXD_4/P4.4
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW1
DATA
0A2H
P0M1
P0M0
P1M1
DATA
DATA
DATA
093H
094H
091H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 177 -
STC8G 系列技术手册
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
P_SW1,#00H
P_SW1,#40H
P_SW1,#80H
P_SW1,#0C0H
SJMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
MAIN:
;
;
;
;RXD/P3.0, TXD/P3.1
;RXD_2/P3.6, TXD_2/P3.7
;RXD_3/P1.6, TXD_3/P1.7
;RXD_4/P4.3, TXD_4/P4.4
END
3.2.2
串口 2 切换
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
sfr
P_SW2
=
0xba;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 178 -
STC8G 系列技术手册
sfr
sfr
sfr
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
=
=
=
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
P_SW2 = 0x00;
P_SW2 = 0x01;
//RXD2/P1.0, TXD2/P1.1
//RXD2_2/P4.6, TXD2_2/P4.7
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW2
DATA
0BAH
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 179 -
STC8G 系列技术手册
;
官方网站: www.STCAI.com
MOV
MOV
MOV
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
P_SW2,#00H
P_SW2,#01H
SJMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;RXD2/P1.0, TXD2/P1.1
;RXD2_2/P4.0, TXD2_2/P4.2
END
串口 3 切换
3.2.3
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
sfr
P_SW2
=
0xba;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
P_SW2 = 0x00;
P_SW2 = 0x02;
//RXD3/P0.0, TXD3/P0.1
//RXD3_2/P5.0, TXD3_2/P5.1
while (1);
}
汇编代码
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 180 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;测试工作频率为 11.0592MHz
P_SW2
DATA
0BAH
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
P_SW2,#00H
P_SW2,#02H
SJMP
$
MAIN:
;
;RXD3/P0.0, TXD3/P0.1
;RXD3_2/P5.0, TXD3_2/P5.1
END
3.2.4
串口 4 切换
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
sfr
P_SW2
=
0xba;
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
=
=
=
=
0x93;
0x94;
0x91;
0x92;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 181 -
STC8G 系列技术手册
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
=
=
=
=
=
=
=
=
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
P_SW2 = 0x00;
P_SW2 = 0x04;
//RXD4/P0.2, TXD4/P0.3
//RXD4_2/P5.2, TXD4_2/P5.3
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW2
DATA
0BAH
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 182 -
STC8G 系列技术手册
;
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
P_SW2,#00H
P_SW2,#04H
SJMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;RXD4/P0.2, TXD4/P0.3
;RXD4_2/P5.2, TXD4_2/P5.3
END
3.2.5
SPI 切换
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
sfr
P_SW1
=
0xa2;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
//
P_SW1 = 0x00;
P_SW1 = 0x04;
P_SW1 = 0x08;
//SS/P1.2, MOSI/P1.3, MISO/P1.4, SCLK/P1.5
//SS_2/P2.2, MOSI_2/P2.3, MISO_2/P2.4, SCLK_2/P2.5
//SS_3/P5.4, MOSI_3/P4.0, MISO_3/P4.1, SCLK_3/P4.3
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 183 -
STC8G 系列技术手册
//
官方网站: www.STCAI.com
P_SW1 = 0x0c;
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//SS_4/P3.5, MOSI_4/P3.4, MISO_4/P3.3, SCLK_4/P3.2
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW1
DATA
0A2H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
P_SW1,#00H
P_SW1,#04H
P_SW1,#08H
P_SW1,#0CH
SJMP
$
MAIN:
;
;
;
;SS/P1.2, MOSI/P1.3, MISO/P1.4, SCLK/P1.5
;SS_2/P2.2, MOSI_2/P2.3, MISO_2/P2.4, SCLK_2/P2.5
;SS_3/P5.4, MOSI_3/P4.0, MISO_3/P4.1, SCLK_3/P4.3
;SS_4/P3.5, MOSI_4/P3.4, MISO_4/P3.3, SCLK_4/P3.2
END
3.2.6
PCA/CCP/PWM 切换
C 语言代码
//测试工作频率为 11.0592MHz
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 184 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
#include "reg51.h"
sfr
P_SW1
=
0xa2;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
//
P_SW1 = 0x00;
P_SW1 = 0x10;
P_SW1 = 0x20;
//ECI/P1.2, CCP0/P1.1, CCP1/P1.0, CCP2/P3.7
//ECI_2/P3.4, CCP0_2/P3.5, CCP1_2/P3.6, CCP2_2/P3.7
//ECI_3/P2.4, CCP0_3/P2.5, CCP1_3/P2.6, CCP2_3/P2.7
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW1
DATA
0A2H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 185 -
STC8G 系列技术手册
官方网站: www.STCAI.com
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
P_SW1,#00H
P_SW1,#10H
P_SW1,#20H
SJMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
MAIN:
;
;
;ECI/P1.2, CCP0/P1.1, CCP1/P1.0, CCP2/P3.7
;ECI_2/P3.4, CCP0_2/P3.5, CCP1_2/P3.6, CCP2_2/P3.7
;ECI_3/P2.4, CCP0_3/P2.5, CCP1_3/P2.6, CCP2_3/P2.7
END
3.2.7
I2C 切换
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
sfr
P_SW2
=
0xba;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 186 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
//
//
P_SW2 = 0x00;
P_SW2 = 0x10;
P_SW2 = 0x20;
P_SW2 = 0x30;
//SCL/P1.5, SDA/P1.4
//SCL_2/P2.5, SDA_2/P2.4
//SCL_3/P7.7, SDA_3/P7.6
//SCL_4/P3.2, SDA_4/P3.3
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW2
DATA
0BAH
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
P_SW2,#00H
P_SW2,#10H
P_SW2,#20H
P_SW2,#30H
MAIN:
;
;
;
;SCL/P1.5, SDA/P1.4
;SCL_2/P2.5, SDA_2/P2.4
;SCL_3/P7.7, SDA_3/P7.6
;SCL_4/P3.2, SDA_4/P3.3
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 187 -
STC8G 系列技术手册
官方网站: www.STCAI.com
SJMP
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
$
END
比较器输出切换
3.2.8
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
sfr
P_SW2
=
0xba;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
P_SW2 = 0x00;
P_SW2 = 0x08;
//CMPO/P3.4
//CMPO_2/P4.1
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW2
DATA
0BAH
P0M1
P0M0
P1M1
DATA
DATA
DATA
093H
094H
091H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 188 -
STC8G 系列技术手册
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
P_SW2,#00H
P_SW2,#08H
SJMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
MAIN:
;
;CMPO/P3.4
;CMPO_2/P4.1
END
3.2.9
主时钟输出切换
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#define
CLKOCR
(*(unsigned char volatile xdata *)0xfe00)
sfr
P_SW2
=
0xba;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 189 -
STC8G 系列技术手册
sfr
sfr
sfr
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
=
=
=
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
P_SW2 = 0x80;
CLKOCR = 0x04;
CLKOCR = 0x84;
P_SW2 = 0x00;
//HIRC/4 output via MCLKO/P5.4
//HIRC/4 output via MCLKO_2/P1.6
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW2
DATA
0BAH
CLKOCR
EQU
0FE05H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 190 -
STC8G 系列技术手册
;
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
MOVX
MOV
P_SW2,#80H
A,#04H
A,#84H
DPTR,#CLKOCR
@DPTR,A
P_SW2,#00H
SJMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;HIRC/4 output via MCLKO/P5.4
;HIRC/4 output via MCLKO_2/P1.6
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 191 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4 封装尺寸图
4.1 SOP8 封装尺寸图
8
5
1
4
MAX
1.75
0.25
1.65
0.75
0.45
5.00
6.20
4.00
0.80
-
A3
R1
R
A1
A
e (1.27mm)
A2
一般尺寸
测量单位:毫米/mm
MIN
TYP
1.35
1.60
0.10
0.15
1.25
1.45
0.55
0.65
0.35
0.40
4.80
4.90
5.80
6.00
3.80
3.90
1.27BSC
0.45
0.60
1.04REF
0.25BSC
0.07
0.07
-
SYMBOL
A
A1
A2
A3
b
D
E
E1
e
L
L1
L2
R1
R2
E1 (3.9mm)
E (6.0mm)
D (4.9mm)
b(0.40mm)
L2
?
L
L1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 192 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.2 DFN8 封装尺寸图(3mm*3mm)
E (3mm)
D (3mm)
1
8
PIN 1
4
5
L(0.4mm)
K
D2
4
MAX
0.80
0.05
0.60
0.225
3.11
3.11
1.75
2.45
0.55
0.419
-
A3
A1
A
R
b(0.2mm)
E2
e(0.5mm)
1
SYMBOL
A
A1
A2
A3
b
D
E
D2
E2
e
L
K
R
一般尺寸
测量单位:毫米/mm
MIN
TYP
0.70
0.75
0
0.02
0.50
0.55
0.203REF
0.175
0.20
2.89
3.00
2.89
3.00
1.65
1.70
2.35
2.40
0.45
0.50
0.381
0.40
0.275REF
0.125
-
STC 现有 DFN8 封装芯片的背面金属片(衬底)
,在芯片内部并未接地,在用户的 PCB 板上可以接地,
也可以不接地,不会对芯片性能造成影响
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 193 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.3 SOP16 封装尺寸图
16
9
1
8
MAX
1.75
0.25
1.65
0.75
0.45
10.00
6.20
4.00
0.80
-
A3
R1
R
A1
A
e (1.27mm)
A2
一般尺寸
测量单位:毫米/mm
MIN
TYP
1.35
1.60
0.10
0.15
1.25
1.45
0.55
0.65
0.35
0.40
9.80
9.90
5.80
6.00
3.80
3.90
1.27BSC
0.45
0.60
1.04REF
0.25BSC
0.07
0.07
-
SYMBOL
A
A1
A2
A3
b
D
E
E1
e
L
L1
L2
R1
R2
E1 (3.9mm)
E (6.0mm)
D (9.9mm)
L2
?
L
b(0.40mm)
L1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 194 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.4 TSSOP20 封装尺寸图
D (6.5mm)
11
SYMBOL
A
A1
A2
A3
b
D
E
E1
e
L
L1
L2
R1
R2
E1 (4.4mm)
E (6.5mm)
20
1
10
MAX
1.20
0.15
1.05
0.54
0.28
6.60
6.60
4.50
0.75
-
A3
R1
R
A1
A
e (0.65mm)
A2
一般尺寸
测量单位:毫米/mm
MIN
TYP
0.05
0.90
1.00
0.34
0.44
0.20
0.24
6.40
6.50
6.20
6.50
4.30
4.40
0.65BSC
0.45
0.60
1.00REF
0.25BSC
0.09
0.09
-
L2
?
L
b(0.24mm)
L1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 195 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.5 QFN20 封装尺寸图(3mm*3mm)
D (3mm)
20
16
1
SYMBOL
A
A1
A2
A3
b
D
E
D2
E2
e
L
K
R
C1
C2
E (3mm)
15
PIN 1
5
11
6
10
K
18
一般尺寸
测量单位:毫米/mm
MIN
TYP
0.70
0.75
0
0.02
0.50
0.55
0.20REF
0.15
0.20
2.90
3.00
2.90
3.00
1.40
1.50
1.40
1.50
0.30
0.40
0.35
0.40
0.35REF
0.085
0.07
0.07
MAX
0.80
0.05
0.60
0.25
3.10
3.10
1.60
1.60
0.50
0.45
-
20
L
E2
D2 R
4
11
C1
C2
A3
b(0.20mm)
A1
A
e(0.4mm)
1
STC 现有 QFN20 封装芯片的背面金属片(衬底)
,在芯片内部并未接地,在用户的 PCB 板上可以接地,
也可以不接地,不会对芯片性能造成影响
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 196 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.6 LQFP32 封装尺寸图(9mm*9mm)
D (9mm)
D1 (7mm)
24
17
16
32
9
E (9mm)
E1 (7mm)
25
SYMBOL
A
A1
A2
A3
b1
b
c
D
D1
E
E1
e
L
L
L1
R
R1
1
8
e (0.80mm) b(0.30mm)
?
一般尺寸
测量单位:毫米/mm
MIN
TYP
1.45
1.55
0.01
1.35
1.40
0.254
0.30
0.35
0.31
0.37
0.127
8.80
9.00
6.90
7.00
8.80
9.00
6.90
7.00
0.70
0.80
0.43
1.00REF
0.25BSC
0.1
0.1
0°
-
MAX
1.65
0.21
1.45
0.40
0.43
9.20
7.10
9.20
7.10
0.90
0.71
0.25
10°
(A-A的截面图)
R1
R
A3
A2
A
c
A1
b1
?
L
b
L1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 197 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.7 QFN32 封装尺寸图(4mm*4mm)
D (4mm)
32
19
1
SYMBOL
A
A1
A2
A3
b
D
E
D2
E2
e
L
K
R
C1
C2
18
E (4mm)
PIN 1
8
17
9
16
K
27
一般尺寸
测量单位:毫米/mm
MIN
TYP
0.70
0.75
0
0.02
0.50
0.55
0.20REF
0.15
0.20
3.90
4.00
3.90
4.00
2.60
2.70
2.60
2.70
0.30
0.40
0.35
0.40
0.25REF
0.09
0.16
0.16
MAX
0.80
0.05
0.60
0.25
4.10
4.10
2.80
2.80
0.50
0.45
-
32
L
e(0.4mm)
1
E2
R
b(0.20mm)
12
C1
A3
7
17
A1
A
D2
C2
STC 现有 QFN32 封装芯片的背面金属片(衬底)
,在芯片内部并未接地,在用户的 PCB 板上可以接地,
也可以不接地,不会对芯片性能造成影响
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 198 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.8 LQFP48 封装尺寸图(9mm*9mm)
D (9mm)
D1 (7mm)
25
37
24
48
13
E1 (7mm)
E (9mm)
36
1
12
MAX
1.60
0.15
1.45
0.69
0.27
0.23
0.18
0.134
9.20
7.10
9.20
7.10
0.55
0.75
0.20
-
b
R1
A3
R2
A1
A2
A
e (0.5mm)
SYMBOL
A
A1
A2
A3
b
b1
c
c1
D
D1
E
E1
e
L
L1
L2
R1
R2
S
一般尺寸
测量单位:毫米/mm
MIN
TYP
0.05
1.35
1.40
0.59
0.64
0.18
0.17
0.20
0.13
0.12
0.127
8.80
9.00
6.90
7.00
8.80
9.00
6.90
7.00
0.45
0.50
0.45
0.60
1.00REF
0.25BSC
0.08
0.08
0.20
-
L2
L
b
b1
c
L1
c1
(A-A的截面图)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 199 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.9 QFN48 封装尺寸图(6mm*6mm)
D (6mm)
48
37
1
36
E (6mm)
PIN 1
12
25
13
SYMBOL
A
A1
A3
b
D
E
D2
E2
e
L
K
R
一般尺寸
测量单位:毫米/mm
MIN
TYP
0.70
0.75
0.00
0.02
0.20REF
0.15
0.20
5.90
6.00
5.90
6.00
3.95
4.05
3.95
4.05
0.35
0.40
0.35
0.40
0.20
0.09
-
MAX
0.80
0.05
0.25
6.10
6.10
4.15
4.15
0.45
0.45
-
24
K
39
48
A3
1
35
A1
A
L
E2
e(0.4mm)
R
D2
25
12
24
b(0.20mm)
13
STC 现有 QFN48 封装芯片的背面金属片(衬底)
,在芯片内部并未接地,在用户的 PCB 板上可以接地,
也可以不接地,不会对芯片性能造成影响
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 200 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.10 LQFP64S 封装尺寸图(12mm*12mm)
A
D (12mm)
A2
D1 (10mm)
48
A3
33
49
32
E1 (10mm)
E (12mm)
TOP E-MARK 2-Φ1.8±0.1 DEPTH 0.1±0.05
BTM E-MARK 2-Φ1.8±0.1 DEPTH 0.1±0.05
INDEX Φ1.2±0.1 DEPTH 0.2±0.1
64
17
1
16
e (0.5mm)
SYMBOL
A
A1
A2
A3
b
b1
c
c1
D
D1
E
E1
e
L
L1
L2
R1
R2
S
?
?1
?2
?3
一般尺寸
测量单位:毫米/mm
MIN
TYP
0.05
1.35
1.40
0.59
0.64
0.18
0.17
0.20
0.13
0.12
0.127
11.80
12.00
9.90
10.00
11.80
12.00
9.90
10.00
0.50BSC
0.45
0.60
1.00REF
0.25BSC
0.08
0.08
0.20
0°
3.5°
0°
11°
12°
11°
12°
A1
b
?2
R1
MAX
1.60
0.15
1.45
0.69
0.27
0.23
0.18
0.134
12.20
10.10
12.20
10.10
?1
R2
?3
?
L2
L1
L
S
b
0.75
b1
0.20
7°
13°
13°
c
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
c1
(A-A的截面图)
技术交流及选型论坛:www.STCAIMCU.com - 201 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.11 QFN64 封装尺寸图(8mm*8mm)
D (8mm)
64
49
1
48
E (8mm)
PIN 1
16
SYMBOL
A
A1
A2
A3
b
D
E
D2
E2
e
L
K
R
一般尺寸
测量单位:毫米/mm
MIN
TYP
0.70
0.75
0.00
0.02
0.50
0.55
0.20REF
0.15
0.20
7.90
8.00
7.90
8.00
5.90
6.00
5.90
6.00
0.30
0.40
0.30
0.40
0.40
0.09
-
MAX
0.80
0.05
0.60
0.25
8.10
8.10
6.10
6.10
0.50
0.50
-
33
17
K
51
A3
A1
A
32
64
L
1
47
R
e(0.4mm)
E2
D2
33
16
32
b(0.20mm)
17
STC 现有 QFN64 封装芯片的背面金属片(衬底)
,在芯片内部并未接地,在用户的 PCB 板上可以接地,
也可以不接地,不会对芯片性能造成影响
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 202 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4.12 STC8G 系列单片机命名规则
STC
8x
xK
08
程序空间大小
12:12K字节
08:8K字节
SRAM空间大小
1K:1K字节
子系列
8G:STC8G系列
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 203 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
5
编译、仿真开发环境的建立与 ISP 下载
5.1
安装 Keil
5.1.1
安装 C51 编译环境
首先登录 Keil 官网,下载最新版的 C51 安装包,下载链接如下:
Keil Product Downloads
信息随便填写,点确定后进入下载页面进行下载。
双击下载的安装包开始安装, 点击“Next”:
勾选“I agree to all the terms of the preceding License Agreement”,然后点击“Next”:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 204 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
选择安装目录,然后点击“Next”:
填写个人信息,然后点击“Next”:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 205 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
安装完成,点击“Finish”结束。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 206 -
STC8G 系列技术手册
5.1.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
如何同时安装 Keil 的 C51、C251 和 MDK
旧版本的 Keil 软件的安装目录默认是 C:\Keil,C51、C251 和 MDK 分别会被安装在 C:\Keil 目录下
的 C51、C251 和 ARM 目录中,如下图所示。
新版本的 Keil 软件的安装目录默认是 C:\Keil_v5,C51、C251 和 MDK 分别会被安装在 C:\Keil_v5
目录下的 C51、C251 和 ARM 目录中,如下图所示。
无论是新版本还是旧版本,C51、C251 和 MDK 是安装在不同的目录,并不会有冲突。软件的和谐
也是 3 个软件分别进行的,之前已经安装完成并设置好的软件,并不会因为后续有安装新的软件而改变。
所以安装时只需要按照默认方式安装即可,Keil 软件会自动处理好。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 207 -
STC8G 系列技术手册
5.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
添加型号和头文件到 Keil
使用 Keil 之前需要先安装 STC 的仿真驱动。STC 的仿真驱动的安装步骤如下:
首先开 STC 的 ISP 下载软件,然后在软件右边功能区的“Keil 仿真设置”页面中点击“添加型号和头
文件到 Keil 中 添加 STC 仿真器驱动到 Keil 中”按钮:
按下后会出现如下画面:
将目录定位到 Keil 软件的安装目录,然后确定。安装成功后会弹出如下的提示框:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 208 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
即表示驱动正确安装了
头文件默认复制到 Keil 安装目录下的“C251\INC\STC”目录中
在 C 代码中使用“#include ”或者“#include "STC32G.H"”进行包含均可正确使用
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 209 -
STC8G 系列技术手册
5.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC 单片机程序中头文件的使用方法
c 语言中 include 用法
#include 命令是预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置。
有两种方式可以指定插入头文件:
#include
#include "文件名.h"
使用尖括号< >和双引号" "的区别在于头文件的搜索路径不同:
使用尖括号< >,编译器会到系统路径下查找头文件;
使用双引号" ",编译器首先在当前目录下查找头文件,如果没有找到,再到系统路径下查找。
路径设置方式 1:
通过 keil 设置界面,添加包含文件的路径:
添加后,调用时直接使用 #include "文件名.h" 就可以将需要的文件包含进来,编译器会自动到以上路径
下面寻找所包含的文件。
这种情况下,使用双引号" "包含头文件,编译器首先在当前目录下查找头文件,如果没有找到,编译器
会到 keil 设置路径查找,还没有的话再到系统路径下查找。
(注:系统路径是编译器安装位置存放头文件
的目录)
路径设置方式 2:
在包含文件名前添加绝对路径,例如:
#include "E:\xxxx\xxxx\文件名.h"
#include "E:/xxxx/xxxx/文件名.h"
路径设置方式 3:
在包含文件名前添加相对路径,例如:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 210 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
#include "..\comm\文件名.h"
#include "../comm/文件名.h"
其中 ".."是指上一级目录,以上路径是指包含文件在当前目录的上一级目录的 comm 目录下面。
汇编语言中 include 用法与 c 语言类似,将"#"换成"$",用小括号()包含文件:
$include (../../comm/STC8H.INC)
以上指令表示要包含的文件 STC8H.INC,在当前目录的上一级目录的上一级目录的 comm 目录下面。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 211 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
5.4
新建项目与项目设置
5.4.1
设置项目路径和项目名称
研发顾问:13922829991
选型顾问: 13922805190
打开 Keil 软件,并点击“Project”菜单中的“New uVision Project ...”项
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 212 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
将目录定位在准备好的项目文件夹中,并输入项目名称(例如:Demo)
5.4.2
选择目标单片机型号(STC8H8K64U)
在弹出的“Select a CPU Data Base File”窗口中选择“STC MCU Database”
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 213 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
在“Select Device for Target ...”窗口中选择正确的目标单片机型号(例如:STC8H8K64U)
5.4.3
添加源代码文件到项目
如下图所示,在“Source Group 1”所在的图标点击鼠标右键,并选择右键菜单中的“Add Files to Group
' Source Group 1'...”
选择已编辑完成的代码文件加入到项目中
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 214 -
STC8G 系列技术手册
5.4.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
设置项目 1(设置“Memory Model”)
如下图所示,在“Target1”所在的图标点击鼠标右键,并选择“Options for Target ' Target 1'...”
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 215 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
弹出的“Options for Target ' Target 1'”窗口中选择“Target”选项页,在“Memory Model”的下拉选项中
可选择“Small”模式或者“Large”模式。
在 Keil 软件中的“Memory Model”有如下 3 个选择
各种模式对比如下表:
Memory Model
默认变量类型
(数据存储器)
存储器大小
地址范围
Small 模式
data
128 字节
D:00 ~ D:7F
Compact 模式
pdata
256 字节
X:0000 ~ X:00FF
Large 模式
xdata
64K 字节(理论值)
X:0000 ~ X:FFFF
为了达到比较高的效率,一般建议选择“Small”模式,当编译器出现“error C249: 'DATA': SEGMENT
TOO LARGE”错误时,则需要手动将部分比较大的数组通过“xdata”强制分配到 XDATA 区域(例
如:char xdata buffer[256];)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 216 -
STC8G 系列技术手册
5.4.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
设置项目 3(
“Code Rom Size”选择 Large)
在“Code Rom Size”的下拉选项中选择“Large: ...”模式
8051 的代码大小模式,在 Keil 环境下有如下图所示的 3 种模式:
各种模式对比如下表:
代码大小限制
Code Rom Size
跳转/调用指令
单个函数/模块/文件
的代码大小
总代码大小
Small 模式
AJMP/ACALL
2K
2K
Compact 模式
内部模块代码使用 AJMP/ACALL
外部模块代码使用 LJMP/LCALL
2K
64K
Large 模式
LCALL/LJMP
64K
64K
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 217 -
STC8G 系列技术手册
5.4.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
设置项目 5(HEX 文件格式设置)
“Options for Target ' Target 1'”窗口中选择“Output”选项页,勾选其中的“Create HEX File”选项。
完成上面的设置后,鼠标单击如下图所示的编译按钮,如果代码没有错误,即可生成 HEX 文件
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 218 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
5.5
如何在 Keil C51 中对变量、表格数据、函数指定绝对地址
5.5.1
Keil C51 中,变量如何指定绝对地址
语法如下:
数据类型 [存储类型] 变量名称 _at_ 绝对地址;
在 data 区域指定绝对地址变量的范例:
int data var_data_abs _at_ 0x50;
在 xdata 区域指定绝对地址变量的范例:
int xdata var_xdata_abs _at_ 0x30;
在 data 区域指定绝对地址变量的范例:
char xdata arr_xdata_abs[256] _at_ 0x1000;
编译完成后地址分配如下图:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 219 -
STC8G 系列技术手册
5.5.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Keil C51 中,表格数据如何指定绝对地址
C51 中无法直接在程序中指定表格数据的绝对地址,需要通过如下方法实现
首先在程序中定义表格数据,编译成功后,获取表格的链接符号(如下图为“?CO?DEMO”)
接下来在项目设置项中打开“BL51 Locate”设置页面
在 code 一栏中按照:链接名称 (链接地址) 的格式,输入绝对地址
如下图,将表格数据指定到代码区的 0x1000 的绝对地址
设置完成后,再次编译,表格数据即可被链接到指定的绝对地址,如下图:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 220 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
研发顾问:13922829991
选型顾问: 13922805190
技术交流及选型论坛:www.STCAIMCU.com - 221 -
STC8G 系列技术手册
5.5.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Keil C51 中,函数如何指定绝对地址
C51 中无法直接在程序中指定函数的绝对地址,需要通过如下方法实现
首先在程序编写完成函数代码,编译成功后,获取函数的链接符号(如下图为“?PR?TEST?DEMO”)
接下来在项目设置项中打开“BL51 Locate”设置页面
在 code 一栏中按照:链接名称 (链接地址) 的格式,输入绝对地址
如下图,将函数指定到代码区的 0x2000 的绝对地址
设置完成后,再次编译,函数即可被链接到指定的绝对地址,如下图:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 222 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
研发顾问:13922829991
选型顾问: 13922805190
技术交流及选型论坛:www.STCAIMCU.com - 223 -
STC8G 系列技术手册
5.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Keil 软件中获取帮助的简单方法
Keil 软件提供了很完整的帮助文件,对于一般的软件使用和编程问题,直接使用 Keil 软件的帮助基本都
可以得到解决。如下图:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 224 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
若需要了解项目设置中的相关设置的,可按下图所示的方法获取帮助
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 225 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
另外,也可在帮助窗口中直接输入想了解的内如。比如需要了解如何在程序中设置特殊的编译指示,可
按下图所示,在搜索框输入“#pragma”即可
如果需要更详细的帮助详细,可登录 Keil 官网进行查询
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 226 -
STC8G 系列技术手册
5.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
在 Keil 中建立多文件项目的方法
在 Keil 中,一般比较小的项目都只有一个源文件,但对于一些稍微复杂的项目往往需要多个源文件
建立多文件项目的方法如下:
1、首先打开 Keil,在菜单“Project”中选择“New uVision Project ...”
即可完成一个空项目的建立
2、在空项目的项目树中,鼠标右键单击“Source Group 1”,并选择右键菜单中的“Add Existing Files to
Group "Source Group 1" ...”
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 227 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
3、在弹出的文件对话框中,多次添加源文件
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 228 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
如下图所示即可完成多文件项目的建立
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 229 -
STC8G 系列技术手册
5.8
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Keil 小技巧----在多文件项目的源文件中声明并使用外部变量和外部函数
在 Keil 环境下开发比较大的项目时,往往需要在项目中加入多个源文件。而不同源文件内,可能会
有一些变量和函数是开放为其它源文件使用的。但默认情况下,在源文件内部定义的变量和函数只在本
源文件可见(可使用),如果需要跨源文件使用则需要遵循一定的规则进行定义和声明。
对于需要跨源文件访问变量:
1、变量必须定义为全局变量
所谓全局变量就是在函数外部定义,在函数内部定义的变量为局部变量
由于局部变量的作用域仅在定义的函数内部,且生命周期在函数返回时就结束了
所以要使变量能跨源文件访问,变量必须定义为全局变量
2、变量必须定义为非静态变量
使用 static 关键字定义的变量为静态变量,静态变量作用域仅为本源文件,外部源文件不可访问。
所以要使变量能跨源文件访问,变量必须定义为非静态变量,即定义时不要使用 static 关键字
3、不同的源文件中不可定义名称相同的全局变量
如果在不同源文件中定义名称相同的全局变量,编译器会如下错误提示
4、在需要使用外部变量的源文件内使用 extern 声明变量
如果需要在多个源文件中使用同一个外部变量,可将上面的外部声明语句
放在.h 文件中,在需要使用这个变量的源文件中 include 一下这个头文件即可
同样的,若需要跨源文件调用外部函数:
1、函数必须定义为非静态函数
使用 static 关键字定义的函数为静态函数,静态函数作用域仅为本源文件,外部源文件不可访问。
所以要使函数能跨源文件访问,必须定义为非静态函数,即定义函数时不要使用 static 关键字。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 230 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2、不同的源文件中不可定义名称相同的非静态函数
如果在不同源文件中定义名称相同的非静态函数时,编译器会如下错误提示
3、在需要调用外部函数的源文件内直接声明一下即可
对于外部函数声明,是否使用 extern 关键字,编译时都可通过
也可以 extern
int func1(int var);
如果需要在多个源文件中使用同一个外部函数,可将上面的外部声明语句
放在.h 文件中,在需要调用这个函数的源文件中 include 一下这个头文件即可
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 231 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
扩展 Keil 对中断号数量的支持,中断号大于 31 编译出错的
5.9
处理
注:Keil C51/C251 编译器只支持 31 以内的中断号(0~31),超过 31 编译会报错。有热心网友提供了一
个简单的 Keil 中断号拓展工具,可将中断号拓展到 254。工具界面如下:
但对于目前现有的 Keil 版本,只能使用本章节的方法进行临时解决。
5.9.1
如何下载 Keil 中断号拓展工具,及安装
软件下载地址:https://www.STCAI.com/gjrj
下载完成后,直接解压缩,运行该绿色免安装工具。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 232 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
点击“打开”按钮,定位到 Keil 的安装目录后,点击“确定”即可。
根据实际的 Keil 安装目录选择地址,如部分用户安装的目录是,C:\Keil_v5
由于 Keil 的版本在不断更新,而早期版本过多,有无法收集齐,这里列举一下已测试通过的 C51.EXE
版本和 C251.EXE 版本
已测试通过的 C51.EXE 版本:
V6.12.0.1
V8.8.0.1
V9.0.0.1
V9.1.0.1
V9.53.0.0
V9.54.0.0
V9.57.0.0
V9.59.0.0
V9.60.0.0
已测试通过的 C251.EXE 版本:
V5.57.0.0
V5.60.0.0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 233 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
查看 C51.EXE 版本的方法:
在 keil 中打开一个基于 STC8 系列或者 STC15 系列单片机的项目,在 Keil 软件菜单项“Help”中打开
“About
uVision...”
查看 C251.EXE 版本的方法:
在 keil 中打开一个基于 STC32G 系列单片机的项目,在 Keil 软件菜单项“Help”中打开“About uVision...”
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 234 -
STC8G 系列技术手册
5.9.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
如不使用扩展中断号工具,则需借用保留中断号进行中转
在 Keil 的 C251 编译环境下,中断号只支持 0~31,即中断向量必须小于 0100H。
下表是 STC 目前所有系列的中断列表:
中断号
中断向量
中断类型
0
0003 H
INT0
1
000B H
定时器 0
2
0013 H
INT1
3
001B H
定时器 1
4
0023 H
串口 1
5
002B H
ADC
6
0033 H
LVD
8
0043 H
串口 2
9
004B H
SPI
10
0053 H
INT2
11
005B H
INT3
12
0063 H
定时器 2
13
006B H
14
0073 H
系统内部中断
15
007B H
系统内部中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 235 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
中断号
中断向量
16
0083 H
INT4
17
008B H
串口 3
18
0093 H
串口 4
19
009B H
定时器 3
20
00A3 H
定时器 4
21
00AB H
比较器
24
00C3 H
I2C
25
00CB H
USB
26
00D3 H
PWMA
27
00DB H
PWMB
28
00E3 H
CAN1
29
00EB H
CAN2
30
00F3 H
LIN
36
0123 H
RTC
37
012B H
P0 口中断
38
0133 H
P1 口中断
39
013B H
P2 口中断
40
0143 H
P3 口中断
41
014B H
P4 口中断
42
0153 H
P5 口中断
43
015B H
P6 口中断
44
0163 H
P7 口中断
45
016B H
P8 口中断
46
0173 H
P9 口中断
47
017BH
M2M DMA 中断
48
0183H
ADC DMA 中断
49
018BH
SPI DMA 中断
50
0193H
UR1T DMA 中断
51
019BH
UR1R DMA 中断
52
01A3H
UR2T DMA 中断
53
01ABH
UR2R DMA 中断
54
01B3H
UR3T DMA 中断
55
01BBH
UR3R DMA 中断
56
01C3H
UR4T DMA 中断
57
01CBH
UR4R DMA 中断
58
01D3H
LCM DMA 中断
59
01DBH
LCM 中断
60
01E3H
I2CT DMA 中断
61
01EBH
I2CR DMA 中断
62
01F3H
I2S 中断
63
01FBH
I2ST DMA 中断
64
0203H
I2SR DMA 中断
研发顾问:13922829991
选型顾问: 13922805190
中断类型
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 236 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
不难发现,RTC 中断开始,后面所有的中断服务程序,在 keil 中均会编译出错,如下图所示:
处理这种错误有如下三种方法:(均需要借助于汇编代码,优先推荐使用方法 1)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 237 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
方法 1:借用 13 号中断向量
0~31 号中断中,第 13 号是保留中断号,我们可以借用此中断号
操作步骤如下:
1、将我们报错的中断号改为“13”,如下图:
2、新建一个汇编语言文件,比如“isr.asm”,加入到项目,并在地址“0103H”的地方添加一条“LJMP
006BH”,如下图:
3、编译即可通过。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 238 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
此时经过 Keil 的 C51 编译器编译后,在 006BH 处有一条“LJMP
“LJMP
006BH”,如下图:
选型顾问: 13922805190
PWM5_ISR”,在 0103H 处有一条
当发生 PWM5 中断时,硬件会自动跳转到 0103H 地址执行“LJMP
006BH”,然后在 006BH 处再执
行“LJMP
PWM5_ISR”即可跳转到真正的中断服务程序,如下图:
中断服务程序执行完成后,再通过 RETI 指令返回。整个中断响应过程只是多执行了一条 LJMP 语句而
已。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 239 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
方法 2:与方法 1 类似,借用用户程序中未使用的 0~31 的中断号
比如在用户的代码中,没有使用 INT0 中断,则可将上面的代码作类似与方法 1 的修改:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 240 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
执行效果与方法 1 相同,此方法适用于需要重映射多个中断号大于 31 的情况。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 241 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
方法 3:将中断服务程序定义成子程序,然后在汇编代码中的中断入口地址中
使用 LCALL 指令执行服务程序
操作步骤如下:
1、首先将中断服务程序去掉“interrupt”属性,定义成普通子程序
2、然后在汇编文件的 0103H 地址输入如下图所示的代码
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 242 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
3、编译通过后,即可发现在 0103H 地址的地方即为中断服务程序
此方法不需要重映射中断入口,不过这种方法有一个问题,在汇编文件中具体需要将哪些寄存器压入堆
栈,需要用户查看 C 程序的反汇编代码来确定。一般包括 PSW、ACC、B、DPL、DPH 以及 R0~R7。除
PSW 必须压栈外,其他哪些寄存器在用户子程序中有使用,就必须将哪些寄存器压栈。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 243 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
用户程序复位到系统区进行 USB 模式 ISP 下载的方法(不
5.10
停电)
当项目处于开发阶段时,需要反复的下载用户代码到目标芯片中进行代码验证,使用 USB 模式对
STC 的单片机进行正常的 ISP 下载,需要先将 P3.2 口短路到 GND,然后对目标芯片进行重新上电,从
而会使得项目在开发阶段烧录步骤比较繁琐。为此 STC 单片机增加了一个特殊功能寄存器 IAP_CONTR,
当用户向此寄存器写入 0x60,即可实现软件复位到系统区,进而实现不停电就可进行 ISP 下载。
注:当用户程序软复位到系统区时,若 P3.0/D-和 P3.1/D+已经和电脑的 USB 口相连,则系统代码
会自动进入 USB 下载模式等待 ISP 下载,此时不需要 P3.2 连接到地
下面介绍如下两种方法:
1、使用 P3.2 口的按键(非 USB 项目)
这里使用 P3.2 口的按键触发软复位和“P3.2 口短路到 GND,然后对目标芯片进行重新上电”的方
法不一样。用户程序的主循环中,判断 P3.2 口电平状态,当检测到 P3.2 口电平为 0 时,触发软件复位
到系统区即可进行 USB ISP 下载。P3.2 口的按键在释放状态时,用户程序从 P3.2 口读取的电平为 1,当
需要复位到 ISP 进行 USB 下载时,只需手动按一下 P3.2 即可。
程序中判断 P3.2 电平的范例程序如下:
//测试工作频率为 11.0592MHz
//#include "stc8h.h"
#include "stc32g.h"
void main()
{
EAXFR = 1;
CKCON = 0x00;
WTST = 0x00;
//头文件见下载软件
//使能访问 XFR
//设置外部数据总线速度为最快
//设置程序代码等待参数,
//赋值为 0 可将 CPU 执行程序的速度设置为最快
P3M0 = 0x00;
P3M1 = 0x00;
P32 = 1;
while (1)
{
if (!P32) IAP_CONTR = 0x60;
...
//当检测到 P3.2 的电平为低时
//软件复位到系统区
//用户代码
}
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 244 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
2、使用 AIapp-ISP 下载软件发送的用户下载命令(USB 项目)
1、下载最新版本的 AIapp-ISP 下载软件
2、选择正确的单片机型号
3、打开“收到用户命令后复位到 ISP 监控程序区”选项页
4、选择“USB(HID)模式”,并设置 USB 设备的 VID 和 PID,STC 提供的范例中的 VID 为“34BF”,
PID 为“FF01”
5、选择 HEX 模式或者文本模式
6、设置自定义下载命令,需要和代码中的自定义命令相一致
7、选择上这两项,当目标代码重新编译后,AIapp-ISP 下载软件便会自动发送复位命令,并自动开
始 USB 模式的 ISP 下载
注意:若需要使用此模式,则必须将 STC 提供的“stc_usb_hid.lib”代码库添加到项目中,并按照下
图所示的方式设置自定义下载命令。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 245 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
详细代码请参考官网上的“STC32G 实验箱演示程序”包中的“76-通过 USB HID 协议打印数据信息-可
用于调试”
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 246 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
5.11 ISP 下载流程及典型应用线路图
5.11.1
ISP 下载流程图(串口下载模式)
上电复位/外部按键复位/
看门狗复位/低压复位
单片机运行
系统ISP监控程序
检测有无合法命令流,占时几十毫秒到几百毫秒。
如无合法下载命令流,则立即跑用户程序
P3.0是否有合法
串口下载命令流?
是
否
如果已设置[P3.2,P3.3]=[0, 0]才判断是否下载用户程序,则冷启
动后如果[P3.2, P3.3] ? [[0, 0],则直接跑用户程序,只会占时
50µs,可忽略不计。建议用户选择[P3.2,P3.3]不同时为[0,0]时
立即跑用户程序,跨过系统ISP监控程序。【注1】
进入
【串口模式下载】
下载用户程序到
用户程序区
【串口模式下载】:单片机连接到PC的串口,单片机处于停电
状态,点击PC端STC-ISP控制软件的【下载/编程】按钮发送
下载命令流,再给单片机上电。
软复位到用户程序区,
运行用户程序。
注意:因 [P3.0, P3.1] 作下载/仿真用(下载/仿真接口仅可用 [P3.0, P3.1] ),故建议用户将串口 1 放在
P3.6/P3.7 或 P1.6/P1.7 ,若用户不想切换,坚持使用 P3.0/P3.1 工作或作为串口 1 进行通信,则务必在
下载程序时,在软件上勾选“下次冷启动时,P3.2/P3.3 为 0/0 时才可以下载程序”。
【注 1】:STC15,STC8 系列及以后新出的芯片的烧录保护引脚为 P3.2/P3.3,之前早期芯片的烧录保护
引脚为 P1.0/P1.1。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 247 -
STC8G 系列技术手册
5.11.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
ISP 下载流程图(硬件/软件模拟 USB+串口模式)
上电复位/外部按键复位/
看门狗复位/低压复位
单片机运行
系统ISP监控程序
检测有无合法命令流,占时几十毫秒到几百毫秒。
如无合法下载命令流,则立即跑用户程序
是
否
否
P3.0/P3.1是否有
连接到USB口?
P3.2是否有
连接到Gnd?
如果已设置[P3.2,P3.3]=[0, 0]才判断是否下载用户程序,则冷启
动后如果[P3.2, P3.3] ? [[0, 0],则直接跑用户程序,只会占时
50µs,可忽略不计。建议用户选择[P3.2,P3.3]不同时为[0,0]时
立即跑用户程序,跨过系统ISP监控程序。【注1】
P3.0是否有合法
串口下载命令流?
是
是
进入
【USB模式下载】
否
【串口模式下载】:单片机连接到PC的串口,单片机处于停电
状态,点击PC端STC-ISP控制软件的【下载/编程】按钮发送
下载命令流,再给单片机上电。
进入
【串口模式下载】
下载用户程序到
用户程序区
【USB模式下载】:单片机的P3.2连接到Gnd,单片机连接到PC
的USB口,给单片机上电,等STC-ISP控制软件中自动识别出
“STC-USB Writer”设备后,再点击PC端STC-ISP控制软件的
【下载/编程】按钮发送下载命令流进行ISP下载
软复位到用户程序区,
运行用户程序。
注意:因 [P3.0, P3.1] 作下载/仿真用(下载/仿真接口仅可用 [P3.0, P3.1] ),故建议用户将串口 1 放在
P3.6/P3.7 或 P1.6/P1.7 ,若用户不想切换,坚持使用 P3.0/P3.1 工作或作为串口 1 进行通信,则务必在
下载程序时,在软件上勾选“下次冷启动时,P3.2/P3.3 为 0/0 时才可以下载程序”。
【注 1】:STC15,STC8 系列及以后新出的芯片的烧录保护引脚为 P3.2/P3.3,之前早期芯片的烧录保护
引脚为 P1.0/P1.1。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 248 -
STC8G 系列技术手册
5.11.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
使用 USB-Link1D 工具下载,支持在线和脱机下载
连接
电脑/PC
P5.2
P0.4
P0.3
P0.2
P0.1
P0.0
P4.6
P4.5
P2.7
P2.6
P2.5
P2.4
48
47
46
45
44
43
42
41
40
39
38
37
USB Link1D工具
(人民币35元)
P5.3
P0.5
P0.6
P0.7
P1.0
P1.1
P4.7
P1.2
P1.3
P1.4
P1.5
P1.6
STC8G2K64S4
P2.3
P2.2
P2.1
P2.0
P4.4
P4.3
P4.2
P4.1
P3.7
P3.6
P3.5
P5.1
36
35
34
33
32
31
30
29
28
27
26
25
13
14
15
16
17
18
19
20
21
22
23
24
P1.7
P5.4
Vcc
VRef
Gnd
P4.0
P3.0
P3.1
P3.2
P3.3
P3.4
P5.0
1
2
3
4
5
6
7
8
9
10
11
12
Vcc
10u
以上
0.1u
ISP 下载步骤:
1、 按照如图所示的连接方式将 USB-Link1D 和目标芯片连接
2、 点击 AIapp-ISP 下载软件中的“下载/编程”按钮
3、 开始 ISP 下载
注意:若是使用 USB-Link1D 给目标系统供电,目标系统的总电流不能大于 200mA,否则会导致下载失
败。
注意:目前有发现使用 USB 线供电进行 ISP 下载时,由于 USB 线太细,在 USB 线上的压降过大,导
致 ISP 下载时供电不足,所以请在使用 USB 线供电进行 ISP 下载时,务必使用 USB 加强线。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 249 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
如果用户板上的串口接收脚 P3.0 口上有强上拉或者强下拉(比如处于接收状态的 RS485),此时使用
USB-Link1D 可能会无法下载,用户可将 USB-Link1D 工具上的 30mA 的保险丝 R6 用 0 欧姆电阻替换(实
际测量 30mA 的保险丝的静态电阻值为 10~15 欧姆)
上面 RMB35 是配上面全部的线,是亏本补助大家的
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 250 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
USB-Link1D 工具接口说明
USB-Link1D 工具是 STC-USB Link1 的升级版、功能在 STC-USB Link1 的基础上增加了两个 STC-CDC
串口,可作为通用 USB 转串口使用。
工具 STC-USB Link1 的使用注意事项请参考附录章节
工具正面图
User-Vcc,外部给工具供电
S-RxD,第2组STC-CDC串口发送脚,
接用户单片机串口的接收脚
S-TxD,第2组STC-CDC串口接收脚,
接用户单片机串口的发送脚
S-Vcc,本工具给外部系统供电
S-P3.0,Link1硬件仿真数据线、
Link1进行ISP下载的串口发送脚、
第1组STC-CDC串口发送脚
S-P3.1,Link1硬件仿真时钟线、
Link1进行ISP下载的串口接收脚、
第1组STC-CDC串口接收脚
工具反面图
Gnd,地线
管脚编号
接口名称
接口功能
1
User-Vcc
2
S-RxD
第 2 组 STC-CDC 串口的发送脚,连接用户单片机串口的接收脚
3
S-TxD
第 2 组 STC-CDC 串口的接收脚,连接用户单片机串口的发送脚
4
S-Vcc
仅从本工具给用户系统供电
仅由用户系统给本工具供电
使用 Link1D 进行 ISP 下载时的串口发送脚,连接目标单片机的 P3.0
5
S-P3.0
使用 Link1D 进行 SWD 硬件仿真时的数据脚,连接目标单片机的 SWDDAT
第 1 组 STC-CDC 串口的发送脚,连接用户单片机串口的接收脚
使用 Link1D 进行 ISP 下载时的串口接收脚,连接目标单片机的 P3.1
6
S-P3.1
使用 Link1D 进行 SWD 硬件仿真时的时钟脚,连接目标单片机的 SWDCLK
第 1 组 STC-CDC 串口的接收脚,连接用户单片机串口的发送脚
7
Gnd
地线
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 251 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
5.11.4 软件模拟 USB 直接 ISP 下载,建议尝试,不支持仿真(5V 系统)
Vin
如需要直接连接USB进行下载,请务必在PCB上预
留此线路。按住此按钮然后连接USB,可进行ISP下
载,若连接USB时没有按住此按钮,则不会进入
ISP,而是直接运行用户代码
系统电源
(可从USB取电)
Vin
Power On
Vcc
22u
USB+5V
DD+
Vcc
104
1
2
3
4
5
6
7
8
9
10
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P5.4
VCC
P5.5
GND
P1.1
P1.0
P3.7
P3.6
P3.5
P3.4
P3.3
P3.2
P3.1
P3.0
20
19
18
17
16
15
14
13
12
11
1
2
3
4
VBUS
D-/DM
D+/DP
GND
10K
USB-TypeA
300R
P3.0
P3.1
USB+5V
5.1K
5.1K
33R
STC8G1K08
1N4729-3.6V
稳压保护二极管
RMB0.03元
22u独石电容(封装0603)参考价> 8);
UartSend(*BGV);
//读取内部 1.19V 参考信号源的高字节
//读取内部 1.19V 参考信号源的低字节
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
BGV
DATA
DATA
8EH
0EFH
BUSY
BIT
20H.0
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART_ISR
ORG
0100H
JNB
CLR
CLR
TI,CHKRI
TI
BUSY
UART_ISR:
CHKRI:
JNB
CLR
UARTISR_EXIT:
RETI
RI,UARTISR_EXIT
RI
UART_INIT:
MOV
MOV
MOV
MOV
SCON,#50H
TMOD,#00H
TL1,#0E8H
TH1,#0FFH
;65536-11059200/115200/4=0FFE8H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 382 -
STC8G 系列技术手册
官方网站: www.STCAI.com
SETB
MOV
CLR
RET
TR1
AUXR,#40H
BUSY
JB
SETB
MOV
RET
BUSY,$
BUSY
SBUF,A
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
SETB
SETB
UART_INIT
ES
EA
MOV
MOV
LCALL
INC
MOV
LCALL
R0,#BGV
A,@R0
UART_SEND
R0
A,@R0
UART_SEND
JMP
LOOP
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART_SEND:
MAIN:
;读取内部 1.19V 参考信号源的高字节
;读取内部 1.19V 参考信号源的低字节
LOOP:
END
7.3.3
读取全球唯一 ID 号 (从 Flash 程序存储器(ROM)中读取)
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
AUXR
=
0x8e;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 383 -
STC8G 系列技术手册
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
bit
char
busy;
*ID;
官方网站: www.STCAI.com
=
=
=
=
=
=
=
=
=
=
=
=
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void UartIsr() interrupt 4
{
if (TI)
{
TI = 0;
busy = 0;
}
if (RI)
{
RI = 0;
}
}
void UartInit()
{
SCON = 0x50;
TMOD = 0x00;
TL1 = BRT;
TH1 = BRT >> 8;
TR1 = 1;
AUXR = 0x40;
busy = 0;
}
void UartSend(char dat)
{
while (busy);
busy = 1;
SBUF = dat;
}
void main()
{
char i;
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 384 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
ID = (char code *)0x1ff9;
UartInit();
ES = 1;
EA = 1;
// STC8G1K08
for (i=0; i> 8;
TR1 = 1;
AUXR = 0x40;
busy = 0;
}
void UartSend(char dat)
{
while (busy);
busy = 1;
SBUF = dat;
}
void main()
{
char i;
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 387 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
ID = (char idata *)0xf1;
UartInit();
ES = 1;
EA = 1;
for (i=0; i> 8;
TR1 = 1;
AUXR = 0x40;
busy = 0;
}
void UartSend(char dat)
{
while (busy);
busy = 1;
SBUF = dat;
}
void main()
{
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 390 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
F32K = (int code *)0x1ff5;
UartInit();
ES = 1;
EA = 1;
// STC8G1K08
UartSend(*F32K >> 8);
UartSend(*F32K);
//读取 32K 频率的高字节
//读取 32K 频率的低字节
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
F32K
DATA
EQU
8EH
01FF5H
BUSY
BIT
20H.0
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART_ISR
ORG
0100H
JNB
CLR
CLR
TI,CHKRI
TI
BUSY
JNB
RI,UARTISR_EXIT
; STC8G1K08
UART_ISR:
CHKRI:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 391 -
STC8G 系列技术手册
官方网站: www.STCAI.com
CLR
UARTISR_EXIT:
RETI
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
RI
UART_INIT:
MOV
MOV
MOV
MOV
SETB
MOV
CLR
RET
SCON,#50H
TMOD,#00H
TL1,#0E8H
TH1,#0FFH
TR1
AUXR,#40H
BUSY
JB
SETB
MOV
RET
BUSY,$
BUSY
SBUF,A
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
SETB
SETB
UART_INIT
ES
EA
MOV
CLR
MOVC
LCALL
INC
CLR
MOVC
LCALL
DPTR,#F32K
A
A,@A+DPTR
UART_SEND
DPTR
A
A,@A+DPTR
UART_SEND
JMP
LOOP
;65536-11059200/115200/4=0FFE8H
UART_SEND:
MAIN:
;读取 32K 频率的高字节
;读取 32K 频率的低字节
LOOP:
END
7.3.6
读取 32K 掉电唤醒定时器的频率 (从 RAM 中读取)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 392 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
AUXR
=
0x8e;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
int
busy;
*F32K;
void UartIsr() interrupt 4
{
if (TI)
{
TI = 0;
busy = 0;
}
if (RI)
{
RI = 0;
}
}
void UartInit()
{
SCON = 0x50;
TMOD = 0x00;
TL1 = BRT;
TH1 = BRT >> 8;
TR1 = 1;
AUXR = 0x40;
busy = 0;
}
void UartSend(char dat)
{
while (busy);
busy = 1;
SBUF = dat;
}
void main()
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 393 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
F32K = (int idata *)0xf8;
UartInit();
ES = 1;
EA = 1;
//读取 32K 频率的高字节
//读取 32K 频率的低字节
UartSend(*F32K >> 8);
UartSend(*F32K);
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
F32K
DATA
DATA
8EH
0F8H
BUSY
BIT
20H.0
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART_ISR
ORG
0100H
JNB
CLR
CLR
TI,CHKRI
TI
BUSY
UART_ISR:
CHKRI:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 394 -
STC8G 系列技术手册
官方网站: www.STCAI.com
JNB
CLR
UARTISR_EXIT:
RETI
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
RI,UARTISR_EXIT
RI
UART_INIT:
MOV
MOV
MOV
MOV
SETB
MOV
CLR
RET
SCON,#50H
TMOD,#00H
TL1,#0E8H
TH1,#0FFH
TR1
AUXR,#40H
BUSY
JB
SETB
MOV
RET
BUSY,$
BUSY
SBUF,A
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
SETB
SETB
UART_INIT
ES
EA
MOV
MOV
LCALL
INC
MOV
LCALL
R0,#F32K
A,@R0
UART_SEND
R0
A,@R0
UART_SEND
JMP
LOOP
;65536-11059200/115200/4=0FFE8H
UART_SEND:
MAIN:
;读取 32K 频率的高字节
;读取 32K 频率的低字节
LOOP:
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 395 -
STC8G 系列技术手册
7.3.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
用户自定义内部 IRC 频率 (从 Flash 程序存储器(ROM)中
读取)
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
CLKSEL
CLKDIV
(*(unsigned char volatile xdata *)0xfe00)
(*(unsigned char volatile xdata *)0xfe01)
//下表为 STC8G1K08 的参数列表
#define
ID_ROMADDR
#define
VREF_ROMADDR
#define
F32K_ROMADDR
#define
T22M_ROMADDR
#define
T24M_ROMADDR
#define
T20M_ROMADDR
#define
T27M_ROMADDR
#define
T30M_ROMADDR
#define
T33M_ROMADDR
#define
T35M_ROMADDR
#define
T36M_ROMADDR
#define
VRT20M_ROMADDR
#define
VRT35M_ROMADDR
sfr
sfr
sfr
sfr
P_SW2
IRCBAND
IRTRIM
VRTRIM
=
=
=
=
0xba;
0x9d;
0x9f;
0xa6;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
((unsigned char code *)0x1ff9)
(*(unsigned int code *)0x1ff7)
(*(unsigned int code *)0x1ff5)
(*(unsigned char code *)0x1ff4)
(*(unsigned char code *)0x1ff3)
(*(unsigned char code *)0x1ff2)
(*(unsigned char code *)0x1ff1)
(*(unsigned char code *)0x1ff0)
(*(unsigned char code *)0x1fef)
(*(unsigned char code *)0x1fee)
(*(unsigned char code *)0x1fed)
(*(unsigned char code *)0x1fea)
(*(unsigned char code *)0x1fe9)
//22.1184MHz
//24MHz
//20MHz
//27MHz
//30MHz
//33.1776MHz
//35MHz
//36.864MHz
//VRTRIM_20M
//VRTRIM_35M
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 396 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
//
//
//
//
//
//
//选择 20MHz
P_SW2 = 0x80;
CLKDIV = 0x04;
IRTRIM = T20M_ROMADDR;
VRTRIM = VRT20M_ROMADDR;
IRCBAND = 0x00;
CLKDIV = 0x00;
//
//
//
//
//
//
//
//选择 22.1184MHz
P_SW2 = 0x80;
CLKDIV = 0x04;
IRTRIM = T22M_ROMADDR;
VRTRIM = VRT20M_ROMADDR;
IRCBAND = 0x00;
CLKDIV = 0x00;
//选择 24MHz
P_SW2 = 0x80;
CLKDIV = 0x04;
IRTRIM = T24M_ROMADDR;
VRTRIM = VRT20M_ROMADDR;
IRCBAND = 0x00;
CLKDIV = 0x00;
//
//
//
//
//
//
//
//选择 27MHz
P_SW2 = 0x80;
CLKDIV = 0x04;
IRTRIM = T27M_ROMADDR;
VRTRIM = VRT35M_ROMADDR;
IRCBAND = 0x01;
CLKDIV = 0x00;
//
//
//
//
//
//
//
//选择 30MHz
P_SW2 = 0x80;
CLKDIV = 0x04;
IRTRIM = T30M_ROMADDR;
VRTRIM = VRT35M_ROMADDR;
IRCBAND = 0x01;
CLKDIV = 0x00;
//
//
//
//
//
//
//
//选择 33.1776MHz
P_SW2 = 0x80;
CLKDIV = 0x04;
IRTRIM = T33M_ROMADDR;
VRTRIM = VRT35M_ROMADDR;
IRCBAND = 0x01;
CLKDIV = 0x00;
//
//
//
//
//
//
//选择 35MHz
P_SW2 = 0x80;
CLKDIV = 0x04;
IRTRIM = T35M_ROMADDR;
VRTRIM = VRT35M_ROMADDR;
IRCBAND = 0x01;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 397 -
STC8G 系列技术手册
//
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
CLKDIV = 0x00;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
;下表为 STC8G1K08 的参数列表
ID_ROMADDR
EQU
VREF_ROMADDR
EQU
F32K_ROMADDR
EQU
T22M_ROMADDR
EQU
T24M_ROMADDR
EQU
T20M_ROMADDR
EQU
T27M_ROMADDR
EQU
T30M_ROMADDR
EQU
T33M_ROMADDR
EQU
T35M_ROMADDR
EQU
T36M_ROMADDR
EQU
VRT20M_ROMADDR
EQU
VRT35M_ROMADDR
EQU
01FF9H
01FF7H
01FF5H
01FF4H
01FF3H
01FF2H
01FF1H
01FF0H
01FEFH
01FEEH
01FEDH
01FEAH
01FE9H
P_SW2
CLKSEL
CLKDIV
DATA
EQU
EQU
0BAH
0FE00H
0FE01H
IRCBAND
IRTRIM
VRTRIM
DATA
DATA
DATA
09DH
09FH
0A6H
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
093H
094H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
//22.1184MHz
//24MHz
//20MHz
//27MHz
//30MHz
//33.1776MHz
//35MHz
//36.864MHz
//VRTRIM_20M
//VRTRIM_35M
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 398 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
MOV
MOV
MOV
MOV
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;选择 20MHz
MOV
MOV
MOV
MOV
CLR
MOVC
MOV
MOV
CLR
MOVC
MOV
MOV
MOV
MOV
MOV
P_SW2,#80H
A,#4
DPTR,#CLKDIV
DPTR,#T20M_ROMADDR
A
A,@A+DPTR
IRTRIM,A
DPTR,#VRT20M_ROMADDR
A
A,@A+DPTR
VRTRIM,A
IRCBAND,#00H
A,#0
DPTR,#CLKDIV
P_SW2,#00H
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;选择 22.1184MHz
MOV
P_SW2,#80H
MOV
A,#4
MOV
DPTR,#CLKDIV
MOV
DPTR,#T22M_ROMADDR
CLR
A
MOVC
A,@A+DPTR
MOV
IRTRIM,A
MOV
DPTR,#VRT20M_ROMADDR
CLR
A
MOVC
A,@A+DPTR
MOV
VRTRIM,A
MOV
IRCBAND,#00H
MOV
A,#0
MOV
DPTR,#CLKDIV
MOV
P_SW2,#00H
;
;
;
;选择 24MHz
MOV
MOV
MOV
MOV
CLR
MOVC
MOV
MOV
CLR
MOVC
MOV
MOV
MOV
MOV
MOV
P_SW2,#80H
A,#4
DPTR,#CLKDIV
DPTR,#T24M_ROMADDR
A
A,@A+DPTR
IRTRIM,A
DPTR,#VRT20M_ROMADDR
A
A,@A+DPTR
VRTRIM,A
IRCBAND,#00H
A,#0
DPTR,#CLKDIV
P_SW2,#00H
;选择 27MHz
MOV
MOV
P_SW2,#80H
A,#4
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
研发顾问:13922829991
选型顾问: 13922805190
技术交流及选型论坛:www.STCAIMCU.com - 399 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
;
;
;
;
;
;
;
;
;
;
;
;
;
MOV
MOV
CLR
MOVC
MOV
MOV
CLR
MOVC
MOV
MOV
MOV
MOV
MOV
DPTR,#CLKDIV
DPTR,#T27M_ROMADDR
A
A,@A+DPTR
IRTRIM,A
DPTR,#VRT35M_ROMADDR
A
A,@A+DPTR
VRTRIM,A
IRCBAND,#01H
A,#0
DPTR,#CLKDIV
P_SW2,#00H
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;选择 30MHz
MOV
MOV
MOV
MOV
CLR
MOVC
MOV
MOV
CLR
MOVC
MOV
MOV
MOV
MOV
MOV
P_SW2,#80H
A,#4
DPTR,#CLKDIV
DPTR,#T30M_ROMADDR
A
A,@A+DPTR
IRTRIM,A
DPTR,#VRT35M_ROMADDR
A
A,@A+DPTR
VRTRIM,A
IRCBAND,#01H
A,#0
DPTR,#CLKDIV
P_SW2,#00H
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;选择 33.1776MHz
MOV
P_SW2,#80H
MOV
A,#4
MOV
DPTR,#CLKDIV
MOV
DPTR,#T33M_ROMADDR
CLR
A
MOVC
A,@A+DPTR
MOV
IRTRIM,A
MOV
DPTR,#VRT35M_ROMADDR
CLR
A
MOVC
A,@A+DPTR
MOV
VRTRIM,A
MOV
IRCBAND,#01H
MOV
A,#0
MOV
DPTR,#CLKDIV
MOV
P_SW2,#00H
;
;
;
;
;
;
;
;
;
;
;
;选择 35MHz
MOV
MOV
MOV
MOV
CLR
MOVC
MOV
MOV
CLR
MOVC
研发顾问:13922829991
选型顾问: 13922805190
P_SW2,#80H
A,#4
DPTR,#CLKDIV
DPTR,#T35M_ROMADDR
A
A,@A+DPTR
IRTRIM,A
DPTR,#VRT35M_ROMADDR
A
A,@A+DPTR
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 400 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
;
;
;
;
;
MOV
MOV
MOV
MOV
MOV
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;选择 36.864MHz
MOV
P_SW2,#80H
MOV
A,#4
MOV
DPTR,#CLKDIV
MOV
DPTR,#T36M_ROMADDR
CLR
A
MOVC
A,@A+DPTR
MOV
IRTRIM,A
MOV
DPTR,#VRT35M_ROMADDR
CLR
A
MOVC
A,@A+DPTR
MOV
VRTRIM,A
MOV
IRCBAND,#01H
MOV
A,#0
MOV
DPTR,#CLKDIV
MOV
P_SW2,#00H
研发顾问:13922829991
选型顾问: 13922805190
VRTRIM,A
IRCBAND,#01H
A,#0
DPTR,#CLKDIV
P_SW2,#00H
JMP
$
END
7.3.8
用户自定义内部 IRC 频率 (从 RAM 中读取)
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
CLKDIV
(*(unsigned char volatile xdata *)0xfe01)
sfr
sfr
P_SW2
IRTRIM
=
=
0xba;
0x9f;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
char
char
*IRC22M;
*IRC24M;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 401 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
IRC22M = (char idata *)0xfa;
IRC24M = (char idata *) 0xfb;
IRTRIM = *IRC22M;
IRTRIM = *IRC24M;
P_SW2 = 0x80;
CLKDIV = 0;
P_SW2 = 0x00;
//装载 22.1184MHz 的 IRC 参数
//装载 24MHz 的 IRC 参数
//主时钟不预分频
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW2
CLKDIV
DATA
EQU
0BAH
0FE01H
IRTRIM
DATA
09FH
IRC22M
IRC24M
DATA
DATA
0FAH
0FBH
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
093H
094H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
SP, #5FH
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 402 -
STC8G 系列技术手册
;
;
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
R0,#IRC22M
IRTRIM,@R0
R0,#IRC24M
IRTRIM,@R0
MOV
MOV
MOV
MOVX
MOV
P_SW2,#80H
A,#0
DPTR,#CLKDIV
@DPTR,A
P_SW2,#00H
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;装载 22.1184MHz 的 IRC 参数
;装载 24MHz 的 IRC 参数
;主时钟不预分频
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 403 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
8 特殊功能寄存器
8.1 STC8G1K08 系列
0/8
F8H
F0H
1/9
2/A
3/B
4/C
CH
CCAP0H
CCAP1H
CCAP2H
PCA_PWM0
PCA_PWM1
PCA_PWM2
CCAP0L
CCAP1L
CCAP2L
DPS
DPL1
CCAPM1
CCAPM2
B
E8H
CL
E0H
ACC
D8H
CCON
D0H
PSW
C8H
P5
C0H
CMOD
CCAPM0
P5M1
P5M0
WDT_CONTR
IAP_DATA
B8H
IP
SADEN
P_SW2
B0H
P3
P3M1
P3M0
A8H
IE
SADDR
WKTCL
A0H
IAP_ADDRH
5/D
6/E
7/F
RSTCFG
IAP_TPS
AUXINTIF
DPH1
CMPCR1
CMPCR2
ADCCFG
T2H
T2L
SPSTAT
SPCTL
SPDAT
IAP_ADDRL
IAP_CMD
IAP_TRIG
IAP_CONTR
ADC_CONTR
ADC_RES
ADC_RESL
IP2
IP2H
IPH
TA
IE2
IRCBAND
LIRTRIM
IRTRIM
TH1
AUXR
INTCLKO
WKTCH
P_SW1
98H
SCON
SBUF
S2CON
90H
P1
P1M1
P1M0
88H
TCON
TMOD
TL0
TL1
SP
DPL
DPH
80H
S2BUF
TH0
PCON
可位寻址
不可位寻址
注意:寄存器地址能够被 8 整除的才可进行位寻址,不能被 8 整除的则不可位寻址
0/8
FEA8H
1/9
2/A
3/B
4/C
5/D
6/E
7/F
I2CSLCR
I2CSLST
I2CSLADR
I2CTxD
I2CRxD
ADCTIM
FEA0H
TM2PS
FE88H I2CMSAUX
FE80H
I2CCFG
I2CMSCR
I2CMSST
FE30H
P1IE
P3IE
FE28H
P1DR
P3DR
P5DR
FE20H
P1SR
P3SR
P5SR
FE18H
P1NCS
P3NCS
P5NCS
FE10H
P1PU
P3PU
P5PU
FE00H
CLKSEL
CLKDIV
HIRCCR
XOSCCR
IRC32KCR
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
MCLKOCR
IRCDB
技术交流及选型论坛:www.STCAIMCU.com - 404 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
8.2 STC8G1K08-8Pin 系列
0/8
1/9
2/A
3/B
4/C
5/D
6/E
F8H
F0H
B
IAP_TPS
E8H
E0H
7/F
RSTCFG
AUXINTIF
ACC
DPS
DPL1
DPH1
D8H
D0H
PSW
C8H
P5
C0H
P5M1
P5M0
WDT_CONTR
IAP_DATA
B8H
IP
SADEN
P_SW2
B0H
P3
P3M1
P3M0
A8H
IE
SADDR
WKTCL
A0H
98H
IAP_ADDRH
IAP_ADDRL
SPSTAT
SPCTL
SPDAT
IAP_CMD
IAP_TRIG
IAP_CONTR
IP2
IP2H
IPH
TA
IE2
IRCBAND
LIRTRIM
IRTRIM
TH1
AUXR
INTCLKO
WKTCH
P_SW1
SCON
SBUF
TCON
TMOD
TL0
TL1
SP
DPL
DPH
90H
88H
80H
TH0
PCON
可位寻址
不可位寻址
注意:寄存器地址能够被 8 整除的才可进行位寻址,不能被 8 整除的则不可位寻址
FCF0H
0/8
1/9
2/A
3/B
4/C
5/D
6/E
7/F
MD3
MD2
MD1
MD0
MD5
MD4
ARCON
OPCON
I2CMSCR
I2CMSST
I2CSLCR
I2CSLST
I2CSLADR
I2CTxD
I2CRxD
FE88H I2CMSAUX
FE80H
I2CCFG
FE28H
P3DR
P5DR
FE20H
P3SR
P5SR
FE18H
P3NCS
P5NCS
FE10H
P3PU
P5PU
FE00H
CLKSEL
CLKDIV
HIRCCR
IRC32KCR
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
MCLKOCR
IRCDB
技术交流及选型论坛:www.STCAIMCU.com - 405 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
8.3 STC8G1K08A 系列
0/8
F8H
F0H
1/9
2/A
3/B
4/C
CH
CCAP0H
CCAP1H
CCAP2H
PCA_PWM0
PCA_PWM1
PCA_PWM2
CCAP0L
CCAP1L
CCAP2L
DPS
DPL1
CCAPM1
CCAPM2
B
E8H
CL
E0H
ACC
D8H
CCON
D0H
PSW
C8H
P5
C0H
CMOD
CCAPM0
P5M1
P5M0
WDT_CONTR
IAP_DATA
B8H
IP
SADEN
P_SW2
B0H
P3
P3M1
P3M0
A8H
IE
SADDR
WKTCL
A0H
98H
IAP_ADDRH
5/D
6/E
7/F
RSTCFG
IAP_TPS
AUXINTIF
DPH1
ADCCFG
SPSTAT
SPCTL
SPDAT
IAP_ADDRL
IAP_CMD
IAP_TRIG
IAP_CONTR
ADC_CONTR
ADC_RES
ADC_RESL
IP2
IP2H
IPH
TA
IE2
IRCBAND
LIRTRIM
IRTRIM
TH1
AUXR
INTCLKO
WKTCH
P_SW1
SCON
SBUF
TCON
TMOD
TL0
TL1
SP
DPL
DPH
90H
88H
80H
TH0
PCON
可位寻址
不可位寻址
注意:寄存器地址能够被 8 整除的才可进行位寻址,不能被 8 整除的则不可位寻址
0/8
1/9
2/A
3/B
4/C
5/D
6/E
7/F
FCF0H
MD3
MD2
MD1
MD0
MD5
MD4
ARCON
OPCON
FEA8H
ADCTIM
I2CMSCR
I2CMSST
I2CSLCR
I2CSLST
I2CSLADR
I2CTxD
I2CRxD
FE88H I2CMSAUX
FE80H
I2CCFG
FE30H
P3IE
P5IE
FE28H
P3DR
P5DR
FE20H
P3SR
P5SR
FE18H
P3NCS
P5NCS
FE10H
P3PU
P5PU
FE00H
CLKSEL
CLKDIV
HIRCCR
IRC32KCR
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
MCLKOCR
IRCDB
技术交流及选型论坛:www.STCAIMCU.com - 406 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
8.4 STC8G2K64S4 系列
0/8
F8H
F0H
B
E8H
1/9
2/A
3/B
4/C
CH
CCAP0H
CCAP1H
CCAP2H
PWMSET
PCA_PWM0
PCA_PWM1
PCA_PWM2
CL
CCAP0L
CCAP1L
CCAP2L
DPS
DPL1
5/D
6/E
7/F
PWMCFG45
RSTCFG
PWMCFG01
PWMCFG23
IP3H
AUXINTIF
CMPCR1
CMPCR2
ADCCFG
IP3
TL3
T2H
T2L
SPSTAT
SPCTL
SPDAT
IAP_ADDRL
IAP_CMD
IAP_TRIG
IAP_CONTR
ADC_CONTR
ADC_RES
ADC_RESL
IAP_TPS
E0H
ACC
D8H
CCON
CMOD
CCAPM0
CCAPM1
CCAPM2
D0H
PSW
T4T3M
TH4
TL4
TH3
C8H
P5
P5M1
P5M0
C0H
P4
WDT_CONTR
IAP_DATA
B8H
IP
SADEN
P_SW2
B0H
P3
P3M1
P3M0
P4M1
P4M0
IP2
IP2H
IPH
A8H
IE
SADDR
WKTCL
WKTCH
S3CON
S3BUF
TA
IE2
A0H
P2
BUS_SPEED
P_SW1
98H
SCON
SBUF
S2CON
S2BUF
IRCBAND
LIRTRIM
IRTRIM
90H
P1
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
88H
TCON
TMOD
TL0
TL1
TH0
TH1
AUXR
80H
P0
SP
DPL
DPH
S4CON
S4BUF
IAP_ADDRH
DPH1
INTCLKO
PCON
可位寻址
不可位寻址
注意:寄存器地址能够被 8 整除的才可进行位寻址,不能被 8 整除的则不可位寻址
0/8
1/9
2/A
3/B
4/C
5/D
6/E
7/F
MD3
MD2
MD1
MD0
MD5
MD4
ARCON
OPCON
FFE8H PWM27T1H
PWM27T1L
PWM27T2H
PWM27T2L
PWM27CR
PWM27HLD
FFE0H PWM26T1H
PWM26T1L
PWM26T2H
PWM26T2L
PWM26CR
PWM26HLD
FFD8H PWM25T1H
PWM25T1L
PWM25T2H
PWM25T2L
PWM25CR
PWM25HLD
FFD0H PWM24T1H
PWM24T1L
PWM24T2H
PWM24T2L
PWM24CR
PWM24HLD
FFC8H PWM23T1H
PWM23T1L
PWM23T2H
PWM23T2L
PWM31CR
PWM23HLD
FFC0H PWM22T1H
PWM22T1L
PWM22T2H
PWM22T2L
PWM22CR
PWM22HLD
FFB8H PWM21T1H
PWM21T1L
PWM21T2H
PWM21T2L
PWM21CR
PWM21HLD
FFB0H PWM20T1H
PWM20T1L
PWM20T2H
PWM20T2L
PWM20CR
PWM20HLD
PWM2CL
PWM2CKS
PWM2TADCH
PWM2TADCL
PWM2IF
FF98H PWM17T1H
PWM17T1L
PWM17T2H
PWM17T2L
PWM17CR
PWM17HLD
FF90H PWM16T1H
PWM16T1L
PWM16T2H
PWM16T2L
PWM16CR
PWM16HLD
FF88H PWM15T1H
PWM15T1L
PWM15T2H
PWM15T2L
PWM15CR
PWM15HLD
FF80H PWM14T1H
PWM14T1L
PWM14T2H
PWM14T2L
PWM14CR
PWM14HLD
FF78H PWM13T1H
PWM13T1L
PWM13T2H
PWM13T2L
PWM31CR
PWM13HLD
FF70H PWM12T1H
PWM12T1L
PWM12T2H
PWM12T2L
PWM12CR
PWM12HLD
FF68H PWM11T1H
PWM11T1L
PWM11T2H
PWM11T2L
PWM11CR
PWM11HLD
FF60H PWM10T1H
PWM10T1L
PWM10T2H
PWM10T2L
PWM10CR
PWM10HLD
PWM1CL
PWM1CKS
PWM07T1L
PWM07T2H
FCF0H
FFA0H
FF50H
PWM2CH
PWM1CH
FF48H PWM07T1H
PWM1IF
PWM07T2L
PWM07CR
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
PWM2FDCR
PWM1FDCR
PWM07HLD
技术交流及选型论坛:www.STCAIMCU.com - 407 -
STC8G 系列技术手册
0/8
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1/9
2/A
3/B
4/C
5/D
FF40H PWM06T1H
PWM06T1L
PWM06T2H
PWM06T2L
PWM06CR
PWM06HLD
FF38H PWM05T1H
PWM05T1L
PWM05T2H
PWM05T2L
PWM05CR
PWM05HLD
FF30H PWM04T1H
PWM04T1L
PWM04T2H
PWM04T2L
PWM04CR
PWM04HLD
FF28H PWM03T1H
PWM03T1L
PWM03T2H
PWM03T2L
PWM31CR
PWM03HLD
FF20H PWM02T1H
PWM02T1L
PWM02T2H
PWM02T2L
PWM02CR
PWM02HLD
FF18H PWM01T1H
PWM01T1L
PWM01T2H
PWM01T2L
PWM01CR
PWM01HLD
FF10H PWM00T1H
PWM00T1L
PWM00T2H
PWM00T2L
PWM00CR
PWM00HLD
PWM0CL
PWM0CKS
PWM0TADCH
PWM0TADCL
PWM0IF
PWM0FDCR
TM2PS
TM3PS
TM4PS
I2CMSST
I2CSLCR
I2CSLST
I2CSLADR
I2CTxD
FF00H
PWM0CH
FEA8H
ADCTIM
FEA0H
6/E
7/F
FE88H I2CMSAUX
FE80H
I2CCFG
I2CMSCR
FE30H
P0IE
P1IE
FE28H
P0DR
P1DR
P2DR
P3DR
P4DR
P5DR
FE20H
P0SR
P1SR
P2SR
P3SR
P4SR
P5SR
FE18H
P0NCS
P1NCS
P2NCS
P3NCS
P4NCS
P5NCS
FE10H
P0PU
P1PU
P2PU
P3PU
P4PU
P5PU
FE00H
CLKSEL
CLKDIV
HIRCCR
XOSCCR
IRC32KCR
MCLKOCR
FCE8H PWM57T1H
PWM57T1L
PWM57T2H
PWM57T2L
PWM57CR
PWM57HLD
FCE0H PWM56T1H
PWM56T1L
PWM56T2H
PWM56T2L
PWM56CR
PWM56HLD
FCD8H PWM55T1H
PWM55T1L
PWM55T2H
PWM55T2L
PWM55CR
PWM55HLD
FCD0H PWM54T1H
PWM54T1L
PWM54T2H
PWM54T2L
PWM54CR
PWM54HLD
FCC8H PWM53T1H
PWM53T1L
PWM53T2H
PWM53T2L
PWM31CR
PWM53HLD
FCC0H PWM52T1H
PWM52T1L
PWM52T2H
PWM52T2L
PWM52CR
PWM52HLD
FCB8H PWM51T1H
PWM51T1L
PWM51T2H
PWM51T2L
PWM51CR
PWM51HLD
FCB0H PWM50T1H
PWM50T1L
PWM50T2H
PWM50T2L
PWM50CR
PWM50HLD
PWM5CL
PWM5CKS
FC98H PWM47T1H
PWM47T1L
PWM47T2H
PWM47T2L
PWM47CR
PWM47HLD
FC90H PWM46T1H
PWM46T1L
PWM46T2H
PWM46T2L
PWM46CR
PWM46HLD
FC88H PWM45T1H
PWM45T1L
PWM45T2H
PWM45T2L
PWM45CR
PWM45HLD
FC80H PWM44T1H
PWM44T1L
PWM44T2H
PWM44T2L
PWM44CR
PWM44HLD
FC78H PWM43T1H
PWM43T1L
PWM43T2H
PWM43T2L
PWM31CR
PWM43HLD
FC70H PWM42T1H
PWM42T1L
PWM42T2H
PWM42T2L
PWM42CR
PWM42HLD
FC68H PWM41T1H
PWM41T1L
PWM41T2H
PWM41T2L
PWM41CR
PWM41HLD
FC60H PWM40T1H
PWM40T1L
PWM40T2H
PWM40T2L
PWM40CR
PWM40HLD
PWM4CL
PWM4CKS
PWM4TADCH
PWM4TADCL
PWM4IF
FC48H PWM37T1H
PWM37T1L
PWM37T2H
PWM37T2L
PWM37CR
PWM37HLD
FC40H PWM36T1H
PWM36T1L
PWM36T2H
PWM36T2L
PWM36CR
PWM36HLD
FC38H PWM35T1H
PWM35T1L
PWM35T2H
PWM35T2L
PWM35CR
PWM35HLD
FC30H PWM34T1H
PWM34T1L
PWM34T2H
PWM34T2L
PWM34CR
PWM34HLD
FC28H PWM33T1H
PWM33T1L
PWM33T2H
PWM33T2L
PWM31CR
PWM33HLD
FC20H PWM32T1H
PWM32T1L
PWM32T2H
PWM32T2L
PWM32CR
PWM32HLD
FC18H PWM31T1H
PWM31T1L
PWM31T2H
PWM31T2L
PWM31CR
PWM31HLD
FCA0H
FC50H
PWM5CH
PWM4CH
PWM5IF
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
I2CRxD
IRCDB
PWM5FDCR
PWM4FDCR
技术交流及选型论坛:www.STCAIMCU.com - 408 -
STC8G 系列技术手册
0/8
FC10H PWM30T1H
FC00H
PWM3CH
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
1/9
2/A
3/B
4/C
5/D
PWM30T1L
PWM30T2H
PWM30T2L
PWM30CR
PWM30HLD
PWM3CL
PWM3CKS
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
PWM3IF
选型顾问: 13922805190
6/E
7/F
PWM3FDCR
技术交流及选型论坛:www.STCAIMCU.com - 409 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
8.5 STC8G2K64S2 系列
0/8
F8H
F0H
B
E8H
1/9
2/A
3/B
4/C
CH
CCAP0H
CCAP1H
CCAP2H
PWMSET
PCA_PWM0
PCA_PWM1
PCA_PWM2
CL
CCAP0L
CCAP1L
CCAP2L
DPS
DPL1
5/D
6/E
7/F
PWMCFG45
RSTCFG
PWMCFG01
PWMCFG23
IP3H
AUXINTIF
CMPCR1
CMPCR2
ADCCFG
IP3
TL3
T2H
T2L
SPSTAT
SPCTL
SPDAT
IAP_ADDRL
IAP_CMD
IAP_TRIG
IAP_CONTR
ADC_CONTR
ADC_RES
ADC_RESL
P4M0
IP2
IP2H
IPH
TA
IE2
IRCBAND
LIRTRIM
IRTRIM
IAP_TPS
E0H
ACC
D8H
CCON
CMOD
CCAPM0
CCAPM1
CCAPM2
D0H
PSW
T4T3M
TH4
TL4
TH3
C8H
P5
P5M1
P5M0
C0H
P4
WDT_CONTR
IAP_DATA
B8H
IP
SADEN
P_SW2
B0H
P3
P3M1
P3M0
P4M1
A8H
IE
SADDR
WKTCL
WKTCH
A0H
P2
BUS_SPEED
P_SW1
98H
SCON
SBUF
S2CON
S2BUF
90H
P1
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
88H
TCON
TMOD
TL0
TL1
TH0
TH1
AUXR
80H
P0
SP
DPL
DPH
IAP_ADDRH
DPH1
INTCLKO
PCON
可位寻址
不可位寻址
注意:寄存器地址能够被 8 整除的才可进行位寻址,不能被 8 整除的则不可位寻址
0/8
1/9
2/A
3/B
4/C
5/D
6/E
7/F
MD3
MD2
MD1
MD0
MD5
MD4
ARCON
OPCON
FFE8H PWM27T1H
PWM27T1L
PWM27T2H
PWM27T2L
PWM27CR
PWM27HLD
FFE0H PWM26T1H
PWM26T1L
PWM26T2H
PWM26T2L
PWM26CR
PWM26HLD
FFD8H PWM25T1H
PWM25T1L
PWM25T2H
PWM25T2L
PWM25CR
PWM25HLD
FFD0H PWM24T1H
PWM24T1L
PWM24T2H
PWM24T2L
PWM24CR
PWM24HLD
FFC8H PWM23T1H
PWM23T1L
PWM23T2H
PWM23T2L
PWM31CR
PWM23HLD
FFC0H PWM22T1H
PWM22T1L
PWM22T2H
PWM22T2L
PWM22CR
PWM22HLD
FFB8H PWM21T1H
PWM21T1L
PWM21T2H
PWM21T2L
PWM21CR
PWM21HLD
FFB0H PWM20T1H
PWM20T1L
PWM20T2H
PWM20T2L
PWM20CR
PWM20HLD
PWM2CL
PWM2CKS
PWM2TADCH
PWM2TADCL
PWM2IF
FF98H PWM17T1H
PWM17T1L
PWM17T2H
PWM17T2L
PWM17CR
PWM17HLD
FF90H PWM16T1H
PWM16T1L
PWM16T2H
PWM16T2L
PWM16CR
PWM16HLD
FF88H PWM15T1H
PWM15T1L
PWM15T2H
PWM15T2L
PWM15CR
PWM15HLD
FF80H PWM14T1H
PWM14T1L
PWM14T2H
PWM14T2L
PWM14CR
PWM14HLD
FF78H PWM13T1H
PWM13T1L
PWM13T2H
PWM13T2L
PWM31CR
PWM13HLD
FF70H PWM12T1H
PWM12T1L
PWM12T2H
PWM12T2L
PWM12CR
PWM12HLD
FF68H PWM11T1H
PWM11T1L
PWM11T2H
PWM11T2L
PWM11CR
PWM11HLD
FF60H PWM10T1H
PWM10T1L
PWM10T2H
PWM10T2L
PWM10CR
PWM10HLD
PWM1CL
PWM1CKS
PWM07T1L
PWM07T2H
FCF0H
FFA0H
FF50H
PWM2CH
PWM1CH
FF48H PWM07T1H
PWM1IF
PWM07T2L
PWM07CR
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
PWM2FDCR
PWM1FDCR
PWM07HLD
技术交流及选型论坛:www.STCAIMCU.com - 410 -
STC8G 系列技术手册
0/8
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1/9
2/A
3/B
4/C
5/D
FF40H PWM06T1H
PWM06T1L
PWM06T2H
PWM06T2L
PWM06CR
PWM06HLD
FF38H PWM05T1H
PWM05T1L
PWM05T2H
PWM05T2L
PWM05CR
PWM05HLD
FF30H PWM04T1H
PWM04T1L
PWM04T2H
PWM04T2L
PWM04CR
PWM04HLD
FF28H PWM03T1H
PWM03T1L
PWM03T2H
PWM03T2L
PWM31CR
PWM03HLD
FF20H PWM02T1H
PWM02T1L
PWM02T2H
PWM02T2L
PWM02CR
PWM02HLD
FF18H PWM01T1H
PWM01T1L
PWM01T2H
PWM01T2L
PWM01CR
PWM01HLD
FF10H PWM00T1H
PWM00T1L
PWM00T2H
PWM00T2L
PWM00CR
PWM00HLD
PWM0CL
PWM0CKS
PWM0TADCH
PWM0TADCL
PWM0IF
PWM0FDCR
TM2PS
TM3PS
TM4PS
I2CMSST
I2CSLCR
I2CSLST
I2CSLADR
I2CTxD
FF00H
PWM0CH
FEA8H
ADCTIM
FEA0H
6/E
7/F
FE88H I2CMSAUX
FE80H
I2CCFG
I2CMSCR
FE30H
P0IE
P1IE
FE28H
P0DR
P1DR
P2DR
P3DR
P4DR
P5DR
FE20H
P0SR
P1SR
P2SR
P3SR
P4SR
P5SR
FE18H
P0NCS
P1NCS
P2NCS
P3NCS
P4NCS
P5NCS
FE10H
P0PU
P1PU
P2PU
P3PU
P4PU
P5PU
FE00H
CLKSEL
CLKDIV
HIRCCR
XOSCCR
IRC32KCR
MCLKOCR
FCE8H PWM57T1H
PWM57T1L
PWM57T2H
PWM57T2L
PWM57CR
PWM57HLD
FCE0H PWM56T1H
PWM56T1L
PWM56T2H
PWM56T2L
PWM56CR
PWM56HLD
FCD8H PWM55T1H
PWM55T1L
PWM55T2H
PWM55T2L
PWM55CR
PWM55HLD
FCD0H PWM54T1H
PWM54T1L
PWM54T2H
PWM54T2L
PWM54CR
PWM54HLD
FCC8H PWM53T1H
PWM53T1L
PWM53T2H
PWM53T2L
PWM31CR
PWM53HLD
FCC0H PWM52T1H
PWM52T1L
PWM52T2H
PWM52T2L
PWM52CR
PWM52HLD
FCB8H PWM51T1H
PWM51T1L
PWM51T2H
PWM51T2L
PWM51CR
PWM51HLD
FCB0H PWM50T1H
PWM50T1L
PWM50T2H
PWM50T2L
PWM50CR
PWM50HLD
PWM5CL
PWM5CKS
FC98H PWM47T1H
PWM47T1L
PWM47T2H
PWM47T2L
PWM47CR
PWM47HLD
FC90H PWM46T1H
PWM46T1L
PWM46T2H
PWM46T2L
PWM46CR
PWM46HLD
FC88H PWM45T1H
PWM45T1L
PWM45T2H
PWM45T2L
PWM45CR
PWM45HLD
FC80H PWM44T1H
PWM44T1L
PWM44T2H
PWM44T2L
PWM44CR
PWM44HLD
FC78H PWM43T1H
PWM43T1L
PWM43T2H
PWM43T2L
PWM31CR
PWM43HLD
FC70H PWM42T1H
PWM42T1L
PWM42T2H
PWM42T2L
PWM42CR
PWM42HLD
FC68H PWM41T1H
PWM41T1L
PWM41T2H
PWM41T2L
PWM41CR
PWM41HLD
FC60H PWM40T1H
PWM40T1L
PWM40T2H
PWM40T2L
PWM40CR
PWM40HLD
PWM4CL
PWM4CKS
PWM4TADCH
PWM4TADCL
PWM4IF
FC48H PWM37T1H
PWM37T1L
PWM37T2H
PWM37T2L
PWM37CR
PWM37HLD
FC40H PWM36T1H
PWM36T1L
PWM36T2H
PWM36T2L
PWM36CR
PWM36HLD
FC38H PWM35T1H
PWM35T1L
PWM35T2H
PWM35T2L
PWM35CR
PWM35HLD
FC30H PWM34T1H
PWM34T1L
PWM34T2H
PWM34T2L
PWM34CR
PWM34HLD
FC28H PWM33T1H
PWM33T1L
PWM33T2H
PWM33T2L
PWM31CR
PWM33HLD
FC20H PWM32T1H
PWM32T1L
PWM32T2H
PWM32T2L
PWM32CR
PWM32HLD
FC18H PWM31T1H
PWM31T1L
PWM31T2H
PWM31T2L
PWM31CR
PWM31HLD
FCA0H
FC50H
PWM5CH
PWM4CH
PWM5IF
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
I2CRxD
IRCDB
PWM5FDCR
PWM4FDCR
技术交流及选型论坛:www.STCAIMCU.com
- 411 -
STC8G 系列技术手册
0/8
FC10H PWM30T1H
FC00H
PWM3CH
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
1/9
2/A
3/B
4/C
5/D
PWM30T1L
PWM30T2H
PWM30T2L
PWM30CR
PWM30HLD
PWM3CL
PWM3CKS
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
PWM3IF
选型顾问: 13922805190
6/E
7/F
PWM3FDCR
技术交流及选型论坛:www.STCAIMCU.com - 412 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
8.6 STC15H2K64S4 系列
0/8
F8H
F0H
B
E8H
1/9
2/A
3/B
4/C
CH
CCAP0H
CCAP1H
CCAP2H
PWMSET
PCA_PWM0
PCA_PWM1
PCA_PWM2
CL
CCAP0L
CCAP1L
CCAP2L
DPS
DPL1
5/D
6/E
7/F
PWMCFG45
RSTCFG
PWMCFG01
PWMCFG23
IP3H
AUXINTIF
CMPCR1
CMPCR2
ADCCFG
IP3
TL3
T2H
T2L
SPSTAT
SPCTL
SPDAT
IAP_ADDRL
IAP_CMD
IAP_TRIG
IAP_CONTR
ADC_CONTR
ADC_RES
ADC_RESL
IAP_TPS
E0H
ACC
D8H
CCON
CMOD
CCAPM0
CCAPM1
CCAPM2
D0H
PSW
T4T3M
TH4
TL4
TH3
C8H
P5
P5M1
P5M0
C0H
P4
WDT_CONTR
IAP_DATA
B8H
IP
SADEN
P_SW2
B0H
P3
P3M1
P3M0
P4M1
P4M0
IP2
IP2H
IPH
A8H
IE
SADDR
WKTCL
WKTCH
S3CON
S3BUF
TA
IE2
A0H
P2
BUS_SPEED
P_SW1
98H
SCON
SBUF
S2CON
S2BUF
IRCBAND
LIRTRIM
IRTRIM
90H
P1
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
88H
TCON
TMOD
TL0
TL1
TH0
TH1
AUXR
80H
P0
SP
DPL
DPH
S4CON
S4BUF
IAP_ADDRH
DPH1
INTCLKO
PCON
可位寻址
不可位寻址
注意:寄存器地址能够被 8 整除的才可进行位寻址,不能被 8 整除的则不可位寻址
0/8
1/9
2/A
3/B
4/C
5/D
6/E
7/F
MD3
MD2
MD1
MD0
MD5
MD4
ARCON
OPCON
FFE8H PWM27T1H
PWM27T1L
PWM27T2H
PWM27T2L
PWM27CR
PWM27HLD
FFE0H PWM26T1H
PWM26T1L
PWM26T2H
PWM26T2L
PWM26CR
PWM26HLD
FFD8H PWM25T1H
PWM25T1L
PWM25T2H
PWM25T2L
PWM25CR
PWM25HLD
FFD0H PWM24T1H
PWM24T1L
PWM24T2H
PWM24T2L
PWM24CR
PWM24HLD
FFC8H PWM23T1H
PWM23T1L
PWM23T2H
PWM23T2L
PWM31CR
PWM23HLD
FFC0H PWM22T1H
PWM22T1L
PWM22T2H
PWM22T2L
PWM22CR
PWM22HLD
FFB8H PWM21T1H
PWM21T1L
PWM21T2H
PWM21T2L
PWM21CR
PWM21HLD
FFB0H PWM20T1H
PWM20T1L
PWM20T2H
PWM20T2L
PWM20CR
PWM20HLD
PWM2CL
PWM2CKS
PWM2TADCH
PWM2TADCL
PWM2IF
FF98H PWM17T1H
PWM17T1L
PWM17T2H
PWM17T2L
PWM17CR
PWM17HLD
FF90H PWM16T1H
PWM16T1L
PWM16T2H
PWM16T2L
PWM16CR
PWM16HLD
FF88H PWM15T1H
PWM15T1L
PWM15T2H
PWM15T2L
PWM15CR
PWM15HLD
FF80H PWM14T1H
PWM14T1L
PWM14T2H
PWM14T2L
PWM14CR
PWM14HLD
FF78H PWM13T1H
PWM13T1L
PWM13T2H
PWM13T2L
PWM31CR
PWM13HLD
FF70H PWM12T1H
PWM12T1L
PWM12T2H
PWM12T2L
PWM12CR
PWM12HLD
FF68H PWM11T1H
PWM11T1L
PWM11T2H
PWM11T2L
PWM11CR
PWM11HLD
FF60H PWM10T1H
PWM10T1L
PWM10T2H
PWM10T2L
PWM10CR
PWM10HLD
PWM1CL
PWM1CKS
PWM07T1L
PWM07T2H
FCF0H
FFA0H
FF50H
PWM2CH
PWM1CH
FF48H PWM07T1H
PWM1IF
PWM07T2L
PWM07CR
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
PWM2FDCR
PWM1FDCR
PWM07HLD
技术交流及选型论坛:www.STCAIMCU.com - 413 -
STC8G 系列技术手册
0/8
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1/9
2/A
3/B
4/C
5/D
FF40H PWM06T1H
PWM06T1L
PWM06T2H
PWM06T2L
PWM06CR
PWM06HLD
FF38H PWM05T1H
PWM05T1L
PWM05T2H
PWM05T2L
PWM05CR
PWM05HLD
FF30H PWM04T1H
PWM04T1L
PWM04T2H
PWM04T2L
PWM04CR
PWM04HLD
FF28H PWM03T1H
PWM03T1L
PWM03T2H
PWM03T2L
PWM31CR
PWM03HLD
FF20H PWM02T1H
PWM02T1L
PWM02T2H
PWM02T2L
PWM02CR
PWM02HLD
FF18H PWM01T1H
PWM01T1L
PWM01T2H
PWM01T2L
PWM01CR
PWM01HLD
FF10H PWM00T1H
PWM00T1L
PWM00T2H
PWM00T2L
PWM00CR
PWM00HLD
PWM0CL
PWM0CKS
PWM0TADCH
PWM0TADCL
PWM0IF
PWM0FDCR
TM2PS
TM3PS
TM4PS
I2CMSST
I2CSLCR
I2CSLST
I2CSLADR
I2CTxD
FF00H
PWM0CH
FEA8H
ADCTIM
FEA0H
6/E
7/F
FE88H I2CMSAUX
FE80H
I2CCFG
I2CMSCR
FE30H
P0IE
P1IE
FE28H
P0DR
P1DR
P2DR
P3DR
P4DR
P5DR
FE20H
P0SR
P1SR
P2SR
P3SR
P4SR
P5SR
FE18H
P0NCS
P1NCS
P2NCS
P3NCS
P4NCS
P5NCS
FE10H
P0PU
P1PU
P2PU
P3PU
P4PU
P5PU
FE00H
CLKSEL
CLKDIV
HIRCCR
XOSCCR
IRC32KCR
MCLKOCR
FCE8H PWM57T1H
PWM57T1L
PWM57T2H
PWM57T2L
PWM57CR
PWM57HLD
FCE0H PWM56T1H
PWM56T1L
PWM56T2H
PWM56T2L
PWM56CR
PWM56HLD
FCD8H PWM55T1H
PWM55T1L
PWM55T2H
PWM55T2L
PWM55CR
PWM55HLD
FCD0H PWM54T1H
PWM54T1L
PWM54T2H
PWM54T2L
PWM54CR
PWM54HLD
FCC8H PWM53T1H
PWM53T1L
PWM53T2H
PWM53T2L
PWM31CR
PWM53HLD
FCC0H PWM52T1H
PWM52T1L
PWM52T2H
PWM52T2L
PWM52CR
PWM52HLD
FCB8H PWM51T1H
PWM51T1L
PWM51T2H
PWM51T2L
PWM51CR
PWM51HLD
FCB0H PWM50T1H
PWM50T1L
PWM50T2H
PWM50T2L
PWM50CR
PWM50HLD
PWM5CL
PWM5CKS
FC98H PWM47T1H
PWM47T1L
PWM47T2H
PWM47T2L
PWM47CR
PWM47HLD
FC90H PWM46T1H
PWM46T1L
PWM46T2H
PWM46T2L
PWM46CR
PWM46HLD
FC88H PWM45T1H
PWM45T1L
PWM45T2H
PWM45T2L
PWM45CR
PWM45HLD
FC80H PWM44T1H
PWM44T1L
PWM44T2H
PWM44T2L
PWM44CR
PWM44HLD
FC78H PWM43T1H
PWM43T1L
PWM43T2H
PWM43T2L
PWM31CR
PWM43HLD
FC70H PWM42T1H
PWM42T1L
PWM42T2H
PWM42T2L
PWM42CR
PWM42HLD
FC68H PWM41T1H
PWM41T1L
PWM41T2H
PWM41T2L
PWM41CR
PWM41HLD
FC60H PWM40T1H
PWM40T1L
PWM40T2H
PWM40T2L
PWM40CR
PWM40HLD
PWM4CL
PWM4CKS
PWM4TADCH
PWM4TADCL
PWM4IF
FC48H PWM37T1H
PWM37T1L
PWM37T2H
PWM37T2L
PWM37CR
PWM37HLD
FC40H PWM36T1H
PWM36T1L
PWM36T2H
PWM36T2L
PWM36CR
PWM36HLD
FC38H PWM35T1H
PWM35T1L
PWM35T2H
PWM35T2L
PWM35CR
PWM35HLD
FC30H PWM34T1H
PWM34T1L
PWM34T2H
PWM34T2L
PWM34CR
PWM34HLD
FC28H PWM33T1H
PWM33T1L
PWM33T2H
PWM33T2L
PWM31CR
PWM33HLD
FC20H PWM32T1H
PWM32T1L
PWM32T2H
PWM32T2L
PWM32CR
PWM32HLD
FC18H PWM31T1H
PWM31T1L
PWM31T2H
PWM31T2L
PWM31CR
PWM31HLD
FCA0H
FC50H
PWM5CH
PWM4CH
PWM5IF
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
I2CRxD
IRCDB
PWM5FDCR
PWM4FDCR
技术交流及选型论坛:www.STCAIMCU.com - 414 -
STC8G 系列技术手册
0/8
FC10H PWM30T1H
FC00H
PWM3CH
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
1/9
2/A
3/B
4/C
5/D
PWM30T1L
PWM30T2H
PWM30T2L
PWM30CR
PWM30HLD
PWM3CL
PWM3CKS
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
PWM3IF
选型顾问: 13922805190
6/E
7/F
PWM3FDCR
技术交流及选型论坛:www.STCAIMCU.com - 415 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
8.7 特殊功能寄存器列表
注意:寄存器地址能够被 8 整除的才可进行位寻址,不能被 8 整除的则不可位寻址。
STC8G 系列能进行位寻址的寄存器:P0(80H)
、TCON(88H)、P1(90H)、SCON(98H)、P2(A0H)、
IE(A8H)、P3(B0H)、IP(B8H)、P4(C0H)、P5(C8H)、PSW(D0H)、CCON(D8H)、ACC(E0H)、
P6(E8H)、B(F0H)、P7(F8H)
位地址与符号
符号
描述
复位值
地址
B7
B6
B5
B4
B3
B2
B1
B0
P07
P06
P05
P04
P03
P02
P01
P00
P0
P0 端口
80H
SP
堆栈指针
81H
0000,0111
DPL
数据指针(低字节)
82H
0000,0000
DPH
数据指针(高字节)
83H
0000,0000
S4CON
串口 4 控制寄存器
84H
S4BUF
串口 4 数据寄存器
85H
PCON
电源控制寄存器
87H
SMOD
SMOD0
LVDF
POF
GF1
GF0
PD
IDL
0011,0000
TCON
定时器控制寄存器
88H
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
0000,0000
TMOD
定时器模式寄存器
89H
GATE
C/T
M1
M0
GATE
C/T
M1
M0
0000,0000
TL0
定时器 0 低 8 位寄存器
8AH
0000,0000
TL1
定时器 1 低 8 位寄存器
8BH
0000,0000
TH0
定时器 0 高 8 位寄存器
8CH
0000,0000
TH1
定时器 1 高 8 位寄存器
8DH
0000,0000
辅助寄存器 1
8EH
T0x12
T1x12
UART_M0x6
T2R
T2_C/T
T2x12
EXTRAM
S1ST2
0000,0001
中断与时钟输出控制
8FH
-
EX4
EX3
EX2
-
T2CLKO
T1CLKO
T0CLKO
x000,x000
P1 端口
90H
P17
P16
P15
P14
P13
P12
P11
P10
1111,1111
P1M1
P1 口配置寄存器 1
91H
P17M1
P16M1
P15M1
P14M1
P13M1
P12M1
P11M1
P10M1
1111,1111
P1M0
P1 口配置寄存器 0
92H
P17M0
P16M0
P15M0
P14M0
P13M0
P12M0
P11M0
P10M0
0000,0000
P0M1
P0 口配置寄存器 1
93H
P07M1
P06M1
P05M1
P04M1
P03M1
P02M1
P01M1
P00M1
1111,1111
P0M0
P0 口配置寄存器 0
94H
P07M0
P06M0
P05M0
P04M0
P03M0
P02M0
P01M0
P00M0
0000,0000
P2M1
P2 口配置寄存器 1
95H
P27M1
P26M1
P25M1
P24M1
P23M1
P22M1
P21M1
P20M1
1111,1111
P2M0
P2 口配置寄存器 0
96H
P27M0
P26M0
P25M0
P24M0
P23M0
P22M0
P21M0
P20M0
0000,0000
SCON
串口 1 控制寄存器
98H
SM0/FE
SM1
SM2
REN
TB8
RB8
TI
RI
0000,0000
SBUF
串口 1 数据寄存器
99H
S2CON
串口 2 控制寄存器
9AH
S2BUF
串口 2 数据寄存器
9BH
IRCBAND
IRC 频段选择检测
9DH
-
-
-
-
-
-
-
LIRTRIM
IRC 频率微调寄存器
9EH
-
-
-
-
-
-
LIRTRIM[1:0]
IRTRIM
IRC 频率调整寄存器
9FH
P2 端口
A0H
AUXR
INTCLKO
P1
P2
BUS_SPEED
总线速度控制寄存器
S4SM0
S4ST4
S4SM2
S4REN
S4TB8
S4RB8
S4TI
S4RI
1111,1111
0000,0000
0000,0000
0000,0000
S2SM0
-
S2SM2
S2REN
S2TB8
S2RB8
S2TI
S2RI
0x00,0000
0000,0000
SEL
IRTRIM[7:0]
P27
P26
P25
P24
xxxx,xxxn
xxxx,xxnn
nnnn,nnnn
P23
P22
P21
P20
A1H
RW_S[1:0]
外设端口切换寄存器 1
A2H
S1_S[1:0]
中断允许寄存器
A8H
SADDR
串口 1 从机地址寄存器
A9H
0000,0000
WKTCL
掉电唤醒定时器低字节
AAH
1111,1111
WKTCH
掉电唤醒定时器高字节
ABH
P_SW1
IE
EA
ELVD
SPEED[2:0]
1111,1111
CCP_S[1:0]
EADC
WKTEN
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
ES
SPI_S[1:0]
ET1
EX1
00xx,x000
0
-
nn00,000x
ET0
EX0
0000,0000
0111,1111
技术交流及选型论坛:www.STCAIMCU.com - 416 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
复位值
地址
B7
B6
B5
B4
B3
B2
B1
B0
S3SM0
S3ST4
S3SM2
S3REN
S3TB8
S3RB8
S3TI
S3RI
S3CON
串口 3 控制寄存器
ACH
S3BUF
串口 3 数据寄存器
ADH
0000,0000
TA
DPTR 时序控制寄存器
AEH
0000,0000
IE2
中断允许寄存器 2
AFH
ETKSUI
ET4
ET3
ES4
ES3
ET2
ESPI
ES2
0000,0000
P3
P3 端口
B0H
P37
P36
P35
P34
P33
P32
P31
P30
1111,1111
P3M1
P3 口配置寄存器 1
B1H
P37M1
P36M1
P35M1
P34M1
P33M1
P32M1
P31M1
P30M1
1111,1100
P3M0
P3 口配置寄存器 0
B2H
P37M0
P36M0
P35M0
P34M0
P33M0
P32M0
P31M0
P30M0
0000,0000
P4M1
P4 口配置寄存器 1
B3H
P47M1
P46M1
P45M1
P44M1
P43M1
P42M1
P41M1
P40M1
1111,1111
P4M0
P4 口配置寄存器 0
B4H
P47M0
P46M0
P45M0
P44M0
P43M0
P42M0
P41M0
P40M0
0000,0000
中断优先级控制寄存器 2
B5H
PPWM2FD
PI2C
PCMP
PX4
PPWM0FD
PPWM0
PSPI
PS2
0000,0000
PPWM2FDH
PI2CH
PCMPH
PX4H
PPWM0FDH
PPWM0H
PSPIH
PS2H
0000,0000
IP2
0000,0000
IP2H
高中断优先级控制寄存器 2 B6H
IPH
高中断优先级控制寄存器
B7H
PPCAH
PLVDH
PADCH
PSH
PT1H
PX1H
PT0H
PX0H
0000,0000
中断优先级控制寄存器
B8H
PPCA
PLVD
PADC
PS
PT1
PX1
PT0
PX0
0000,0000
IP
SADEN
串口 1 从机地址屏蔽寄存器 B9H
P_SW2
外设端口切换寄存器 2
ADC_CONTR ADC 控制寄存器
BAH
0000,0000
EAXFR
-
I2C_S[1:0]
CMPO_S
BCH ADC_POWER ADC_START ADC_FLAG ADC_EPWMT
S4_S
S3_S
S2_S
ADC_CHS[3:0]
0x00,0000
0000,0000
ADC 转换结果高位寄存器
BDH
0000,0000
ADC_RESL ADC 转换结果低位寄存器
BEH
0000,0000
ADC_RES
P4
P4 端口
WDT_CONTR 看门狗控制寄存器
IAP_DATA
IAP 数据寄存器
C0H
P47
P46
P45
P44
P43
C1H
WDT_FLAG
-
EN_WDT
CLR_WDT
IDL_WDT
P42
P41
P40
WDT_PS[2:0]
1111,1111
0xn0,nnnn
C2H
1111,1111
IAP_ADDRH IAP 高地址寄存器
C3H
0000,0000
IAP_ADDRL IAP 低地址寄存器
C4H
0000,0000
IAP_CMD
IAP 命令寄存器
C5H
IAP_TRIG
IAP 触发寄存器
C6H
IAP_CONTR IAP 控制寄存器
C7H
IAPEN
SWBS
SWRST
CMD_FAIL
-
-
-
-
0000,xxxx
P5 端口
C8H
-
-
P55
P54
P53
P52
P51
P50
xx11,1111
P5M1
P5 口配置寄存器 1
C9H
-
-
P55M1
P54M1
P53M1
P52M1
P51M1
P50M1
xx11,1111
P5M0
P5 口配置寄存器 0
CAH
-
-
P55M0
P54M0
P53M0
P52M0
P51M0
P50M0
xx00,0000
SPSTAT
SPI 状态寄存器
CDH
SPIF
WCOL
-
-
-
-
-
-
00xx,xxxx
SPCTL
SPI 控制寄存器
CEH
SSIG
SPEN
DORD
MSTR
CPOL
CPHA
SPDAT
SPI 数据寄存器
CFH
程序状态字寄存器
D0H
CY
AC
F0
RS1
RS0
OV
F1
P
0000,0000
定时器 4/3 控制寄存器
D1H
T4R
T4_C/T
T4x12
T4CLKO
T3R
T3_C/T
T3x12
T3CLKO
0000,0000
T4H
定时器 4 高字节
D2H
0000,0000
T4L
定时器 4 低字节
D3H
0000,0000
T3H
定时器 3 高字节
D4H
0000,0000
T3L
定时器 3 低字节
D5H
0000,0000
T2H
定时器 2 高字节
D6H
0000,0000
T2L
定时器 2 低字节
D7H
0000,0000
CCON
PCA 控制寄存器
D8H
CF
CR
-
-
CMOD
PCA 模式寄存器
D9H
CIDL
-
-
-
P5
PSW
T4T3M
-
-
-
-
-
-
CMD[1:0]
xxxx,xx00
0000,0000
SPR[1:0]
0000,0100
0000,0000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
CCF3
CCF2
CPS[2:0]
CCF1
CCF0
00xx,x000
ECF
0xxx,0000
技术交流及选型论坛:www.STCAIMCU.com - 417 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
复位值
地址
B7
B6
B5
B4
B3
B2
B1
B0
CCAPM0
PCA 模块 0 模式控制寄存器 DAH
-
ECOM0
CCAPP0
CCAPN0
MAT0
TOG0
PWM0
ECCF0
x000,0000
CCAPM1
PCA 模块 1 模式控制寄存器 DBH
-
ECOM1
CCAPP1
CCAPN1
MAT1
TOG1
PWM1
ECCF1
x000,0000
CCAPM2
PCA 模块 2 模式控制寄存器 DCH
-
ECOM2
CCAPP2
CCAPN2
MAT2
TOG2
PWM2
ECCF2
x000,0000
ADCCFG
ADC 配置寄存器
DEH
-
-
RESFMT
-
中断优先级控制寄存器 3
DFH
PPWM4FD
PPWM5
PPWM4
PPWM3
ACC
累加器
E0H
DPS
DPTR 指针选择器
E3H
DPL1
第二组数据指针(低字节) E4H
0000,0000
DPH1
第二组数据指针(高字节) E5H
0000,0000
IP3
SPEED[3:0]
PPWM2
PPWM1
xx0x,0000
PS4
PS3
0000,0000
0000,0000
ID1
ID0
TSL
AU1
AU0
-
-
SEL
0000,0xx0
CMPCR1
比较器控制寄存器 1
E6H
CMPEN
CMPIF
CMPCR2
比较器控制寄存器 2
E7H
INVCMPO
DISFLT
CL
PCA 计数器低字节
E9H
0000,0000
CCAP0L
PCA 模块 0 低字节
EAH
0000,0000
CCAP1L
PCA 模块 1 低字节
EBH
0000,0000
CCAP2L
PCA 模块 2 低字节
ECH
0000,0000
IP3H
AUXINTIF
B
PWMSET
高中断优先级控制寄存器 3 EEH
扩展外部中断标志寄存器
EFH
B 寄存器
F0H
增强型 PWM 全局配置
F1H
PIE
NIE
PIS
NIS
CMPOE
CMPRES
LCDTY[5:0]
PPWM4FDH
PPWM5H
PPWM4H
PPWM3H
-
INT4IF
INT3IF
INT2IF
0000,0000
PPWM2H PPWM1H
-
0000,0000
PS4H
PS3H
0000,0000
-
T2IF
x000,xxx0
-
0000,0000
ENGLBSET
PWMRST
ENPWM5
ENPWM4
ENPWM3 ENPWM2 ENPWM1
ENPWM0
0000,0000
PCA_PWM0 PCA0 的 PWM 模式寄存器
F2H
EBS0[1:0]
XCCAP0H[1:0]
XCCAP0L[1:0]
EPC0H
EPC0L
0000,0000
PCA_PWM1 PCA1 的 PWM 模式寄存器
F3H
EBS1[1:0]
XCCAP1H[1:0]
XCCAP1L[1:0]
EPC1H
EPC1L
0000,0000
PCA_PWM2 PCA2 的 PWM 模式寄存器
F4H
EBS2[1:0]
XCCAP2H[1:0]
XCCAP2L[1:0]
EPC2H
EPC2L
0000,0000
IAP 等待时间控制寄存器
F5H
-
-
PWMCFG01 增强型 PWM 配置寄存器
F6H
PWM1CBIF
EPWM1CBI
FLTPS0
PWM1CEN
PWM0CBIF EPWM0CBI ENPWM0TA
PWM0CEN
0000,0000
PWMCFG23 增强型 PWM 配置寄存器
F7H
PWM3CBIF
EPWM3CBI
FLTPS1
PWM3CEN
PWM2CBIF EPWM2CBI ENPWM2TA
PWM2CEN
0000,0000
IAP_TPS
IAPTPS[5:0]
xx00,0000
CH
PCA 计数器高字节
F9H
0000,0000
CCAP0H
PCA 模块 0 高字节
FAH
0000,0000
CCAP1H
PCA 模块 1 高字节
FBH
0000,0000
CCAP2H
PCA 模块 2 高字节
FCH
0000,0000
PWMCFG45 增强型 PWM 配置寄存器
RSTCFG
复位配置寄存器
FEH
PWM5CBIF
EPWM5CBI
FLTPS2
PWM5CEN
FFH
-
ENLVR
-
P54RST
PWM4CBIF EPWM4CBI ENPWM4TA
-
-
PWM4CEN
LVDS[1:0]
0000,0000
xnxn,xxnn
下列特殊功能寄存器为扩展 SFR,逻辑地址位于 XDATA 区域,访问前需要将 P_SW2(BAH)寄存
器的最高位(EAXFR)置 1,然后使用 MOVX A,@DPTR 和 MOVX @DPTR,A 指令进行访问
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
-
-
-
-
-
-
B1
B0
CLKSEL
时钟选择寄存器
FE00H
CLKDIV
时钟分频寄存器
FE01H
HIRCCR
内部高速振荡器控制寄存器
FE02H
ENHIRC
-
-
-
-
-
-
HIRCST
XOSCCR
外部晶振控制寄存器
FE03H
ENXOSC
XITYPE
-
-
-
-
-
XOSCST 00xx,xxx0
内部 32K 振荡器控制寄存器
FE04H
ENIRC32K
-
-
-
-
-
-
IRC32KST 0xxx,xxx0
IRC32KCR
MCKSEL[1:0]
xxxx,xx00
nnnn,nnnn
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
1xxx,xxx0
技术交流及选型论坛:www.STCAIMCU.com - 418 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
主时钟输出控制寄存器
FE05H
IRCDB
内部高速振荡器去抖控制
FE06H
P0PU
P0 口上拉电阻控制寄存器
FE10H
P07PU
P06PU
P05PU
P04PU
P03PU
P02PU
P01PU
P00PU
0000,0000
P1PU
P1 口上拉电阻控制寄存器
FE11H
P17PU
P16PU
P15PU
P14PU
P13PU
P12PU
P11PU
P10PU
0000,0000
P2PU
P2 口上拉电阻控制寄存器
FE12H
P27PU
P26PU
P25PU
P24PU
P23PU
P22PU
P21PU
P20PU
0000,0000
P3PU
P3 口上拉电阻控制寄存器
FE13H
P37PU
P36PU
P35PU
P34PU
P33PU
P32PU
P31PU
P30PU
0000,0000
P4PU
P4 口上拉电阻控制寄存器
FE14H
P47PU
P46PU
P45PU
P44PU
P43PU
P42PU
P41PU
P40PU
0000,0000
P5PU
P5 口上拉电阻控制寄存器
FE15H
-
-
P55PU
P54PU
P53PU
P52PU
P51PU
P50PU
xx00,0000
P0NCS
P0 口施密特触发控制寄存器
FE18H
P07NCS
P06NCS
P05NCS P04NCS P03NCS P02NCS P01NCS P00NCS 0000,0000
P1NCS
P1 口施密特触发控制寄存器
FE19H
P17NCS
P16NCS
P15NCS P14NCS P13NCS P12NCS P11NCS P10NCS 0000,0000
P2NCS
P2 口施密特触发控制寄存器
FE1AH
P27NCS
P26NCS
P25NCS P24NCS P23NCS P22NCS P21NCS P20NCS 0000,0000
P3NCS
P3 口施密特触发控制寄存器
FE1BH
P37NCS
P36NCS
P35NCS P34NCS P33NCS P32NCS P31NCS P30NCS 0000,0000
P4NCS
P4 口施密特触发控制寄存器
FE1CH
P47NCS
P46NCS
P45NCS P44NCS P43NCS P42NCS P41NCS P40NCS 0000,0000
P5NCS
P5 口施密特触发控制寄存器
FE1DH
-
-
P55NCS P54NCS P53NCS P52NCS P51NCS P50NCS xx00,0000
P0SR
P0 口电平转换速率寄存器
FE20H
P07SR
P06SR
P05SR
P04SR
P03SR
P02SR
P01SR
P00SR
1111,1111
P1SR
P1 口电平转换速率寄存器
FE21H
P17SR
P16SR
P15SR
P14SR
P13SR
P12SR
P11SR
P10SR
1111,1111
P2SR
P2 口电平转换速率寄存器
FE22H
P27SR
P26SR
P25SR
P24SR
P23SR
P22SR
P21SR
P20SR
1111,1111
P3SR
P3 口电平转换速率寄存器
FE23H
P37SR
P36SR
P35SR
P34SR
P33SR
P32SR
P31SR
P30SR
1111,1111
P4SR
P4 口电平转换速率寄存器
FE24H
P47SR
P46SR
P45SR
P44SR
P43SR
P42SR
P41SR
P40SR
1111,1111
P5SR
P5 口电平转换速率寄存器
FE25H
-
-
P55SR
P54SR
P53SR
P52SR
P51SR
P50SR
xx11,1111
P0DR
P0 口驱动电流控制寄存器
FE28H
P07DR
P06DR
P05DR
P04DR
P03DR
P02DR P01DR
P00DR
1111,1111
P1DR
P1 口驱动电流控制寄存器
FE29H
P17DR
P16DR
P15DR
P14DR
P13DR
P12DR P11DR
P10DR
1111,1111
P2DR
P2 口驱动电流控制寄存器
FE2AH
P27DR
P26DR
P25DR
P24DR
P23DR
P22DR P21DR
P20DR
1111,1111
P3DR
P3 口驱动电流控制寄存器
FE2BH
P37DR
P36DR
P35DR
P34DR
P33DR
P32DR P31DR
P30DR
1111,1111
P4DR
P4 口驱动电流控制寄存器
FE2CH
P47DR
P46DR
P45DR
P44DR
P43DR
P42DR P41DR
P40DR
1111,1111
P5DR
P5 口驱动电流控制寄存器
FE2DH
-
-
P55DR
P54DR
P53DR
P52DR P51DR
P50DR
xx00,0000
P0IE
P0 口输入使能控制寄存器
FE30H
P07IE
P06IE
P05IE
P04IE
P03IE
P02IE
P11IE
P00IE
1111,1111
P1IE
P1 口输入使能控制寄存器
FE31H
P17IE
P16IE
P15IE
P14IE
P13IE
P12IE
P11IE
P10IE
1111,1111
P3IE
P3 口输入使能控制寄存器
FE33H
P37IE
P36IE
P35IE
P34IE
P33IE
P32IE
P31IE
P30IE
1111,1111
I2C 配置寄存器
FE80H
ENI2C
MSSL
I2CMSCR
I2C 主机控制寄存器
FE81H
EMSI
-
-
-
I2CMSST
I2C 主机状态寄存器
FE82H
MSBUSY
MSIF
-
-
-
-
I2CSLCR
I2C 从机控制寄存器
FE83H
-
ESTAI
ERXI
ETXI
ESTOI
-
-
I2CSLST
I C 从机状态寄存器
FE84H
SLBUSY
STAIF
RXIF
TXIF
STOIF
TXING
SLACKI
I2CSLADR
I C 从机地址寄存器
FE85H
I2CTXD
I C 数据发送寄存器
FE86H
0000,0000
I2CRXD
I C 数据接收寄存器
FE87H
0000,0000
I C 主机辅助控制寄存器
FE88H
TM2PS
定时器 2 时钟预分频寄存器
FEA2H
0000,0000
TM3PS
定时器 3 时钟预分频寄存器
FEA3H
0000,0000
TM4PS
定时器 4 时钟预分频寄存器
FEA4H
0000,0000
ADC 时序控制寄存器
FEA8H CSSETUP
MCLKOCR
I2CCFG
I2CMSAUX
ADCTIM
2
2
2
2
2
MCLKODIV[6:0]
MCLKO_S
0000,0000
1000,0000
IRCDB_PAR[7:0]
MSSPEED[6:1]
0000,0000
MSCMD[3:0]
MSACKI MSACKO 00xx,xx00
I2CSLADR[7:1]
-
-
-
CSHOLD[1:0]
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
-
0xxx,0000
SLRST
SLACKO 0000,0000
MA
-
-
SMPDUTY[4:0]
-
x000,0xx0
WDTA
0000,0000
xxxx,xxx0
0010,1010
技术交流及选型论坛:www.STCAIMCU.com - 419 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
PWM0CH
PWM0 计数器高字节
FF00H
PWM0CL
PWM0 计数器低字节
FF01H
PWM0 时钟选择
FF02H
-
PWM0TADCH PWM0 触发 ADC 计数高字节
FF03H
-
PWM0TADCL PWM0 触发 ADC 计数低字节
FF04H
PWM0CKS
PWM0IF
PWM0 中断标志寄存器
PWM0FDCR PWM0 异常检测控制寄存器
B6
B5
B4
-
-
SELT2
xxx0,0000
0000,0000
FF05H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FF06H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
0000,0000
-
PWM00T1 计数值低字节
FF11H
PWM00T2H
PWM00T2 计数值高字节
FF12H
PWM00T2L
PWM00T2 计数值低字节
FF13H
PWM00CR
PWM00 控制寄存器
FF14H
ENO
INI
-
-
FF15H
-
-
-
-
-
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM01T1H
PWM01T1 计数值高字节
FF18H
PWM01T1L
PWM01T1 计数值低字节
FF19H
PWM01T2H
PWM01T2 计数值高字节
FF1AH
PWM01T2L
PWM01T2 计数值低字节
FF1BH
PWM01CR
PWM01 控制寄存器
FF1CH
ENO
INI
-
-
FF1DH
-
-
-
-
-
FF21H
PWM02T2H
PWM02T2 计数值高字节
FF22H
PWM02T2L
PWM02T2 计数值低字节
FF23H
PWM02CR
PWM02 控制寄存器
FF24H
ENO
INI
-
-
FF25H
-
-
-
-
-
FF29H
PWM03T2H
PWM03T2 计数值高字节
FF2AH
PWM03T2L
PWM03T2 计数值低字节
FF2BH
PWM03CR
PWM03 控制寄存器
FF2CH
ENO
INI
-
-
FF2DH
-
-
-
-
-
FF31H
PWM04T2H
PWM04T2 计数值高字节
FF32H
PWM04T2L
PWM04T2 计数值低字节
FF33H
PWM04CR
PWM04 控制寄存器
FF34H
ENO
INI
-
-
FF35H
-
-
-
-
-
FF3CH
HLDL
xxxx,xx00
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
0000,0000
PWM04T1 计数值低字节
PWM05 控制寄存器
HLDH
x000,0000
PWM04T1L
PWM05CR
-
-
FF30H
FF3BH
00xx,x000
0000,0000
PWM04T1 计数值高字节
PWM05T2 计数值低字节
ENT1I
x000,0000
PWM04T1H
PWM05T2L
ENT2I
0000,0000
PWM03T1 计数值低字节
FF3AH
-
ENI
x000,0000
PWM03T1L
PWM05T2 计数值高字节
xxxx,xx00
-
FF28H
PWM05T2H
HLDL
0000,0000
PWM03T1 计数值高字节
FF39H
HLDH
x000,0000
PWM03T1H
PWM05T1 计数值低字节
-
0000,0000
PWM02T1 计数值低字节
PWM05T1L
00xx,x000
x000,0000
PWM02T1L
FF38H
ENT1I
-
FF20H
PWM05T1 计数值高字节
ENT2I
0000,0000
PWM02T1 计数值高字节
PWM05T1H
-
ENI
x000,0000
PWM02T1H
PWM04HLD PWM04 电平保持控制寄存器
PWM_PS[3:0]
x000,0000
PWM00T1L
PWM03HLD PWM03 电平保持控制寄存器
B0
0000,0000
FF10H
PWM02HLD PWM02 电平保持控制寄存器
B1
x000,0000
PWM00T1 计数值高字节
PWM01HLD PWM01 电平保持控制寄存器
B2
-
PWM00T1H
PWM00HLD PWM00 电平保持控制寄存器
B3
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
ENO
INI
-
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
-
ENI
ENT2I
ENT1I
00xx,x000
技术交流及选型论坛:www.STCAIMCU.com - 420 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
PWM05HLD PWM05 电平保持控制寄存器
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
FF3DH
-
-
-
-
-
-
HLDH
HLDL
-
PWM06T1H
PWM06T1 计数值高字节
FF40H
PWM06T1L
PWM06T1 计数值低字节
FF41H
PWM06T2H
PWM06T2 计数值高字节
FF42H
PWM06T2L
PWM06T2 计数值低字节
FF43H
PWM06CR
PWM06 控制寄存器
FF44H
ENO
INI
-
-
FF45H
-
-
-
-
-
PWM06HLD PWM06 电平保持控制寄存器
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM07T1H
PWM07T1 计数值高字节
FF48H
PWM07T1L
PWM07T1 计数值低字节
FF49H
PWM07T2H
PWM07T2 计数值高字节
FF4AH
PWM07T2L
PWM07T2 计数值低字节
FF4BH
PWM07CR
PWM07 控制寄存器
FF4CH
ENO
INI
-
-
FF4DH
-
-
-
-
-
PWM07HLD PWM07 电平保持控制寄存器
xxxx,xx00
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
PWM1CH
PWM1 计数器高字节
FF50H
PWM1CL
PWM1 计数器低字节
FF51H
PWM1 时钟选择
FF52H
-
-
-
SELT2
PWM1 中断标志寄存器
FF55H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FF56H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
0000,0000
-
PWM1CKS
PWM1IF
PWM1FDCR PWM1 异常检测控制寄存器
x000,0000
0000,0000
PWM10T1H
PWM10T1 计数值高字节
FF60H
PWM10T1L
PWM10T1 计数值低字节
FF61H
PWM10T2H
PWM10T2 计数值高字节
FF62H
PWM10T2L
PWM10T2 计数值低字节
FF63H
PWM10CR
PWM10 控制寄存器
FF64H
ENO
INI
-
-
FF65H
-
-
-
-
-
PWM10HLD PWM10 电平保持控制寄存器
0000,0000
-
x000,0000
0000,0000
PWM11T1 计数值高字节
FF68H
PWM11T1L
PWM11T1 计数值低字节
FF69H
PWM11T2H
PWM11T2 计数值高字节
FF6AH
PWM11T2L
PWM11T2 计数值低字节
FF6BH
PWM11CR
PWM11 控制寄存器
FF6CH
ENO
INI
-
-
PWM11HLD
PWM11 电平保持控制寄存器
FF6DH
-
-
-
-
PWM12T1H
PWM12T1 计数值高字节
FF70H
-
PWM12T1L
PWM12T1 计数值低字节
FF71H
PWM12T2H
PWM12T2 计数值高字节
FF72H
PWM12T2L
PWM12T2 计数值低字节
FF73H
PWM12CR
PWM12 控制寄存器
FF74H
ENO
INI
-
-
FF75H
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM13T1H
PWM13T1 计数值高字节
FF78H
PWM13T1L
PWM13T1 计数值低字节
FF79H
PWM13T2H
PWM13T2 计数值高字节
FF7AH
PWM13T2L
PWM13T2 计数值低字节
FF7BH
PWM13CR
PWM13 控制寄存器
FF7CH
ENO
INI
-
-
FF7DH
-
-
-
-
PWM13HLD PWM13 电平保持控制寄存器
xxx0,0000
x000,0000
PWM11T1H
PWM12HLD PWM12 电平保持控制寄存器
PWM_PS[3:0]
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
技术交流及选型论坛:www.STCAIMCU.com - 421 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
PWM14T1H
PWM14T1 计数值高字节
FF80H
PWM14T1L
PWM14T1 计数值低字节
FF81H
PWM14T2H
PWM14T2 计数值高字节
FF82H
PWM14T2L
PWM14T2 计数值低字节
FF83H
PWM14CR
PWM14 控制寄存器
FF84H
ENO
INI
-
-
FF85H
-
-
-
-
-
PWM14HLD PWM14 电平保持控制寄存器
-
x000,0000
0000,0000
PWM15T1L
PWM15T1 计数值低字节
FF89H
PWM15T2H
PWM15T2 计数值高字节
FF8AH
PWM15T2L
PWM15T2 计数值低字节
FF8BH
PWM15CR
PWM15 控制寄存器
FF8CH
ENO
INI
-
-
FF8DH
-
-
-
-
-
-
HLDH
HLDL
xxxx,xx00
0000,0000
PWM16T1 计数值低字节
FF91H
PWM16T2H
PWM16T2 计数值高字节
FF92H
PWM16T2L
PWM16T2 计数值低字节
FF93H
PWM16CR
PWM16 控制寄存器
FF94H
ENO
INI
-
-
FF95H
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM17T1H
PWM17T1 计数值高字节
FF98H
PWM17T1L
PWM17T1 计数值低字节
FF99H
PWM17T2H
PWM17T2 计数值高字节
FF9AH
PWM17T2L
PWM17T2 计数值低字节
FF9BH
PWM17CR
PWM17 控制寄存器
FF9CH
ENO
INI
-
-
FF9DH
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM2CH
PWM2 计数器高字节
FFA0H
PWM2CL
PWM2 计数器低字节
FFA1H
PWM2 时钟选择
FFA2H
-
PWM2TADCH PWM2 触发 ADC 计数高字节
FFA3H
-
PWM2TADCL PWM2 触发 ADC 计数低字节
FFA4H
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
-
SELT2
PWM_PS[3:0]
xxx0,0000
x000,0000
0000,0000
FFA5H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FFA6H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
0000,0000
-
PWM20T1H
PWM20T1 计数值高字节
FFB0H
PWM20T1L
PWM20T1 计数值低字节
FFB1H
PWM20T2H
PWM20T2 计数值高字节
FFB2H
PWM20T2L
PWM20T2 计数值低字节
FFB3H
PWM20CR
PWM20 控制寄存器
FFB4H
ENO
INI
-
-
FFB5H
-
-
-
-
-
PWM20HLD PWM20 电平保持控制寄存器
00xx,x000
x000,0000
PWM16T1L
PWM2FDCR PWM2 异常检测控制寄存器
ENT1I
-
FF90H
PWM2 中断标志寄存器
ENT2I
0000,0000
PWM16T1 计数值高字节
PWM2IF
-
ENI
x000,0000
PWM16T1H
PWM2CKS
B0
0000,0000
FF88H
PWM17HLD PWM17 电平保持控制寄存器
B1
x000,0000
PWM15T1 计数值高字节
PWM16HLD PWM16 电平保持控制寄存器
B2
-
PWM15T1H
PWM15HLD PWM15 电平保持控制寄存器
B3
PWM21T1H
PWM21T1 计数值高字节
FFB8H
PWM21T1L
PWM21T1 计数值低字节
FFB9H
PWM21T2H
PWM21T2 计数值高字节
FFBAH
PWM21T2L
PWM21T2 计数值低字节
FFBBH
PWM21CR
PWM21 控制寄存器
FFBCH
x000,0000
0000,0000
-
x000,0000
0000,0000
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
ENO
INI
-
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
-
ENI
ENT2I
ENT1I
00xx,x000
技术交流及选型论坛:www.STCAIMCU.com - 422 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
PWM21HLD PWM21 电平保持控制寄存器
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
FFBDH
-
-
-
-
-
-
HLDH
HLDL
-
PWM22T1H
PWM22T1 计数值高字节
FFC0H
PWM22T1L
PWM22T1 计数值低字节
FFC1H
PWM22T2H
PWM22T2 计数值高字节
FFC2H
PWM22T2L
PWM22T2 计数值低字节
FFC3H
PWM22CR
PWM22 控制寄存器
FFC4H
ENO
INI
-
-
FFC5H
-
-
-
-
-
PWM22HLD PWM22 电平保持控制寄存器
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM23T1H
PWM23T1 计数值高字节
FFC8H
PWM23T1L
PWM23T1 计数值低字节
FFC9H
PWM23T2H
PWM23T2 计数值高字节
FFCAH
PWM23T2L
PWM23T2 计数值低字节
FFCBH
PWM23CR
PWM23 控制寄存器
FFCCH
ENO
INI
-
-
FFCDH
-
-
-
-
-
PWM23HLD PWM23 电平保持控制寄存器
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
PWM24T1L
PWM24T1 计数值低字节
FFD1H
PWM24T2H
PWM24T2 计数值高字节
FFD2H
PWM24T2L
PWM24T2 计数值低字节
FFD3H
PWM24CR
PWM24 控制寄存器
FFD4H
ENO
INI
-
-
FFD5H
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM25T1H
PWM25T1 计数值高字节
FFD8H
PWM25T1L
PWM25T1 计数值低字节
FFD9H
PWM25T2H
PWM25T2 计数值高字节
FFDAH
PWM25T2L
PWM25T2 计数值低字节
FFDBH
PWM25CR
PWM25 控制寄存器
FFDCH
ENO
INI
-
-
FFDDH
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM26T1H
PWM26T1 计数值高字节
FFE0H
PWM26T1L
PWM26T1 计数值低字节
FFE1H
PWM26T2H
PWM26T2 计数值高字节
FFE2H
PWM26T2L
PWM26T2 计数值低字节
FFE3H
PWM26CR
PWM26 控制寄存器
FFE4H
ENO
INI
-
-
FFE5H
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM27T1H
PWM27T1 计数值高字节
FFE8H
PWM27T1L
PWM27T1 计数值低字节
FFE9H
PWM27T2H
PWM27T2 计数值高字节
FFEAH
PWM27T2L
PWM27T2 计数值低字节
FFEBH
PWM27CR
PWM27 控制寄存器
FFECH
ENO
INI
-
-
FFEDH
-
-
-
-
-
PWM27HLD PWM27 电平保持控制寄存器
ENT1I
-
FFD0H
PWM26HLD PWM26 电平保持控制寄存器
ENT2I
0000,0000
PWM24T1 计数值高字节
PWM25HLD PWM25 电平保持控制寄存器
-
ENI
x000,0000
PWM24T1H
PWM24HLD PWM24 电平保持控制寄存器
xxxx,xx00
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
PWM3CH
PWM3 计数器高字节
FC00H
PWM3CL
PWM3 计数器低字节
FC01H
PWM3 时钟选择
FC02H
-
-
-
SELT2
PWM3 中断标志寄存器
FC05H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FC06H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
0000,0000
PWM3CKS
PWM3IF
PWM3FDCR PWM3 异常检测控制寄存器
x000,0000
0000,0000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
PWM_PS[3:0]
xxx0,0000
技术交流及选型论坛:www.STCAIMCU.com - 423 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
PWM30T1H
PWM30T1 计数值高字节
FC10H
PWM30T1L
PWM30T1 计数值低字节
FC11H
PWM30T2H
PWM30T2 计数值高字节
FC12H
PWM30T2L
PWM30T2 计数值低字节
FC13H
PWM30CR
PWM30 控制寄存器
FC14H
ENO
INI
-
-
FC15H
-
-
-
-
-
PWM30HLD PWM30 电平保持控制寄存器
-
x000,0000
0000,0000
PWM31T1L
PWM31T1 计数值低字节
FC19H
PWM31T2H
PWM31T2 计数值高字节
FC1AH
PWM31T2L
PWM31T2 计数值低字节
FC1BH
PWM31CR
PWM31 控制寄存器
FC1CH
ENO
INI
-
-
FC1DH
-
-
-
-
-
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
-
x000,0000
0000,0000
FC20H
PWM32T1L
PWM32T1 计数值低字节
FC21H
PWM32T2H
PWM32T2 计数值高字节
FC22H
PWM32T2L
PWM32T2 计数值低字节
FC23H
PWM32CR
PWM32 控制寄存器
FC24H
ENO
INI
-
-
FC25H
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM33T1H
PWM33T1 计数值高字节
FC28H
PWM33T1L
PWM33T1 计数值低字节
FC29H
PWM33T2H
PWM33T2 计数值高字节
FC2AH
PWM33T2L
PWM33T2 计数值低字节
FC2BH
PWM33CR
PWM33 控制寄存器
FC2CH
ENO
INI
-
-
FC2DH
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM34T1H
PWM34T1 计数值高字节
FC30H
PWM34T1L
PWM34T1 计数值低字节
FC31H
PWM34T2H
PWM34T2 计数值高字节
FC32H
PWM34T2L
PWM34T2 计数值低字节
FC33H
PWM34CR
PWM34 控制寄存器
FC34H
ENO
INI
-
-
FC35H
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM35T1H
PWM35T1 计数值高字节
FC38H
PWM35T1L
PWM35T1 计数值低字节
FC39H
PWM35T2H
PWM35T2 计数值高字节
FC3AH
PWM35T2L
PWM35T2 计数值低字节
FC3BH
PWM35CR
PWM35 控制寄存器
FC3CH
ENO
INI
-
-
FC3DH
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM36T1H
PWM36T1 计数值高字节
FC40H
PWM36T1L
PWM36T1 计数值低字节
FC41H
PWM36T2H
PWM36T2 计数值高字节
FC42H
PWM36T2L
PWM36T2 计数值低字节
FC43H
PWM36CR
PWM36 控制寄存器
FC44H
ENO
INI
-
-
FC45H
-
-
-
-
PWM36HLD PWM36 电平保持控制寄存器
ENT2I
0000,0000
PWM32T1 计数值高字节
PWM35HLD PWM35 电平保持控制寄存器
-
ENI
x000,0000
PWM32T1H
PWM34HLD PWM34 电平保持控制寄存器
B0
0000,0000
FC18H
PWM33HLD PWM33 电平保持控制寄存器
B1
x000,0000
PWM31T1 计数值高字节
PWM32HLD PWM32 电平保持控制寄存器
B2
-
PWM31T1H
PWM31HLD PWM31 电平保持控制寄存器
B3
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
技术交流及选型论坛:www.STCAIMCU.com - 424 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
PWM37T1H
PWM37T1 计数值高字节
FC48H
PWM37T1L
PWM37T1 计数值低字节
FC49H
PWM37T2H
PWM37T2 计数值高字节
FC4AH
PWM37T2L
PWM37T2 计数值低字节
FC4BH
PWM37CR
PWM37 控制寄存器
FC4CH
ENO
INI
-
-
FC4DH
-
-
-
-
-
PWM37HLD PWM37 电平保持控制寄存器
x000,0000
x000,0000
0000,0000
PWM4CL
PWM4 计数器低字节
FC51H
PWM4 时钟选择
FC52H
-
PWM4TADCH PWM4 触发 ADC 计数高字节
FC53H
-
PWM4TADCL PWM4 触发 ADC 计数低字节
FC54H
PWM4FDCR PWM4 异常检测控制寄存器
-
-
SELT2
00xx,x000
-
HLDH
HLDL
xxxx,xx00
PWM_PS[3:0]
xxx0,0000
0000,0000
FC55H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FC56H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
0000,0000
-
PWM40T1L
PWM40T1 计数值低字节
FC61H
PWM40T2H
PWM40T2 计数值高字节
FC62H
PWM40T2L
PWM40T2 计数值低字节
FC63H
PWM40CR
PWM40 控制寄存器
FC64H
ENO
INI
-
-
FC65H
-
-
-
-
-
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM41T1H
PWM41T1 计数值高字节
FC68H
PWM41T1L
PWM41T1 计数值低字节
FC69H
PWM41T2H
PWM41T2 计数值高字节
FC6AH
PWM41T2L
PWM41T2 计数值低字节
FC6BH
PWM41CR
PWM41 控制寄存器
FC6CH
ENO
INI
-
-
FC6DH
-
-
-
-
-
FC71H
PWM42T2H
PWM42T2 计数值高字节
FC72H
PWM42T2L
PWM42T2 计数值低字节
FC73H
PWM42CR
PWM42 控制寄存器
FC74H
ENO
INI
-
-
FC75H
-
-
-
-
-
FC79H
PWM43T2H
PWM43T2 计数值高字节
FC7AH
PWM43T2L
PWM43T2 计数值低字节
FC7BH
PWM43CR
PWM43 控制寄存器
FC7CH
ENO
INI
-
-
FC7DH
-
-
-
-
-
PWM44T2L
PWM44T2 计数值低字节
FC83H
PWM44CR
PWM44 控制寄存器
FC84H
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
0000,0000
PWM43T1 计数值低字节
FC82H
-
ENI
x000,0000
PWM43T1L
PWM44T2 计数值高字节
xxxx,xx00
-
FC78H
PWM44T2H
HLDL
0000,0000
PWM43T1 计数值高字节
FC81H
HLDH
x000,0000
PWM43T1H
PWM44T1 计数值低字节
-
0000,0000
PWM42T1 计数值低字节
PWM44T1L
00xx,x000
x000,0000
PWM42T1L
FC80H
ENT1I
-
FC70H
PWM44T1 计数值高字节
ENT2I
0000,0000
PWM42T1 计数值高字节
PWM44T1H
-
ENI
x000,0000
PWM42T1H
PWM43HLD PWM43 电平保持控制寄存器
ENT1I
x000,0000
FC60H
PWM42HLD PWM42 电平保持控制寄存器
ENT2I
0000,0000
PWM40T1 计数值高字节
PWM41HLD PWM41 电平保持控制寄存器
-
ENI
x000,0000
PWM40T1H
PWM40HLD PWM40 电平保持控制寄存器
B0
-
FC50H
PWM4 中断标志寄存器
B1
0000,0000
PWM4 计数器高字节
PWM4IF
B2
-
PWM4CH
PWM4CKS
B3
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
ENO
INI
-
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
-
ENI
ENT2I
ENT1I
00xx,x000
技术交流及选型论坛:www.STCAIMCU.com - 425 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
PWM44HLD PWM44 电平保持控制寄存器
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
FC85H
-
-
-
-
-
-
HLDH
HLDL
-
PWM45T1H
PWM45T1 计数值高字节
FC88H
PWM45T1L
PWM45T1 计数值低字节
FC89H
PWM45T2H
PWM45T2 计数值高字节
FC8AH
PWM45T2L
PWM45T2 计数值低字节
FC8BH
PWM45CR
PWM45 控制寄存器
FC8CH
ENO
INI
-
-
FC8DH
-
-
-
-
-
PWM45HLD PWM45 电平保持控制寄存器
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM46T1H
PWM46T1 计数值高字节
FC90H
PWM46T1L
PWM46T1 计数值低字节
FC91H
PWM46T2H
PWM46T2 计数值高字节
FC92H
PWM46T2L
PWM46T2 计数值低字节
FC93H
PWM46CR
PWM46 控制寄存器
FC94H
ENO
INI
-
-
FC95H
-
-
-
-
-
PWM46HLD PWM46 电平保持控制寄存器
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM47T1H
PWM47T1 计数值高字节
FC98H
PWM47T1L
PWM47T1 计数值低字节
FC99H
PWM47T2H
PWM47T2 计数值高字节
FC9AH
PWM47T2L
PWM47T2 计数值低字节
FC9BH
PWM47CR
PWM47 控制寄存器
FC9CH
ENO
INI
-
-
FC9DH
-
-
-
-
-
PWM47HLD PWM47 电平保持控制寄存器
xxxx,xx00
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
PWM5CH
PWM5 计数器高字节
FCA0H
PWM5CL
PWM5 计数器低字节
FCA1H
PWM5 时钟选择
FCA2H
-
-
-
SELT2
PWM5 中断标志寄存器
FCA5H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FCA6H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
0000,0000
-
PWM5CKS
PWM5IF
PWM5FDCR PWM5 异常检测控制寄存器
x000,0000
0000,0000
PWM50T1H
PWM50T1 计数值高字节
FCB0H
PWM50T1L
PWM50T1 计数值低字节
FCB1H
PWM50T2H
PWM50T2 计数值高字节
FCB2H
PWM50T2L
PWM50T2 计数值低字节
FCB3H
PWM50CR
PWM50 控制寄存器
FCB4H
ENO
INI
-
-
FCB5H
-
-
-
-
-
PWM50HLD PWM50 电平保持控制寄存器
0000,0000
-
x000,0000
0000,0000
PWM51T1 计数值高字节
FCB8H
PWM51T1L
PWM51T1 计数值低字节
FCB9H
PWM51T2H
PWM51T2 计数值高字节
FCBAH
PWM51T2L
PWM51T2 计数值低字节
FCBBH
PWM51CR
PWM51 控制寄存器
FCBCH
ENO
INI
-
-
FCBDH
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM52T1H
PWM52T1 计数值高字节
FCC0H
PWM52T1L
PWM52T1 计数值低字节
FCC1H
PWM52T2H
PWM52T2 计数值高字节
FCC2H
PWM52T2L
PWM52T2 计数值低字节
FCC3H
PWM52CR
PWM52 控制寄存器
FCC4H
ENO
INI
-
-
FCC5H
-
-
-
-
PWM52HLD PWM52 电平保持控制寄存器
xxx0,0000
x000,0000
PWM51T1H
PWM51HLD PWM51 电平保持控制寄存器
PWM_PS[3:0]
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
技术交流及选型论坛:www.STCAIMCU.com - 426 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
PWM53T1H
PWM53T1 计数值高字节
FCC8H
PWM53T1L
PWM53T1 计数值低字节
FCC9H
PWM53T2H
PWM53T2 计数值高字节
FCCAH
PWM53T2L
PWM53T2 计数值低字节
FCCBH
PWM53CR
PWM53 控制寄存器
FCCCH
ENO
INI
-
-
FCCDH
-
-
-
-
-
PWM53HLD PWM53 电平保持控制寄存器
-
x000,0000
0000,0000
PWM54T1L
PWM54T1 计数值低字节
FCD1H
PWM54T2H
PWM54T2 计数值高字节
FCD2H
PWM54T2L
PWM54T2 计数值低字节
FCD3H
PWM54CR
PWM54 控制寄存器
FCD4H
ENO
INI
-
-
FCD5H
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM55T1H
PWM55T1 计数值高字节
FCD8H
PWM55T1L
PWM55T1 计数值低字节
FCD9H
PWM55T2H
PWM55T2 计数值高字节
FCDAH
PWM55T2L
PWM55T2 计数值低字节
FCDBH
PWM55CR
PWM55 控制寄存器
FCDCH
ENO
INI
-
-
FCDDH
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM56T1H
PWM56T1 计数值高字节
FCE0H
PWM56T1L
PWM56T1 计数值低字节
FCE1H
PWM56T2H
PWM56T2 计数值高字节
FCE2H
PWM56T2L
PWM56T2 计数值低字节
FCE3H
PWM56CR
PWM56 控制寄存器
FCE4H
ENO
INI
-
-
FCE5H
-
-
-
-
-
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
PWM57T1H
PWM57T1 计数值高字节
FCE8H
PWM57T1L
PWM57T1 计数值低字节
FCE9H
PWM57T2H
PWM57T2 计数值高字节
FCEAH
PWM57T2L
PWM57T2 计数值低字节
FCEBH
PWM57CR
PWM57 控制寄存器
FCECH
ENO
INI
-
-
FCEDH
-
-
-
-
PWM57HLD PWM57 电平保持控制寄存器
B0
0000,0000
FCD0H
PWM56HLD PWM56 电平保持控制寄存器
B1
x000,0000
PWM54T1 计数值高字节
PWM55HLD PWM55 电平保持控制寄存器
B2
-
PWM54T1H
PWM54HLD PWM54 电平保持控制寄存器
B3
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
x000,0000
0000,0000
-
x000,0000
0000,0000
-
ENI
ENT2I
ENT1I
00xx,x000
-
HLDH
HLDL
xxxx,xx00
MD3
MDU 数据寄存器
FCF0H
MD3[7:0]
0000,0000
MD2
MDU 数据寄存器
FCF1H
MD2[7:0]
0000,0000
MD1
MDU 数据寄存器
FCF2H
MD1[7:0]
0000,0000
MD0
MDU 数据寄存器
FCF3H
MD0[7:0]
0000,0000
MD5
MDU 数据寄存器
FCF4H
MD5[7:0]
0000,0000
MD4
MDU 数据寄存器
FCF5H
MD4[7:0]
0000,0000
ARCON
MDU 模式控制寄存器
FCF6H
OPCON
MDU 操作控制寄存器
FCF7H
-
MDOV
-
-
-
-
RST
ENOP
x0xx,xx00
COMEN
COM 使能寄存器
FB00H
C7EN
C6EN
C5EN
C4EN
C3EN
C2EN
C1EN
C0EN
0000,0000
SEGENL
SEG 使能寄存器
FB01H
S7EN
S6EN
S5EN
S4EN
S3EN
S2EN
S1EN
S0EN
0000,0000
SEGENH
SEG 使能寄存器
FB02H
S15EN
S14EN
S13EN
S12EN
S11EN
S10EN
S9EN
S8EN
0000,0000
LEDCTRL
LED 控制寄存器
FB03H
LEDON
-
MODE[2:0]
SC[4:0]
LEDMODE[1:0]
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
-
0000,0000
LEDDUTY[2:0]
0x00,x000
技术交流及选型论坛:www.STCAIMCU.com - 427 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
LEDCKS
LED 时钟分频寄存器
B6
B5
B4
B3
B2
B1
B0
FB04H
0000,0001
COM0_DA_L 共阳模式显示数据
FB10H
0000,0000
COM1_DA_L 共阳模式显示数据
FB11H
0000,0000
COM2_DA_L 共阳模式显示数据
FB12H
0000,0000
COM3_DA_L 共阳模式显示数据
FB13H
0000,0000
COM4_DA_L 共阳模式显示数据
FB14H
0000,0000
COM5_DA_L 共阳模式显示数据
FB15H
0000,0000
COM6_DA_L 共阳模式显示数据
FB16H
0000,0000
COM7_DA_L 共阳模式显示数据
FB17H
0000,0000
COM0_DA_H 共阳模式显示数据
FB18H
0000,0000
COM1_DA_H 共阳模式显示数据
FB19H
0000,0000
COM2_DA_H 共阳模式显示数据
FB1AH
0000,0000
COM3_DA_H 共阳模式显示数据
FB1BH
0000,0000
COM4_DA_H 共阳模式显示数据
FB1CH
0000,0000
COM5_DA_H 共阳模式显示数据
FB1DH
0000,0000
COM6_DA_H 共阳模式显示数据
FB1EH
0000,0000
COM7_DA_H 共阳模式显示数据
FB1FH
0000,0000
COM0_DC_L 共阴模式显示数据
FB20H
0000,0000
COM1_DC_L 共阴模式显示数据
FB21H
0000,0000
COM2_DC_L 共阴模式显示数据
FB22H
0000,0000
COM3_DC_L 共阴模式显示数据
FB23H
0000,0000
COM4_DC_L 共阴模式显示数据
FB24H
0000,0000
COM5_DC_L 共阴模式显示数据
FB25H
0000,0000
COM6_DC_L 共阴模式显示数据
FB26H
0000,0000
COM7_DC_L 共阴模式显示数据
FB27H
0000,0000
COM0_DC_H 共阴模式显示数据
FB28H
0000,0000
COM1_DC_H 共阴模式显示数据
FB29H
0000,0000
COM2_DC_H 共阴模式显示数据
FB2AH
0000,0000
COM3_DC_H 共阴模式显示数据
FB2BH
0000,0000
COM4_DC_H 共阴模式显示数据
FB2CH
0000,0000
COM5_DC_H 共阴模式显示数据
FB2DH
0000,0000
COM6_DC_H 共阴模式显示数据
FB2EH
0000,0000
COM7_DC_H 共阴模式显示数据
FB2FH
0000,0000
TSCHEN1
触摸按键使能寄存器 1
FB40H
TKEN7
TKEN6
TKEN5
TKEN2
TKEN1
TKEN0
0000,0000
TSCHEN2
触摸按键使能寄存器 2
FB41H
TKEN15
TKEN14
TKEN13 TKEN12 TKEN11 TKEN10
TKEN9
TKEN8
0000,0000
TSCFG1
触摸按键配置寄存器 1
FB42H
-
SCR[2:0]
DT[2:0]
TSCFG2
触摸按键配置寄存器 2
FB43H
-
TSWUTC
触摸按键唤醒控制寄存器
FB44H
TSCTRL
触摸按键控制寄存器
FB45H
TSGO
SINGLE
TSWAIT
TSSTA1
触摸按键状态寄存器 1
FB46H
LEDWK
-
-
-
TSWKCHN[3:0]
0xxx,0000
TSSTA2
触摸按键状态寄存器 2
FB47H
TSIF
TSDOV
-
-
TSDNCHN[3:0]
00xx,0000
触摸按键时间控制寄存器
FB48H
TSRT
-
-
TKEN4
TKEN3
-
-
-
TSVR[1:0]
x000,0000
xxxx,xx00
0000,0001
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
TSWUCS TSDCEN TSWUEN
TSSAMP[1:0]
0000,0000
0000,0001
技术交流及选型论坛:www.STCAIMCU.com - 428 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
TSDATH
触摸按键数据高字节
FB49H
0000,0000
TSDATL
触摸按键数据低字节
FB4AH
0000,0000
TSTH00H
触摸按键 0 门槛值高字节
FB50H
0000,0000
TSTH00L
触摸按键 0 门槛值低字节
FB51H
0000,0000
TSTH01H
触摸按键 1 门槛值高字节
FB52H
0000,0000
TSTH01L
触摸按键 1 门槛值低字节
FB53H
0000,0000
TSTH02H
触摸按键 2 门槛值高字节
FB54H
0000,0000
TSTH02L
触摸按键 2 门槛值低字节
FB55H
0000,0000
TSTH03H
触摸按键 3 门槛值高字节
FB56H
0000,0000
TSTH03L
触摸按键 3 门槛值低字节
FB57H
0000,0000
TSTH04H
触摸按键 4 门槛值高字节
FB58H
0000,0000
TSTH04L
触摸按键 4 门槛值低字节
FB59H
0000,0000
TSTH05H
触摸按键 5 门槛值高字节
FB5AH
0000,0000
TSTH05L
触摸按键 5 门槛值低字节
FB5BH
0000,0000
TSTH06H
触摸按键 6 门槛值高字节
FB5CH
0000,0000
TSTH06L
触摸按键 6 门槛值低字节
FB5DH
0000,0000
TSTH07H
触摸按键 7 门槛值高字节
FB5EH
0000,0000
TSTH07L
触摸按键 7 门槛值低字节
FB5FH
0000,0000
TSTH08H
触摸按键 8 门槛值高字节
FB60H
0000,0000
TSTH08L
触摸按键 8 门槛值低字节
FB61H
0000,0000
TSTH09H
触摸按键 9 门槛值高字节
FB62H
0000,0000
TSTH09L
触摸按键 9 门槛值低字节
FB63H
0000,0000
TSTH10H
触摸按键 10 门槛值高字节
FB64H
0000,0000
TSTH10L
触摸按键 10 门槛值低字节
FB65H
0000,0000
TSTH11H
触摸按键 11 门槛值高字节
FB66H
0000,0000
TSTH11L
触摸按键 11 门槛值低字节
FB67H
0000,0000
TSTH12H
触摸按键 12 门槛值高字节
FB68H
0000,0000
TSTH12L
触摸按键 12 门槛值低字节
FB69H
0000,0000
TSTH13H
触摸按键 13 门槛值高字节
FB6AH
0000,0000
TSTH13L
触摸按键 13 门槛值低字节
FB6BH
0000,0000
TSTH14H
触摸按键 14 门槛值高字节
FB6CH
0000,0000
TSTH14L
触摸按键 14 门槛值低字节
FB6DH
0000,0000
TSTH15H
触摸按键 15 门槛值高字节
FB6EH
0000,0000
TSTH15L
触摸按键 15 门槛值低字节
FB6FH
0000,0000
注:特殊功能寄存器初始值意义
0: 初始值为 0;
1: 初始值为 1;
n: 初始值与 ISP 下载时的硬件选项有关;
x: 不存在这个位,初始值不确定
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 429 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
9 I/O 口
产品线
最多 I/O 口数量
STC8G1K08 系列
18
STC8G1K08-8Pin 系列
6
STC8G1K08A 系列
6
STC8G2K64S4 系列
45
STC8G2K64S2 系列
45
STC15H2K64S4 系列
42
所有的 I/O 口均有 4 种工作模式:准双向口/弱上拉(标准 8051 输出口模式)、推挽输出/强上拉、高
阻输入(电流既不能流入也不能流出)、开漏模式。可使用软件对 I/O 口的工作模式进行容易配置。
关于 I/O 的注意事项:
1、 P3.0 和 P3.1 口上电后的状态为弱上拉双向口模式
2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO 口
前必须先设置 IO 口模式
3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能同时
为低电平,否则会进入 USB 下载模式而无法运行用户代码
4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换到双
向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式
5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普通
I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电阻依
然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口驱动外
部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 430 -
STC8G 系列技术手册
9.1
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
I/O 口相关寄存器
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
P0
P0 端口
80H
P07
P06
P05
P04
P03
P02
P01
P00
1111,1111
P1
P1 端口
90H
P17
P16
P15
P14
P13
P12
P11
P10
1111,1111
P2
P2 端口
A0H
P27
P26
P25
P24
P23
P22
P21
P20
1111,1111
P3
P3 端口
B0H
P37
P36
P35
P34
P33
P32
P31
P30
1111,1111
P4
P4 端口
C0H
P47
P46
P45
P44
P43
P42
P41
P40
1111,1111
P5
P5 端口
C8H
-
-
P55
P54
P53
P52
P51
P50
xx11,1111
P0M1
P0 口配置寄存器 1
93H
P07M1
P06M1
P05M1
P04M1
P03M1
P02M1
P01M1
P00M1
1111,1111
P0M0
P0 口配置寄存器 0
94H
P07M0
P06M0
P05M0
P04M0
P03M0
P02M0
P01M0
P00M0
0000,0000
P1M1
P1 口配置寄存器 1
91H
P17M1
P16M1
P15M1
P14M1
P13M1
P12M1
P11M1
P10M1
1111,1111
P1M0
P1 口配置寄存器 0
92H
P17M0
P16M0
P15M0
P14M0
P13M0
P12M0
P11M0
P10M0
0000,0000
P2M1
P2 口配置寄存器 1
95H
P27M1
P26M1
P25M1
P24M1
P23M1
P22M1
P21M1
P20M1
1111,1111
P2M0
P2 口配置寄存器 0
96H
P27M0
P26M0
P25M0
P24M0
P23M0
P22M0
P21M0
P20M0
0000,0000
P3M1
P3 口配置寄存器 1
B1H
P37M1
P36M1
P35M1
P34M1
P33M1
P32M1
P31M1
P30M1
n111,1100
P3M0
P3 口配置寄存器 0
B2H
P37M0
P36M0
P35M0
P34M0
P33M0
P32M0
P31M0
P30M0
n000,0000
P4M1
P4 口配置寄存器 1
B3H
P47M1
P46M1
P45M1
P44M1
P43M1
P42M1
P41M1
P40M1
1111,1111
P4M0
P4 口配置寄存器 0
B4H
P47M0
P46M0
P45M0
P44M0
P43M0
P42M0
P41M0
P40M0
0000,0000
P5M1
P5 口配置寄存器 1
C9H
-
-
P55M1
P54M1
P53M1
P52M1
P51M1
P50M1
xx11,1111
P5M0
P5 口配置寄存器 0
CAH
-
-
P55M0
P54M0
P53M0
P52M0
P51M0
P50M0
xx00,0000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 431 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
复位值
地址
B7
B6
B5
B4
B3
B2
B1
B0
P0PU
P0 口上拉电阻控制寄存器
FE10H
P07PU
P06PU
P05PU
P04PU
P03PU
P02PU
P01PU
P00PU
0000,0000
P1PU
P1 口上拉电阻控制寄存器
FE11H
P17PU
P16PU
P15PU
P14PU
P13PU
P12PU
P11PU
P10PU
0000,0000
P2PU
P2 口上拉电阻控制寄存器
FE12H
P27PU
P26PU
P25PU
P24PU
P23PU
P22PU
P21PU
P20PU
0000,0000
P3PU
P3 口上拉电阻控制寄存器
FE13H
P37PU
P36PU
P35PU
P34PU
P33PU
P32PU
P31PU
P30PU
0000,0000
P4PU
P4 口上拉电阻控制寄存器
FE14H
P47PU
P46PU
P45PU
P44PU
P43PU
P42PU
P41PU
P40PU
0000,0000
P5PU
P5 口上拉电阻控制寄存器
FE15H
-
-
P55PU
P54PU
P53PU
P52PU
P51PU
P50PU
xx00,0000
P0NCS
P0 口施密特触发控制寄存器
FE18H
P07NCS
P06NCS
P05NCS
P04NCS
P03NCS
P02NCS
P01NCS
P00NCS 0000,0000
P1NCS
P1 口施密特触发控制寄存器
FE19H
P17NCS
P16NCS
P15NCS
P14NCS
P13NCS
P12NCS
P11NCS
P10NCS 0000,0000
P2NCS
P2 口施密特触发控制寄存器
FE1AH P27NCS
P26NCS
P25NCS
P24NCS
P23NCS
P22NCS
P21NCS
P20NCS 0000,0000
P3NCS
P3 口施密特触发控制寄存器
FE1BH P37NCS
P36NCS
P35NCS
P34NCS
P33NCS
P32NCS
P31NCS
P30NCS 0000,0000
P4NCS
P4 口施密特触发控制寄存器
FE1CH P47NCS
P46NCS
P45NCS
P44NCS
P43NCS
P42NCS
P41NCS
P40NCS 0000,0000
P5NCS
P5 口施密特触发控制寄存器
FE1DH
-
-
P55NCS
P54NCS
P53NCS
P52NCS
P51NCS
P50NCS xx00,0000
P0SR
P0 口电平转换速率寄存器
FE20H
P07SR
P06SR
P05SR
P04SR
P03SR
P02SR
P01SR
P00SR
1111,1111
P1SR
P1 口电平转换速率寄存器
FE21H
P17SR
P16SR
P15SR
P14SR
P13SR
P12SR
P11SR
P10SR
1111,1111
P2SR
P2 口电平转换速率寄存器
FE22H
P27SR
P26SR
P25SR
P24SR
P23SR
P22SR
P21SR
P20SR
1111,1111
P3SR
P3 口电平转换速率寄存器
FE23H
P37SR
P36SR
P35SR
P34SR
P33SR
P32SR
P31SR
P30SR
1111,1111
P4SR
P4 口电平转换速率寄存器
FE24H
P47SR
P46SR
P45SR
P44SR
P43SR
P42SR
P41SR
P40SR
1111,1111
P5SR
P5 口电平转换速率寄存器
FE25H
-
-
P55SR
P54SR
P53SR
P52SR
P51SR
P50SR
xx11,1111
P0DR
P0 口驱动电流控制寄存器
FE28H
P07DR
P06DR
P05DR
P04DR
P03DR
P02DR
P01DR
P00DR
1111,1111
P1DR
P1 口驱动电流控制寄存器
FE29H
P17DR
P16DR
P15DR
P14DR
P13DR
P12DR
P11DR
P10DR
1111,1111
P2DR
P2 口驱动电流控制寄存器
FE2AH
P27DR
P26DR
P25DR
P24DR
P23DR
P22DR
P21DR
P20DR
1111,1111
P3DR
P3 口驱动电流控制寄存器
FE2BH
P37DR
P36DR
P35DR
P34DR
P33DR
P32DR
P31DR
P30DR
1111,1111
P4DR
P4 口驱动电流控制寄存器
FE2CH
P47DR
P46DR
P45DR
P44DR
P43DR
P42DR
P41DR
P40DR
1111,1111
P5DR
P5 口驱动电流控制寄存器
FE2DH
-
-
P55DR
P54DR
P53DR
P52DR
P51DR
P50DR
xx11,1111
P0IE
P0 口输入使能控制寄存器
FE30H
P07IE
P06IE
P05IE
P04IE
P03IE
P02IE
P01IE
P00IE
1111,1111
P1IE
P1 口输入使能控制寄存器
FE31H
P17IE
P16IE
P15IE
P14IE
P13IE
P12IE
P11IE
P10IE
1111,1111
P3IE
P3 口输入使能控制寄存器
FE33H
P37IE
P36IE
P35IE
P34IE
P33IE
P32IE
P31IE
P30IE
1111,1111
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 432 -
STC8G 系列技术手册
9.1.1
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
端口数据寄存器(Px)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
P0
80H
P0.7
P0.6
P0.5
P0.4
P0.3
P0.2
P0.1
P0.0
P1
90H
P1.7
P1.6
P1.5
P1.4
P1.3
P1.2
P1.1
P1.0
P2
A0H
P2.7
P2.6
P2.5
P2.4
P2.3
P2.2
P2.1
P2.0
P3
B0H
P3.7
P3.6
P3.5
P3.4
P3.3
P3.2
P3.1
P3.0
P4
C0H
P4.7
P4.6
P4.5
P4.4
P4.3
P4.2
P4.1
P4.0
P5
C8H
-
-
P5.5
P5.4
P5.3
P5.2
P5.1
P5.0
读写端口状态
写 0:输出低电平到端口缓冲区
写 1:输出高电平到端口缓冲区
读:直接读端口管脚上的电平
9.1.2
端口模式配置寄存器(PxM0,PxM1)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
P0M0
94H
P07M0
P06M0
P05M0
P04M0
P03M0
P02M0
P01M0
P00M0
P0M1
93H
P07M1
P06M1
P05M1
P04M1
P03M1
P02M1
P01M1
P00M1
P1M0
92H
P17M0
P16M0
P15M0
P14M0
P13M0
P12M0
P11M0
P10M0
P1M1
91H
P17M1
P16M1
P15M1
P14M1
P13M1
P12M1
P11M1
P10M1
P2M0
96H
P27M0
P26M0
P25M0
P24M0
P23M0
P22M0
P21M0
P20M0
P2M1
95H
P27M1
P26M1
P25M1
P24M1
P23M1
P22M1
P21M1
P20M1
P3M0
B2H
P37M0
P36M0
P35M0
P34M0
P33M0
P32M0
P31M0
P30M0
P3M1
B1H
P37M1
P36M1
P35M1
P34M1
P33M1
P32M1
P31M1
P30M1
P4M0
B4H
P47M0
P46M0
P45M0
P44M0
P43M0
P42M0
P41M0
P40M0
P4M1
B3H
P47M1
P46M1
P45M1
P44M1
P43M1
P42M1
P41M1
P40M1
P5M0
CAH
-
-
P55M0
P54M0
P53M0
P52M0
P51M0
P50M0
P5M1
C9H
-
-
P55M1
P54M1
P53M1
P52M1
P51M1
P50M1
配置端口的模式
PnM1.x
PnM0.x
Pn.x 口工作模式
0
0
准双向口
0
1
推挽输出
1
0
高阻输入
1
1
开漏模式
注意:当有I/O口被选择为ADC输入通道时,必须设置PxM0/PxM1寄存器将I/O口模式设置为输入模式。另
外如果MCU进入掉电模式/时钟停振模式后,仍需要使能ADC通道,则需要设置PxIE寄存器关闭数字输入,
才能保证不会有额外的耗电
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 433 -
STC8G 系列技术手册
9.1.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
端口上拉电阻控制寄存器(PxPU)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
P0PU
FE10H
P07PU
P06PU
P05PU
P04PU
P03PU
P02PU
P01PU
P00PU
P1PU
FE11H
P17PU
P16PU
P15PU
P14PU
P13PU
P12PU
P11PU
P10PU
P2PU
FE12H
P27PU
P26PU
P25PU
P24PU
P23PU
P22PU
P21PU
P20PU
P3PU
FE13H
P37PU
P36PU
P35PU
P34PU
P33PU
P32PU
P31PU
P30PU
P4PU
FE14H
P47PU
P46PU
P45PU
P44PU
P43PU
P42PU
P41PU
P40PU
P5PU
FE15H
-
-
P55PU
P54PU
P53PU
P52PU
P51PU
P50PU
端口内部4.1K上拉电阻控制位(注:P3.0和P3.1口上的上拉电阻可能会略小一些)
0:禁止端口内部的 4.1K 上拉电阻
1:使能端口内部的 4.1K 上拉电阻
9.1.4
端口施密特触发控制寄存器(PxNCS)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
P0NCS
FE18H
P07NCS
P06NCS
P05NCS
P04NCS
P03NCS
P02NCS
P01NCS
P00NCS
P1NCS
FE19H
P17NCS
P16NCS
P15NCS
P14NCS
P13NCS
P12NCS
P11NCS
P10NCS
P2NCS
FE1AH
P27NCS
P26NCS
P25NCS
P24NCS
P23NCS
P22NCS
P21NCS
P20NCS
P3NCS
FE1BH
P37NCS
P36NCS
P35NCS
P34NCS
P33NCS
P32NCS
P31NCS
P30NCS
P4NCS
FE1CH
P47NCS
P46NCS
P45NCS
P44NCS
P43NCS
P42NCS
P41NCS
P40NCS
P5NCS
FE1DH
-
-
P55NCS
P54NCS
P53NCS
P52NCS
P51NCS
P50NCS
端口施密特触发控制位
0:使能端口的施密特触发功能。(上电复位后默认使能施密特触发)
1:禁止端口的施密特触发功能。
9.1.5
端口电平转换速度控制寄存器(PxSR)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
P0SR
FE20H
P07SR
P06SR
P05SR
P04SR
P03SR
P02SR
P01SR
P00SR
P1SR
FE21H
P17SR
P16SR
P15SR
P14SR
P13SR
P12SR
P11SR
P10SR
P2SR
FE22H
P27SR
P26SR
P25SR
P24SR
P23SR
P22SR
P21SR
P20SR
P3SR
FE23H
P37SR
P36SR
P35SR
P34SR
P33SR
P32SR
P31SR
P30SR
P4SR
FE24H
P47SR
P46SR
P45SR
P44SR
P43SR
P42SR
P41SR
P40SR
P5SR
FE25H
-
-
P55SR
P54SR
P53SR
P52SR
P51SR
P50SR
控制端口电平转换的速度
0:电平转换速度快,相应的上下冲会比较大
1:电平转换速度慢,相应的上下冲比较小
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 434 -
STC8G 系列技术手册
9.1.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
端口驱动电流控制寄存器(PxDR)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
P0DR
FE28H
P07DR
P06DR
P05DR
P04DR
P03DR
P02DR
P01DR
P00DR
P1DR
FE29H
P17DR
P16DR
P15DR
P14DR
P13DR
P12DR
P11DR
P10DR
P2DR
FE2AH
P27DR
P26DR
P25DR
P24DR
P23DR
P22DR
P21DR
P20DR
P3DR
FE2BH
P37DR
P36DR
P35DR
P34DR
P33DR
P32DR
P31DR
P30DR
P4DR
FE2CH
P47DR
P46DR
P45DR
P44DR
P43DR
P42DR
P41DR
P40DR
P5DR
FE2DH
-
-
P55DR
P54DR
P53DR
P52DR
P51DR
P50DR
控制端口的驱动能力
0:增强驱动能力
1:一般驱动能力
9.1.7
端口数字信号输入使能控制寄存器(PxIE)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
P0IE
FE30H
P07IE
P06IE
P05IE
P04IE
P03IE
P02IE
P01IE
P00IE
P1IE
FE31H
P17IE
P16IE
P15IE
P14IE
P13IE
P12IE
P11IE
P10IE
P3IE
FE33H
P37IE
P36IE
P35IE
P34IE
P33IE
P32IE
P31IE
P30IE
P5IE
FE35H
-
-
P55IE
P54IE
P53IE
P52IE
P51IE
P50IE
数字信号输入使能控制
0:禁止数字信号输入。若 I/O 被当作比较器输入口、ADC 输入口或者触摸按键输入口等模拟口时,
进入时钟停振模式前,必须设置为 0,否则会有额外的耗电。
1:使能数字信号输入。若 I/O 被当作数字口时,必须设置为 1,否 MCU 无法读取外部端口的电平。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 435 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
配置 I/O 口
9.2
每个 I/O 的配置都需要使用两个寄存器进行设置。
以 P0 口为例,配置 P0 口需要使用 P0M0 和 P0M1 两个寄存器进行配置,如下图所示:
即 P0M0 的第 0 位和 P0M1 的第 0 位组合起来配置 P0.0 口的模式
即 P0M0 的第 1 位和 P0M1 的第 1 位组合起来配置 P0.1 口的模式
其他所有 I/O 的配置都与此类似。
PnM0 与 PnM1 的组合方式如下表所示
PnM1
PnM0
0
0
I/O 口工作模式
准双向口(传统8051端口模式,弱上拉)
灌电流可达20mA,拉电流为270~150μA(存在制造误差)
0
1
推挽输出(强上拉输出,可达20mA,要加限流电阻)
1
0
高阻输入(电流既不能流入也不能流出)
开漏模式(Open-Drain),内部上拉电阻断开
开漏模式既可读外部状态也可对外输出(高电平或低电
平)。如要正确读外部状态或需要对外输出高电平,需外加
上拉电阻,否则读不到外部状态,也对外输不出高电平。
1
1
===【开漏工作模式】,对外设置输出为 1,等同
于 【高阻输入】
===【开漏工作模式】
,
【打开内部上拉电阻 | 或
外部加上拉电阻】,简单等同于 【准双向口】
注:n = 0,1,2,3,4,5,6,7
注意:
虽然每个I/O口在弱上拉(准双向口)/强推挽输出/开漏模式时都能承受20mA的灌电流
(还是要加限流电阻,如1K、560Ω、472Ω等),在强推挽输出时能输出20mA的拉电流(也
要加限流电阻),但整个芯片的工作电流推荐不要超过70mA,即从Vcc流入的电流建议不要
超过70mA,从Gnd流出电流建议不要超过70mA,整体流入/流出电流建议都不要超过70mA。
(STC8G1K08A系列和STC8G1K08-8Pin系列,整个芯片的工作电流推荐不要超过35mA,即从
Vcc流入的电流建议不要超过35mA,从Gnd流出电流建议不要超过35mA,整体流入/流出电流
建议都不要超过35mA)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 436 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
I/O 的结构图
9.3
9.3.1
准双向口(弱上拉)
准双向口(弱上拉)输出类型可用作输出和输入功能而不需重新配置端口输出状态。这是因为当端
口输出为 1 时驱动能力很弱,允许外部装置将其拉低。当引脚输出为低时,它的驱动能力很强,可吸收
相当大的电流。准双向口有 3 个上拉晶体管适应不同的需要。
在 3 个上拉晶体管中,有 1 个上拉晶体管称为“弱上拉”,当端口寄存器为 1 且引脚本身也为 1 时打
开。此上拉提供基本驱动电流使准双向口输出为 1。如果一个引脚输出为 1 而由外部装置下拉到低时,
弱上拉关闭而“极弱上拉”维持开状态,为了把这个引脚强拉为低,外部装置必须有足够的灌电流能力
使引脚上的电压降到门槛电压以下。对于 5V 单片机,“弱上拉”晶体管的电流约 250uA;对于 3.3V 单
片机,“弱上拉”晶体管的电流约 150uA。
第 2 个上拉晶体管,称为“极弱上拉”,当端口锁存为 1 时打开。当引脚悬空时,这个极弱的上拉源
产生很弱的上拉电流将引脚上拉为高电平。对于 5V 单片机,“极弱上拉”晶体管的电流约 18uA;对于
3.3V 单片机,
“极弱上拉”晶体管的电流约 5uA。
第 3 个上拉晶体管称为“强上拉”。当端口锁存器由 0 到 1 跳变时,这个上拉用来加快准双向口由逻
辑 0 到逻辑 1 转换。当发生这种情况时,强上拉打开约 2 个时钟以使引脚能够迅速地上拉到高电平。
准双向口(弱上拉)带有一个施密特触发输入以及一个干扰抑制电路。准双向口(弱上拉)读外部
状态前,要先锁存为 ‘1’,才可读到外部正确的状态.
准双向口(弱上拉)输出如下图所示:
VCC
2个CPU
时钟延时
VCC
强
VCC VCC
极弱
弱
端口
引脚
端口锁存数据
输入数据
干扰抑制
9.3.2
推挽输出
强推挽输出配置的下拉结构与开漏模式以及准双向口的下拉结构相同,但当锁存器为 1 时提供持续
的强上拉。推挽模式一般用于需要更大驱动电流的情况。
强推挽引脚配置如下图所示:
VCC
强
端口
引脚
端口锁存数据
输入数据
干扰抑制
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 437 -
STC8G 系列技术手册
9.3.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
高阻输入
电流既不能流入也不能流出
输入口带有一个施密特触发输入以及一个干扰抑制电路
高阻输入引脚配置如下图所示:
端口
引脚
输入数据
干扰抑制
9.3.4
开漏模式
===【开漏工作模式】
,对外设置输出为 1,等同于 【高阻输入】
===【开漏工作模式】
,
【打开内部上拉电阻 | 或外部加上拉电阻】,简单等同于 【准双向口】
开漏模式既可读外部状态也可对外输出(高电平或低电平)。如要正确读外部状态或需要对外输出高
电平,需外加上拉电阻。
当端口锁存器为 0 时,开漏模式关闭所有上拉晶体管。当作为一个逻辑输出高电平时,这种配置方
式必须有外部上拉,一般通过电阻外接到 Vcc。如果外部有上拉电阻,开漏的 I/O 口还可读外部状态,
即此时被配置为开漏模式的 I/O 口还可作为输入 I/O 口。这种方式的下拉与准双向口相同。
开漏端口带有一个施密特触发输入以及一个干扰抑制电路。
输出端口配置如下图所示:
端口
引脚
端口锁存数据
输入数据
干扰抑制
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 438 -
STC8G 系列技术手册
9.3.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
新增 4.1K 上拉电阻
STC8 系列所有的 I/O 口内部均可使能一个大约 4.1K 的上拉电阻(由于制造误差,上拉电阻的范围
可能为 3K~5K)
VCC
VCC
VCC
VCC
新增
4.1K
上拉电阻
2个CPU
时钟延时
强
极弱
弱
端口
引脚
端口锁存数据
PxPU控制位
输入数据
干扰抑制
端口上拉电阻控制寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
P0PU
FE10H
P07PU
P06PU
P05PU
P04PU
P03PU
P02PU
P01PU
P00PU
P1PU
FE11H
P17PU
P16PU
P15PU
P14PU
P13PU
P12PU
P11PU
P10PU
P2PU
FE12H
P27PU
P26PU
P25PU
P24PU
P23PU
P22PU
P21PU
P20PU
P3PU
FE13H
P37PU
P36PU
P35PU
P34PU
P33PU
P32PU
P31PU
P30PU
P4PU
FE14H
P47PU
P46PU
P45PU
P44PU
P43PU
P42PU
P41PU
P40PU
P5PU
FE15H
-
-
P55PU
P54PU
P53PU
P52PU
P51PU
P50PU
端口内部4.1K上拉电阻控制位(注:P3.0和P3.1口上的上拉电阻可能会略小一些)
0:禁止端口内部的 4.1K 上拉电阻
1:使能端口内部的 4.1K 上拉电阻
9.3.6
如何设置 I/O 口对外输出速度
当用户需要 I/O 口对外输出较快的频率时,可通过加大 I/O 口驱动电流以及增加 I/O 口电平转换速度
以达到提高 I/O 口对外输出速度
设置 PxSR 寄存器,可用于控制 I/O 口电平转换速度,设置为 0 时相应的 I/O 口为快速翻转,设置为
1 时为慢速翻转。
设置 PxDR 寄存器,可用于控制 I/O 口驱动电流大小,设置为 1 时 I/O 输出为一般驱动电流,设置
为 0 时为强驱动电流
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 439 -
STC8G 系列技术手册
9.3.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
如何设置 I/O 口电流驱动能力
若需要改变 I/O 口的电流驱动能力,可通过设置 PxDR 寄存器来实现
设置 PxDR 寄存器,可用于控制 I/O 口驱动电流大小,设置为 1 时 I/O 输出为一般驱动电流,设置
为 0 时为强驱动电流
9.3.8
如何降低 I/O 口对外辐射
由于设置 PxSR 寄存器,可用于控制 I/O 口电平转换速度,设置 PxDR 寄存器,可用于控制 I/O 口驱
动电流大小
当需要降低 I/O 口对外的辐射时,需要将 PxSR 寄存器设置为 1 以降低 I/O 口电平转换速度,同时需
要将 PxDR 寄存器设为 1 以降低 I/O 驱动电流,最终达到降低 I/O 口对外辐射
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 440 -
STC8G 系列技术手册
9.4
9.4.1
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
AIapp-ISP | I/O 口配置工具
普通配置模式
普通模式可以配置所有 I/O 的 4 种模式:
准双向口模式
推挽输出模式
高阻输入模式
开漏模式
①:在下载软件中选择“I/O 口配置工具”功能页,进入 I/O 口配置界面
②:选择需要配置的 I/O 口组,支持 P0~P7
③:整组 I/O 进行设置(将整组 P0/P1/…/P7 设置为)准双向口模式、推挽输出模式等
④:选择使能配置每组 I/O 中的端口
⑤:复制当前组 I/O 的配置代码
⑥:复制 P0~P7 口的全部配置代码
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 441 -
STC8G 系列技术手册
9.4.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
高级配置模式
高级模式可以配置 I/O:
使能/关闭上拉电阻
使能/关闭下拉电阻
使能/关闭施密特触发功能
选择 I/O 转换速度
选择 I/O 口驱动电流
使能/关闭 I/O 的数组输入功能
①:在下载软件中选择“I/O 口配置工具”功能页,进入 I/O 口配置界面
②:点击界面中的“高级配置”按钮进入 I/O 口高级配置界面
③:选择需要配置的 I/O 口组,支持 P0~P7
④:选择需要的配置模式
⑤:选择使能配置每组 I/O 中的端口
⑥:复制当前组 I/O 的配置代码
⑦:复制 P0~P7 口的全部配置代码
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 442 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
范例程序
9.5
端口模式设置
9.5.1
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M0
P0M1
P1M0
P1M1
P2M0
P2M1
P3M0
P3M1
P4M0
P4M1
P5M0
P5M1
P6M0
P6M1
P7M0
P7M1
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
0x94;
0x93;
0x92;
0x91;
0x96;
0x95;
0xb2;
0xb1;
0xb4;
0xb3;
0xca;
0xc9;
0xcc;
0xcb;
0xe2;
0xe1;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0xff;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0xff;
P3M0 = 0xff;
P3M1 = 0xff;
//设置 P0.0~P0.7 为双向口模式
//设置 P1.0~P1.7 为推挽输出模式
//设置 P2.0~P2.7 为高阻输入模式
//设置 P3.0~P3.7 为开漏模式
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M0
P0M1
P1M0
P1M1
P2M0
P2M1
P3M0
P3M1
P4M0
P4M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
094H
093H
092H
091H
096H
095H
0B2H
0B1H
0B4H
0B3H
0CAH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 443 -
STC8G 系列技术手册
P5M1
P6M0
P6M1
P7M0
P7M1
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
0C9H
0CCH
0CBH
0E2H
0E1H
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
SP, #5FH
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P0M0,#00H
P0M1,#00H
P1M0,#0FFH
P1M1,#00H
P2M0,#00H
P2M1,#0FFH
P3M0,#0FFH
P3M1,#0FFH
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
MAIN:
;设置 P0.0~P0.7 为双向口模式
;设置 P1.0~P1.7 为推挽输出模式
;设置 P2.0~P2.7 为高阻输入模式
;设置 P3.0~P3.7 为开漏模式
END
双向口读写操作
9.5.2
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sbit
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
P00
=
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
P0^0;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 444 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
P0M0 = 0x00;
P0M1 = 0x00;
//设置 P0.0~P0.7 为双向口模式
P00 = 1;
P00 = 0;
//P0.0 口输出高电平
//P0.0 口输出低电平
P00 = 1;
_nop_();
_nop_();
CY = P00;
//读取端口前先使能内部弱上拉电阻
//等待两个时钟
//
//读取端口状态
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
P0M0,#00H
MAIN:
;设置 P0.0~P0.7 为双向口模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 445 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
MOV
P0M1,#00H
SETB
CLR
P0.0
P0.0
;P0.0 口输出高电平
;P0.0 口输出低电平
SETB
NOP
NOP
MOV
P0.0
;读取端口前先使能内部弱上拉电阻
;等待两个时钟
C,P0.0
;读取端口状态
JMP
$
选型顾问: 13922805190
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 446 -
STC8G 系列技术手册
9.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
一种典型三极管控制电路
如果上拉控制,建议加上拉电阻 R1(3.3K~10K),如果不加上拉电阻 R1(3.3K~10K),建议 R2 的值在 15K
以上,或用强推挽输出。
9.7
典型发光二极管控制电路
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 447 -
STC8G 系列技术手册
9.8
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
混合电压供电系统 3V/5V 器件 I/O 口互连
宽电压单片机工作在 5V 时:
如需要直接连接 3.3V 器件时,为防止 3.3V 器件承受不了 5V,可将相应的单片机 I/O 口先串一个 330Ω
的限流电阻到 3.3V 器件 I/O 口,程序初始化时将单片机的 I/O 口设置成开漏工作模式,断开内部上拉电阻,
相应的 3.3V 器件 I/O 口外部加 10K 上拉电阻到 3.3V 器件的 Vcc,这样高电平是 3.3V,低电平是 0V,输入输
出一切正常。宽电压单片机 2.2V 以上肯定是高电平。
3.3V
10K
工作在5V的宽电压单片机
I/O口工作在开漏模式
3.3V器件I/O
330欧
宽电压 MCU 如工作在 3.3V 时,如需要连接到 5V 器件:
1、如果对方 5V 器件可以工作在开漏模式:
3.3V
工作在5V的器件
I/O口建议工作在开漏模式
10K
330欧
5V器件I/O
工作在3.3V的宽电压单片机
I/O口工作在开漏模式
2、如是连接到 5V 器件的高阻输入,则可以直接相连,或串个 300 欧电阻相连。工作在 3.3V 的宽电压单
片机的 I/O 可以工作在强推挽输出模式,或者工作在准双向口/弱上拉模式。
3、如果对方是 5V 输出,我方可工作在高阻输入模式,打开内部上拉电阻,外部串接一个锗二极管隔离,
隔离高压 5V。外部电压高于单片机工作电压时锗二极管截止,I/O 口因内部上拉到高电平,所以读 I/O 口状
态是高电平;外部电压为低时隔离的锗二极管导通,I/O 口被钳位在 0.3V,小于 0.8V 时单片机读 I/O 口状态
是低电平。锗二极管可以使用 1N5817/1N5819,不要使用硅二极管。2.2V 以上是高电平,0.8V 以下是低电平。
工作在3.3V的宽电压MCU
普通I/O工作在高阻输入
打开内部上拉电阻
或外部加上拉电阻
0.3V
0V
3.3V
5V
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
5V器件的I/O
工作在输出
技术交流及选型论坛:www.STCAIMCU.com - 448 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
4、宽电压单片机工作在 3.3V 时,如需要控制 5V 器件,还可以用下图同相控制电路:
3.3V
5V
低压控制高压
同相控制电路
10K
10K
B端
同相输出
A端
高阻输入
输出 1
输出 0
A端
工作在3.3V MCU的I/O
B端
1
1
0
5、工作在 3.3V 的器件和工作在 5V 的器件打交道,还可以用如下【三极管+二极管】双向电路:
3.3V
R1
10K
从3.3V到5V传输逻辑
5V
3.3V
R2
10K
R3
10K
Q1
SS8050
工作在3.3V
器件的I/O
A端
高阻输入
输出 1
输出 0
B端
5V
5V
0.1V
工作在5V
器件的I/O
从5V到3.3V传输逻辑
A端
B端
高阻输入
输出 1
输出 0
B端
D1
1N5817
A端
3.3V
3.3V
0.3V
2.2V以上是高电平,0.8V以下是低电平
速度主要取决于上拉电阻和I/O口的分布电容
6、工作在 3.3V 的器件和工作在 5V 的器件打交道,还可以用如下 MOS 管双向电路:
3.3V
R1
10K
工作在3.3V
器件的I/O
G
S
A端
从3.3V到5V传输逻辑
5V
3.3V
R2
10K
Q1
N-MOS
A端
高阻输入
输出 1
输出 0
R3
10K
工作在5V
器件的I/O
D
2.2V以上是高电平,0.8V以下是低电平
B端
5V
5V
0V
从5V到3.3V传输逻辑
B端
速度主要取决于上拉电阻和I/O口的分布电容
SI2302/RMB0.05; AO3400/RMB0.074
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
B端
高阻输入
输出 1
输出 0
A端
3.3V
3.3V
0V
技术交流及选型论坛:www.STCAIMCU.com - 449 -
STC8G 系列技术手册
9.9
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
如何让 I/O 口上电复位时为低电平
传统 8051 单片机上电复位时普通 I/O 口为弱上拉(准双向口)高电平输出,而很多实际应用要求上电时某
些 I/O 口为低电平输出,否则所控制的系统(如马达)就会误动作,新一代 STC8G 系列和 STC8H 系列单片机由
于所有的 I/O 复位后是高阻输入(除 P3.0/P3.1 是传统的弱上拉),加一个下拉电阻就可保证上电时为低电平,
后续要改为高电平,只需要将 I/O 的模式改为强推挽输出,对外输出高电平即可。
如下:在 STC 的单片机 I/O 口上加一个下拉电阻(10K 左右),这样上电复位时,除了下载口 P3.0 和 P3.1
为弱上拉(准双向口)外,其他 I/O 口均为高阻输入模式,而外部有下拉电阻,所以该 I/O 口上电复位时外部
为低电平。如果要将此 I/O 口驱动为高电平,可将此 I/O 口设置为强推挽输出,而强推挽输出时,I/O 口驱动
电流可达 20mA,故肯定可以将该口驱动为高电平输出。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 450 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
9.10 利用 74HC595 驱动 8 个数码管(串行扩展,3 根线)的线路图
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 451 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
9.11 I/O 口直接驱动 LED 数码管应用线路图
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 452 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
9.12 用 STC 系列 MCU 的 I/O 口直接驱动段码 LCD
当产品需要段码 LCD 显示时,如果使用不带 LCD 驱动器的 MCU,则需要外接 LCD 驱动 IC,这会
增加成本。事实上,很多小项目,比如大量的小家电,需要显示的段码不多,常见的是 4 个 8 带小数点
或时钟的冒号“:”,这样如果使用 IO 口直接扫描显示,则会降低成本,工作更可靠。
但是,本方案不合适驱动太多的段( 占用 IO 太多),也不合适非常低功耗的场合(驱动会有几百
uA 电流)。
段码 LCD 驱动简单原理:如图 1 所示。
LCD 是一种特殊的液态晶体,在电场的作用下晶体的排列方向会发生扭转,因而改变其透光性,从
而可以看到显示内容。LCD 有一个扭转电压阀值,当 LCD 两端电压高于此阀值时,显示内容,低于此
阀值时,不显示。通常 LCD 有 3 个参数:工作电压、DUTY(对应 COM 数)和 BIAS(即偏压,对应
阀值),比如 3.0V、1/4 DUTY、1/3 BIAS,表示 LCD 显示电压为 3.0V,4 个 COM,阀值大约是 1.5V,
当加在某段 LCD 两端电压为 3.0V 时显示,而加 1.0V 时不显示。但是 LCD 对于驱动电压的反应不是很
敏感的,比如加 2V 时,可能会微弱显示,这就是通常说的“鬼影”。所以要保证驱动显示时,要大于阀
值电压比较多,而不显示时,要用比阀值小比较多的电压。
注意:LCD 要用交流驱动,其两端不能加直流电压,否则时间稍长就会损坏,所以要保证加在 LCD
两端的驱动电压的平均电压为 0。LCD 使用时分割扫描法,任何时候一个 COM 扫描有效,另外的 COM
处于无效状态。
驱动 1/4Duty 1/2BIAS 3V 的方案电路见图 1,LCD 扫描原理见图 3,MCU 为 3.0V 或 3.3V 工作,并
且每个 COM 都串一个 20K 电阻接到一个电容 C1,RC 滤波后得到一个中点电压 1/2VDD。在轮到某个
COM 扫描时,连接的 IO 设置成推挽输出,其余 COM 设置成高阻,如果与本 COM 连接的 SEG 不显示,
则 SEG 输出与 COM 同相,如果显示,则反相。扫描完后,这个 COM 的 IO 就设置成高阻。每个 COM
通过 20K 电阻连接到电容 C1 上的 1/2VDD 电压,而 SEG 根据是否显示输出高低电平,这样加在 LCD
段上的电压,显示时是+-VDD,不显示时是+-1/2VDD,保证了 LCD 两端平均直流电压为 0。
驱动 1/4Duty 1/3BIAS 3V 的方案电路见图 4,LCD 扫描原理见图 5,MCU 为 5V 工作,SEG 接的 IO
通过电阻分压输出 1.5V、3.5V,COM 接的 IO 通过电阻分压输出 0.5V、2.5V(高阻时)、4.5V,分压电
阻公共点接到一个电容 C1,RC 滤波后得到一个中点电压 1/2VDD。在轮到某个 COM 扫描时,设置成推
挽输出,如果与本 COM 连接的 SEG 不显示,则 SEG 输出与 COM 同相,如果显示,则反相。扫描完后,
这个 COM 的 IO 就设置成高阻,这样这个 COM 就通过 47K 电阻连接到 2.5V 电压,而 SEG 根据是否显
示输出高低电平,这样加在 LCD 上的电压,显示时是+-3.0V,不显示时是+-1.0V,完全满足 LCD 的扫
描要求。
当需要睡眠省电时,把所有 COM 和 SEG 驱动 IO 全部输出低电平,LCD 驱动部分不会增加额
外电流。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 453 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
图 1:驱动 1/4Duty 1/2BIAS 3V LCD 的电路
图 2:段码名称图
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 454 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
图 3:1/4Duty 1/2BIAS 扫描原理图
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 455 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
图 4:驱动 1/4Duty 1/3BIAS 3V LCD 的电路
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 456 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
图 5:1/4Duty 1/3BIAS 扫描原理图
为了使用方便,显示内容放在一个显存中,其中的各个位与 LCD 的段一一对应,见图 6。
图 6:LCD 真值表和显存影射表
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 457 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
图 7:驱动效果照片
本 LCD 扫描程序仅需要两个函数:
1、 LCD 段码扫描函数 void LCD_scan(void)
程序隔一定的时间调用这个函数,就会将 LCD 显示缓冲的内容显示到 LCD 上,全部扫描一次需要 8 个
调用周期,调用间隔一般是 1~2ms,假如使用 1ms,则扫描周期就是 8ms,刷新率就是 125HZ。
2、 LCD 段码显示缓冲装载函数 void LCD_load(u8 n,u8 dat)
本函数用来将显示的数字或字符放在 LCD 显示缓冲中,比如 LCD_load(1,6),就是要在第一个数字位置
显示数字 6,支持显示 0~9,A~F,其它字符用户可以自己添加。
另外,用宏来显示、熄灭或闪烁冒号或小数点。
汇编代码
;用 STC8 系列测试 I/O 直接驱动段码 LCD(6 个 8 字 LCD, 1/4 Dutys, 1/3 bias)。
;上电后显示一个时间(时分秒).
;************************************************************
P0M1
DATA
0x93
P0M0
DATA
0x94
P1M1
DATA
0x91
P1M0
DATA
0x92
P2M1
DATA
0x95
P2M0
DATA
0x96
P3M1
DATA
0xB1
P3M0
DATA
0xB2
P4M1
DATA
0xB3
P4M0
DATA
0xB4
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 458 -
STC8G 系列技术手册
P5M1
P5M0
P6M1
P6M0
P7M1
P7M0
AUXR
INTCLKO
IE2
P4
T2H
T2L
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
0xC9
0xC
0xCB
0xCC
0xE1
0xE2
0x8E
0x8F
0xAF
0xC0
0xD6
0xD7
;************************************************************
DIS_BLACK
EQU
010H
DIS_
EQU
011H
DIS_A
EQU
00AH
DIS_B
EQU
00BH
DIS_C
EQU
00CH
DIS_D
EQU
00DH
DIS_E
EQU
00EH
DIS_F
EQU
00FH
B_2ms
B_Second
cnt_500ms
second
minute
hour
scan_index
BIT
BIT
DATA
DATA
DATA
DATA
DATA
20H.0
20H.1
30H
31H
32H
33H
34H
;2ms 信号
;秒信号
LCD_buff
DATA
40H
;40H~47H
;************************************************************
ORG
0000H
LJMP
F_Main
ORG
LJMP
000BH
F_Timer0_Interrupt
;************************************************************
ORG
0100H
F_Main:
CLR
A
MOV
P3M1, A
;设置为准双向口
MOV
P3M0, A
MOV
P5M1, A
;设置为准双向口
MOV
P5M0, A
MOV
MOV
ANL
ORL
ORL
ANL
MOV
MOV
USING
P1M1, #0
P1M0, #0ffh
P2M1, #NOT 0f0h
P2M0, #0f0h
P2M1, #00fH
P2M0, #0f0H
SP, #0D0H
PSW, #0
0
; segment 设置为推挽输出
; segment 设置为推挽输出
;全部 COM 输出高阻, COM 为中点电压
;选择第 0 组 R0~R7
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 459 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;************************************************************
MOV
R2, #8
MOV
R0, #LCD_buff
L_ClearLcdRam:
MOV
@R0, #0
INC
R0
DJNZ
R2, L_ClearLcdRam
;
;
LCALL
SETB
F_Timer0_init
EA
ORL
ORL
LCD_buff, #020H
LCD_buff, #002H
;显示时分间隔:
;显示分秒间隔:
MOV
MOV
MOV
LCALL
hour, #12
minute, #00
second, #00
F_LoadRTC
;显示时间
;************************************************************
L_Main_Loop:
JNB
B_2ms, L_Main_Loop
;2ms 节拍到
CLR
B_2ms
INC
MOV
CJNE
cnt_500ms
A, cnt_500ms
A, #250, L_Main_Loop
MOV
cnt_500ms, #0;
XRL
XRL
LCD_buff, #020H
LCD_buff, #002H
CPL
JNB
B_Second
B_Second, L_Main_Loop
INC
MOV
CJNE
MOV
INC
MOV
CJNE
MOV
INC
MOV
CJNE
MOV
second
A, second
A, #60, L_Main_Load
second, #0
minute
A, minute
A, #60, L_Main_Load
minute, #0;
hour
A, hour
A, #24, L_Main_Load
hour, #0
LCALL
LJMP
F_LoadRTC
L_Main_Loop
;500ms 到
;闪烁时分间隔:
;闪烁分秒间隔:
; 1 分钟到
;24 小时到
L_Main_Load:
;显示时间
;************************************************************
F_Timer0_init:
CLR
ANL
SETB
ORL
TR0
TMOD, #0f0H
ET0
TMOD, #0
; 停止计数
; 允许中断
; 工作模式, 0: 16 位自动重装
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 460 -
STC8G 系列技术手册
官方网站: www.STCAI.com
ANL
ORL
MOV
MOV
SETB
RET
车规 MCU 设计公司
INTCLKO, #NOT 0x01
AUXR, #0x80
TH0, #HIGH (-22118)
TL0, #LOW (-22118)
TR0
研发顾问:13922829991
选型顾问: 13922805190
; 不输出时钟
; 1T mode
; 2ms
;
; 开始运行
;************************************************************
F_Timer0_Interrupt:
;Timer0 1ms 中断函数
PUSH
PSW
;PSW 入栈
PUSH
ACC
;ACC 入栈
PUSH
AR0
PUSH
AR7
PUSH
DPH
PUSH
DPL
LCALL
SETB
F_LCD_scan
B_2ms
POP
POP
POP
POP
POP
POP
RETI
DPL
DPH
AR7
AR0
ACC
PSW
;ACC 出栈
;PSW 出栈
;******************** 显示时间 **************************
F_LoadRTC:
MOV
R6, #1
;LCD_load(1,hour/10);
MOV
A, hour
MOV
B, #10
DIV
AB
MOV
R7, A
LCALL
F_LCD_load
;R6 为第几个数字,为 1~6,R7 为要显示的数字
MOV
MOV
MOV
DIV
MOV
LCALL
R6, #2
A, hour
B, #10
AB
R7, B
F_LCD_load
;LCD_load(2,hour%10);
MOV
MOV
MOV
DIV
MOV
LCALL
R6, #3
A, minute
B, #10
AB
R7, A
F_LCD_load
;LCD_load(3,minute/10);
MOV
MOV
MOV
DIV
MOV
LCALL
R6, #4
A, minute
B, #10
AB
R7, B
F_LCD_load
;LCD_load(4,minute%10);
MOV
MOV
R6, #5
A, second
;LCD_load(5,second/10);
;R6 为第几个数字,为 1~6,R7 为要显示的数字
;R6 为第几个数字,为 1~6,R7 为要显示的数字
;R6 为第几个数字,为 1~6,R7 为要显示的数字
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 461 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
DIV
MOV
LCALL
B, #10
AB
R7, A
F_LCD_load
MOV
MOV
MOV
DIV
MOV
LCALL
R6, #6
A, second
B, #10
AB
R7, B
F_LCD_load
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;R6 为第几个数字,为 1~6,R7 为要显示的数字
;LCD_load(6,second%10);
;R6 为第几个数字,为 1~6,R7 为要显示的数字
RET
;************************************************************
T_COM:
DB
008H, 004H, 002H, 001H
F_LCD_scan:
MOV
CLR
RRC
MOV
ADD
MOV
ORL
ANL
A, scan_index
C
A
R7, A
A, #LCD_buff
R0, A
P2M1, #00fH
P2M0, #0f0H
MOV
JNB
MOV
CPL
MOV
MOV
ADD
MOV
MOV
ANL
CPL
MOV
SJMP
A, scan_index
ACC.0, L_LCD_Scan2
A, @R0
A
P1, A
A, R0
A, #4
R0, A
A, @R0
A, #0f0H
A
P2, A
L_LCD_Scan3
MOV
MOV
MOV
ADD
MOV
MOV
ANL
MOV
A, @R0
P1, A
A, R0
A, #4
R0, A
A, @R0
A, #0f0H
P2, A
MOV
MOV
MOVC
ORL
CPL
ANL
DPTR, #T_COM
A, R7
A, @A+DPTR
P2M0, A
A
P2M1, A
L_LCD_Scan2:
;j = scan_index >> 1;
;R7 = j
;R0 = LCD_buff[j]
;全部 COM 输出高阻, COM 为中点电压
;if(scan_index & 1) //反相扫描
;P1 = ~LCD_buff[j];
;P2 = ~(LCD_buff[j|4] & 0xf0);
;正相扫描
;P1 = LCD_buff[j];
;P2 = (LCD_buff[j|4] & 0xf0);
L_LCD_Scan3:
;某个 COM 设置为推挽输出
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 462 -
STC8G 系列技术手册
INC
MOV
CJNE
MOV
官方网站: www.STCAI.com
车规 MCU 设计公司
scan_index
A, scan_index
A, #8, L_QuitLcdScan
scan_index, #0
研发顾问:13922829991
;if(++scan_index == 8)
选型顾问: 13922805190
scan_index = 0;
L_QuitLcdScan:
RET
;******************* 标准字库 **************************
T_Display:
;
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
DB
03FH,006H,05BH,04FH,066H,06DH,07DH,007H,07FH,06FH,077H,07CH,039H,05EH,079H,071H
;
black DB
000H,040H
;****************** 对第 1~6 数字装载显示函数 算法简单 ***************************
F_LCD_load:
;R6 为第几个数字,为 1~6,R7 为要显示的数字
MOV
DPTR, #T_Display
;i = t_display[dat];
MOV
A, R7
MOVC
A, @A+DPTR
MOV
B, A
;要显示的数字
MOV
CJNE
MOV
MOV
MOV
MOV
MOV
A, R6
A, #1, L_NotLoadChar1
R0,
A, @R0
C, B.3
ACC.6, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.2
ACC.6, C
C, B.4
ACC.7, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.1
ACC.6, C
C, B.6
ACC.7, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
RET
R0
A, @R0
C, B.0
ACC.6, C
C, B.5
ACC.7, C
@R0, A
L_NotLoadChar1:
CJNE
MOV
#LCD_buff
;D
;C
;E
;B
;G
;A
;F
A, #2, L_NotLoadChar2
R0,#LCD_buff
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 463 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
A, @R0
C, B.3
ACC.4, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.2
ACC.4, C
C, B.4
ACC.5, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.1
ACC.4, C
C, B.6
ACC.5, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
RET
R0
A, @R0
C, B.0
ACC.4, C
C, B.5
ACC.5, C
@R0, A
L_NotLoadChar2:
CJNE
MOV
MOV
MOV
MOV
MOV
车规 MCU 设计公司
A, #3, L_NotLoadChar3
R0,#LCD_buff
A, @R0
C, B.3
ACC.2, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.2
ACC.2, C
C, B.4
ACC.3, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.1
ACC.2, C
C, B.6
ACC.3, C
@R0, A
INC
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.0
ACC.2, C
C, B.5
研发顾问:13922829991
选型顾问: 13922805190
;D
;C
;E
;B
;G
;A
;F
;D
;C
;E
;B
;G
;A
;F
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 464 -
STC8G 系列技术手册
MOV
MOV
RET
L_NotLoadChar3:
CJNE
MOV
MOV
MOV
MOV
MOV
官方网站: www.STCAI.com
研发顾问:13922829991
选型顾问: 13922805190
ACC.3, C
@R0, A
A, #4, L_NotLoadChar4
R0,#LCD_buff
A, @R0
C, B.3
ACC.0, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.2
ACC.0, C
C, B.4
ACC.1, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.1
ACC.0, C
C, B.6
ACC.1, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
RET
R0
A, @R0
C, B.0
ACC.0, C
C, B.5
ACC.1, C
@R0, A
L_NotLoadChar4:
CJNE
MOV
MOV
MOV
MOV
MOV
车规 MCU 设计公司
A, #5, L_NotLoadChar5
R0,#LCD_buff+4
A, @R0
C, B.3
ACC.6, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.2
ACC.6, C
C, B.4
ACC.7, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.1
ACC.6, C
C, B.6
ACC.7, C
;D
;C
;E
;B
;G
;A
;F
;D
;C
;E
;B
;G
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 465 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
RET
R0
A, @R0
C, B.0
ACC.6, C
C, B.5
ACC.7, C
@R0, A
L_NotLoadChar5:
CJNE
MOV
MOV
MOV
MOV
MOV
A, #6, L_NotLoadChar6
R0,#LCD_buff+4
A, @R0
C, B.3
ACC.4, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.2
ACC.4, C
C, B.4
ACC.5, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
R0
A, @R0
C, B.1
ACC.4, C
C, B.6
ACC.5, C
@R0, A
INC
MOV
MOV
MOV
MOV
MOV
MOV
RET
L_NotLoadChar6:
RET
R0
A, @R0
C, B.0
ACC.4, C
C, B.5
ACC.5, C
@R0, A
E
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;A
;F
;D
;C
;E
;B
;G
;A
;F
N
D
C 语言代码
/*****************功能说明******************
用 STC15 系列测试 I/O 直接驱动段码 LCD(6 个 8 字 LCD, 1/4 Dutys, 1/3 bias)。
上电后显示一个时间(时分秒).
P3.2 对地接一个开关,用来进入睡眠或唤醒.
******************************************/
#include "reg51.h"
#include "intrins.h"
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 466 -
STC8G 系列技术手册
typedef
typedef
typedef
官方网站: www.STCAI.com
unsigned char
unsigned int
unsigned long
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
u8;
u16;
u32;
sfr AUXR = 0x8e;
sfr P1M1 = 0x91;
sfr P1M0 = 0x92;
sfr P2M1 = 0x95;
sfr P2M0 = 0x96;
/********************本地常量声明**************************/
#define MAIN_Fosc
11059200L
//定义主时钟
#define DIS_BLACK
#define DIS_
#define DIS_A
#define DIS_B
#define DIS_C
#define DIS_D
#define DIS_E
#define DIS_F
0x10
0x11
0x0A
0x0B
0x0C
0x0D
0x0E
0x0F
#define LCD_SET_DP2
#define LCD_CLR_DP2
#define LCD_FLASH_DP2
LCD_buff[0] |= 0x08
LCD_buff[0] &= ~0x08
LCD_buff[0] ^= 0x08
#define LCD_SET_DP4
#define LCD_CLR_DP4
#define LCD_FLASH_DP4
LCD_buff[4] |= 0x80
LCD_buff[4] &= ~0x80
LCD_buff[4] ^= 0x80
#define LCD_SET_2M
#define LCD_CLR_2M
#define LCD_FLASH_2M
LCD_buff[0] |= 0x20
LCD_buff[0] &= ~0x20
LCD_buff[0] ^= 0x20
#define LCD_SET_4M
#define LCD_CLR_4M
#define LCD_FLASH_4M
LCD_buff[0] |= 0x02
LCD_buff[0] &= ~0x02
LCD_buff[0] ^= 0x02
#define LCD_SET_DP5
#define LCD_CLR_DP5
#define LCD_FLASH_DP5
LCD_buff[4] |= 0x20
LCD_buff[4] &= ~0x20
LCD_buff[4] ^= 0x20
#define P1n_standard(bitn)
#define P1n_push_pull(bitn)
#define P1n_pure_input(bitn)
#define P1n_open_drain(bitn)
P1M1 &= ~(bitn), P1M0 &= ~(bitn)
P1M1 &= ~(bitn), P1M0 |= (bitn)
P1M1 |= (bitn), P1M0 &= ~(bitn)
P1M1 |= (bitn), P1M0 |= (bitn)
#define P2n_standard(bitn)
#define P2n_push_pull(bitn)
#define P2n_pure_input(bitn)
#define P2n_open_drain(bitn)
P2M1 &= ~(bitn), P2M0 &= ~(bitn)
P2M1 &= ~(bitn), P2M0 |= (bitn)
P2M1 |= (bitn), P2M0 &= ~(bitn)
P2M1 |= (bitn), P2M0 |= (bitn)
/********************本地变量声明**************************/
u8 cnt_500ms;
u8 second,minute,hour;
bit B_Second;
bit B_2ms;
u8 LCD_buff[8];
u8 scan_index;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 467 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
/********************本地函数声明**************************/
void LCD_load(u8 n,u8 dat);
void LCD_scan(void);
void LoadRTC(void);
void delay_ms(u8 ms);
/********************主函数**************************/
void main(void)
{
u8 i;
AUXR = 0x80;
TMOD = 0x00;
TL0 = (65536 - (MAIN_Fosc / 500));
TH0 = (65536 - (MAIN_Fosc / 500)) >> 8;
TR0 = 1;
ET0 = 1;
EA = 1;
//初始化 LCD 显存
for(i=0; i= 250)
{
cnt_500ms = 0;
//
LCD_FLASH_2M;
//
LCD_FLASH_4M;
B_Second = ~B_Second;
if(B_Second)
{
if(++second >= 60)
{
second = 0;
if(++minute >= 60)
{
minute = 0;
if(++hour >= 24) hour = 0;
}
}
LoadRTC();
//进入空闲模式,由 Timer0 2ms 唤醒退出
//2ms 节拍到
//500ms 到
//闪烁时分间隔:
//闪烁分秒间隔:
//1 分钟到
//1 小时到
//24 小时到
//显示时间
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 468 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
}
}
if(!P32)
{
LCD_CLR_2M;
LCD_CLR_4M;
LCD_load(1,DIS_BLACK);
LCD_load(2,DIS_BLACK);
LCD_load(3,0);
LCD_load(4,0x0F);
LCD_load(5,0x0F);
LCD_load(6,DIS_BLACK);
//键按下,准备睡眠
//显示时分间隔:
//显示分秒间隔:
while(!P32) delay_ms(10);
delay_ms(50);
while(!P32) delay_ms(10);
//等待释放按键
TR0 = 0;
IE0 = 0;
EX0 = 1;
IT0 = 1;
//关闭定时器
//外中断 0 标志位
//INT0 Enable
//INT0 下降沿中断
P1n_push_pull(0xff);
P2n_push_pull(0xff);
P1 = 0;
P2 = 0;
//com 和 seg 全部输出 0
PCON |= 0x02;
_nop_();
_nop_();
_nop_();
//Sleep
LCD_SET_2M;
LCD_SET_4M;
LoadRTC();
TR0 = 1;
while(!P32) delay_ms(10);
delay_ms(50);
while(!P32) delay_ms(10);
//显示时分间隔:
//显示分秒间隔:
//显示时间
//打开定时器
//等待释放按键
//再次等待释放按键
//再次等待释放按键
}
}
}
}
/********************延时函数**************************/
void delay_ms(u8 ms)
{
unsigned int i;
do{
i = MAIN_Fosc / 13000;
while(--i);
//14T per loop
}while(--ms);
}
/********************* Timer0 中断函数************************/
void timer0_int (void) interrupt 1
{
LCD_scan();
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 469 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
B_2ms = 1;
}
/********************* INT0 中断函数 *************************/
void INT0_int (void) interrupt 0
{
EX0 = 0;
IE0 = 0;
}
/****************** LCD 段码扫描函数 ***************************/
void LCD_scan(void)
//5us @22.1184MHZ
{
u8 code T_COM[4]={0x08,0x04,0x02,0x01};
u8 j;
j = scan_index >> 1;
P2n_pure_input(0x0f);
if(scan_index & 1)
{
P1 = ~LCD_buff[j];
P2 = ~(LCD_buff[j|4] & 0xf0);
}
else
{
P1 = LCD_buff[j];
P2 = LCD_buff[j|4] & 0xf0;
}
P2n_push_pull(T_COM[j]);
if(++scan_index >= 8) scan_index = 0;
//全部 COM 输出高阻, COM 为中点电压
//反相扫描
//正相扫描
//某个 COM 设置为推挽输出
}
/****************** 对第 1~6 数字装载显示函数 ***************************/
void LCD_load(u8 n, u8 dat)
//n 为第几个数字,dat 为要显示的数字
{
u8 code t_display[]={
//标准字库
// 0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,
//black 0x00,0x40
};
u8 code T_LCD_mask[4] = {~0xc0,~0x30,~0x0c,~0x03};
u8 code T_LCD_mask4[4] = {~0x40,~0x10,~0x04,~0x01};
u8 i,k;
u8 *p;
if((n == 0) || (n > 6)) return;
i = t_display[dat];
if(n >2*n);
p++;
k = 0;
if(i & 0x04) k |= 0x40;
if(i & 0x10) k |= 0x80;
*p = (*p & T_LCD_mask[n]) | (k>>2*n);
p++;
k = 0;
if(i & 0x02) k |= 0x40;
if(i & 0x40) k |= 0x80;
*p = (*p & T_LCD_mask[n]) | (k>>2*n);
p++;
k = 0;
if(i & 0x01) k |= 0x40;
if(i & 0x20) k |= 0x80;
*p = (*p & T_LCD_mask[n]) | (k>>2*n);
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//D
//C
//E
//B
//G
//A
//F
}
/********************显示时间 **************************/
void LoadRTC(void)
{
LCD_load(1,hour/10);
LCD_load(2,hour%10);
LCD_load(3,minute/10);
LCD_load(4,minute%10);
LCD_load(5,second/10);
LCD_load(6,second%10);
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 471 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
10 指令系统
10.1
寻址方式
寻址方式是每一种计算机的指令集中不可缺少的部分。寻址方式规定了数据的来源和目的地。对不同的
程序指令,来源和目的地的规定也会不同。在 STC 单片机中的寻址方式可概括为:
10.1.1
立即寻址
直接寻址
间接寻址
寄存器寻址
相对寻址
变址寻址
位寻址
立即寻址
立即寻址也称立即数,它是在指令操作数中直接给出参加运算的操作数,其指令格式如下:
如:MOV A, #70H
这条指令的功能是将立即数 70H 传送到累加器 A 中。
10.1.2
直接寻址
在直接寻址方式中,指令操作数域给出的是参加运算操作数地址。直接寻址方式只能用来表示特殊功能
寄存器、内部数据寄存器和位地址空间。其中特殊功能寄存器和位地址空间只能用直接寻址方式访问。
如:ANL 70H, #48H
表示 70H 单元中的数与立即数 48H 相“与”,结果存放在 70H 单元中。其中 70H 为直接地址,表示内部
数据存储器 RAM 中的一个单元。
10.1.3
间接寻址
间接寻址采用 R0 或 R1 前添加“@”符号来表示。例如,假设 R1 中的数据是 40H,内部数据存储器 40H
单元所包含的数据为 55H,那么如下指令:
MOV A, @R1
把数据 55H 传送到累加器。
10.1.4
寄存器寻址
寄存器寻址是对选定的工作寄存器 R7~R0、累加器 A、通用寄存器 B、地址寄存器和进位 C 中的数进行操
作。其中寄存器 R7~R0 由指令码的低 3 位表示,ACC、B、DPTR 及进位位 C 隐含在指令码中。因此,寄存器寻
址也包含一种隐含寻址方式。
寄存器工作区的选择由程序状态字寄存器 PSW 中的 RS1、RS0 来决定。指令操作数指定的寄存器均指当前
工作区中的寄存器。
如:INC R0 ;(R0)+1 → R0
10.1.5
相对寻址
相对寻址是将程序计数器 PC 中的当前值与指令第二字节给出的数相加,其结果作为转移指令的转移地
址。转移地址也称为转移目的地址,PC 中的当前值称为基地址,指令第二字节给出的数称为偏移量。由于目
的地址是相对于 PC 中的基地址而言,所以这种寻址方式称为相对寻址。偏移量为带符号的数,所能表示的范
围为+127 ~ –128。这种寻址方式主要用于转移指令。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 472 -
STC8G 系列技术手册
官方网站: www.STCAI.com
如:JC 80H
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;C=1 跳转
表示若进位位 C 为 0,则程序计数器 PC 中的内容不改变,即不转移。若进位位 C 为 1,则以 PC 中的当
前值为基地址,加上偏移量 80H 后所得到的结果作为该转移指令的目的地址。
变址寻址
10.1.6
在变址寻址方式中,指令操作数指定一个存放变址基值的变址寄存器。变址寻址时,偏移量与变址基值
相加,其结果作为操作数的地址。变址寄存器有程序计数器 PC 和地址寄存器 DPTR。
如:MOVC A, @A+DPTR
表示累加器 A 为偏移量寄存器,其内容与地址寄存器 DPTR 中的内容相加,其结果作为操作数的地址,取
出该单元中的数送入累加器 A。
位寻址
10.1.7
位寻址是指对一些内部数据存储器 RAM 和特殊功能寄存器进行位操作时的寻址。在进行位操作时,借助
于进位位 C 作为位操作累加器,指令操作数直接给出该位的地址,然后根据操作码的性质对该位进行位操作。
位地址与字节直接寻址中的字节地址形式完全一样,主要由操作码加以区分,使用时应注意。
如:MOV C, 20H
;片内位单元位操作型指令
指令表
10.2
助记符
指令说明
字节
时钟
ADD
A,Rn
寄存器内容加到累加器
1
1
ADD
A,direct
直接地址单元的数据加到累加器
2
1
ADD
A,@Ri
间接地址单元的数据加到累加器
1
1
ADD
A,#data
立即数加到累加器
2
1
ADDC
A,Rn
寄存器带进位加到累加器
1
1
ADDC
A,direct
直接地址单元的数据带进位加到累加器
2
1
ADDC
A,@Ri
间接地址单元的数据带进位加到累加器
1
1
ADDC
A,#data
立即数带进位加到累加器
2
1
SUBB
A,Rn
累加器带借位减寄存器内容
1
1
SUBB
A,direct
累加器带借位减直接地址单元的内容
2
1
SUBB
A,@Ri
累加器带借位减间接地址单元的内容
1
1
SUBB
A,#data
累加器带借位减立即数
2
1
INC
A
累加器加1
1
1
INC
Rn
寄存器加1
1
1
INC
direct
直接地址单元加1
2
1
INC
@Ri
间接地址单元加1
1
1
DEC
A
累加器减1
1
1
DEC
Rn
寄存器减1
1
1
DEC
direct
直接地址单元减1
2
1
DEC
@Ri
间接地址单元减1
1
1
INC
DPTR
地址寄存器DPTR加1
1
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 473 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
助记符
研发顾问:13922829991
指令说明
选型顾问: 13922805190
字节
时钟
MUL
AB
A乘以B,B存放高字节,A存放低字节
1
2
DIV
AB
A除以B,B存放余数,A存放商
1
6
DA
A
累加器十进制调整
1
3
ANL
A,Rn
累加器与寄存器相与
1
1
ANL
A,direct
累加器与直接地址单元相与
2
1
ANL
A,@Ri
累加器与间接地址单元相与
1
1
ANL
A,#data
累加器与立即数相与
2
1
ANL
direct,A
直接地址单元与累加器相与
2
1
ANL
direct,#data
直接地址单元与立即数相与
3
1
ORL
A,Rn
累加器与寄存器相或
1
1
ORL
A,direct
累加器与直接地址单元相或
2
1
ORL
A,@Ri
累加器与间接地址单元相或
1
1
ORL
A,#data
累加器与立即数相或
2
1
ORL
direct,A
直接地址单元与累加器相或
2
1
ORL
direct,#data
直接地址单元与立即数相或
3
1
XRL
A,Rn
累加器与寄存器相异或
1
1
XRL
A,direct
累加器与直接地址单元相异或
2
1
XRL
A,@Ri
累加器与间接地址单元相异或
1
1
XRL
A,#data
累加器与立即数相异或
2
1
XRL
direct,A
直接地址单元与累加器相异或
2
1
XRL
direct,#data
直接地址单元与立即数相异或
3
1
CLR
A
累加器清0
1
1
CPL
A
累加器取反
1
1
RL
A
累加器循环左移
1
1
RLC
A
累加器带进位循环左移
1
1
RR
A
累加器循环右移
1
1
RRC
A
累加器带进位循环右移
1
1
SWAP
A
累加器高低半字节交换
1
1
CLR
C
清零进位位
1
1
CLR
bit
清0直接地址位
2
1
SETB
C
置1进位位
1
1
SETB
bit
置1直接地址位
2
1
CPL
C
进位位求反
1
1
CPL
bit
直接地址位求反
2
1
ANL
C,bit
进位位和直接地址位相与
2
1
ANL
C,/bit
进位位和直接地址位的反码相与
2
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 474 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
助记符
研发顾问:13922829991
指令说明
选型顾问: 13922805190
字节
时钟
ORL
C,bit
进位位和直接地址位相或
2
1
ORL
C,/bit
进位位和直接地址位的反码相或
2
1
MOV
C,bit
直接地址位送入进位位
2
1
MOV
bit,C
进位位送入直接地址位
2
1
MOV
A,Rn
寄存器内容送入累加器
1
1
MOV
A,direct
直接地址单元中的数据送入累加器
2
1
MOV
A,@Ri
间接地址中的数据送入累加器
1
1
MOV
A,#data
立即数送入累加器
2
1
MOV
Rn,A
累加器内容送入寄存器
1
1
MOV
Rn,direct
直接地址单元中的数据送入寄存器
2
1
MOV
Rn,#data
立即数送入寄存器
2
1
MOV
direct,A
累加器内容送入直接地址单元
2
1
MOV
direct,Rn
寄存器内容送入直接地址单元
2
1
MOV
direct,direct
直接地址单元中的数据送入另一个直接地址单元
3
1
MOV
direct,@Ri
间接地址中的数据送入直接地址单元
2
1
MOV
direct,#data
立即数送入直接地址单元
3
1
MOV
@Ri,A
累加器内容送间接地址单元
1
1
MOV
@Ri,direct
直接地址单元数据送入间接地址单元
2
1
MOV
@Ri,#data
立即数送入间接地址单元
2
1
MOV
DPTR,#data16
16位立即数送入数据指针
3
1
MOVC
A,@A+DPTR
以DPTR为基地址变址寻址单元中的数据送入累加器
1
4
MOVC
A,@A+PC
以PC为基地址变址寻址单元中的数据送入累加器
1
3
MOVX A,@Ri
扩展地址(8位地址)的内容送入累加器A中
1
3[1]
MOVX A,@DPTR
扩展RAM(16位地址)的内容送入累加器A中
1
2[1]
MOVX @Ri,A
将累加器A的内容送入扩展RAM(8位地址)中
1
3[1]
MOVX @DPTR,A
将累加器A的内容送入扩展RAM(16位地址)中
1
2[1]
PUSH
direct
直接地址单元中的数据压入堆栈
2
1
POP
direct
栈底数据弹出送入直接地址单元
2
1
XCH
A,Rn
寄存器与累加器交换
1
1
XCH
A,direct
直接地址单元与累加器交换
2
1
XCH
A,@Ri
间接地址与累加器交换
1
1
XCHD
A,@Ri
间接地址的低半字节与累加器交换
1
1
ACALL addr11
短调用子程序
2
3
LCALL addr16
长调用子程序
3
3
RET
子程序返回
1
3
RETI
中断返回
1
3
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 475 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
助记符
研发顾问:13922829991
指令说明
选型顾问: 13922805190
字节
时钟
AJMP
addr11
短跳转
2
3
LJMP
addr16
长跳转
3
3
SJMP
rel
相对跳转
2
3
JMP
@A+DPTR
相对于DPTR的间接跳转
1
4
JZ
rel
累加器为零跳转
2
1/3[2]
JNZ
rel
累加器非零跳转
2
1/3[2]
JC
rel
进位位为1跳转
2
1/3[2]
JNC
rel
进位位为0跳转
2
1/3[2]
JB
bit,rel
直接地址位为1则跳转
3
1/3[2]
JNB
bit,rel
直接地址位为0则跳转
3
1/3[2]
JBC
bit,rel
直接地址位为1则跳转,该位清0
3
1/3[2]
CJNE
A,direct,rel
累加器与直接地址单元不相等跳转
3
2/3[3]
CJNE
A,#data,rel
累加器与立即数不相等跳转
3
1/3[2]
CJNE
Rn,#data,rel
寄存器与立即数不相等跳转
3
2/3[3]
CJNE
@Ri,#data,rel
间接地址单元与立即数不相等跳转
3
2/3[3]
DJNZ
Rn,rel
寄存器减1后非零跳转
2
2/3[3]
DJNZ
direct,rel
直接地址单元减1后非零跳转
3
2/3[3]
空操作
1
1
NOP
:访问外部扩展 RAM 时,指令的执行周期与寄存器 BUS_SPEED 中的 SPEED[2:0]位有关
:对于条件跳转语句的执行时间会依据条件是否满足而不同。当条件不满足时,不会发生跳转而继续执
行下一条指令,此时条件跳转语句的执行时间为 1 个时钟;当条件满足时,则会发生跳转,此时条件跳
转语句的执行时间为 3 个时钟。
[3]
:对于条件跳转语句的执行时间会依据条件是否满足而不同。当条件不满足时,不会发生跳转而继续执
行下一条指令,此时条件跳转语句的执行时间为 2 个时钟;当条件满足时,则会发生跳转,此时条件跳
转语句的执行时间为 3 个时钟。
[1]
[2]
10.3
指令详解(中文)
ACALL addr11
功能:
绝对调用
说明:
ACALL 指令实现无条件调用位于 addr11 参数所表示地址的子例程。在执行该指令时, 首先将
PC 的值增加 2,即使得 PC 指向 ACALL 的下一条指令,然后把 16 位 PC 的低 8 位和高 8 位依
次压入栈,同时把栈指针两次加 1。然后,把当前 PC 值的高 5 位、ACALL 指令第 1 字节的 7~5
位和第 2 字节组合起来,得到一个 16 位目的地址,该地址即为即将调用的子例程的入口地址。
要求该子例程的起始地址必须与紧随 ACALL 之后的指令处于同 1 个 2KB 的程序存储页中。
ACALL 指令在执行时不会改变各个标志位。
举例:
SP 的初始值为 07H,标号 SUBRTN 位于程序存储器的 0345H 地址处,如果执行位于地址 0123H
处的指令:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 476 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
ACALL SUBRTN
那么 SP 变为 09H,内部 RAM 地址 08H 和 09H 单元的内容分别为 25H 和 01H,PC 值变为 0345H。
指令长度(字节):
2
执行周期:
3
二进制编码:
A10
A9
A8
1
0
0
0
1
A7
A6
A5
A4
A3
A2
A1
A0
注意:a10 a9 a8 是 11 位目标地址 addr11 的 A10~A8 位,a7 a6 a5 a4 a3 a2 a1 a0 是 addr11 的 A7~A0 位。
操作:
ACALL
(PC)←(PC)+ 2
(SP)←(SP) + 1
((SP)) ←(PC7-0)
(SP)←(SP) + 1
((SP))←(PC15-8)
(PC10-0)←页码地址
ADD A,
功能:
加法
说明:
ADD 指令可用于完成把 src-byte 所表示的源操作数和累加器 A 的当前值相加。并将结果置于累
加器 A 中。根据运算结果,若第 7 位有进位则置进位标志为 1,否则清零;若第 3 位有进位则置
辅助进位标志为 1,否则清零。如果是无符号整数相加则进位置位,显示当前运算结果发生溢出。
如果第 6 位有进位生成而第 7 位没有,或第 7 位有进位生成而第 6 位没有,则置 OV 为 1,否则
OV 被清零。在进行有符号整数的相加运算的时候,OV 置位表示两个正整数之和为一负数,或
是两个负整数之和为一正数。
本类指令的源操作数可接受 4 种寻址方式:寄存器寻址、直接寻址、寄存器间接寻址和立即寻
址。
举例:
假设累加器 A 中的数据为 0C3H(11000011B),R0 的值为 0AAH(10101010B)。执行如下指令:
ADD A, R0
累加器 A 中的结果为 6DH(01101101B),辅助进位标志 AC 被清零,进位标志 C 和溢出标志 OV
被置 1。
ADD A, Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
0
1
0
1
r
r
r
0
0
1
0
1
0
1
1
i
ADD
(A)← (A) + (Rn)
ADD A, direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
0
1
direct address
ADD
(A)← (A) + (direct)
ADD A, @Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
0
0
1
0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 477 -
STC8G 系列技术手册
操作:
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
ADD
(A)← (A) + ((Ri))
ADD A, #data
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
0
1
0
0
1
0
0
immediate data
ADD
(A)← (A) + #data
ADDC A,
功能:
带进位的加法
说明:
执行 ADDC 指令时,把 src-byte 所代表的源操作数连同进位标志一起加到累加器 A 上,并将结
果置于累加器 A 中。根据运算结果,若在第 7 位有进位生成,则将进位标志置 1,否则清零;若
在第 3 位有进位生成,则置辅助进位标志为 1,否则清零。如果是无符号数整数相加,进位的置
位显示当前运算结果发生溢出。
如果第 6 位有进位生成而第 7 位没有,或第 7 位有进位生成而第 6 位没有,则将 OV 置 1,否则
将 OV 清零。在进行有符号整数相加运算的时候,OV 置位,表示两个正整数之和为一负数,或
是两个负整数之和为一正数。
本类指令的源操作数允许 4 种寻址方式:寄存器寻址、直接寻址、寄存器间接寻址和立即寻址。
举例:
假设累加器 A 中的数据为 0C3H(11000011B),R0 的值为 0AAH(10101010B),进位标志为 1,执
行如下指令:
ADDC A,R0
累加器 A 中的结果为 6EH(01101110B),辅助进位标志 AC 被清零,进位标志 C 和溢出标志 OV
被置 1。
ADDC A, Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
0
1
1
1
r
r
r
0
1
0
1
1
1
i
ADDC
(A)← (A) + (C) + (Rn)
ADDC A, direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
0
1
1
direct address
ADDC
(A)← (A) + (C) + (direct)
ADDC A, @Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
0
1
1
0
ADDC
(A)← (A) + (C) + ((Ri))
ADDC A, #data
指令长度(字节):
2
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 478 -
STC8G 系列技术手册
执行周期:
官方网站: www.STCAI.com
研发顾问:13922829991
选型顾问: 13922805190
1
二进制编码:
操作:
车规 MCU 设计公司
0
0
1
1
0
1
0
0
immediate data
ADDC
(A)← (A) + (C) + #data
AJMP addr11
功能:
绝对跳转
说明:
AJMP 指令用于将程序转到相应的目的地址去执行,该地址在程序执行过程之中产生,由 PC 值
(两次递增之后)的高 5 位、操作码的 7~5 位和指令的第 2 字节连接形成。要求跳转的目的地
址和 AJMP 指令的后一条指令的第 1 字节位于同一 2KB 的程序存储页内。
举例:
假设标号 JMPADR 位于程序存储器的 0123H,指令:
AJMP JMPADR
位于 0345H,执行完该指令后 PC 值变为 0123H。
指令长度(字节):
2
执行周期:
3
二进制编码:
A10
A9
A8
0
0
0
0
1
A7
A6
A5
A4
A3
A2
A1
A0
注意:目的地址的 A10-A8=a10~a8,A7-A0=a7~a0。
操作:
AJMP
(PC)←(PC)+ 2
(PC10-0)←page address
ANL ,
功能:
对字节变量进行逻辑与运算
说明:
ANL 指令将由和所指定的两个字节变量逐位进行逻辑与运算,并将运算结
果存放在所指定的目的操作数中。该指令的执行不会影响标志位。
两个操作数组合起来允许 6 种寻址模式。当目的操作数为累加器时,源操作数允许寄存器寻址、
直接寻址、寄存器间接寻址和立即寻址。当目的操作数是直接地址时,源操作数可以是累加器
或立即数。
注意:当该指令用于修改输出端口时,读入的原始数据来自于输出数据的锁存器而非输入引脚。
举例:
如果累加器的内容为 0C3H(11000011B),寄存器 0 的内容为 55H(01010101B),那么指令:
ANL A,R0
执行结果是累加器的内容变为 41H(01000001H)。
当目的操作数是可直接寻址的数据时,ANL 指令可用来把任何 RAM 单元或者硬件寄存器中的
某些位清零。屏蔽字节将决定哪些位将被清零。屏蔽字节可能是常数,也可能是累加器在计算
过程中产生。如下指令:
ANL Pl, #01110011B
将端口 1 的位 7、位 3 和位 2 清零。
ANL A, Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
1
0
1
1
r
r
r
ANL
(A)← (A) ∧ (Rn)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 479 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
ANL A, direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
0
1
0
1
0
1
0
1
1
i
0
1
0
0
immediate data
0
0
1
0
direct address
0
1
1
direct address
direct address
ANL
(A)← (A) ∧ (direct)
ANL A, @Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
1
0
1
ANL
(A)← (A) ∧ ((Ri))
ANL A, #data
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
0
1
ANL
(A)← (A) ∧ #data
ANL direct, A
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
0
1
ANL
(direct)←(direct) ∧ (A)
ANL direct, #data
指令长度(字节):
3
执行周期:
1
二进制编码:
操作:
0
1
0
1
0
immediate data
ANL
(direct)←(direct) ∧ #data
ANL C,
功能:
对位变量进行逻辑与运算
说明:
如果 src-bit 表示的布尔变量为逻辑 0,清零进位标志位;否则,保持进位标志的当前状态不变。
在汇编语言程序中,操作数前面的“/”符号表示在计算时需要先对被寻址位取反,然后才作为
源操作数,但源操作数本身不会改变。该指令在执行时不会影响其他各个标志位。
源操作数只能采取直接寻址方式。
举例:
下面的指令序列当且仅当 P1.0=1、ACC.7=1 和 OV=0 时,将进位标志 C 置 1:
MOV C, P1.0
; LOAD CARRY WITH INPUT PIN STATE
ANL C, ACC.7
; AND CARRY WITH ACCUM. BIT.7
ANL C, /OV
;AND WITH INVERSE OF OVERFLOW FLAG
ANL C, bit
指令长度(字节):
2
执行周期:
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 480 -
STC8G 系列技术手册
官方网站: www.STCAI.com
二进制编码:
操作:
1
0
0
0
车规 MCU 设计公司
研发顾问:13922829991
0
0
1
0
bit address
0
0
0
0
bit address
选型顾问: 13922805190
ANL
(C) ←(C) ∧ (bit)
ANL C, /bit
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
1
1
ANL
(C)← (C) ∧(
)
CJNE , , rel
功能:
若两个操作数不相等则转移
说明:
CJNE 首先比较两个操作数的大小,如果二者不等则程序转移。目标地址由位于 CJNE 指
令最后 1 个字节的有符号偏移量和 PC 的当前值(紧邻 CJNE 的下一条指令的地址)相加
而成。如果目标操作数作为一个无符号整数,其值小于源操作数对应的无符号整数,那么
将进位标志置 1,否则将进位标志清零。但操作数本身不会受到影响。
和组合起来,允许 4 种寻址模式。累加器 A 可以与任何可直接寻址的
数据或立即数进行比较,任何间接寻址的 RAM 单元或当前工作寄存器都可以和立即常数
进行比较。
举例:
设累加器 A 中值为 34H,R7 包含的数据为 56H。如下指令序列:
CJNE R7,#60H, NOT_EQ
;
...
......
NOT_EQ: JC
;
; R7 = 60H.
REQ_LOW
...
; IF R7 < 60H.
......
; R7 > 60H.
的第 1 条指令将进位标志置 1,程序跳转到标号 NOT_EQ 处。接下去,通过测试进位标志,
可以确定 R7 是大于 60H 还是小于 60H。
假设端口 1 的数据也是 34H,那么如下指令:
WAIT: CJNE A,P1,WAIT
清除进位标志并继续往下执行,因为此时累加器的值也为 34H,即和 P1 口的数据相等。
(如果 Pl 端口的数据是其他的值,那么程序在此不停地循环,直到 P1 端口的数据变成 34H
为止。)
CJNE A, direct, rel
指令长度(字节):
执行周期:
二进制编码:
操作:
3
2或3
1
0
1
1
0
1
0
1
direct address
rel. address
(PC) ←(PC) + 3
IF (A) < > (direct)
THEN
(PC) ←(PC) +relative offset
IF (A) < (direct)
THEN
(C) ← 1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 481 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
ELSE
(C) ← 0
CJNE A, #data, rel
指令长度(字节):
执行周期:
3
1或3
二进制编码:
操作:
1
0
1
1
0
1
0
0
immediate data
rel. address
r
r
immediate data
rel. address
1
i
immediate data
rel. address
(PC) ←(PC) + 3
IF (A) < > (data)
THEN
(PC) ←(PC) +relative offset
IF (A) < (data)
THEN
(C) ← 1
ELSE
(C) ← 0
CJNE Rn, #data, rel
指令长度(字节):
执行周期:
3
2或3
二进制编码:
操作:
1
0
1
1
1
r
(PC) ←(PC) + 3
IF (Rn) < > (data)
THEN
(PC) ←(PC) +relative offset
IF (Rn) < (data)
THEN
(C) ← 1
ELSE
(C) ← 0
CJNE @Ri, #data, rel
指令长度(字节):
执行周期:
二进制编码:
操作:
3
2或3
1
0
1
1
0
1
(PC) ←(PC) + 3
IF (Ri) < > (data)
THEN
(PC) ←(PC) +relative offset
IF (Ri) < (data)
THEN
(C) ← 1
ELSE
(C) ← 0
CLR A
功能:
清除累加器
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 482 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
说明:
该指令用于将累加器 A 的所有位清零,不影响标志位。
举例:
假设累加器 A 的内容为 5CH(01011100B),那么指令:
选型顾问: 13922805190
CLR A
执行后,累加器的值变为 00H(00000000B)。
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
1
0
0
1
0
0
CLR
(A)←0
CLR bit
功能:
清零指定的位
说明:
将 bit 所代表的位清零,没有标志位会受到影响。CLR 可用于进位标志 C 或者所有可直接
寻址的位。
举例:
假设端口 1 的数据为 5DH(01011101B),那么指令:
CLR P1.2
执行后,Pl 端口被设置为 59H(01011001B)。
CLR C
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
0
0
0
0
1
1
1
0
0
0
0
1
0
CLR
(C)←0
CLR bit
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
bit address
CLR
(bit)←0
CPL A
功能:
累加器 A 求反
说明:
将累加器 A 的每一位都取反,即原来为 1 的位变为 0,原来为 0 的位变为 1。该指令不影
响标志位。
举例:
设累加器 A 的内容为 5CH(01011100B),那么指令:
CPL A
执行后,累加器的内容变成 0A3H(10100011B)。
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
1
1
0
1
0
0
CPL
(A)← ( )
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 483 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
CPL bit
功能:
将 bit 所表示的位求反
说明:
将 bit 变量所代表的位取反,即原来位为 1 的变为 0,原来为 0 的变为 1。没有标志位会受
到影响。CPL 可用于进位标志 C 或者所有可直接寻址的位。
注意:如果该指令被用来修改输出端口的状态,那么 bit 所代表的数据是端口锁存器中的
数据,而不是从引脚上输入的当前状态。
举例:
设 P1 端口的数据为 5BH(01011011B),那么指令:
CPL P1.1
CPL P1.2
执行完后,Pl 端口被设置为 5DH(01011101B)。
CPL C
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
0
1
1
0
0
1
1
1
1
0
0
1
0
CPL
(C)← ( )
CPL bit
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
bit address
CPL
(bit)← (
)
DA A
功能:
在加法运算之后,对累加器 A 进行十进制调整
说明:
DA 指令对累加器 A 中存放的由此前的加法运算产生的 8 位数据进行调整(ADD 或 ADDC
指令可以用来实现两个压缩 BCD 码的加法),生成两个 4 位的数字。
如果累加器的低 4 位(位 3~位 0)大于 9 (xxxx1010~xxxx 1111),或者加法运算后,辅助
进位标志 AC 为 1,那么 DA 指令将把 6 加到累加器上,以在低 4 位生成正确的 BCD 数字。
若加 6 后,低 4 位向上有进位,且高 4 位都为 1,进位则会一直向前传递,以致最后进位
标志被置 1;但在其他情况下进位标志并不会被清零,进位标志会保持原来的值。
如果进位标志为 1,或者高 4 位的值超过 9 (1010xxxx~1111xxxx),那么 DA 指令将把 6 加
到高 4 位,在高 4 位生成正确的 BCD 数字,但不清除标志位。若高 4 位有进位输出,则
置进位标志为 1,否则,不改变进位标志。进位标志的状态指明了原来的两个 BCD 数据之
和是否大于 99,因而 DA 指令使得 CPU 可以精确地进行十进制的加法运算。注意,OV 标
志不会受影响。
DA 指令的以上操作在一个指令周期内完成。实际上,根据累加器 A 和机器状态字 PSW 中
的不同内容,DA 把 00H、06H、60H、66H 加到累加器 A 上,从而实现十进制转换。
注意:如果前面没有进行加法运算,不能直接用 DA 指令把累加器 A 中的十六进制数据转
换为 BCD 数,此外,如果先前执行的是减法运算,DA 指令也不会有所预期的效果。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 484 -
STC8G 系列技术手册
官方网站: www.STCAI.com
举例:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
如果累加器中的内容为 56H(01010110B),表示十进制数 56 的 BCD 码,寄存器 3 的内容
为 67H(01100111B),表示十进制数 67 的 BCD 码。进位标志为 1,则指令:
ADDC A,R3
DA
A
先执行标准的补码二进制加法,累加器 A 的值变为 0BEH,进位标志和辅助进位标志被清
零。
接着,DA 执行十进制调整,将累加器 A 的内容变为 24H(00100100B),表示十进制数
24 的 BCD 码,也就是 56、67 及进位标志之和的后两位数字。DA 指令会把进位标志置位
1,这表示在进行十进制加法时,发生了溢出。56、67 以及 1 的和为 124。
把 BCD 格式的变量加上 0lH 或 99H,可以实现加 1 或者减 1。假设累加器的初始值为 30H(表
示十进制数 30),指令序列:
ADD A, #99H
DA A
将把进位 C 置为 1,累加器 A 的数据变为 29H,因为 30+99=129。加法和的低位数据可
以看作减法运算的结果,即 30-1=29。
指令长度(字节):
1
执行周期:
3
二进制编码:
1
操作:
DA
1
0
1
0
1
0
0
-contents of Accumulator are BCD
IF [[(A3-0) > 9] V [(AC) = 1]]
THEN(A3-0) ←(A3-0) + 6
AND
IF [[(A7-4) > 9] V [(C) = 1]]
THEN (A7-4)←(A7-4) + 6
DEC byte
功能:
把 BYTE 所代表的操作数减 1
说明:
BYTE 所代表的变量被减去 l。如果原来的值为 00H,那么减去 1 后,变成 0FFH。没有标
志位会受到影响。该指令支持 4 种操作数寻址方式:累加器寻址、寄存器寻址、直接寻址
和寄存器间接寻址。
注意:当 DEC 指令用于修改输出端口的状态时,BYTE 所代表的数据是从端口输出数据锁
存器中获取的,而不是从引脚上读取的输入状态。
举例:
假设寄存器 0 的内容为 7FH(01111111B),内部 RAM 的 7EH 和 7FH 单元的内容分别为
00H 和 40H。则指令:
DEC @R0
DEC R0
DEC @R0
执行后,寄存器 0 的内容变成 7EH,内部 RAM 的 7EH 和 7FH 单元的内容分别变为 0FFH
和 3FH。
DEC A
指令长度(字节):
1
执行周期:
1
二进制编码:
0
0
0
1
0
1
0
0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 485 -
STC8G 系列技术手册
官方网站: www.STCAI.com
操作:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
DEC
(A)← (A) -1
DEC Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
0
0
1
1
r
r
r
1
0
1
0
1
0
1
1
i
DEC
(Rn)←(Rn) - 1
DEC direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
0
0
Direct address
DEC
(direct)←(direct) - 1
DEC @Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
0
0
1
DEC
((Ri))←((Ri)) - 1
DIV AB
功能:
除法
说明:
DIV 指令把累加器 A 中的 8 位无符号整数除以寄存器 B 中的 8 位无符号整数,并将商置于
累加器 A 中,余数置于寄存器 B 中。进位标志 C 和溢出标志 OV 被清零。
例外:如果寄存器 B 的初始值为 00H(即除数为 0),那么执行 DIV 指令后,累加器 A 和
寄存器 B 中的值是不确定的,且溢出标志 OV 将被置位。但在任何情况下,进位标志 C 都
会被清零。
举例:
假设累加器的值为 251 (0FBH 或 11111011B),寄存器 B 的值为 18 (12H 或 00010010B)。
则指令:
DIV AB
执行后,累加器的值变成 13 (0DH 或 00001101B),寄存器 B 的值变成 17 (11H 或 00010001B),
正好符合 251=13×18+17。进位和溢出标志都被清零。
指令长度(字节):
1
执行周期:
6
二进制编码:
操作:
1
0
0
0
0
1
0
0
DIV
(A)15-8 (B)7-0 ← (A)/(B)
DJNZ ,
功能:
减 1,若非 0 则跳转
说明:
DJNZ 指令首先将第 1 个操作数所代表的变量减 1,如果结果不为 0,则转移到第 2 个操作
数所指定的地址处去执行。如果第 1 个操作数的值为 00H,则减 1 后变为 0FFH。该指令
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 486 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
不影响标志位。跳转目标地址的计算:首先将 PC 值加 2(即指向下一条指令的首字节),
然后将第 2 操作数表示的有符号的相对偏移量加到 PC 上去即可。
byte 所代表的操作数可采用寄存器寻址或直接寻址。
注意:如果该指令被用来修改输出引脚上的状态,那么 byte 所代表的数据是从端口输出数
据锁存器中获取的,而不是直接读取引脚。
举例:
假设内部 RAM 的 40H、50H 和 60H 单元分别存放着 01H、70H 和 15H,则指令:
DJNZ 40H, LABEL_1
DJNZ 50H, LABEL_2
DJNZ 60H, LABEL_3
执行之后,程序将跳转到标号 LABEL2 处执行,且相应的 3 个 RAM 单元的内容变成 00H、
6FH 和 15H。之所以第 1 个跳转没被执行,是因为减 1 后其结果为 0,不满足跳转条件。
使用 DJNZ 指令可以方便地在程序中实现指定次数的循环,此外用一条指令就可以在程序
中实现中等长度的时间延迟(2~512 个机器周期)。指令序列:
MOV R2,#8
TOOOLE: CPL P1.7
DJNZ R2, TOOGLE
将使得 P1.7 的电平翻转 8 次,从而在 P1.7 产生 4 个脉冲,每个脉冲将持续 3 个机器周期,
其中 2 个为 DJNZ 指令的执行时间,1 个为 CPL 指令的执行时间。
DJNZ Rn, rel
指令长度(字节):
执行周期:
2
2或3
二进制编码:
操作:
1
1
0
1
1
r
r
r
rel. address
1
0
1
direct address
DJNZ
(PC) ←(PC) + 2
(Rn) ←(Rn) – 1
IF (Rn) > 0 or (Rn) < 0
THEN
(PC) ←(PC)+ rel
DJNZ direct, rel
指令长度(字节):
执行周期:
二进制编码:
操作:
3
2或3
1
1
0
1
0
rel. address
DJNZ
(PC) ←(PC) + 2
(direct) ←(direct) – 1
IF (direct) > 0 or (direct) < 0
THEN
(PC) ←(PC)+ rel
INC
功能:
加1
说明:
INC 指令将所代表的数据加 1。如果原来的值为 FFH,则加 1 后变为 00H,该指令
不影响标志位。支持 3 种寻址模式:寄存器寻址、直接寻址、寄存器间接寻址。
注意:如果该指令被用来修改输出引脚上的状态,那么 byte 所代表的数据是从端口输出数
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 487 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
据锁存器中获取的,而不是直接读的引脚。
举例:
假设寄存器 0 的内容为 7EH(01111110B),内部 RAM 的 7E 单元和 7F 单元分别存放着 0FFH
和 40H,则指令序列:
INC @R0
INC R0
INC @R0
执行完毕后,寄存器 0 的内容变为 7FH,而内部 RAM 的 7EH 和 7FH 单元的内容分别变成
00H 和 41H。
INC A
指令长度(字节):
1
执行周期:
1
二进制编码:
0
操作:
INC
0
0
0
0
1
0
0
0
0
1
r
r
r
0
0
1
0
1
0
1
1
i
(A) ←(A)+1
INC Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
0
操作:
INC
0
(Rn) ←(Rn)+1
INC direct
指令长度(字节):
2
执行周期:
1
二进制编码:
0
操作:
INC
0
0
direct address
(direct) ←(direct)+1
INC @Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
0
操作:
INC
0
0
0
((Ri))←((Ri)) + 1
INC DPTR
功能:
数据指针加 1
说明:
该指令实现将 DPTR 加 1 功能。需要注意的是,这是 16 位的递增指令,低位字节 DPL 从
FFH 增加 1 之后变为 00H,同时进位到高位字节 DPH。该操作不影响标志位。
该指令是唯一 1 条 16 位寄存器递增指令。
举例:
假设寄存器 DPH 和 DPL 的内容分别为 12H 和 0FEH,则指令序列:
IINC DPTR
INC DPTR
INC DPTR
执行完毕后,DPH 和 DPL 变成 13H 和 01H。
指令长度(字节):
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 488 -
STC8G 系列技术手册
官方网站: www.STCAI.com
执行周期:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1
二进制编码:
1
操作:
INC
0
1
0
0
0
1
1
(DPTR) ← (DPTR) + 1
JB bit, rel
功能:
若位数据为 1 则跳转
说明:
如果 bit 代表的位数据为 1,则跳转到 rel 所指定的地址处去执行;否则,继续执行下一条
指令。跳转的目标地址按照如下方式计算:先增加 PC 的值,使其指向下一条指令的首字
节地址,然后把 rel 所代表的有符号的相对偏移量(指令的第 3 个字节)加到 PC 上去,新
的 PC 值即为目标地址。该指令只是测试相应的位数据,但不会改变其数值,而且该操作
不会影响标志位。
举例:
假设端口 1 的输入数据为 11001010B,累加器的值为 56H(01010110B)。则指令:
JB P1.2, LABEL1
JB ACC.2, LABEL2
将导致程序转到标号 LABEL2 处去执行。
指令长度(字节):
执行周期:
3
1或3
二进制编码:
操作:
0
0
1
0
0
0
0
0
bit address
rel. address
JB
(PC) ← (PC) + 3
IF (bit) = 1
THEN
(PC) ← (PC)+ rel
JBC bit, rel
功能:
若位数据为 1 则跳转并将其清零
说明:
如果 bit 代表的位数据为 1,则将其清零并跳转到 rel 所指定的地址处去执行。如果 bit 代表
的位数据为 0,则继续执行下一条指令。跳转的目标地址按照如下方式计算:先增加 PC
的值,使其指向下一条指令的首字节地址,然后把 rel 所代表的有符号的相对偏移量(指
令的第 3 个字节)加到 PC 上去,新的 PC 值即为目标地址,而且该操作不会影响标志位。
注意:如果该指令被用来修改输出引脚上的状态,那么 byte 所代表的数据是从端口输出数
据锁存器中获取的,而不是直接读取引脚。
举例:
假设累加器的内容为 56H(01010110B),则指令序列:
JBC ACC.3, LABEL1
JBC ACC.2, LABEL2
将导致程序转到标号 LABEL2 处去执行,且累加器的内容变为 52H(01010010B)。
指令长度(字节):
执行周期:
二进制编码:
操作:
3
1或3
0
0
0
1
0
0
0
0
bit address
rel. address
JB
(PC) ← (PC) + 3
IF (bit) = 1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 489 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
THEN
(bit) ← 0
(PC) ← (PC)+ rel
JC rel
功能:
若进位标志为 1,则跳转
说明:
如果进位标志为 1,则程序跳转到 rel 所代表的地址处去执行;否则,继续执行下面的指令。
跳转的目标地址按照如下方式计算:先增加 PC 的值,使其指向紧接 JC 指令的下一条指令
的首地址,然后把 rel 所代表的有符号的相对偏移量(指令的第 2 个字节)加到 PC 上去,
新的 PC 值即为目标地址。该操作不会影响标志位。
举例:
假设进位标志此时为 0,则指令序列:
JC LABEL1
CPL C
JC LABEL2
执行完毕后,进位标志变成 1,并导致程序跳转到标号 LABEL2 处去执行。
指令长度(字节):
执行周期:
2
1或3
二进制编码:
操作:
0
1
0
0
0
0
0
0
rel. address
JC
(PC) ← (PC) + 2
IF (C) = 1
THEN
(PC) ← (PC)+ rel
JMP @A+DPTR
功能:
间接跳转
说明:
把累加器 A 中的 8 位无符号数据和 16 位的数据指针的值相加,其和作为下一条将要执行
的指令的地址,传送给程序计数器 PC。执行 16 位的加法时,低字节 DPL 的进位会传到高
字节 DPH。累加器 A 和数据指针 DPTR 的内容都不会发生变化。不影响任何标志位。
举例:
假设累加器 A 中的值是偶数(从 0 到 6)。下面的指令序列将使得程序跳转到位于跳转表
JMP_TBL 的 4 条 AJMP 指令中的某一条去执行:
MOV DPTR, #JMP_TBL
JMP @A+DPTR
JMP-TBL: AJMP LABEL0
AJMP LABEL1
AJMP LABEL2
AJMP LABEL3
如果开始执行上述指令序列时,累加器 A 中的值为 04H,那么程序最终会跳转到标号
LABEL2 处去执行。
注意:AJMP 是一个 2 字节指令,因而在跳转表中,各个跳转指令的入口地址依次相差 2
个字节。
指令长度(字节):
1
执行周期:
4
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 490 -
STC8G 系列技术手册
官方网站: www.STCAI.com
二进制编码:
操作:
0
1
1
1
车规 MCU 设计公司
0
0
1
研发顾问:13922829991
选型顾问: 13922805190
1
JMP
(PC) ← (A) + (DPTR)
JNB bit, rel
功能:
如果 bit 所代表的位不为 1 则跳转
说明:
如果 bit 所表示的位为 0,则转移到 rel 所代表的地址去执行;否则,继续执行下一条指令。
跳转的目标地址如此计算:先增加 PC 的值,使其指向下一条指令的首字节地址,然后把
rel 所代表的有符号的相对偏移量(指令的第 3 个字节)加到 PC 上去,新的 PC 值即为目
标地址。该指令只是测试相应的位数据,但不会改变其数值,而且该操作不会影响标志位。
举例:
假设端口 1 的输入数据为 11001010B,累加器的值为 56H(01010110B)。则指令序列:
JNB P1.3, LABEL1
JNB ACC.3, LABEL2
执行后将导致程序转到标号 LABEL2 处去执行。
指令长度(字节):
执行周期:
3
1或3
二进制编码:
操作:
0
0
1
1
0
0
0
0
bit address
rel. address
JNB
(PC) ←(PC) + 3
IF (bit) = 0
THEN (PC) ← (PC) + rel
JNC rel
功能:
若进位标志非 1 则跳转
说明:
如果进位标志为 0,则程序跳转到 rel 所代表的地址处去执行;否则,继续执行下面的指令。
跳转的目标地址按照如下方式计算:先增加 PC 的值加 2,使其指向紧接 JNC 指令的下一
条指令的地址,然后把 rel 所代表的有符号的相对偏移量(指令的第 2 个字节)加到 PC 上
去,新的 PC 值即为目标地址。该操作不会影响标志位。
举例:
假设进位标志此时为 1,则指令序列:
JNC LABEL1
CPL C
JNC LABEL2
执行完毕后,进位标志变成 0,并导致程序跳转到标号 LABEL2 处去执行。
指令长度(字节):
执行周期:
二进制编码:
操作:
2
1或3
0
1
0
1
0
0
0
0
rel. address
JNC
(PC) ←(PC) + 2
IF (C) = 0
THEN (PC) ← (PC) + rel
JNZ rel
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 491 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
功能:
如果累加器的内容非 0 则跳转
说明:
如果累加器 A 的任何一位为 1,那么程序跳转到 rel 所代表的地址处去执行,如果各个位
都为 0,继续执行下一条指令。跳转的目标地址按照如下方式计算:先把 PC 的值增加 2,
然后把 rel 所代表的有符号的相对偏移量(指令的第 2 个字节)加到 PC 上去,新的 PC 值
即为目标地址。操作过程中累加器的值不会发生变化,不会影响标志位。
举例:
设累加器的初始值为 00H,则指令序列:
JNZ LABEL1
INC A
JNZ LAEEL2
执行完毕后,累加器的内容变成 01H,且程序将跳转到标号 LABEL2 处去执行。
指令长度(字节):
执行周期:
2
1或3
二进制编码:
0
操作:
JNZ
1
1
1
0
0
0
0
rel. address
(PC) ←(PC) + 2
IF (A) ≠ 0
THEN (PC) ← (PC) + rel
JZ rel
功能:
若累加器的内容为 0 则跳转
说明:
如果累加器 A 的任何一位为 0,那么程序跳转到 rel 所代表的地址处去执行,如果各个位
都为 0,继续执行下一条指令。跳转的目标地址按照如下方式计算:先把 PC 的值增加 2,
然后把 rel 所代表的有符号的相对偏移量(指令的第 2 个字节)加到 PC 上去,新的 PC 值
即为目标地址。操作过程中累加器的值不会发生变化,不会影响标志位。
举例:
设累加器的初始值为 01H,则指令序列:
JZ LABEL1
DEC A
JZ LAEEL2
执行完毕后,累加器的内容变成 00H,且程序将跳转到标号 LABEL2 处去执行。
指令长度(字节):
执行周期:
二进制编码:
操作:
2
1或3
0
1
1
0
0
0
0
0
rel. address
JZ
(PC) ←(PC) + 2
IF (A) = 0
THEN (PC) ← (PC) + rel
LCALL addr16
功能:
长调用
说明:
LCALL 用于调用 addr16 所指地址处的子例程。首先将 PC 的值增加 3,使得 PC 指向紧随
LCALL 的下一条指令的地址,然后把 16 位 PC 的低 8 位和高 8 位依次压入栈(低位字节
在先),同时把栈指针加 2。然后再把 LCALL 指令的第 2 字节和第 3 字节的数据分别装
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 492 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
入 PC 的高位字节 DPH 和低位字节 DPL,程序从新的 PC 所对应的地址处开始执行。因而
子例程可以位于 64KB 程序存储空间的任何地址处。该操作不影响标志位。
举例:
栈指针的初始值为 07H,标号 SUBRTN 被分配的程序存储器地址为 1234H。则执行如
下位于地址 0123H 的指令后:
LCALL SUBRTN
栈指针变成 09H,内部 RAM 的 08H 和 09H 单元的内容分别为 26H 和 01H,且 PC 的当前
值为 1234H。
指令长度(字节):
3
执行周期:
3
二进制编码:
操作:
0
0
0
1
0
0
1
0
addr15-addr8
addr7-addr0
LCALL
(PC) ←(PC) + 3
(SP) ←(SP) + 1
((SP)) ←(PC7-0)
(SP) ←(SP) + 1
((SP)) ←(PC15-8)
(PC) ← addr15-0
LJMP addr16
功能:
长跳转
说明:
LJMP 使得 CPU 无条件跳转到 addr16 所指的地址处执行程序。把该指令的第 2 字节和第 3
字节分别装入程序计数器 PC 的高位字节 DPH 和低位字节 DPL。程序从新 PC 值对应的地
址处开始执行。该 16 位目标地址可位于 64KB 程序存储空间的任何地址处。该操作不影响
标志位。
举例:
假设标号 JMPADR 被分配的程序存储器地址为 1234H。则位于地址 1234H 的指令:
LJMP JMPADR
执行完毕后,PC 的当前值变为 1234H。
指令长度(字节):
3
执行周期:
3
二进制编码:
操作:
0
0
0
0
0
0
1
0
addr15-addr8
addr7-addr0
LJMP
(PC) ← addr15-0
MOV ,
功能:
传送字节变量
说明:
将第 2 操作数代表字节变量的内容复制到第 1 操作数所代表的存储单元中去。该指令不会
改变源操作数,也不会影响其他寄存器和标志位。
MOV 指令是迄今为止使用最灵活的指令,源操作数和目的操作数组合起来,寻址方式可
达 15 种。
举例:
假设内部 RAM 的 30H 单元的内容为 40H,而 40H 单元的内容为 10H。端口 1 的数据为
11001010B(0CAH)。则指令序列:
MOV R0, #30H
; R0< = 30H
MOV A, @R0
; A < = 40H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 493 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
MOV R1, A
; R1 < = 40H
MOV B, @Rl
; B < = 10H
MOV @Rl, Pl
; RAM (40H) < = 0CAH
MOV P2, P1
; P2 #0CAH
研发顾问:13922829991
选型顾问: 13922805190
执行完毕后,寄存器 0 的内容为 30H,累加器和寄存器 1 的内容都为 40H,寄存器 B 的内
容为 10H,RAM 中 40H 单元和 P2 口的内容均为 0CAH。
MOV A,Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
1
0
1
r
r
r
1
0
0
1
0
1
MOV
(A) ←(Rn)
*MOV A,direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
1
direct address
MOV
(A)← (direct)
注意:MOV A, ACC 是无效指令。
MOV A,@Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
1
0
0
1
1
i
1
1
0
1
0
0
1
1
1
r
r
r
1
0
1
r
r
r
MOV
(A) ←((Ri))
MOV A,#data
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
immediate data
MOV
(A)←#data
MOV Rn, A
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
MOV
(Rn) ←(A)
MOV Rn,direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
direct address
MOV
(Rn)← (direct)
MOV Rn,#data
指令长度(字节):
2
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 494 -
STC8G 系列技术手册
官方网站: www.STCAI.com
执行周期:
研发顾问:13922829991
选型顾问: 13922805190
1
二进制编码:
操作:
车规 MCU 设计公司
0
1
1
1
1
r
r
r
1
1
0
1
0
1
direct address
0
1
r
r
r
direct address
0
0
1
0
1
0
0
1
1
i
1
0
1
0
1
1
1
0
1
1
i
1
0
0
1
1
i
immediate data
MOV
(Rn)←#data
MOV direct, A
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
1
MOV
(direct)← (A)
MOV direct, Rn
指令长度(字节):
2
执行周期:
2
二进制编码:
操作:
1
0
0
MOV
(direct)← (Rn)
MOV direct, direct
指令长度(字节):
3
执行周期:
1
二进制编码:
操作:
1
0
0
dir.addr. (src)
dir.addr. (dest)
MOV
(direct)← (direct)
MOV direct, @Ri
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
0
direct address
MOV
(direct)←((Ri))
MOV direct, #data
指令长度(字节):
3
执行周期:
1
二进制编码:
操作:
0
1
1
direct address
immediate data
MOV
(direct)←#data
MOV @Ri, A
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
MOV
((Ri))←(A)
MOV @Ri, direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
direct address
MOV
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 495 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
((Ri))←(direct)
MOV @Ri, #data
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
1
1
0
1
1
i
immediate data
MOV
((Ri))←#data
MOV ,
功能:
传送位变量
说明:
将代表的布尔变量复制到所指定的数据单元中去,两个操作数必须有一
个是进位标志,而另外一个是可直接寻址的位。本指令不影响其他寄存器和标志位。
举例:
假设进位标志 C 的初值为 1,端口 P3 中的数据是 11000101B,端口 1 的数据被设置为
35H(00110101B)。则指令序列:
MOV P1.3, C
MOV C, P3.3
MOV P1.2, C
执行后,进位标志被清零,端口 1 的数据变为 39H(00111001B)。
MOV C, bit
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
1
0
0
0
1
0
bit address
0
1
0
0
1
0
bit address
MOV
(C)← (bit)
MOV bit, C
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
MOV
(bit)← (C)
MOV DPTR, #data 16
功能:
将 16 位的常数存放到数据指针
说明:
该指令将 16 位常数传递给数据指针 DPTR。16 位的常数包含在指令的第 2 字节和第 3 字
节中。其中 DPH 中存放的是#data16 的高字节,而 DPL 中存放的是#data16 的低字节。不
影响标志位。
该指令是唯一一条能一次性移动 16 位数据的指令。
举例:
指令:
MOV DPTR, #1234H
将立即数 1234H 装入数据指针寄存器中。DPH 的值为 12H,DPL 的值为 34H。
指令长度(字节):
3
执行周期:
1
二进制编码:
1
0
0
1
0
0
0
0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
immediate data15-8
immediate data7-0
技术交流及选型论坛:www.STCAIMCU.com - 496 -
STC8G 系列技术手册
官方网站: www.STCAI.com
操作:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
MOV
(DPTR) ← #data15-0
DPH DPL ← #data15-8 #data7-0
MOVC A , @A+
功能:
把程序存储器中的代码字节数据(常数数据)转送至累加器 A
说明:
MOVC 指令将程序存储器中的代码字节或常数字节传送到累加器 A。被传送的数据字节的
地址是由累加器中的无符号 8 位数据和 16 位基址寄存器(DPTR 或 PC)的数值相加产生
的。如果以 PC 为基址寄存器,则在累加器内容加到 PC 之前,PC 需要先增加到指向紧邻
MOVC 之后的语句的地址;如果是以 DPTR 为基址寄存器,则没有此问题。在执行 16 位
的加法时,低 8 位产生的进位会传递给高 8 位。本指令不影响标志位。
举例:
假设累加器 A 的值处于 0~4 之间,如下子例程将累加器 A 中的值转换为用 DB 伪指令(定
义字节)定义的 4 个值之一:
REL-PC: INC A
MOVC A, @A+PC
RET
DB 66H
DB 77H
DB 88H
DB 99H
如果在调用该子例程之前累加器的值为 01H,执行完该子例程后,累加器的值变为 77H。
MOVC 指令之前的 INC A 指令是为了在查表时越过 RET 而设置的。如果 MOVC 和表格之
间被多个代码字节所隔开,那么为了正确地读取表格,必须将相应的字节数预先加到累加
器 A 上。
MOVC A,@A+DPTR
指令长度(字节):
1
执行周期:
4
二进制编码:
操作:
1
0
0
1
0
0
1
1
0
0
1
1
MOVC
(A) ←((A)+(DPTR))
MOVC A,@A+PC
指令长度(字节):
1
执行周期:
3
二进制编码:
操作:
1
0
0
0
MOVC
(PC) ←(PC)+1
(A) ←((A)+(PC))
MOVX ,
功能:
外部传送
说明:
MOVX 指令用于在累加器和外部数据存储器之间传递数据。因此在传送指令 MOV 后附加
了 X。MOVX 又分为两种类型,它们之间的区别在于访问外部数据 RAM 的间接地址是 8
位的还是 16 位的。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 497 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
对于第 1 种类型,当前工作寄存器组的 R0 和 R1 提供 8 位地址到复用端口 P0。对于外部
I/O 扩展译码或者较小的 RAM 阵列,8 位的地址已经够用。若要访问较大的 RAM 阵列,
可在端口引脚上输出高位的地址信号。此时可在 MOVX 指令之前添加输出指令,对这些
端口引脚施加控制。
对于第 2 种类型,通过数据指针 DPTR 产生 16 位的地址。当 P2 端口的输出缓冲器发送
DPH 的内容时,P2 的特殊功能寄存器保持原来的数据。在访问规模较大的数据阵列时,
这种方式更为有效和快捷,因为不需要额外指令来配置输出端口。
在某些情况下,可以混合使用两种类型的 MOVX 指令。在访问大容量的 RAM 空间时,既
可以用数据指针 DP 在 P2 端口上输出地址的高位字节,也可以先用某条指令,把地址的高
位字节从 P2 端口上输出,再使用通过 R0 或 Rl 间址寻址的 MOVX 指令。
举例:
假设有一个分时复用地址/数据线的外部 RAM 存储器,容量为 256B(如:Intel 的 8155 RAM
/ I/O / TIMER),该存储器被连接到 8051 的端口 P0 上,端口 P3 被用于提供外部 RAM 所
需的控制信号。端口 Pl 和 P2 用作通用输入/输出端口。R0 和 Rl 中的数据分别为 12H 和
34H,外部 RAM 的 34H 单元存储的数据为 56H,则下面的指令序列:
MOVX A, @R1
MOVX @R0, A
将数据 56H 复制到累加器 A 以及外部 RAM 的 12H 单元中。
MOVX A,@Ri
指令长度(字节):
执行周期:
1
3或1
二进制编码:
操作:
1
1
1
0
0
0
1
i
1
0
0
0
0
0
1
1
0
0
1
i
1
1
0
0
0
0
MOVX
(A) ← ((Ri))
MOVX A,@DPTR
指令长度(字节):
执行周期:
1
1或2
二进制编码:
操作:
1
1
MOVX
(A) ←((DPTR))
MOVX @Ri, A
指令长度(字节):
执行周期:
1
3或1
二进制编码:
操作:
1
1
MOVX
((Ri))←(A)
MOVX @DPTR, A
指令长度(字节):
执行周期:
二进制编码:
操作:
1
2或1
1
1
MOVX
(DPTR)←(A)
MUL AB
功能:
乘法
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 498 -
STC8G 系列技术手册
官方网站: www.STCAI.com
说明:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
该指令可用于实现累加器和寄存器 B 中的无符号 8 位整数的乘法。所产生的 16 位乘积的
低 8 位存放在累加器中,而高 8 位存放在寄存器 B 中。若乘积大于 255(0FFH),则置位溢
出标志;否则清零标志位。在执行该指令时,进位标志总是被清零。
举例:
假设累加器 A 的初始值为 80(50H),寄存器 B 的初始值为 160 (0A0H),则指令:
MUL AB
求得乘积 12800 (3200H),所以寄存器 B 的值变成 32H (00110010B),累加器被清零,溢出
标志被置位,进位标志被清零。
指令长度(字节):
1
执行周期:
2
二进制编码:
操作:
1
0
1
0
0
1
0
0
(A)7-0 ← (A)×(B)
(B)15-8
NOP
功能:
空操作
说明:
执行本指令后,将继续执行随后的指令。除了 PC 外,其他寄存器和标志位都不会有变化。
举例:
假设期望在端口 P2 的第 7 号引脚上输出一个长时间的低电平脉冲,该脉冲持续 5 个机器
周期(精确)。若是仅使用 SETB 和 CLR 指令序列,生成的脉冲只能持续 1 个机器周期。
因而需要设法增加 4 个额外的机器周期。可以按照如下方式来实现所要求的功能(假设中
断没有被启用):
CLR P2.7
NOP
NOP
NOP
NOP
SETB P2.7
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
0
0
0
0
0
0
0
NOP
(PC) ←(PC)+1
ORL ,
功能:
两个字节变量的逻辑或运算
说明:
ORL 指令将由和所指定的两个字节变量进行逐位逻辑或运算,结果
存放在所代表的数据单元中。该操作不影响标志位。
两个操作数组合起来,支持 6 种寻址方式。当目的操作数是累加器 A 时,源操作数可以采
用寄存器寻址、直接寻址、寄存器间接寻址或者立即寻址。当目的操作数采用直接寻址方
式时,源操作数可以是累加器或立即数。
注意:如果该指令被用来修改输出引脚上的状态,那么所代表的数据是从端口
输出数据锁存器中获取的数据,而不是从引脚上读取的数据。
举例:
假设累加器 A 中数据为 0C3H (11000011B),
寄存器 R0 中的数据为 55H(01010101) ,则指令:
ORL A, R0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 499 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
执行后,累加器的内容变成 0D7H(11010111B)。当目的操作数是直接寻址数据字节时,ORL
指令可用来把任何 RAM 单元或者硬件寄存器中的各个位设置为 1。究竟哪些位会被置 1
由屏蔽字节决定,屏蔽字节既可以是包含在指令中的常数,也可以是累加器 A 在运行过程
中实时计算出的数值。执行指令:
ORL P1, #00110010B
之后,把 1 口的第 5、4、1 位置 1。
ORL A, Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
1
0
0
1
r
r
r
0
0
1
0
1
0
0
1
1
i
0
0
1
0
0
immediate data
0
0
0
1
0
direct address
0
0
1
1
direct address
ORL
(A) ←(A)∨(Rn)
ORL A, direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
0
direct address
ORL
(A) ←(A)∨(direct)
ORL A, @Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
1
0
ORL
(A) ←(A)∨((Ri))
ORL A, #data
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
0
ORL
(A) ←(A)∨#data
ORL direct, A
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
0
ORL
(direct)← (direct)∨(A)
ORL direct, #data
指令长度(字节):
3
执行周期:
1
二进制编码:
操作:
0
1
0
0
immediate data
ORL
(direct)← (direct)∨#data
ORL C,
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 500 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
功能:
位变量的逻辑或运算
说明:
如果所表示的位变量为 1,则置位进位标志;否则,保持进位标志的当前状态不变。
在汇编语言中,位于源操作数之前的“/”表示将源操作数取反后使用,但源操作数本身不
发生变化。在执行本指令时,不影响其他标志位。
举例:
当执行如下指令序列时,当且仅当 P1.0=1 或 ACC.7=1 或 OV=0 时,置位进位标志 C:
MOV C, P1.0
;LOAD CARRY WITH INPUT PIN P10
ORL C, ACC.7
;OR CARRY WITH THE ACC.BIT 7
ORL C, /OV
;OR CARRY WITH THE INVERSE OF OV
ORL C, bit
指令长度(字节):
执行周期:
2
1或4
二进制编码:
操作:
0
1
1
1
0
0
1
0
bit address
0
0
0
0
0
bit address
ORL
(C) ←(C)∨(bit)
ORL C, /bit
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
1
ORL
(C) ←(C)∨(
)
POP direct
功能:
出栈
说明:
读取栈指针所指定的内部 RAM 单元的内容,栈指针减 1。然后,将读到的内容传送到由
direct 所指示的存储单元(直接寻址方式)中去。该操作不影响标志位。
举例:
设栈指针的初值为 32H,内部 RAM 的 30H~32H 单元的数据分别为 20H、23H 和 01H。则
执行指令:
POP DPH
POP DPL
之后,栈指针的值变成 30H,数据指针变为 0123H。此时指令:
POP SP
将把栈指针变为 20H。
注意:在这种特殊情况下,在写入出栈数据(20H)之前,栈指针先减小到 2FH,然后再
随着 20H 的写入,变成 20H。
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
1
0
1
0
0
0
0
direct address
POP
(direct) ←((SP))
(SP) ← (SP) - 1
PUSH direct
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 501 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
功能:
压栈
说明:
栈指针首先加 1,然后将 direct 所表示的变量内容复制到由栈指针指定的内部 RAM 存储单
元中去。该操作不影响标志位。
举例:
设在进入中断服务程序时栈指针的值为 09H,数据指针 DPTR 的值为 0123H。则执行如下
指令序列:
PUSH DPL
PUSH DPH
之后,栈指针变为 0BH,并把数据 23H 和 01H 分别存入内部 RAM 的 0AH 和 0BH 存储单
元之中。
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
1
0
0
0
0
0
0
direct address
PUSH
(SP) ←(SP) + 1
((SP)) ← (direct)
RET
功能:
从子例程返回
说明:
执行 RET 指令时,首先将 PC 值的高位字节和低位字节从栈中弹出,栈指针减 2。然后,
程序从形成的 PC 值所对应的地址处开始执行,一般情况下,该指令和 ACALL 或 LCALL
配合使用。改指令的执行不影响标志位。
举例:
设栈指针的初值为 0BH,内部 RAM 的 0AH 和 0BH 存储单元中的数据分别为 23H 和 01H。
则指令:
RET
执行后,栈指针变为 09H。程序将从 0123H 地址处继续执行。
指令长度(字节):
1
执行周期:
3
二进制编码:
操作:
0
0
1
0
0
0
1
0
RET
(PC15-8) ←((SP))
(SP) ←(SP) -1
(PC7-0) ←((SP))
(SP) ←(SP) -1
RETI
功能:
中断返回
说明:
执行该指令时,首先从栈中弹出 PC 值的高位和低位字节,然后恢复中断启用,准备接受
同优先级的其他中断,栈指针减 2。其他寄存器不受影响。但程序状态字 PSW 不会自动恢
复到中断前的状态。程序将继续从新产生的 PC 值所对应的地址处开始执行,一般情况下
是此次中断入口的下一条指令。在执行 RETI 指令时,如果有一个优先级较低的或同优先
级的其他中断在等待处理,那么在处理这些等待中的中断之前需要执行 1 条指令。
举例:
设栈指针的初值为 0BH,结束在地址 0123H 处的指令执行结束期间产生中断,内部 RAM
的 0AH 和 0BH 单元的内容分别为 23H 和 01H。则指令:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 502 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
RETI
执行完毕后,栈指针变成 09H,中断返回后程序继续从 0123H 地址开始执行。
指令长度(字节):
1
执行周期:
3
二进制编码:
操作:
0
0
1
1
0
0
1
0
RETI
(PC15-8) ←((SP))
(SP) ←(SP) -1
(PC7-0) ←((SP))
(SP) ←(SP) -1
RL A
功能:
将累加器 A 中的数据位循环左移
说明:
将累加器中的 8 位数据均左移 1 位,其中位 7 移动到位 0。该指令的执行不影响标志位。
举例:
设累加器的内容为 0C5H(11000101B),则指令:
RL A
执行后,累加器的内容变成 8BH(10001011B),且标志位不受影响。
指令长度(字节):
1
执行周期:
1
二进制编码:
0
操作:
RL
0
1
(An+1) ← (An)
0
0
0
1
1
n = 0-6
(A0) ←(A7)
RLC A
功能:
带进位循环左移
说明:
累加器的 8 位数据和进位标志一起循环左移 1 位。其中位 7 移入进位标志,进位标志的初
始状态值移到位 0。该指令不影响其他标志位。
举例:
假设累加器 A 的值为 0C5H(11000101B),则指令:
RLC A
执行后,将把累加器 A 的数据变为 8BH(10001011B),进位标志被置位。
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
0
1
1
0
0
1
1
RLC
(An+1) ←(An)
n = 0-6
(A0) ←(C)
(C) ←(A7)
RR A
功能:
将累加器的数据位循环右移
说明:
将累加器的 8 个数据位均右移 1 位,位 0 将被移到位 7,即循环右移,该指令不影响标志
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 503 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位。
举例:
设累加器的内容为 0C5H(11000101B),则指令:
RR A
执行后累加器的内容变成 0E2H(11100010B),标志位不受影响。
指令长度(字节):
1
执行周期:
1
二进制编码:
0
操作:
RR
0
0
0
(An) ←(An+1)
0
0
1
1
n=0-6
(A7) ←(A0)
RRC A
功能:
带进位循环右移
说明:
累加器的 8 位数据和进位标志一起循环右移 1 位。其中位 0 移入进位标志,进位标志的初
始状态值移到位 7。该指令不影响其他标志位。
举例:
假设累加器的值为 0C5H(11000101B),进位标志为 0,则指令:
RRC A
执行后,将把累加器的数据变为 62H(01100010B),进位标志被置位。
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
0
0
1
0
0
1
1
RRC
(An+1) ←(An)
n=0-6
(A7) ←(C)
(C) ←(A0)
SETB
功能:
置位
说明:
SETB 指令可将相应的位置 1,其操作对象可以是进位标志或其他可直接寻址的位。该指令
不影响其他标志位。
举例:
设进位标志被清零,端口 1 的输出状态为 34H(00110100B),则指令:
SETB C
SETB P1.0
执行后,进位标志变为 1,端口 1 的输出状态变成 35H(00110101B)。
SETB C
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
0
1
0
0
1
1
SETB
(C) ← 1
SETB bit
指令长度(字节):
2
执行周期:
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 504 -
STC8G 系列技术手册
官方网站: www.STCAI.com
二进制编码:
操作:
1
1
0
1
车规 MCU 设计公司
0
0
1
0
研发顾问:13922829991
选型顾问: 13922805190
bit address
SETB
(bit) ← 1
SJMP rel
功能:
短跳转
说明:
程序无条件跳转到 rel 所示的地址去执行。目标地址按如下方法计算:首先 PC 值加 2,然
后将指令第 2 字节(即 rel)所表示的有符号偏移量加到 PC 上,得到的新 PC 值即短跳转
的目标地址。所以,跳转的范围是当前指令(即 SJMP)地址的前 128 字节和后 127 字节。
举例:
设标号 RELADR 对应的指令地址位于程序存储器的 0123H 地址,则指令:
SJMP RELADR
汇编后位于 0100H。当执行完该指令后,PC 值变成 0123H。
注意:在上例中,紧接 SJMP 的下一条指令的地址是 0102H,因此,跳转的偏移量为
0123H-0102H=21H。另外,如果 SJMP 的偏移量是 0FEH,那么构成只有 1 条指令的无限
循环。
指令长度(字节):
2
执行周期:
3
二进制编码:
操作:
1
0
0
0
0
0
0
0
rel. address
SJMP
(PC) ←(PC)+2
(PC) ← (PC)+rel
SUBB A,
功能:
带借位的减法
说明:
SUBB 指令从累加器中减去所代表的字节变量的数值及进位标志,减法运算的结
果置于累加器中。如果执行减法时第 7 位需要借位,SUBB 将会置位进位标志(表示借位);
否则,清零进位标志。(如果在执行 SUBB 指令前,进位标志 C 已经被置位,这意味着在
前面进行多精度的减法运算时,产生了借位。因而在执行本条指令时,必须把进位连同源
操作数一起从累加器中减去。)如果在进行减法运算的时候,第 3 位处向上有借位,那么
辅助进位标志 AC 会被置位;如果第 6 位有借位;而第 7 位没有,或是第 7 位有借位,而
第 6 位没有, 则溢出标志 OV 被置位。
当进行有符号整数减法运算时,若 OV 置位,则表示在正数减负数的过程中产生了负数;
或者,在负数减正数的过程中产生了正数。
源操作数支持的寻址方式:寄存器寻址、直接寻址、寄存器间接寻址和立即数寻址。
举例:
设累加器中的数据为 0C9H(11001001B)。寄存器 R2 的值为 54H(01010100B),进位标志 C
被置位。则如下指令:
SUBB A, R2
执行后,累加器的数据变为 74H(01110100B),进位标志 C 和辅助进位标志 AC 被清零,溢
出标志 C 被置位。
注意:0C9H 减去 54H 应该是 75H,但在上面的计算中,由于在 SUBB 指令执行前,进位
标志 C 已经被置位,因而最终结果还需要减去进位标志,得到 74H。因此,如果在进行单
精度或者多精度减法运算前,进位标志 C 的状态未知,那么应改采用 CLR C 指令把进位
标志 C 清零。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 505 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
SUBB A, Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
0
0
1
1
r
r
r
0
1
0
1
0
1
1
i
0
1
0
0
SUBB
(A) ← (A) - (C) - (Rn)
SUBB A, direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
0
1
direct address
SUBB
(A) ← (A) - (C) - (direct)
SUBB A, @Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
0
0
1
SUBB
(A) ← (A) - (C) - ((Ri))
SUBB A, #data
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
0
0
1
immediate data
SUBB
(A) ← (A) - (C) - #data
SWAP A
功能:
交换累加器的高低半字节
说明:
SWAP 指令把累加器的低 4 位(位 3~位 0)和高 4 位(位 7~位 4)数据进行交换。实际上
SWAP 指令也可视为 4 位的循环指令。该指令不影响标志位。
举例:
设累加器的内容为 0C5H(11000101B),则指令:
SWAP A
执行后,累加器的内容变成 5CH(01011100B)。
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
0
0
0
1
0
0
SWAP
(A3-0)
(A7-4)
XCH A,
功能:
交换累加器和字节变量的内容
说明:
XCH 指令将所指定的字节变量的内容装载到累加器,同时将累加器的旧内容
写入所指定的字节变量。指令中的源操作数和目的操作数允许的寻址方式:寄存器
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 506 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
寻址、直接寻址和寄存器间接寻址。
举例:
设 R0 的内容为地址 20H,累加器的值为 3FH (00111111B)。内部 RAM 的 20H 单元的内容
为 75H (01110101B)。则指令:
XCH A, @R0
执行后,内部 RAM 的 20H 单元的数据变为 3FH (00111111B),累加器的内容变为
75H(01110101B)。
XCH A, Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
0
0
1
r
r
r
0
0
1
0
1
0
0
1
1
i
XCH
(A)
(Rn)
XCH A, direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
1
1
0
direct address
XCH
(A)
(direct)
XCH A, @Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
0
XCH
(A)
((Ri))
XCHD A, @Ri
功能:
交换累加器和@Ri 对应单元中的数据的低 4 位
说明:
XCHD 指令将累加器内容的低半字节(位 0~3,一般是十六进制数或 BCD 码)和间接寻址
的内部 RAM 单元的数据进行交换,各自的高半字(位 7~4)节不受影响。另外,该指令
不影响标志位。
举例:
设 R0 保存了地址 20H,累加器的内容为 36H (00110110B)。内部 RAM 的 20H 单元存储的
数据为 75H (011110101B)。则指令:
XCHD A, @R0
执行后,内部 RAM 20H 单元的内容变成 76H (01110110B),累加器的内容变为
35H(00110101B)。
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
1
1
0
1
0
1
1
i
XCHD
(A3-0)
(Ri3-0)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 507 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
XRL ,
功能:
字节变量的逻辑异或
说明:
XRL 指令将和所代表的字节变量逐位进行逻辑异或运算,结果保存在
所代表的字节变量里。该指令不影响标志位。
两个操作数组合起来共支持 6 种寻址方式:当目的操作数为累加器时,源操作数可以采用
寄存器寻址、直接寻址、寄存器间接寻址和立即数寻址;当目的操作数是可直接寻址的数
据时,源操作数可以是累加器或者立即数。
注意:如果该指令被用来修改输出引脚上的状态,那么 dest-byte 所代表的数据就是从端口
输出数据锁存器中获取的数据,而不是从引脚上读取的数据。
举例:
如果累加器和寄存器 0 的内容分别为 0C3H (11000011B)和 0AAH(10101010B),则指令:
XRL A, R0
执行后,累加器的内容变成 69H (01101001B)。
当目的操作数是可直接寻址字节数据时,该指令可把任何 RAM 单元或者寄存器中的各个
位取反。具体哪些位会被取反,在运行过程当中确定。指令:
XRL P1, #00110001B
执行后,P1 口的位 5、4、0 被取反。
XRL A, Rn
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
1
1
0
1
r
r
r
0
1
0
1
0
1
1
i
0
1
0
0
XRL
(A) ←(A)
(Rn)
XRL A, direct
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
1
0
direct address
XRL
(A) ←(A)
(direct)
XRL A, @Ri
指令长度(字节):
1
执行周期:
1
二进制编码:
操作:
0
1
1
0
XRL
(A) ←(A)
((Ri))
XRL A, #data
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
1
0
immediate data
XRL
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 508 -
STC8G 系列技术手册
官方网站: www.STCAI.com
(A) ←(A)
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
#data
XRL direct, A
指令长度(字节):
2
执行周期:
1
二进制编码:
操作:
0
1
1
0
0
0
1
0
direct address
0
1
1
direct address
XRL
(direct) ←(direct)
(A)
XRL direct, #data
指令长度(字节):
3
执行周期:
1
二进制编码:
操作:
0
1
1
0
0
XRL
(direct)← (direct)
10.4
immediate data
#data
指令详解(英文)
ACALL addr11
Function:
Description:
Absolute Call
ACALL unconditionally calls a subroutine located at the indicated address. The instruction increments
the PC twice to obtain the address of the following instruction, then pushes the 16-bit result onto the
stack (low-order byte first) and increments the Stack Pointer twice.
The destination address is obtained by successively concatenating the five high-order bits of the
incremented PC opcode bits 7-5, and the second byte of the instruction. The subroutine called must
therefore start within the same 2K block of the program memory as the first byte of the instruction
following ACALL. No flags are affected.
Example:
Initially SP equals 07H. The label “SUBRTN” is at program memory location 0345H. After executing
the instruction,
ACALL SUBRTN
at location 0123H, SP will contain 09H, internal RAM locations 08H and 09H will contain
25H and 01H, respectively, and the PC will contain 0345H.
Bytes:
2
Cycles:
3
Encoding:
A10
Operation:
ACALL
A9
A8
1
0
0
0
1
A7
A6
A5
A4
A3
A2
A1
A0
(PC)←(PC)+ 2
(SP)←(SP) + 1
((SP)) ←(PC7-0)
(SP)←(SP) + 1
((SP))←(PC15-8)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 509 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
(PC10-0)←page address
ADD A,
Function:
Description:
Add
ADD adds the byte variable indicated to the Accumulator, leaving the result in the Accumulator. The
carry and auxiliary-carry flags are set, respectively, if there is a carry-out from bit 7 or bit 3, and
cleared otherwise. When adding unsigned integers, the carry flag indicates an overflow occurred.
OV is set if there is a carry-out of bit 6 but not out of bit 7, or a carry-out of bit 7 but not bit 6;
otherwise OV is cleared. When adding signed integers, OV indicates a negative number produced as
the sum of two positive operands, or a positive sum from two negative operands.
Four source operand addressing modes are allowed: register, direct register-indirect, or immediate.
Example:
The Accumulator holds 0C3H(11000011B) and register 0 holds 0AAH (10101010B). The instruction,
ADD A, R0
will leave 6DH (01101101B) in the Accumulator with the AC flag cleared and both the carry flag and
OV set to 1.
ADD A, Rn
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
ADD
0
1
0
1
r
r
r
0
0
1
0
1
0
0
1
1
i
0
0
1
0
0
(A)← (A) + (Rn)
ADD A, direct
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ADD
0
1
direct address
(A)← (A) + (direct)
ADD A, @Ri
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
ADD
0
1
(A)← (A) + ((Ri))
ADD A, #data
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ADD
0
1
immediate data
(A)← (A) + #data
ADDC A,
Function:
Description:
Add with Carry
ADDC simultaneously adds the byte variable indicated, the Carry flag and the Accumulator, leaving
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 510 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
the result in the Accumulator. The carry and auxiliary-carry flags are set, respectively, if there is a
carry-out from bit 7 or bit 3, and cleared otherwise. When adding unsigned integers, the carry flag
indicates an overflow occurred.
OV is set if there is a carry-out of bit 6 but not out of bit 7, or a carry-out of bit 7 but not out of bit 6;
otherwise OV is cleared. When adding signed integers, OV indicates a negative number produced as
the sum of two positive operands or a positive sum from two negative operands.
Four source operand addressing modes are allowed: register, direct, register-indirect, or immediate.
Example:
The Accumulator holds 0C3H(11000011B) and register 0 holds 0AAH (10101010B) with the Carry.
The instruction,
ADDC A,R0
will leave 6EH (01101110B) in the Accumulator with the AC flag cleared and both the carry flag and
OV set to 1.
ADDC A, Rn
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
ADDC
0
1
1
1
r
r
r
0
1
0
1
0
1
1
i
0
1
0
0
(A)← (A) + (C) + (Rn)
ADDC A, direct
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ADDC
0
1
1
direct address
(A)← (A) + (C) + (direct)
ADDC A, @Ri
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
ADDC
0
1
1
(A)← (A) + (C) + ((Ri))
ADDC A, #data
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ADDC
0
1
1
immediate data
(A)← (A) + (C) + #data
AJMP addr11
Function:
Description:
Absolute Jump
AJMP transfers program execution to the indicated address, which is formed at run-time by
concatenating the high-order five bits of the PC (after incrementing the PC twice), opcode bits 7-5, and
the second byte of the instruction. The destination must therefore be within the same 2K block of
program memory as the first byte of the instruction following AJMP.
Example:
The label “JMPADR” is at program memory location 0123H. The instruction,
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 511 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
A6
A2
AJMP JMPADR
is at location 0345H and will load the PC with 0123H.
Bytes:
2
Cycles:
3
Encoding:
A10
Operation:
AJMP
A9
A8
0
0
0
0
1
A7
A5
A4
A3
A1
A0
(PC)←(PC)+ 2
(PC10-0)←page address
ANL ,
Function:
Description:
Logical-AND for byte variables
ANL performs the bitwise logical-AND operation between the variables indicated and stores the results
in the destination variable. No flags are affected.
The two operands allow six addressing mode combinations. When the destination is the Accumulator,
the source can use register, direct, register-indirect, or immediate addressing; when the destination is a
direct address, the source can be the Accumulator or immediate data.
Note: When this instruction is used to modify an output port, the value used as the original port data
will be read from the output data latch not the input pins.
Example:
If the Accumulator holds 0C3H(11000011B) and register 0 holds 55H (01010101B) then the
instruction,
ANL A,R0
will leave 41H (01000001B) in the Accumulator.
When the destination is a directly addressed byte, this instruction will clear combinations of bits in any
RAM location or hardware register. The mask byte determining the pattern of bits to be cleared would
either be a constant contained in the instruction or a value computed in the Accumulator at run-time.
The instruction,
ANL Pl, #01110011B
will clear bits 7, 3, and 2 of output port 1.
ANL A, Rn
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
ANL
1
0
1
1
r
r
r
0
1
0
1
0
1
1
i
(A)← (A) ∧ (Rn)
ANL A, direct
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ANL
1
0
1
direct address
(A)← (A) ∧ (direct)
ANL A, @Ri
Bytes:
1
Cycles:
1
Encoding:
0
1
0
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 512 -
STC8G 系列技术手册
Operation:
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
ANL
(A)← (A) ∧ ((Ri))
ANL A, #data
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ANL
1
0
1
0
1
0
0
immediate data
0
0
1
0
direct address
0
1
1
direct address
(A)← (A) ∧ #data
ANL direct, A
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ANL
1
0
1
(direct)←(direct) ∧ (A)
ANL direct, #data
Bytes:
3
Cycles:
1
Encoding:
0
Operation:
ANL
1
0
1
0
immediate data
(direct)←(direct) ∧ #data
ANL C,
Function:
Description:
Logical-AND for bit variables
If the Boolean value of the source bit is a logical 0 then clear the carry flag; otherwise leave the carry
flag in its current state. A slash (“ / ”) preceding the operand in the assembly language indicates that
the logical complement of the addressed bit is used as the source value, but the source bit itself is not
affected. No other flags are affected.
Only direct addressing is allowed for the source operand.
Example:
Set the carry flag if, and only if, P1.0 = 1, ACC. 7 = 1, and OV = 0:
MOV C, P1.0
; LOAD CARRY WITH INPUT PIN STATE
ANL C, ACC.7
; AND CARRY WITH ACCUM. BIT.7
ANL C, /OV
;AND WITH INVERSE OF OVERFLOW FLAG
ANL C, bit
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
ANL
0
0
0
0
0
1
0
bit address
0
0
0
0
bit address
(C) ←(C) ∧ (bit)
ANL C, /bit
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
ANL
0
1
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 513 -
STC8G 系列技术手册
官方网站: www.STCAI.com
(C)← (C) ∧ (
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
)
CJNE , , rel
Function:
Description:
Compare and Jump if Not Equal
CJNE compares the magnitudes of the first two operands, and branches if their values are not
equal. The branch destination is computed by adding the signed relative-displacement in the last
instruction byte to the PC, after incrementing the PC to the start of the next instruction. The carry
flag is set if the unsigned integer value of is less than the unsigned integer value of
; otherwise, the carry is cleared. Neither operand is affected.
The first two operands allow four addressing mode combinations: the Accumulator may be
compared with any directly addressed byte or immediate data, and any indirect RAM location or
working register can be compared with an immediate constant.
Example:
The Accumulator contains 34H. Register 7 contains 56H. The first instruction in the sequence,
CJNE R7,#60H, NOT_EQ
;
...
......
NOT_EQ: JC
;
; R7 = 60H.
REQ_LOW
...
; IF R7 < 60H.
......
; R7 > 60H.
sets the carry flag and branches to the instruction at label NOT-EQ. By testing the carry flag, this
instruction determines whether R7 is greater or less than 60H.
If the data being presented to Port 1 is also 34H, then the instruction,
WAIT: CJNE A,P1,WAIT
clears the carry flag and continues with the next instruction in sequence, since the Accumulator
does equal the data read from P1. (If some other value was being input on Pl, the program will
loop at this point until the P1 data changes to 34H.)
CJNE A, direct, rel
Bytes:
Cycles:
3
2 or 3
Encoding:
Operation:
1
0
1
1
0
1
0
1
direct address
0
0
immediate data
rel. address
(PC) ←(PC) + 3
IF (A) < > (direct)
THEN
(PC) ←(PC) +relative offset
IF (A) < (direct)
THEN
(C) ← 1
ELSE
(C) ← 0
CJNE A, #data, rel
Bytes:
Cycles:
Encoding:
Operation:
3
1 or 3
1
0
1
1
0
1
rel. address
(PC) ←(PC) + 3
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 514 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
IF (A) < > (data)
THEN
(PC) ←(PC) +relative offset
IF (A) < (data)
THEN
(C) ← 1
ELSE
(C) ← 0
CJNE Rn, #data, rel
Bytes:
Cycles:
3
2 or 3
Encoding:
Operation:
1
0
1
1
1
r
r
r
immediate data
rel. address
1
i
immediate data
rel. address
(PC) ←(PC) + 3
IF (Rn) < > (data)
THEN
(PC) ←(PC) +relative offset
IF (Rn) < (data)
THEN
(C) ← 1
ELSE
(C) ← 0
CJNE @Ri, #data, rel
Bytes:
Cycles:
3
2 or 3
Encoding:
Operation:
1
0
1
1
0
1
(PC) ←(PC) + 3
IF (Ri) < > (data)
THEN
(PC) ←(PC) +relative offset
IF (Ri) < (data)
THEN
(C) ← 1
ELSE
(C) ← 0
CLR A
Function:
Description:
Example:
Clear Accumulator
The Accumulator is cleared (all bits set on zero). No flags are affected.
The Accumulator contains 5CH (01011100B). The instruction,
CLR A
will leave the Accumulator set to 00H (00000000B).
Bytes:
1
Cycles:
1
Encoding:
1
1
1
0
0
1
0
0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 515 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Operation:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
CLR
(A)←0
CLR bit
Function:
Description:
Clear bit
The indicated bit is cleared (reset to zero). No other flags are affected. CLR can operate on the
carry flag or any directly addressable bit.
Example:
Port 1 has previously been written with 5DH (01011101B). The instruction,
CLR P1.2
will leave the port set to 59H (01011001B).
CLR C
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
CLR
1
0
0
0
0
1
1
1
0
0
0
0
1
0
(C)←0
CLR bit
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
CLR
bit address
(bit)←0
CPL A
Function:
Description:
Complement Accumulator
Each bit of the Accumulator is logically complemented (one’s complement). Bits which
previously contained a one are changed to a zero and vice-versa. No flags are affected.
Example:
The Accumulator contains 5CH(01011100B). The instruction,
CPL A
will leave the Accumulator set to 0A3H (10100011B).
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
CPL
1
1
1
0
1
0
0
(A)← ( )
CPL bit
Function:
Description:
Complement bit
The bit variable specified is complemented. A bit which had been a one is changed to zero and
vice-versa. No other flags are affected. CLR can operate on the carry or any directly addressable
bit.
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 516 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Note: When this instruction is used to modify an output pin, the value used as the original data
will be read from the output data latch, not the input pin.
Example:
Port 1 has previously been written with 5BH(01011011B). The instruction,
CPL P1.1
CPL P1.2
will leave the port set to 5DH(01011101B).
CPL C
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
CPL
0
1
1
0
0
1
1
1
1
0
0
1
0
(C)← ( )
CPL bit
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
CPL
0
(bit)← (
bit address
)
DA A
Function:
Description:
Decimal-adjust Accumulator for Addition
DA A adjusts the eight-bit value in the Accumulator resulting from the earlier addition of two
variables (each in packed-BCD format), producing two four-bit digits. Any ADD or ADDC
instruction may have been used to perform the addition.
If Accumulator bits 3-0 are greater than nine (xxxx1010-xxxx1111), or if the AC flag is one, six
is added to the Accumulator producing the proper BCD digit in the low-order nibble. This
internal addition would set the carry flag if a carry-out of the low-order four-bit field propagated
through all high-order bits, but it would not clear the carry flag otherwise.
If the carry flag is now set or if the four high-order bits now exceed nine(1010xxxx- 1111xxxx),
these high-order bits are incremented by six, producing the proper BCD digit in the high-order
nibble. Again, this would set the carry flag if there was a carry-out of the high-order bits, but
wouldn’t clear the carry. The carry flag thus indicates if the sum of the original two BCD
variables is greater than 100, allowing multiple precision decimal addition. OV is not affected.
All of this occurs during the one instruction cycle. Essentially, this instruction performs the
decimal conversion by adding 00H, 06H, 60H, or 66H to the Accumulator, depending on initial
Accumulator and PSW conditions.
Note: DA A cannot simply convert a hexadecimal number in the Accumulator to BCD notation,
nor does DA A apply to decimal subtraction.
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 517 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Example:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
The Accumulator holds the value 56H(01010110B) representing the packed BCD digits of the
decimal number 56. Register 3 contains the value 67H (01100111B) representing the packed
BCD digits of the decimal number 67. The carry flag is set. The instruction sequence.
ADDC A,R3
DA
A
will first perform a standard twos-complement binary addition, resulting in the value 0BEH
(10111110) in the Accumulator. The carry and auxiliary carry flags will be cleared.
The Decimal Adjust instruction will then alter the Accumulator to the value 24H (00100100B),
indicating the packed BCD digits of the decimal number 24, the low-order two digits of the
decimal sum of 56,67, and the carry-in. The carry flag will be set by the Decimal Adjust
instruction, indicating that a decimal overflow occurred. The true sum 56, 67, and 1 is 124.
BCD variables can be incremented or decremented by adding 01H or 99H. If the Accumulator
initially holds 30H (representing the digits of 30 decimal), then the instruction sequence,
ADD A, #99H
DA A
will leave the carry set and 29H in the Accumulator, since 30+99=129. The low-order byte of the
sum can be interpreted to mean 30 – 1 = 29.
Bytes:
1
Cycles:
3
Encoding:
1
Operation:
DA
1
0
1
0
1
0
0
-contents of Accumulator are BCD
IF [[(A3-0) > 9] V [(AC) = 1]]
THEN(A3-0) ←(A3-0) + 6
AND
IF [[(A7-4) > 9] V [(C) = 1]]
THEN (A7-4)←(A7-4) + 6
DEC byte
Function:
Description:
Decrement
The variable indicated is decremented by 1. An original value of 00H will underflow to 0FFH.
No flags are affected. Four operand addressing modes are allowed: accumulator, register, direct,
or register-indirect.
Note: When this instruction is used to modify an output port, the value used as the original port
data will be read from the output data latch, not the input pins.
Example:
Register 0 contains 7FH (01111111B). Internal RAM locations 7EH and 7FH contain 00H and
40H, respectively. The instruction sequence,
DEC @R0
DEC R0
DEC @R0
will leave register 0 set to 7EH and internal RAM locations 7EH and 7FH set to 0FFH and 3FH.
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 518 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
DEC A
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
DEC
0
0
1
0
1
0
0
0
1
1
r
r
r
1
0
1
0
1
0
1
1
i
(A)← (A) -1
DEC Rn
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
DEC
0
(Rn)←(Rn) - 1
DEC direct
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
DEC
0
0
Direct address
(direct)←(direct) - 1
DEC @Ri
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
DEC
0
0
1
((Ri))←((Ri)) - 1
DIV AB
Function:
Description:
Divide
DIV AB divides the unsigned eight-bit integer in the Accumulator by the unsigned eight-bit
integer in register B. The Accumulator receives the integer part of the quotient; register B
receives the integer remainder. The carry and OV flags will be cleared.
Exception: if B had originally contained 00H, the values returned in the Accumulator and
B-register will be undefined and the overflow flag will be set. The carry flag is cleared in any
case.
Example:
The Accumulator contains 251(OFBH or 11111011B) and B contains 18(12H or 00010010B).
The instruction,
DIV AB
will leave 13 in the Accumulator (0DH or 00001101B) and the value 17 (11H or 00010001B) in
B, since 251 = (13×18) + 17. Carry a nd OV will both be cleared.
Bytes:
1
Cycles:
6
Encoding:
1
Operation:
DIV
0
0
0
0
1
0
0
(A)15-8 (B)7-0 ← (A)/(B)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 519 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
DJNZ ,
Function:
Description:
Decrement and Jump if Not Zero
DJNZ decrements the location indicated by 1, and branches to the address indicated by the
second operand if the resulting value is not zero. An original value of 00H will underflow to
0FFH. No flags are affected. The branch destination would be computed by adding the signed
relative-displacement value in the last instruction byte to the PC, after incrementing the PC to the
first byte of the following instruction.
The location decremented may be a register or directly addressed byte.
Note: When this instruction is used to modify an output port, the value used as the original port
data will be read from the output data latch, not the input pins.
Example:
Internal RAM locations 40H, 50H, and 60H contain the values 01H, 70H, and 15H, respectively.
The instruction sequence,
DJNZ 40H, LABEL_1
DJNZ 50H, LABEL_2
DJNZ 60H, LABEL_3
will cause a jump to the instruction at label LABEL_2 with the values 00H, 6FH, and 15H in the
three RAM locations. The first jump was not taken because the result was zero.
This instruction provides a simple way of executing a program loop a given number of times, or
for adding a moderate time delay (from 2 to 512 machine cycles) with a single instruction. The
instruction sequence,
MOV R2,#8
TOOOLE: CPL P1.7
DJNZ R2, TOOGLE
will toggle P1.7 eight times, causing four output pulses to appear at bit 7 of output Port 1.
Each pulse will last three machine cycles; two for DJNZ and one to alter the pin.
DJNZ Rn, rel
Bytes:
Cycles:
2
2 or 3
Encoding:
1
Operation:
DJNZ
1
0
1
1
r
r
r
rel. address
1
0
1
direct address
(PC) ←(PC) + 2
(Rn) ←(Rn) – 1
IF (Rn) > 0 or (Rn) < 0
THEN
(PC) ←(PC)+ rel
DJNZ direct, rel
Bytes:
Cycles:
3
2 or 3
Encoding:
1
Operation:
DJNZ
1
0
1
0
rel. address
(PC) ←(PC) + 2
(direct) ←(direct) – 1
IF (direct) > 0 or (direct) < 0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 520 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
THEN
(PC) ←(PC)+ rel
INC
Function:
Description:
Increment
INC increments the indicated variable by 1. An original value of 0FFH will overflow to 00H.No
flags are affected. Three addressing modes are allowed: register, direct, or register-indirect.
Note: When this instruction is used to modify an output port, the value used as the original port
data will be read from the output data latch, not the input pins.
Example:
Register 0 contains 7EH (01111110B). Internal RAM locations 7EH and 7FH contain 0FFH and
40H, respectively. The instruction sequence,
INC @R0
INC R0
INC @R0
will leave register 0 set to 7FH and internal RAM locations 7EH and 7FH holding (respectively)
00H and 41H.
INC A
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
INC
0
0
0
0
1
0
0
0
0
1
r
r
r
0
0
1
0
1
0
1
1
i
(A) ←(A)+1
INC Rn
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
INC
0
(Rn) ←(Rn)+1
INC direct
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
INC
0
0
direct address
(direct) ←(direct)+1
INC @Ri
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
INC
0
0
0
((Ri))←((Ri)) + 1
INC DPTR
Function:
Increment Data Pointer
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 521 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Description:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Increment the 16-bit data pointer by 1. A 16-bit increment (modulo 216) is performed; an
overflow of the low-order byte of the data pointer (DPL) from 0FFH to 00H will increment the
high-order-byte (DPH). No flags are affected.
This is the only 16-bit register which can be incremented.
Example:
Register DPH and DPL contains 12H and 0FEH, respectively. The instruction sequence,
IINC DPTR
INC DPTR
INC DPTR
will change DPH and DPL to 13H and 01H.
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
INC
0
1
0
0
0
1
1
(DPTR) ← (DPTR) + 1
JB bit, rel
Function:
Description:
Jump if Bit set
If the indicated bit is a one, jump to the address indicated; otherwise proceed with the next
instruction. The branch destination is computed by adding the signed relative-displacement in the
third instruction byte to the PC, after incrementing the PC to the first byte of the next instruction.
The bit tested is not modified. No flags are affected
Example:
The data present at input port 1 is 11001010B. The Accumulator holds 56 (01010110B). The
instruction sequence,
JB P1.2, LABEL1
JB ACC.2, LABEL2
will cause program execution to branch to the instruction at label LABEL2.
Bytes:
Cycles:
Encoding:
Operation:
3
1 or 3
0
0
1
0
0
0
0
0
bit address
rel. address
JB
(PC) ← (PC) + 3
IF (bit) = 1
THEN
(PC) ← (PC)+ rel
JBC bit, rel
Function:
Description:
Jump if Bit is set and Clear bit
If the indicated bit is one, branch to the address indicated; otherwise proceed with the next
instruction. The bit will not be cleared if it is already a zero. The branch destination is computed
by adding the signed relative-displacement in the third instruction byte to the PC, after
incrementing the PC to the first byte of the next instruction. No flags are affected.
Note: When this instruction is used to test an output pin, the value used as the original data will
be read from the output data latch, not the input pin.
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 522 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Example:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
The Accumulator holds 56H (01010110B). The instruction sequence,
JBC ACC.3, LABEL1
JBC ACC.2, LABEL2
will cause program execution to continue at the instruction identified by the label LABEL2, with
the Accumulator modified to 52H (01010010B).
Bytes:
Cycles:
3
1 or 3
Encoding:
Operation:
0
0
0
1
0
0
0
0
bit address
rel. address
JB
(PC) ← (PC) + 3
IF (bit) = 1
THEN
(bit) ← 0
(PC) ← (PC)+ rel
JC rel
Function:
Description:
Jump if Carry is set
If the carry flag is set, branch to the address indicated; otherwise proceed with the next
instruction. The branch destination is computed by adding the signed relative-displacement in the
second instruction byte to the PC, after incrementing the PC twice. No flags are affected.
Example:
The carry flag is cleared. The instruction sequence,
JC LABEL1
CPL C
JC LABEL2
will set the carry and cause program execution to continue at the instruction identified by the
label LABEL2.
Bytes:
Cycles:
Encoding:
Operation:
2
1 or 3
0
1
0
0
0
0
0
0
rel. address
JC
(PC) ← (PC) + 2
IF (C) = 1
THEN
(PC) ← (PC)+ rel
JMP @A+DPTR
Function:
Description:
Jump indirect
Add the eight-bit unsigned contents of the Accumulator with the sixteen-bit data pointer, and
load the resulting sum to the program counter. This will be the address for subsequent instruction
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 523 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
fetches. Sixteen-bit addition is performed (modulo
选型顾问: 13922805190
): a carry-out from the low-order
eight bits propagates through the higher-order bits. Neither the Accumulator nor the Data Pointer
is altered. No flags are affected.
Example:
An even number from 0 to 6 is in the Accumulator. The following sequence of instructions will
branch to one of four AJMP instructions in a jump table starting at JMP_TBL:
MOV DPTR, #JMP_TBL
JMP @A+DPTR
JMP-TBL: AJMP LABEL0
AJMP LABEL1
AJMP LABEL2
AJMP LABEL3
If the Accumulator equals 04H when starting this sequence, execution will jump to label
LABEL2. Remember that AJMP is a two-byte instruction, so the jump instructions start at every
other address.
Bytes:
1
Cycles:
4
Encoding:
0
Operation:
JMP
1
1
1
0
0
1
1
(PC) ← (A) + (DPTR)
JNB bit, rel
Function:
Description:
Jump if Bit is not set
If the indicated bit is a zero, branch to the indicated address; otherwise proceed with the next
instruction. The branch destination is computed by adding the signed relative-displacement in the
third instruction byte to the PC, after incrementing the PC to the first byte of the next instruction.
The bit tested is not modified. No flags are affected.
Example:
The data present at input port 1 is 11001010B. The Accumulator holds 56H (01010110B). The
instruction sequence,
JNB P1.3, LABEL1
JNB ACC.3, LABEL2
will cause program execution to continue at the instruction at label LABEL2.
Bytes:
Cycles:
3
1 or 3
Encoding:
0
Operation:
JNB
0
1
1
0
0
0
0
bit address
rel. address
(PC) ←(PC) + 3
IF (bit) = 0
THEN (PC) ← (PC) + rel
JNC rel
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 524 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Function:
Description:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Jump if Carry not set
If the carry flag is a zero, branch to the address indicated; otherwise proceed with the next
instruction. The branch destination is computed by adding the signed relative-displacement in the
second instruction byte to the PC, after incrementing the PC twice to point to the next
instruction. The carry flag is not modified.
Example:
The carry flag is set. The instruction sequence,
JNC LABEL1
CPL C
JNC LABEL2
will clear the carry and cause program execution to continue at the instruction identified by the
label LABEL2.
Bytes:
Cycles:
2
1 or 3
Encoding:
0
Operation:
JNC
1
0
1
0
0
0
0
rel. address
(PC) ←(PC) + 2
IF (C) = 0
THEN (PC) ← (PC) + rel
JNZ rel
Function:
Description:
Jump if Accumulator Not Zero
If any bit of the Accumulator is a one, branch to the indicated address; otherwise proceed with
the next instruction. The branch destination is computed by adding the signed
relative-displacement in the second instruction byte to the PC, after incrementing the PC twice.
The Accumulator is not modified. No flags are affected.
Example:
The Accumulator originally holds 00H. The instruction sequence,
JNZ LABEL1
INC A
JNZ LAEEL2
will set the Accumulator to 01H and continue at label LABEL2.
Bytes:
Cycles:
2
1 or 3
Encoding:
0
Operation:
JNZ
1
1
1
0
0
0
0
rel. address
(PC) ←(PC) + 2
IF (A) ≠ 0
THEN (PC) ← (PC) + rel
JZ rel
Function:
Description:
Jump if Accumulator Zero
If all bits of the Accumulator are zero, branch to the address indicated; otherwise proceed with
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 525 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
the next instruction. The branch destination is computed by adding the signed
relative-displacement in the second instruction byte to the PC, after incrementing the PC twice.
The Accumulator is not modified. No flags are affected.
Example:
The Accumulator originally contains 01H. The instruction sequence,
JZ LABEL1
DEC A
JZ LAEEL2
will change the Accumulator to 00H and cause program execution to continue at the instruction
identified by the label LABEL2.
Bytes:
Cycles:
2
1 or 3
Encoding:
Operation:
0
1
1
0
0
0
0
0
rel. address
JZ
(PC) ←(PC) + 2
IF (A) = 0
THEN (PC) ← (PC) + rel
LCALL addr16
Function:
Description:
Long call
LCALL calls a subroutine located at the indicated address. The instruction adds three to the
program counter to generate the address of the next instruction and then pushes the 16-bit result
onto the stack (low byte first), incrementing the Stack Pointer by two. The high-order and
low-order bytes of the PC are then loaded, respectively, with the second and third bytes of the
LCALL instruction. Program execution continues with the instruction at this address.
The subroutine may therefore begin anywhere in the full 64K-byte program memory address
space. No flags are affected.
Example:
Initially the Stack Pointer equals 07H. The label “SUBRTN” is assigned to program memory
location 1234H. After executing the instruction,
LCALL SUBRTN
at location 0123H, the Stack Pointer will contain 09H, internal RAM locations 08H and 09H will
contain 26H and 01H, and the PC will contain 1234H.
Bytes:
3
Cycles:
3
Encoding:
Operation:
0
0
0
1
0
0
1
0
addr15-addr8
addr7-addr0
LCALL
(PC) ←(PC) + 3
(SP) ←(SP) + 1
((SP)) ←(PC7-0)
(SP) ←(SP) + 1
((SP)) ←(PC15-8)
(PC) ← addr15-0
LJMP addr16
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 526 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Function:
Description:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Long Jump
LJMP causes an unconditional branch to the indicated address, by loading the high-order and
low-order bytes of the PC (respectively) with the second and third instruction bytes. The
destination may therefore be anywhere in the full 64K program memory address space. No flags
are affected.
Example:
The label “JMPADR” is assigned to the instruction at program memory location 1234H. The
instruction,
LJMP JMPADR
at location 0123H will load the program counter with 1234H.
Bytes:
3
Cycles:
3
Encoding:
0
Operation:
LJMP
0
0
0
0
0
1
0
addr15-addr8
addr7-addr0
(PC) ← addr15-0
MOV ,
Function:
Description:
Move byte variable
The byte variable indicated by the second operand is copied into the location specified by the
first operand. The source byte is not affected. No other register or flag is affected.
This is by far the most flexible operation. Fifteen combinations of source and destination
addressing modes are allowed.
Example:
Internal RAM location 30H holds 40H. The value of RAM location 40H is 10H. The data
present at input port 1 is 11001010B (0CAH).
MOV R0, #30H
; R0< = 30H
MOV A, @R0
; A < = 40H
MOV R1, A
; R1 < = 40H
MOV B, @Rl
; B < = 10H
MOV @Rl, Pl
; RAM (40H) < = 0CAH
MOV P2, P1
; P2 #0CAH
leaves the value 30H in register 0,40H in both the Accumulator and register 1,10H in register B,
and 0CAH(11001010B) both in RAM location 40H and output on port 2.
MOV A,Rn
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
MOV
1
1
0
1
r
r
r
1
0
0
1
0
1
(A) ←(Rn)
*MOV A,direct
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
MOV
1
direct address
(A)← (direct)
*MOV A, ACC is not a valid instruction.
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 527 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
MOV A,@Ri
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
MOV
1
1
0
0
1
1
i
1
1
0
1
0
0
1
1
1
r
r
r
1
0
1
r
r
r
1
1
1
r
r
r
1
1
0
1
0
1
direct address
0
1
r
r
r
direct address
(A) ←((Ri))
MOV A,#data
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
MOV
1
immediate data
(A)←#data
MOV Rn, A
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
MOV
1
(Rn) ←(A)
MOV Rn,direct
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
MOV
0
direct address
(Rn)← (direct)
MOV Rn,#data
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
MOV
1
immediate data
(Rn)←#data
MOV direct, A
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
MOV
1
(direct)← (A)
MOV direct, Rn
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
MOV
0
0
(direct)← (Rn)
MOV direct, direct
Bytes:
3
Cycles:
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 528 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Encoding:
1
Operation:
MOV
0
0
车规 MCU 设计公司
0
0
1
0
1
0
0
1
1
i
1
0
1
0
1
1
1
0
1
1
i
1
0
0
1
1
i
1
0
1
1
i
研发顾问:13922829991
dir.addr. (src)
选型顾问: 13922805190
dir.addr. (dest)
(direct)← (direct)
MOV direct, @Ri
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
MOV
0
0
direct address
(direct)←((Ri))
MOV direct, #data
Bytes:
3
Cycles:
1
Encoding:
0
Operation:
MOV
1
1
direct address
immediate data
(direct)←#data
MOV @Ri, A
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
MOV
1
((Ri))←(A)
MOV @Ri, direct
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
MOV
0
direct address
((Ri))←(direct)
MOV @Ri, #data
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
MOV
1
1
immediate data
((Ri))←#data
MOV ,
Function:
Description:
Move bit data
The Boolean variable indicated by the second operand is copied into the location specified by the
first operand. One of the operands must be the carry flag; the other may be any directly
addressable bit. No other register or flag is affected.
Example:
The carry flag is originally set. The data present at input Port 3 is 11000101B. The data
previously written to output Port 1 is 35H (00110101B).
MOV P1.3, C
MOV C, P3.3
MOV P1.2, C
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 529 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
will leave the carry cleared and change Port 1 to 39H (00111001B).
MOV C, bit
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
MOV
0
1
0
0
0
1
0
bit address
0
1
0
0
1
0
bit address
(C)← (bit)
MOV bit, C
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
MOV
0
(bit)← (C)
MOV DPTR , #data 16
Function:
Description:
Load Data Pointer with a 16-bit constant
The Data Pointer is loaded with the 16-bit constant indicated. The 16-bit constant is loaded into
the second and third bytes of the instruction. The second byte (DPH) is the high-order byte,
while the third byte (DPL) holds the low-order byte. No flags are affected.
This is the only instruction which moves 16 bits of data at once.
Example:
The instruction,
MOV DPTR, #1234H
will load the value 1234H into the Data Pointer: DPH will hold 12H and DPL will hold 34H.
Bytes:
3
Cycles:
1
Encoding:
1
Operation:
MOV
0
0
1
0
0
0
0
immediate data15-8
immediate data7-0
(DPTR) ← #data15-0
DPH DPL ← #data15-8 #data7-0
MOVC A , @A+
Function:
Description:
Move Code byte
The MOVC instructions load the Accumulator with a code byte, or constant from program
memory. The address of the byte fetched is the sum of the original unsigned eight-bit.
Accumulator contents and the contents of a sixteen-bit base register, which may be either the
Data Pointer or the PC. In the latter case, the PC is incremented to the address of the following
instruction before being added with the Accumulator; otherwise the base register is not altered.
Sixteen-bit addition is performed so a carry-out from the low-order eight bits may propagate
through higher-order bits. No flags are affected.
Example:
A value between 0 and 3 is in the Accumulator. The following instructions will translate the
value in the Accumulator to one of four values defined by the DB (define byte) directive.
REL-PC: INC A
MOVC A, @A+PC
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 530 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
RET
DB 66H
DB 77H
DB 88H
DB 99H
If the subroutine is called with the Accumulator equal to 01H, it will return with 77H in the
Accumulator. The INC A before the MOVC instruction is needed to “get around” the RET
instruction above the table. If several bytes of code separated the MOVC from the table, the
corresponding number would be added to the Accumulator instead.
MOVC A,@A+DPTR
Bytes:
1
Cycles:
4
Encoding:
Operation:
1
0
0
1
0
0
1
1
0
0
1
1
MOVC
(A) ←((A)+(DPTR))
MOVC A,@A+PC
Bytes:
1
Cycles:
3
Encoding:
Operation:
1
0
0
0
MOVC
(PC) ←(PC)+1
(A) ←((A)+(PC))
MOVX ,
Function:
Description:
Move External
The MOVX instructions transfer data between the Accumulator and a byte of external data
memory, hence the “X” appended to MOV. There are two types of instructions, differing in
whether they provide an eight-bit or sixteen-bit indirect address to the external data RAM.
In the first type, the contents of R0 or R1 in the current register bank provide an eight-bit address
multiplexed with data on P0. Eight bits are sufficient for external I/O expansion decoding or for
a relatively small RAM array. For somewhat larger arrays, any output port pins can be used to
output higher-order address bits. These pins would be controlled by an output instruction
preceding the MOVX.
In the second type of MOVX instruction, the Data Pointer generates a sixteen-bit address. P2
outputs the high-order eight address bits (the contents of DPH) while P0 multiplexes the
low-order eight bits (DPL) with data. The P2 Special Function Register retains its previous
contents while the P2 output buffers are emitting the contents of DPH. This form is faster and
more efficient when accessing very large data arrays (up to 64K bytes), since no additional
instructions are needed to set up the output ports.
It is possible in some situations to mix the two MOVX types. A large RAM array with its
high-order address lines driven by P2 can be addressed via the Data Pointer, or with code to
output high-order address bits to P2 followed by a MOVX instruction using R0 or R1.
Example:
An external 256 byte RAM using multiplexed address/data lines (e.g., an Intel 8155 RAM/
I/O/Timer) is connected to the 8051 Port 0. Port 3 provides control lines for the external RAM.
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 531 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
Ports 1 and 2 are used for normal I/O. Registers 0 and 1 contain 12H and 34H.
Location 34H of the external RAM holds the value 56H. The instruction sequence,
MOVX A, @R1
MOVX @R0, A
copies the value 56H into both the Accumulator and external RAM location 12H.
MOVX A,@Ri
Bytes:
Cycles:
1
3 or 1
Encoding:
Operation:
1
1
1
0
0
0
1
i
1
0
0
0
0
0
1
1
0
0
1
i
1
1
0
0
0
0
MOVX
(A) ← ((Ri))
MOVX A,@DPTR
Bytes:
Cycles:
1
2 or 1
Encoding:
Operation:
1
1
MOVX
(A) ←((DPTR))
MOVX @Ri, A
Bytes:
Cycles:
1
3 or 1
Encoding:
Operation:
1
1
MOVX
((Ri))←(A)
MOVX @DPTR, A
Bytes:
Cycles:
1
2 or 1
Encoding:
Operation:
1
1
MOVX
(DPTR)←(A)
MUL AB
Function:
Description:
Multiply
MUL AB multiplies the unsigned eight-bit integers in the Accumulator and register B. The
low-order byte of the sixteen-bit product is left in the Accumulator, and the high-order byte in B.
If the product is greater than 255 (0FFH) the overflow flag is set; otherwise it is cleared.
The carry flag is always cleared.
Example:
Originally the Accumulator holds the value 80 (50H). Register B holds the value 160 (0A0H).
The instruction,
MUL AB
will give the product 12,800 (3200H), so B is changed to 32H (00110010B) and the Accumulator
is cleared. The overflow flag is set, carry is cleared.
Bytes:
1
Cycles:
2
Encoding:
1
0
1
0
0
1
0
0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 532 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Operation:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
(A)7-0 ← (A)×(B)
(B)15-8
NOP
Function:
Description:
No Operation
Execution continues at the following instruction. Other than the PC, no registers or flags are
affected.
Example:
It is desired to produce a low-going output pulse on bit 7 of Port 2 lasting exactly 5 cycles. A
simple SETB/CLR sequence would generate a one-cycle pulse, so four additional cycles must be
inserted. This may be done (assuming no interrupts are enabled) with the instruction sequence.
CLR P2.7
NOP
NOP
NOP
NOP
SETB P2.7
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
NOP
0
0
0
0
0
0
0
(PC) ←(PC)+1
ORL ,
Function:
Description:
Logical-OR for byte variables
ORL performs the bitwise logical-OR operation between the indicated variables, storing the
results in the destination byte. No flags are affected.
The two operands allow six addressing mode combinations. When the destination is the
Accumulator, the source can use register, direct, register-indirect, or immediate addressing; when
the destination is a direct address, the source can be the Accumulator or immediate data.
Note: When this instruction is used to modify an output port, the value used as the original port
data will be read from the output data latch, not the input pins.
Example:
If the Accumulator holds 0C3H (11000011B) and R0 holds 55H (01010101B) then the
instruction,
ORL A, R0
will leave the Accumulator holding the value 0D7H (11010111B).
When the destination is a directly addressed byte, the instruction can set combinations of bits in
any RAM location or hardware register. The pattern of bits to be set is determined by a mask
byte, which may be either a constant data value in the instruction or a variable computed in the
Accumulator at run-time. The instruction,
ORL P1, #00110010B
will set bits 5,4, and 1of output Port 1.
ORL A, Rn
Bytes:
1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 533 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Cycles:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
1
Encoding:
0
Operation:
ORL
1
0
0
1
r
r
r
0
0
1
0
1
0
0
1
1
i
0
0
1
0
0
immediate data
0
0
0
1
0
direct address
0
0
1
1
direct address
(A) ←(A)∨(Rn)
ORL A, direct
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ORL
1
0
direct address
(A) ←(A)∨(direct)
ORL A, @Ri
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
ORL
1
0
(A) ←(A)∨((Ri))
ORL A, #data
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ORL
1
0
(A) ←(A)∨#data
ORL direct, A
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
ORL
1
0
(direct)← (direct)∨(A)
ORL direct, #data
Bytes:
3
Cycles:
1
Encoding:
0
Operation:
ORL
1
0
0
immediate data
(direct)← (direct)∨#data
ORL C,
Function:
Description:
Logical-OR for bit variables
Set the carry flag if the Boolean value is a logical 1; leave the carry in its current state otherwise.
A slash (“ / ”) preceding the operand in the assembly language indicates that the logical
complement of the addressed bit is used as the source value, but the source bit itself is not
affected. No other flags are affected.
Example:
Set the carry flag if and only if P1.0 = 1, ACC. 7 = 1, or OV = 0:
MOV C, P1.0
;LOAD CARRY WITH INPUT PIN P10
ORL C, ACC.7
;OR CARRY WITH THE ACC.BIT 7
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 534 -
STC8G 系列技术手册
官方网站: www.STCAI.com
ORL C, /OV
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;OR CARRY WITH THE INVERSE OF OV
ORL C, bit
Bytes:
Cycles:
2
1 or 4
Encoding:
0
Operation:
ORL
1
1
1
0
0
1
0
bit address
0
0
0
0
0
bit address
(C) ←(C)∨(bit)
ORL C, /bit
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
ORL
0
1
(C) ←(C)∨(
)
POP direct
Function:
Description:
Pop from stack
The contents of the internal RAM location addressed by the Stack Pointer is read, and the Stack
Pointer is decremented by one. The value read is then transferred to the directly addressed byte
indicated. No flags are affected.
Example:
The Stack Pointer originally contains the value 32H, and internal RAM locations 30H through
32H contain the values 20H, 23H, and 01H, respectively. The instruction sequence,
POP DPH
POP DPL
will leave the Stack Pointer equal to the value 30H and the Data Pointer set to 0123H. At this
point the instruction,
POP SP
will leave the Stack Pointer set to 20H. Note that in this special case the Stack Pointer was
decremented to 2FH before being loaded with the value popped (20H).
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
POP
1
0
1
0
0
0
0
direct address
(direct) ←((SP))
(SP) ← (SP) - 1
PUSH direct
Function:
Description:
Push onto stack
The Stack Pointer is incremented by one. The contents of the indicated variable is then copied
into the internal RAM location addressed by the Stack Pointer. Otherwise no flags are affected.
Example:
On entering an interrupt routine the Stack Pointer contains 09H. The Data Pointer holds the
value 0123H. The instruction sequence,
PUSH DPL
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 535 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
PUSH DPH
will leave the Stack Pointer set to 0BH and store 23H and 01H in internal RAM locations 0AH
and 0BH, respectively.
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
PUSH
1
0
0
0
0
0
0
direct address
(SP) ←(SP) + 1
((SP)) ← (direct)
RET
Function:
Description:
Return from subroutine
RET pops the high-and low-order bytes of the PC successively from the stack, decrementing the
Stack Pointer by two. Program execution continues at the resulting address, generally the
instruction immediately following an ACALL or LCALL. No flags are affected.
Example:
The Stack Pointer originally contains the value 0BH. Internal RAM locations 0AH and 0BH
contain the values 23H and 01H, respectively. The instruction,
RET
will leave the Stack Pointer equal to the value 09H. Program execution will continue at location
0123H.
Bytes:
1
Cycles:
3
Encoding:
0
Operation:
RET
0
1
0
0
0
1
0
(PC15-8) ←((SP))
(SP) ←(SP) -1
(PC7-0) ←((SP))
(SP) ←(SP) -1
RETI
Function:
Description:
Return from interrupt
RETI pops the high- and low-order bytes of the PC successively from the stack, and restores the
interrupt logic to accept additional interrupts at the same priority level as the one just processed.
The Stack Pointer is left decremented by two. No other registers are affected; the PSW is not
automatically restored to its pre-interrupt status. Program execution continues at the resulting
address, which is generally the instruction immediately after the point at which the interrupt
request was detected. If a lower- or same-level interrupt had been pending when the RETI
instruction is executed, that one instruction will be executed before the pending interrupt is
processed.
Example:
The Stack Pointer originally contains the value 0BH. An interrupt was detected during the
instruction ending at location 0122H. Internal RAM locations 0AH and 0BH contain the values
23H and 01H, respectively. The instruction,
RETI
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 536 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
will leave the Stack Pointer equal to 09H and return program execution to location 0123H.
Bytes:
1
Cycles:
3
Encoding:
0
Operation:
RETI
0
1
1
0
0
1
0
(PC15-8) ←((SP))
(SP) ←(SP) -1
(PC7-0) ←((SP))
(SP) ←(SP) -1
RL A
Function:
Description:
Rotate Accumulator Left
The eight bits in the Accumulator are rotated one bit to the left. Bit 7 is rotated into the bit 0
position. No flags are affected.
Example:
The Accumulator holds the value 0C5H (11000101B). The instruction,
RL A
leaves the Accumulator holding the value 8BH (10001011B) with the carry unaffected.
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
RL
0
1
(An+1) ← (An)
0
0
0
1
1
n = 0-6
(A0) ←(A7)
RLC A
Function:
Description:
Rotate Accumulator Left through the Carry flag
The eight bits in the Accumulator and the carry flag are together rotated one bit to the left. Bit 7
moves into the carry flag; the original state of the carry flag moves into the bit 0 position.
No other flags are affected.
Example:
The Accumulator holds the value 0C5H (11000101B), and the carry is zero. The instruction,
RLC A
leaves the Accumulator holding the value 8BH (10001011B) with the carry set.
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
RLC
0
1
(An+1) ←(An)
1
0
0
1
1
n = 0-6
(A0) ←(C)
(C) ←(A7)
RR A
Function:
Rotate Accumulator Right
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 537 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Description:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
The eight bits in the Accumulator are rotated one bit to the right. Bit 0 is rotated into the bit 7
position. No flags are affected.
Example:
The Accumulator holds the value 0C5H (11000101B). The instruction,
RR A
leaves the Accumulator holding the value 0E2H (11100010B) with the carry unaffected.
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
RR
0
0
0
(An) ←(An+1)
0
0
1
1
n=0-6
(A7) ←(A0)
RRC A
Function:
Description:
Rotate Accumulator Right through the Carry flag
The eight bits in the Accumulator and the carry flag are together rotated one bit to the right. Bit 0
moves into the carry flag; the original value of the carry flag moves into the bit 7 position. No
other flags are affected.
Example:
The Accumulator holds the value 0C5H (11000101B), and the carry is zero. The instruction,
RRC A
leaves the Accumulator holding the value 62H (01100010B) with the carry set.
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
RRC
0
0
1
(An+1) ←(An)
0
0
1
1
n=0-6
(A7) ←(C)
(C) ←(A0)
SETB
Function:
Description:
Set bit
SETB sets the indicated bit to one. SETB can operate on the carry flag or any directly
addressable bit. No other flags are affected.
Example:
The carry flag is cleared. Output Port 1 has been written with the value 34H (00110100B).
The instructions,
SETB C
SETB P1.0
will leave the carry flag set to 1 and change the data output on Port 1 to 35H (00110101B).
SETB C
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
SETB
1
0
1
0
0
1
1
(C) ← 1
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 538 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
SETB bit
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
SETB
1
0
1
0
0
1
0
bit address
(bit) ← 1
SJMP rel
Function:
Description:
Short Jump
Program control branches unconditionally to the address indicated. The branch destination is
computed by adding the signed displacement in the second instruction byte to the PC, after
incrementing the PC twice. Therefore, the range of destinations allowed is from 128bytes
preceding this instruction to 127 bytes following it.
Example:
The label “RELADR” is assigned to an instruction at program memory location 0123H. The
instruction,
SJMP RELADR
will assemble into location 0100H. After the instruction is executed, the PC will contain the
value 0123H.
(Note: Under the above conditions the instruction following SJMP will be at 102H.Therefore, the
displacement byte of the instruction will be the relative offset (0123H - 0102H) = 21H. Put
another way, an SJMP with a displacement of 0FEH would be an one-instruction infinite loop).
Bytes:
2
Cycles:
3
Encoding:
1
Operation:
SJMP
0
0
0
0
0
0
0
rel. address
(PC) ←(PC)+2
(PC) ← (PC)+rel
SUBB A,
Function:
Description:
Subtract with borrow
SUBB subtracts the indicated variable and the carry flag together from the Accumulator, leaving
the result in the Accumulator. SUBB sets the carry (borrow)flag if a borrow is needed for bit 7,
and clears C otherwise.(If C was set before executing a SUBB instruction, this indicates that a
borrow was needed for the previous step in a multiple precision subtraction, so the carry is
subtracted from the Accumulator along with the source operand).AC is set if a borrow is needed
for bit 3, and cleared otherwise. OV is set if a borrow is needed into bit 6, but not into bit 7, or
into bit 7, but not bit 6.
When subtracting signed integers OV indicates a negative number produced when a negative
value is subtracted from a positive value, or a positive result when a positive number is
subtracted from a negative number.
The source operand allows four addressing modes: register, direct, register-indirect, or
immediate.
Example:
The Accumulator holds 0C9H (11001001B), register 2 holds 54H (01010100B), and the carry
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 539 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
flag is set. The instruction,
SUBB A, R2
will leave the value 74H (01110100B) in the accumulator, with the carry flag and AC cleared but
OV set.
Notice that 0C9H minus 54H is 75H. The difference between this and the above result is due to
the carry (borrow) flag being set before the operation. If the state of the carry is not known
before starting a single or multiple-precision subtraction, it should be explicitly cleared by a CLR
C instruction.
SUBB A, Rn
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
SUBB
0
0
1
1
r
r
r
0
1
0
1
0
1
1
i
0
1
0
0
(A) ← (A) - (C) - (Rn)
SUBB A, direct
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
SUBB
0
0
1
direct address
(A) ← (A) - (C) - (direct)
SUBB A, @Ri
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
SUBB
0
0
1
(A) ← (A) - (C) - ((Ri))
SUBB A, #data
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
SUBB
0
0
1
immediate data
(A) ← (A) - (C) - #data
SWAP A
Function:
Description:
Swap nibbles within the Accumulator
SWAP A interchanges the low- and high-order nibbles (four-bit fields) of the Accumulator (bits
3-0 and bits 7-4). The operation can also be thought of as a four-bit rotate instruction.
No flags are affected.
Example:
The Accumulator holds the value 0C5H (11000101B). The instruction,
SWAP A
leaves the Accumulator holding the value 5CH (01011100B).
Bytes:
1
Cycles:
1
Encoding:
1
1
0
0
0
1
0
0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 540 -
STC8G 系列技术手册
官方网站: www.STCAI.com
Operation:
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
SWAP
(A3-0)
(A7-4)
XCH A,
Function:
Description:
Exchange Accumulator with byte variable
XCH loads the Accumulator with the contents of the indicated variable, at the same time writing
the original Accumulator contents to the indicated variable. The source/destination operand can
use register, direct, or register-indirect addressing.
Example:
R0 contains the address 20H. The Accumulator holds the value 3FH (00111111B). Internal
RAM location 20H holds the value 75H (01110101B). The instruction,
XCH A, @R0
will leave RAM location 20H holding the values 3FH (00111111B) and 75H (01110101B) in the
accumulator.
XCH A, Rn
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
XCH
1
(A)
0
0
1
r
r
r
0
0
1
0
1
0
0
1
1
i
(Rn)
XCH A, direct
Bytes:
2
Cycles:
1
Encoding:
1
Operation:
XCH
1
(A)
0
direct address
(direct)
XCH A, @Ri
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
XCH
1
(A)
0
((Ri))
XCHD A, @Ri
Function:
Description:
Exchange Digit
XCHD exchanges the low-order nibble of the Accumulator (bits 3-0), generally representing a
hexadecimal or BCD digit, with that of the internal RAM location indirectly addressed by the
specified register. The high-order nibbles (bits 7-4) of each register are not affected. No flags are
affected.
Example:
R0 contains the address 20H. The Accumulator holds the value 36H (00110110B). Internal RAM
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 541 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
location 20H holds the value 75H (01110101B). The instruction,
XCHD A, @R0
will leave RAM location 20H holding the value 76H (01110110B) and 35H (00110101B) in the
accumulator.
Bytes:
1
Cycles:
1
Encoding:
1
Operation:
XCHD
1
(A3-0)
0
1
0
1
1
i
(Ri3-0)
XRL ,
Function:
Description:
Logical Exclusive-OR for byte variables
XRL performs the bitwise logical Exclusive-OR operation between the indicated variables,
storing the results in the destination. No flags are affected.
The two operands allow six addressing mode combinations. When the destination is the
Accumulator, the source can use register, direct, register-indirect, or immediate addressing; when
the destination is a direct address, the source can be the Accumulator or immediate data.
(Note: When this instruction is used to modify an output port, the value used as the original port
data will be read from the output data latch, not the input pins.)
Example:
If the Accumulator holds 0C3H (11000011B) and register 0 holds 0AAH (10101010B) then the
instruction,
XRL A, R0
will leave the Accumulator holding the value 69H (01101001B).
When the destination is a directly addressed byte, this instruction can complement combination
of bits in any RAM location or hardware register. The pattern of bits to be complemented is then
determined by a mask byte, either a constant contained in the instruction or a variable computed
in the Accumulator at run-time. The instruction,
XRL P1, #00110001B
will complement bits 5,4 and 0 of output Port 1.
XRL A, Rn
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
XRL
1
1
(A) ←(A)
0
1
r
r
r
0
1
0
1
(Rn)
XRL A, direct
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
XRL
1
(A) ←(A)
1
0
direct address
(direct)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 542 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
XRL A, @Ri
Bytes:
1
Cycles:
1
Encoding:
0
Operation:
XRL
1
1
(A) ←(A)
0
0
1
1
i
0
1
0
0
immediate data
0
0
1
0
direct address
0
1
1
direct address
((Ri))
XRL A, #data
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
XRL
1
1
(A) ←(A)
0
#data
XRL direct, A
Bytes:
2
Cycles:
1
Encoding:
0
Operation:
XRL
1
1
0
(direct) ←(direct)
(A)
XRL direct, #data
Bytes:
3
Cycles:
1
Encoding:
0
Operation:
XRL
1
1
(direct)← (direct)
0
0
immediate data
#data
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 543 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
10.5 多级流水线内核的中断响应
STC 的增强型 8051(例如:STC8G/STC8H 系列)和 32 位 8051(例如:STC32G 系列)
的 MCU 内核为多级流水线设计,在中断响应方面的设计和传统的 8051(例如:STC89C52
系列)略有差异。
对于传统的 8051(例如:STC89C52 系列):
如果当前正在执行的指令是中断返回指令 RETI 或者是访问中断使能寄存器、中断请求寄存器或者中
断优先级寄存器的特殊指令时,CPU 等当前的这条特殊的指令执行完,再执行一条指令才能响应中断请
求;
如果当前正在执行的指令不是上面所指的特殊指令,则等当前指令执行完成后就立即响应中断请求;
获取下一条指令
特殊指令:
产生了中断请求
执行完成当前
特殊指令
解码当前指令
是否是
特殊指令
?
中断返回指令RETI或者是修改
中断使能寄存器、中断请求寄存器或者
中断优先级寄存器的特殊指令
是
否
执行完成当前指令
响应中断
中断服务程序
对于 STC 的增强型 8051 单片机(例如:STC8G/STC8H 系列),由于是多级流水线设计,响应中断上
会比传统的 8051(例如:STC89C52 系列)再多执行一条语句:
如果当前正在执行的指令是中断返回指令 RETI 或者是访问中断使能寄存器、中断请求寄存器或者中
断优先级寄存器的特殊指令时,CPU 等当前的这条特殊的指令执行完,同时解码下一条指令,直到下一
条指令不是特殊指令,则等下一条指令执行完成才能响应中断请求;
如果当前正在执行的指令不是上面所指的特殊指令,则等当前指令执行完成后,同时会解码下一条
指令,如果下一条也不是特殊指令,则会等下一条指令执行完成后再立即响应中断请求;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 544 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
获取下一条指令
特殊指令:
产生了中断请求
执行完成当前
特殊指令
解码当前指令
当前指令是否是
特殊指令?
中断返回指令RETI或者是修改
中断使能寄存器、中断请求寄存器或者
中断优先级寄存器的特殊指令
是
执行完成下一条
特殊指令
否
执行完成当前指令
同时解码下一条指令
下一条指令是否是
特殊指令?
是
否
执行完成
下一条指令
响应中断
中断服务程序
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 545 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
11 中断系统
(C 语言程序中使用中断号大于 31 的中断时,在 Keil 中编译会报错,解决办法请参考附录)
中断系统是为使 CPU 具有对外界紧急事件的实时处理能力而设置的。
当中央处理机 CPU 正在处理某件事的时候外界发生了紧急事件请求,要求 CPU 暂停当前的工作,
转而去处理这个紧急事件,处理完以后,再回到原来被中断的地方,继续原来的工作,这样的过程称为
中断。实现这种功能的部件称为中断系统,请示 CPU 中断的请求源称为中断源。微型机的中断系统一般
允许多个中断源,当几个中断源同时向 CPU 请求中断,要求为它服务的时候,这就存在 CPU 优先响应
哪一个中断源请求的问题。通常根据中断源的轻重缓急排队,优先处理最紧急事件的中断请求源,即规
定每一个中断源有一个优先级别。CPU 总是先响应优先级别最高的中断请求。
当 CPU 正在处理一个中断源请求的时候(执行相应的中断服务程序),发生了另外一个优先级比它
还高的中断源请求。如果 CPU 能够暂停对原来中断源的服务程序,转而去处理优先级更高的中断请求源,
处理完以后,再回到原低级中断服务程序,这样的过程称为中断嵌套。这样的中断系统称为多级中断系
统,没有中断嵌套功能的中断系统称为单级中断系统。
用户可以用关总中断允许位(EA/IE.7)或相应中断的允许位屏蔽相应的中断请求,也可以用打开相
应的中断允许位来使 CPU 响应相应的中断申请,每一个中断源可以用软件独立地控制为开中断或关中断
状态,部分中断的优先级别均可用软件设置。高优先级的中断请求可以打断低优先级的中断,反之,低
优先级的中断请求不可以打断高优先级的中断。当两个相同优先级的中断同时产生时,将由查询次序来
决定系统先响应哪个中断。
11.1 STC8G 系列中断源
下表中√表示对应的系列有相应的中断源
STC8G1K08
STC8G1K08
STC8G1K08A
STC8G2K64S4
STC15H2K64S4
STC8G2K64S2
系列
8PIN系列
系列
系列
系列
系列
√
√
√
√
√
√
√
√
√
√
√
√
√
√
√
√
√
√
定时器 1 中断(Timer1)
√
√
√
√
√
√
串口 1 中断(UART1)
√
√
√
√
√
√
模数转换中断(ADC)
√
√
√
√
√
低压检测中断(LVD)
√
√
√
√
√
√
√
√
√
√
√
√
中断源
外部中断 0 中断(INT0)
支持下降沿和边沿中断
定时器 0 中断(Timer0)
外部中断 1 中断(INT1)
支持下降沿和边沿中断
捕获中断(CCP/PCA/PWM)
支持下降沿、上升沿和边沿中断
√
√
串口 2 中断(UART2)
√
串行外设接口中断(SPI)
√
√
√
√
√
√
√
√
√
√
√
√
√
√
√
√
√
√
外部中断 2 中断(INT2)
支持下降沿中断
外部中断 3 中断(INT3)
支持下降沿中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 546 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
STC8G1K08
STC8G1K08
STC8G1K08A
STC8G2K64S4
STC15H2K64S4
STC8G2K64S2
系列
8PIN系列
系列
系列
系列
系列
√
√
√
√
√
√
串口 3 中断(UART3)
√
√
串口 4 中断(UART4)
√
√
定时器 3 中断(Timer3)
√
√
√
定时器 4 中断(Timer4)
√
√
√
√
√
√
增强型 PWM0 中断
√
√
√
PWM0 异常检测中断(PWM0FD)
√
√
√
√
√
√
增强型 PWM1 中断
√
√
√
增强型 PWM2 中断
√
√
√
增强型 PWM3 中断
√
√
√
增强型 PWM4 中断
√
√
√
增强型 PWM5 中断
√
√
√
PWM2 异常检测中断(PWM2FD)
√
√
√
PWM4 异常检测中断(PWM4FD)
√
√
√
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 547 -
中断源
定时器 2 中断(Timer2)
√
外部中断 4 中断(INT4)
√
比较器中断(CMP)
I2C 总线中断
√
√
√
√
√
√
触摸按键中断
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
11.2 STC8G 中断结构图
中断请求
中断允许控制
中断优先级控制
最低优先级
较低优先级
较高优先级
最高优先级
TCON.0/IT0=0
EX0
INT0
EA
PX0/PX0H
IE0
0
1
2
3
TCON.0/IT0=1
Timer0
ET0
EA
EX1
EA
TF0
PT0/PT0H
0
PX1/PX1H
0
1
2
3
TCON.2/IT1=0
INT1
IE1
1
2
3
TCON.2/IT1=1
Timer1
EA
PT1/PT1H
0
ES
EA
PS/PSH
0
TF1
RI
UART1
ET1
TI
ADC
EADC
EA
PADC/PADCH
0
ELVD
EA
PLVD/PLVDH
0
ADC_Flag
LVD
LVDF
1
1
1
1
2
2
2
2
ECF
3
3
3
3
CF
ECF0
CCF0
ECF1
PCA
EA
PPCA/PPCAH
CCF1
0
1
2
ECF2
3
CCF2
ECF3
CCF3
S2RI
UART2
S2TI
SPI
ES2
EA
PS2/PS2H
0
ESPI
EA
PSPI/PSPIH
0
SPIF
EX2
INT2
INT2IF
INT3
INT3IF
Timer2
EA
优先级固定为最低优先级
ET2
EA
优先级固定为最低优先级
EX4
EA
ES3
EA
INT4IF
S3RI
UART4
S3TI
S4RI
ES4
S4TI
ET3
Timer3
T3IF
Timer4
T4IF
ET4
CMP
优先级固定为最低优先级
EX3
T2IF
INT4
UART3
EA
PIE
EA
EA
EA
EA
CMPIF
PS3/PS3H
PCMP/PCMPH
2
3
3
0
0
优先级固定为最低优先级
2
0
0
优先级固定为最低优先级
1
0
PX4/PX4H
PS4/PS4H
1
0
1
1
1
2
2
2
3
3
3
0
0
0
1
2
NIE
3
ECBI
CBIF
C0IF
C1IF
C2IF
PWM
C3IF
C4IF
C5IF
C6IF
C7IF
EC0I
EC0T1SI
EC0T2SI
EC1I
EC1T1SI
EC1T2SI
EC2I
EC2T1SI
EC2T2SI
EC3I
EFDI
PWMFD
EA
PPWM/PPWMH
0
1
EC3T1SI
EC3T2SI
EC4I
EC4T1SI
EC4T2SI
EC5I
EC5T1SI
EC5T2SI
EC6I
EC6T1SI
EC6T2SI
EC7I
EC7T1SI
EC7T2SI
FDIF
EA
PPWMFD/PPWMFDH
0
1
2
2
EMSI
3
3
MSIF
ESTAI
STAIF
ESTOI
I2C
STOIF
ERXI
PI2C/PI2CH
0
1
2
3
RXIF
ETXI
TXIF
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 548 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
11.3 STC8G 系列中断列表
中断源
中断向量
次序
优先级设置
优先级
中断请求位
中断允许位
INT0
0003H
0
PX0PX0H
0/1/2/3
IE0
EX0
Timer0
000BH
1
PT0,PT0H
0/1/2/3
TF0
ET0
INT1
0013H
2
PX1,PX1H
0/1/2/3
IE1
EX1
Timer1
001BH
3
PT1,PT1H
0/1/2/3
TF1
ET1
UART1
0023H
4
PS,PSH
0/1/2/3
RI || TI
ES
ADC
002BH
5
PADC,PADCH
0/1/2/3
ADC_FLAG
EADC
LVD
0033H
6
PLVD,PLVDH
0/1/2/3
LVDF
ELVD
CF
ECF
CCF0
ECCF0
CCF1
ECCF1
CCF2
ECCF2
CCF3
ECCF3
PCA
003BH
7
PPCA,PPCAH
0/1/2/3
UART2
0043H
8
PS2,PS2H
0/1/2/3
S2RI || S2TI
ES2
SPI
004BH
9
PSPI,PSPIH
0/1/2/3
SPIF
ESPI
INT2
0053H
10
0
INT2IF
EX2
INT3
005BH
11
0
INT3IF
EX3
Timer2
0063H
12
0
T2IF
ET2
INT4
0083H
16
PX4,PX4H
0/1/2/3
INT4IF
EX4
UART3
008BH
17
PS3,PS3H
0/1/2/3
S3RI || S3TI
ES3
UART4
0093H
18
PS4,PS4H
0/1/2/3
S4RI || S4TI
ES4
Timer3
009BH
19
0
T3IF
ET3
Timer4
00A3H
20
0
T4IF
ET4
CMP
00ABH
21
0/1/2/3
CMPIF
PIE|NIE
PCMP,PCMPH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 549 -
STC8G 系列技术手册
中断源
PWM0
官方网站: www.STCAI.com
中断向量
00B3H
次序
22
车规 MCU 设计公司
优先级设置
PPWM0,PPWM0H
研发顾问:13922829991
优先级
选型顾问: 13922805190
中断请求位
中断允许位
CBIF
ECBI
0/1/2/3
ECnI && ECnT1SI
CnIF
ECnI && ECnT2SI
PWM0FD
I2C
PWM1
00BBH
00C3H
00E3H
23
24
28
PPWM0FD,PPWM0FDH
PI2C,PI2CH
PPWM1,PPWM1H
0/1/2/3
0/1/2/3
FDIF
EFDI
MSIF
EMSI
STAIF
ESTAI
RXIF
ERXI
TXIF
ETXI
STOIF
ESTOI
CBIF
ECBI
0/1/2/3
ECnI && ECnT1SI
CnIF
ECnI && ECnT2SI
CBIF
PWM2
00EBH
29
PPWM2,PPWM2H
0/1/2/3
ECBI
ECnI && ECnT1SI
CnIF
ECnI && ECnT2SI
CBIF
PWM3
00F3H
30
PPWM3,PPWM3H
0/1/2/3
ECBI
ECnI && ECnT1SI
CnIF
ECnI && ECnT2SI
CBIF
PWM4
00FBH
31
PPWM4,PPWM4H
0/1/2/3
ECBI
ECnI && ECnT1SI
CnIF
ECnI && ECnT2SI
CBIF
PWM5
0103H
32
PPWM5,PPWM5H
0/1/2/3
ECBI
ECnI && ECnT1SI
CnIF
ECnI && ECnT2SI
PWM2FD
010BH
33
PPWM2FD,PPWM2FDH
0/1/2/3
FDIF
EFDI
PWM4FD
0113H
34
PPWM4FD,PPWM4FDH
0/1/2/3
FDIF
EFDI
TKSU
011BH
35
PTKSU,PTKSUH
0/1/2/3
TKIF
ETKSUI
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 550 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
在 C 语言中声明中断服务程序
void
INT0_Routine(void)
interrupt 0;
void
TM0_Rountine(void)
interrupt 1;
void
INT1_Routine(void)
interrupt 2;
void
TM1_Rountine(void)
interrupt 3;
void
UART1_Routine(void)
interrupt 4;
void
ADC_Routine(void)
interrupt 5;
void
LVD_Routine(void)
interrupt 6;
void
PCA_Routine(void)
interrupt 7;
void
UART2_Routine(void)
interrupt 8;
void
SPI_Routine(void)
interrupt 9;
void
INT2_Routine(void)
interrupt 10;
void
INT3_Routine(void)
interrupt 11;
void
TM2_Routine(void)
interrupt 12;
void
INT4_Routine(void)
interrupt 16;
void
UART3_Routine(void)
interrupt 17;
void
UART4_Routine(void)
interrupt 18;
void
TM3_Routine(void)
interrupt 19;
void
TM4_Routine(void)
interrupt 20;
void
CMP_Routine(void)
interrupt 21;
void
PWM0_Routine(void)
interrupt 22;
void
PWM0FD_Routine(void) interrupt 23;
void
I2C_Routine(void)
interrupt 24;
void
PWM1_Routine(void)
interrupt 28;
void
PWM2_Routine(void)
interrupt 29;
void
PWM3_Routine(void)
interrupt 30;
void
PWM4_Routine(void)
interrupt 31;
//void PWM5_Routine(void)
interrupt 32;
//void PWM2FD_Routine(void) interrupt 33;
//void PWM4FD_Routine(void) interrupt 34;
//void TKSU_Routine(void)
interrupt 35;
中断号超过31的C语言中断服务程序不能直接用interrupt声明,请参考附录的处理方
法,汇编语言不受影响
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 551 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
11.4 中断相关寄存器
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
IE
中断允许寄存器
A8H
EA
ELVD
EADC
ES
ET1
EX1
ET0
EX0
0000,0000
IE2
中断允许寄存器 2
AFH
ETKSUI
ET4
ET3
ES4
ES3
ET2
ESPI
ES2
0000,0000
中断与时钟输出控制寄存器
8FH
-
EX4
EX3
EX2
-
T2CLKO
T1CLKO
T0CLKO
x000,x000
中断优先级控制寄存器
B8H
PPCA
PLVD
PADC
PS
PT1
PX1
PT0
PX0
0000,0000
IPH
高中断优先级控制寄存器
B7H
PPCAH
PLVDH
PADCH
PSH
PT1H
PX1H
PT0H
PX0H
0000,0000
IP2
中断优先级控制寄存器 2
B5H
PI2C
PCMP
PX4
PPWM0FD
PPWM0
PSPI
PS2
0000,0000
PI2CH
PCMPH
PX4H
PSPIH
PS2H
0000,0000
PPWM5
PPWM4
PPWM3
PS4
PS3
0000,0000
PS4H
PS3H
0000,0000
INTCLKO
IP
PPWM2FD
PTKSU
PPWM2FDH
IP2H
高中断优先级控制寄存器 2
B6H
PPWM0FDH PPWM0H
PTKSUH
中断优先级控制寄存器 3
DFH
高中断优先级控制寄存器 3
EEH PPWM4FDH
定时器控制寄存器
88H
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
0000,0000
扩展外部中断标志寄存器
EFH
-
INT4IF
INT3IF
INT2IF
-
T4IF
T3IF
T2IF
x000,x000
SCON
串口 1 控制寄存器
98H
SM0/FE
SM1
SM2
REN
TB8
RB8
TI
RI
0000,0000
S2CON
串口 2 控制寄存器
9AH
S2SM0
-
S2SM2
S2REN
S2TB8
S2RB8
S2TI
S2RI
0100,0000
S3CON
串口 3 控制寄存器
ACH
S3SM0
S3ST3
S3SM2
S3REN
S3TB8
S3RB8
S3TI
S3RI
0000,0000
S4CON
串口 4 控制寄存器
84H
S4SM0
S4ST4
S4SM2
S4REN
S4TB8
S4RB8
S4TI
S4RI
0000,0000
PCON
电源控制寄存器
87H
SMOD
SMOD0
LVDF
POF
GF1
GF0
PD
IDL
0011,0000
IP3
IP3H
TCON
AUXINTIF
ADC_CONTR ADC 控制寄存器
PPWM4FD
PPWM5H PPWM4H
PPWM2
PPWM3H
PPWM1
PPWM2H PPWM1H
BCH ADC_POWER ADC_START ADC_FLAG ADC_EPWMT
ADC_CHS[3:0]
000x,0000
SPSTAT
SPI 状态寄存器
CDH
SPIF
WCOL
-
-
-
-
-
-
00xx,xxxx
CCON
PCA 控制寄存器
D8H
CF
CR
-
-
CCF3
CCF2
CCF1
CCF0
00xx,x000
CMOD
PCA 模式寄存器
D9H
CIDL
-
-
-
ECF
0xxx,0000
CCAPM0
PCA 模块 0 模式控制寄存器
DAH
-
ECOM0
CCAPP0
CCAPN0
MAT0
TOG0
PWM0
ECCF0 x000,0000
CCAPM1
PCA 模块 1 模式控制寄存器
DBH
-
ECOM1
CCAPP1
CCAPN1
MAT1
TOG1
PWM1
ECCF1 x000,0000
CCAPM2
PCA 模块 2 模式控制寄存器
DCH
-
ECOM2
CCAPP2
CCAPN2
MAT2
TOG2
PWM2
ECCF2 x000,0000
CMPCR1
比较器控制寄存器 1
E6H
CMPEN
CMPIF
PIE
NIE
PIS
NIS
CMPOE
CMPRES 0000,0000
PWMCFG01 增强型 PWM 配置寄存器
F6H
PWM1CBIF
EPWM1CBI
FLTPS0
PWM1CEN
PWM0CBIF EPWM0CBI ENPWM0TA PWM0CEN 0000,0000
PWMCFG23 增强型 PWM 配置寄存器
F7H
PWM3CBIF
EPWM3CBI
FLTPS1
PWM3CEN
PWM2CBIF EPWM2CBI ENPWM2TA PWM2CEN 0000,0000
PWMCFG45 增强型 PWM 配置寄存器
FEH PWM5CBIF
EPWM5CBI
FLTPS2
PWM5CEN
PWM4CBIF EPWM4CBI ENPWM4TA PWM4CEN 0000,0000
CPS[2:0]
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
I2CMSCR
I2C 主机控制寄存器
FE81H
EMSI
-
-
-
I2CMSST
I C 主机状态寄存器
FE82H
MSBUSY
MSIF
-
-
-
-
I2CSLCR
I C 从机控制寄存器
FE83H
-
ESTAI
ERXI
ETXI
ESTOI
-
-
I2CSLST
I2C 从机状态寄存器
FE84H
SLBUSY
STAIF
RXIF
TXIF
STOIF
TXING
SLACKI
PWM0IF
PWM0 中断标志寄存器
FF05H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FF06H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
0000,0000
2
2
PWM0FDCR PWM0 异常检测控制寄存器
MSCMD[3:0]
0xxx,0000
MSACKI MSACKO 00xx,xx00
SLRST
x000,0xx0
SLACKO 0000,0000
PWM00CR
PWM00 控制寄存器
FF14H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM01CR
PWM01 控制寄存器
FF1CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 552 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
PWM02CR
PWM02 控制寄存器
FF24H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM03CR
PWM03 控制寄存器
FF2CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM04CR
PWM04 控制寄存器
FF34H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM05CR
PWM05 控制寄存器
FF3CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM06CR
PWM06 控制寄存器
FF44H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM07CR
PWM07 控制寄存器
FF4CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM1 中断标志寄存器
FF55H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FF56H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
0000,0000
PWM1IF
PWM1FDCR PWM1 异常检测控制寄存器
PWM10CR
PWM10 控制寄存器
FF64H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM11CR
PWM11 控制寄存器
FF6CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM12CR
PWM12 控制寄存器
FF74H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM13CR
PWM13 控制寄存器
FF7CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM14CR
PWM14 控制寄存器
FF84H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM15CR
PWM15 控制寄存器
FF8CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM16CR
PWM16 控制寄存器
FF94H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM17CR
PWM17 控制寄存器
FF9CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM2 中断标志寄存器
FFA5H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FFA6H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
0000,0000
PWM2IF
PWM2FDCR PWM2 异常检测控制寄存器
PWM20CR
PWM20 控制寄存器
FFB4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM21CR
PWM21 控制寄存器
FFBCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM22CR
PWM22 控制寄存器
FFC4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM23CR
PWM23 控制寄存器
FFCCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM24CR
PWM24 控制寄存器
FFD4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM25CR
PWM25 控制寄存器
FFDCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM26CR
PWM26 控制寄存器
FFE4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM27CR
PWM27 控制寄存器
FFECH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM3 中断标志寄存器
FC05H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FC06H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
0000,0000
PWM3IF
PWM3FDCR PWM3 异常检测控制寄存器
PWM30CR
PWM30 控制寄存器
FC14H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM31CR
PWM31 控制寄存器
FC1CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM32CR
PWM32 控制寄存器
FC24H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM33CR
PWM33 控制寄存器
FC2CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM34CR
PWM34 控制寄存器
FC34H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM35CR
PWM35 控制寄存器
FC3CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM36CR
PWM36 控制寄存器
FC44H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM37CR
PWM37 控制寄存器
FC4CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM4 中断标志寄存器
FC55H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FC56H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
0000,0000
PWM4IF
PWM4FDCR PWM4 异常检测控制寄存器
PWM40CR
PWM40 控制寄存器
FC64H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM41CR
PWM41 控制寄存器
FC6CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM42CR
PWM42 控制寄存器
FC74H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM43CR
PWM43 控制寄存器
FC7CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 553 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
PWM44CR
PWM44 控制寄存器
FC84H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM45CR
PWM45 控制寄存器
FC8CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM46CR
PWM46 控制寄存器
FC94H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM47CR
PWM47 控制寄存器
FC9CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM5 中断标志寄存器
FCA5H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
0000,0000
FCA6H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
0000,0000
PWM5IF
PWM5FDCR PWM5 异常检测控制寄存器
PWM50CR
PWM50 控制寄存器
FCB4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM51CR
PWM51 控制寄存器
FCBCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM52CR
PWM52 控制寄存器
FCC4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM53CR
PWM53 控制寄存器
FCCCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM54CR
PWM54 控制寄存器
FCD4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM55CR
PWM55 控制寄存器
FCDCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM56CR
PWM56 控制寄存器
FCE4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
PWM57CR
PWM57 控制寄存器
FCECH
ENO
INI
-
-
ENI
ENT2I
ENT1I
00xx,x000
触摸按键状态寄存器 2
FB47H
TSIF
TSDOV
-
-
TSSTA2
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
TSDNCHN[3:0]
00xx,0000
技术交流及选型论坛:www.STCAIMCU.com - 554 -
STC8G 系列技术手册
11.4.1
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
中断使能寄存器(中断允许位)
IE(中断使能寄存器)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
IE
A8H
EA
ELVD
EADC
ES
ET1
EX1
ET0
EX0
EA:总中断允许控制位。EA 的作用是使中断允许形成多级控制。即各中断源首先受 EA 控制;其次还受
各中断源自己的中断允许控制位控制。
0:CPU 屏蔽所有的中断申请
1:CPU 开放中断
ELVD:低压检测中断允许位。
0:禁止低压检测中断
1:允许低压检测中断
EADC:A/D 转换中断允许位。
0:禁止 A/D 转换中断
1:允许 A/D 转换中断
ES:串行口 1 中断允许位。
0:禁止串行口 1 中断
1:允许串行口 1 中断
ET1:定时/计数器 T1 的溢出中断允许位。
0:禁止 T1 中断
1:允许 T1 中断
EX1:外部中断 1 中断允许位。
0:禁止 INT1 中断
1:允许 INT1 中断
ET0:定时/计数器 T0 的溢出中断允许位。
0:禁止 T0 中断
1:允许 T0 中断
EX0:外部中断 0 中断允许位。
0:禁止 INT0 中断
1:允许 INT0 中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 555 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
IE2(中断使能寄存器 2)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
IE2
AFH
ETKSUI
ET4
ET3
ES4
ES3
ET2
ESPI
ES2
ET4:定时/计数器 T4 的溢出中断允许位。
0:禁止 T4 中断
1:允许 T4 中断
ET3:定时/计数器 T3 的溢出中断允许位。
0:禁止 T3 中断
1:允许 T3 中断
ES4:串行口 4 中断允许位。
0:禁止串行口 4 中断
1:允许串行口 4 中断
ES3:串行口 3 中断允许位。
0:禁止串行口 3 中断
1:允许串行口 3 中断
ET2:定时/计数器 T2 的溢出中断允许位。
0:禁止 T2 中断
1:允许 T2 中断
ESPI:SPI 中断允许位。
0:禁止 SPI 中断
1:允许 SPI 中断
ES2:串行口 2 中断允许位。
0:禁止串行口 2 中断
1:允许串行口 2 中断
ETKSUI:触摸按键中断允许位。
0:禁止触摸按键中断
1:允许触摸按键中断
INTCLKO(外部中断与时钟输出控制寄存器)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
INTCLKO
8FH
-
EX4
EX3
EX2
-
T2CLKO
T1CLKO
T0CLKO
EX4:外部中断 4 中断允许位。
0:禁止 INT4 中断
1:允许 INT4 中断
EX3:外部中断 3 中断允许位。
0:禁止 INT3 中断
1:允许 INT3 中断
EX2:外部中断 2 中断允许位。
0:禁止 INT2 中断
1:允许 INT2 中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 556 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
PCA/CCP/PWM 中断控制寄存器
符号
地址
B7
B6
B5
B4
CMOD
D9H
CIDL
-
-
-
CCAPM0
DAH
-
ECOM0
CCAPP0
CCAPN0
MAT0
TOG0
PWM0
ECCF0
CCAPM1
DBH
-
ECOM1
CCAPP1
CCAPN1
MAT1
TOG1
PWM1
ECCF1
CCAPM2
DCH
-
ECOM2
CCAPP2
CCAPN2
MAT2
TOG2
PWM2
ECCF2
B3
B2
B1
CPS[2:0]
B0
ECF
ECF:PCA 计数器中断允许位。
0:禁止 PCA 计数器中断
1:允许 PCA 计数器中断
ECCF0:PCA 模块 0 中断允许位。
0:禁止 PCA 模块 0 中断
1:允许 PCA 模块 0 中断
ECCF1:PCA 模块 1 中断允许位。
0:禁止 PCA 模块 1 中断
1:允许 PCA 模块 1 中断
ECCF2:PCA 模块 2 中断允许位。
0:禁止 PCA 模块 2 中断
1:允许 PCA 模块 2 中断
CMPCR1(比较器控制寄存器 1)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
CMPCR1
E6H
CMPEN
CMPIF
PIE
NIE
PIS
NIS
CMPOE
CMPRES
PIE:比较器上升沿中断允许位。
0:禁止比较器上升沿中断
1:允许比较器上升沿中断
NIE:比较器下降沿中断允许位。
0:禁止比较器下降沿中断
1:允许比较器下降沿中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 557 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
I2C 控制寄存器
符号
地址
B7
B6
B5
B4
I2CMSCR
FE81H
EMSI
-
-
-
I2CSLCR
FE83H
-
ESTAI
ERXI
ETXI
ESTOI
-
B3
B2
B1
B0
MSCMD[3:0]
-
SLRST
EMSI:I2C主机模式中断允许位。
0:禁止 I2C 主机模式中断
1:允许 I2C 主机模式中断
ESTAI:I2C从机接收START事件中断允许位。
0:禁止 I2C 从机接收 START 事件中断
1:允许 I2C 从机接收 START 事件中断
ERXI:I2C从机接收数据完成事件中断允许位。
0:禁止 I2C 从机接收数据完成事件中断
1:允许 I2C 从机接收数据完成事件中断
ETXI:I2C从机发送数据完成事件中断允许位。
0:禁止 I2C 从机发送数据完成事件中断
1:允许 I2C 从机发送数据完成事件中断
ESTOI:I2C从机接收STOP事件中断允许位。
0:禁止 I2C 从机接收 STOP 事件中断
1:允许 I2C 从机接收 STOP 事件中断
增强型 PWM 配置寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
PWMCFG01
F6H
PWM1CBIF
EPWM1CBI
FLTPS0
PWM1CEN
PWM0CBIF
EPWM0CBI
ENPWM0TA
PWM0CEN
PWMCFG23
F7H
PWM3CBIF
EPWM3CBI
FLTPS1
PWM3CEN
PWM2CBIF
EPWM2CBI
ENPWM2TA
PWM2CEN
PWMCFG45
FEH
PWM5CBIF
EPWM5CBI
FLTPS2
PWM5CEN
PWM4CBIF
EPWM4CBI
ENPWM4TA
PWM4CEN
EPWM0CBI:增强PWM0计数器中断允许位。
0:禁止 PWM0 计数器中断
1:允许 PWM0 计数器中断
EPWM1CBI:增强PWM1计数器中断允许位。
0:禁止 PWM1 计数器中断
1:允许 PWM1 计数器中断
EPWM2CBI:增强PWM2计数器中断允许位。
0:禁止 PWM2 计数器中断
1:允许 PWM2 计数器中断
EPWM3CBI:增强PWM3计数器中断允许位。
0:禁止 PWM3 计数器中断
1:允许 PWM3 计数器中断
EPWM4CBI:增强PWM4计数器中断允许位。
0:禁止 PWM4 计数器中断
1:允许 PWM4 计数器中断
EPWM5CBI:增强PWM5计数器中断允许位。
0:禁止 PWM5 计数器中断
1:允许 PWM5 计数器中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 558 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
增强型 PWM 异常检测控制寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
PWM0FDCR
FF06H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
PWM1FDCR
FF56H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
PWM2FDCR
FFA6H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
PWM3FDCR
FC06H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
PWM4FDCR
FC56H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
PWM5FDCR
FCA6H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
B2
B1
B0
EFDI:PWM外部异常事件中断允许位。
0:禁止 PWM 外部异常事件中断
1:允许 PWM 外部异常事件中断
增强型 PWM 控制寄存器
符号
地址
B7
B6
B5
B4
PWM00CR
FF14H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM01CR
FF1CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM02CR
FF24H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM03CR
FF2CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM04CR
FF34H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM05CR
FF3CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM06CR
FF44H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM07CR
FF4CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM10CR
FF64H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM11CR
FF6CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM12CR
FF74H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM13CR
FF7CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM14CR
FF84H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM15CR
FF8CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM16CR
FF94H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM17CR
FF9CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM20CR
FFB4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM21CR
FFBCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM22CR
FFC4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM23CR
FFCCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM24CR
FFD4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM25CR
FFDCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM26CR
FFE4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM27CR
FFECH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM30CR
FC14H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM31CR
FC1CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM32CR
FC24H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM33CR
FC2CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM34CR
FC34H
ENO
INI
-
-
ENI
ENT2I
ENT1I
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
B3
技术交流及选型论坛:www.STCAIMCU.com - 559 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
符号
地址
B7
B6
B5
B4
PWM35CR
FC3CH
ENO
INI
-
PWM36CR
FC44H
ENO
INI
PWM37CR
FC4CH
ENO
PWM40CR
FC64H
PWM41CR
B3
选型顾问: 13922805190
B2
B1
B0
-
ENI
ENT2I
ENT1I
-
-
ENI
ENT2I
ENT1I
INI
-
-
ENI
ENT2I
ENT1I
ENO
INI
-
-
ENI
ENT2I
ENT1I
FC6CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM42CR
FC74H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM43CR
FC7CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM44CR
FC84H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM45CR
FC8CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM46CR
FC94H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM47CR
FC9CH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM50CR
FCB4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM51CR
FCBCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM52CR
FCC4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM53CR
FCCCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM54CR
FCD4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM55CR
FCDCH
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM56CR
FCE4H
ENO
INI
-
-
ENI
ENT2I
ENT1I
PWM57CR
FCECH
ENO
INI
-
-
ENI
ENT2I
ENT1I
ECI:PWM通道中断允许位。
0:禁止 PWM 中断
1:允许 PWM 中断
ET2SI:PWM通道第2个触发点中断允许位。
0:禁止 PWM 的第 2 个触发点中断
1:允许 PWM 的第 2 个触发点中断
ET1SI:PWM通道第1个触发点中断允许位。
0:禁止 PWM 的第 1 个触发点中断
1:允许 PWM 的第 1 个触发点中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 560 -
STC8G 系列技术手册
11.4.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
中断请求寄存器(中断标志位)
定时器控制寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
TCON
88H
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
TF1:定时器1溢出中断标志。中断服务程序中,硬件自动清零。
TF0:定时器0溢出中断标志。中断服务程序中,硬件自动清零。
IE1:外部中断1中断请求标志。中断服务程序中,硬件自动清零。
IE0:外部中断0中断请求标志。中断服务程序中,硬件自动清零。
中断标志辅助寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
AUXINTIF
EFH
-
INT4IF
INT3IF
INT2IF
-
T4IF
T3IF
T2IF
INT4IF:外部中断4中断请求标志。中断服务程序中硬件自动清零。
INT3IF:外部中断3中断请求标志。中断服务程序中硬件自动清零。
INT2IF:外部中断2中断请求标志。中断服务程序中硬件自动清零。
T4IF:定时器4溢出中断标志。中断服务程序中硬件自动清零(注意:此位为只写寄存器,不可读)。
T3IF:定时器3溢出中断标志。中断服务程序中硬件自动清零(注意:此位为只写寄存器,不可读)。
T2IF:定时器2溢出中断标志。中断服务程序中硬件自动清零(注意:此位为只写寄存器,不可读)。
注意:
早期采用 0.35um 工艺的 1T 8051,STC15 系列增加了 16 位重装载定时器,全球 8051 首次大手笔,
由于制造成本高,STC 可 16 位重装载的定时器 2/3/4 没有设计用户可以访问的中断请求标志位寄存器,
只有内部隐藏的标志位,提供给用户软件清内部隐藏标志位的方法是:用户软件禁止定时器 2/3/4 中断
时,硬件自动清定时器 2/3/4 内部隐藏中断请求标志位。
为了产品的一致性:
采用 0.18um 工艺的 STC8A/ STC8F 及后续 STC8G/STC8H/ STC8C/ STC12H 系列虽然增加了定时器
2/3/4 的用户可以访问的中断请求标志位寄存器,但禁止定时器 2/3/4 中断时,硬件自动清定时器 2/3/4
内部隐藏中断请求标志位的功能依然保留了。所以在定时器 2/3/4 没有停止计数时不要随意禁止定时器
2/3/4 中断,否则实际起作用的隐藏的中断请求标志位会被清除掉,会有可能,计数器又溢出后,又产生
了隐藏的中断请求标志位被置 1 后,去请求中断并在等待时,却被用户误清除的事。
这与传统的 INTEL8048,8051 不一样,但 INTEL 已停产,所以 STC 的新设计并没有考虑兼容传统
INTEL 的规格。
这是中国 STC 对 8051 的再发展。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 561 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口控制寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
SCON
98H
SM0/FE
SM1
SM2
REN
TB8
RB8
TI
RI
S2CON
9AH
S2SM0
-
S2SM2
S2REN
S2TB8
S2RB8
S2TI
S2RI
S3CON
ACH
S3SM0
S3ST3
S3SM2
S3REN
S3TB8
S3RB8
S3TI
S3RI
S4CON
84H
S4SM0
S4ST4
S4SM2
S4REN
S4TB8
S4RB8
S4TI
S4RI
TI:串口1发送完成中断请求标志。需要软件清零。
RI:串口1接收完成中断请求标志。需要软件清零。
S2TI:串口2发送完成中断请求标志。需要软件清零。
S2RI:串口2接收完成中断请求标志。需要软件清零。
S3TI:串口3发送完成中断请求标志。需要软件清零。
S3RI:串口3接收完成中断请求标志。需要软件清零。
S4TI:串口4发送完成中断请求标志。需要软件清零。
S4RI:串口4接收完成中断请求标志。需要软件清零。
电源管理寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
PCON
87H
SMOD
SMOD0
LVDF
POF
GF1
GF0
PD
IDL
LVDF:低压检测中断请求标志。需要软件清零。
ADC 控制寄存器
符号
地
址
B7
B6
B5
B4
ADC_CONTR
BCH
ADC_POWER
ADC_START
ADC_FLAG
ADC_EPWMT
B3
B2
B1
B0
ADC_CHS[3:0]
ADC_FLAG:ADC转换完成中断请求标志。需要软件清零。
SPI 状态寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
SPSTAT
CDH
SPIF
WCOL
-
-
-
-
-
-
SPIF:SPI数据传输完成中断请求标志。需要软件清零。
PCA 控制寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
CCON
D8H
CF
CR
-
-
CCF3
CCF2
CCF1
CCF0
CF:PCA计数器中断请求标志。需要软件清零。
CCF3:PCA模块3中断请求标志。需要软件清零。
CCF2:PCA模块2中断请求标志。需要软件清零。
CCF1:PCA模块1中断请求标志。需要软件清零。
CCF0:PCA模块0中断请求标志。需要软件清零。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 562 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
比较器控制寄存器 1
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
CMPCR1
E6H
CMPEN
CMPIF
PIE
NIE
PIS
NIS
CMPOE
CMPRES
CMPIF:比较器中断请求标志。需要软件清零。
I2C 状态寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
I2CMSST
FE82H
MSBUSY
MSIF
-
-
-
-
MSACKI
MSACKO
I2CSLST
FE84H
SLBUSY
STAIF
RXIF
TXIF
STOIF
TXING
SLACKI
SLACKO
MSIF:I2C主机模式中断请求标志。需要软件清零。
ESTAI:I2C从机接收START事件中断请求标志。需要软件清零。
ERXI:I2C从机接收数据完成事件中断请求标志。需要软件清零。
ETXI:I2C从机发送数据完成事件中断请求标志。需要软件清零。
ESTOI:I2C从机接收STOP事件中断请求标志。需要软件清零。
增强型 PWM 配置寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
PWMCFG01
F6H
PWM1CBIF
EPWM1CBI
FLTPS0
PWM1CEN
PWM0CBIF
EPWM0CBI
ENPWM0TA
PWM0CEN
PWMCFG23
F7H
PWM3CBIF
EPWM3CBI
FLTPS1
PWM3CEN
PWM2CBIF
EPWM2CBI
ENPWM2TA
PWM2CEN
PWMCFG45
FEH
PWM5CBIF
EPWM5CBI
FLTPS2
PWM5CEN
PWM4CBIF
EPWM4CBI
ENPWM4TA
PWM4CEN
PWM0CBIF:增强型PWM0计数器中断请求标志。需要软件清零。
PWM1CBIF:增强型PWM1计数器中断请求标志。需要软件清零。
PWM2CBIF:增强型PWM2计数器中断请求标志。需要软件清零。
PWM3CBIF:增强型PWM3计数器中断请求标志。需要软件清零。
PWM4CBIF:增强型PWM4计数器中断请求标志。需要软件清零。
PWM5CBIF:增强型PWM5计数器中断请求标志。需要软件清零。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 563 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
增强型 PWM 中断标志寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
PWM0IF
FF05H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
PWM1IF
FF55H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
PWM2IF
FFA5H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
PWM3IF
FC05H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
PWM4IF
FC55H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
PWM5IF
FCA5H
C7IF
C6IF
C5IF
C4IF
C3IF
C2IF
C1IF
C0IF
C7IF:增强型PWM通道7中断请求标志。需要软件清零。
C6IF:增强型PWM通道6中断请求标志。需要软件清零。
C5IF:增强型PWM通道5中断请求标志。需要软件清零。
C4IF:增强型PWM通道4中断请求标志。需要软件清零。
C3IF:增强型PWM通道3中断请求标志。需要软件清零。
C2IF:增强型PWM通道2中断请求标志。需要软件清零。
C1IF:增强型PWM通道1中断请求标志。需要软件清零。
C0IF:增强型PWM通道0中断请求标志。需要软件清零。
增强型 PWM 异常检测控制寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
PWM0FDCR
FF06H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
PWM1FDCR
FF56H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
PWM2FDCR
FFA6H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
PWM3FDCR
FC06H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
PWM4FDCR
FC56H
INVCMP
INVIO
ENFD
FLTFLIO
EFDI
FDCMP
FDIO
FDIF
PWM5FDCR
FCA6H
INVCMP
INVIO
ENFD
FLTFLIO
-
FDCMP
FDIO
FDIF
B2
B1
B0
FDIF:增强型PWM异常检测中断请求标志。需要软件清零。
触摸按键状态寄存器 2
符号
地址
B7
B6
B5
B4
TSSTA2
FB47H
TSIF
TSDOV
-
-
B3
TSDNCHN[3:0]
TSIF:触摸按键中断标志。需软件写1清零。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 564 -
STC8G 系列技术手册
11.4.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
中断优先级寄存器
除 INT2、INT3、定时器 2、定时器 3 和定时器 4 外,其他中断均有 4 级中断优先级可设置
中断优先级控制寄存器
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
IP
B8H
PPCA
PLVD
PADC
PS
PT1
PX1
PT0
PX0
IPH
B7H
PPCAH
PLVDH
PADCH
PSH
PT1H
PX1H
PT0H
PX0H
IP2
B5H
PI2C
PCMP
PX4
PPWM0FD
PPWM0
PSPI
PS2
IP2H
B6H
PI2CH
PCMPH
PX4H
PPWM0FDH
PPWM0H
PSPIH
PS2H
IP3
DFH
PPWM4FD
PPWM5
PPWM4
PPWM3
PPWM2
PPWM1
PS4
PS3
IP3H
EEH
PPWM4FDH
PPWM5H
PPWM4H
PPWM3H
PPWM2H
PPWM1H
PS4H
PS3H
PPWM2FD
PTKSU
PPWM2FDH
PTKSUH
PX0H,PX0:外部中断0中断优先级控制位
00:INT0 中断优先级为 0 级(最低级)
01:INT0 中断优先级为 1 级(较低级)
10:INT0 中断优先级为 2 级(较高级)
11:INT0 中断优先级为 3 级(最高级)
PT0H,PT0:定时器0中断优先级控制位
00:定时器 0 中断优先级为 0 级(最低级)
01:定时器 0 中断优先级为 1 级(较低级)
10:定时器 0 中断优先级为 2 级(较高级)
11:定时器 0 中断优先级为 3 级(最高级)
PX1H,PX1:外部中断1中断优先级控制位
00:INT1 中断优先级为 0 级(最低级)
01:INT1 中断优先级为 1 级(较低级)
10:INT1 中断优先级为 2 级(较高级)
11:INT1 中断优先级为 3 级(最高级)
PT1H,PT1:定时器1中断优先级控制位
00:定时器 1 中断优先级为 0 级(最低级)
01:定时器 1 中断优先级为 1 级(较低级)
10:定时器 1 中断优先级为 2 级(较高级)
11:定时器 1 中断优先级为 3 级(最高级)
PSH,PS:串口1中断优先级控制位
00:串口 1 中断优先级为 0 级(最低级)
01:串口 1 中断优先级为 1 级(较低级)
10:串口 1 中断优先级为 2 级(较高级)
11:串口 1 中断优先级为 3 级(最高级)
PADCH,PADC:ADC中断优先级控制位
00:ADC 中断优先级为 0 级(最低级)
01:ADC 中断优先级为 1 级(较低级)
10:ADC 中断优先级为 2 级(较高级)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 565 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
11:ADC 中断优先级为 3 级(最高级)
PLVDH,PLVD:低压检测中断优先级控制位
00:LVD 中断优先级为 0 级(最低级)
01:LVD 中断优先级为 1 级(较低级)
10:LVD 中断优先级为 2 级(较高级)
11:LVD 中断优先级为 3 级(最高级)
PPCAH,PPCA:CCP/PCA/PWM中断优先级控制位
00:CCP/PCA/PWM 中断优先级为 0 级(最低级)
01:CCP/PCA/PWM 中断优先级为 1 级(较低级)
10:CCP/PCA/PWM 中断优先级为 2 级(较高级)
11:CCP/PCA/PWM 中断优先级为 3 级(最高级)
PS2H,PS2:串口2中断优先级控制位
00:串口 2 中断优先级为 0 级(最低级)
01:串口 2 中断优先级为 1 级(较低级)
10:串口 2 中断优先级为 2 级(较高级)
11:串口 2 中断优先级为 3 级(最高级)
PS3H,PS3:串口3中断优先级控制位
00:串口 3 中断优先级为 0 级(最低级)
01:串口 3 中断优先级为 1 级(较低级)
10:串口 3 中断优先级为 2 级(较高级)
11:串口 3 中断优先级为 3 级(最高级)
PS4H,PS4:串口4中断优先级控制位
00:串口 4 中断优先级为 0 级(最低级)
01:串口 4 中断优先级为 1 级(较低级)
10:串口 4 中断优先级为 2 级(较高级)
11:串口 4 中断优先级为 3 级(最高级)
PSPIH,PSPI:SPI中断优先级控制位
00:SPI 中断优先级为 0 级(最低级)
01:SPI 中断优先级为 1 级(较低级)
10:SPI 中断优先级为 2 级(较高级)
11:SPI 中断优先级为 3 级(最高级)
PX4H,PX4:外部中断4中断优先级控制位
00:INT4 中断优先级为 0 级(最低级)
01:INT4 中断优先级为 1 级(较低级)
10:INT4 中断优先级为 2 级(较高级)
11:INT4 中断优先级为 3 级(最高级)
PCMPH,PCMP:比较器中断优先级控制位
00:CMP 中断优先级为 0 级(最低级)
01:CMP 中断优先级为 1 级(较低级)
10:CMP 中断优先级为 2 级(较高级)
11:CMP 中断优先级为 3 级(最高级)
PI2CH,PI2C:I2C中断优先级控制位
00:I2C 中断优先级为 0 级(最低级)
01:I2C 中断优先级为 1 级(较低级)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 566 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
10:I2C 中断优先级为 2 级(较高级)
11:I2C 中断优先级为 3 级(最高级)
PPWM0H,PPWM0:增强型PWM0中断优先级控制位
00:增强型 PWM0 中断优先级为 0 级(最低级)
01:增强型 PWM0 中断优先级为 1 级(较低级)
10:增强型 PWM0 中断优先级为 2 级(较高级)
11:增强型 PWM0 中断优先级为 3 级(最高级)
PPWM1H,PPWM1:增强型PWM1中断优先级控制位
00:增强型 PWM1 中断优先级为 0 级(最低级)
01:增强型 PWM1 中断优先级为 1 级(较低级)
10:增强型 PWM1 中断优先级为 2 级(较高级)
11:增强型 PWM1 中断优先级为 3 级(最高级)
PPWM2H,PPWM2:增强型PWM2中断优先级控制位
00:增强型 PWM2 中断优先级为 0 级(最低级)
01:增强型 PWM2 中断优先级为 1 级(较低级)
10:增强型 PWM2 中断优先级为 2 级(较高级)
11:增强型 PWM2 中断优先级为 3 级(最高级)
PPWM3H,PPWM3:增强型PWM3中断优先级控制位
00:增强型 PWM3 中断优先级为 0 级(最低级)
01:增强型 PWM3 中断优先级为 1 级(较低级)
10:增强型 PWM3 中断优先级为 2 级(较高级)
11:增强型 PWM3 中断优先级为 3 级(最高级)
PPWM4H,PPWM4:增强型PWM4中断优先级控制位
00:增强型 PWM4 中断优先级为 0 级(最低级)
01:增强型 PWM4 中断优先级为 1 级(较低级)
10:增强型 PWM4 中断优先级为 2 级(较高级)
11:增强型 PWM4 中断优先级为 3 级(最高级)
PPWM5H,PPWM5:增强型PWM5中断优先级控制位
00:增强型 PWM5 中断优先级为 0 级(最低级)
01:增强型 PWM5 中断优先级为 1 级(较低级)
10:增强型 PWM5 中断优先级为 2 级(较高级)
11:增强型 PWM5 中断优先级为 3 级(最高级)
PPWM0FDH,PPWM0FD:增强型PWM0异常检测中断优先级控制位
00:PWM0FD 中断优先级为 0 级(最低级)
01:PWM0FD 中断优先级为 1 级(较低级)
10:PWM0FD 中断优先级为 2 级(较高级)
11:PWM0FD 中断优先级为 3 级(最高级)
PPWM2FDH,PPWM2FD:增强型PWM2异常检测中断优先级控制位
00:PWM2FD 中断优先级为 0 级(最低级)
01:PWM2FD 中断优先级为 1 级(较低级)
10:PWM2FD 中断优先级为 2 级(较高级)
11:PWM2FD 中断优先级为 3 级(最高级)
PPWM4FDH,PPWM4FD:增强型PWM4异常检测中断优先级控制位
00:PWM4FD 中断优先级为 0 级(最低级)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 567 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
01:PWM4FD 中断优先级为 1 级(较低级)
10:PWM4FD 中断优先级为 2 级(较高级)
11:PWM4FD 中断优先级为 3 级(最高级)
PTKSUH,PTKSU:触摸按键中断优先级控制位
00:触摸按键中断优先级为 0 级(最低级)
01:触摸按键中断优先级为 1 级(较低级)
10:触摸按键中断优先级为 2 级(较高级)
11:触摸按键中断优先级为 3 级(最高级)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 568 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
11.5 范例程序
INT0 中断(上升沿和下降沿),可同时支持上升沿和下降沿
11.5.1
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
sbit
P10
P11
=
=
P1^0;
P1^1;
void INT0_Isr() interrupt 0
{
if (P32)
{
P10 = !P10;
}
else
{
P11 = !P11;
}
}
//判断上升沿和下降沿
//测试端口
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
IT0 = 0;
EX0 = 1;
EA = 1;
//使能 INT0 上升沿和下降沿中断
//使能 INT0 中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 569 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0003H
INT0ISR
ORG
0100H
JB
CPL
RETI
P3.2,RISING
P1.0
;判断上升沿和下降沿
;测试端口
CPL
RETI
P1.1
;测试端口
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
CLR
SETB
SETB
JMP
IT0
EX0
EA
$
INT0ISR:
RISING:
MAIN:
;使能 INT0 上升沿和下降沿中断
;使能 INT0 中断
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 570 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
INT0 中断(下降沿)
11.5.2
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void INT0_Isr() interrupt 0
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//使能 INT0 下降沿中断
//使能 INT0 中断
IT0 = 1;
EX0 = 1;
EA = 1;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
DATA
DATA
DATA
093H
094H
091H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 571 -
STC8G 系列技术手册
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0003H
INT0ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
SETB
SETB
SETB
JMP
IT0
EX0
EA
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
INT0ISR:
;测试端口
MAIN:
;使能 INT0 下降沿中断
;使能 INT0 中断
END
INT1 中断(上升沿和下降沿),可同时支持上升沿和下降沿
11.5.3
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 572 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
sbit
P10
P11
=
=
P1^0;
P1^1;
void INT1_Isr() interrupt 2
{
if (INT1)
{
P10 = !P10;
}
else
{
P11 = !P11;
}
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//判断上升沿和下降沿
//测试端口
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//使能 INT1 上升沿和下降沿中断
//使能 INT1 中断
IT1 = 0;
EX1 = 1;
EA = 1;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 573 -
STC8G 系列技术手册
P5M1
P5M0
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
DATA
DATA
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0013H
INT1ISR
ORG
0100H
JB
CPL
RETI
INT1,RISING
P1.0
;判断上升沿和下降沿
;测试端口
CPL
RETI
P1.1
;测试端口
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
CLR
SETB
SETB
JMP
IT1
EX1
EA
$
选型顾问: 13922805190
INT1ISR:
RISING:
MAIN:
;使能 INT1 上升沿和下降沿中断
;使能 INT1 中断
END
INT1 中断(下降沿)
11.5.4
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 574 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
sfr
sfr
sfr
P4M1
P4M0
P5M1
P5M0
=
=
=
=
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void INT1_Isr() interrupt 2
{
P10 = !P10;
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//使能 INT1 下降沿中断
//使能 INT1 中断
IT1 = 1;
EX1 = 1;
EA = 1;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0013H
INT1ISR
ORG
0100H
CPL
P1.0
INT1ISR:
;测试端口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 575 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
RETI
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
SETB
SETB
SETB
JMP
IT1
EX1
EA
$
;使能 INT1 下降沿中断
;使能 INT1 中断
END
INT2 中断(下降沿),只支持下降沿中断
11.5.5
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sfr
#define
#define
#define
sbit
INTCLKO
EX2
EX3
EX4
P10
=
0x8f;
0x10
0x20
0x40
P1^0;
=
void INT2_Isr() interrupt 10
{
P10 = !P10;
}
//测试端口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 576 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//使能 INT2 中断
INTCLKO = EX2;
EA = 1;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
INTCLKO
EX2
EX3
EX4
DATA
EQU
EQU
EQU
8FH
10H
20H
40H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0053H
INT2ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
INT2ISR:
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 577 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
SETB
JMP
INTCLKO,#EX2
EA
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;使能 INT2 中断
END
INT3 中断(下降沿),只支持下降沿中断
11.5.6
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sfr
#define
#define
#define
sbit
INTCLKO
EX2
EX3
EX4
P10
=
0x8f;
0x10
0x20
0x40
P1^0;
void INT3_Isr() interrupt 11
{
P10 = !P10;
}
=
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 578 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//使能 INT3 中断
INTCLKO = EX3;
EA = 1;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
INTCLKO
EX2
EX3
EX4
DATA
EQU
EQU
EQU
8FH
10H
20H
40H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
005BH
INT3ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
INT3ISR:
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 579 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
P5M1, #00H
MOV
SETB
JMP
INTCLKO,#EX3
EA
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;使能 INT3 中断
END
INT4 中断(下降沿),只支持下降沿中断
11.5.7
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sfr
#define
#define
#define
sbit
INTCLKO
EX2
EX3
EX4
P10
=
0x8f;
0x10
0x20
0x40
P1^0;
=
void INT4_Isr() interrupt 16
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 580 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//使能 INT4 中断
INTCLKO = EX4;
EA = 1;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
INTCLKO
EX2
EX3
EX4
DATA
EQU
EQU
EQU
8FH
10H
20H
40H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0083H
INT4ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
SETB
JMP
INTCLKO,#EX4
EA
$
INT4ISR:
;测试端口
MAIN:
;使能 INT4 中断
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 581 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 0 中断
11.5.8
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM0_Isr() interrupt 1
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
TMOD = 0x00;
TL0 = 0x66;
TH0 = 0xfc;
TR0 = 1;
ET0 = 1;
EA = 1;
//65536-11.0592M/12/1000
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 582 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
000BH
TM0ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#00H
TL0,#66H
TH0,#0FCH
TR0
ET0
EA
JMP
$
TM0ISR:
;测试端口
MAIN:
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
11.5.9
定时器 1 中断
C 语言代码
//测试工作频率为 11.0592MHz
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 583 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM1_Isr() interrupt 3
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
TMOD = 0x00;
TL1 = 0x66;
TH1 = 0xfc;
TR1 = 1;
ET1 = 1;
EA = 1;
//65536-11.0592M/12/1000
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 584 -
STC8G 系列技术手册
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
001BH
TM1ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#00H
TL1,#66H
TH1,#0FCH
TR1
ET1
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM1ISR:
;测试端口
MAIN:
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
11.5.10 定时器 2 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
T2L
T2H
AUXR
IE2
=
=
=
=
0xd7;
0xd6;
0x8e;
0xaf;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 585 -
STC8G 系列技术手册
官方网站: www.STCAI.com
#define
sfr
#define
ET2
AUXINTIF
T2IF
=
0x04
0xef;
0x01
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM2_Isr() interrupt 12
{
P10 = !P10;
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
T2L = 0x66;
T2H = 0xfc;
AUXR = 0x10;
IE2 = ET2;
EA = 1;
//65536-11.0592M/12/1000
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T2L
T2H
AUXR
IE2
ET2
AUXINTIF
T2IF
DATA
DATA
DATA
DATA
EQU
DATA
EQU
0D7H
0D6H
8EH
0AFH
04H
0EFH
01H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 586 -
STC8G 系列技术手册
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0063H
TM2ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
SETB
T2L,#66H
T2H,#0FCH
AUXR,#10H
IE2,#ET2
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM2ISR:
;测试端口
MAIN:
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
11.5.11 定时器 3 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 587 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
#include "intrins.h"
sfr
sfr
sfr
sfr
#define
sfr
#define
T3L
T3H
T4T3M
IE2
ET3
AUXINTIF
T3IF
=
=
=
=
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
=
0xd5;
0xd4;
0xd1;
0xaf;
0x20
0xef;
0x02
void TM3_Isr() interrupt 19
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
T3L = 0x66;
T3H = 0xfc;
T4T3M = 0x08;
IE2 = ET3;
EA = 1;
//65536-11.0592M/12/1000
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T3L
DATA
0D5H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 588 -
STC8G 系列技术手册
官方网站: www.STCAI.com
T3H
T4T3M
IE2
ET3
AUXINTIF
T3IF
DATA
DATA
DATA
EQU
DATA
EQU
0D4H
0D1H
0AFH
20H
0EFH
02H
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
093H
094H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
009BH
TM3ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
SETB
T3L,#66H
T3H,#0FCH
T4T3M,#08H
IE2,#ET3
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM3ISR:
;测试端口
MAIN:
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 589 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
11.5.12 定时器 4 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
#define
#define
sfr
#define
#define
T3L
T3H
T4L
T4H
T4T3M
IE2
ET3
ET4
AUXINTIF
T3IF
T4IF
=
=
=
=
=
=
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM4_Isr() interrupt 20
{
P10 = !P10;
}
=
0xd5;
0xd4;
0xd3;
0xd2;
0xd1;
0xaf;
0x20
0x40
0xef;
0x02
0x04
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
T4L = 0x66;
T4H = 0xfc;
//65536-11.0592M/12/1000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 590 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//启动定时器
//使能定时器中断
T4T3M = 0x80;
IE2 = ET4;
EA = 1;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T3L
T3H
T4L
T4H
T4T3M
IE2
ET3
ET4
AUXINTIF
T3IF
T4IF
DATA
DATA
DATA
DATA
DATA
DATA
EQU
EQU
DATA
EQU
EQU
0D5H
0D4H
0D3H
0D2H
0D1H
0AFH
20H
40H
0EFH
02H
04H
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
093H
094H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
00A3H
TM4ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
TM4ISR:
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 591 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
P5M1, #00H
MOV
MOV
MOV
MOV
SETB
T4L,#66H
T4H,#0FCH
T4T3M,#80H
IE2,#ET4
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
11.5.13 UART1 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
T2L
T2H
AUXR
=
=
=
0xd7;
0xd6;
0x8e;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
sbit
P10
P11
=
=
P1^0;
P1^1;
void UART1_Isr() interrupt 4
{
if (TI)
{
TI = 0;
P10 = !P10;
}
if (RI)
{
RI = 0;
P11 = !P11;
}
}
//清中断标志
//测试端口
//清中断标志
//测试端口
void main()
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 592 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
SCON = 0x50;
T2L = 0xe8;
T2H = 0xff;
AUXR = 0x15;
ES = 1;
EA = 1;
SBUF = 0x5a;
//65536-11059200/115200/4=0FFE8H
//启动定时器
//使能串口中断
//发送测试数据
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T2L
T2H
AUXR
DATA
DATA
DATA
0D7H
0D6H
8EH
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART1ISR
ORG
0100H
JNB
CLR
CPL
TI,CHECKRI
TI
P1.0
;清中断标志
;测试端口
JNB
CLR
RI,ISREXIT
RI
;清中断标志
UART1ISR:
CHECKRI:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 593 -
STC8G 系列技术手册
官方网站: www.STCAI.com
CPL
P1.1
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;测试端口
ISREXIT:
RETI
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
SETB
SETB
MOV
SCON,#50H
T2L,#0E8H
T2H,#0FFH
AUXR,#15H
ES
EA
SBUF,#5AH
JMP
$
;65536-11059200/115200/4=0FFE8H
;启动定时器
;使能串口中断
;发送测试数据
END
11.5.14 UART2 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
#define
T2L
T2H
AUXR
S2CON
S2BUF
IE2
ES2
=
=
=
=
=
=
0xd7;
0xd6;
0x8e;
0x9a;
0x9b;
0xaf;
0x01
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 594 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
sfr
sfr
sfr
P4M1
P4M0
P5M1
P5M0
=
=
=
=
0xb3;
0xb4;
0xc9;
0xca;
sbit
sbit
P12
P13
=
=
P1^2;
P1^3;
void UART2_Isr() interrupt 8
{
if (S2CON & 0x02)
{
S2CON &= ~0x02;
P12 = !P12;
}
if (S2CON & 0x01)
{
S2CON &= ~0x01;
P13 = !P13;
}
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//清中断标志
//测试端口
//清中断标志
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
S2CON = 0x10;
T2L = 0xe8;
T2H = 0xff;
AUXR = 0x14;
IE2 = ES2;
EA = 1;
S2BUF = 0x5a;
//65536-11059200/115200/4=0FFE8H
//启动定时器
//使能串口中断
//发送测试数据
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T2L
T2H
AUXR
S2CON
S2BUF
IE2
ES2
DATA
DATA
DATA
DATA
DATA
DATA
EQU
0D7H
0D6H
8EH
9AH
9BH
0AFH
01H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 595 -
STC8G 系列技术手册
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0043H
UART2ISR
ORG
0100H
PUSH
PUSH
MOV
JNB
ANL
CPL
ACC
PSW
A,S2CON
ACC.1,CHECKRI
S2CON,#NOT 02H
P1.2
;清中断标志
;测试端口
MOV
JNB
ANL
CPL
A,S2CON
ACC.0,ISREXIT
S2CON,#NOT 01H
P1.3
;清中断标志
;测试端口
POP
POP
RETI
PSW
ACC
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
MOV
SETB
MOV
S2CON,#10H
T2L,#0E8H
T2H,#0FFH
AUXR,#14H
IE2,#ES2
EA
S2BUF,#5AH
选型顾问: 13922805190
UART2ISR:
CHECKRI:
ISREXIT:
MAIN:
;65536-11059200/115200/4=0FFE8H
;启动定时器
;使能串口中断
;发送测试数据
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 596 -
STC8G 系列技术手册
官方网站: www.STCAI.com
JMP
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
$
END
11.5.15 UART3 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
#define
T2L
T2H
AUXR
S3CON
S3BUF
IE2
ES3
=
=
=
=
=
=
0xd7;
0xd6;
0x8e;
0xac;
0xad;
0xaf;
0x08
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
sbit
P12
P13
=
=
P1^2;
P1^3;
void UART3_Isr() interrupt 17
{
if (S3CON & 0x02)
{
S3CON &= ~0x02;
P12 = !P12;
}
if (S3CON & 0x01)
{
S3CON &= ~0x01;
P13 = !P13;
}
}
//清中断标志
//测试端口
//清中断标志
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 597 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
S3CON = 0x10;
T2L = 0xe8;
T2H = 0xff;
AUXR = 0x14;
IE2 = ES3;
EA = 1;
S3BUF = 0x5a;
//65536-11059200/115200/4=0FFE8H
//启动定时器
//使能串口中断
//发送测试数据
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T2L
T2H
AUXR
S3CON
S3BUF
IE2
ES3
DATA
DATA
DATA
DATA
DATA
DATA
EQU
0D7H
0D6H
8EH
0ACH
0ADH
0AFH
08H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
008BH
UART3ISR
ORG
0100H
PUSH
PUSH
MOV
JNB
ANL
ACC
PSW
A,S3CON
ACC.1,CHECKRI
S3CON,#NOT 02H
UART3ISR:
;清中断标志
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 598 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
CPL
P1.2
;测试端口
MOV
JNB
ANL
CPL
A,S3CON
ACC.0,ISREXIT
S3CON,#NOT 01H
P1.3
;清中断标志
;测试端口
POP
POP
RETI
PSW
ACC
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
MOV
SETB
MOV
S3CON,#10H
T2L,#0E8H
T2H,#0FFH
AUXR,#14H
IE2,#ES3
EA
S3BUF,#5AH
JMP
$
选型顾问: 13922805190
CHECKRI:
ISREXIT:
MAIN:
;65536-11059200/115200/4=0FFE8H
;启动定时器
;使能串口中断
;发送测试数据
END
11.5.16 UART4 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
#define
T2L
T2H
AUXR
S4CON
S4BUF
IE2
ES4
=
=
=
=
=
=
0xd7;
0xd6;
0x8e;
0x84;
0x85;
0xaf;
0x10
sfr
P0M1
=
0x93;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 599 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
sbit
P12
P13
=
=
P1^2;
P1^3;
void UART4_Isr() interrupt 18
{
if (S4CON & 0x02)
{
S4CON &= ~0x02;
P12 = !P12;
}
if (S4CON & 0x01)
{
S4CON &= ~0x01;
P13 = !P13;
}
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//清中断标志
//测试端口
//清中断标志
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
S4CON = 0x10;
T2L = 0xe8;
T2H = 0xff;
AUXR = 0x14;
IE2 = ES4;
EA = 1;
S4BUF = 0x5a;
//65536-11059200/115200/4=0FFE8H
//启动定时器
//使能串口中断
//发送测试数据
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 600 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
T2L
T2H
AUXR
S4CON
S4BUF
IE2
ES4
DATA
DATA
DATA
DATA
DATA
DATA
EQU
0D7H
0D6H
8EH
84H
85H
0AFH
10H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0093H
UART4ISR
ORG
0100H
PUSH
PUSH
MOV
JNB
ANL
CPL
ACC
PSW
A,S4CON
ACC.1,CHECKRI
S4CON,#NOT 02H
P1.2
;清中断标志
;测试端口
MOV
JNB
ANL
CPL
A,S4CON
ACC.0,ISREXIT
S4CON,#NOT 01H
P1.3
;清中断标志
;测试端口
POP
POP
RETI
PSW
ACC
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
选型顾问: 13922805190
UART4ISR:
CHECKRI:
ISREXIT:
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 601 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
SETB
MOV
S4CON,#10H
T2L,#0E8H
T2H,#0FFH
AUXR,#14H
IE2,#ES4
EA
S4BUF,#5AH
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;65536-11059200/115200/4=0FFE8H
;启动定时器
;使能串口中断
;发送测试数据
END
11.5.17 ADC 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sbit
ADC_CONTR
ADC_RES
ADC_RESL
ADCCFG
EADC
=
=
=
=
=
0xbc;
0xbd;
0xbe;
0xde;
IE^5;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void ADC_Isr() interrupt 5
{
ADC_CONTR &= ~0x20;
P0 = ADC_RES;
P2 = ADC_RESL;
}
//清中断标志
//测试端口
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 602 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
ADCCFG = 0x00;
ADC_CONTR = 0xc0;
EADC = 1;
EA = 1;
//使能并启动 ADC 模块
//使能 ADC 中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
ADC_CONTR
ADC_RES
ADC_RESL
ADCCFG
EADC
DATA
DATA
DATA
DATA
BIT
0BCH
0BDH
0BEH
0DEH
IE.5
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
002BH
ADCISR
ORG
0100H
ANL
MOV
MOV
RETI
ADC_CONTR,#NOT 20H
P0,ADC_RES
P2,ADC_RESL
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
ADCISR:
;清中断标志
;测试端口
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 603 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
MOV
MOV
MOV
MOV
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
SETB
SETB
ADCCFG,#00H
ADC_CONTR,#0C0H
EADC
EA
JMP
$
研发顾问:13922829991
选型顾问: 13922805190
;使能并启动 ADC 模块
;使能 ADC 中断
END
11.5.18 LVD 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
#define
#define
#define
#define
#define
sbit
#define
RSTCFG
ENLVR
LVD2V2
LVD2V4
LVD2V7
LVD3V0
ELVD
LVDF
=
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sbit
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
P10
=
=
=
=
=
=
=
=
=
=
=
=
=
void LVD_Isr() interrupt 6
{
PCON &= ~LVDF;
P10 = !P10;
}
=
0xff;
0x40
0x00
0x01
0x02
0x03
IE^6;
0x20
//RSTCFG.6
//LVD@2.2V
//LVD@2.4V
//LVD@2.7V
//LVD@3.0V
//PCON.5
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
P1^0;
//清中断标志
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 604 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
PCON &= ~LVDF;
RSTCFG = LVD3V0;
ELVD = 1; //使能 LVD 中断
EA = 1;
//上电需要清中断标志
//设置 LVD 电压为 3.0V
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
RSTCFG
ENLVR
LVD2V2
LVD2V4
LVD2V7
LVD3V0
ELVD
LVDF
DATA
EQU
EQU
EQU
EQU
EQU
BIT
EQU
0FFH
40H
00H
01H
02H
03H
IE.6
20H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0033H
LVDISR
ORG
0100H
ANL
CPL
RETI
PCON,#NOT LVDF
P1.0
MOV
MOV
SP, #5FH
P0M0, #00H
;RSTCFG.6
;LVD@2.2V
;LVD@2.4V
;LVD@2.7V
;LVD@3.0V
;PCON.5
LVDISR:
;清中断标志
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 605 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
ANL
MOV
SETB
SETB
JMP
PCON,#NOT LVDF
RSTCFG,# LVD3V0
ELVD
EA
$
研发顾问:13922829991
选型顾问: 13922805190
;上电需要清中断标志
;设置 LVD 电压为 3.0V
;使能 LVD 中断
END
11.5.19 PCA 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sbit
sbit
sbit
sbit
sbit
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
CCON
CF
CR
CCF2
CCF1
CCF0
CMOD
CL
CH
CCAPM0
CCAP0L
CCAP0H
PCA_PWM0
CCAPM1
CCAP1L
CCAP1H
PCA_PWM1
CCAPM2
CCAP2L
CCAP2H
PCA_PWM2
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
0xd8;
CCON^7;
CCON^6;
CCON^2;
CCON^1;
CCON^0;
0xd9;
0xe9;
0xf9;
0xda;
0xea;
0xfa;
0xf2;
0xdb;
0xeb;
0xfb;
0xf3;
0xdc;
0xec;
0xfc;
0xf4;
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 606 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void PCA_Isr() interrupt 7
{
if (CF)
{
CF = 0;
P10 = !P10;
}
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//清中断标志
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
CCON = 0x00;
CMOD = 0x09;
CR = 1;
EA = 1;
//PCA 时钟为系统时钟,使能 PCA 计时中断
//启动 PCA 计时器
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
CCON
CF
CR
CCF2
CCF1
CCF0
CMOD
CL
CH
CCAPM0
CCAP0L
CCAP0H
PCA_PWM0
DATA
BIT
BIT
BIT
BIT
BIT
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0D8H
CCON.7
CCON.6
CCON.2
CCON.1
CCON.0
0D9H
0E9H
0F9H
0DAH
0EAH
0FAH
0F2H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 607 -
STC8G 系列技术手册
官方网站: www.STCAI.com
CCAPM1
CCAP1L
CCAP1H
PCA_PWM1
CCAPM2
CCAP2L
CCAP2H
PCA_PWM2
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0DBH
0EBH
0FBH
0F3H
0DCH
0ECH
0FCH
0F4H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
003BH
PCAISR
ORG
0100H
JNB
CLR
CPL
CF,ISREXIT
CF
P1.0
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
PCAISR:
;清中断标志
;测试端口
ISREXIT:
RETI
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
SETB
SETB
CCON,#00H
CMOD,#09H
CR
EA
JMP
$
;PCA 时钟为系统时钟,使能 PCA 计时中断
;启动 PCA 计时器
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 608 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
11.5.20 SPI 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
#define
SPSTAT
SPCTL
SPDAT
IE2
ESPI
=
=
=
=
0xcd;
0xce;
0xcf;
0xaf;
0x02
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void SPI_Isr() interrupt 9
{
SPSTAT = 0xc0;
P10 = !P10;
}
//清中断标志
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
SPCTL = 0x50;
SPSTAT = 0xc0;
IE2 = ESPI;
EA = 1;
SPDAT = 0x5a;
//使能 SPI 主机模式
//清中断标志
//使能 SPI 中断
//发送测试数据
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 609 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
SPSTAT
SPCTL
SPDAT
IE2
ESPI
DATA
DATA
DATA
DATA
EQU
0CDH
0CEH
0CFH
0AFH
02H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
004BH
SPIISR
ORG
0100H
MOV
CPL
RETI
SPSTAT,#0C0H
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
MOV
SPCTL,#50H
SPSTAT,#0C0H
IE2,#ESPI
EA
SPDAT,#5AH
JMP
$
SPIISR:
;清中断标志
;测试端口
MAIN:
;使能 SPI 主机模式
;清中断标志
;使能 SPI 中断
;发送测试数据
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 610 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
END
11.5.21 比较器中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
CMPCR1
CMPCR2
=
=
0xe6;
0xe7;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void CMP_Isr() interrupt 21
{
CMPCR1 &= ~0x40;
P10 = !P10;
}
//清中断标志
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
CMPCR2 = 0x00;
CMPCR1 = 0x80;
CMPCR1 |= 0x30;
CMPCR1 &= ~0x08;
CMPCR1 |= 0x04;
//使能比较器模块
//使能比较器边沿中断
//P3.6 为 CMP+输入脚
//P3.7 为 CMP-输入脚
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 611 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//使能比较器输出
CMPCR1 |= 0x02;
EA = 1;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
CMPCR1
CMPCR2
DATA
DATA
0E6H
0E7H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
00ABH
CMPISR
ORG
0100H
ANL
CPL
RETI
CMPCR1,#NOT 40H
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
ORL
ANL
ORL
ORL
SETB
CMPCR2,#00H
CMPCR1,#80H
CMPCR1,#30H
CMPCR1,#NOT 08H
CMPCR1,#04H
CMPCR1,#02H
EA
CMPISR:
;清中断标志
;测试端口
MAIN:
;使能比较器模块
;使能比较器边沿中断
;P3.6 为 CMP+输入脚
;P3.7 为 CMP-输入脚
;使能比较器输出
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 612 -
STC8G 系列技术手册
官方网站: www.STCAI.com
JMP
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
$
END
11.5.22 PWM 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
P_SW2
=
0xba;
sfr
sfr
PWMSET
PWMCFG01
=
=
0xF1;
0xF6;
#define
#define
#define
PWM0CH
PWM0CL
PWM0CKS
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
sbit
P10
P11
=
=
P1^0;
P1^1;
(*(unsigned char volatile xdata *)0xFF00)
(*(unsigned char volatile xdata *)0xFF01)
(*(unsigned char volatile xdata *)0xFF02)
void PWM0_Isr() interrupt 22
{
if (PWMCFG01 & 0x08)
{
PWMCFG01 &= ~0x08;
P10 = !P10;
}
}
//清中断标志
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 613 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//使能 PWM0 模块(必须先使能模块后面的设置才有效)
PWMSET = 0x01;
P_SW2 = 0x80;
PWM0CKS = 0x0f;
PWM0CH = 0x01;
PWM0CL = 0x00;
P_SW2 = 0x00;
//PWM0 时钟为系统时钟/16
//设置 PWM0 周期为 256 个 PWM0 时钟
//启动 PWM0 模块并使能 PWM0 计数器中断
PWMCFG01 = 0x05;
EA = 1;
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P_SW2
DATA
0BAH
PWMSET
PWMCFG01
DATA
DATA
0F1H
0F6H
PWM0CH
PWM0CL
PWM0CKS
EQU
EQU
EQU
0FF00H
0FF01H
0FF02H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
00B3H
PWM0ISR
ORG
0100H
PUSH
PUSH
MOV
JNB
ANL
ACC
PSW
A,PWMCFG01
ACC.3,ISREXIT
PWMCFG01,#NOT 08H
PWM0ISR:
;清中断标志
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 614 -
STC8G 系列技术手册
官方网站: www.STCAI.com
CPL
P1.0
POP
POP
RETI
PSW
ACC
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
PWMSET,#01H
MOV
MOV
MOV
MOVX
MOV
MOV
MOVX
MOV
MOV
MOVX
MOV
P_SW2,#80H
A,#0FH
DPTR,#PWM0CKS
@DPTR,A
A,#01H
DPTR,#PWM0CH
@DPTR,A
A,#00H
DPTR,#PWM0CL
@DPTR,A
P_SW2,#00H
MOV
SETB
PWMCFG01,#05H
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;测试端口
ISREXIT:
MAIN:
;使能 PWM0 模块(必须先使能模块后面的设置才有效)
;PWM0 时钟为系统时钟/16
;设置 PWM0 周期为 256 个 PWM0 时钟
;启动 PWM0 模块并使能 PWM0 计数器中断
END
11.5.23 I2C 中断
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
P_SW2
#define
#define
#define
I2CCFG
I2CMSCR
I2CMSST
=
0xba;
(*(unsigned char volatile xdata *)0xfe80)
(*(unsigned char volatile xdata *)0xfe81)
(*(unsigned char volatile xdata *)0xfe82)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 615 -
STC8G 系列技术手册
#define
#define
#define
#define
#define
I2CSLCR
I2CSLST
I2CSLADR
I2CTXD
I2CRXD
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sbit
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
P10
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
(*(unsigned char volatile xdata *)0xfe83)
(*(unsigned char volatile xdata *)0xfe84)
(*(unsigned char volatile xdata *)0xfe85)
(*(unsigned char volatile xdata *)0xfe86)
(*(unsigned char volatile xdata *)0xfe87)
=
=
=
=
=
=
=
=
=
=
=
=
=
void I2C_Isr() interrupt 24
{
_push_(P_SW2);
P_SW2 |= 0x80;
if (I2CMSST & 0x40)
{
I2CMSST &= ~0x40;
P10 = !P10;
}
_pop_(P_SW2);
}
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
P1^0;
//清中断标志
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
P_SW2 = 0x80;
I2CCFG = 0xc0;
I2CMSCR = 0x80;
P_SW2 = 0x00;
EA = 1;
P_SW2 = 0x80;
I2CMSCR = 0x81;
P_SW2 = 0x00;
//使能 I2C 主机模式
//使能 I2C 中断;
//发送起始命令
while (1);
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 616 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
汇编代码
;测试工作频率为 11.0592MHz
P_SW2
DATA
0BAH
I2CCFG
I2CMSCR
I2CMSST
I2CSLCR
I2CSLST
I2CSLADR
I2CTXD
I2CRXD
XDATA
XDATA
XDATA
XDATA
XDATA
XDATA
XDATA
XDATA
0FE80H
0FE81H
0FE82H
0FE83H
0FE84H
0FE85H
0FE86H
0FE87H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
00C3H
I2CISR
ORG
0100H
PUSH
PUSH
PUSH
PUSH
MOV
MOV
MOVX
ANL
MOVX
CPL
POP
POP
POP
POP
RETI
ACC
DPL
DPH
P_SW2
P_SW2,#80H
DPTR,#I2CMSST
A,@DPTR
A,#NOT 40H
@DPTR,A
P1.0
P_SW2
DPH
DPL
ACC
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
I2CISR:
;清中断标志
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 617 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOVX
MOV
MOV
MOVX
MOV
SETB
P_SW2,#80H
A,#0C0H
DPTR,#I2CCFG
@DPTR,A
A,#80H
DPTR,#I2CMSCR
@DPTR,A
P_SW2,#00H
EA
MOV
MOV
MOV
MOVX
MOV
P_SW2,#80H
A,#081H
DPTR,#I2CMSCR
@DPTR,A
P_SW2,#00H
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;使能 I2C 主机模式
;使能 I2C 中断
;发送起始命令
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 618 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12 定时器/计数器
产品线
定时器数量
STC8G1K08 系列
3
STC8G1K08-8Pin 系列
2
STC8G1K08A 系列
2
STC8G2K64S4 系列
5
STC8G2K64S2 系列
5
STC15H2K64S4 系列
5
STC8G 系列单片机内部设置了 5 个 16 位定时器/计数器。5 个 16 位定时器 T0、T1、T2、T3 和 T4
都具有计数方式和定时方式两种工作方式。对定时器/计数器 T0 和 T1,用它们在特殊功能寄存器 TMOD
中相对应的控制位 C/T 来选择 T0 或 T1 为定时器还是计数器。对定时器/计数器 T2,用特殊功能寄存器
AUXR 中的控制位 T2_C/T 来选择 T2 为定时器还是计数器。对定时器/计数器 T3,用特殊功能寄存器
T4T3M 中的控制位 T3_C/T 来选择 T3 为定时器还是计数器。对定时器/计数器 T4,用特殊功能寄存器
T4T3M 中的控制位 T4_C/T 来选择 T4 为定时器还是计数器。定时器/计数器的核心部件是一个加法计数
器,其本质是对脉冲进行计数。只是计数脉冲来源不同:如果计数脉冲来自系统时钟,则为定时方式,
此时定时器/计数器每 12 个时钟或者每 1 个时钟得到一个计数脉冲,计数值加 1;如果计数脉冲来自单片
机外部引脚,则为计数方式,每来一个脉冲加 1。
当定时器/计数器 T0、T1 及 T2 工作在定时模式时,特殊功能寄存器 AUXR 中的 T0x12、T1x12 和
T2x12 分别决定是系统时钟/12 还是系统时钟/1(不分频)后让 T0、T1 和 T2 进行计数。当定时器/计数
器 T3 和 T4 工作在定时模式时,特殊功能寄存器 T4T3M 中的 T3x12 和 T4x12 分别决定是系统时钟/12
还是系统时钟/1(不分频)后让 T3 和 T4 进行计数。当定时器/计数器工作在计数模式时,对外部脉冲计
数不分频。
定时器/计数器 0 有 4 种工作模式:模式 0(16 位自动重装载模式),模式 1(16 位不可重装载模式),
模式 2(8 位自动重装模式),模式 3(不可屏蔽中断的 16 位自动重装载模式)。定时器/计数器 1 除模
式 3 外,其他工作模式与定时器/计数器 0 相同。T1 在模式 3 时无效,停止计数。定时器 T2 的工作模式
固定为 16 位自动重装载模式。T2 可以当定时器使用,也可以当串口的波特率发生器和可编程时钟输出。
定时器 3、定时器 4 与定时器 T2 一样,它们的工作模式固定为 16 位自动重装载模式。T3/T4 可以当定
时器使用,也可以当串口的波特率发生器和可编程时钟输出。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 619 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.1 定时器的相关寄存器
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
TCON
定时器控制寄存器
88H
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
0000,0000
TMOD
定时器模式寄存器
89H
GATE
C/T
M1
M0
GATE
C/T
M1
M0
0000,0000
TL0
定时器 0 低 8 位寄存器
8AH
0000,0000
TL1
定时器 1 低 8 位寄存器
8BH
0000,0000
TH0
定时器 0 高 8 位寄存器
8CH
0000,0000
TH1
定时器 1 高 8 位寄存器
8DH
0000,0000
AUXR
辅助寄存器 1
8EH
T0x12
T1x12
UART_M0x6
T2R
T2_C/T
T2x12 EXTRAM
INTCLKO
中断与时钟输出控制寄存器
8FH
-
EX4
EX3
EX2
-
T2CLKO T1CLKO
WKTCL
掉电唤醒定时器低字节
AAH
WKTCH
掉电唤醒定时器高字节
ABH
WKTEN
T4T3M
定时器 4/3 控制寄存器
D1H
T4R
T4H
定时器 4 高字节
D2H
0000,0000
T4L
定时器 4 低字节
D3H
0000,0000
T3H
定时器 3 高字节
D4H
0000,0000
T3L
定时器 3 低字节
D5H
0000,0000
T2H
定时器 2 高字节
D6H
0000,0000
T2L
定时器 2 低字节
D7H
0000,0000
符号
描述
S1ST2
0000,0001
T0CLKO x000,x000
1111,1111
0111,1111
T4_C/T
T4x12
T4CLKO
T3R
T3_C/T
T3x12
T3CLKO 0000,0000
位地址与符号
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
TM2PS
定时器 2 时钟预分频寄存器
FEA2H
0000,0000
TM3PS
定时器 3 时钟预分频寄存器
FEA3H
0000,0000
TM4PS
定时器 4 时钟预分频寄存器
FEA4H
0000,0000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 620 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.2 定时器 0/1
12.2.1
定时器 0/1 控制寄存器(TCON)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
TCON
88H
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
TF1:T1溢出中断标志。T1被允许计数以后,从初值开始加1计数。当产生溢出时由硬件将TF1位置“1”,
并向CPU请求中断,一直保持到CPU响应中断时,才由硬件清“0”(也可由查询软件清“0”)。
TR1:定时器T1的运行控制位。该位由软件置位和清零。当GATE(TMOD.7)=0,TR1=1时就允许T1开
始计数,TR1=0时禁止T1计数。当GATE(TMOD.7)=1,TR1=1且INT1输入高电平时,才允许T1
计数。
TF0:T0溢出中断标志。T0被允许计数以后,从初值开始加1计数,当产生溢出时,由硬件置“1”TF0,
向CPU请求中断,一直保持CPU响应该中断时,才由硬件清0(也可由查询软件清0)。
TR0:定时器T0的运行控制位。该位由软件置位和清零。当GATE(TMOD.3)=0,TR0=1时就允许T0开
始计数,TR0=0时禁止T0计数。当GATE(TMOD.3)=1,TR0=1且INT0输入高电平时,才允许T0
计数,TR0=0时禁止T0计数。
IE1:外部中断1请求源(INT1/P3.3)标志。IE1=1,外部中断向CPU请求中断,当CPU响应该中断时由
硬件清“0”IE1。
IT1:外部中断源1触发控制位。IT1=0,上升沿或下降沿均可触发外部中断1。IT1=1,外部中断1程控为
下降沿触发方式。
IE0:外部中断0请求源(INT0/P3.2)标志。IE0=1外部中断0向CPU请求中断,当CPU响应外部中断时,
由硬件清“0”IE0(边沿触发方式)。
IT0:外部中断源0触发控制位。IT0=0,上升沿或下降沿均可触发外部中断0。IT0=1,外部中断0程控为
下降沿触发方式。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 621 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 0/1 模式寄存器(TMOD)
12.2.2
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
TMOD
89H
T1_GATE
T1_C/T
T1_M1
T1_M0
T0_GATE
T0_C/T
T0_M1
T0_M0
T1_GATE:控制定时器1,置1时只有在INT1脚为高及TR1控制位置1时才可打开定时器/计数器1。
T0_GATE:控制定时器0,置1时只有在INT0脚为高及TR0控制位置1时才可打开定时器/计数器0。
T1_C/T:控制定时器1用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作
计数器(对引脚T1/P3.5外部脉冲进行计数)。
T0_C/T:控制定时器0用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作
计数器(对引脚T0/P3.4外部脉冲进行计数)。
T1_M1/T1_M0:定时器定时器/计数器1模式选择
T1_M1
定时器/计数器1工作模式
T1_M0
16位自动重载模式
0
0
当[TH1,TL1]中的16位计数值溢出时,系统会自动将内部16位
重载寄存器中的重载值装入[TH1,TL1]中。
16位不自动重载模式
0
1
当[TH1,TL1]中的16位计数值溢出时,定时器1将从0开始计数
8位自动重载模式
1
0
当TL1中的8位计数值溢出时,系统会自动将TH1中的重载值
装入TL1中。
1
1
T1停止工作
T0_M1/T0_M0:定时器定时器/计数器0模式选择
T0_M1
定时器/计数器0工作模式
T0_M0
16位自动重载模式
0
0
当[TH0,TL0]中的16位计数值溢出时,系统会自动将内部16位
重载寄存器中的重载值装入[TH0,TL0]中。
16位不自动重载模式
0
1
当[TH0,TL0]中的16位计数值溢出时,定时器0将从0开始计数
8位自动重载模式
1
0
当TL0中的8位计数值溢出时,系统会自动将TH0中的重载值
装入TL0中。
不可屏蔽中断的16位自动重载模式
与模式0相同,不可屏蔽中断,中断优先级最高,高于其他所
1
1
有中断的优先级,并且不可关闭,可用作操作系统的系统节拍
定时器,或者系统监控定时器。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 622 -
STC8G 系列技术手册
12.2.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 0 模式 0(16 位自动重装载模式)
此模式下定时器/计数器 0 作为可自动重装载的 16 位计数器,如下图所示:
÷12
AUXR.7/T0x12=0
SYSclk
TF0
C/T=0
÷1
Interrupt
Toggle
TH0
(8bits)
AUXR.7/T0x12=1
C/T=1
T0 Pin
TL0
(8bits)
T0CLKO
P3.5
control
T0CLKO
TR0
RL_TH0
(8bits)
GATE
INT0
RL_TL0
(8bits)
定时器/计数器 0 的模式 0:16 位自动重装载模式
当 GATE=0(TMOD.3)时,如 TR0=1,则定时器计数。GATE=1 时,允许由外部输入 INT0 控制定时器 0,
这样可实现脉宽测量。TR0 为 TCON 寄存器内的控制位,TCON 寄存器各位的具体功能描述见上节 TCON 寄
存器的介绍。
当 C/T=0 时,多路开关连接到系统时钟的分频输出,T0 对内部系统时钟计数,T0 工作在定时方式。当
C/T=1 时,多路开关连接到外部脉冲输入 P3.4/T0,即 T0 工作在计数方式。
STC 单片机的定时器 0 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同;
另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T0 的速率由特殊功能寄存器 AUXR
中的 T0x12 决定,如果 T0x12=0,T0 则工作在 12T 模式;如果 T0x12=1,T0 则工作在 1T 模式
定时器 0 有两个隐藏的寄存器 RL_TH0 和 RL_TL0。RL_TH0 与 TH0 共有同一个地址,RL_TL0 与 TL0
共有同一个地址。当 TR0=0 即定时器/计数器 0 被禁止工作时,对 TL0 写入的内容会同时写入 RL_TL0,对
TH0 写入的内容也会同时写入 RL_TH0。当 TR0=1 即定时器/计数器 0 被允许工作时,对 TL0 写入内容,实
际上不是写入当前寄存器 TL0 中,而是写入隐藏的寄存器 RL_TL0 中,对 TH0 写入内容,实际上也不是写入
当前寄存器 TH0 中,而是写入隐藏的寄存器 RL_TH0,这样可以巧妙地实现 16 位重装载定时器。当读 TH0
和 TL0 的内容时,所读的内容就是 TH0 和 TL0 的内容,而不是 RL_TH0 和 RL_TL0 的内容。
当定时器 0 工作在模式 0(TMOD[1:0]/[M1,M0]=00B)时,[TH0,TL0]的溢出不仅置位 TF0,而且会自动
将[RL_TH0,RL_TL0]的内容重新装入[TH0,TL0]。
当 T0CLKO/INTCLKO.0=1 时,P3.5/T1 管脚配置为定时器 0 的时钟输出 T0CLKO。输出时钟频率为 T0
溢出率/2。
如果 C/T=0,定时器/计数器 T0 对内部系统时钟计数,则:
T0 工作在 1T 模式(AUXR.7/T0x12=1)时的输出时钟频率 = (SYSclk)/(65536-[RL_TH0, RL_TL0])/2
T0 工作在 12T 模式(AUXR.7/T0x12=0)时的输出时钟频率 = (SYSclk)/12/(65536-[RL_TH0, RL_TL0])/2
如果 C/T=1,定时器/计数器 T0 是对外部脉冲输入(P3.4/T0)计数,则:
输出时钟频率 = (T0_Pin_CLK) / (65536-[RL_TH0, RL_TL0])/2
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 623 -
STC8G 系列技术手册
12.2.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 0 模式 1(16 位不可重装载模式)
此模式下定时器/计数器 0 工作在 16 位不可重装载模式,如下图所示
÷12
AUXR.7/T0x12=0
SYSclk
TF0
C/T=0
÷1
Interrupt
Toggle
TH0
(8bits)
AUXR.7/T0x12=1
C/T=1
T0 Pin
TL0
(8bits)
T0CLKO
P3.5
control
T0CLKO
TR0
GATE
INT0
定时器/计数器 0 的模式 1:16 位不可重装载模式
此模式下,定时器/计数器 0 配置为 16 位不可重装载模式,由 TL0 的 8 位和 TH0 的 8 位所构成。TL0 的
8 位溢出向 TH0 进位,TH0 计数溢出置位 TCON 中的溢出标志位 TF0。
当 GATE=0(TMOD.3)时,如 TR0=1,则定时器计数。GATE=1 时,允许由外部输入 INT0 控制定时器 0,
这样可实现脉宽测量。TR0 为 TCON 寄存器内的控制位,TCON 寄存器各位的具体功能描述见上节 TCON 寄
存器的介绍。
当 C/T=0 时,多路开关连接到系统时钟的分频输出,T0 对内部系统时钟计数,T0 工作在定时方式。当
C/T=1 时,多路开关连接到外部脉冲输入 P3.4/T0,即 T0 工作在计数方式。
STC 单片机的定时器 0 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同;
另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T0 的速率由特殊功能寄存器 AUXR
中的 T0x12 决定,如果 T0x12=0,T0 则工作在 12T 模式;如果 T0x12=1,T0 则工作在 1T 模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 624 -
STC8G 系列技术手册
12.2.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 0 模式 2(8 位自动重装载模式)
此模式下定时器/计数器 0 作为可自动重装载的 8 位计数器,如下图所示:
÷12
AUXR.7/T0x12=0
SYSclk
TF0
C/T=0
÷1
Interrupt
Toggle
TL0
(8bits)
AUXR.7/T0x12=1
C/T=1
T0 Pin
T0CLKO
P3.5
control
T0CLKO
TR0
TH0
(8bits)
GATE
INT0
定时器/计数器 0 的模式 2:8 位自动重装载模式
TL0 的溢出不仅置位 TF0,而且将 TH0 的内容重新装入 TL0,TH0 内容由软件预置,重装时 TH0 内容不
变。
当 T0CLKO/INTCLKO.0=1 时,P3.5/T1 管脚配置为定时器 0 的时钟输出 T0CLKO。输出时钟频率为 T0
溢出率/2。
如果 C/T=0,定时器/计数器 T0 对内部系统时钟计数,则:
T0 工作在 1T 模式(AUXR.7/T0x12=1)时的输出时钟频率 = (SYSclk)/(256-TH0)/2
T0 工作在 12T 模式(AUXR.7/T0x12=0)时的输出时钟频率 = (SYSclk)/12/(256-TH0)/2
如果 C/T=1,定时器/计数器 T0 是对外部脉冲输入(P3.4/T0)计数,则:
输出时钟频率 = (T0_Pin_CLK) / (256-TH0)/2
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 625 -
STC8G 系列技术手册
12.2.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 0 模式 3(不可屏蔽中断 16 位自动重装载,实时操作
系统节拍器)
对定时器/计数器 0,其工作模式模式 3 与工作模式 0 是一样的(下图定时器模式 3 的原理图,与工作模
式 0 是一样的)。唯一不同的是:当定时器/计数器 0 工作在模式 3 时,只需允许 ET0/IE.1(定时器/计数器 0 中
断允许位),不需要允许 EA/IE.7(总中断使能位)就能打开定时器/计数器 0 的中断,此模式下的定时器/计数器
0 中断与总中断使能位 EA 无关,一旦工作在模式 3 下的定时器/计数器 0 中断被打开(ET0=1),那么该中断是
不可屏蔽的,该中断的优先级是最高的,即该中断不能被任何中断所打断,而且该中断打开后既不受 EA/IE.7
控制也不再受 ET0 控制,当 EA=0 或 ET0=0 时都不能屏蔽此中断。故将此模式称为不可屏蔽中断的 16 位自
动重装载模式。
÷12
AUXR.7/T0x12=0
SYSclk
TF0
C/T=0
÷1
Interrupt
Toggle
TH0
(8bits)
AUXR.7/T0x12=1
C/T=1
T0 Pin
TL0
(8bits)
P3.5
control
T0CLKO
TR0
GATE
INT0
T0CLKO
RL_TH0
(8bits)
RL_TL0
(8bits)
定时器/计数器 0 的模式 3:不可屏蔽中断的 16 位自动重装载模式
注意:当定时器/计数器 0 工作在模式 3(不可屏蔽中断的 16 位自动重装载模式)时,不需要允许 EA/IE.7(总中断使能位),
只需允许 ET0/IE.1(定时器/计数器 0 中断允许位)就能打开定时器/计数器 0 的中断,此模式下的定时器/计数器 0 中
断与总中断使能位 EA 无关。一旦此模式下的定时器/计数器 0 中断被打开后,该定时器/计数器 0 中断优先级就是
最高的,它不能被其它任何中断所打断(不管是比定时器/计数器 0 中断优先级低的中断还是比其优先级高的中断,
都不能打断此时的定时器/计数器 0 中断),而且该中断打开后既不受 EA/IE.7 控制也不再受 ET0 控制了,清零 EA
或 ET0 都不能关闭此中断。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 626 -
STC8G 系列技术手册
12.2.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 1 模式 0(16 位自动重装载模式)
此模式下定时器/计数器 1 作为可自动重装载的 16 位计数器,如下图所示:
÷12
AUXR.6/T1x12=0
SYSclk
TF1
C/T=0
÷1
Interrupt
Toggle
TH1
(8bits)
AUXR.6/T1x12=1
C/T=1
T1 Pin
TL1
(8bits)
T1CLKO
P3.4
control
T1CLKO
TR1
RL_TH1
(8bits)
GATE
INT1
RL_TL1
(8bits)
定时器/计数器 1 的模式 0:16 位自动重装载模式
当 GATE=0(TMOD.7)时,如 TR1=1,则定时器计数。GATE=1 时,允许由外部输入 INT1 控制定时器 1,
这样可实现脉宽测量。TR1 为 TCON 寄存器内的控制位,TCON 寄存器各位的具体功能描述见上节 TCON 寄
存器的介绍。
当 C/T=0 时,多路开关连接到系统时钟的分频输出,T1 对内部系统时钟计数,T1 工作在定时方式。当
C/T=1 时,多路开关连接到外部脉冲输入 P3.5/T1,即 T1 工作在计数方式。
STC 单片机的定时器 1 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同;
另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T1 的速率由特殊功能寄存器 AUXR
中的 T1x12 决定,如果 T1x12=0,T1 则工作在 12T 模式;如果 T1x12=1,T1 则工作在 1T 模式
定时器 1 有两个隐藏的寄存器 RL_TH1 和 RL_TL1。RL_TH1 与 TH1 共有同一个地址,RL_TL1 与 TL1
共有同一个地址。当 TR1=0 即定时器/计数器 1 被禁止工作时,对 TL1 写入的内容会同时写入 RL_TL1,对
TH1 写入的内容也会同时写入 RL_TH1。当 TR1=1 即定时器/计数器 1 被允许工作时,对 TL1 写入内容,实
际上不是写入当前寄存器 TL1 中,而是写入隐藏的寄存器 RL_TL1 中,对 TH1 写入内容,实际上也不是写入
当前寄存器 TH1 中,而是写入隐藏的寄存器 RL_TH1,这样可以巧妙地实现 16 位重装载定时器。当读 TH1
和 TL1 的内容时,所读的内容就是 TH1 和 TL1 的内容,而不是 RL_TH1 和 RL_TL1 的内容。
当定时器 1 工作在模式 1(TMOD[5:4]/[M1,M0]=00B)时,[TH1,TL1]的溢出不仅置位 TF1,而且会自动
将[RL_TH1,RL_TL1]的内容重新装入[TH1,TL1]。
当 T1CLKO/INTCLKO.1=1 时,P3.4/T0 管脚配置为定时器 1 的时钟输出 T1CLKO。输出时钟频率为 T1
溢出率/2。
如果 C/T=0,定时器/计数器 T1 对内部系统时钟计数,则:
T1 工作在 1T 模式(AUXR.6/T1x12=1)时的输出时钟频率 = (SYSclk)/(65536-[RL_TH1, RL_TL1])/2
T1 工作在 12T 模式(AUXR.6/T1x12=0)时的输出时钟频率 = (SYSclk)/12/(65536-[RL_TH1, RL_TL1])/2
如果 C/T=1,定时器/计数器 T1 是对外部脉冲输入(P3.5/T1)计数,则:
输出时钟频率 = (T1_Pin_CLK) / (65536-[RL_TH1, RL_TL1])/2
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 627 -
STC8G 系列技术手册
12.2.8
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 1 模式 1(16 位不可重装载模式)
此模式下定时器/计数器 1 工作在 16 位不可重装载模式,如下图所示
÷12
AUXR.6/T1x12=0
SYSclk
TF1
C/T=0
÷1
Interrupt
Toggle
TH1
(8bits)
AUXR.6/T1x12=1
C/T=1
T1 Pin
TL1
(8bits)
T1CLKO
P3.4
control
T1CLKO
TR1
GATE
INT1
定时器/计数器 1 的模式 1:16 位不可重装载模式
此模式下,定时器/计数器 1 配置为 16 位不可重装载模式,由 TL1 的 8 位和 TH1 的 8 位所构成。TL1 的
8 位溢出向 TH1 进位,TH1 计数溢出置位 TCON 中的溢出标志位 TF1。
当 GATE=0(TMOD.7)时,如 TR1=1,则定时器计数。GATE=1 时,允许由外部输入 INT1 控制定时器 1,
这样可实现脉宽测量。TR1 为 TCON 寄存器内的控制位,TCON 寄存器各位的具体功能描述见上节 TCON 寄
存器的介绍。
当 C/T=0 时,多路开关连接到系统时钟的分频输出,T1 对内部系统时钟计数,T1 工作在定时方式。当
C/T=1 时,多路开关连接到外部脉冲输入 P3.5/T1,即 T1 工作在计数方式。
STC 单片机的定时器 1 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同;
另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T1 的速率由特殊功能寄存器 AUXR
中的 T1x12 决定,如果 T1x12=0,T1 则工作在 12T 模式;如果 T1x12=1,T1 则工作在 1T 模式
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 628 -
STC8G 系列技术手册
12.2.9
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 1 模式 2(8 位自动重装载模式)
此模式下定时器/计数器 1 作为可自动重装载的 8 位计数器,如下图所示:
÷12
AUXR.6/T1x12=0
SYSclk
TF1
C/T=0
÷1
Interrupt
Toggle
TL1
(8bits)
AUXR.6/T1x12=1
C/T=1
T1 Pin
T1CLKO
P3.4
control
T1CLKO
TR1
TH1
(8bits)
GATE
INT1
定时器/计数器 1 的模式 2:8 位自动重装载模式
TL1 的溢出不仅置位 TF1,而且将 TH1 的内容重新装入 TL1,TH1 内容由软件预置,重装时 TH1 内容不
变。
当 T1CLKO/INTCLKO.1=1 时,P3.4/T0 管脚配置为定时器 1 的时钟输出 T1CLKO。输出时钟频率为 T1
溢出率/2。
如果 C/T=0,定时器/计数器 T1 对内部系统时钟计数,则:
T1 工作在 1T 模式(AUXR.6/T1x12=1)时的输出时钟频率 = (SYSclk)/(256-TH1)/2
T1 工作在 12T 模式(AUXR.6/T1x12=0)时的输出时钟频率 = (SYSclk)/12/(256-TH1)/2
如果 C/T=1,定时器/计数器 T1 是对外部脉冲输入(P3.5/T1)计数,则:
输出时钟频率 = (T1_Pin_CLK) / (256-TH1)/2
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 629 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.2.10 定时器 0 计数寄存器(TL0,TH0)
符号
地址
TL0
8AH
TH0
8CH
B7
B6
B5
B4
B3
B2
B1
B0
当定时器/计数器0工作在16位模式(模式0、模式1、模式3)时,TL0和TH0组合成为一个16位寄存器,
TL0为低字节,TH0为高字节。若为8位模式(模式2)时,TL0和TH0为两个独立的8位寄存器。
12.2.11 定时器 1 计数寄存器(TL1,TH1)
符号
地址
TL1
8BH
TH1
8DH
B7
B6
B5
B4
B3
B2
B1
B0
当定时器/计数器1工作在16位模式(模式0、模式1)时,TL1和TH1组合成为一个16位寄存器,TL1为低
字节,TH1为高字节。若为8位模式(模式2)时,TL1和TH1为两个独立的8位寄存器。
12.2.12 辅助寄存器 1(AUXR)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
AUXR
8EH
T0x12
T1x12
UART_M0x6
T2R
T2_C/T
T2x12
EXTRAM
S1ST2
T0x12:定时器0速度控制位
0:12T 模式,即 CPU 时钟 12 分频(FOSC/12)
1:1T 模式,即 CPU 时钟不分频分频(FOSC/1)
T1x12:定时器1速度控制位
0:12T 模式,即 CPU 时钟 12 分频(FOSC/12)
1:1T 模式,即 CPU 时钟不分频分频(FOSC/1)
12.2.13 中断与时钟输出控制寄存器(INTCLKO)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
INTCLKO
8FH
-
EX4
EX3
EX2
-
T2CLKO
T1CLKO
T0CLKO
T0CLKO:定时器0时钟输出控制
0:关闭时钟输出
1:使能 P3.5 口的是定时器 0 时钟输出功能
当定时器 0 计数发生溢出时,P3.5 口的电平自动发生翻转。
T1CLKO:定时器1时钟输出控制
0:关闭时钟输出
1:使能 P3.4 口的是定时器 1 时钟输出功能
当定时器 1 计数发生溢出时,P3.4 口的电平自动发生翻转。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 630 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.2.14 定时器 0 定时计算公式
定时器模式
定时器速度
周期计算公式
1T
定时器周期 =
12T
定时器周期 =
1T
定时器周期 =
12T
定时器周期 =
1T
定时器周期 =
12T
定时器周期 =
65536 – [TH0, TL0]
SYSclk
模式0/3
(16位自动重载)
65536 – [TH0, TL0]
SYSclk
65536 – [TH0, TL0]
SYSclk
模式1
(16位不自动重载)
65536 – [TH0, TL0]
SYSclk
256 – TH0
SYSclk
模式2
(8位自动重载)
256 – TH0
SYSclk
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
(自动重载)
×12 (自动重载)
(需软件装载)
×12 (需软件装载)
(自动重载)
×12 (自动重载)
技术交流及选型论坛:www.STCAIMCU.com - 631 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.2.15 定时器 1 定时计算公式
定时器模式
定时器速度
周期计算公式
1T
定时器周期 =
12T
定时器周期 =
1T
定时器周期 =
12T
定时器周期 =
1T
定时器周期 =
12T
定时器周期 =
65536 – [TH1, TL1]
SYSclk
模式0
(16位自动重载)
65536 – [TH1, TL1]
SYSclk
65536 – [TH1, TL1]
SYSclk
模式1
(16位不自动重载)
65536 – [TH1, TL1]
SYSclk
256 – TH1
SYSclk
模式2
(8位自动重载)
256 – TH1
SYSclk
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
(自动重载)
×12 (自动重载)
(需软件装载)
×12 (需软件装载)
(自动重载)
×12 (自动重载)
技术交流及选型论坛:www.STCAIMCU.com - 632 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.3 定时器 2(24 位定时器,8 位预分频+16 位定时)
12.3.1
辅助寄存器 1(AUXR)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
AUXR
8EH
T0x12
T1x12
UART_M0x6
T2R
T2_C/T
T2x12
EXTRAM
S1ST2
T2R:定时器2的运行控制位
0:定时器 2 停止计数
1:定时器 2 开始计数
T2_C/T:控制定时器2用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作
计数器(对引脚T2/P1.2外部脉冲进行计数)。
T2x12:定时器2速度控制位
0:12T 模式,即 CPU 时钟 12 分频(FOSC/12)
1:1T 模式,即 CPU 时钟不分频分频(FOSC/1)
12.3.2
中断与时钟输出控制寄存器(INTCLKO)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
INTCLKO
8FH
-
EX4
EX3
EX2
-
T2CLKO
T1CLKO
T0CLKO
T2CLKO:定时器2时钟输出控制
0:关闭时钟输出
1:使能 P1.3 口的是定时器 2 时钟输出功能
当定时器 2 计数发生溢出时,P1.3 口的电平自动发生翻转。
12.3.3
定时器 2 计数寄存器(T2L,T2H)
符号
地址
T2L
D7H
T2H
D6H
B7
B6
B5
B4
B3
B2
B1
B0
定时器/计数器2的工作模式固定为16位重载模式,T2L和T2H组合成为一个16位寄存器,T2L为低字节,
T2H为高字节。当[T2H,T2L]中的16位计数值溢出时,系统会自动将内部16位重载寄存器中的重载
值装入[T2H,T2L]中。
12.3.4
定时器 2 的 8 位预分频寄存器(TM2PS)
符号
地址
TM2PS
FEA2H
B7
B6
B5
B4
B3
B2
B1
B0
定时器2的时钟 = 系统时钟SYSclk ÷ ( TM2PS + 1 )
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 633 -
STC8G 系列技术手册
12.3.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 2 工作模式
定时器/计数器 2 的原理框图如下:
÷12
SYSclk
AUXR.2/T2x12=0
TM2PS
T2IF
T2_C/T=0
÷1
T2H
(8bits)
AUXR.2/T2x12=1
T2_C/T=1
T2 Pin
Interrupt
T2L
(8bits)
T2CLKO
Toggle
control
T2CLKO
T2R
RL_T2H
(8bits)
RL_T2L
(8bits)
定时器/计数器 2 的工作模式:16 位自动重装载模式
T2R/AUXR.4 为 AUXR 寄存器内的控制位,AUXR 寄存器各位的具体功能描述见上节 AUXR 寄存器的介
绍。
当 T2_C/T=0 时,多路开关连接到系统时钟输出,T2 对内部系统时钟计数,
T2 工作在定时方式。
当 T2_C/T=1
时,多路开关连接到外部脉冲输 T2,即 T2 工作在计数方式。
STC 单片机的定时器 2 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同;
另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T2 的速率由特殊功能寄存器 AUXR
中的 T2x12 决定,如果 T2x12=0,T2 则工作在 12T 模式;如果 T2x12=1,T2 则工作在 1T 模式
定时器 2 有两个隐藏的寄存器 RL_T2H 和 RL_T2L。RL_T2H 与 T2H 共有同一个地址,RL_T2L 与 T2L
共有同一个地址。当 T2R=0 即定时器/计数器 2 被禁止工作时,对 T2L 写入的内容会同时写入 RL_T2L,对
T2H 写入的内容也会同时写入 RL_T2H。当 T2R=1 即定时器/计数器 2 被允许工作时,对 T2L 写入内容,实
际上不是写入当前寄存器 T2L 中,而是写入隐藏的寄存器 RL_T2L 中,对 T2H 写入内容,实际上也不是写入
当前寄存器 T2H 中,而是写入隐藏的寄存器 RL_T2H,这样可以巧妙地实现 16 位重装载定时器。当读 T2H
和 T2L 的内容时,所读的内容就是 T2H 和 T2L 的内容,而不是 RL_T2H 和 RL_T2L 的内容。
[T2H,T2L]的溢出不仅置位中断请求标志位(T2IF),使 CPU 转去执行定时器 2 的中断程序,而且会自动
将[RL_T2H,RL_T2L]的内容重新装入[T2H,T2L]。
12.3.6
定时器 2 计算公式
定时器速度
周期计算公式
1T
定时器周期 =
12T
定时器周期 =
65536 – [T2H, T2L]
SYSclk/(TM2PS+1)
65536 – [T2H, T2L]
SYSclk/(TM2PS+1)
(自动重载)
×12 (自动重载)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 634 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.4 定时器 3/4(24 位定时器,8 位预分频+16 位定时)
12.4.1
定时器 4/3 控制寄存器(T4T3M)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
T4T3M
D1H
T4R
T4_C/T
T4x12
T4CLKO
T3R
T3_C/T
T3x12
T3CLKO
T4R:定时器4的运行控制位
0:定时器 4 停止计数
1:定时器 4 开始计数
T4_C/T:控制定时器4用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作
计数器(对引脚T4/P0.6外部脉冲进行计数)。
T4x12:定时器4速度控制位
0:12T 模式,即 CPU 时钟 12 分频(FOSC/12)
1:1T 模式,即 CPU 时钟不分频分频(FOSC/1)
T4CLKO:定时器4时钟输出控制
0:关闭时钟输出
1:使能 P0.7 口的是定时器 4 时钟输出功能
当定时器 4 计数发生溢出时,P0.7 口的电平自动发生翻转。
T3R:定时器3的运行控制位
0:定时器 3 停止计数
1:定时器 3 开始计数
T3_C/T:控制定时器3用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作
计数器(对引脚T3/P0.4外部脉冲进行计数)。
T3x12:定时器3速度控制位
0:12T 模式,即 CPU 时钟 12 分频(FOSC/12)
1:1T 模式,即 CPU 时钟不分频分频(FOSC/1)
T3CLKO:定时器3时钟输出控制
0:关闭时钟输出
1:使能 P0.5 口的是定时器 3 时钟输出功能
当定时器 3 计数发生溢出时,P0.5 口的电平自动发生翻转。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 635 -
STC8G 系列技术手册
12.4.2
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 3 计数寄存器(T3L,T3H)
符号
地址
T3L
D5H
T3H
D4H
B7
B6
B5
B4
B3
B2
B1
B0
定时器/计数器3的工作模式固定为16位重载模式,T3L和T3H组合成为一个16位寄存器,T3L为低字节,
T3H为高字节。当[T3H,T3L]中的16位计数值溢出时,系统会自动将内部16位重载寄存器中的重载
值装入[T3H,T3L]中。
12.4.3
定时器 4 计数寄存器(T4L,T4H)
符号
地址
T4L
D3H
T4H
D2H
B7
B6
B5
B4
B3
B2
B1
B0
定时器/计数器 4 的工作模式固定为 16 位重载模式,T4L 和 T4H 组合成为一个 16 位寄存器,T4L 为低
字节,T4H 为高字节。当[T4H,T4L]中的 16 位计数值溢出时,系统会自动将内部 16 位重载寄存器中的
重载值装入[T4H,T4L]中。
12.4.4
定时器 3 的 8 位预分频寄存器(TM3PS)
符号
地址
TM3PS
FEA3H
B7
B6
B5
B4
B3
B2
B1
B0
B2
B1
B0
定时器3的时钟 = 系统时钟SYSclk ÷ ( TM3PS + 1 )
12.4.5
定时器 4 的 8 位预分频寄存器(TM4PS)
符号
地址
TM4PS
FEA4H
B7
B6
B5
B4
B3
定时器4的时钟 = 系统时钟SYSclk ÷ ( TM4PS + 1 )
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 636 -
STC8G 系列技术手册
12.4.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 3 工作模式
定时器/计数器 3 的原理框图如下:
÷12
SYSclk
T4T3M.1/T3x12=0
TM3PS
T3IF
T3_C/T=0
÷1
T3H
(8bits)
T4T3M.1/T3x12=1
T3_C/T=1
T3 Pin
Interrupt
T3L
(8bits)
T3CLKO
Toggle
control
T3CLKO
T3R
RL_T3H
(8bits)
RL_T3L
(8bits)
定时器/计数器 3 的工作模式:16 位自动重装载模式
T3R/T4T3M.3 为 T4T3M 寄存器内的控制位,T4T3M 寄存器各位的具体功能描述见上节 T4T3M 寄存器的
介绍。
当 T3_C/T=0 时,多路开关连接到系统时钟输出,T3 对内部系统时钟计数,
T3 工作在定时方式。
当 T3_C/T=1
时,多路开关连接到外部脉冲输 T3,即 T3 工作在计数方式。
STC 单片机的定时器 3 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同;
另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T3 的速率由特殊功能寄存器 T4T3M
中的 T3x12 决定,如果 T3x12=0,T3 则工作在 12T 模式;如果 T3x12=1,T3 则工作在 1T 模式
定时器 3 有两个隐藏的寄存器 RL_T3H 和 RL_T3L。RL_T3H 与 T3H 共有同一个地址,RL_T3L 与 T3L
共有同一个地址。当 T3R=0 即定时器/计数器 3 被禁止工作时,对 T3L 写入的内容会同时写入 RL_T3L,对
T3H 写入的内容也会同时写入 RL_T3H。当 T3R=1 即定时器/计数器 3 被允许工作时,对 T3L 写入内容,实
际上不是写入当前寄存器 T3L 中,而是写入隐藏的寄存器 RL_T3L 中,对 T3H 写入内容,实际上也不是写入
当前寄存器 T3H 中,而是写入隐藏的寄存器 RL_T3H,这样可以巧妙地实现 16 位重装载定时器。当读 T3H
和 T3L 的内容时,所读的内容就是 T3H 和 T3L 的内容,而不是 RL_T3H 和 RL_T3L 的内容。
[T3H,T3L]的溢出不仅置位中断请求标志位(T3IF),使 CPU 转去执行定时器 3 的中断程序,而且会自动
将[RL_T3H,RL_T3L]的内容重新装入[T3H,T3L]。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 637 -
STC8G 系列技术手册
12.4.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 4 工作模式
定时器/计数器 4 的原理框图如下:
÷12
SYSclk
T4T3M.5/T4x12=0
TM4PS
T4IF
T4_C/T=0
÷1
T4H
(8bits)
T4T3M.5/T4x12=1
T4_C/T=1
T4 Pin
Interrupt
T4L
(8bits)
T4CLKO
Toggle
control
T4CLKO
T4R
RL_T4H
(8bits)
RL_T4L
(8bits)
定时器/计数器 4 的工作模式:16 位自动重装载模式
T4R/T4T3M.7 为 T4T3M 寄存器内的控制位,T4T3M 寄存器各位的具体功能描述见上节 T4T3M 寄存器的
介绍。
当 T4_C/T=0 时,多路开关连接到系统时钟输出,T4 对内部系统时钟计数,
T4 工作在定时方式。
当 T4_C/T=1
时,多路开关连接到外部脉冲输 T4,即 T4 工作在计数方式。
STC 单片机的定时器 4 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同;
另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T4 的速率由特殊功能寄存器 T4T3M
中的 T4x12 决定,如果 T4x12=0,T4 则工作在 12T 模式;如果 T4x12=1,T4 则工作在 1T 模式
定时器 4 有两个隐藏的寄存器 RL_T4H 和 RL_T4L。RL_T4H 与 T4H 共有同一个地址,RL_T4L 与 T4L
共有同一个地址。当 T4R=0 即定时器/计数器 4 被禁止工作时,对 T4L 写入的内容会同时写入 RL_T4L,对
T4H 写入的内容也会同时写入 RL_T4H。当 T4R=1 即定时器/计数器 4 被允许工作时,对 T4L 写入内容,实
际上不是写入当前寄存器 T4L 中,而是写入隐藏的寄存器 RL_T4L 中,对 T4H 写入内容,实际上也不是写入
当前寄存器 T4H 中,而是写入隐藏的寄存器 RL_T4H,这样可以巧妙地实现 16 位重装载定时器。当读 T4H
和 T4L 的内容时,所读的内容就是 T4H 和 T4L 的内容,而不是 RL_T4H 和 RL_T4L 的内容。
[T4H,T4L]的溢出不仅置位中断请求标志位(T4IF),使 CPU 转去执行定时器 4 的中断程序,而且会自动
将[RL_T4H,RL_T4L]的内容重新装入[T4H,T4L]。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 638 -
STC8G 系列技术手册
12.4.8
官方网站: www.STCAI.com
研发顾问:13922829991
选型顾问: 13922805190
定时器 3 计算公式
定时器速度
周期计算公式
1T
定时器周期 =
12T
定时器周期 =
12.4.9
车规 MCU 设计公司
65536 – [T3H, T3L]
(自动重载)
SYSclk/(TM3PS+1)
65536 – [T3H, T3L]
SYSclk/(TM3PS+1)
×12 (自动重载)
定时器 4 计算公式
定时器速度
周期计算公式
1T
定时器周期 =
12T
定时器周期 =
65536 – [T4H, T4L]
SYSclk/(TM4PS+1)
65536 – [T4H, T4L]
SYSclk/(TM4PS+1)
(自动重载)
×12 (自动重载)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 639 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.5 AIapp-ISP | 定时器计算器工具
①:在下载软件中选择“定时器计算器”功能页,进定时器代码生成界面
②:设置系统工作频率(单位:MHz)
③:设置定时时间长度(单位:毫秒/微秒)
④:选择目标定时器,并设置定时器工作模式
⑤:选择是否需要使能定时器中断
⑥:手动生成 C 代码或者 ASM 代码,复制范例
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 640 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.6 范例程序
定时器 0(模式 0-16 位自动重载),用作定时
12.6.1
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM0_Isr() interrupt 1
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
TMOD = 0x00;
TL0 = 0x66;
TH0 = 0xfc;
TR0 = 1;
ET0 = 1;
EA = 1;
//模式 0
//65536-11.0592M/12/1000
//启动定时器
//使能定时器中断
while (1);
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 641 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
000BH
TM0ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#00H
TL0,#66H
TH0,#0FCH
TR0
ET0
EA
JMP
$
TM0ISR:
;测试端口
MAIN:
;模式 0
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
12.6.2
定时器 0(模式 1-16 位不自动重载),用作定时
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 642 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM0_Isr() interrupt 1
{
TL0 = 0x66;
TH0 = 0xfc;
P10 = !P10;
}
//重设定时参数
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//模式 1
//65536-11.0592M/12/1000
TMOD = 0x01;
TL0 = 0x66;
TH0 = 0xfc;
TR0 = 1;
ET0 = 1;
EA = 1;
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
DATA
DATA
093H
094H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 643 -
STC8G 系列技术手册
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
000BH
TM0ISR
ORG
0100H
MOV
MOV
CPL
RETI
TL0,#66H
TH0,#0FCH
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#01H
TL0,#66H
TH0,#0FCH
TR0
ET0
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM0ISR:
;重设定时参数
;测试端口
MAIN:
;模式 1
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
12.6.3
定时器 0(模式 2-8 位自动重载),用作定时
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 644 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM0_Isr() interrupt 1
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//模式 2
//256-11.0592M/12/76K
TMOD = 0x02;
TL0 = 0xf4;
TH0 = 0xf4;
TR0 = 1;
ET0 = 1;
EA = 1;
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 645 -
STC8G 系列技术手册
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
000BH
TM0ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#02H
TL0,#0F4H
TH0,#0F4H
TR0
ET0
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM0ISR:
;测试端口
MAIN:
;模式 2
;256-11.0592M/12/76K
;启动定时器
;使能定时器中断
END
定时器 0(模式 3-16 位自动重载不可屏蔽中断),用作定时
12.6.4
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 646 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
sfr
sfr
sfr
sfr
sfr
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM0_Isr() interrupt 1
{
P10 = !P10;
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//
//模式 3
//65536-11.0592M/12/1000
TMOD = 0x03;
TL0 = 0x66;
TH0 = 0xfc;
TR0 = 1;
ET0 = 1;
EA = 1;
//启动定时器
//使能定时器中断
//不受 EA 控制
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
0000H
MAIN
000BH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 647 -
STC8G 系列技术手册
官方网站: www.STCAI.com
LJMP
TM0ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#03H
TL0,#66H
TH0,#0FCH
TR0
ET0
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM0ISR:
;测试端口
MAIN:
;
;模式 3
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
;不受 EA 控制
END
定时器 0(外部计数-扩展 T0 为外部下降沿中断)
12.6.5
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 648 -
STC8G 系列技术手册
官方网站: www.STCAI.com
void TM0_Isr() interrupt 1
{
P10 = !P10;
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//外部计数模式
TMOD = 0x04;
TL0 = 0xff;
TH0 = 0xff;
TR0 = 1;
ET0 = 1;
EA = 1;
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
000BH
TM0ISR
ORG
0100H
CPL
RETI
P1.0
TM0ISR:
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 649 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#04H
TL0,#0FFH
TH0,#0FFH
TR0
ET0
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;外部计数模式
;启动定时器
;使能定时器中断
END
定时器 0(测量脉宽-INT0 高电平宽度)
12.6.6
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
AUXR
=
0x8e;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void INT0_Isr() interrupt 0
{
P0 = TL0;
P1 = TH0;
}
//TL0 为测量值低字节
//TH0 为测量值高字节
void main()
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 650 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//1T 模式
//使能 GATE,INT0 为 1 时使能计时
AUXR = 0x80;
TMOD = 0x08;
TL0 = 0x00;
TH0 = 0x00;
while (P32);
TR0 = 1;
IT0 = 1;
EX0 = 1;
EA = 1;
//等待 INT0 为低
//启动定时器
//使能 INT0 下降沿中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
8EH
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0003H
INT0ISR
ORG
0100H
MOV
MOV
RETI
P0,TL0
P1,TH0
MOV
MOV
SP, #5FH
P0M0, #00H
INT0ISR:
;TL0 为测量值低字节
;TH0 为测量值高字节
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 651 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
JB
SETB
SETB
SETB
SETB
AUXR,#80H
TMOD,#08H
TL0,#00H
TH0,#00H
P3.2,$
TR0
IT0
EX0
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;1T 模式
;使能 GATE,INT0 为 1 时使能计时
;等待 INT0 为低
;启动定时器
;使能 INT0 下降沿中断
END
定时器 0(模式 0),时钟分频输出
12.6.7
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
INTCLKO
=
0x8f;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 652 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//模式 0
//65536-11.0592M/12/1000
TMOD = 0x00;
TL0 = 0x66;
TH0 = 0xfc;
TR0 = 1;
INTCLKO = 0x01;
//启动定时器
//使能时钟输出
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
INTCLKO
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
8FH
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
TMOD,#00H
TL0,#66H
TH0,#0FCH
TR0
MAIN:
;模式 0
;65536-11.0592M/12/1000
;启动定时器
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 653 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
INTCLKO,#01H
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;使能时钟输出
END
定时器 1(模式 0-16 位自动重载),用作定时
12.6.8
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM1_Isr() interrupt 3
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
TMOD = 0x00;
TL1 = 0x66;
TH1 = 0xfc;
TR1 = 1;
ET1 = 1;
EA = 1;
//模式 0
//65536-11.0592M/12/1000
//启动定时器
//使能定时器中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 654 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
001BH
TM1ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#00H
TL1,#66H
TH1,#0FCH
TR1
ET1
EA
JMP
$
TM1ISR:
;测试端口
MAIN:
;模式 0
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 655 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
定时器 1(模式 1-16 位不自动重载),用作定时
12.6.9
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM1_Isr() interrupt 3
{
TL1 = 0x66;
TH1 = 0xfc;
P10 = !P10;
}
//重设定时参数
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
TMOD = 0x10;
TL1 = 0x66;
TH1 = 0xfc;
TR1 = 1;
ET1 = 1;
EA = 1;
//模式 1
//65536-11.0592M/12/1000
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 656 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
001BH
TM1ISR
ORG
0100H
MOV
MOV
CPL
RETI
TL1,#66H
TH1,#0FCH
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#10H
TL1,#66H
TH1,#0FCH
TR1
ET1
EA
JMP
$
TM1ISR:
;重设定时参数
;测试端口
MAIN:
;模式 1
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
12.6.10 定时器 1(模式 2-8 位自动重载),用作定时
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 657 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM1_Isr() interrupt 3
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//模式 2
//256-11.0592M/12/76K
TMOD = 0x20;
TL1 = 0xf4;
TH1 = 0xf4;
TR1 = 1;
ET1 = 1;
EA = 1;
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
DATA
DATA
DATA
DATA
093H
094H
091H
092H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 658 -
STC8G 系列技术手册
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
001BH
TM1ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#20H
TL1,#0F4H
TH1,#0F4H
TR1
ET1
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM1ISR:
;测试端口
MAIN:
;模式 2
;256-11.0592M/12/76K
;启动定时器
;使能定时器中断
END
12.6.11 定时器 1(外部计数-扩展 T1 为外部下降沿中断)
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
P0M1
P0M0
=
=
0x93;
0x94;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 659 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM1_Isr() interrupt 3
{
P10 = !P10;
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//外部计数模式
TMOD = 0x40;
TL1 = 0xff;
TH1 = 0xff;
TR1 = 1;
ET1 = 1;
EA = 1;
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 660 -
STC8G 系列技术手册
官方网站: www.STCAI.com
ORG
LJMP
ORG
LJMP
0000H
MAIN
001BH
TM1ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
SETB
SETB
TMOD,#40H
TL1,#0FFH
TH1,#0FFH
TR1
ET1
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM1ISR:
;测试端口
MAIN:
;外部计数模式
;启动定时器
;使能定时器中断
END
12.6.12 定时器 1(测量脉宽-INT1 高电平宽度)
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 661 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
sfr
P5M1
P5M0
=
=
0xc9;
0xca;
sfr
AUXR
=
0x8e;
void INT1_Isr() interrupt 2
{
P0 = TL1;
P1 = TH1;
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//TL1 为测量值低字节
//TH1 为测量值高字节
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//1T 模式
//使能 GATE,INT1 为 1 时使能计时
AUXR = 0x40;
TMOD = 0x80;
TL1 = 0x00;
TH1 = 0x00;
while (INT1);
TR1 = 1;
IT1 = 1;
EX1 = 1;
EA = 1;
//等待 INT1 为低
//启动定时器
//使能 INT1 下降沿中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
8EH
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 662 -
STC8G 系列技术手册
官方网站: www.STCAI.com
ORG
LJMP
0013H
INT1ISR
ORG
0100H
MOV
MOV
RETI
P0,TL1
P1,TH1
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
JB
SETB
SETB
SETB
SETB
AUXR,#40H
TMOD,#80H
TL1,#00H
TH1,#00H
INT1,$
TR1
IT1
EX1
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
INT1ISR:
;TL1 为测量值低字节
;TH1 为测量值高字节
MAIN:
;1T 模式
;使能 GATE,INT1 为 1 时使能计时
;等待 INT1 为低
;启动定时器
;使能 INT1 下降沿中断
END
12.6.13 定时器 1(模式 0),时钟分频输出
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
INTCLKO
=
0x8f;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 663 -
STC8G 系列技术手册
sfr
sfr
sfr
sfr
sfr
官方网站: www.STCAI.com
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
//模式 0
//65536-11.0592M/12/1000
TMOD = 0x00;
TL1 = 0x66;
TH1 = 0xfc;
TR1 = 1;
INTCLKO = 0x02;
//启动定时器
//使能时钟输出
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
INTCLKO
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
8FH
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 664 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
SETB
MOV
TMOD,#00H
TL1,#66H
TH1,#0FCH
TR1
INTCLKO,#02H
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;模式 0
;65536-11.0592M/12/1000
;启动定时器
;使能时钟输出
END
12.6.14 定时器 1(模式 0)做串口 1 波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
AUXR
=
0x8e;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
void UartIsr() interrupt 4
{
if (TI)
{
TI = 0;
busy = 0;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 665 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
}
if (RI)
{
RI = 0;
buffer[wptr++] = SBUF;
wptr &= 0x0f;
}
}
void UartInit()
{
SCON = 0x50;
TMOD = 0x00;
TL1 = BRT;
TH1 = BRT >> 8;
TR1 = 1;
AUXR = 0x40;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void UartSend(char dat)
{
while (busy);
busy = 1;
SBUF = dat;
}
void UartSendStr(char *p)
{
while (*p)
{
UartSend(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
UartInit();
ES = 1;
EA = 1;
UartSendStr(“Uart Test !\r\n”);
while (1)
{
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 666 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
if (rptr != wptr)
{
UartSend(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
DATA
8EH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
JNB
CLR
CLR
TI,CHKRI
TI
BUSY
;16 bytes
UART_ISR:
CHKRI:
JNB
CLR
MOV
ANL
ADD
MOV
MOV
INC
UARTISR_EXIT:
POP
POP
RI,UARTISR_EXIT
RI
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,SBUF
WPTR
PSW
ACC
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 667 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
RETI
UART_INIT:
MOV
MOV
MOV
MOV
SETB
MOV
CLR
MOV
MOV
RET
SCON,#50H
TMOD,#00H
TL1,#0E8H
TH1,#0FFH
TR1
AUXR,#40H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
SBUF,A
;65536-11059200/115200/4=0FFE8H
UART_SEND:
UART_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SENDEND:
RET
A
A,@A+DPTR
SENDEND
UART_SEND
DPTR
UART_SENDSTR
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
SETB
SETB
UART_INIT
ES
EA
MOV
LCALL
DPTR,#STRING
UART_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
LOOP:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 668 -
STC8G 系列技术手册
STRING:
官方网站: www.STCAI.com
车规 MCU 设计公司
ADD
MOV
MOV
LCALL
INC
JMP
A,#BUFFER
R0,A
A,@R0
UART_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
研发顾问:13922829991
选型顾问: 13922805190
END
12.6.15 定时器 1(模式 2)做串口 1 波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(256 - FOSC / 115200 / 32)
sfr
AUXR
=
0x8e;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
void UartIsr() interrupt 4
{
if (TI)
{
TI = 0;
busy = 0;
}
if (RI)
{
RI = 0;
buffer[wptr++] = SBUF;
wptr &= 0x0f;
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 669 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
}
void UartInit()
{
SCON = 0x50;
TMOD = 0x20;
TL1 = BRT;
TH1 = BRT;
TR1 = 1;
AUXR = 0x40;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void UartSend(char dat)
{
while (busy);
busy = 1;
SBUF = dat;
}
void UartSendStr(char *p)
{
while (*p)
{
UartSend(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
UartInit();
ES = 1;
EA = 1;
UartSendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
UartSend(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 670 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
汇编代码
;测试工作频率为 11.0592MHz
AUXR
DATA
8EH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
JNB
CLR
CLR
TI,CHKRI
TI
BUSY
;16 bytes
UART_ISR:
CHKRI:
JNB
CLR
MOV
ANL
ADD
MOV
MOV
INC
UARTISR_EXIT:
POP
POP
RETI
RI,UARTISR_EXIT
RI
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,SBUF
WPTR
PSW
ACC
UART_INIT:
MOV
MOV
MOV
MOV
SCON,#50H
TMOD,#20H
TL1,#0FDH
TH1,#0FDH
;256-11059200/115200/32=0FDH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 671 -
STC8G 系列技术手册
官方网站: www.STCAI.com
SETB
MOV
CLR
MOV
MOV
RET
TR1
AUXR,#40H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
SBUF,A
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART_SEND:
UART_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SENDEND:
RET
A
A,@A+DPTR
SENDEND
UART_SEND
DPTR
UART_SENDSTR
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
SETB
SETB
UART_INIT
ES
EA
MOV
LCALL
DPTR,#STRING
UART_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART_SEND
RPTR
LOOP
LOOP:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 672 -
STC8G 系列技术手册
STRING:
官方网站: www.STCAI.com
DB
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
'Uart Test !',0DH,0AH,00H
END
12.6.16 定时器 2(16 位自动重载),用作定时
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
#define
sfr
#define
T2L
T2H
AUXR
IE2
ET2
AUXINTIF
T2IF
=
=
=
=
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM2_Isr() interrupt 12
{
P10 = !P10;
}
=
0xd7;
0xd6;
0x8e;
0xaf;
0x04
0xef;
0x01
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 673 -
STC8G 系列技术手册
官方网站: www.STCAI.com
T2L = 0x66;
T2H = 0xfc;
AUXR = 0x10;
IE2 = ET2;
EA = 1;
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//65536-11.0592M/12/1000
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T2L
T2H
AUXR
IE2
ET2
AUXINTIF
T2IF
DATA
DATA
DATA
DATA
EQU
DATA
EQU
0D7H
0D6H
8EH
0AFH
04H
0EFH
01H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0063H
TM2ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
TM2ISR:
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 674 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
SETB
T2L,#66H
T2H,#0FCH
AUXR,#10H
IE2,#ET2
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
12.6.17 定时器 2(外部计数-扩展 T2 为外部下降沿中断)
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
#define
sfr
#define
T2L
T2H
AUXR
IE2
ET2
AUXINTIF
T2IF
=
=
=
=
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM2_Isr() interrupt 12
{
P10 = !P10;
}
=
0xd7;
0xd6;
0x8e;
0xaf;
0x04
0xef;
0x01
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 675 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
T2L = 0xff;
T2H = 0xff;
AUXR = 0x18;
IE2 = ET2;
EA = 1;
//设置外部计数模式并启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T2L
T2H
AUXR
IE2
ET2
AUXINTIF
T2IF
DATA
DATA
DATA
DATA
EQU
DATA
EQU
0D7H
0D6H
8EH
0AFH
04H
0EFH
01H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0063H
TM2ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
TM2ISR:
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 676 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
SETB
T2L,#0FFH
T2H,#0FFH
AUXR,#18H
IE2,#ET2
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;设置外部计数模式并启动定时器
;使能定时器中断
END
12.6.18 定时器 2,时钟分频输出
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
T2L
T2H
AUXR
INTCLKO
=
=
=
=
0xd7;
0xd6;
0x8e;
0x8f;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 677 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P5M1 = 0x00;
T2L = 0x66;
T2H = 0xfc;
AUXR = 0x10;
INTCLKO = 0x04;
//65536-11.0592M/12/1000
//启动定时器
//使能时钟输出
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T2L
T2H
AUXR
INTCLKO
DATA
DATA
DATA
DATA
0D7H
0D6H
8EH
8FH
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
T2L,#66H
T2H,#0FCH
AUXR,#10H
INTCLKO,#04H
JMP
$
MAIN:
;65536-11.0592M/12/1000
;启动定时器
;使能时钟输出
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 678 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
12.6.19 定时器 2 做串口 1 波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
AUXR
T2H
T2L
=
=
=
0x8e;
0xd6;
0xd7;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
void UartIsr() interrupt 4
{
if (TI)
{
TI = 0;
busy = 0;
}
if (RI)
{
RI = 0;
buffer[wptr++] = SBUF;
wptr &= 0x0f;
}
}
void UartInit()
{
SCON = 0x50;
T2L = BRT;
T2H = BRT >> 8;
AUXR = 0x15;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 679 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void UartSend(char dat)
{
while (busy);
busy = 1;
SBUF = dat;
}
void UartSendStr(char *p)
{
while (*p)
{
UartSend(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
UartInit();
ES = 1;
EA = 1;
UartSendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
UartSend(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
T2H
T2L
DATA
DATA
DATA
8EH
0D6H
0D7H
BUSY
BIT
20H.0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 680 -
STC8G 系列技术手册
官方网站: www.STCAI.com
WPTR
RPTR
BUFFER
DATA
DATA
DATA
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
JNB
CLR
CLR
TI,CHKRI
TI
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;16 bytes
UART_ISR:
CHKRI:
JNB
CLR
MOV
ANL
ADD
MOV
MOV
INC
UARTISR_EXIT:
POP
POP
RETI
RI,UARTISR_EXIT
RI
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,SBUF
WPTR
PSW
ACC
UART_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
SCON,#50H
T2L,#0E8H
T2H,#0FFH
AUXR,#15H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
BUSY,$
BUSY
;65536-11059200/115200/4=0FFE8H
UART_SEND:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 681 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
RET
UART_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SENDEND:
RET
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
SBUF,A
A
A,@A+DPTR
SENDEND
UART_SEND
DPTR
UART_SENDSTR
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
SETB
SETB
UART_INIT
ES
EA
MOV
LCALL
DPTR,#STRING
UART_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
LOOP:
STRING:
END
12.6.20 定时器 2 做串口 2 波特率发生器
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 682 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
sfr
AUXR
T2H
T2L
S2CON
S2BUF
IE2
=
=
=
=
=
=
0x8e;
0xd6;
0xd7;
0x9a;
0x9b;
0xaf;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
void Uart2Isr() interrupt 8
{
if (S2CON & 0x02)
{
S2CON &= ~0x02;
busy = 0;
}
if (S2CON & 0x01)
{
S2CON &= ~0x01;
buffer[wptr++] = S2BUF;
wptr &= 0x0f;
}
}
void Uart2Init()
{
S2CON = 0x10;
T2L = BRT;
T2H = BRT >> 8;
AUXR = 0x14;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 683 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void Uart2Send(char dat)
{
while (busy);
busy = 1;
S2BUF = dat;
}
void Uart2SendStr(char *p)
{
while (*p)
{
Uart2Send(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart2Init();
IE2 = 0x01;
EA = 1;
Uart2SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart2Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
T2H
T2L
S2CON
S2BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
8EH
0D6H
0D7H
9AH
9BH
0AFH
BUSY
WPTR
BIT
DATA
20H.0
21H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 684 -
STC8G 系列技术手册
官方网站: www.STCAI.com
RPTR
BUFFER
DATA
DATA
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0043H
UART2_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
JNB
ANL
CLR
A,S2CON
ACC.1,CHKRI
S2CON,#NOT 02H
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;16 bytes
UART2_ISR:
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART2ISR_EXIT:
POP
POP
RETI
ACC.0,UART2ISR_EXIT
S2CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S2BUF
WPTR
PSW
ACC
UART2_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S2CON,#10H
T2L,#0E8H
T2H,#0FFH
AUXR,#14H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
BUSY,$
BUSY
;65536-11059200/115200/4=0FFE8H
UART2_SEND:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 685 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
RET
UART2_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SEND2END:
RET
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
S2BUF,A
A
A,@A+DPTR
SEND2END
UART2_SEND
DPTR
UART2_SENDSTR
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
SETB
UART2_INIT
IE2,#01H
EA
MOV
LCALL
DPTR,#STRING
UART2_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART2_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
LOOP:
STRING:
END
12.6.21 定时器 2 做串口 3 波特率发生器
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 686 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
sfr
AUXR
T2H
T2L
S3CON
S3BUF
IE2
=
=
=
=
=
=
0x8e;
0xd6;
0xd7;
0xac;
0xad;
0xaf;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
void Uart3Isr() interrupt 17
{
if (S3CON & 0x02)
{
S3CON &= ~0x02;
busy = 0;
}
if (S3CON & 0x01)
{
S3CON &= ~0x01;
buffer[wptr++] = S3BUF;
wptr &= 0x0f;
}
}
void Uart3Init()
{
S3CON = 0x10;
T2L = BRT;
T2H = BRT >> 8;
AUXR = 0x14;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 687 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void Uart3Send(char dat)
{
while (busy);
busy = 1;
S3BUF = dat;
}
void Uart3SendStr(char *p)
{
while (*p)
{
Uart3Send(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart3Init();
IE2 = 0x08;
EA = 1;
Uart3SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart3Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
T2H
T2L
S3CON
S3BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
8EH
0D6H
0D7H
0ACH
0ADH
0AFH
BUSY
WPTR
BIT
DATA
20H.0
21H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 688 -
STC8G 系列技术手册
官方网站: www.STCAI.com
RPTR
BUFFER
DATA
DATA
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
008BH
UART3_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
JNB
ANL
CLR
A,S3CON
ACC.1,CHKRI
S3CON,#NOT 02H
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;16 bytes
UART3_ISR:
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART3ISR_EXIT:
POP
POP
RETI
ACC.0,UART3ISR_EXIT
S3CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S3BUF
WPTR
PSW
ACC
UART3_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S3CON,#10H
T2L,#0E8H
T2H,#0FFH
AUXR,#14H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
BUSY,$
BUSY
;65536-11059200/115200/4=0FFE8H
UART3_SEND:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 689 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
RET
UART3_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SEND3END:
RET
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
S3BUF,A
A
A,@A+DPTR
SEND3END
UART3_SEND
DPTR
UART3_SENDSTR
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
SETB
UART3_INIT
IE2,#08H
EA
MOV
LCALL
DPTR,#STRING
UART3_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART3_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
LOOP:
STRING:
END
12.6.22 定时器 2 做串口 4 波特率发生器
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 690 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
sfr
AUXR
T2H
T2L
S4CON
S4BUF
IE2
=
=
=
=
=
=
0x8e;
0xd6;
0xd7;
0x84;
0x85;
0xaf;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
void Uart4Isr() interrupt 18
{
if (S4CON & 0x02)
{
S4CON &= ~0x02;
busy = 0;
}
if (S4CON & 0x01)
{
S4CON &= ~0x01;
buffer[wptr++] = S4BUF;
wptr &= 0x0f;
}
}
void Uart4Init()
{
S4CON = 0x10;
T2L = BRT;
T2H = BRT >> 8;
AUXR = 0x14;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 691 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void Uart4Send(char dat)
{
while (busy);
busy = 1;
S4BUF = dat;
}
void Uart4SendStr(char *p)
{
while (*p)
{
Uart4Send(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart4Init();
IE2 = 0x10;
EA = 1;
Uart4SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart4Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
T2H
T2L
S4CON
S4BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
8EH
0D6H
0D7H
84H
85H
0AFH
BUSY
WPTR
BIT
DATA
20H.0
21H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 692 -
STC8G 系列技术手册
官方网站: www.STCAI.com
RPTR
BUFFER
DATA
DATA
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0093H
UART4_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
JNB
ANL
CLR
A,S4CON
ACC.1,CHKRI
S4CON,#NOT 02H
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;16 bytes
UART4_ISR:
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART4ISR_EXIT:
POP
POP
RETI
ACC.0,UART4ISR_EXIT
S4CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S4BUF
WPTR
PSW
ACC
UART4_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S4CON,#10H
T2L,#0E8H
T2H,#0FFH
AUXR,#14H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
BUSY,$
BUSY
;65536-11059200/115200/4=0FFE8H
UART4_SEND:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 693 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
RET
UART4_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SEND4END:
RET
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
S4BUF,A
A
A,@A+DPTR
SEND4END
UART4_SEND
DPTR
UART4_SENDSTR
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
SETB
UART4_INIT
IE2,#10H
EA
MOV
LCALL
DPTR,#STRING
UART4_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART4_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
LOOP:
STRING:
END
12.6.23 定时器 3(16 位自动重载),用作定时
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 694 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
#define
#define
#define
sfr
#define
#define
#define
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
AUXR
IE2
ET2
ET3
ET4
AUXINTIF
T2IF
T3IF
T4IF
=
=
=
=
=
=
=
=
=
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM3_Isr() interrupt 19
{
P10 = !P10;
}
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
0xd7;
0xd6;
0x8e;
0xaf;
0x04
0x20
0x40
0xef;
0x01
0x02
0x04
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
T3L = 0x66;
//65536-11.0592M/12/1000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 695 -
STC8G 系列技术手册
官方网站: www.STCAI.com
T3H = 0xfc;
T4T3M = 0x08;
IE2 = ET3;
EA = 1;
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
AUXR
IE2
ET2
ET3
ET4
AUXINTIF
T2IF
T3IF
T4IF
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
EQU
EQU
EQU
DATA
EQU
EQU
EQU
0D1H
0D3H
0D2H
0D5H
0D4H
0D7H
0D6H
8EH
0AFH
04H
20H
40H
0EFH
01H
02H
04H
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
093H
094H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
009BH
TM3ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
TM3ISR:
;测试端口
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 696 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
SETB
T3L,#66H
T3H,#0FCH
T4T3M,#08H
IE2,#ET3
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
END
12.6.24 定时器 3(外部计数-扩展 T3 为外部下降沿中断)
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
#define
#define
#define
sfr
#define
#define
#define
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
AUXR
IE2
ET2
ET3
ET4
AUXINTIF
T2IF
T3IF
T4IF
=
=
=
=
=
=
=
=
=
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
0xd7;
0xd6;
0x8e;
0xaf;
0x04
0x20
0x40
0xef;
0x01
0x02
0x04
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 697 -
STC8G 系列技术手册
sbit
官方网站: www.STCAI.com
P10
=
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P1^0;
void TM3_Isr() interrupt 19
{
P10 = !P10;
}
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
T3L = 0x66;
T3H = 0xfc;
T4T3M = 0x0c;
IE2 = ET3;
EA = 1;
//65536-11.0592M/12/1000
//设置外部计数模式并启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
DATA
T4L
DATA
T4H
DATA
T3L
DATA
T3H
DATA
T2L
DATA
T2H
DATA
AUXR
DATA
IE2
DATA
ET2
EQU
ET3
EQU
ET4
EQU
AUXINTIF
DATA
T2IF
EQU
T3IF
EQU
T4IF
EQU
0D1H
0D3H
0D2H
0D5H
0D4H
0D7H
0D6H
8EH
0AFH
04H
20H
40H
0EFH
01H
02H
04H
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
091H
092H
093H
094H
095H
096H
0B1H
DATA
DATA
DATA
DATA
DATA
DATA
DATA
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 698 -
STC8G 系列技术手册
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
009BH
TM3ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
SETB
T3L,#66H
T3H,#0FCH
T4T3M,#0CH
IE2,#ET3
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM3ISR:
;测试端口
MAIN:
;65536-11.0592M/12/1000
;设置外部计数模式并启动定时器
;使能定时器中断
END
12.6.25 定时器 3,时钟分频输出
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
T4T3M
T4L
T4H
T3L
T3H
T2L
=
=
=
=
=
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
0xd7;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 699 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
T2H
=
0xd6;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
T3L = 0x66;
T3H = 0xfc;
T4T3M = 0x09;
//65536-11.0592M/12/1000
//使能时钟输出并启动定时器
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0D1H
0D3H
0D2H
0D5H
0D4H
0D7H
0D6H
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
093H
094H
095H
096H
0B1H
0B2H
0B3H
0B4H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 700 -
STC8G 系列技术手册
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
T3L,#66H
T3H,#0FCH
T4T3M,#09H
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
MAIN:
;65536-11.0592M/12/1000
;使能时钟输出并启动定时器
END
12.6.26 定时器 3 做串口 3 波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
S3CON
S3BUF
IE2
=
=
=
=
=
=
=
=
=
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
0xd7;
0xd6;
0xac;
0xad;
0xaf;
sfr
sfr
sfr
P0M1
P0M0
P1M1
=
=
=
0x93;
0x94;
0x91;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 701 -
STC8G 系列技术手册
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
官方网站: www.STCAI.com
=
=
=
=
=
=
=
=
=
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
void Uart3Isr() interrupt 17
{
if (S3CON & 0x02)
{
S3CON &= ~0x02;
busy = 0;
}
if (S3CON & 0x01)
{
S3CON &= ~0x01;
buffer[wptr++] = S3BUF;
wptr &= 0x0f;
}
}
void Uart3Init()
{
S3CON = 0x50;
T3L = BRT;
T3H = BRT >> 8;
T4T3M = 0x0a;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void Uart3Send(char dat)
{
while (busy);
busy = 1;
S3BUF = dat;
}
void Uart3SendStr(char *p)
{
while (*p)
{
Uart3Send(*p++);
}
}
void main()
{
P0M0 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 702 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart3Init();
IE2 = 0x08;
EA = 1;
Uart3SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart3Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
S3CON
S3BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0D1H
0D3H
0D2H
0D5H
0D4H
0D7H
0D6H
0ACH
0ADH
0AFH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
;16 bytes
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 703 -
STC8G 系列技术手册
官方网站: www.STCAI.com
ORG
LJMP
ORG
LJMP
0000H
MAIN
008BH
UART3_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
JNB
ANL
CLR
A,S3CON
ACC.1,CHKRI
S3CON,#NOT 02H
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART3_ISR:
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART3ISR_EXIT:
POP
POP
RETI
ACC.0,UART3ISR_EXIT
S3CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S3BUF
WPTR
PSW
ACC
UART3_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S3CON,#50H
T3L,#0E8H
T3H,#0FFH
T4T3M,#0AH
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
S3BUF,A
;65536-11059200/115200/4=0FFE8H
UART3_SEND:
UART3_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SEND3END:
RET
A
A,@A+DPTR
SEND3END
UART3_SEND
DPTR
UART3_SENDSTR
MAIN:
MOV
SP, #5FH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 704 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
SETB
UART3_INIT
IE2,#08H
EA
MOV
LCALL
DPTR,#STRING
UART3_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART3_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
研发顾问:13922829991
选型顾问: 13922805190
LOOP:
STRING:
END
12.6.27 定时器 4(16 位自动重载),用作定时
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
AUXR
IE2
=
=
=
=
=
=
=
=
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
0xd7;
0xd6;
0x8e;
0xaf;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 705 -
STC8G 系列技术手册
官方网站: www.STCAI.com
#define
#define
#define
sfr
#define
#define
#define
ET2
ET3
ET4
AUXINTIF
T2IF
T3IF
T4IF
=
0x04
0x20
0x40
0xef;
0x01
0x02
0x04
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM4_Isr() interrupt 20
{
P10 = !P10;
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
T4L = 0x66;
T4H = 0xfc;
T4T3M = 0x80;
IE2 = ET4;
EA = 1;
//65536-11.0592M/12/1000
//启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
T4L
T4H
DATA
DATA
DATA
0D1H
0D3H
0D2H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 706 -
STC8G 系列技术手册
官方网站: www.STCAI.com
T3L
T3H
T2L
T2H
AUXR
IE2
ET2
ET3
ET4
AUXINTIF
T2IF
T3IF
T4IF
DATA
DATA
DATA
DATA
DATA
DATA
EQU
EQU
EQU
DATA
EQU
EQU
EQU
0D5H
0D4H
0D7H
0D6H
8EH
0AFH
04H
20H
40H
0EFH
01H
02H
04H
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
093H
094H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
00A3H
TM4ISR
ORG
0100H
CPL
RETI
P1.0
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
SETB
T4L,#66H
T4H,#0FCH
T4T3M,#80H
IE2,#ET4
EA
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
TM4ISR:
;测试端口
MAIN:
;65536-11.0592M/12/1000
;启动定时器
;使能定时器中断
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 707 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
END
12.6.28 定时器 4(外部计数-扩展 T4 为外部下降沿中断)
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
#define
#define
#define
sfr
#define
#define
#define
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
AUXR
IE2
ET2
ET3
ET4
AUXINTIF
T2IF
T3IF
T4IF
=
=
=
=
=
=
=
=
=
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sbit
P10
=
P1^0;
void TM4_Isr() interrupt 20
{
P10 = !P10;
}
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
0xd7;
0xd6;
0x8e;
0xaf;
0x04
0x20
0x40
0xef;
0x01
0x02
0x04
//测试端口
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 708 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
T4L = 0x66;
T4H = 0xfc;
T4T3M = 0xc0;
IE2 = ET4;
EA = 1;
//65536-11.0592M/12/1000
//设置外部计数模式并启动定时器
//使能定时器中断
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
AUXR
IE2
ET2
ET3
ET4
AUXINTIF
T2IF
T3IF
T4IF
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
EQU
EQU
EQU
DATA
EQU
EQU
EQU
0D1H
0D3H
0D2H
0D5H
0D4H
0D7H
0D6H
8EH
0AFH
04H
20H
40H
0EFH
01H
02H
04H
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
093H
094H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
00A3H
TM4ISR
ORG
0100H
CPL
P1.0
TM4ISR:
;测试端口
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 709 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
RETI
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
MOV
SETB
T4L,#66H
T4H,#0FCH
T4T3M,#0C0H
IE2,#ET4
EA
JMP
$
;65536-11.0592M/12/1000
;设置外部计数模式并启动定时器
;使能定时器中断
END
12.6.29 定时器 4,时钟分频输出
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr
sfr
sfr
sfr
sfr
sfr
sfr
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
=
=
=
=
=
=
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
0xd7;
0xd6;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 710 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P3M1 = 0x00;
T4L = 0x66;
T4H = 0xfc;
T4T3M = 0x90;
//65536-11.0592M/12/1000
//使能时钟输出并启动定时器
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0D1H
0D3H
0D2H
0D5H
0D4H
0D7H
0D6H
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
091H
092H
093H
094H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com
- 711 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
MOV
MOV
MOV
MOV
MOV
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
MOV
MOV
T4L,#66H
T4H,#0FCH
T4T3M,#90H
JMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;65536-11.0592M/12/1000
;使能时钟输出并启动定时器
END
12.6.30 定时器 4 做串口 4 波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
S4CON
S4BUF
IE2
=
=
=
=
=
=
=
=
=
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
0xd7;
0xd6;
0x84;
0x85;
0xaf;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 712 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void Uart4Isr() interrupt 18
{
if (S4CON & 0x02)
{
S4CON &= ~0x02;
busy = 0;
}
if (S4CON & 0x01)
{
S4CON &= ~0x01;
buffer[wptr++] = S4BUF;
wptr &= 0x0f;
}
}
void Uart4Init()
{
S4CON = 0x50;
T4L = BRT;
T4H = BRT >> 8;
T4T3M = 0xa0;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void Uart4Send(char dat)
{
while (busy);
busy = 1;
S4BUF = dat;
}
void Uart4SendStr(char *p)
{
while (*p)
{
Uart4Send(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart4Init();
IE2 = 0x10;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 713 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
EA = 1;
Uart4SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart4Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
S4CON
S4BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0D1H
0D3H
0D2H
0D5H
0D4H
0D7H
0D6H
84H
85H
0AFH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0093H
UART4_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
A,S4CON
;16 bytes
UART4_ISR:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 714 -
STC8G 系列技术手册
官方网站: www.STCAI.com
JNB
ANL
CLR
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
ACC.1,CHKRI
S4CON,#NOT 02H
BUSY
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART4ISR_EXIT:
POP
POP
RETI
ACC.0,UART4ISR_EXIT
S4CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S4BUF
WPTR
PSW
ACC
UART4_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S4CON,#50H
T4L,#0E8H
T4H,#0FFH
T4T3M,#0A0H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
S4BUF,A
;65536-11059200/115200/4=0FFE8H
UART4_SEND:
UART4_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SEND4END:
RET
A
A,@A+DPTR
SEND4END
UART4_SEND
DPTR
UART4_SENDSTR
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
UART4_INIT
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 715 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
MOV
SETB
IE2,#10H
EA
MOV
LCALL
DPTR,#STRING
UART4_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART4_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
研发顾问:13922829991
选型顾问: 13922805190
LOOP:
STRING:
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 716 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13 串口通信
产品线
串口数量
STC8G1K08 系列
2
STC8G1K08-8Pin 系列
1
STC8G1K08A 系列
1
STC8G2K64S4 系列
4
STC8G2K64S2 系列
2
STC15H2K64S4 系列
4
STC8G 系列单片机具有 4 个全双工异步串行通信接口。每个串行口由 2 个数据缓冲器、一个移位寄
存器、一个串行控制寄存器和一个波特率发生器等组成。每个串行口的数据缓冲器由 2 个互相独立的接
收、发送缓冲器构成,可以同时发送和接收数据。
STC8G 系列单片机的串口 1 有 4 种工作方式,其中两种方式的波特率是可变的,另两种是固定的,
以供不同应用场合选用。串口 2/串口 3/串口 4 都只有两种工作方式,这两种方式的波特率都是可变的。
用户可用软件设置不同的波特率和选择不同的工作方式。主机可通过查询或中断方式对接收/发送进行程
序处理,使用十分灵活。
串口 1、串口 2、串口 3、串口 4 的通讯口均可以通过功能管脚的切换功能切换到多组端口,从而可
以将一个通讯口分时复用为多个通讯口。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 717 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.1 串口功能脚切换
符号
地址
P_SW1
A2H
P_SW2
BAH
B7
B6
S1_S[1:0]
EAXFR
B5
B4
CCP_S[1:0]
-
I2C_S[1:0]
B3
B2
SPI_S[1:0]
CMPO_S
S4_S
B1
B0
0
-
S3_S
S2_S
S1_S[1:0]:串口 1 功能脚选择位
S1_S[1:0]
RxD
TxD
00
P3.0
P3.1
01
P3.6
P3.7
10
P1.6
P1.7
11
P4.3
P4.4
S1_S[1:0]:串口 1 功能脚选择位(STC8G1K08-8Pin 系列、STC8G1K08A 系列)
S1_S[1:0]
RxD
TxD
00
P3.0
P3.1
01
P3.2
P3.3
10
P5.4
P5.5
11
-
-
S4_S:串口 4 功能脚选择位
S4_S
RxD4
TxD4
0
P0.2
P0.3
1
P5.2
P5.3
S3_S:串口 3 功能脚选择位
S3_S
RxD3
TxD3
0
P0.0
P0.1
1
P5.0
P5.1
S2_S:串口 2 功能脚选择位
S2_S
RxD2
TxD2
0
P1.0
P1.1
1
P4.6
P4.7
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 718 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.2 串口相关寄存器
位地址与符号
符号
描述
地址
复位值
B7
B6
B5
B4
B3
B2
B1
B0
SM0/FE
SM1
SM2
REN
TB8
RB8
TI
RI
SCON
串口 1 控制寄存器
98H
SBUF
串口 1 数据寄存器
99H
S2CON
串口 2 控制寄存器
9AH
S2BUF
串口 2 数据寄存器
9BH
S3CON
串口 3 控制寄存器
ACH
S3BUF
串口 3 数据寄存器
ADH
S4CON
串口 4 控制寄存器
84H
S4BUF
串口 4 数据寄存器
85H
PCON
电源控制寄存器
87H
SMOD
SMOD0
LVDF
POF
GF1
AUXR
辅助寄存器 1
8EH
T0x12
T1x12
UART_M0x6
T2R
T2_C/T
SADDR
串口 1 从机地址寄存器
A9H
0000,0000
SADEN
串口 1 从机地址屏蔽寄存器
B9H
0000,0000
0000,0000
0000,0000
S2SM0
-
S2SM2
S2REN
S2TB8
S2RB8
S2TI
S2RI
0100,0000
0000,0000
S3SM0
S3ST3
S3SM2
S3REN
S3TB8
S3RB8
S3TI
S3RI
0000,0000
0000,0000
S4SM0
S4ST4
S4SM2
S4REN
S4TB8
S4RB8
S4TI
S4RI
0000,0000
0000,0000
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
GF0
PD
T2x12 EXTRAM
IDL
0011,0000
S1ST2
0000,0001
技术交流及选型论坛:www.STCAIMCU.com - 719 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.3 串口 1
13.3.1 串口 1 控制寄存器(SCON)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
SCON
98H
SM0/FE
SM1
SM2
REN
TB8
RB8
TI
RI
SM0/FE:当PCON寄存器中的SMOD0位为1时,该位为帧错误检测标志位。当UART在接收过程中检测
到一个无效停止位时,通过UART接收器将该位置1,必须由软件清零。当PCON寄存器中的SMOD0
位为0时,该位和SM1一起指定串口1的通信工作模式,如下表所示:
SM0
SM1
串口1工作模式
功能说明
0
0
模式0
同步移位串行方式
0
1
模式1
可变波特率8位数据方式
1
0
模式2
固定波特率9位数据方式
1
1
模式3
可变波特率9位数据方式
SM2:允许模式 2 或模式 3 多机通信控制位。当串口 1 使用模式 2 或模式 3 时,如果 SM2 位为 1 且 REN
位为 1,则接收机处于地址帧筛选状态。此时可以利用接收到的第 9 位(即 RB8)来筛选地址帧,
若 RB8=1,说明该帧是地址帧,地址信息可以进入 SBUF,并使 RI 为 1,进而在中断服务程序中
再进行地址号比较;若 RB8=0,说明该帧不是地址帧,应丢掉且保持 RI=0。在模式 2 或模式 3
中,如果 SM2 位为 0 且 REN 位为 1,接收收机处于地址帧筛选被禁止状态,不论收到的 RB8 为
0 或 1,均可使接收到的信息进入 SBUF,并使 RI=1,此时 RB8 通常为校验位。模式 1 和模式 0
为非多机通信方式,在这两种方式时,SM2 应设置为 0。
REN:允许/禁止串口接收控制位
0:禁止串口接收数据
1:允许串口接收数据
TB8:当串口 1 使用模式 2 或模式 3 时,TB8 为要发送的第 9 位数据,按需要由软件置位或清 0。在模
式 0 和模式 1 中,该位不用。
RB8:当串口 1 使用模式 2 或模式 3 时,RB8 为接收到的第 9 位数据,一般用作校验位或者地址帧/数据
帧标志位。在模式 0 和模式 1 中,该位不用。
TI:串口 1 发送中断请求标志位。在模式 0 中,当串口发送数据第 8 位结束时,由硬件自动将 TI 置 1,
向主机请求中断,响应中断后 TI 必须用软件清零。在其他模式中,则在停止位开始发送时由硬件
自动将 TI 置 1,向 CPU 发请求中断,响应中断后 TI 必须用软件清零。
RI:串口 1 接收中断请求标志位。在模式 0 中,当串口接收第 8 位数据结束时,由硬件自动将 RI 置 1,
向主机请求中断,响应中断后 RI 必须用软件清零。在其他模式中,串行接收到停止位的中间时刻
由硬件自动将 RI 置 1,向 CPU 发中断申请,响应中断后 RI 必须由软件清零。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 720 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.3.2 串口 1 数据寄存器(SBUF)
符号
地址
SBUF
99H
B7
B6
B5
B4
B3
B2
B1
B0
SBUF:串口 1 数据接收/发送缓冲区。SBUF 实际是 2 个缓冲器,读缓冲器和写缓冲器,两个操作分别
对应两个不同的寄存器,1 个是只写寄存器(写缓冲器),1 个是只读寄存器(读缓冲器)。对 SBUF
进行读操作,实际是读取串口接收缓冲区,对 SBUF 进行写操作则是触发串口开始发送数据。
13.3.3 电源管理寄存器(PCON)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
PCON
87H
SMOD
SMOD0
LVDF
POF
GF1
GF0
PD
IDL
SMOD:串口 1 波特率控制位
0:串口 1 的各个模式的波特率都不加倍
1:串口 1 模式 1(定时器 1 的模式 2 作为波特率发生器时有效)、模式 2、模式 3(定时器 1 的模式
2 作为波特率发生器时有效)的波特率加倍
SMOD0:帧错误检测控制位
0:无帧错检测功能
1:使能帧错误检测功能。此时 SCON 的 SM0/FE 为 FE 功能,即为帧错误检测标志位。
13.3.4 辅助寄存器 1(AUXR)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
AUXR
8EH
T0x12
T1x12
UART_M0x6
T2R
T2_C/T
T2x12
EXTRAM
S1ST2
UART_M0x6:串口 1 模式 0 的通讯速度控制
0:串口 1 模式 0 的波特率不加倍,固定为 Fosc/12
1:串口 1 模式 0 的波特率 6 倍速,即固定为 Fosc/12*6 = Fosc/2
S1ST2:串口 1 波特率发生器选择位
0:选择定时器 1 作为波特率发生器
1:选择定时器 2 作为波特率发生器
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 721 -
STC8G 系列技术手册
13.3.5
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 1 模式 0,模式 0 波特率计算公式
当串口 1 选择工作模式为模式 0 时,串行通信接口工作在同步移位寄存器模式,当串行口模式 0 的
通信速度设置位 UART_M0x6 为 0 时,其波特率固定为系统时钟时钟的 12 分频(SYSclk/12);当设置
UART_M0x6 为 1 时,其波特率固定为系统时钟频率的 2 分频(SYSclk/2)。RxD 为串行通讯的数据口,
TxD 为同步移位脉冲输出脚,发送、接收的是 8 位数据,低位在先。
模式 0 的发送过程:当主机执行将数据写入发送缓冲器 SBUF 指令时启动发送,串行口即将 8 位数
据以 SYSclk/12 或 SYSclk/2(由 UART_M0x6 确定是 12 分频还是 2 分频)的波特率从 RxD 管脚输出(从
低位到高位),发送完中断标志 TI 置 1,TxD 管脚输出同步移位脉冲信号。当写信号有效后,相隔一个
时钟,发送控制端 SEND 有效(高电平),允许 RxD 发送数据,同时允许 TxD 输出同步移位脉冲。一帧(8
位)数据发送完毕时,各控制端均恢复原状态,只有 TI 保持高电平,呈中断申请状态。在再次发送数据
前,必须用软件将 TI 清 0。
模式 0 的接收过程:首先将接收中断请求标志 RI 清零并置位允许接收控制位 REN 时启动模式 0 接
收过程。启动接收过程后,RxD 为串行数据输入端,TxD 为同步脉冲输出端。串行接收的波特率为
SYSclk/12 或 SYSclk/2(由 UART_M0x6 确定是 12 分频还是 2 分频)。当接收完成一帧数据(8 位)后,
控制信号复位,中断标志 RI 被置 1,呈中断申请状态。当再次接收时,必须通过软件将 RI 清 0
写SBUF
TxD
RxD
D0
D1
D2
D3
D4
D5
D6
D7
D6
D7
TI
RI
发送数据(串口1模式0)
写SCON
REN=1, RI=0
TxD
RxD
D0
D1
D2
D3
D4
D5
TI
RI
接收数据(串口1模式0)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 722 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
工作于模式 0 时,必须清 0 多机通信控制位 SM2,使之不影响 TB8 位和 RB8 位。由于波特率固定
为 SYSclk/12 或 SYSclk/2,无需定时器提供,直接由单片机的时钟作为同步移位脉冲。
串口 1 模式 0 的波特率计算公式如下表所示(SYSclk 为系统工作频率):
UART_M0x6
波特率计算公式
0
波特率 =
1
波特率 =
SYSclk
12
SYSclk
2
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 723 -
STC8G 系列技术手册
13.3.6
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 1 模式 1,模式 1 波特率计算公式
当软件设置 SCON 的 SM0、SM1 为“01”时,串行口 1 则以模式 1 进行工作。此模式为 8 位 UART
格式,一帧信息为 10 位:1 位起始位,8 位数据位(低位在先)和 1 位停止位。波特率可变,即可根据
需要进行设置波特率。TxD 为数据发送口,RxD 为数据接收口,串行口全双工接受/发送。
模式 1 的发送过程:串行通信模式发送时,数据由串行发送端 TxD 输出。当主机执行一条写 SBUF
的指令就启动串行通信的发送,写“SBUF”信号还把“1”装入发送移位寄存器的第 9 位,并通知 TX
控制单元开始发送。移位寄存器将数据不断右移送 TxD 端口发送,在数据的左边不断移入“0”作补充。
当数据的最高位移到移位寄存器的输出位置,紧跟其后的是第 9 位“1”,在它的左边各位全为“0”,这
个状态条件,使 TX 控制单元作最后一次移位输出,然后使允许发送信号“SEND”失效,完成一帧信息
的发送,并置位中断请求位 TI,即 TI=1,向主机请求中断处理。
模式 1 的接收过程:当软件置位接收允许标志位 REN,即 REN=1 时,接收器便对 RxD 端口的信号
进行检测,当检测到 RxD 端口发送从“1”→“0”的下降沿跳变时就启动接收器准备接收数据,并立即
复位波特率发生器的接收计数器,将 1FFH 装入移位寄存器。接收的数据从接收移位寄存器的右边移入,
已装入的 1FFH 向左边移出,当起始位"0"移到移位寄存器的最左边时,使 RX 控制器作最后一次移位,
完成一帧的接收。若同时满足以下两个条件:
·RI=0;
·SM2=0 或接收到的停止位为 1。
则接收到的数据有效,实现装载入 SBUF,停止位进入 RB8,RI 标志位被置 1,向主机请求中断,
若上述两条件不能同时满足,则接收到的数据作废并丢失,无论条件满足与否,接收器重又检测 RxD 端
口上的"1"→"0"的跳变,继续下一帧的接收。接收有效,在响应中断后,RI 标志位必须由软件清 0。通
常情况下,串行通信工作于模式 1 时,SM2 设置为"0"。
写SBUF
TxD
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
TI
发送数据(串口1模式1)
写SCON
RxD
REN=1, RI=0
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
RI
接收数据(串口1模式1)
串口 1 的波特率是可变的,其波特率可由定时器 1 或者定时器 2 产生。当定时器采用 1T 模式时(12
倍速),相应的波特率的速度也会相应提高 12 倍。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 724 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 1 模式 1 的波特率计算公式如下表所示:(SYSclk 为系统工作频率)
选择定
定时器
时器
速度
重装值计算公式
1T
定时器2重载值 = 65536 -
12T
定时器2重载值 = 65536 -
1T
定时器1重载值 = 65536 -
12T
定时器1重载值 = 65536 -
1T
定时器1重载值 = 256 -
12T
定时器1重载值 = 256 -
波特率
SYSclk
波特率 =
4×波特率
SYSclk
4 ×(65536 - 定时器重装数)
定时器2
定时器1
SYSclk
12×4×波特率
SYSclk
模式0
定时器1
模式2
12 × 4 ×(65536 - 定时器重装数)
波特率 =
4×波特率
SYSclk
12×4×波特率
2SMOD×SYSclk
32×波特率
2SMOD×SYSclk
12×32×波特率
SYSclk
波特率 =
SYSclk
4 ×(65536 - 定时器重装数)
SYSclk
波特率 =
12 × 4 ×(65536 - 定时器重装数)
波特率 =
波特率 =
2SMOD×SYSclk
32 ×(256 - 定时器重装数)
2SMOD×SYSclk
12 × 32 ×(256 - 定时器重装数)
下面为常用频率与常用波特率所对应定时器的重载值
频率
(MHz)
11.0592
18.432
22.1184
定时器 2
波特率
定时器 1 模式 0
1T 模式
12T 模式
1T 模式
12T 模式
115200
FFE8H
FFFEH
FFE8H
57600
FFD0H
FFFCH
38400
FFB8H
19200
定时器 1 模式 2
SMOD=1
SMOD=0
1T 模式
12T 模式
1T 模式
12T 模式
FFFEH
FAH
-
FDH
-
FFD0H
FFFCH
F4H
FFH
FAH
-
FFFAH
FFB8H
FFFAH
EEH
-
F7H
-
FF70H
FFF4H
FF70H
FFF4H
DCH
FDH
EEH
-
9600
FEE0H
FFE8H
FEE0H
FFE8H
B8H
FAH
DCH
FDH
115200
FFD8H
-
FFD8H
-
F6H
-
FBH
-
57600
FFB0H
-
FFB0H
-
ECH
-
F6H
-
38400
FF88H
FFF6H
FF88H
FFF6H
E2H
-
F1H
-
19200
FF10H
FFECH
FF10H
FFECH
C4H
FBH
E2H
-
9600
FE20H
FFD8H
FE20H
FFD8H
88H
F6H
C4H
FBH
115200
FFD0H
FFFCH
FFD0H
FFFCH
F4H
FFH
FAH
-
57600
FFA0H
FFF8H
FFA0H
FFF8H
E8H
FEH
F4H
FFH
38400
FF70H
FFF4H
FF70H
FFF4H
DCH
FDH
EEH
-
19200
FEE0H
FFE8H
FEE0H
FFE8H
B8H
FAH
DCH
FDH
9600
FDC0H
FFD0H
FDC0H
FFD0H
70H
F4H
B8H
FAH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 725 -
STC8G 系列技术手册
13.3.7
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 1 模式 2,模式 2 波特率计算公式
当 SM0、SM1 两位为 10 时,串行口 1 工作在模式 2。串行口 1 工作模式 2 为 9 位数据异步通信 UART
模式,其一帧的信息由 11 位组成:1 位起始位,8 位数据位(低位在先),1 位可编程位(第 9 位数据)
和 1 位停止位。发送时可编程位(第 9 位数据)由 SCON 中的 TB8 提供,可软件设置为 1 或 0,或者可
将 PSW 中的奇/偶校验位 P 值装入 TB8(TB8 既可作为多机通信中的地址数据标志位,又可作为数据的
奇偶校验位)
。接收时第 9 位数据装入 SCON 的 RB8。TxD 为发送端口,RxD 为接收端口,以全双工模
式进行接收/发送。
模式 2 的波特率固定为系统时钟的 64 分频或 32 分频(取决于 PCON 中 SMOD 的值)
串口 1 模式 2 的波特率计算公式如下表所示(SYSclk 为系统工作频率):
SMOD
波特率计算公式
0
波特率 =
1
波特率 =
SYSclk
64
SYSclk
32
模式 2 和模式 1 相比,除波特率发生源略有不同,发送时由 TB8 提供给移位寄存器第 9 数据位不同
外,其余功能结构均基本相同,其接收/发送操作过程及时序也基本相同。
当接收器接收完一帧信息后必须同时满足下列条件:
·RI=0
·SM2=0 或者 SM2=1 且接收到的第 9 数据位 RB8=1。
当上述两条件同时满足时,才将接收到的移位寄存器的数据装入 SBUF 和 RB8 中,RI 标志位被置 1,
并向主机请求中断处理。如果上述条件有一个不满足,则刚接收到移位寄存器中的数据无效而丢失,也
不置位 RI。无论上述条件满足与否,接收器又重新开始检测 RxD 输入端口的跳变信息,接收下一帧的
输入信息。在模式 2 中,接收到的停止位与 SBUF、RB8 和 RI 无关。
通过软件对 SCON 中的 SM2、TB8 的设置以及通信 Ð 议的约定,为多机通信提供了方便。
写SBUF
TxD
Start
D0
D1
D2
D3
D4
D5
D6
D7
TB8
Stop
D6
D7
RB8
Stop
TI
发送数据(串口1模式2)
写SCON
RxD
REN=1,RI=0
Start
D0
D1
D2
D3
D4
D5
RI
接收数据(串口1模式2)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 726 -
STC8G 系列技术手册
13.3.8
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 1 模式 3,模式 3 波特率计算公式
当 SM0、SM1 两位为 11 时,串行口 1 工作在模式 3。串行通信模式 3 为 9 位数据异步通信 UART
模式,其一帧的信息由 11 位组成:1 位起始位,8 位数据位(低位在先),1 位可编程位(第 9 位数据)
和 1 位停止位。发送时可编程位(第 9 位数据)由 SCON 中的 TB8 提供,可软件设置为 1 或 0,或者可
将 PSW 中的奇/偶校验位 P 值装入 TB8(TB8 既可作为多机通信中的地址数据标志位,又可作为数据的
奇偶校验位)
。接收时第 9 位数据装入 SCON 的 RB8。TxD 为发送端口,RxD 为接收端口,以全双工模
式进行接收/发送。
模式 3 和模式 1 相比,除发送时由 TB8 提供给移位寄存器第 9 数据位不同外,其余功能结构均基本
相同,其接收‘发送操作过程及时序也基本相同。
当接收器接收完一帧信息后必须同时满足下列条件:
·RI=0
·SM2=0 或者 SM2=1 且接收到的第 9 数据位 RB8=1。
当上述两条件同时满足时,才将接收到的移位寄存器的数据装入 SBUF 和 RB8 中,RI 标志位被置 1,
并向主机请求中断处理。如果上述条件有一个不满足,则刚接收到移位寄存器中的数据无效而丢失,也
不置位 RI。无论上述条件满足与否,接收器又重新开始检测 RxD 输入端口的跳变信息,接收下一帧的
输入信息。在模式 3 中,接收到的停止位与 SBUF、RB8 和 RI 无关。
通过软件对 SCON 中的 SM2、TB8 的设置以及通信协议的约定,为多机通信提供了方便。
写SBUF
TxD
Start
D0
D1
D2
D3
D4
D5
D6
D7
TB8
Stop
D6
D7
RB8
Stop
TI
发送数据(串口1模式3)
写SCON
RxD
REN=1,RI=0
Start
D0
D1
D2
D3
D4
D5
RI
接收数据(串口1模式3)
串口 1 模式 3 的波特率计算公式与模式 1 是完全相同的。请参考模式 1 的波特率计算公式。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 727 -
STC8G 系列技术手册
13.3.9
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
自动地址识别,从机地址控制寄存器(SADDR,SADEN)
符号
地址
SADDR
A9H
SADEN
B9H
B7
B6
B5
B4
B3
B2
B1
B0
SADDR:从机地址寄存器
SADEN:从机地址屏蔽位寄存器
自动地址识别功能典型应用在多机通讯领域,其主要原理是从机系统通过硬件比较功能来识别来自
于主机串口数据流中的地址信息,通过寄存器 SADDR 和 SADEN 设置的本机的从机地址,硬件自动对
从机地址进行过滤,当来自于主机的从机地址信息与本机所设置的从机地址相匹配时,硬件产生串口中
断;否则硬件自动丢弃串口数据,而不产生中断。当众多处于空闲模式的从机链接在一起时,只有从机
地址相匹配的从机才会从空闲模式唤醒,从而可以大大降低从机 MCU 的功耗,即使从机处于正常工作
状态也可避免不停地进入串口中断而降低系统执行效率。
要使用串口的自动地址识别功能,首先需要将参与通讯的 MCU 的串口通讯模式设置为模式 2 或者
模式 3(通常都选择波特率可变的模式 3,因为模式 2 的波特率是固定的,不便于调节),并开启从机的
SCON 的 SM2 位。对于串口模式 2 或者模式 3 的 9 位数据位中,第 9 位数据(存放在 RB8 中)为地址/
数据的标志位,当第 9 位数据为 1 时,表示前面的 8 位数据(存放在 SBUF 中)为地址信息。当 SM2
被设置为 1 时,从机 MCU 会自动过滤掉非地址数据(第 9 位为 0 的数据)
,而对 SBUF 中的地址数据(第
9 位为 1 的数据)自动与 SADDR 和 SADEN 所设置的本机地址进行比较,若地址相匹配,则会将 RI 置
“1”,并产生中断,否则不予处理本次接收的串口数据。
从机地址的设置是通过 SADDR 和 SADEN 两个寄存器进行设置的。SADDR 为从机地址寄存器,里
面存放本机的从机地址。SADEN 为从机地址屏蔽位寄存器,用于设置地址信息中的忽略位,设置方法
如下:
例如
SADDR =
11001010
SADEN =
10000001
则匹配地址为 1xxxxxx0
即,只要主机送出的地址数据中的 bit0 为 0 且 bit7 为 1 就可以和本机地址相匹配
再例如
SADDR =
11001010
SADEN =
00001111
则匹配地址为 xxxx1010
即,只要主机送出的地址数据中的低 4 位为 1010 就可以和本机地址相匹配,而高 4 为被忽略,可以
为任意值。
主机可以使用广播地址(FFH)同时选中所有的从机来进行通讯。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 728 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.4 串口 2
13.4.1 串口 2 控制寄存器(S2CON)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
S2CON
9AH
S2SM0
-
S2SM2
S2REN
S2TB8
S2RB8
S2TI
S2RI
S2SM0:指定串口2的通信工作模式,如下表所示:
S2SM0
串口2工作模式
功能说明
0
模式0
可变波特率8位数据方式
1
模式1
可变波特率9位数据方式
S2SM2:允许串口 2 在模式 1 时允许多机通信控制位。在模式 1 时,如果 S2SM2 位为 1 且 S2REN 位为
1,则接收机处于地址帧筛选状态。此时可以利用接收到的第 9 位(即 S2RB8)来筛选地址帧:
若 S2RB8=1,说明该帧是地址帧,地址信息可以进入 S2BUF,并使 S2RI 为 1,进而在中断服务
程序中再进行地址号比较;若 S2RB8=0,说明该帧不是地址帧,应丢掉且保持 S2RI=0。在模式 1
中,如果 S2SM2 位为 0 且 S2REN 位为 1,接收收机处于地址帧筛选被禁止状态。不论收到的 S2RB8
为 0 或 1,均可使接收到的信息进入 S2BUF,并使 S2RI=1,此时 S2RB8 通常为校验位。模式 0
为非多机通信方式,在这种方式时,要设置 S2SM2 应为 0。
S2REN:允许/禁止串口接收控制位
0:禁止串口接收数据
1:允许串口接收数据
S2TB8:当串口 2 使用模式 1 时,S2TB8 为要发送的第 9 位数据,一般用作校验位或者地址帧/数据帧标
志位,按需要由软件置位或清 0。在模式 0 中,该位不用。
S2RB8:当串口 2 使用模式 1 时,S2RB8 为接收到的第 9 位数据,一般用作校验位或者地址帧/数据帧标
志位。在模式 0 中,该位不用。
S2TI:串口 2 发送中断请求标志位。在停止位开始发送时由硬件自动将 S2TI 置 1,向 CPU 发请求中断,
响应中断后 S2TI 必须用软件清零。
S2RI:串口 2 接收中断请求标志位。串行接收到停止位的中间时刻由硬件自动将 S2RI 置 1,向 CPU 发
中断申请,响应中断后 S2RI 必须由软件清零。
13.4.2 串口 2 数据寄存器(S2BUF)
符号
地址
S2BUF
9BH
B7
B6
B5
B4
B3
B2
B1
B0
S2BUF:串口 1 数据接收/发送缓冲区。S2BUF 实际是 2 个缓冲器,读缓冲器和写缓冲器,两个操作分
别对应两个不同的寄存器,1 个是只写寄存器(写缓冲器),1 个是只读寄存器(读缓冲器)。对
S2BUF 进行读操作,实际是读取串口接收缓冲区,对 S2BUF 进行写操作则是触发串口开始发送
数据。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 729 -
STC8G 系列技术手册
13.4.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 2 模式 0,模式 0 波特率计算公式
串行口 2 的模式 0 为 8 位数据位可变波特率 UART 工作模式。此模式一帧信息为 10 位:1 位起始位,
8 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD2 为数据发送口,
RxD2 为数据接收口,串行口全双工接受/发送。
写S2BUF
TxD2
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
S2TI
发送数据(串口2模式0)
写S2CON
RxD2
S2REN=1, S2RI=0
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
S2RI
接收数据(串口2模式0)
串口 2 的波特率是可变的,其波特率由定时器 2 产生。当定时器采用 1T 模式时(12 倍速),相应的
波特率的速度也会相应提高 12 倍。
串口 2 模式 0 的波特率计算公式如下表所示:(SYSclk 为系统工作频率)
选择定时
定时器速
器
度
重装值计算公式
1T
定时器2重载值 = 65536 -
12T
定时器2重载值 = 65536 -
SYSclk
4×波特率
波特率
波特率 =
SYSclk
4 ×(65536 - 定时器重装数)
定时器2
SYSclk
12×4×波特率
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
波特率 =
SYSclk
12 × 4 ×(65536 - 定时器重装数)
技术交流及选型论坛:www.STCAIMCU.com - 730 -
STC8G 系列技术手册
13.4.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 2 模式 1,模式 1 波特率计算公式
串行口 2 的模式 1 为 9 位数据位可变波特率 UART 工作模式。此模式一帧信息为 11 位:1 位起始位,
9 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD2 为数据发送口,
RxD2 为数据接收口,串行口全双工接受/发送。
写S2BUF
TxD2
Start
D0
D1
D2
D3
D4
D5
D6
D7
TB8
Stop
D6
D7
RB8
Stop
S2TI
发送数据(串口2模式1)
写S2CON
RxD2
S2REN=1,S2RI=0
Start
D0
D1
D2
D3
D4
D5
S2RI
接收数据(串口2模式1)
串口 2 模式 1 的波特率计算公式与模式 0 是完全相同的。请参考模式 0 的波特率计算公式。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 731 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.5 串口 3
13.5.1 串口 3 控制寄存器(S3CON)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
S3CON
ACH
S3SM0
S3ST3
S3SM2
S3REN
S3TB8
S3RB8
S3TI
S3RI
S3SM0:指定串口3的通信工作模式,如下表所示:
S3SM0
串口3工作模式
功能说明
0
模式0
可变波特率8位数据方式
1
模式1
可变波特率9位数据方式
S3ST3:选择串口 3 的波特率发生器
0:选择定时器 2 为串口 3 的波特率发生器
1:选择定时器 3 为串口 3 的波特率发生器
S3SM2:允许串口 3 在模式 1 时允许多机通信控制位。在模式 1 时,如果 S3SM2 位为 1 且 S3REN 位为
1,则接收机处于地址帧筛选状态。此时可以利用接收到的第 9 位(即 S3RB8)来筛选地址帧:
若 S3RB8=1,说明该帧是地址帧,地址信息可以进入 S3BUF,并使 S3RI 为 1,进而在中断服务
程序中再进行地址号比较;若 S3RB8=0,说明该帧不是地址帧,应丢掉且保持 S3RI=0。在模式 1
中,如果 S3SM2 位为 0 且 S3REN 位为 1,接收收机处于地址帧筛选被禁止状态。不论收到的 S3RB8
为 0 或 1,均可使接收到的信息进入 S3BUF,并使 S3RI=1,此时 S3RB8 通常为校验位。模式 0
为非多机通信方式,在这种方式时,要设置 S3SM2 应为 0。
S3REN:允许/禁止串口接收控制位
0:禁止串口接收数据
1:允许串口接收数据
S3TB8:当串口 3 使用模式 1 时,S3TB8 为要发送的第 9 位数据,一般用作校验位或者地址帧/数据帧标
志位,按需要由软件置位或清 0。在模式 0 中,该位不用。
S3RB8:当串口 3 使用模式 1 时,S3RB8 为接收到的第 9 位数据,一般用作校验位或者地址帧/数据帧标
志位。在模式 0 中,该位不用。
S3TI:串口 3 发送中断请求标志位。在停止位开始发送时由硬件自动将 S3TI 置 1,向 CPU 发请求中断,
响应中断后 S3TI 必须用软件清零。
S3RI:串口 3 接收中断请求标志位。串行接收到停止位的中间时刻由硬件自动将 S3RI 置 1,向 CPU 发
中断申请,响应中断后 S3RI 必须由软件清零。
13.5.2 串口 3 数据寄存器(S3BUF)
符号
地址
S3BUF
ADH
B7
B6
B5
B4
B3
B2
B1
B0
S3BUF:串口 1 数据接收/发送缓冲区。S3BUF 实际是 2 个缓冲器,读缓冲器和写缓冲器,两个操作分
别对应两个不同的寄存器,1 个是只写寄存器(写缓冲器),1 个是只读寄存器(读缓冲器)。对
S3BUF 进行读操作,实际是读取串口接收缓冲区,对 S3BUF 进行写操作则是触发串口开始发送
数据。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 732 -
STC8G 系列技术手册
13.5.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 3 模式 0,模式 0 波特率计算公式
串行口 3 的模式 0 为 8 位数据位可变波特率 UART 工作模式。此模式一帧信息为 10 位:1 位起始位,
8 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD3 为数据发送口,
RxD3 为数据接收口,串行口全双工接受/发送。
写S3BUF
TxD3
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
S3TI
发送数据(串口3模式0)
写S3CON
RxD3
S3REN=1, S3RI=0
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
S3RI
接收数据(串口3模式0)
串口 3 的波特率是可变的,其波特率可由定时器 2 或定时器 3 产生。当定时器采用 1T 模式时(12
倍速),相应的波特率的速度也会相应提高 12 倍。
串口 3 模式 0 的波特率计算公式如下表所示:(SYSclk 为系统工作频率)
选择定时
定时器速
器
度
重装值计算公式
1T
定时器2重载值 = 65536 -
12T
定时器2重载值 = 65536 -
1T
定时器3重载值 = 65536 -
12T
定时器3重载值 = 65536 -
SYSclk
4×波特率
波特率
波特率 =
SYSclk
4 ×(65536 - 定时器重装数)
定时器2
SYSclk
12×4×波特率
SYSclk
4×波特率
波特率 =
SYSclk
12 × 4 ×(65536 - 定时器重装数)
波特率 =
SYSclk
4 ×(65536 - 定时器重装数)
定时器3
SYSclk
12×4×波特率
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
波特率 =
SYSclk
12 × 4 ×(65536 - 定时器重装数)
技术交流及选型论坛:www.STCAIMCU.com - 733 -
STC8G 系列技术手册
13.5.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 3 模式 1,模式 1 波特率计算公式
串行口 3 的模式 1 为 9 位数据位可变波特率 UART 工作模式。此模式一帧信息为 11 位:1 位起始位,
9 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD3 为数据发送口,
RxD3 为数据接收口,串行口全双工接受/发送。
写S3BUF
TxD3
Start
D0
D1
D2
D3
D4
D5
D6
D7
TB8
Stop
D6
D7
RB8
Stop
S3TI
发送数据(串口3模式1)
写S3CON
RxD3
S3REN=1,S3RI=0
Start
D0
D1
D2
D3
D4
D5
S3RI
接收数据(串口3模式1)
串口 3 模式 1 的波特率计算公式与模式 0 是完全相同的。请参考模式 0 的波特率计算公式。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 734 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.6 串口 4
13.6.1 串口 4 控制寄存器(S4CON)
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
S4CON
84H
S4SM0
S4ST4
S4SM2
S4REN
S4TB8
S4RB8
S4TI
S4RI
S4SM0:指定串口4的通信工作模式,如下表所示:
S4SM0
串口4工作模式
功能说明
0
模式0
可变波特率8位数据方式
1
模式1
可变波特率9位数据方式
S4ST4:选择串口 4 的波特率发生器
0:选择定时器 2 为串口 4 的波特率发生器
1:选择定时器 4 为串口 4 的波特率发生器
S4SM2:允许串口 4 在模式 1 时允许多机通信控制位。在模式 1 时,如果 S4SM2 位为 1 且 S4REN 位为
1,则接收机处于地址帧筛选状态。此时可以利用接收到的第 9 位(即 S4RB8)来筛选地址帧:
若 S4RB8=1,说明该帧是地址帧,地址信息可以进入 S4BUF,并使 S4RI 为 1,进而在中断服务
程序中再进行地址号比较;若 S4RB8=0,说明该帧不是地址帧,应丢掉且保持 S4RI=0。在模式 1
中,如果 S4SM2 位为 0 且 S4REN 位为 1,接收收机处于地址帧筛选被禁止状态。不论收到的 S4RB8
为 0 或 1,均可使接收到的信息进入 S4BUF,并使 S4RI=1,此时 S4RB8 通常为校验位。模式 0
为非多机通信方式,在这种方式时,要设置 S4SM2 应为 0。
S4REN:允许/禁止串口接收控制位
0:禁止串口接收数据
1:允许串口接收数据
S4TB8:当串口 4 使用模式 1 时,S4TB8 为要发送的第 9 位数据,一般用作校验位或者地址帧/数据帧标
志位,按需要由软件置位或清 0。在模式 0 中,该位不用。
S4RB8:当串口 4 使用模式 1 时,S4RB8 为接收到的第 9 位数据,一般用作校验位或者地址帧/数据帧标
志位。在模式 0 中,该位不用。
S4TI:串口 4 发送中断请求标志位。在停止位开始发送时由硬件自动将 S4TI 置 1,向 CPU 发请求中断,
响应中断后 S4TI 必须用软件清零。
S4RI:串口 4 接收中断请求标志位。串行接收到停止位的中间时刻由硬件自动将 S4RI 置 1,向 CPU 发
中断申请,响应中断后 S4RI 必须由软件清零。
13.6.2 串口 4 数据寄存器(S4BUF)
符号
地址
S4BUF
85H
B7
B6
B5
B4
B3
B2
B1
B0
S4BUF:串口 1 数据接收/发送缓冲区。S4BUF 实际是 2 个缓冲器,读缓冲器和写缓冲器,两个操作分
别对应两个不同的寄存器,1 个是只写寄存器(写缓冲器),1 个是只读寄存器(读缓冲器)。对
S4BUF 进行读操作,实际是读取串口接收缓冲区,对 S4BUF 进行写操作则是触发串口开始发送
数据。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 735 -
STC8G 系列技术手册
13.6.3
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 4 模式 0,模式 0 波特率计算公式
串行口 4 的模式 0 为 8 位数据位可变波特率 UART 工作模式。此模式一帧信息为 10 位:1 位起始位,
8 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD4 为数据发送口,
RxD4 为数据接收口,串行口全双工接受/发送。
写S4BUF
TxD4
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
S4TI
发送数据(串口4模式0)
写S4CON
RxD4
S4REN=1, S4RI=0
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
S4RI
接收数据(串口4模式0)
串口 4 的波特率是可变的,其波特率可由定时器 2 或定时器 4 产生。当定时器采用 1T 模式时(12
倍速),相应的波特率的速度也会相应提高 12 倍。
串口 4 模式 0 的波特率计算公式如下表所示:(SYSclk 为系统工作频率)
选择定时
定时器速
器
度
重装值计算公式
1T
定时器2重载值 = 65536 -
12T
定时器2重载值 = 65536 -
1T
定时器4重载值 = 65536 -
12T
定时器4重载值 = 65536 -
SYSclk
4×波特率
波特率
波特率 =
SYSclk
4 ×(65536 - 定时器重装数)
定时器2
SYSclk
12×4×波特率
SYSclk
4×波特率
波特率 =
SYSclk
12 × 4 ×(65536 - 定时器重装数)
波特率 =
SYSclk
4 ×(65536 - 定时器重装数)
定时器4
SYSclk
12×4×波特率
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
波特率 =
SYSclk
12 × 4 ×(65536 - 定时器重装数)
技术交流及选型论坛:www.STCAIMCU.com - 736 -
STC8G 系列技术手册
13.6.4
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口 4 模式 1,模式 1 波特率计算公式
串行口 4 的模式 1 为 9 位数据位可变波特率 UART 工作模式。此模式一帧信息为 11 位:1 位起始位,
9 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD4 为数据发送口,
RxD4 为数据接收口,串行口全双工接受/发送。
写S4BUF
TxD4
Start
D0
D1
D2
D3
D4
D5
D6
D7
TB8
Stop
D6
D7
RB8
Stop
S4TI
发送数据(串口4模式1)
写S4CON
RxD4
S4REN=1,S4RI=0
Start
D0
D1
D2
D3
D4
D5
S4RI
接收数据(串口4模式1)
串口 4 模式 1 的波特率计算公式与模式 0 是完全相同的。请参考模式 0 的波特率计算公式。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 737 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.7 串口注意事项
关于串口中断请求有如下问题需要注意:(串口 1、串口 2、串口 3、串口 4 均类似,下面以串口 1
为例进行说明)
8 位数据模式时,发送完成约 1/3 个停止位后产生 TI 中断请求,如下图所示:
写SBUF
TxD
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
TI
发送数据(8位数据)
8 位数据模式时,接收完成一半个停止位后产生 RI 中断请求,如下图所示:
写SCON
RxD
REN=1, RI=0
Start
D0
D1
D2
D3
D4
D5
D6
D7
Stop
RI
接收数据(8位数据)
9 位数据模式时,发送完成约 1/3 个停止位后产生 TI 中断请求:
写SBUF
TxD
Start
D0
D1
D2
D3
D4
D5
D6
D7
TB8
Stop
D7
RB8
Stop
TI
发送数据(9位数据)
9 位数据模式时,一半个停止位后产生 RI 中断请求,如下图所示:
写SCON
RxD
REN=1,RI=0
Start
D0
D1
D2
D3
D4
D5
D6
RI
接收数据(9位数据)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 738 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.8 AIapp-ISP | 串口波特率计算器工具
①:在下载软件中选择“串口波特率计算器”功能页,进入串口代码生成界面
②:设置系统工作频率(单位:MHz)
③:设置串口波特率
④:选择目标串口,并设置串口模式、波特率发生器等参数
⑤:手动生成 C 代码或者 ASM 代码,复制范例
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 739 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.9 AIapp-ISP | 串口助手/USB-CDC
串口助手主界面
①:在下载软件中选择“USB-CDC/串口助手”功能页,进入串口助手界面
②:选择接收数据的显示格式
③:保存/复制接收的数据
④:设置接收数据自动存储到文件
⑤:选择发送数据的格式
⑥:“多字符串”控制界面
⑦:数据/文件发送按钮
⑧:设置重复下载的周期
⑨:选择串口号,设置串口参数
⑩:设置 ISP 下载完成后是否自动打开串口
⑪:设置发送完成数据后,是否自动发送结束符
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 740 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
多字符串设置界面
①:鼠标右键点击“自动循环发送”按钮,点击右键菜单“设置…”进入多字符串设置界面
②:设置多字符串循环发送顺序
③:设置多字符串循环发送间隔时间
④:设置多字符串循环发送的起始编号
⑤:设置是否需要用箭头指示当前正在发送的字符串
⑥:多字符串导出到文件或从文件导入
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 741 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
串口助手更多设置
①:点击“更多设置”按钮,进入串口助手更多设置界面
②:设置接收缓存大小(缓存越大,软件反应越慢)
③:设置 HEX 接收数据每行显示的数据个数
④:设置接收数据的汉字编码格式
支持如下汉字编码格式:
ANSI:GB2312 汉字编码
UTF8:UNICODE 互联网常用编码
UTF16-LE:小端 UTF16 编码
UTF16=BE:大端 UTF16 编码
⑤:设置是否显示发送的数据
⑥:设置数据是否自动分包显示
⑦:设置界面的显示颜色
⑧:设置接收窗口数据显示的前导字符
⑨:设置接收数据的换行显示模式
⑩:设置接收窗口是否自动换行
⑪:设置发送数据是否自动追加校验数据
支持如下校验格式:
ADD8:字节校验和
ADD8N:字节校验和补码
ADD16-LE:小端双字节校验和
ADD16-BE:大端双字节校验和
XOR8:字节异或
CRC16-MODBUS:MODBUS 协议的 CRC16
CRC16-USB:USB 协议的 CRC16
CRC16-XMODEM:XMODEM 协议的 CRC16
CRC32:32 位 CRC 校验
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 742 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
⑫:设置是否使能终端模式(终端模式:将光标定位到接收窗口,按下键盘按键实时发送相应的键码)
⑬:进入流控制设置界面
⑭:进入多字符串界面设置界面
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 743 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.10 范例程序
13.10.1 串口 1 使用定时器 2 做波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
AUXR
T2H
T2L
=
=
=
0x8e;
0xd6;
0xd7;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
void UartIsr() interrupt 4
{
if (TI)
{
TI = 0;
busy = 0;
}
if (RI)
{
RI = 0;
buffer[wptr++] = SBUF;
wptr &= 0x0f;
}
}
void UartInit()
{
SCON = 0x50;
T2L = BRT;
T2H = BRT >> 8;
AUXR = 0x15;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 744 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void UartSend(char dat)
{
while (busy);
busy = 1;
SBUF = dat;
}
void UartSendStr(char *p)
{
while (*p)
{
UartSend(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
UartInit();
ES = 1;
EA = 1;
UartSendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
UartSend(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
T2H
T2L
DATA
DATA
DATA
8EH
0D6H
0D7H
BUSY
BIT
20H.0
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 745 -
STC8G 系列技术手册
官方网站: www.STCAI.com
WPTR
RPTR
BUFFER
DATA
DATA
DATA
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
JNB
CLR
CLR
TI,CHKRI
TI
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;16 bytes
UART_ISR:
CHKRI:
JNB
CLR
MOV
ANL
ADD
MOV
MOV
INC
UARTISR_EXIT:
POP
POP
RETI
RI,UARTISR_EXIT
RI
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,SBUF
WPTR
PSW
ACC
UART_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
SCON,#50H
T2L,#0E8H
T2H,#0FFH
AUXR,#15H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
BUSY,$
BUSY
;65536-11059200/115200/4=0FFE8H
UART_SEND:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 746 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
RET
UART_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SENDEND:
RET
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
SBUF,A
A
A,@A+DPTR
SENDEND
UART_SEND
DPTR
UART_SENDSTR
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
SETB
SETB
UART_INIT
ES
EA
MOV
LCALL
DPTR,#STRING
UART_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
LOOP:
STRING:
END
13.10.2 串口 1 使用定时器 1(模式 0)做波特率发生器
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 747 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
AUXR
=
0x8e;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
void UartIsr() interrupt 4
{
if (TI)
{
TI = 0;
busy = 0;
}
if (RI)
{
RI = 0;
buffer[wptr++] = SBUF;
wptr &= 0x0f;
}
}
void UartInit()
{
SCON = 0x50;
TMOD = 0x00;
TL1 = BRT;
TH1 = BRT >> 8;
TR1 = 1;
AUXR = 0x40;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void UartSend(char dat)
{
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 748 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
while (busy);
busy = 1;
SBUF = dat;
}
void UartSendStr(char *p)
{
while (*p)
{
UartSend(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
UartInit();
ES = 1;
EA = 1;
UartSendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
UartSend(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
DATA
8EH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
;16 bytes
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 749 -
STC8G 系列技术手册
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
JNB
CLR
CLR
TI,CHKRI
TI
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART_ISR:
CHKRI:
JNB
CLR
MOV
ANL
ADD
MOV
MOV
INC
UARTISR_EXIT:
POP
POP
RETI
RI,UARTISR_EXIT
RI
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,SBUF
WPTR
PSW
ACC
UART_INIT:
MOV
MOV
MOV
MOV
SETB
MOV
CLR
MOV
MOV
RET
SCON,#50H
TMOD,#00H
TL1,#0E8H
TH1,#0FFH
TR1
AUXR,#40H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
SBUF,A
;65536-11059200/115200/4=0FFE8H
UART_SEND:
UART_SENDSTR:
CLR
MOVC
JZ
A
A,@A+DPTR
SENDEND
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 750 -
STC8G 系列技术手册
官方网站: www.STCAI.com
LCALL
INC
JMP
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART_SEND
DPTR
UART_SENDSTR
SENDEND:
RET
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
SETB
SETB
UART_INIT
ES
EA
MOV
LCALL
DPTR,#STRING
UART_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
LOOP:
STRING:
END
13.10.3 串口 1 使用定时器 1(模式 2)做波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
FOSC
11059200UL
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 751 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
#define
BRT
(256 - FOSC / 115200 / 32)
sfr
AUXR
=
0x8e;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
研发顾问:13922829991
选型顾问: 13922805190
void UartIsr() interrupt 4
{
if (TI)
{
TI = 0;
busy = 0;
}
if (RI)
{
RI = 0;
buffer[wptr++] = SBUF;
wptr &= 0x0f;
}
}
void UartInit()
{
SCON = 0x50;
TMOD = 0x20;
TL1 = BRT;
TH1 = BRT;
TR1 = 1;
AUXR = 0x40;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void UartSend(char dat)
{
while (busy);
busy = 1;
SBUF = dat;
}
void UartSendStr(char *p)
{
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 752 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
while (*p)
{
UartSend(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
UartInit();
ES = 1;
EA = 1;
UartSendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
UartSend(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
DATA
8EH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
;16 bytes
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 753 -
STC8G 系列技术手册
官方网站: www.STCAI.com
ORG
LJMP
ORG
LJMP
0000H
MAIN
0023H
UART_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
JNB
CLR
CLR
TI,CHKRI
TI
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART_ISR:
CHKRI:
JNB
CLR
MOV
ANL
ADD
MOV
MOV
INC
UARTISR_EXIT:
POP
POP
RETI
RI,UARTISR_EXIT
RI
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,SBUF
WPTR
PSW
ACC
UART_INIT:
MOV
MOV
MOV
MOV
SETB
MOV
CLR
MOV
MOV
RET
SCON,#50H
TMOD,#20H
TL1,#0FDH
TH1,#0FDH
TR1
AUXR,#40H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
SBUF,A
;256-11059200/115200/32=0FDH
UART_SEND:
UART_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SENDEND:
RET
A
A,@A+DPTR
SENDEND
UART_SEND
DPTR
UART_SENDSTR
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 754 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
SETB
SETB
UART_INIT
ES
EA
MOV
LCALL
DPTR,#STRING
UART_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
研发顾问:13922829991
选型顾问: 13922805190
LOOP:
STRING:
END
13.10.4 串口 2 使用定时器 2 做波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
AUXR
T2H
T2L
S2CON
S2BUF
=
=
=
=
=
0x8e;
0xd6;
0xd7;
0x9a;
0x9b;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 755 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
IE2
=
0xaf;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void Uart2Isr() interrupt 8
{
if (S2CON & 0x02)
{
S2CON &= ~0x02;
busy = 0;
}
if (S2CON & 0x01)
{
S2CON &= ~0x01;
buffer[wptr++] = S2BUF;
wptr &= 0x0f;
}
}
void Uart2Init()
{
S2CON = 0x10;
T2L = BRT;
T2H = BRT >> 8;
AUXR = 0x14;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void Uart2Send(char dat)
{
while (busy);
busy = 1;
S2BUF = dat;
}
void Uart2SendStr(char *p)
{
while (*p)
{
Uart2Send(*p++);
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 756 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart2Init();
IE2 = 0x01;
EA = 1;
Uart2SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart2Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
T2H
T2L
S2CON
S2BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
8EH
0D6H
0D7H
9AH
9BH
0AFH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
;16 bytes
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 757 -
STC8G 系列技术手册
P5M0
官方网站: www.STCAI.com
DATA
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0043H
UART2_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
JNB
ANL
CLR
A,S2CON
ACC.1,CHKRI
S2CON,#NOT 02H
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART2_ISR:
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART2ISR_EXIT:
POP
POP
RETI
ACC.0,UART2ISR_EXIT
S2CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S2BUF
WPTR
PSW
ACC
UART2_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S2CON,#10H
T2L,#0E8H
T2H,#0FFH
AUXR,#14H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
S2BUF,A
;65536-11059200/115200/4=0FFE8H
UART2_SEND:
UART2_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SEND2END:
RET
A
A,@A+DPTR
SEND2END
UART2_SEND
DPTR
UART2_SENDSTR
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 758 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
SETB
UART2_INIT
IE2,#01H
EA
MOV
LCALL
DPTR,#STRING
UART2_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART2_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
研发顾问:13922829991
选型顾问: 13922805190
LOOP:
STRING:
END
13.10.5 串口 3 使用定时器 2 做波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
AUXR
T2H
T2L
S3CON
S3BUF
=
=
=
=
=
0x8e;
0xd6;
0xd7;
0xac;
0xad;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 759 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
IE2
=
0xaf;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void Uart3Isr() interrupt 17
{
if (S3CON & 0x02)
{
S3CON &= ~0x02;
busy = 0;
}
if (S3CON & 0x01)
{
S3CON &= ~0x01;
buffer[wptr++] = S3BUF;
wptr &= 0x0f;
}
}
void Uart3Init()
{
S3CON = 0x10;
T2L = BRT;
T2H = BRT >> 8;
AUXR = 0x14;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void Uart3Send(char dat)
{
while (busy);
busy = 1;
S3BUF = dat;
}
void Uart3SendStr(char *p)
{
while (*p)
{
Uart3Send(*p++);
}
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 760 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart3Init();
IE2 = 0x08;
EA = 1;
Uart3SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart3Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
T2H
T2L
S3CON
S3BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
8EH
0D6H
0D7H
0ACH
0ADH
0AFH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
;16 bytes
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 761 -
STC8G 系列技术手册
P5M0
官方网站: www.STCAI.com
DATA
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
008BH
UART3_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
JNB
ANL
CLR
A,S3CON
ACC.1,CHKRI
S3CON,#NOT 02H
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART3_ISR:
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART3ISR_EXIT:
POP
POP
RETI
ACC.0,UART3ISR_EXIT
S3CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S3BUF
WPTR
PSW
ACC
UART3_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S3CON,#10H
T2L,#0E8H
T2H,#0FFH
AUXR,#14H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
S3BUF,A
;65536-11059200/115200/4=0FFE8H
UART3_SEND:
UART3_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SEND3END:
RET
A
A,@A+DPTR
SEND3END
UART3_SEND
DPTR
UART3_SENDSTR
MAIN:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 762 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
SETB
UART3_INIT
IE2,#08H
EA
MOV
LCALL
DPTR,#STRING
UART3_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART3_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
研发顾问:13922829991
选型顾问: 13922805190
LOOP:
STRING:
END
13.10.6 串口 3 使用定时器 3 做波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
T4T3M
T4L
T4H
T3L
T3H
=
=
=
=
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 763 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sfr
sfr
sfr
sfr
sfr
T2L
T2H
S3CON
S3BUF
IE2
=
=
=
=
=
0xd7;
0xd6;
0xac;
0xad;
0xaf;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void Uart3Isr() interrupt 17
{
if (S3CON & 0x02)
{
S3CON &= ~0x02;
busy = 0;
}
if (S3CON & 0x01)
{
S3CON &= ~0x01;
buffer[wptr++] = S3BUF;
wptr &= 0x0f;
}
}
void Uart3Init()
{
S3CON = 0x50;
T3L = BRT;
T3H = BRT >> 8;
T4T3M = 0x0a;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void Uart3Send(char dat)
{
while (busy);
busy = 1;
S3BUF = dat;
}
void Uart3SendStr(char *p)
{
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 764 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
while (*p)
{
Uart3Send(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart3Init();
IE2 = 0x08;
EA = 1;
Uart3SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart3Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
S3CON
S3BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0D1H
0D3H
0D2H
0D5H
0D4H
0D7H
0D6H
0ACH
0ADH
0AFH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
DATA
DATA
DATA
093H
094H
091H
;16 bytes
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 765 -
STC8G 系列技术手册
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
008BH
UART3_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
JNB
ANL
CLR
A,S3CON
ACC.1,CHKRI
S3CON,#NOT 02H
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART3_ISR:
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART3ISR_EXIT:
POP
POP
RETI
ACC.0,UART3ISR_EXIT
S3CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S3BUF
WPTR
PSW
ACC
UART3_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S3CON,#50H
T3L,#0E8H
T3H,#0FFH
T4T3M,#0AH
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
S3BUF,A
;65536-11059200/115200/4=0FFE8H
UART3_SEND:
UART3_SENDSTR:
CLR
MOVC
A
A,@A+DPTR
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 766 -
STC8G 系列技术手册
官方网站: www.STCAI.com
JZ
LCALL
INC
JMP
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
SEND3END
UART3_SEND
DPTR
UART3_SENDSTR
SEND3END:
RET
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
SETB
UART3_INIT
IE2,#08H
EA
MOV
LCALL
DPTR,#STRING
UART3_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART3_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
LOOP:
STRING:
END
13.10.7 串口 4 使用定时器 2 做波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 767 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
sfr
AUXR
T2H
T2L
S4CON
S4BUF
IE2
=
=
=
=
=
=
0x8e;
0xd6;
0xd7;
0x84;
0x85;
0xaf;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
研发顾问:13922829991
选型顾问: 13922805190
void Uart4Isr() interrupt 18
{
if (S4CON & 0x02)
{
S4CON &= ~0x02;
busy = 0;
}
if (S4CON & 0x01)
{
S4CON &= ~0x01;
buffer[wptr++] = S4BUF;
wptr &= 0x0f;
}
}
void Uart4Init()
{
S4CON = 0x10;
T2L = BRT;
T2H = BRT >> 8;
AUXR = 0x14;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void Uart4Send(char dat)
{
while (busy);
busy = 1;
S4BUF = dat;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 768 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
}
void Uart4SendStr(char *p)
{
while (*p)
{
Uart4Send(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart4Init();
IE2 = 0x10;
EA = 1;
Uart4SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart4Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
T2H
T2L
S4CON
S4BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
8EH
0D6H
0D7H
84H
85H
0AFH
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
DATA
DATA
DATA
093H
094H
091H
;16 bytes
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 769 -
STC8G 系列技术手册
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
官方网站: www.STCAI.com
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0093H
UART4_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
JNB
ANL
CLR
A,S4CON
ACC.1,CHKRI
S4CON,#NOT 02H
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART4_ISR:
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART4ISR_EXIT:
POP
POP
RETI
ACC.0,UART4ISR_EXIT
S4CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S4BUF
WPTR
PSW
ACC
UART4_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S4CON,#10H
T2L,#0E8H
T2H,#0FFH
AUXR,#14H
BUSY
WPTR,#00H
RPTR,#00H
JB
SETB
MOV
RET
BUSY,$
BUSY
S4BUF,A
;65536-11059200/115200/4=0FFE8H
UART4_SEND:
UART4_SENDSTR:
CLR
MOVC
A
A,@A+DPTR
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 770 -
STC8G 系列技术手册
官方网站: www.STCAI.com
JZ
LCALL
INC
JMP
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
SEND4END
UART4_SEND
DPTR
UART4_SENDSTR
SEND4END:
RET
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
SETB
UART4_INIT
IE2,#10H
EA
MOV
LCALL
DPTR,#STRING
UART4_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART4_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
LOOP:
STRING:
END
13.10.8 串口 4 使用定时器 4 做波特率发生器
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 771 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
S4CON
S4BUF
IE2
=
=
=
=
=
=
=
=
=
=
0xd1;
0xd3;
0xd2;
0xd5;
0xd4;
0xd7;
0xd6;
0x84;
0x85;
0xaf;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
bit
char
char
char
busy;
wptr;
rptr;
buffer[16];
研发顾问:13922829991
选型顾问: 13922805190
void Uart4Isr() interrupt 18
{
if (S4CON & 0x02)
{
S4CON &= ~0x02;
busy = 0;
}
if (S4CON & 0x01)
{
S4CON &= ~0x01;
buffer[wptr++] = S4BUF;
wptr &= 0x0f;
}
}
void Uart4Init()
{
S4CON = 0x50;
T4L = BRT;
T4H = BRT >> 8;
T4T3M = 0xa0;
wptr = 0x00;
rptr = 0x00;
busy = 0;
}
void Uart4Send(char dat)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 772 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
{
while (busy);
busy = 1;
S4BUF = dat;
}
void Uart4SendStr(char *p)
{
while (*p)
{
Uart4Send(*p++);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
Uart4Init();
IE2 = 0x10;
EA = 1;
Uart4SendStr(“Uart Test !\r\n”);
while (1)
{
if (rptr != wptr)
{
Uart4Send(buffer[rptr++]);
rptr &= 0x0f;
}
}
}
汇编代码
;测试工作频率为 11.0592MHz
T4T3M
T4L
T4H
T3L
T3H
T2L
T2H
S4CON
S4BUF
IE2
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0D1H
0D3H
0D2H
0D5H
0D4H
0D7H
0D6H
84H
85H
0AFH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 773 -
STC8G 系列技术手册
官方网站: www.STCAI.com
BUSY
WPTR
RPTR
BUFFER
BIT
DATA
DATA
DATA
20H.0
21H
22H
23H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
ORG
LJMP
0000H
MAIN
0093H
UART4_ISR
ORG
0100H
PUSH
PUSH
MOV
ACC
PSW
PSW,#08H
MOV
JNB
ANL
CLR
A,S4CON
ACC.1,CHKRI
S4CON,#NOT 02H
BUSY
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;16 bytes
UART4_ISR:
CHKRI:
JNB
ANL
MOV
ANL
ADD
MOV
MOV
INC
UART4ISR_EXIT:
POP
POP
RETI
ACC.0,UART4ISR_EXIT
S4CON,#NOT 01H
A,WPTR
A,#0FH
A,#BUFFER
R0,A
@R0,S4BUF
WPTR
PSW
ACC
UART4_INIT:
MOV
MOV
MOV
MOV
CLR
MOV
MOV
RET
S4CON,#50H
T4L,#0E8H
T4H,#0FFH
T4T3M,#0A0H
BUSY
WPTR,#00H
RPTR,#00H
;65536-11059200/115200/4=0FFE8H
UART4_SEND:
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 774 -
STC8G 系列技术手册
官方网站: www.STCAI.com
JB
SETB
MOV
RET
UART4_SENDSTR:
CLR
MOVC
JZ
LCALL
INC
JMP
SEND4END:
RET
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
BUSY,$
BUSY
S4BUF,A
A
A,@A+DPTR
SEND4END
UART4_SEND
DPTR
UART4_SENDSTR
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
SETB
UART4_INIT
IE2,#10H
EA
MOV
LCALL
DPTR,#STRING
UART4_SENDSTR
MOV
XRL
ANL
JZ
MOV
ANL
ADD
MOV
MOV
LCALL
INC
JMP
A,RPTR
A,WPTR
A,#0FH
LOOP
A,RPTR
A,#0FH
A,#BUFFER
R0,A
A,@R0
UART4_SEND
RPTR
LOOP
DB
'Uart Test !',0DH,0AH,00H
LOOP:
STRING:
END
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 775 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.10.9 串口多机通讯
现参考 STC15 系列数据手册,后续补充
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 776 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
13.10.10 串口转 LIN 总线
C 语言代码
//测试工作频率为 22.1184MHz
/************* 功能说明
**************
本例程基于 STC8H8K64U 为主控芯片的实验箱 8 进行编写测试,STC8G、STC8H 系列芯片可通用参考.
通过 UART 接口连接 LIN 收发器实现 LIN 总线信号收发测试例程.
UART1 通过串口工具连接电脑.
UART2 外接 LIN 收发器(TJA1020/1), 连接 LIN 总线.
将电脑串口发送的数据转发到 LIN 总线; 从 LIN 总线接收到的数据转发到电脑串口.
默认传输速率:9600 波特率,发送 LIN 数据前切换波特率,发送 13 个显性间隔信号.
下载时, 选择时钟 22.1184MHz (用户可自行修改频率).
******************************************/
#include "reg51.h"
#include "intrins.h"
#define
MAIN_Fosc
22118400L
typedef
typedef
typedef
unsigned char
unsigned int
unsigned long
u8;
u16;
u32;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
AUXR
S2CON
S2BUF
TH2
TL2
IE2
INTCLKO
P_SW1
P_SW2
=
=
=
=
=
=
=
=
=
0x8E;
0x9A;
0x9B;
0xD6;
0xD7;
0xAF;
0x8F;
0xA2;
0xBA;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P4
P5
P6
P7
P1M1
P1M0
P0M1
P0M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
P6M1
P6M0
P7M1
P7M0
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
0xC0;
0xC8;
0xE8;
0xF8;
0x91;
0x92;
0x93;
0x94;
0x95;
0x96;
0xB1;
0xB2;
0xB3;
0xB4;
0xC9;
0xCA;
0xCB;
0xCC;
0xE1;
0xE2;
sbit
sbit
P00
P01
=
=
P0^0;
P0^1;
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 777 -
STC8G 系列技术手册
官方网站: www.STCAI.com
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
sbit
P02
P03
P04
P05
P06
P07
P10
P11
P12
P13
P14
P15
P16
P17
P20
P21
P22
P23
P24
P25
P26
P27
P30
P31
P32
P33
P34
P35
P36
P37
P40
P41
P42
P43
P44
P45
P46
P47
P50
P51
P52
P53
P54
P55
P56
P57
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P0^2;
P0^3;
P0^4;
P0^5;
P0^6;
P0^7;
P1^0;
P1^1;
P1^2;
P1^3;
P1^4;
P1^5;
P1^6;
P1^7;
P2^0;
P2^1;
P2^2;
P2^3;
P2^4;
P2^5;
P2^6;
P2^7;
P3^0;
P3^1;
P3^2;
P3^3;
P3^4;
P3^5;
P3^6;
P3^7;
P4^0;
P4^1;
P4^2;
P4^3;
P4^4;
P4^5;
P4^6;
P4^7;
P5^0;
P5^1;
P5^2;
P5^3;
P5^4;
P5^5;
P5^6;
P5^7;
sbit
SLP_N
=
P2^4;
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//0: Sleep
/****************************** 用户定义宏 ***********************************/
#define
#define
Baudrate1
Baudrate2
(65536UL - (MAIN_Fosc / 4) / 9600UL)
(65536UL - (MAIN_Fosc / 4) / 9600UL)
#define
Baudrate_Break
(65536UL - (MAIN_Fosc / 4) / 6647UL)
#define
#define
UART1_BUF_LENGTH
UART2_BUF_LENGTH
//发送显性间隔信号波特率
32
32
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 778 -
STC8G 系列技术手册
#define
官方网站: www.STCAI.com
LIN_ID
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
0x31
u8 TX1_Cnt;
u8 RX1_Cnt;
u8 TX2_Cnt;
u8 RX2_Cnt;
bit B_TX1_Busy;
bit B_TX2_Busy;
u8 RX1_TimeOut;
u8 RX2_TimeOut;
//发送计数
//接收计数
//发送计数
//接收计数
//发送忙标志
//发送忙标志
u8 xdata RX1_Buffer[UART1_BUF_LENGTH];
u8 xdata RX2_Buffer[UART2_BUF_LENGTH];
//接收缓冲
//接收缓冲
void UART1_config(u8 brt);
void UART2_config(u8 brt);
void PrintString1(u8 *puts);
void delay_ms(u8 ms);
void UART1_TxByte(u8 dat);
void UART2_TxByte(u8 dat);
void Lin_Send(u8 *puts);
void SetTimer2Baudraye(u16 dat);
//========================================================================
// 函数: void main(void)
// 描述: 主函数。
// 参数: none.
// 返回: none.
// 版本: VER1.0
// 备注:
//========================================================================
void main(void)
{
u8 i;
P0M1 = 0; P0M0 = 0;
P1M1 = 0; P1M0 = 0;
P2M1 = 0; P2M0 = 0;
P3M1 = 0; P3M0 = 0;
P4M1 = 0; P4M0 = 0;
P5M1 = 0; P5M0 = 0;
P6M1 = 0; P6M0 = 0;
P7M1 = 0; P7M0 = 0;
UART1_config(1);
UART2_config(2);
EA = 1;
SLP_N = 1;
//设置为准双向口
//设置为准双向口
//设置为准双向口
//设置为准双向口
//设置为准双向口
//设置为准双向口
//设置为准双向口
//设置为准双向口
//允许全局中断
PrintString1("STC8H8K64U UART1 Test Programme!\r\n"); //UART1 发送一个字符串
while (1)
{
delay_ms(1);
if(RX1_TimeOut > 0)
{
if(--RX1_TimeOut == 0)
{
if(RX1_Cnt > 0)
//超时,则串口接收结束
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 779 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
{
Lin_Send(RX1_Buffer);
}
RX1_Cnt = 0;
//将 UART1 收到的数据发送到 LIN 总线上
}
}
if(RX2_TimeOut > 0)
{
if(--RX2_TimeOut == 0)
//超时,则串口接收结束
{
if(RX2_Cnt > 0)
{
for (i=0; I < RX2_Cnt; i++)
//遇到停止符 0 结束
{
UART1_TxByte(RX2_Buffer[i]); //从 LIN 总线收到的数据发送到 UART1
}
}
RX2_Cnt = 0;
}
}
}
}
//========================================================================
// 函数: void delay_ms(unsigned char ms)
// 描述: 延时函数。
// 参数: ms,要延时的 ms 数, 这里只支持 1~255ms. 自动适应主时钟.
// 返回: none.
// 版本: VER1.0
// 备注:
//========================================================================
void delay_ms(u8 ms)
{
u16 i;
do{
i = MAIN_Fosc / 10000;
while(--i);
//10T per loop
}while(--ms);
}
//========================================================================
// 函数: u8
Lin_CheckPID(u8
id)
// 描述: ID 码加上校验符,转成 PID 码。
// 参数: ID 码.
// 返回: PID 码.
// 版本: VER1.0
// 备注:
//========================================================================
u8 Lin_CheckPID(u8 id)
{
u8 returnpid ;
u8 P0 ;
u8 P1 ;
P0 = (((id)^(id>>1)^(id>>2)^(id>>4))&0x01)1)^(id>>3)^(id>>4)^(id>>5)))&0x01) 8;
IAP_TRIG = 0x5a;
IAP_TRIG = 0xa5;
_nop_();
IapIdle();
}
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
//STC8G1K08
//关闭 IAP 功能
//清除命令寄存器
//清除触发寄存器
//将地址设置到非 IAP 区域
//使用 MOVC 读取 EEPROM 需要加上相应的偏移
//使用 MOVC 读取数据
//使能 IAP
//设置等待参数 12MHz
//设置 IAP 写命令
//设置 IAP 低地址
//设置 IAP 高地址
//写 IAP 数据
//写触发命令(0x5a)
//写触发命令(0xa5)
//关闭 IAP 功能
//使能 IAP
//设置等待参数 12MHz
//设置 IAP 擦除命令
//设置 IAP 低地址
//设置 IAP 高地址
//写触发命令(0x5a)
//写触发命令(0xa5)
//
//关闭 IAP 功能
void main()
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 813 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
IapErase(0x0400);
P0 = IapRead(0x0400);
IapProgram(0x0400, 0x12);
P1 = IapRead(0x0400);
//P0=0xff
//P1=0x12
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
IAP_DATA
IAP_ADDRH
IAP_ADDRL
IAP_CMD
IAP_TRIG
IAP_CONTR
IAP_TPS
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0C2H
0C3H
0C4H
0C5H
0C6H
0C7H
0F5H
IAP_OFFSET EQU
2000H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
MOV
MOV
MOV
MOV
IAP_CONTR,#0
IAP_CMD,#0
IAP_TRIG,#0
IAP_ADDRH,#80H
;STC8G1K08
IAP_IDLE:
;关闭 IAP 功能
;清除命令寄存器
;清除触发寄存器
;将地址设置到非 IAP 区域
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 814 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
MOV
RET
IAP_ADDRL,#0
MOV
ADD
MOV
MOV
ADDC
MOV
CLR
MOVC
RET
A,#LOW IAP_OFFSET
A,DPL
DPL,A
A,#HIGH IAP_OFFSET
A,DPH
DPH,A
A
A,@A+DPTR
;使用 MOVC 读取 EEPROM 需要加上相应的偏移
IAP_CONTR,#80H
IAP_TPS,#12
IAP_CMD,#2
IAP_ADDRL,DPL
IAP_ADDRH,DPH
IAP_DATA,A
IAP_TRIG,#5AH
IAP_TRIG,#0A5H
;使能 IAP
;设置等待参数 12MHz
;设置 IAP 写命令
;设置 IAP 低地址
;设置 IAP 高地址
;写 IAP 数据
;写触发命令(0x5a)
;写触发命令(0xa5)
IAP_IDLE
;关闭 IAP 功能
MOV
MOV
MOV
MOV
MOV
MOV
MOV
NOP
LCALL
RET
IAP_CONTR,#80H
IAP_TPS,#12
IAP_CMD,#3
IAP_ADDRL,DPL
IAP_ADDRH,DPH
IAP_TRIG,#5AH
IAP_TRIG,#0A5H
;使能 IAP
;设置等待参数 12MHz
;设置 IAP 擦除命令
;设置 IAP 低地址
;设置 IAP 高地址
;写触发命令(0x5a)
;写触发命令(0xa5)
IAP_IDLE
;关闭 IAP 功能
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
MOV
LCALL
MOV
LCALL
MOV
DPTR,#0400H
IAP_ERASE
DPTR,#0400H
IAP_READ
P0,A
IAP_READ:
IAP_PROGRAM:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
NOP
LCALL
RET
;使用 MOVC 读取数据
IAP_ERASE:
MAIN:
;P0=0FFH
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 815 -
STC8G 系列技术手册
官方网站: www.STCAI.com
MOV
MOV
LCALL
MOV
LCALL
MOV
DPTR,#0400H
A,#12H
IAP_PROGRAM
DPTR,#0400H
IAP_READ
P1,A
SJMP
$
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
;P1=12H
END
使用串口送出 EEPROM 数据
15.4.3
C 语言代码
//测试工作频率为 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define
#define
FOSC
BRT
11059200UL
(65536 - FOSC / 115200 / 4)
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sfr
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
=
=
=
=
=
=
=
=
=
=
=
=
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
sfr
sfr
sfr
AUXR
T2H
T2L
=
=
=
0x8e;
0xd6;
0xd7;
sfr
sfr
sfr
sfr
sfr
sfr
sfr
IAP_DATA
IAP_ADDRH
IAP_ADDRL
IAP_CMD
IAP_TRIG
IAP_CONTR
IAP_TPS
=
=
=
=
=
=
=
0xC2;
0xC3;
0xC4;
0xC5;
0xC6;
0xC7;
0xF5;
void UartInit()
{
SCON = 0x5a;
T2L = BRT;
T2H = BRT >> 8;
AUXR = 0x15;
}
void UartSend(char dat)
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 816 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
{
while (!TI);
TI = 0;
SBUF = dat;
}
void IapIdle()
{
IAP_CONTR = 0;
IAP_CMD = 0;
IAP_TRIG = 0;
IAP_ADDRH = 0x80;
IAP_ADDRL = 0;
}
//关闭 IAP 功能
//清除命令寄存器
//清除触发寄存器
//将地址设置到非 IAP 区域
char IapRead(int addr)
{
char dat;
IAP_CONTR = 0x80;
IAP_TPS = 12;
IAP_CMD = 1;
IAP_ADDRL = addr;
IAP_ADDRH = addr >> 8;
IAP_TRIG = 0x5a;
IAP_TRIG = 0xa5;
_nop_();
dat = IAP_DATA;
IapIdle();
//使能 IAP
//设置等待参数 12MHz
//设置 IAP 读命令
//设置 IAP 低地址
//设置 IAP 高地址
//写触发命令(0x5a)
//写触发命令(0xa5)
//读 IAP 数据
//关闭 IAP 功能
return dat;
}
void IapProgram(int addr, char dat)
{
IAP_CONTR = 0x80;
IAP_TPS = 12;
IAP_CMD = 2;
IAP_ADDRL = addr;
IAP_ADDRH = addr >> 8;
IAP_DATA = dat;
IAP_TRIG = 0x5a;
IAP_TRIG = 0xa5;
_nop_();
IapIdle();
}
void IapErase(int addr)
{
IAP_CONTR = 0x80;
IAP_TPS = 12;
IAP_CMD = 3;
IAP_ADDRL = addr;
IAP_ADDRH = addr >> 8;
IAP_TRIG = 0x5a;
IAP_TRIG = 0xa5;
_nop_();
IapIdle();
}
//使能 IAP
//设置等待参数 12MHz
//设置 IAP 写命令
//设置 IAP 低地址
//设置 IAP 高地址
//写 IAP 数据
//写触发命令(0x5a)
//写触发命令(0xa5)
//关闭 IAP 功能
//使能 IAP
//设置等待参数 12MHz
//设置 IAP 擦除命令
//设置 IAP 低地址
//设置 IAP 高地址
//写触发命令(0x5a)
//写触发命令(0xa5)
//
//关闭 IAP 功能
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 817 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
UartInit();
IapErase(0x0400);
UartSend(IapRead(0x0400));
IapProgram(0x0400, 0x12);
UartSend(IapRead(0x0400));
while (1);
}
汇编代码
;测试工作频率为 11.0592MHz
AUXR
T2H
T2L
DATA
DATA
DATA
8EH
0D6H
0D7H
IAP_DATA
IAP_ADDRH
IAP_ADDRL
IAP_CMD
IAP_TRIG
IAP_CONTR
IAP_TPS
DATA
DATA
DATA
DATA
DATA
DATA
DATA
0C2H
0C3H
0C4H
0C5H
0C6H
0C7H
0F5H
P0M1
P0M0
P1M1
P1M0
P2M1
P2M0
P3M1
P3M0
P4M1
P4M0
P5M1
P5M0
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
DATA
093H
094H
091H
092H
095H
096H
0B1H
0B2H
0B3H
0B4H
0C9H
0CAH
ORG
LJMP
0000H
MAIN
ORG
0100H
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 818 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
UART_INIT:
MOV
MOV
MOV
MOV
RET
SCON,#5AH
T2L,#0E8H
T2H,#0FFH
AUXR,#15H
JNB
CLR
MOV
RET
TI,$
TI
SBUF,A
MOV
MOV
MOV
MOV
MOV
RET
IAP_CONTR,#0
IAP_CMD,#0
IAP_TRIG,#0
IAP_ADDRH,#80H
IAP_ADDRL,#0
;关闭 IAP 功能
;清除命令寄存器
;清除触发寄存器
;将地址设置到非 IAP 区域
MOV
MOV
MOV
MOV
MOV
MOV
MOV
NOP
MOV
LCALL
RET
IAP_CONTR,#80H
IAP_TPS,#12
IAP_CMD,#1
IAP_ADDRL,DPL
IAP_ADDRH,DPH
IAP_TRIG,#5AH
IAP_TRIG,#0A5H
;使能 IAP
;设置等待参数 12MHz
;设置 IAP 读命令
;设置 IAP 低地址
;设置 IAP 高地址
;写触发命令(0x5a)
;写触发命令(0xa5)
A,IAP_DATA
IAP_IDLE
;读取 IAP 数据
;关闭 IAP 功能
IAP_CONTR,#80H
IAP_TPS,#12
IAP_CMD,#2
IAP_ADDRL,DPL
IAP_ADDRH,DPH
IAP_DATA,A
IAP_TRIG,#5AH
IAP_TRIG,#0A5H
;使能 IAP
;设置等待参数 12MHz
;设置 IAP 写命令
;设置 IAP 低地址
;设置 IAP 高地址
;写 IAP 数据
;写触发命令(0x5a)
;写触发命令(0xa5)
IAP_IDLE
;关闭 IAP 功能
IAP_CONTR,#80H
IAP_TPS,#12
IAP_CMD,#3
IAP_ADDRL,DPL
IAP_ADDRH,DPH
IAP_TRIG,#5AH
IAP_TRIG,#0A5H
;使能 IAP
;设置等待参数 12MHz
;设置 IAP 擦除命令
;设置 IAP 低地址
;设置 IAP 高地址
;写触发命令(0x5a)
;写触发命令(0xa5)
IAP_IDLE
;关闭 IAP 功能
;65536-11059200/115200/4=0FFE8H
UART_SEND:
IAP_IDLE:
IAP_READ:
IAP_PROGRAM:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
NOP
LCALL
RET
IAP_ERASE:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
NOP
LCALL
RET
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 819 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
MAIN:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
SP, #5FH
P0M0, #00H
P0M1, #00H
P1M0, #00H
P1M1, #00H
P2M0, #00H
P2M1, #00H
P3M0, #00H
P3M1, #00H
P4M0, #00H
P4M1, #00H
P5M0, #00H
P5M1, #00H
LCALL
MOV
LCALL
MOV
LCALL
LCALL
MOV
MOV
LCALL
MOV
LCALL
LCALL
UART_INIT
DPTR,#0400H
IAP_ERASE
DPTR,#0400H
IAP_READ
UART_SEND
DPTR,#0400H
A,#12H
IAP_PROGRAM
DPTR,#0400H
IAP_READ
UART_SEND
SJMP
$
END
15.4.4
串口 1 读写 EEPROM-带 MOVC 读
C 语言代码(main.c)
//测试工作频率为 11.0592MHz
/*
本程序经过测试完全正常, 不提供电话技术支持, 如不能理解, 请自行补充相关基础. */
/************* 本程序功能说明
**************
STC8G 系列 EEPROM 通用测试程序.
请先别修改程序, 直接下载测试. 下载时选择主频 11.0592MHZ.
PC 串口设置: 波特率 115200,8,n,1.
对 EEPROM 做扇区擦除、写入 64 字节、读出 64 字节的操作。
命令例子:
E0
对 EEPROM 进行扇区擦除操作,E 表示擦除, 数字 0 为 0 扇区(十进制, 0~126, 看具体 IC).
W0
对 EEPROM 进行写入操作,W 表示写入, 数字 0 为 0 扇区(十进制, 0~126, 看具体 IC). 从扇区的开始地址连续
写 64 字节.
R0
对 EEPROM 进行 IAP 读出操作,R 表示读出, 数字 0 为 0 扇区(十进制, 0~126, 看具体 IC). 从扇区的开始地址连
续读 64 字节.
M0
对 EEPROM 进行 MOVC 读出操作(操作地址为扇区*512+偏移地址),数字 0 为 0 扇区(十进制, 0~126, 看具体 IC).
从扇区的开始地址连续读 64 字节.
注意:为了通用,程序不识别扇区是否有效,用户自己根据具体的型号来决定。
深圳国芯人工智能有限公司 分销商电话: 0513-55012928 / 55012929 / 89896509
技术交流及选型论坛:www.STCAIMCU.com - 820 -
STC8G 系列技术手册
官方网站: www.STCAI.com
车规 MCU 设计公司
研发顾问:13922829991
选型顾问: 13922805190
******************************************/
#include
#include
"config.H"
"EEPROM.h"
#define
#define
#define
Baudrate1
UART1_BUF_LENGTH
EEADDR_OFFSET
115200L
10
(8 * 1024)
#define
TimeOutSet1
5
//定义 EEPROM 用 MOVC 访问时加的偏移量,
//等于 FLASH ROM 的大小.对于 IAP 或 IRC 开头的,
//则偏移量必须为 0
/************* 本地常量声明 **************/
u8 code T_Strings[]={"去年今日此门中,人面桃花相映红。人面不知何处去,桃花依旧笑春风。"};
/************* 本地变量声明 **************/
u8 xdata tmp[70];
u8 xdata RX1_Buffer[UART1_BUF_LENGTH];
u8 RX1_Cnt;
u8 RX1_TimeOut;
bit B_TX1_Busy;
/************* 本地函数声明
void UART1_config(void);
void TX1_write2buff(u8 dat);
void PrintString1(u8 *puts);
/*************
**************/
//写入发送缓冲
//发送一个字符串
外部函数和变量声明 *****************/
/**********************************************/
u8
{
CheckData(u8 dat)
if((dat >= '0') && (dat = 'A') && (dat = 'a') && (dat