0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
STC8A8K32S4A12-28I-LQFP44

STC8A8K32S4A12-28I-LQFP44

  • 厂商:

    STC(宏晶科技)

  • 封装:

    LQFP44_10X10MM

  • 描述:

    STC8A8K32S4A12-28I-LQFP44

  • 数据手册
  • 价格&库存
STC8A8K32S4A12-28I-LQFP44 数据手册
STC micro TM 宏 晶 科 技 江苏国芯科技有限公司 STC8 系列单片机 技术参考手册 技术支持网站:www.STCMCUDATA.com / www.STCMCU.com 资料更新日期:2017/11/7 STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 目录 1 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3 3.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.2 3.2.1 3.2.2 3.2.3 3.2.4 3.3 3.3.1 3.4 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.6 3.4.7 3.4.8 3.4.9 3.4.10 4 4.1 4.2 概述.......................................................................................................................................... 1 特性及价格.............................................................................................................................. 3 STC8A8K64S4A12 系列特性及价格 ..................................................................................... 3 STC8A4K64S2A12 系列特性及价格 ..................................................................................... 5 STC8F2K64S4 系列特性及价格 ............................................................................................ 7 STC8F2K64S2 系列特性及价格 ............................................................................................ 9 STC8H1K64S2A10 系列提前通告........................................................................................11 STC8H1K08S2A10 系列提前通告....................................................................................... 12 STC8H1K08S2 系列提前通告.............................................................................................. 13 STC8H04A10 系列提前通告 ................................................................................................ 14 STC8H04 系列提前通告....................................................................................................... 15 管脚及说明............................................................................................................................ 16 管脚图.................................................................................................................................... 16 STC8A8K64S4A12 系列管脚图........................................................................................... 16 STC8A4K64S2A12 系列管脚图........................................................................................... 20 STC8F2K64S4 系列管脚图 .................................................................................................. 24 STC8F2K64S2 系列管脚图 .................................................................................................. 27 STC8H1K08S2A10 系列管脚图........................................................................................... 30 STC8H1K08S2 系列管脚图.................................................................................................. 31 管脚说明................................................................................................................................ 32 STC8A8K64S4A12 系列管脚说明....................................................................................... 32 STC8A4K64S2A12 系列管脚说明....................................................................................... 39 STC8F2K64S4 系列管脚说明 .............................................................................................. 46 STC8F2K64S2 系列管脚说明 .............................................................................................. 50 功能脚切换 ............................................................................................................................ 54 功能脚切换相关寄存器 ........................................................................................................ 54 范例程序................................................................................................................................ 57 串口 1 切换............................................................................................................................ 57 串口 2 切换............................................................................................................................ 58 串口 3 切换............................................................................................................................ 58 串口 4 切换............................................................................................................................ 59 SPI 切换 ................................................................................................................................. 59 PWM 切换 ............................................................................................................................. 60 PCA/CCP/PWM 切换............................................................................................................ 62 I2C切换.................................................................................................................................. 63 比较器输出切换 .................................................................................................................... 63 主时钟输出切换 .................................................................................................................... 64 封装尺寸图............................................................................................................................ 66 LQFP64S 封装尺寸图(12mm*12mm)............................................................................. 66 LQFP64L 封装尺寸图(16mm*16mm)............................................................................. 67 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -i- STC8 系列技术手册 4.3 4.4 4.5 4.6 4.7 4.8 4.9 5 5.1 5.2 6 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.2.6 7 7.1 7.2 7.3 7.4 7.4.1 7.4.2 7.4.3 7.4.4 7.4.5 7.4.6 8 8.1 8.2 8.2.1 8.2.2 8.2.3 8.3 8.3.1 8.3.2 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 LQFP48 封装尺寸图(9mm*9mm) ................................................................................... 68 LQFP44 封装尺寸图(12mm*12mm) ............................................................................... 71 LQFP32 封装尺寸图(9mm*9mm) ................................................................................... 74 QFN32 封装尺寸图(4mm*4mm)..................................................................................... 75 PDIP40 封装尺寸图 .............................................................................................................. 76 TSSOP20 封装尺寸图 ........................................................................................................... 77 SOP16 封装尺寸图................................................................................................................ 78 STC8 系列单片机选型价格一览表 ..................................................................................... 79 STC8 系列单片机封装价格一览表...................................................................................... 80 STC8 系列单片机命名规则.................................................................................................. 81 ISP 下载及典型应用线路图................................................................................................. 82 STC8F 系列 ISP 下载应用线路图........................................................................................ 82 使用 RS-232 转换器下载...................................................................................................... 82 使用 PL2303-SA 下载 ........................................................................................................... 83 使用 U8-Mini 工具下载 ........................................................................................................ 84 使用 U8W 工具下载 ............................................................................................................. 85 USB 直接 ISP 下载 ............................................................................................................... 86 STC8A 系列 ISP 下载应用线路图 ....................................................................................... 87 使用 RS-232 转换下载(使用高精度 ADC)..................................................................... 87 使用 RS-232 转换下载(ADC 一般应用)......................................................................... 88 使用 PL2303 下载 ................................................................................................................. 89 使用 U8-Mini 工具下载 ........................................................................................................ 90 使用 U8W 工具下载 ............................................................................................................. 91 USB 直接 ISP 下载 ............................................................................................................... 92 时钟、复位与电源管理........................................................................................................ 93 系统时钟控制 ........................................................................................................................ 93 系统复位................................................................................................................................ 95 系统电源管理 ........................................................................................................................ 97 范例程序................................................................................................................................ 97 选择系统时钟源 .................................................................................................................... 97 主时钟分频输出 .................................................................................................................... 99 看门狗定时器应用 .............................................................................................................. 100 软复位实现自定义下载 ...................................................................................................... 101 低压检测.............................................................................................................................. 102 省电模式.............................................................................................................................. 103 存储器.................................................................................................................................. 105 程序存储器 .......................................................................................................................... 105 数据存储器 .......................................................................................................................... 105 内部 RAM............................................................................................................................ 106 内部扩展 RAM.................................................................................................................... 107 外部扩展 RAM.................................................................................................................... 108 存储器中的特殊参数 .......................................................................................................... 109 读取 Bandgap 电压值.......................................................................................................... 109 读取全球唯一 ID 号.............................................................................................................111 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - ii - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 8.3.3 8.3.4 读取 32K 掉电唤醒定时器的频率 ......................................................................................113 手动设置 22.1184MHz 和 24MHz 内部 IRC 频率 .............................................................115 9 特殊功能寄存器...................................................................................................................117 9.1 STC8A8K64S4A12 系列......................................................................................................117 9.2 STC8A4K64S2A12 系列......................................................................................................118 9.3 STC8F2K64S4 系列 .............................................................................................................119 9.4 STC8F2K64S2 系列 ............................................................................................................ 120 9.5 特殊功能寄存器列表 .......................................................................................................... 121 10 I/O 口 ................................................................................................................................... 126 10.1 I/O 口相关寄存器................................................................................................................ 126 10.2 配置 I/O 口........................................................................................................................... 129 10.3 I/O 的结构图........................................................................................................................ 131 10.3.1 准双向口(弱上拉) .......................................................................................................... 131 10.3.2 推挽输出.............................................................................................................................. 131 10.3.3 高阻输入.............................................................................................................................. 131 10.3.4 开漏输出.............................................................................................................................. 132 范例程序.............................................................................................................................. 132 10.4 10.4.1 端口模式设置 ...................................................................................................................... 132 10.4.2 双向口读写操作 .................................................................................................................. 133 11 指令系统.............................................................................................................................. 135 12 中断系统.............................................................................................................................. 139 12.1 STC8 系列中断源................................................................................................................ 139 12.1.1 STC8A8K64S4A12 系列中断源......................................................................................... 140 12.1.2 STC8A4K64S2A12 系列中断源......................................................................................... 140 12.1.3 STC8F2K64S4 系列中断源 ................................................................................................ 140 12.1.4 STC8F2K64S2 系列中断源 ................................................................................................ 141 12.2 STC8 中断结构图................................................................................................................ 142 12.3 STC8 系列中断列表............................................................................................................ 143 12.4 中断相关寄存器 .................................................................................................................. 145 12.4.1 中断使能寄存器(中断允许位) ...................................................................................... 146 12.4.2 中断请求寄存器(中断标志位) ...................................................................................... 150 12.4.3 中断优先级寄存器 .............................................................................................................. 152 12.5 范例程序.............................................................................................................................. 154 12.5.1 INT0 中断(上升沿和下降沿) ........................................................................................ 154 12.5.2 INT0 中断(下降沿) ........................................................................................................ 155 12.5.3 INT1 中断(上升沿和下降沿) ........................................................................................ 156 12.5.4 INT1 中断(下降沿) ........................................................................................................ 157 12.5.5 INT2 中断(下降沿) ........................................................................................................ 158 12.5.6 INT3 中断(下降沿) ........................................................................................................ 159 12.5.7 INT4 中断(下降沿) ........................................................................................................ 160 12.5.8 定时器 0 中断 ...................................................................................................................... 161 12.5.9 定时器 1 中断 ...................................................................................................................... 162 12.5.10 定时器 2 中断 ...................................................................................................................... 163 12.5.11 定时器 3 中断 ...................................................................................................................... 164 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - iii - STC8 系列技术手册 12.5.12 12.5.13 12.5.14 12.5.15 12.5.16 12.5.17 12.5.18 12.5.19 12.5.20 12.5.21 12.5.22 12.5.23 13 13.1 13.2 13.3 13.4 13.5 13.6 13.6.1 13.6.2 13.6.3 13.6.4 13.6.5 13.6.6 13.6.7 13.6.8 13.6.9 13.6.10 13.6.11 13.6.12 13.6.13 13.6.14 13.6.15 13.6.16 13.6.17 13.6.18 13.6.19 13.6.20 13.6.21 13.6.22 13.6.23 13.6.24 13.6.25 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 定时器 4 中断 ...................................................................................................................... 165 UART1 中断 ........................................................................................................................ 166 UART2 中断 ........................................................................................................................ 168 UART3 中断 ........................................................................................................................ 169 UART4 中断 ........................................................................................................................ 171 ADC 中断 ............................................................................................................................ 173 LVD 中断 ............................................................................................................................. 174 PCA 中断 ............................................................................................................................. 175 SPI 中断 ............................................................................................................................... 177 CMP 中断 ............................................................................................................................ 178 PWM 中断 ........................................................................................................................... 179 I2C中断................................................................................................................................ 182 定时器/计数器..................................................................................................................... 185 定时器的相关寄存器 .......................................................................................................... 185 定时器 0/1............................................................................................................................ 186 定时器 2............................................................................................................................... 188 定时器 3/4............................................................................................................................ 189 掉电唤醒定时器 .................................................................................................................. 190 范例程序.............................................................................................................................. 191 定时器 0(模式 0-16 位自动重载) ............................................................................... 191 定时器 0(模式 1-16 位不自动重载) ........................................................................... 192 定时器 0(模式 2-8 位自动重载) ................................................................................. 193 定时器 0(模式 3-16 位自动重载不可屏蔽中断) ....................................................... 194 定时器 0(外部计数-扩展 T0 为外部下降沿中断)..................................................... 195 定时器 0(测量脉宽-INT0 高电平宽度)...................................................................... 196 定时器 0(时钟分频输出) ............................................................................................... 197 定时器 1(模式 0-16 位自动重载) ............................................................................... 198 定时器 1(模式 1-16 位不自动重载) ........................................................................... 199 定时器 1(模式 2-8 位自动重载) ................................................................................. 200 定时器 1(外部计数-扩展 T1 为外部下降沿中断)..................................................... 201 定时器 1(测量脉宽-INT1 高电平宽度)...................................................................... 202 定时器 1(时钟分频输出) ............................................................................................... 203 定时器 1(模式 0)做串口 1 波特率发生器 .................................................................... 203 定时器 1(模式 2)做串口 1 波特率发生器 .................................................................... 206 定时器 2(16 位自动重载) .............................................................................................. 209 定时器 2(外部计数-扩展 T2 为外部下降沿中断)..................................................... 210 定时器 2(时钟分频输出) ............................................................................................... 212 定时器 2 做串口 1 波特率发生器 ...................................................................................... 213 定时器 2 做串口 2 波特率发生器 ...................................................................................... 215 定时器 2 做串口 3 波特率发生器 ...................................................................................... 218 定时器 2 做串口 4 波特率发生器 ...................................................................................... 221 定时器 3(16 位自动重载) .............................................................................................. 225 定时器 3(外部计数-扩展 T3 为外部下降沿中断)..................................................... 226 定时器 3(时钟分频输出) ............................................................................................... 227 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - iv - STC8 系列技术手册 13.6.26 13.6.27 13.6.28 13.6.29 13.6.30 14 14.1 14.2 14.2.1 14.2.2 14.2.3 14.2.4 14.2.5 14.3 14.3.1 14.3.2 14.4 14.4.1 14.4.2 14.5 14.5.1 14.5.2 14.6 14.7 14.7.1 14.7.2 14.7.3 14.7.4 14.7.5 14.7.6 14.7.7 14.7.8 15 15.1 15.2 15.3 15.3.1 15.3.2 16 16.1 16.2 16.3 16.3.1 16.3.2 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 定时器 3 做串口 3 波特率发生器 ...................................................................................... 228 定时器 4(16 位自动重载) .............................................................................................. 231 定时器 4(外部计数-扩展 T4 为外部下降沿中断)..................................................... 232 定时器 4(时钟分频输出) ............................................................................................... 233 定时器 4 做串口 4 波特率发生器 ...................................................................................... 234 串口通信.............................................................................................................................. 238 串口相关寄存器 .................................................................................................................. 238 串口 1................................................................................................................................... 238 串口 1 模式 0 ....................................................................................................................... 240 串口 1 模式 1 ....................................................................................................................... 241 串口 1 模式 2 ....................................................................................................................... 244 串口 1 模式 3 ....................................................................................................................... 244 自动地址识别 ...................................................................................................................... 245 串口 2................................................................................................................................... 246 串口 2 模式 0 ....................................................................................................................... 247 串口 2 模式 1 ....................................................................................................................... 248 串口 3................................................................................................................................... 248 串口 3 模式 0 ....................................................................................................................... 249 串口 3 模式 1 ....................................................................................................................... 250 串口 4................................................................................................................................... 250 串口 4 模式 0 ....................................................................................................................... 251 串口 4 模式 1 ....................................................................................................................... 252 串口注意事项 ...................................................................................................................... 253 范例程序.............................................................................................................................. 254 串口 1 使用定时器 2 做波特率发生器 .............................................................................. 254 串口 1 使用定时器 1(模式 0)做波特率发生器 ............................................................ 256 串口 1 使用定时器 1(模式 2)做波特率发生器 ............................................................ 259 串口 2 使用定时器 2 做波特率发生器 .............................................................................. 262 串口 3 使用定时器 2 做波特率发生器 .............................................................................. 265 串口 3 使用定时器 3 做波特率发生器 .............................................................................. 268 串口 4 使用定时器 2 做波特率发生器 .............................................................................. 271 串口 4 使用定时器 4 做波特率发生器 .............................................................................. 274 比较器,掉电检测,内部固定比较电压 .......................................................................... 278 比较器内部结构图 .............................................................................................................. 278 比较器相关的寄存器 .......................................................................................................... 278 范例程序.............................................................................................................................. 280 比较器的使用(中断方式) .............................................................................................. 280 比较器的使用(查询方式) .............................................................................................. 281 IAP/EEPROM .................................................................................................................... 284 EEPROM 相关的寄存器..................................................................................................... 284 关于 EEPROM 编程和擦除等待时间的重要说明 ............................................................ 286 范例程序.............................................................................................................................. 287 EEPROM 基本操作............................................................................................................. 287 使用串口送出 EEPROM 数据............................................................................................ 290 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -v- STC8 系列技术手册 17 17.1 17.2 17.2.1 17.2.2 17.3 17.3.1 17.3.2 17.3.3 17.3.4 18 18.1 18.2 18.2.1 18.2.2 18.2.3 18.2.4 18.3 18.3.1 18.3.2 18.3.3 18.3.4 18.3.5 19 19.1 19.2 19.2.1 19.2.2 19.2.3 20 20.1 20.2 20.2.1 20.2.2 20.2.3 20.3 20.4 20.5 20.5.1 20.5.2 20.5.3 20.5.4 20.5.5 20.5.6 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 ADC 模数转换 .................................................................................................................... 294 ADC 相关的寄存器............................................................................................................. 294 ADC 典型应用线路图......................................................................................................... 296 高精度 ADC 应用................................................................................................................ 296 ADC 一般应用(对 ADC 精度要求不高的应用) .......................................................... 297 范例程序.............................................................................................................................. 298 ADC 基本操作(查询方式)............................................................................................. 298 ADC 基本操作(中断方式)............................................................................................. 299 格式化 ADC 转换结果........................................................................................................ 300 利用 ADC 第 16 通道测量外部电压或电池电压.............................................................. 302 PCA/CCP/PWM 应用 ........................................................................................................ 305 PCA 相关的寄存器 ............................................................................................................. 305 PCA 工作模式 ..................................................................................................................... 309 捕获模式.............................................................................................................................. 309 软件定时器模式 .................................................................................................................. 309 高速脉冲输出模式 .............................................................................................................. 310 PWM 脉宽调制模式 ........................................................................................................... 310 范例程序.............................................................................................................................. 313 PCA 输出 PWM(6/7/8/10 位) ........................................................................................ 313 PCA 捕获测量脉冲宽度 ..................................................................................................... 315 PCA 实现 16 位软件定时 ................................................................................................... 318 PCA 输出高速脉冲 ............................................................................................................. 321 PCA 扩展外部中断 ............................................................................................................. 323 增强型 PWM....................................................................................................................... 326 PWM 相关的寄存器 ........................................................................................................... 326 范例程序.............................................................................................................................. 332 输出任意周期和任意占空比的波形 .................................................................................. 332 两路 PWM 实现互补对称带死区控制的波形................................................................... 334 PWM 实现渐变灯(呼吸灯)............................................................................................ 338 同步串行外设接口 SPI....................................................................................................... 343 SPI 相关的寄存器 ............................................................................................................... 343 SPI 通信方式 ....................................................................................................................... 344 单主单从.............................................................................................................................. 344 互为主从.............................................................................................................................. 345 单主多从.............................................................................................................................. 345 配置 SPI ............................................................................................................................... 346 数据模式.............................................................................................................................. 347 范例程序.............................................................................................................................. 348 SPI 单主单从系统主机程序(中断方式) ....................................................................... 348 SPI 单主单从系统从机程序(中断方式) ....................................................................... 350 SPI 单主单从系统主机程序(查询方式) ....................................................................... 351 SPI 单主单从系统从机程序(查询方式) ....................................................................... 352 SPI 互为主从系统程序(中断方式) ............................................................................... 353 SPI 互为主从系统程序(查询方式) ............................................................................... 355 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - vi - STC8 系列技术手册 21 21.1 21.2 21.3 21.4 21.4.1 21.4.2 21.4.3 21.4.4 21.4.5 21.4.6 22 22.1 22.1.1 22.1.2 附录 A A.1 A.2 A.3 A.4 A.5 II. III. IV. V. 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 I2C总线 ................................................................................................................................ 358 I2C相关的寄存器................................................................................................................. 358 I2C主机模式......................................................................................................................... 358 I2C从机模式......................................................................................................................... 361 范例程序.............................................................................................................................. 363 I2C主机模式访问AT24C256(中断方式) ....................................................................... 363 I2C主机模式访问AT24C256(查询方式) ....................................................................... 369 I2C主机模式访问PCF8563.................................................................................................. 373 I2C从机模式(中断方式)................................................................................................. 378 I2C从机模式(查询方式)................................................................................................. 381 测试I2C从机模式代码的主机代码..................................................................................... 385 增强型双数据指针.............................................................................................................. 390 范例程序.............................................................................................................................. 392 示例代码 1 ........................................................................................................................... 392 示例代码 2 ........................................................................................................................... 392 应用注意事项...................................................................................................................... 394 关于 EEPROM 编程和擦除等待时间的重要说明 .......................................................... 394 STC8F2K64S4 系列应用注意事项 ................................................................................... 395 STC8F2K64S2 系列应用注意事项 ................................................................................... 397 STC8A8K64S4A12 系列应用注意事项 ............................................................................ 398 STC8A4K64S2A12 系列应用注意事项 ............................................................................ 401 STC 仿真器使用指南 ......................................................................................................... 402 STC-USB 驱动程序安装说明 ............................................................................................ 407 电气特性.............................................................................................................................. 452 更新记录.............................................................................................................................. 454 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - vii - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 1 概述 STC8 系列单片机是不需要外部晶振和外部复位的单片机,是以超强抗干扰/超低价/高速/低功耗为 目标的 8051 单片机,在相同的工作频率下,STC8 系列单片机比传统的 8051 约快 12 倍(速度快 11.2~13.2 倍),依次按顺序执行完全部的 111 条指令,STC8 系列单片机仅需 147 个时钟,而传统 8051 则需要 1944 个时钟。STC8 系列单片机是 STC 生产的单时钟/机器周期(1T)的单片机,是宽电压/高速/高可靠/ 低功耗/强抗静电/较强抗干扰的新一代 8051 单片机,超级加密。指令代码完全兼容传统 8051。 MCU 内部集成高精度 R/C 时钟(±0.3%,常温下+25℃),-1.8%~+0.8%温飘(-40℃~+85℃) ,-1.0%~ +0.5%温飘(-20℃~+65℃)。ISP 编程时 5MHz~30MHz 宽范围可设置,可彻底省掉外部昂贵的晶振和外 部复位电路(内部已集成高可靠复位电路,ISP 编程时 4 级复位门槛电压可选)。 MCU 内部有 3 个可选时钟源:内部 24MHz 高精度 IRC 时钟(可适当调高或调低)、内部 32KHz 的低速 IRC、外部 4M~33M 晶振或外部时钟信号。用户代码中可自由选择时钟源,时钟源选定后可再 经过 8-bit 的分频器分频后再将时钟信号提供给 CPU 和各个外设(如定时器、串口、SPI 等)。 MCU 提供两种低功耗模式:IDLE 模式和 STOP 模式。IDLE 模式下,MCU 停止给 CPU 提供时钟, CPU 无时钟,CPU 停止执行指令,但所有的外设仍处于工作状态,此时功耗约为 1.3mA(6MHz 工作 频率)。STOP 模式即为主时钟停振模式,即传统的掉电模式/停电模式/停机模式,此时 CPU 和全部外 设都停止工作,功耗可降低到 0.1uA 以下。IDLE 模式可以由外部中断(INT0/INT1/INT2/INT3/INT4)、 定时器中断(定时器 0/定时器 1/定时器 2/定时器 3/定时器 4)、串口中断(串口 1/串口 2/串口 3/串口 4)、 PCA/CCP/PWM 中断、增强型 PWM、增强型 PWM 异常检测、ADC 模数转换中断、LVD 低压检测、 SPI 中断、I2C 中断、比较器中断唤醒。 STOP 模式可以由 INT0/INT1 端口上升沿/下降沿、INT2/INT3/INT4 端口下降沿、T0/T1/T2/T3/T4 端口下降沿、RxD/RxD_2/RxD_3/RxD_4 端口下降沿、RxD2/RxD2_2 端口 下 降 沿 、 RxD2/RxD2_2 端 口 下 降 沿 、 RxD3/RxD3_2 端 口 下 降 沿 、 RxD4/RxD4_2 端 口 下 降 沿 、 CCP0/CCP0_2/CCP0_3/CCP0_4 端 口 下 降 沿 、 CCP1/CCP1_2/CCP1_3/CCP1_4 端 口 下 降 沿 、 CCP2/CCP2_2/CCP2_3/CCP2_4 端口下降沿、CCP3/CCP3_2/CCP3_3/CCP3_4 端口下降沿、LVD 低压检 测以及掉电唤醒定时器(进入掉电模式前需要先使能掉电唤醒定时器)唤醒。 MCU 提供了丰富的数字外设(4 个串口、5 个定时器、4 组 PCA、8 组增强型 PWM 以及 I2C、SPI) 接口与模拟外设(速度高达 800K 即每秒 80 万次采样的 12 位*15 路超高速 ADC、比较器),可满足广 大用户的设计需求。 数字功能可使用程序在多个管脚之间进行切换。串口 1 可以组为单位([TxD/RxD]为一组)在 [P3.0/P3.1]、[P3.6/P3.7]、[P1.6/P1.7]、[P4.3/P4.4]这 4 组之间进行任意切换;串口 2 可以组为单位 ([TxD2/RxD2]为一组)在[P1.0/P1.1]、[P4.0/P4.2]这 2 组之间进行任意切换;串口 3 可以组为单位 ([TxD3/RxD3]为一组)在[P0.0/P0.1]、[P5.0/P5.1]这 2 组之间进行任意切换;串口 4 可以组为单位 ([TxD4/RxD4]为一组)在[P0.2/P0.3]、[P5.2/P5.3]这 2 组之间进行任意切换;PCA 可以组为单位 ( [ECI/CCP0/CCP1/CCP2/CCP3] 为 一 组 ) 在 [P1.2/P1.7/P1.6/P1.5/P1.4] 、 [P2.2/P2.3/P2.4/P2.5/P2.6] 、 [P7.4/P7.0/P7.1/P7.2/P7.3]、[P3.5/P3.3/P3.2/P3.1/P3.0]这 4 组之间进行任意切换;SPI 可以组为单位 ([SS/MOSI/MISO/SCLK]为一组)在[P1.2/P1.3/P1.4/P1.5]、[P2.2/P2.3/P2.4/P2.5]、[P7.4/P7.5/P7.6/P7.7]、 [P3.5/P3.4/P3.3/P3.2]这 4 组之间进行任意切换;I2C 可以组为单位([SCL/SDA]为一组)在[P1.5/P1.4]、 [P2.5/P2.4]、[P7.7/P7.6]、[P3.2/P3.3]这 4 组之间进行任意切换;增强型 PWM 的每一路均可各自独立地 在 3 个端口之间任意切换(详细切换介绍请参考第 3.3 章的功能脚切换)。 STC8 系列单片机内部集成了增强型的双数据指针。通过程序控制,可实现数据指针自动递增或递 减功能以及两组数据指针的自动切换功能。 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -1- STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 产品线 UART 定时器 ADC STC8A8K64S4A12 ● ● ● STC8A4K64S2A12 ● ● ● STC8F2K64S4 ● STC8F2K64S2 增强型 高级 PWM PWM 技术支持: 13922829991 研发顾问: 13922805190 PCA 比较器 SPI I2C ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● STC8H1K64S2A10 ● ● ● ● ● ● ● STC8H1K08S2A10 ● ● ● ● ● ● ● STC8H1K08S2 ● ● ● ● ● STC8H04A10 ● ● ● ● ● STC8H04 ● ● ● ● ● 江苏国芯科技有限公司 ● 总机: 0513-5501 2928/2929/2966 RTC 备注 传真: 0513-5501 2926/2956/2947 -2- STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 2 特性及价格 2.1 STC8A8K64S4A12 系列特性及价格  选型价格(不需要外部晶振、不需要外部复位,12 位 ADC,15 通道) 年新品供货信息 2017 STC8A8K16S4A12 2.0-5.5 16K 8K 2 48K 59 4 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.4 ¥3.2 ¥3.2 STC8A8K32S4A12 2.0-5.5 32K 8K 2 32K 59 4 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.6 ¥3.3 ¥3.3 STC8A8K60S4A12 2.0-5.5 60K 8K 2 4K 59 4 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.8 ¥3.4 ¥3.4 STC8A8K64S4A12 2.0-5.5 64K 8K 2 IAP 59 4 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.8 ¥3.4 ¥3.4 PDIP40 LQFP44 LQFP48 QFN48 LQFP64S QFN64 直接下载 USB 本身就可在线仿真 支持 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 程序加密后传输(防拦截) 看门狗 复位定时器 内部低压检测中断并可掉电唤醒 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 位高级 定时器 互补对称死区 16 PWM 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) I2 C SPI 串口并可掉电唤醒 口最多数量 I/O 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 字节 SRAM 万次 字节 10 工作电压( ) V 单片机型号 程序存储器 Flash 封装 各个版本芯片的使用注意事项请参考“附录 A、应用注意事项”  内核  超高速 8051 内核(1T),比传统 8051 约快 12 倍以上  指令代码完全兼容传统 8051  22 个中断源,4 级中断优先级  支持在线仿真  工作电压  2.0V~5.5V  内建 LDO  工作温度  -40℃~85℃  Flash 存储器  最大 64K 字节 FLASH 空间,用于存储用户代码  支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上  支持在系统编程方式(ISP)更新用户应用程序,无需专用编程器  支持单芯片仿真,无需专用仿真器,理论断点个数无限制  SRAM  128 字节内部直接访问 RAM(DATA)  128 字节内部间接访问 RAM(IDATA)  8192 字节内部扩展 RAM(内部 XDATA)  外部最大可扩展 64K 字节 RAM(外部 XDATA)  时钟控制 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -3- 大 量 供 货 STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190  内部 24MHz 高精度 IRC(ISP 编程时可进行上下调整)  误差±0.3%(常温下 25℃)  -1.8%~+0.8%温漂(全温度范围,-40℃~85℃)  -1.0%~+0.5%温漂(温度范围,-20℃~65℃)  内部 32KHz 低速 IRC(误差较大)  外部晶振(4MHz~33MHz)和外部时钟 用户可自由选择上面的 3 种时钟源  复位  硬件复位  上电复位  复位脚复位(高电平复位),出厂时 P5.4 默认为 IO 口,ISP 下载时可将 P5.4 管脚设置为复位脚  看门狗溢出复位  低压检测复位,提供 4 级低压检测电压:2.2V、2.4V、2.7V、3.0V  软件复位  软件方式写复位触发寄存器  中断  提供 22 个中断源:INT0、INT1、INT2、INT3、INT4、定时器 0、定时器 1、定时器 2、定时器 3、定时器 4、串口 1、串口 2、串口 3、串口 4、ADC 模数转换、LVD 低压检测、SPI、I2C、比较器、PCA/CCP/PWM、 增强型 PWM、增强型 PWM 异常检测  提供 4 级中断优先级  数字外设  5 个 16 位定时器:定时器 0、定时器 1、定时器 2、定时器 3、定时器 4,其中定时器 0 的模式 3 具有 NMI (不可屏蔽中断)功能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式  4 个高速串口:串口 1、串口 2、串口 3、串口 4,波特率时钟源最快可为 FOSC/4  4 组 16 位 PCA 模块:CCP0、CCP1、CCP2、CCP3,可用于捕获、高速脉冲输出,及 6/7/8/10 位的 PWM 输出  8 组 15 位增强型 PWM,可实现带死区的控制信号,并支持外部异常检测功能,另外还有 4 组传统的 PCA/CCP/PWM 可作 PWM  SPI:支持主机模式和从机模式以及主机/从机自动切换  I2C:支持主机模式和从机模式  模拟外设  超高速 ADC,支持 12 位精度 15 通道的模数转换,速度最快可达 800K(即每秒可进行 80 万次模数转换)  比较器,一组比较器附近  GPIO  最多可达 59 个 GPIO:P0.0~P0.7、P1.0~P1.7、P2.0~P2.7、P3.0~P3.7、P4.0~P4.4、P5.0~P5.5、P6.0~P6.7、 P7.0~P7.7  所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏输出模式、高阻输入模式  封装  LQFP64S、LQFP48、LQFP44、PDIP40(暂未生产) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -4- STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 2.2 STC8A4K64S2A12 系列特性及价格  选型价格(不需要外部晶振、不需要外部复位,12 位 ADC,15 通道) 年新品供货信息 2017 STC8A4K16S2A12 2.0-5.5 16K 4K 2 48K 59 2 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.1 ¥2.9 ¥2.9 STC8A4K32S2A12 2.0-5.5 32K 4K 2 32K 59 2 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.3 ¥3.0 ¥3.0 STC8A4K60S2A12 2.0-5.5 60K 4K 2 4K 59 2 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.6 ¥3.2 ¥3.2 STC8A4K64S2A12 2.0-5.5 64K 4K 2 IAP 59 2 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.6 ¥3.2 ¥3.2 PDIP40 LQFP44 LQFP48 QFN48 LQFP64S QFN64 直接下载 USB 本身就可在线仿真 支持 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 程序加密后传输(防拦截) 看门狗 复位定时器 内部低压检测中断并可掉电唤醒 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 位高级 定时器 互补对称死区 16 PWM 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) I2 C SPI 串口并可掉电唤醒 口最多数量 I/O 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 字节 SRAM 万次 字节 10 工作电压( ) V 单片机型号 程序存储器 Flash 封装 各个版本芯片的使用注意事项请参考“附录 A、应用注意事项”  内核  超高速 8051 内核(1T),比传统 8051 约快 12 倍以上  指令代码完全兼容传统 8051  20 个中断源,4 级中断优先级  支持在线仿真  工作电压  2.0V~5.5V  内建 LDO  工作温度  -40℃~85℃  Flash 存储器  最大 64K 字节 FLASH 空间,用于存储用户代码  支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上  支持在系统编程方式(ISP)更新用户应用程序,无需专用编程器  支持单芯片仿真,无需专用仿真器,理论断点个数无限制  SRAM  128 字节内部直接访问 RAM(DATA)  128 字节内部间接访问 RAM(IDATA)  4096 字节内部扩展 RAM(内部 XDATA)  外部最大可扩展 64K 字节 RAM(外部 XDATA)  时钟控制  内部 24MHz 高精度 IRC(ISP 编程时可进行上下调整)  误差±0.3%(常温下 25℃) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -5- 大 量 供 货 STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190  -1.8%~+0.8%温漂(全温度范围,-40℃~85℃)  -1.0%~+0.5%温漂(温度范围,-20℃~65℃)  内部 32KHz 低速 IRC(误差较大)  外部晶振(4MHz~33MHz)和外部时钟 用户可自由选择上面的 3 种时钟源  复位  硬件复位  上电复位  复位脚复位(高电平复位),出厂时 P5.4 默认为 IO 口,ISP 下载时可将 P5.4 管脚设置为复位脚  看门狗溢出复位  低压检测复位,提供 4 级低压检测电压:2.2V、2.4V、2.7V、3.0V  软件复位  软件方式写复位触发寄存器  中断  提供 20 个中断源:INT0、INT1、INT2、INT3、INT4、定时器 0、定时器 1、定时器 2、定时器 3、定时器 4、串口 1、串口 2、ADC 模数转换、LVD 低压检测、SPI、I2C、比较器、PCA/CCP/PWM、增强型 PWM、 增强型 PWM 异常检测  提供 4 级中断优先级  数字外设  5 个 16 位定时器:定时器 0、定时器 1、定时器 2、定时器 3、定时器 4,其中定时器 0 的模式 3 具有 NMI (不可屏蔽中断)功能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式  2 个高速串口:串口 1、串口 2,波特率时钟源最快可为 FOSC/4  4 组 16 位 PCA 模块:CCP0、CCP1、CCP2、CCP3,可用于捕获、高速脉冲输出,及 6/7/8/10 位的 PWM 输出  8 组 15 位增强型 PWM,可实现带死区的控制信号,并支持外部异常检测功能,另外还有 4 组传统的 PCA/CCP/PWM 可作 PWM  SPI:支持主机模式和从机模式以及主机/从机自动切换  I2C:支持主机模式和从机模式  模拟外设  超高速 ADC,支持 12 位精度 15 通道的模数转换,速度最快可达 800K(即每秒可进行 80 万次模数转换)  比较器,一组比较器附近  GPIO  最多可达 59 个 GPIO:P0.0~P0.7、P1.0~P1.7、P2.0~P2.7、P3.0~P3.7、P4.0~P4.4、P5.0~P5.5、P6.0~P6.7、 P7.0~P7.7  所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏输出模式、高阻输入模式  封装  LQFP64S、LQFP48、LQFP44、PDIP40(暂未生产) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -6- STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 2.3 STC8F2K64S4 系列特性及价格  选型价格(不需要外部晶振、不需要外部复位) 年新品供货信息 2017 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.7 ¥2.6 STC8F2K32S4 2.0-5.5 32K 2K 2 32K 42 4 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.8 ¥2.7 STC8F2K60S4 2.0-5.5 60K 2K 2 4K 42 4 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.9 ¥2.8 STC8F2K64S4 2.0-5.5 64K 2K 2 IAP 42 4 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.9 ¥2.8 SOP8 有 PDIP40 4 SOP16 2 48K 42 TSSOP20 LQFP32 LQFP44 STC8F2K16S4 2.0-5.5 16K 2K QFN32 直接下载 USB 本身就可在线仿真 支持 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 程序加密后传输(防拦截) 看门狗 复位定时器 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 内部低压检测中断并可掉电唤醒 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 I2 C 位高级 PWM 定时器 互补对称死区 16 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) SPI 串口并可掉电唤醒 口最多数量 I/O 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 SRAM字节 万次 字节 10 工作电压( ) V 单片机型号 程序存储器 Flash 封装 开 始 供 货 各个版本芯片的使用注意事项请参考“附录 A、应用注意事项”  内核  超高速 8051 内核(1T),比传统 8051 约快 12 倍以上  指令代码完全兼容传统 8051  18 个中断源,4 级中断优先级  支持在线仿真  工作电压  2.0V~5.5V  内建 LDO  工作温度  -40℃~85℃  Flash 存储器  最大 64K 字节 FLASH 空间,用于存储用户代码  支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上  支持在系统编程方式(ISP)更新应用程序,无需专用编程器  支持单芯片仿真,无需专用仿真器,理论断点个数无限制  SRAM  128 字节内部直接访问 RAM(DATA)  128 字节内部间接访问 RAM(IDATA)  2048 字节内部扩展 RAM(内部 XDATA)  外部最大可扩展 64K 字节 RAM(外部 XDATA)  时钟控制  内部 24MHz 高精度 IRC(ISP 编程时可进行上下调整)  误差±0.3%(常温下 25℃) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -7- STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190  -1.8%~+0.8%温漂(全温度范围,-40℃~85℃)  -1.0%~+0.5%温漂(温度范围,-20℃~65℃)  内部 32KHz 低速 IRC(误差较大)  外部晶振(4MHz~33MHz)和外部时钟输入 用户可自由选择上面的 3 种时钟源  复位  硬件复位  上电复位  复位脚复位(高电平复位),出厂时 P5.4 默认为 IO 口,ISP 下载时可将 P5.4 管脚设置为复位脚  看门狗溢出复位  低压检测复位,提供 4 级低压检测电压:2.2V、2.4V、2.7V、3.0V  软件复位  软件方式写复位触发寄存器  中断  提供 18 个中断源:INT0、INT1、INT2、INT3、INT4、定时器 0、定时器 1、定时器 2、定时器 3、定时器 4、串口 1、串口 2、串口 3、串口 4、LVD 低压检测、PCA/CCP/PWM、SPI、I2C、比较器  提供 4 级中断优先级  数字外设  5 个 16 位定时器:定时器 0、定时器 1、定时器 2、定时器 3、定时器 4,其中定时器 0 的模式 3 具有 NMI (不可屏蔽中断)功能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式  4 个高速串口:串口 1、串口 2、串口 3、串口 4,波特率时钟源最快可为 FOSC/4  4 组 16 位 PCA 模块:CCP0、CCP1、CCP2、CCP3,可用于捕获、高速脉冲输出,及 6/7/8/10 位的 PWM 输出(A 版和 B 版有此功能,C 版芯片无此功能)  SPI:支持主机模式和从机模式以及主机/从机自动切换  I2C:支持主机模式和从机模式  模拟外设  比较器  GPIO  最多可达 42 个 GPIO:P0.0~P0.7、P1.0~P1.7、P2.0~P2.7、P3.0~P3.7、P4.0~P4.7、P5.4~P5.5  所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏输出模式、高阻输入模式  封装  LQFP44、LQFP32、PDIP40 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -8- STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 2.4 STC8F2K64S2 系列特性及价格  选型价格(不需要外部晶振、不需要外部复位) 年新品供货信息 2017 2 4K 18 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 STC8F2K16S2 2.0-5.5 16K 2K 2 4K 42 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥1.8 ¥1.6 1.65 ¥1.4 1.35 STC8F2K32S2 2.0-5.5 32K 2K 2 32K 42 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 1.99 ¥1.8 1.85 STC8F2K60S2 2.0-5.5 60K 2K 2 4K 42 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.2 ¥2.0 STC8F2K64S2 2.0-5.5 64K 2K 2 IAP 42 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.2 ¥2.0 SOP8 STC8F2K08S2 2.0-5.5 8K 2K PDIP40 SOP16 TSSOP20 LQFP32 LQFP44 QFN32 直接下载 USB 本身就可在线仿真 支持 程序加密后传输(防拦截) 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 看门狗 复位定时器 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 内部低压检测中断并可掉电唤醒 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 I2 C 位高级 PWM 定时器 互补对称死区 16 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) SPI 串口并可掉电唤醒 口最多数量 I/O 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 SRAM字节 万次 字节 10 工作电压( ) V 单片机型号 程序存储器 Flash 封装 ¥1.2 1.15 大 量 供 货 各个版本芯片的使用注意事项请参考“附录 A、应用注意事项”  内核  超高速 8051 内核(1T),比传统 8051 约快 12 倍以上  指令代码完全兼容传统 8051  16 个中断源,4 级中断优先级  支持在线仿真  工作电压  2.0V~5.5V  内建 LDO  工作温度  -40℃~85℃  Flash 存储器  最大 64K 字节 FLASH 空间,用于存储用户代码  支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上  支持在系统编程方式(ISP)更新应用程序,无需专用编程器  支持单芯片仿真,无需专用仿真器,理论断点个数无限制  SRAM  128 字节内部直接访问 RAM(DATA)  128 字节内部间接访问 RAM(IDATA)  2048 字节内部扩展 RAM(内部 XDATA)  外部最大可扩展 64K 字节 RAM(外部 XDATA)  时钟控制  内部 24MHz 高精度 IRC(ISP 编程时可进行上下调整) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -9- STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190  误差±0.3%(常温下 25℃)  -1.8%~+0.8%温漂(全温度范围,-40℃~85℃)  -1.0%~+0.5%温漂(温度范围,-20℃~65℃)  内部 32KHz 低速 IRC(误差较大)  外部晶振(4MHz~33MHz)和外部时钟输入 用户可自由选择上面的 3 种时钟源  复位  硬件复位  上电复位  复位脚复位(高电平复位),出厂时 P5.4 默认为 IO 口,ISP 下载时可将 P5.4 管脚设置为复位脚  看门狗溢出复位  低压检测复位,提供 4 级低压检测电压:2.2V、2.4V、2.7V、3.0V  软件复位  软件方式写复位触发寄存器  中断  提供 16 个中断源:INT0、INT1、INT2、INT3、INT4、定时器 0、定时器 1、定时器 2、定时器 3、定时器 4、串口 1、串口 2、LVD 低压检测、SPI、I2C、比较器  提供 4 级中断优先级  数字外设  5 个 16 位定时器:定时器 0、定时器 1、定时器 2、定时器 3、定时器 4,其中定时器 0 的模式 3 具有 NMI (不可屏蔽中断)功能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式  2 个高速串口:串口 1、串口 2,波特率时钟源最快可为 FOSC/4  SPI:支持主机模式和从机模式以及主机/从机自动切换  I2C:支持主机模式和从机模式  模拟外设  比较器  GPIO  最多可达 42 个 GPIO:P0.0~P0.7、P1.0~P1.7、P2.0~P2.7、P3.0~P3.7、P4.0~P4.7、P5.4~P5.5  所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏输出模式、高阻输入模式  封装  LQFP44、LQFP32、PDIP40、TSSOP20、SOP16 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 10 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 2.5 STC8H1K64S2A10 系列提前通告  选型价格(不需要外部晶振、不需要外部复位) LQFP32 LQFP48 STC8H1K64S2A10 1.7-5.5 64K 1K 2 IAP 45 2 有 有 4 4 - - 有 10 位 有 有 有 4级 有 是 有 是 是 是 是 ¥2.3 ¥2.1 STC8H1K32S2A10 1.7-5.5 32K 1K 2 1K 45 2 有 有 4 4 - - 有 10 位 有 有 有 4级 有 是 有 是 是 是 是 ¥1.9 ¥1.6 STC8H1K16S2A10 1.7-5.5 16K 1K 2 9K 45 2 有 有 4 4 - - 有 10 位 有 有 有 4级 有 是 有 是 是 是 是 ¥1.7 ¥1.4 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 年新品供货信息 2018 直接下载 USB 本身就可在线仿真 支持 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 程序加密后传输(防拦截) 看门狗 复位定时器 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 内部低压检测中断并可掉电唤醒 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 I2 C 位高级 PWM 定时器 互补对称死区 16 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) SPI 串口并可掉电唤醒 口最多数量 I/O 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 SRAM字节 万次 字节 10 工作电压( ) V 单片机型号 程序存储器 Flash 封装 1 月 送 样 - 11 - 年新品供货信息 2018 直接下载 USB 本身就可在线仿真 支持 SOP16 TSSOP20 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 程序加密后传输(防拦截) 看门狗 复位定时器 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 内部低压检测中断并可掉电唤醒 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 I2 C 位高级 PWM 定时器 互补对称死区 16 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) SPI 串口并可掉电唤醒 口最多数量 I/O SRAM字节 万次 字节 10 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 程序存储器 Flash 工作电压( ) V 单片机型号 - 12 - 传真: 0513-5501 2926/2956/2947 总机: 0513-5501 2928/2929/2966 江苏国芯科技有限公司 封装 1 月 送 样 是 ¥1.1 1.05 是 是 是 有 是 有 4级 有 有 有 10 位 有 4 3 有 有 2 3K 17 2 STC8H1K08S2A10 1.7-5.5 8K 1K 研发顾问: 13922805190 技术支持: 13922829991 官方网站: www.STCMCUDATA.com / www.STCMCU.com STC8 系列技术手册 2.6 STC8H1K08S2A10 系列提前通告  选型价格(不需要外部晶振、不需要外部复位) STC8H1K08S2 系列提前通告 2.7 年新品供货信息 2018 直接下载 USB 本身就可在线仿真 支持 SOP16 TSSOP20 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 程序加密后传输(防拦截) 看门狗 复位定时器 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 内部低压检测中断并可掉电唤醒 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 I2 C 位高级 PWM 定时器 互补对称死区 16 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) SPI 串口并可掉电唤醒 口最多数量 I/O 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 字节 SRAM 万次 字节 10 程序存储器 Flash 工作电压( ) V 单片机型号 - 13 - 传真: 0513-5501 2926/2956/2947 总机: 0513-5501 2928/2929/2966 江苏国芯科技有限公司 封装 1 月 送 样 是 0.95 0.90 是 是 是 有 是 有 4级 有 有 有 有 3 有 有 2 3K 18 2 STC8H1K08S2 1.7-5.5 8K 1K 研发顾问: 13922805190 技术支持: 13922829991 官方网站: www.STCMCUDATA.com / www.STCMCU.com STC8 系列技术手册  选型价格(不需要外部晶振、不需要外部复位) 封装 年新品供货信息 2018 直接下载 USB 本身就可在线仿真 支持 SOP8 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 程序加密后传输(防拦截) 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 看门狗 复位定时器 内部低压检测中断并可掉电唤醒 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 位高级 定时器 互补对称死区 16 PWM 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) I2 C SPI 串口并可掉电唤醒 口最多数量 I/O 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 字节 SRAM 万次 字节 10 程序存储器 Flash 工作电压( ) V 单片机型号 - 14 - 传真: 0513-5501 2926/2956/2947 总机: 0513-5501 2928/2929/2966 江苏国芯科技有限公司 1 月 送 样 是 ¥0.7 是 是 是 有 是 有 4级 有 有 有 10 位 有 3 有 有 1 6 3K 1 1.7-5.5 4K 256 STC8H04A10 研发顾问: 13922805190 技术支持: 13922829991 官方网站: www.STCMCUDATA.com / www.STCMCU.com STC8 系列技术手册 2.8 STC8H04A10 系列提前通告  选型价格(不需要外部晶振、不需要外部复位) 封装 年新品供货信息 2018 直接下载 USB 本身就可在线仿真 支持 SOP8 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 程序加密后传输(防拦截) 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 看门狗 复位定时器 内部低压检测中断并可掉电唤醒 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 位高级 定时器 互补对称死区 16 PWM 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) I2 C SPI 串口并可掉电唤醒 口最多数量 I/O 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 字节 SRAM 万次 字节 10 程序存储器 Flash 工作电压( ) V 单片机型号 - 15 - 传真: 0513-5501 2926/2956/2947 总机: 0513-5501 2928/2929/2966 江苏国芯科技有限公司 1 月 送 样 是 ¥0.6 是 是 是 有 是 有 4级 有 有 有 有 3 有 有 1 6 3K 1 1.7-5.5 4K 256 STC8H04 研发顾问: 13922805190 技术支持: 13922829991 官方网站: www.STCMCUDATA.com / www.STCMCU.com STC8 系列技术手册 2.9 STC8H04 系列提前通告  选型价格(不需要外部晶振、不需要外部复位) STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 3 管脚及说明 3.1 管脚图 STC8A8K64S4A12 系列管脚图 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 P2.5/A13/PWM5/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/PWM4/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/PWM3/MOSI_2/CCP0_2 P2.2/A10/PWM2/SS_2/ECI_2 P2.1/A9/PWM1 P4.2/RD_3/TxD2_2 P2.0/A8/PWM0/RSTSV P7.3/CCP3_3 P7.2/CCP2_3 P7.1/CCP1_3 P7.0/CCP0_3 P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP5.1/TxD3_2 P5.0/RxD3_2 3.1.1 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 STC8A8K64S4A12 LQFP64 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 P3.5/T1/T0CLKO/ECI_4/SS_4/PWMFLT P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 P6.7/PWM7_3 P6.6/PWM6_3 P6.5/PWM5_3 P6.4/PWM4_3 P4.0/WR_3/RxD2_2 Gnd P5.5 Vcc P5.4/RST/MCLKO ADC_AVcc CAN_Rx_2/RxD4_2/P5.2 CAN_Tx_2/TxD4_2/P5.3 TxD2/PWM1_2/ADC1/P1.1 ECI/T2/SS/PWM2_2/ADC2/P1.2 T2CLKO/MOSI/PWM3_2/ADC3/P1.3 PWM0_3/P6.0 PWM1_3/P6.1 PWM2_3/P6.2 PWM3_3/P6.3 CCP3/I2CSDA/MISO/PWM4_2/ADC4/P1.4 TxD_4/RD/P4.4 CCP2/I2CSCL/SCLK/PWM5_2/ADC5/P1.5 XTALO/CCP1/MCLKO_2/PWM6_2/RxD_3/ADC6/P1.6 XTALI/CCP0/PWM7_2/TxD_3/ADC7/P1.7 ADC_AGnd AVref 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 CCP3_2/PWM6/A14/P2.6 PWM7/A15/P2.7 RxD3/ADC8/AD0/P0.0 TxD3/ADC9/AD1/P0.1 CAN_Rx/RxD4/ADC10/AD2/P0.2 ECI_3/SS_3/P7.4 MOSI_3/P7.5 I2CSDA_3/MISO_3/P7.6 I2CSCL_3/SCLK_3/P7.7 RxD_4/WR/P4.3 CAN_Tx/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 T4/ADC14/AD6/P0.6 T4CLKO/ADC15/AD7/P0.7 RxD2/PWM0_2/ADC0/P1.0 STC 第一脚 STC 第一脚 STC 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 第一脚 传真: 0513-5501 2926/2956/2947 - 16 - 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 36 35 34 33 32 31 30 29 28 27 26 25 P2.5/A13/PWM5/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/PWM4/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/PWM3/MOSI_2/CCP0_2 P2.2/A10/PWM2/SS_2/ECI_2 P2.1/A9/PWM1 P4.2/RD_3/TxD2_2 P2.0/A8/PWM0/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP5.1/TxD3_2 P5.0/RxD3_2 STC8 系列技术手册 STC8A8K64S4A12 LQFP48 1 2 3 4 5 6 7 8 9 10 11 12 37 38 39 40 41 42 43 44 45 46 47 48 CAN_Rx_2/RxD4_2/P5.2 CAN_Tx_2/TxD4_2/P5.3 TxD2/PWM1_2/ADC1/P1.1 ECI/T2/SS/PWM2_2/ADC2/P1.2 T2CLKO/MOSI/PWM3_2/ADC3/P1.3 CCP3/I2CSDA/MISO/PWM4_2/ADC4/P1.4 TxD_4/RD/P4.4 CCP2/I2CSCL/SCLK/PWM5_2/ADC5/P1.5 XTALO/CCP1/MCLKO_2/PWM6_2/RxD_3/ADC6/P1.6 XTALI/CCP0/PWM7_2/TxD_3/ADC7/P1.7 ADC_AGnd AVref CCP3_2/PWM6/A14/P2.6 PWM7/A15/P2.7 RxD3/ADC8/AD0/P0.0 TxD3/ADC9/AD1/P0.1 CAN_Rx/RxD4/ADC10/AD2/P0.2 RxD_4/WR/P4.3 CAN_Tx/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 T4/ADC14/AD6/P0.6 T4CLKO/ADC15/AD7/P0.7 RxD2/PWM0_2/ADC0/P1.0 24 23 22 21 20 19 18 17 16 15 14 13 P3.5/T1/T0CLKO/ECI_4/SS_4/PWMFLT P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 P4.0/WR_3/RxD2_2 Gnd P5.5 Vcc P5.4/RST/MCLKO ADC_AVcc STC 第一脚 STC 第一脚 STC 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 第一脚 传真: 0513-5501 2926/2956/2947 - 17 - 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 33 32 31 30 29 28 27 26 25 24 23 P2.5/A13/PWM5/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/PWM4/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/PWM3/MOSI_2/CCP0_2 P2.2/A10/PWM2/SS_2/ECI_2 P2.1/A9/PWM1 P4.2/RD_3/TxD2_2 P2.0/A8/PWM0/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/ECI_4/SS_4/PWMFLT STC8 系列技术手册 34 35 36 37 38 39 40 41 42 43 44 STC8A8K64S4A12 LQFP44 22 21 20 19 18 17 16 15 14 13 12 P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 P4.0/WR_3/RxD2_2 Gnd P5.5 Vcc P5.4/RST/MCLKO ADC_AVcc RxD2/PWM0_2/ADC0/P1.0 TxD2/PWM1_2/ADC1/P1.1 ECI/T2/SS/PWM2_2/ADC2/P1.2 T2CLKO/MOSI/PWM3_2/ADC3/P1.3 CCP3/I2CSDA/MISO/PWM4_2/ADC4/P1.4 TxD_4/RD/P4.4 CCP2/I2CSCL/SCLK/PWM5_2/ADC5/P1.5 XTALO/CCP1/MCLKO_2/PWM6_2/RxD_3/ADC6/P1.6 XTALI/CCP0/PWM7_2/TxD_3/ADC7/P1.7 ADC_AGnd AVref 1 2 3 4 5 6 7 8 9 10 11 CCP3_2/PWM6/A14/P2.6 PWM7/A15/P2.7 RxD3/ADC8/AD0/P0.0 TxD3/ADC9/AD1/P0.1 CAN_Rx/RxD4/ADC10/AD2/P0.2 RxD_4/WR/P4.3 CAN_Tx/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 T4/ADC14/AD6/P0.6 T4CLKO/ADC15/AD7/P0.7 正看芯片丝印左下方小圆点处为第一脚 STC 第一脚 STC 第一脚 STC 第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 18 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 江苏国芯科技有限公司 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 STC8A8K64S4A12 PDIP40 CAN_Tx/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 T4/ADC14/AD6/P0.6 T4CLKO/ADC15/AD7/P0.7 RxD2/PWM0_2/ADC0/P1.0 TxD2/PWM1_2/ADC1/P1.1 ECI/T2/SS/PWM2_2/ADC2/P1.2 T2CLKO/MOSI/PWM3_2/ADC3/P1.3 CCP3/I2CSDA/MISO/PWM4_2/ADC4/P1.4 CCP2/I2CSCL/SCLK/PWM5_2/ADC5/P1.5 XTALO/CCP1/MCLKO_2/PWM6_2/RxD_3/ADC6/P1.6 XTALI/CCP0/PWM7_2/TxD_3/ADC7/P1.7 ADC_AGnd AVref ADC_AVcc MCLKO/RST/P5.4 Vcc P5.5 Gnd 总机: 0513-5501 2928/2929/2966 技术支持: 13922829991 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 研发顾问: 13922805190 P0.2/AD2/ADC10/RxD4/CAN_Rx P0.1/AD1/ADC9/TxD3 P0.0/AD0/ADC8/RxD3 P2.7/A15/PWM7 P2.6/A14/PWM6/CCP3_2 P2.5/A13/PWM5/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/PWM4/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/PWM3/MOSI_2/CCP0_2 P2.2/A10/PWM2/SS_2/ECI_2 P2.1/A9/PWM1 P2.0/A8/PWM0/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/ECI_4/SS_4/PWMFLT P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 传真: 0513-5501 2926/2956/2947 - 19 - STC8 系列技术手册 技术支持: 13922829991 研发顾问: 13922805190 STC8A4K64S2A12 系列管脚图 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 P2.5/A13/PWM5/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/PWM4/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/PWM3/MOSI_2/CCP0_2 P2.2/A10/PWM2/SS_2/ECI_2 P2.1/A9/PWM1 P4.2/RD_3/TxD2_2 P2.0/A8/PWM0/RSTSV P7.3/CCP3_3 P7.2/CCP2_3 P7.1/CCP1_3 P7.0/CCP0_3 P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP5.1 P5.0 3.1.2 官方网站: www.STCMCUDATA.com / www.STCMCU.com 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 STC8A4K64S2A12 LQFP64 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 P3.5/T1/T0CLKO/ECI_4/SS_4/PWMFLT P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 P6.7/PWM7_3 P6.6/PWM6_3 P6.5/PWM5_3 P6.4/PWM4_3 P4.0/WR_3/RxD2_2 Gnd P5.5 Vcc P5.4/RST/MCLKO ADC_AVcc P5.2 P5.3 TxD2/PWM1_2/ADC1/P1.1 ECI/T2/SS/PWM2_2/ADC2/P1.2 T2CLKO/MOSI/PWM3_2/ADC3/P1.3 PWM0_3/P6.0 PWM1_3/P6.1 PWM2_3/P6.2 PWM3_3/P6.3 CCP3/I2CSDA/MISO/PWM4_2/ADC4/P1.4 TxD_4/RD/P4.4 CCP2/I2CSCL/SCLK/PWM5_2/ADC5/P1.5 XTALO/CCP1/MCLKO_2/PWM6_2/RxD_3/ADC6/P1.6 XTALI/CCP0/PWM7_2/TxD_3/ADC7/P1.7 ADC_AGnd AVref 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 CCP3_2/PWM6/A14/P2.6 PWM7/A15/P2.7 ADC8/AD0/P0.0 ADC9/AD1/P0.1 ADC10/AD2/P0.2 ECI_3/SS_3/P7.4 MOSI_3/P7.5 I2CSDA_3/MISO_3/P7.6 I2CSCL_3/SCLK_3/P7.7 RxD_4/WR/P4.3 ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 T4/ADC14/AD6/P0.6 T4CLKO/ADC15/AD7/P0.7 RxD2/PWM0_2/ADC0/P1.0 STC 第一脚 STC 第一脚 STC 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 第一脚 传真: 0513-5501 2926/2956/2947 - 20 - 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 36 35 34 33 32 31 30 29 28 27 26 25 P2.5/A13/PWM5/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/PWM4/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/PWM3/MOSI_2/CCP0_2 P2.2/A10/PWM2/SS_2/ECI_2 P2.1/A9/PWM1 P4.2/RD_3/TxD2_2 P2.0/A8/PWM0/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP5.1 P5.0 STC8 系列技术手册 37 38 39 40 41 42 43 44 45 46 47 48 STC8A4K64S2A12 LQFP48 24 23 22 21 20 19 18 17 16 15 14 13 P3.5/T1/T0CLKO/ECI_4/SS_4/PWMFLT P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 P4.0/WR_3/RxD2_2 Gnd P5.5 Vcc P5.4/RST/MCLKO ADC_AVcc P5.2 P5.3 TxD2/PWM1_2/ADC1/P1.1 ECI/T2/SS/PWM2_2/ADC2/P1.2 T2CLKO/MOSI/PWM3_2/ADC3/P1.3 CCP3/I2CSDA/MISO/PWM4_2/ADC4/P1.4 TxD_4/RD/P4.4 CCP2/I2CSCL/SCLK/PWM5_2/ADC5/P1.5 XTALO/CCP1/MCLKO_2/PWM6_2/RxD_3/ADC6/P1.6 XTALI/CCP0/PWM7_2/TxD_3/ADC7/P1.7 ADC_AGnd AVref 1 2 3 4 5 6 7 8 9 10 11 12 CCP3_2/PWM6/A14/P2.6 PWM7/A15/P2.7 ADC8/AD0/P0.0 ADC9/AD1/P0.1 ADC10/AD2/P0.2 RxD_4/WR/P4.3 ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 T4/ADC14/AD6/P0.6 T4CLKO/ADC15/AD7/P0.7 RxD2/PWM0_2/ADC0/P1.0 STC 第一脚 STC 第一脚 STC 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 第一脚 传真: 0513-5501 2926/2956/2947 - 21 - 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 33 32 31 30 29 28 27 26 25 24 23 P2.5/A13/PWM5/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/PWM4/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/PWM3/MOSI_2/CCP0_2 P2.2/A10/PWM2/SS_2/ECI_2 P2.1/A9/PWM1 P4.2/RD_3/TxD2_2 P2.0/A8/PWM0/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/ECI_4/SS_4/PWMFLT STC8 系列技术手册 34 35 36 37 38 39 40 41 42 43 44 STC8A4K64S2A12 LQFP44 22 21 20 19 18 17 16 15 14 13 12 P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 P4.0/WR_3/RxD2_2 Gnd P5.5 Vcc P5.4/RST/MCLKO ADC_AVcc RxD2/PWM0_2/ADC0/P1.0 TxD2/PWM1_2/ADC1/P1.1 ECI/T2/SS/PWM2_2/ADC2/P1.2 T2CLKO/MOSI/PWM3_2/ADC3/P1.3 CCP3/I2CSDA/MISO/PWM4_2/ADC4/P1.4 TxD_4/RD/P4.4 CCP2/I2CSCL/SCLK/PWM5_2/ADC5/P1.5 XTALO/CCP1/MCLKO_2/PWM6_2/RxD_3/ADC6/P1.6 XTALI/CCP0/PWM7_2/TxD_3/ADC7/P1.7 ADC_AGnd AVref 1 2 3 4 5 6 7 8 9 10 11 CCP3_2/PWM6/A14/P2.6 PWM7/A15/P2.7 ADC8/AD0/P0.0 ADC9/AD1/P0.1 ADC10/AD2/P0.2 RxD_4/WR/P4.3 ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 T4/ADC14/AD6/P0.6 T4CLKO/ADC15/AD7/P0.7 STC 第一脚 STC 第一脚 STC 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 第一脚 传真: 0513-5501 2926/2956/2947 - 22 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 江苏国芯科技有限公司 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 STC8A4K64S2A12 PDIP40 ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 T4/ADC14/AD6/P0.6 T4CLKO/ADC15/AD7/P0.7 RxD2/PWM0_2/ADC0/P1.0 TxD2/PWM1_2/ADC1/P1.1 ECI/T2/SS/PWM2_2/ADC2/P1.2 T2CLKO/MOSI/PWM3_2/ADC3/P1.3 CCP3/I2CSDA/MISO/PWM4_2/ADC4/P1.4 CCP2/I2CSCL/SCLK/PWM5_2/ADC5/P1.5 XTALO/CCP1/MCLKO_2/PWM6_2/RxD_3/ADC6/P1.6 XTALI/CCP0/PWM7_2/TxD_3/ADC7/P1.7 ADC_AGnd AVref ADC_AVcc MCLKO/RST/P5.4 Vcc P5.5 Gnd 总机: 0513-5501 2928/2929/2966 技术支持: 13922829991 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 研发顾问: 13922805190 P0.2/AD2/ADC10 P0.1/AD1/ADC9 P0.0/AD0/ADC8 P2.7/A15/PWM7 P2.6/A14/PWM6/CCP3_2 P2.5/A13/PWM5/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/PWM4/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/PWM3/MOSI_2/CCP0_2 P2.2/A10/PWM2/SS_2/ECI_2 P2.1/A9/PWM1 P2.0/A8/PWM0/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/ECI_4/SS_4/PWMFLT P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 传真: 0513-5501 2926/2956/2947 - 23 - STC8 系列技术手册 技术支持: 13922829991 研发顾问: 13922805190 STC8F2K64S4 系列管脚图 33 32 31 30 29 28 27 26 25 24 23 P2.5/A13/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/MOSI_2/CCP0_2 P2.2/A10/SS_2/ECI_2 P2.1/A9 P4.2/RD_3/TxD2_2 P2.0/A8/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/ECI_4/SS_4 3.1.3 官方网站: www.STCMCUDATA.com / www.STCMCU.com 34 35 36 37 38 39 40 41 42 43 44 STC8F2K64S4 LQFP44 22 21 20 19 18 17 16 15 14 13 12 P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 P4.0/WR_3/RxD2_2 Gnd P5.5 Vcc P5.4/RST/MCLKO P4.7 RxD2/P1.0 TxD2/P1.1 ECI/T2/SS/P1.2 T2CLKO/MOSI/P1.3 CCP3/I2CSDA/MISO/P1.4 TxD_4/RD/P4.4 CCP2/I2CSCL/SCLK/P1.5 XTALO/CCP1/MCLKO_2/RxD_3/P1.6 XTALI/CCP0/TxD_3/P1.7 P4.5 P4.6 1 2 3 4 5 6 7 8 9 10 11 CCP3_2/A14/P2.6 A15/P2.7 RxD3/AD0/P0.0 TxD3/AD1/P0.1 RxD4/AD2/P0.2 RxD_4/WR/P4.3 TxD4/AD3/P0.3 T3/AD4/P0.4 T3CLKO/AD5/P0.5 T4/AD6/P0.6 T4CLKO/AD7/P0.7 STC 第一脚 STC 第一脚 STC 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 第一脚 传真: 0513-5501 2926/2956/2947 - 24 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 江苏国芯科技有限公司 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 STC8F2K64S4 PDIP40 TxD4/AD3/P0.3 T3/AD4/P0.4 T3CLKO/AD5/P0.5 T4/AD6/P0.6 T4CLKO/AD7/P0.7 RxD2/P1.0 TxD2/P1.1 ECI/T2/SS/P1.2 T2CLKO/MOSI/P1.3 CCP3/I2CSDA/MISO/P1.4 CCP2/I2CSCL/SCLK/P1.5 XTALO/CCP1/MCLKO_2/RxD_3/P1.6 XTALI/CCP0/TxD_3/P1.7 P4.5 P4.6 P4.7 MCLKO/RST/P5.4 Vcc P5.5 Gnd 总机: 0513-5501 2928/2929/2966 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 技术支持: 13922829991 研发顾问: 13922805190 P0.2/AD2/RxD4 P0.1/AD1/TxD3 P0.0/AD0/RxD3 P2.7/A15 P2.6/A14/CCP3_2 P2.5/A13/SCLK_2/CCP2_2/I2CSCL_2 P2.4/A12/MISO_2/CCP1_2/I2CSDA_2 P2.3/A11/MOSI_2/CCP0_2 P2.2/A10/SS_2/ECI_2 P2.1/A9 P2.0/A8/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/ECI_4/SS_4 P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 传真: 0513-5501 2926/2956/2947 - 25 - 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 24 23 22 21 20 19 18 17 P2.3/MOSI_2/CCP0_2 P2.2/SS_2/ECI_2 P2.1 P2.0/RSTSV P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/ECI_4/SS_4 P3.4/T0/T1CLKO/MOSI_4/CMPO STC8 系列技术手册 25 26 27 28 29 30 31 32 STC8F2K64S4 LQFP32 QFN32 1 2 3 4 5 6 7 8 I2CSDA_2/MISO_2/CCP1_2/P2.4 I2CSCL_2/SCLK_2/CCP2_2/P2.5 CCP3_2/P2.6 P2.7 RxD3/P0.0 TxD3/P0.1 RxD4/P0.2 TxD4/P0.3 16 15 14 13 12 11 10 9 P3.3/INT1/CCP0_4/MISO_4/I2CSDA_4 P3.2/INT0/CCP1_4/SCLK_4/I2CSCL_4 P3.1/TxD/CCP2_4 P3.0/RxD/CCP3_4/INT4 Gnd P5.5 Vcc P5.4/RST/MCLKO STC RxD2/P1.0 TxD2/P1.1 ECI/T2/SS/P1.2 T2CLKO/MOSI/P1.3 CCP3/I2CSDA/MISO/P1.4 CCP2/I2CSCL/SCLK/P1.5 XTALO/CCP1/MCLKO_2/RxD_3/P1.6 XTALI/CCP0/TxD_3/P1.7 第一脚 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 STC 第一脚 STC 第一脚 传真: 0513-5501 2926/2956/2947 - 26 - STC8 系列技术手册 技术支持: 13922829991 研发顾问: 13922805190 STC8F2K64S2 系列管脚图 33 32 31 30 29 28 27 26 25 24 23 P2.5/A13/SCLK_2/I2CSCL_2 P2.4/A12/MISO_2/I2CSDA_2 P2.3/A11/MOSI_2 P2.2/A10/SS_2 P2.1/A9 P4.2/RD_3/TxD2_2 P2.0/A8/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4 3.1.4 官方网站: www.STCMCUDATA.com / www.STCMCU.com 34 35 36 37 38 39 40 41 42 43 44 STC8F2K64S2 LQFP44 22 21 20 19 18 17 16 15 14 13 12 P3.4/T0/T1CLKO/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/WR_3/RxD2_2 Gnd P5.5 Vcc P5.4/RST/MCLKO P4.7 RxD2/P1.0 TxD2/P1.1 T2/SS/P1.2 T2CLKO/MOSI/P1.3 I2CSDA/MISO/P1.4 TxD_4/RD/P4.4 I2CSCL/SCLK/P1.5 XTALO/MCLKO_2/RxD_3/P1.6 XTALI/TxD_3/P1.7 P4.5 P4.6 1 2 3 4 5 6 7 8 9 10 11 A14/P2.6 A15/P2.7 AD0/P0.0 AD1/P0.1 AD2/P0.2 WR/P4.3 AD3/P0.3 T3/AD4/P0.4 T3CLKO/AD5/P0.5 T4/AD6/P0.6 T4CLKO/AD7/P0.7 STC 第一脚 STC 第一脚 STC 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 第一脚 传真: 0513-5501 2926/2956/2947 - 27 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 江苏国芯科技有限公司 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 STC8F2K64S2 PDIP40 AD3/P0.3 T3/AD4/P0.4 T3CLKO/AD5/P0.5 T4/AD6/P0.6 T4CLKO/AD7/P0.7 RxD2/P1.0 TxD2/P1.1 T2/SS/P1.2 T2CLKO/MOSI/P1.3 I2CSDA/MISO/P1.4 I2CSCL/SCLK/P1.5 XTALO/MCLKO_2/RxD_3/P1.6 XTALI/TxD_3/P1.7 P4.5 P4.6 P4.7 MCLKO/RST/P5.4 Vcc P5.5 Gnd 总机: 0513-5501 2928/2929/2966 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 技术支持: 13922829991 研发顾问: 13922805190 P0.2/AD2 P0.1/AD1 P0.0/AD0 P2.7/A15 P2.6/A14 P2.5/A13/SCLK_2/I2CSCL_2 P2.4/A12/MISO_2/I2CSDA_2 P2.3/A11/MOSI_2 P2.2/A10/SS_2 P2.1/A9 P2.0/A8/RSTSV P4.1/ALE/CMPO_2 P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4 P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/MISO_4/I2CSDA_4 P3.2/INT0/SCLK_4/I2CSCL_4 P3.1/TxD P3.0/RxD/INT4 传真: 0513-5501 2926/2956/2947 - 28 - 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 24 23 22 21 20 19 18 17 P2.3/MOSI_2 P2.2/SS_2 P2.1 P2.0/RSTSV P3.7/INT3/RD_2/TxD_2/CMP+ P3.6/INT2/WR_2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4 P3.4/T0/T1CLKO/MOSI_4/CMPO STC8 系列技术手册 25 26 27 28 29 30 31 32 STC8F2K64S2 LQFP32 QFN32 1 2 3 4 5 6 7 8 I2CSDA_2/MISO_2/P2.4 I2CSCL_2/SCLK_2/P2.5 P2.6 P2.7 P0.0 P0.1 P0.2 P0.3 16 15 14 13 12 11 10 9 P3.3/INT1/MISO_4/I2CSDA_4 P3.2/INT0/SCLK_4/I2CSCL_4 P3.1/TxD P3.0/RxD/INT4 Gnd P5.5 Vcc P5.4/RST/MCLKO STC RxD2/P1.0 TxD2/P1.1 T2/SS/P1.2 T2CLKO/MOSI/P1.3 I2CSDA/MISO/P1.4 I2CSCL/SCLK/P1.5 XTALO/MCLKO_2/RxD_3/P1.6 XTALI/TxD_3/P1.7 第一脚 STC 第一脚 STC 正看芯片丝印左下方小圆点处为第一脚 第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 江苏国芯科技有限公司 1 2 3 4 5 6 7 8 9 10 STC8F2K64S2 TSSOP20/SOP20 T2/SS/P1.2 T2CLKO/MOSI/P1.3 I2CSDA/MISO/P1.4 I2CSCL/SCLK/P1.5 MCLKO_2/XTALO/RxD_3/P1.6 XTALI/TxD_3/P1.7 MCLKO/RST/P5.4 Vcc P5.5 Gnd 总机: 0513-5501 2928/2929/2966 20 19 18 17 16 15 14 13 12 11 P1.1/TxD2 P1.0 /RxD2 P3.7/CMP+/INT3/TxD_2 P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4 P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/MISO_4/I2CSDA_4 P3.2/INT0/SCLK_4/I2CSCL_4 P3.1/TxD P3.0/RxD/INT4 传真: 0513-5501 2926/2956/2947 - 29 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 3.1.5 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 STC8F2K64S2 SOP16 RxD2/P1.0 TxD2/P1.1 MCLKO_2/XTALO/RxD_3/P1.6 XTALI/TxD_3/P1.7 MCLKO/RST/P5.4 Vcc P5.5 Gnd 技术支持: 13922829991 研发顾问: 13922805190 P3.7/CMP+/INT3/TxD_2 P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4 P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/MISO_4/I2CSDA_4 P3.2/INT0/SCLK_4/I2CSCL_4 P3.1/TxD P3.0/RxD/INT4 STC8H1K08S2A10 系列管脚图 1 2 3 4 5 6 7 8 9 ADC参考源 10 20 19 18 17 16 15 14 13 12 11 P1.1/ADC1/PWM0N/TxD2 P1.0/ADC0/PWM0P/RxD2 P3.7/CMP+/INT3/TxD_2 P3.6/ADC14/INT2/RxD_2/CMPP3.5/ADC13/T1/T0CLKO/SS_4/PWMFLT P3.4/ADC12/PWM3P_2/T0/T1CLKO/MOSI_4/CMPO P3.3/ADC11/PWM3N_2/INT1/MISO_4/I2CSDA_4 P3.2/ADC10/INT0/SCLK_4/I2CSCL_4 P3.1/ADC9/TxD/D+ P3.0/ADC8/RxD/D-/INT4 RxD2/PWM0P/ADC0/P1.0 TxD2/PWM0N/ADC1/P1.1 MCLKO_2/XTALO/RxD_3/PWM3P/P1.6 XTALI/TxD_3/PWM3N/P1.7 MCLKO/RST/P5.4 Vcc/ADC_AVcc ADC_Vref Gnd/ADC_AGnd 1 2 3 4 5 6 7 ADC参考源 8 16 15 14 13 12 11 10 9 P3.7/CMP+/INT3/TxD_2 P3.6/ADC14/INT2/RxD_2/CMPP3.5/ADC13/T1/T0CLKO/SS_4/PWMFLT P3.4/ADC12/PWM3P_2/T0/T1CLKO/MOSI_4/CMPO P3.3/ADC11/PWM3N_2/INT1/MISO_4/I2CSDA_4 P3.2/ADC10/INT0/SCLK_4/I2CSCL_4 P3.1/ADC9/TxD/D+ P3.0/ADC8/RxD/D-/INT4 SOP16 江苏国芯科技有限公司 TSSOP20/SOP20 T2/SS/PWM1P/P1.2 T2CLKO/MOSI/PWM1N/P1.3 I2CSDA/MISO/PWM2P/P1.4 I2CSCL/SCLK/PWM2N/P1.5 MCLKO_2/XTALO/RxD_3/PWM3P/P1.6 XTALI/TxD_3/PWM3N/P1.7 MCLKO/RST/P5.4 Vcc/ADC_AVcc ADC_Vref Gnd/ADC_AGnd 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 30 - STC8 系列技术手册 3.1.6 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 STC8H1K08S2 系列管脚图 RxD2/P1.0 TxD2/P1.1 MCLKO_2/XTALO/RxD_3/P1.6 XTALI/TxD_3/P1.7 MCLKO/RST/P5.4 Vcc P5.5 Gnd 1 2 3 4 5 6 7 8 江苏国芯科技有限公司 20 19 18 17 16 15 14 13 12 11 P1.1/TxD2 P1.0 /RxD2 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4 P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/MISO_4/I2CSDA_4 P3.2/INT0/SCLK_4/I2CSCL_4 P3.1/TxD P3.0/RxD/INT4 SOP16 1 2 3 4 5 6 7 8 9 10 TSSOP20/SOP20 T2/SS/P1.2 T2CLKO/MOSI/P1.3 I2CSDA/MISO/P1.4 I2CSCL/SCLK/P1.5 MCLKO_2/XTALO/RxD_3/P1.6 XTALI/TxD_3/P1.7 MCLKO/RST/P5.4 Vcc P5.5 Gnd 16 15 14 13 12 11 10 9 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4 P3.4/T0/T1CLKO/MOSI_4/CMPO P3.3/INT1/MISO_4/I2CSDA_4 P3.2/INT0/SCLK_4/I2CSCL_4 P3.1/TxD P3.0/RxD/INT4 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 31 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 3.2 管脚说明 3.2.1 STC8A8K64S4A12 系列管脚说明 编号 LQFP64S LQFP48 1 1 2 2 3 4 5 3 4 5 6 7 8 9 江苏国芯科技有限公司 LQFP44 2 3 4 名称 类 型 P5.2 I/O RxD4_2 I P5.3 I/O TxD4_2 O P1.1 I/O ADC1 I ADC 模拟输入通道 1 PWM1_2 O 增强 PWM 通道 1 输出脚 TxD2 O 串口 2 的发送脚 P1.2 I/O ADC2 I ADC 模拟输入通道 2 PWM2_2 O 增强 PWM 通道 2 输出脚 SS I/O T2 I 定时器 2 外部时钟输入 ECI I PCA 的外部脉冲输入 P1.3 I/O ADC3 I ADC 模拟输入通道 3 PWM3_2 O 增强 PWM 通道 3 输出脚 MOSI I/O SPI 主机输出从机输入 T2CLKO O 定时器 2 时钟分频输出 P6.0 I/O 标准 IO 口 PWM0_3 O P6.1 I/O PWM1_3 O P6.2 I/O PWM2_3 O P6.3 I/O PWM3_3 O PDIP40 7 8 9 总机: 0513-5501 2928/2929/2966 说明 标准 IO 口 串口 4 的接收脚 标准 IO 口 串口 4 的发送脚 标准 IO 口 标准 IO 口 SPI 从机选择 标准 IO 口 增强 PWM 通道 0 输出脚 标准 IO 口 增强 PWM 通道 1 输出脚 标准 IO 口 增强 PWM 通道 2 输出脚 标准 IO 口 增强 PWM 通道 3 输出脚 传真: 0513-5501 2926/2956/2947 - 32 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 10 11 12 13 14 LQFP48 6 7 8 9 10 LQFP44 5 8 9 名称 类型 说明 P1.4 I/O ADC4 I ADC 模拟输入通道 4 10 PWM4_2 O 增强 PWM 通道 4 输出脚 MISO I/O SPI 主机输入从机输出 SDA I/O I2C 接口的数据线 CCP3 I/O PCA 的捕获输入和脉冲输出 P4.4 I/O 标准 IO 口 RD O 外部总线的读信号线 TxD_4 O 串口 1 的发送脚 P1.5 I/O ADC5 I ADC 模拟输入通道 5 11 PWM5_2 O 增强 PWM 通道 5 输出脚 SCLK I/O SPI 的时钟脚 SCL I/O I2C 的时钟线 CCP2 I/O PCA 的捕获输入和脉冲输出 P1.6 I/O 标准 IO 口 ADC6 I ADC 模拟输入通道 6 RxD_3 I 串口 1 的接收脚 12 PWM6_2 O 增强 PWM 通道 6 输出脚 MCLKO_2 O 主时钟分频输出 CCP1 I/O XTALO O P1.7 I/O ADC7 I ADC 模拟输入通道 7 13 TxD_3 O 串口 1 的发送脚 PWM7_2 O 增强 PWM 通道 7 输出脚 CCP0 I/O PCA 的捕获输入和脉冲输出 XTALI I 外部晶振/外部时钟的输入脚 标准 IO 口 标准 IO 口 PCA 的捕获输入和脉冲输出 外部晶振的输出脚 标准 IO 口 15 11 10 14 ADC_AGnd GND 16 12 11 15 AVref I 17 13 12 16 ADC_AVcc VCC P5.4 I/O 标准 IO 口 RST I 复位引脚 MCLKO O 主时钟分频输出 18 14 13 17 19 15 14 18 Vcc VCC 20 16 15 19 P5.5 I/O 21 17 16 20 Gnd GND 江苏国芯科技有限公司 研发顾问: 13922805190 PDIP40 6 7 技术支持: 13922829991 总机: 0513-5501 2928/2929/2966 ADC 地线 ADC 的参考电压脚 ADC 电源脚 电源脚 标准 IO 口 地线 传真: 0513-5501 2926/2956/2947 - 33 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 22 LQFP48 18 LQFP44 17 24 25 26 28 29 30 31 19 20 21 22 23 江苏国芯科技有限公司 18 19 20 21 22 研发顾问: 13922805190 名称 类型 说明 P4.0 I/O WR_3 O 外部总线的写信号线 RxD2_2 I 串口 2 的接收脚 P6.4 I/O PWM4_3 O P6.5 I/O PWM5_3 O P6.6 I/O PWM6_3 O P6.7 I/O PWM7_3 O P3.0 I/O RxD I CCP3_4 I/O INT4 I 外部中断 4 P3.1 I/O 标准 IO 口 TxD O CCP2_4 I/O PCA 的捕获输入和脉冲输出 P3.2 I/O 标准 IO 口 INT0 I 外部中断 0 CCP1_4 I/O PCA 的捕获输入和脉冲输出 SCLK_4 I/O SPI 的时钟脚 SCL_4 I/O I2C 的时钟线 P3.3 I/O 标准 IO 口 INT1 I 外部中断 1 CCP0_4 I/O PCA 的捕获输入和脉冲输出 MISO_4 I/O SPI 主机输入从机输出 SDA_4 I/O I2C 接口的数据线 P3.4 I/O 标准 IO 口 T0 I 定时器 0 外部时钟输入 T1CLKO O 定时器 1 时钟分频输出 MOSI_4 I/O SPI 主机输出从机输入 CMPO O PDIP40 23 27 技术支持: 13922829991 21 22 23 24 25 总机: 0513-5501 2928/2929/2966 标准 IO 口 标准 IO 口 增强 PWM 通道 4 输出脚 标准 IO 口 增强 PWM 通道 5 输出脚 标准 IO 口 增强 PWM 通道 6 输出脚 标准 IO 口 增强 PWM 通道 7 输出脚 标准 IO 口 串口 1 的接收脚 PCA 的捕获输入和脉冲输出 串口 1 的发送脚 比较器输出 传真: 0513-5501 2926/2956/2947 - 34 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 32 LQFP48 24 33 25 34 26 35 36 37 27 28 29 LQFP44 23 24 25 26 26 27 28 29 39 40 41 43 30 31 江苏国芯科技有限公司 27 28 研发顾问: 13922805190 名称 类型 说明 P3.5 I/O T1 I 定时器 1 外部时钟输入 T0CLKO O 定时器 0 时钟分频输出 ECI_4 I PCA 的外部脉冲输入 SS_4 I SPI 的从机选择脚(主机为输出) PWMFLT I 增强 PWM 的外部异常检测脚 P5.0 I/O RxD3_2 I P5.1 I/O TxD3_2 O P3.6 I/O 标准 IO 口 INT2 I 外部中断 2 WR_2 O 外部总线的写信号线 RxD_2 I 串口 1 的接收脚 CMP- I 比较器负极输入 P3.7 I/O 标准 IO 口 INT3 I 外部中断 3 RD_2 O 外部总线的读信号线 TxD_2 O 串口 1 的发送脚 CMP+ I 比较器正极输入 P4.1 I/O ALE O 地址锁存信号 CMPO_2 O 比较器输出 P7.0 I/O 标准 IO 口 CCP0_3 I/O PCA 的捕获输入和脉冲输出 P7.1 I/O 标准 IO 口 CCP1_3 I/O PCA 的捕获输入和脉冲输出 P7.2 I/O 标准 IO 口 CCP2_3 I/O PCA 的捕获输入和脉冲输出 P7.3 I/O 标准 IO 口 CCP3_3 I/O PCA 的捕获输入和脉冲输出 P2.0 I/O 标准 IO 口 A8 I 地址总线 PWM0 O 增强 PWM 通道 0 输出脚 P4.2 I/O RD_3 O 外部总线的读信号线 TxD2_2 O 串口 2 的发送脚 PDIP40 38 42 技术支持: 13922829991 30 总机: 0513-5501 2928/2929/2966 标准 IO 口 标准 IO 口 串口 3 的接收脚 标准 IO 口 串口 3 的发送脚 标准 IO 口 标准 IO 口 传真: 0513-5501 2926/2956/2947 - 35 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 44 45 46 47 48 49 50 51 LQFP48 32 33 34 35 36 37 38 39 江苏国芯科技有限公司 LQFP44 29 30 31 32 33 34 35 36 技术支持: 13922829991 研发顾问: 13922805190 名称 类型 说明 P2.1 I/O 标准 IO 口 A9 I 地址总线 PWM1 O 增强 PWM 通道 1 输出脚 P2.2 I/O 标准 IO 口 A10 I 地址总线 PWM2 O 增强 PWM 通道 2 输出脚 SS_2 I SPI 的从机选择脚(主机为输出) ECI_2 I PCA 的外部脉冲输入 P2.3 I/O 标准 IO 口 A11 I 地址总线 PWM3 O 增强 PWM 通道 3 输出脚 MOSI_2 I/O SPI 主机输出从机输入 CCP0_2 I/O PCA 的捕获输入和脉冲输出 P2.4 I/O 标准 IO 口 A12 I 地址总线 PWM4 O 增强 PWM 通道 4 输出脚 MISO_2 I/O SPI 主机输入从机输出 SDA_2 I/O I2C 接口的数据线 CCP1_2 I/O PCA 的捕获输入和脉冲输出 P2.5 I/O 标准 IO 口 A13 I 地址总线 PWM5 O 增强 PWM 通道 5 输出脚 SCLK_2 I/O SPI 的时钟脚 SCL_2 I/O I2C 的时钟线 CCP2_2 I/O PCA 的捕获输入和脉冲输出 P2.6 I/O 标准 IO 口 A14 I 地址总线 PWM6 O 增强 PWM 通道 6 输出脚 CCP3_2 I/O PCA 的捕获输入和脉冲输出 P2.7 I/O 标准 IO 口 A15 I 地址总线 PWM7 O 增强 PWM 通道 7 输出脚 P0.0 I/O 标准 IO 口 AD0 I 地址总线 ADC8 I ADC 模拟输入通道 8 RxD3 I 串口 3 的接收脚 PDIP40 31 32 33 34 35 36 37 38 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 36 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 52 53 LQFP48 40 41 LQFP44 37 38 39 40 55 56 57 59 60 42 43 44 江苏国芯科技有限公司 39 40 41 研发顾问: 13922805190 名称 类型 说明 P0.1 I/O 标准 IO 口 AD1 I 地址总线 ADC9 I ADC 模拟输入通道 9 TxD3 O 串口 3 的发送脚 P0.2 I/O 标准 IO 口 AD2 I 地址总线 ADC10 I ADC 模拟输入通道 10 RxD4 I 串口 4 的接收脚 P7.4 I/O SS_3 I SPI 的从机选择脚(主机为输出) ECI_3 I PCA 的外部脉冲输入 P7.5 I/O 标准 IO 口 MOSI_3 I/O SPI 主机输出从机输入 P7.6 I/O 标准 IO 口 MISO_3 I/O SPI 主机输入从机输出 SDA_3 I/O I2C 接口的数据线 P7.7 I/O 标准 IO 口 SCLK_3 I/O SPI 的时钟脚 SCL_3 I/O I2C 的时钟线 P4.3 I/O 标准 IO 口 WR O 外部总线的写信号线 RxD_4 I 串口 1 的接收脚 P0.3 I/O 标准 IO 口 AD3 I 地址总线 ADC11 I ADC 模拟输入通道 11 TxD4 O 串口 4 的发送脚 P0.4 I/O 标准 IO 口 AD4 I 地址总线 ADC12 I ADC 模拟输入通道 12 T3 I 定时器 3 外部时钟输入 PDIP40 54 58 技术支持: 13922829991 1 2 总机: 0513-5501 2928/2929/2966 标准 IO 口 传真: 0513-5501 2926/2956/2947 - 37 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 61 62 63 64 LQFP48 45 46 47 48 江苏国芯科技有限公司 LQFP44 42 43 44 1 技术支持: 13922829991 研发顾问: 13922805190 名称 类型 说明 P0.5 I/O 标准 IO 口 AD5 I 地址总线 ADC13 I ADC 模拟输入通道 13 T3CLKO O 定时器 3 时钟分频输出 P0.6 I/O 标准 IO 口 AD6 I 地址总线 ADC14 I ADC 模拟输入通道 14 T4 I 定时器 4 外部时钟输入 P0.7 I/O 标准 IO 口 AD7 I 地址总线 T4CLKO O 定时器 4 时钟分频输出 P1.0 I/O 标准 IO 口 ADC0 I ADC 模拟输入通道 0 PWM0_2 O 增强 PWM 通道 0 输出脚 RxD2 I 串口 2 的接收脚 PDIP40 3 4 5 6 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 38 - STC8 系列技术手册 3.2.2 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 STC8A4K64S2A12 系列管脚说明 编号 类 型 1 1 P5.2 I/O 标准 IO 口 2 2 P5.3 I/O 标准 IO 口 P1.1 I/O 标准 IO 口 ADC1 I ADC 模拟输入通道 1 PWM1_2 O 增强 PWM 通道 1 输出脚 TxD2 O 串口 2 的发送脚 P1.2 I/O ADC2 I ADC 模拟输入通道 2 PWM2_2 O 增强 PWM 通道 2 输出脚 SS I/O T2 I 定时器 2 外部时钟输入 ECI I PCA 的外部脉冲输入 P1.3 I/O ADC3 I ADC 模拟输入通道 3 PWM3_2 O 增强 PWM 通道 3 输出脚 MOSI I/O SPI 主机输出从机输入 T2CLKO O 定时器 2 时钟分频输出 P6.0 I/O 标准 IO 口 PWM0_3 O P6.1 I/O PWM1_3 O P6.2 I/O PWM2_3 O P6.3 I/O PWM3_3 O 4 5 4 5 6 7 8 9 江苏国芯科技有限公司 2 3 4 PDIP40 说明 LQFP48 3 LQFP44 名称 LQFP64S 3 研发顾问: 13922805190 7 8 9 总机: 0513-5501 2928/2929/2966 标准 IO 口 SPI 从机选择 标准 IO 口 增强 PWM 通道 0 输出脚 标准 IO 口 增强 PWM 通道 1 输出脚 标准 IO 口 增强 PWM 通道 2 输出脚 标准 IO 口 增强 PWM 通道 3 输出脚 传真: 0513-5501 2926/2956/2947 - 39 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 10 11 12 13 14 LQFP48 6 7 8 9 10 LQFP44 5 8 9 名称 类型 说明 P1.4 I/O ADC4 I ADC 模拟输入通道 4 10 PWM4_2 O 增强 PWM 通道 4 输出脚 MISO I/O SPI 主机输入从机输出 SDA I/O I2C 接口的数据线 CCP3 I/O PCA 的捕获输入和脉冲输出 P4.4 I/O 标准 IO 口 RD O 外部总线的读信号线 TxD_4 O 串口 1 的发送脚 P1.5 I/O ADC5 I ADC 模拟输入通道 5 11 PWM5_2 O 增强 PWM 通道 5 输出脚 SCLK I/O SPI 的时钟脚 SCL I/O I2C 的时钟线 CCP2 I/O PCA 的捕获输入和脉冲输出 P1.6 I/O 标准 IO 口 ADC6 I ADC 模拟输入通道 6 RxD_3 I 串口 1 的接收脚 12 PWM6_2 O 增强 PWM 通道 6 输出脚 MCLKO_2 O 主时钟分频输出 CCP1 I/O XTALO O P1.7 I/O ADC7 I ADC 模拟输入通道 7 13 TxD_3 O 串口 1 的发送脚 PWM7_2 O 增强 PWM 通道 7 输出脚 CCP0 I/O PCA 的捕获输入和脉冲输出 XTALI I 外部晶振/外部时钟的输入脚 标准 IO 口 标准 IO 口 PCA 的捕获输入和脉冲输出 外部晶振的输出脚 标准 IO 口 15 11 10 14 ADC_AGnd GND 16 12 11 15 AVref I 17 13 12 16 ADC_AVcc VCC P5.4 I/O 标准 IO 口 RST I 复位引脚 MCLKO O 主时钟分频输出 18 14 13 17 19 15 14 18 Vcc VCC 20 16 15 19 P5.5 I/O 21 17 16 20 Gnd GND 江苏国芯科技有限公司 研发顾问: 13922805190 PDIP40 6 7 技术支持: 13922829991 总机: 0513-5501 2928/2929/2966 ADC 地线 ADC 的参考电压脚 ADC 电源脚 电源脚 标准 IO 口 地线 传真: 0513-5501 2926/2956/2947 - 40 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 22 LQFP48 18 LQFP44 17 24 25 26 28 29 30 31 19 20 21 22 23 江苏国芯科技有限公司 18 19 20 21 22 研发顾问: 13922805190 名称 类型 说明 P4.0 I/O WR_3 O 外部总线的写信号线 RxD2_2 I 串口 2 的接收脚 P6.4 I/O PWM4_3 O P6.5 I/O PWM5_3 O P6.6 I/O PWM6_3 O P6.7 I/O PWM7_3 O P3.0 I/O RxD I CCP3_4 I/O INT4 I 外部中断 4 P3.1 I/O 标准 IO 口 TxD O CCP2_4 I/O PCA 的捕获输入和脉冲输出 P3.2 I/O 标准 IO 口 INT0 I 外部中断 0 CCP1_4 I/O PCA 的捕获输入和脉冲输出 SCLK_4 I/O SPI 的时钟脚 SCL_4 I/O I2C 的时钟线 P3.3 I/O 标准 IO 口 INT1 I 外部中断 1 CCP0_4 I/O PCA 的捕获输入和脉冲输出 MISO_4 I/O SPI 主机输入从机输出 SDA_4 I/O I2C 接口的数据线 P3.4 I/O 标准 IO 口 T0 I 定时器 0 外部时钟输入 T1CLKO O 定时器 1 时钟分频输出 MOSI_4 I/O SPI 主机输出从机输入 CMPO O PDIP40 23 27 技术支持: 13922829991 21 22 23 24 25 总机: 0513-5501 2928/2929/2966 标准 IO 口 标准 IO 口 增强 PWM 通道 4 输出脚 标准 IO 口 增强 PWM 通道 5 输出脚 标准 IO 口 增强 PWM 通道 6 输出脚 标准 IO 口 增强 PWM 通道 7 输出脚 标准 IO 口 串口 1 的接收脚 PCA 的捕获输入和脉冲输出 串口 1 的发送脚 比较器输出 传真: 0513-5501 2926/2956/2947 - 41 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 32 LQFP48 24 LQFP44 23 技术支持: 13922829991 研发顾问: 13922805190 名称 类型 说明 P3.5 I/O T1 I 定时器 1 外部时钟输入 T0CLKO O 定时器 0 时钟分频输出 ECI_4 I PCA 的外部脉冲输入 SS_4 I SPI 的从机选择脚(主机为输出) PWMFLT I 增强 PWM 的外部异常检测脚 PDIP40 26 标准 IO 口 33 25 P5.0 I/O 标准 IO 口 34 26 P5.1 I/O 标准 IO 口 P3.6 I/O 标准 IO 口 INT2 I 外部中断 2 WR_2 O 外部总线的写信号线 RxD_2 I 串口 1 的接收脚 CMP- I 比较器负极输入 P3.7 I/O 标准 IO 口 INT3 I 外部中断 3 RD_2 O 外部总线的读信号线 TxD_2 O 串口 1 的发送脚 CMP+ I 比较器正极输入 P4.1 I/O ALE O 地址锁存信号 CMPO_2 O 比较器输出 P7.0 I/O 标准 IO 口 CCP0_3 I/O PCA 的捕获输入和脉冲输出 P7.1 I/O 标准 IO 口 CCP1_3 I/O PCA 的捕获输入和脉冲输出 P7.2 I/O 标准 IO 口 CCP2_3 I/O PCA 的捕获输入和脉冲输出 P7.3 I/O 标准 IO 口 CCP3_3 I/O PCA 的捕获输入和脉冲输出 P2.0 I/O 标准 IO 口 A8 I 地址总线 PWM0 O 增强 PWM 通道 0 输出脚 P4.2 I/O RD_3 O 外部总线的读信号线 TxD2_2 O 串口 2 的发送脚 35 36 37 27 28 29 24 25 26 27 28 29 38 39 40 41 42 43 30 31 江苏国芯科技有限公司 27 28 30 总机: 0513-5501 2928/2929/2966 标准 IO 口 标准 IO 口 传真: 0513-5501 2926/2956/2947 - 42 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 44 45 46 47 48 49 50 51 LQFP48 32 33 34 35 36 37 38 39 江苏国芯科技有限公司 LQFP44 29 30 31 32 33 34 35 36 技术支持: 13922829991 研发顾问: 13922805190 名称 类型 说明 P2.1 I/O 标准 IO 口 A9 I 地址总线 PWM1 O 增强 PWM 通道 1 输出脚 P2.2 I/O 标准 IO 口 A10 I 地址总线 PWM2 O 增强 PWM 通道 2 输出脚 SS_2 I SPI 的从机选择脚(主机为输出) ECI_2 I PCA 的外部脉冲输入 P2.3 I/O 标准 IO 口 A11 I 地址总线 PWM3 O 增强 PWM 通道 3 输出脚 MOSI_2 I/O SPI 主机输出从机输入 CCP0_2 I/O PCA 的捕获输入和脉冲输出 P2.4 I/O 标准 IO 口 A12 I 地址总线 PWM4 O 增强 PWM 通道 4 输出脚 MISO_2 I/O SPI 主机输入从机输出 SDA_2 I/O I2C 接口的数据线 CCP1_2 I/O PCA 的捕获输入和脉冲输出 P2.5 I/O 标准 IO 口 A13 I 地址总线 PWM5 O 增强 PWM 通道 5 输出脚 SCLK_2 I/O SPI 的时钟脚 SCL_2 I/O I2C 的时钟线 CCP2_2 I/O PCA 的捕获输入和脉冲输出 P2.6 I/O 标准 IO 口 A14 I 地址总线 PWM6 O 增强 PWM 通道 6 输出脚 CCP3_2 I/O PCA 的捕获输入和脉冲输出 P2.7 I/O 标准 IO 口 A15 I 地址总线 PWM7 O 增强 PWM 通道 7 输出脚 P0.0 I/O 标准 IO 口 AD0 I 地址总线 ADC8 I ADC 模拟输入通道 8 PDIP40 31 32 33 34 35 36 37 38 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 43 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 52 53 LQFP48 40 41 LQFP44 37 38 39 40 55 56 57 59 60 42 43 44 江苏国芯科技有限公司 39 40 41 研发顾问: 13922805190 名称 类型 说明 P0.1 I/O 标准 IO 口 AD1 I 地址总线 ADC9 I ADC 模拟输入通道 9 P0.2 I/O 标准 IO 口 AD2 I 地址总线 ADC10 I ADC 模拟输入通道 10 P7.4 I/O SS_3 I SPI 的从机选择脚(主机为输出) ECI_3 I PCA 的外部脉冲输入 P7.5 I/O 标准 IO 口 MOSI_3 I/O SPI 主机输出从机输入 P7.6 I/O 标准 IO 口 MISO_3 I/O SPI 主机输入从机输出 SDA_3 I/O I2C 接口的数据线 P7.7 I/O 标准 IO 口 SCLK_3 I/O SPI 的时钟脚 SCL_3 I/O I2C 的时钟线 P4.3 I/O 标准 IO 口 WR O 外部总线的写信号线 RxD_4 I 串口 1 的接收脚 P0.3 I/O 标准 IO 口 AD3 I 地址总线 ADC11 I ADC 模拟输入通道 11 P0.4 I/O 标准 IO 口 AD4 I 地址总线 ADC12 I ADC 模拟输入通道 12 T3 I 定时器 3 外部时钟输入 PDIP40 54 58 技术支持: 13922829991 1 2 总机: 0513-5501 2928/2929/2966 标准 IO 口 传真: 0513-5501 2926/2956/2947 - 44 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP64S 61 62 63 64 LQFP48 45 46 47 48 江苏国芯科技有限公司 LQFP44 42 43 44 1 技术支持: 13922829991 研发顾问: 13922805190 名称 类型 说明 P0.5 I/O 标准 IO 口 AD5 I 地址总线 ADC13 I ADC 模拟输入通道 13 T3CLKO O 定时器 3 时钟分频输出 P0.6 I/O 标准 IO 口 AD6 I 地址总线 ADC14 I ADC 模拟输入通道 14 T4 I 定时器 4 外部时钟输入 P0.7 I/O 标准 IO 口 AD7 I 地址总线 T4CLKO O 定时器 4 时钟分频输出 P1.0 I/O 标准 IO 口 ADC0 I ADC 模拟输入通道 0 PWM0_2 O 增强 PWM 通道 0 输出脚 RxD2 I 串口 2 的接收脚 PDIP40 3 4 5 6 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 45 - STC8 系列技术手册 3.2.3 官方网站: www.STCMCUDATA.com / www.STCMCU.com LQFP44 PDIP40 LQFP32 2 7 2 4 5 8 9 10 3 4 5 6 7 8 9 11 12 13 6 7 8 名称 类型 说明 P1.1 I/O TxD2 O P1.2 I/O SS I SPI 的从机选择脚(主机为输出) T2 I 定时器 2 外部时钟输入 P1.3 I/O 标准 IO 口 MOSI I/O SPI 主机输出从机输入 T2CLKO O 定时器 2 时钟分频输出 P1.4 I/O 标准 IO 口 MISO I/O SPI 主机输入从机输出 SDA I/O I2C 接口的数据线 P4.4 I/O 标准 IO 口 RD O 外部总线的读信号线 TxD_4 O 串口 1 的发送脚 P1.5 I/O 标准 IO 口 SCLK I/O SPI 的时钟脚 SCL I/O I2C 的时钟线 P1.6 I/O 标准 IO 口 RxD_3 I 串口 1 的接收脚 XTALO O 外部晶振的输出脚 MCLKO_2 O 主时钟分频输出 P1.7 I/O TxD_3 O 串口 1 的发送脚 XTALI I 外部晶振/外部时钟的输入脚 标准 IO 口 串口 2 的发送脚 标准 IO 口 标准 IO 口 10 14 P4.5 I/O 标准 IO 口 11 15 P4.6 I/O 标准 IO 口 12 16 P4.7 I/O 标准 IO 口 P5.4 I/O 标准 IO 口 13 17 RST I 复位引脚 MCLKO O 主时钟分频输出 Vcc VCC 14 研发顾问: 13922805190 STC8F2K64S4 系列管脚说明 编号 3 技术支持: 13922829991 18 江苏国芯科技有限公司 9 10 总机: 0513-5501 2928/2929/2966 电源脚 传真: 0513-5501 2926/2956/2947 - 46 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 类型 11 P5.5 I/O 12 Gnd GND P4.0 I/O WR_3 O 外部总线的写信号线 RxD2_2 I 串口 2 的接收脚 P3.0 I/O RxD I 串口 1 的接收脚 INT4 I 外部中断 4 P3.1 I/O 标准 IO 口 TxD O P3.2 I/O 标准 IO 口 INT0 I 外部中断 0 SCL_4 I/O I2C 的时钟线 SCLK_4 I/O SPI 的时钟脚 P3.3 I/O 标准 IO 口 INT1 I 外部中断 1 SDA_4 I/O I2C 接口的数据线 MISO_4 I/O SPI 主机输入从机输出 P3.4 I/O 标准 IO 口 T0 I 定时器 0 外部时钟输入 T1CLKO O 定时器 1 时钟分频输出 MOSI_4 I/O SPI 主机输出从机输入 CMPO O 比较器输出 P3.5 I/O 标准 IO 口 T1 I 定时器 1 外部时钟输入 T0CLKO O 定时器 0 时钟分频输出 SS_4 I SPI 的从机选择脚(主机为输出) P3.6 I/O 标准 IO 口 INT2 I 外部中断 2 WR_2 O 外部总线的写信号线 RxD_2 I 串口 1 的接收脚 CMP- I 比较器负极输入 PDIP40 LQFP32 15 19 16 20 17 19 20 21 22 23 24 21 22 23 24 25 26 27 江苏国芯科技有限公司 研发顾问: 13922805190 名称 LQFP44 18 技术支持: 13922829991 13 14 15 16 17 18 19 说明 标准 IO 口 地线 标准 IO 口 标准 IO 口 串口 1 的发送脚 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 47 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP44 25 26 27 PDIP40 28 LQFP32 20 29 30 21 28 29 30 31 32 33 31 32 33 34 35 22 23 24 25 26 34 36 27 35 37 28 江苏国芯科技有限公司 技术支持: 13922829991 研发顾问: 13922805190 名称 类型 说明 P3.7 I/O 标准 IO 口 INT3 I 外部中断 3 RD_2 O 外部总线的读信号线 TxD_2 O 串口 1 的发送脚 CMP+ I 比较器正极输入 P4.1 I/O ALE O 地址锁存信号 CMPO_2 O 比较器输出 P2.0 I/O 标准 IO 口 A8 I 地址总线 P4.2 I/O 标准 IO 口 RD_3 O 外部总线的读信号线 TxD2_2 O 串口 2 的发送脚 P2.1 I/O 标准 IO 口 A9 I 地址总线 P2.2 I/O 标准 IO 口 A10 I 地址总线 SS_2 I SPI 的从机选择脚(主机为输出) P2.3 I/O 标准 IO 口 A11 I 地址总线 MOSI_2 I/O SPI 主机输出从机输入 P2.4 I/O 标准 IO 口 A12 I 地址总线 MISO_2 I/O SPI 主机输入从机输出 SDA_2 I/O I2C 接口的数据线 P2.5 I/O 标准 IO 口 A13 I 地址总线 SCLK_2 I/O SPI 的时钟脚 SCL_2 I/O I2C 的时钟线 P2.6 I/O 标准 IO 口 A14 I 地址总线 P2.7 I/O 标准 IO 口 A15 I 地址总线 标准 IO 口 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 48 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP44 36 37 38 PDIP40 38 39 40 LQFP32 29 30 31 39 40 41 42 43 44 1 1 32 2 3 4 5 6 江苏国芯科技有限公司 1 技术支持: 13922829991 名称 类型 P0.0 I/O 标准 IO 口 AD0 I 地址总线 RxD3 I 串口 3 的接收脚 P0.1 I/O 标准 IO 口 AD1 I 地址总线 TxD3 O 串口 3 的发送脚 P0.2 I/O 标准 IO 口 AD2 I 地址总线 RxD4 I 串口 4 的接收脚 P4.3 I/O WR O 外部总线的写信号线 RxD_4 I 串口 1 的接收脚 P0.3 I/O 标准 IO 口 AD3 I 地址总线 TxD4 O 串口 4 的发送脚 P0.4 I/O 标准 IO 口 AD4 I 地址总线 T3 I 定时器 3 外部时钟输入 P0.5 I/O 标准 IO 口 AD5 I 地址总线 T3CLKO O 定时器 3 时钟分频输出 P0.6 I/O 标准 IO 口 AD6 I 地址总线 T4 I 定时器 4 外部时钟输入 P0.7 I/O 标准 IO 口 AD7 I 地址总线 T4CLKO O 定时器 4 时钟分频输出 P1.0 I/O RxD2 I 研发顾问: 13922805190 说明 标准 IO 口 标准 IO 口 串口 2 的接收脚 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 49 - STC8 系列技术手册 3.2.4 官方网站: www.STCMCUDATA.com / www.STCMCU.com LQFP44 PDIP40 LQFP32 2 7 2 4 5 8 9 10 3 4 5 6 7 8 9 11 12 13 6 7 8 名称 类型 说明 P1.1 I/O TxD2 O P1.2 I/O SS I SPI 的从机选择脚(主机为输出) T2 I 定时器 2 外部时钟输入 P1.3 I/O 标准 IO 口 MOSI I/O SPI 主机输出从机输入 T2CLKO O 定时器 2 时钟分频输出 P1.4 I/O 标准 IO 口 MISO I/O SPI 主机输入从机输出 SDA I/O I2C 接口的数据线 P4.4 I/O 标准 IO 口 RD O 外部总线的读信号线 TxD_4 O 串口 1 的发送脚 P1.5 I/O 标准 IO 口 SCLK I/O SPI 的时钟脚 SCL I/O I2C 的时钟线 P1.6 I/O 标准 IO 口 RxD_3 I 串口 1 的接收脚 XTALO O 外部晶振的输出脚 MCLKO_2 O 主时钟分频输出 P1.7 I/O TxD_3 O 串口 1 的发送脚 XTALI I 外部晶振/外部时钟的输入脚 标准 IO 口 串口 2 的发送脚 标准 IO 口 标准 IO 口 10 14 P4.5 I/O 标准 IO 口 11 15 P4.6 I/O 标准 IO 口 12 16 P4.7 I/O 标准 IO 口 P5.4 I/O 标准 IO 口 13 17 RST I 复位引脚 MCLKO O 主时钟分频输出 Vcc VCC 14 研发顾问: 13922805190 STC8F2K64S2 系列管脚说明 编号 3 技术支持: 13922829991 18 江苏国芯科技有限公司 9 10 总机: 0513-5501 2928/2929/2966 电源脚 传真: 0513-5501 2926/2956/2947 - 50 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 类型 11 P5.5 I/O 12 Gnd GND P4.0 I/O WR_3 O 外部总线的写信号线 RxD2_2 I 串口 2 的接收脚 P3.0 I/O RxD I 串口 1 的接收脚 INT4 I 外部中断 4 P3.1 I/O 标准 IO 口 TxD O P3.2 I/O 标准 IO 口 INT0 I 外部中断 0 SCL_4 I/O I2C 的时钟线 SCLK_4 I/O SPI 的时钟脚 P3.3 I/O 标准 IO 口 INT1 I 外部中断 1 SDA_4 I/O I2C 接口的数据线 MISO_4 I/O SPI 主机输入从机输出 P3.4 I/O 标准 IO 口 T0 I 定时器 0 外部时钟输入 T1CLKO O 定时器 1 时钟分频输出 MOSI_4 I/O SPI 主机输出从机输入 CMPO O 比较器输出 P3.5 I/O 标准 IO 口 T1 I 定时器 1 外部时钟输入 T0CLKO O 定时器 0 时钟分频输出 SS_4 I SPI 的从机选择脚(主机为输出) P3.6 I/O 标准 IO 口 INT2 I 外部中断 2 WR_2 O 外部总线的写信号线 RxD_2 I 串口 1 的接收脚 CMP- I 比较器负极输入 PDIP40 LQFP32 15 19 16 20 17 19 20 21 22 23 24 21 22 23 24 25 26 27 江苏国芯科技有限公司 研发顾问: 13922805190 名称 LQFP44 18 技术支持: 13922829991 13 14 15 16 17 18 19 说明 标准 IO 口 地线 标准 IO 口 标准 IO 口 串口 1 的发送脚 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 51 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP44 25 26 27 PDIP40 28 LQFP32 20 29 30 21 28 29 30 31 32 33 31 32 33 34 35 22 23 24 25 26 34 36 27 35 37 28 江苏国芯科技有限公司 技术支持: 13922829991 研发顾问: 13922805190 名称 类型 说明 P3.7 I/O 标准 IO 口 INT3 I 外部中断 3 RD_2 O 外部总线的读信号线 TxD_2 O 串口 1 的发送脚 CMP+ I 比较器正极输入 P4.1 I/O ALE O 地址锁存信号 CMPO_2 O 比较器输出 P2.0 I/O 标准 IO 口 A8 I 地址总线 P4.2 I/O 标准 IO 口 RD_3 O 外部总线的读信号线 TxD2_2 O 串口 2 的发送脚 P2.1 I/O 标准 IO 口 A9 I 地址总线 P2.2 I/O 标准 IO 口 A10 I 地址总线 SS_2 I SPI 的从机选择脚(主机为输出) P2.3 I/O 标准 IO 口 A11 I 地址总线 MOSI_2 I/O SPI 主机输出从机输入 P2.4 I/O 标准 IO 口 A12 I 地址总线 MISO_2 I/O SPI 主机输入从机输出 SDA_2 I/O I2C 接口的数据线 P2.5 I/O 标准 IO 口 A13 I 地址总线 SCLK_2 I/O SPI 的时钟脚 SCL_2 I/O I2C 的时钟线 P2.6 I/O 标准 IO 口 A14 I 地址总线 P2.7 I/O 标准 IO 口 A15 I 地址总线 标准 IO 口 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 52 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 编号 LQFP44 PDIP40 LQFP32 36 38 29 37 39 30 38 40 31 39 40 41 42 43 44 1 1 32 2 3 4 5 6 江苏国芯科技有限公司 1 技术支持: 13922829991 名称 类型 P0.0 I/O 标准 IO 口 AD0 I 地址总线 P0.1 I/O 标准 IO 口 AD1 I 地址总线 P0.2 I/O 标准 IO 口 AD2 I 地址总线 P4.3 I/O 标准 IO 口 WR O P0.3 I/O 标准 IO 口 AD3 I 地址总线 P0.4 I/O 标准 IO 口 AD4 I 地址总线 T3 I 定时器 3 外部时钟输入 P0.5 I/O 标准 IO 口 AD5 I 地址总线 T3CLKO O 定时器 3 时钟分频输出 P0.6 I/O 标准 IO 口 AD6 I 地址总线 T4 I 定时器 4 外部时钟输入 P0.7 I/O 标准 IO 口 AD7 I 地址总线 T4CLKO O 定时器 4 时钟分频输出 P1.0 I/O RxD2 I 研发顾问: 13922805190 说明 外部总线的写信号线 标准 IO 口 串口 2 的接收脚 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 53 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 3.3 功能脚切换 STC8 系列单片机的特殊外设串口 1、串口 2、串口 3、串口 4、SPI、PCA、PWM、I2C 以及总线控 制脚可以在多个 I/O 直接进行切换,以实现一个外设当作多个设备进行分时复用。 3.3.1 功能脚切换相关寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 BUS_SPEED 总线速度控制寄存器 A1H RW_S[1:0] P_SW1 外设端口切换寄存器 1 A2H S1_S[1:0] P_SW2 外设端口切换寄存器 2 BAH 符号 描述 地址 EAXFR B5 B4 B3 CCP_S[1:0] CAN_S B2 CMPO_S B0 SPEED[1:0] 00xx,xx00 0 - nn00,000x S4_S S3_S S2_S 0x00,0000 B2 B1 SPI_S[1:0] I2C_S[1:0] B1 位地址与符号 复位值 B7 B6 B5 B4 B3 B0 PWM0CR PWM0 控制寄存器 FF04H ENC0O C0INI - C0_S[1:0] EC0I EC0T2SI EC0T1SI 00x0,0000 PWM1CR PWM1 控制寄存器 FF14H ENC1O C1INI - C1_S[1:0] EC1I EC1T2SI EC1T1SI 00x0,0000 PWM2CR PWM2 控制寄存器 FF24H ENC2O C2INI - C2_S[1:0] EC2I EC2T2SI EC2T1SI 00x0,0000 PWM3CR PWM3 控制寄存器 FF34H ENC3O C3INI - C3_S[1:0] EC3I EC3T2SI EC3T1SI 00x0,0000 PWM4CR PWM4 控制寄存器 FF44H ENC4O C4INI - C4_S[1:0] EC4I EC4T2SI EC4T1SI 00x0,0000 PWM5CR PWM5 控制寄存器 FF54H ENC5O C5INI - C5_S[1:0] EC5I EC5T2SI EC5T1SI 00x0,0000 PWM6CR PWM6 控制寄存器 FF64H ENC6O C6INI - C6_S[1:0] EC6I EC6T2SI EC6T1SI 00x0,0000 PWM7CR PWM7 控制寄存器 FF74H ENC7O C7INI - C7_S[1:0] EC7I EC7T2SI EC7T1SI 00x0,0000 CKSEL 时钟选择寄存器 FE00H MCLKODIV[3:0] MCLKO_S - MCKSEL[1:0] B2 B1 0000,0000 总线速度控制寄存器 符号 地址 BUS_SPEED A1H B7 B6 B5 B4 B3 RW_S[1:0] B0 SPEED[1:0] RW_S[1:0]:外部总线 RD/WR 控制线选择位 RW_S[1:0] RD WR 00 P4.4 P4.3 01 P3.7 P3.6 10 P4.2 P4.0 11 保留 外设端口切换控制寄存器 1 符号 地址 P_SW1 A2H B7 B6 S1_S[1:0] B5 B4 CCP_S[1:0] B3 SPI_S[1:0] B2 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 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 54 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 CCP_S[1:0]:PCA 功能脚选择位 CCP_S[1:0] ECI CCP0 CCP1 CCP2 CCP3 00 P1.2 P1.7 P1.6 P1.5 P1.4 01 P2.2 P2.3 P2.4 P2.5 P2.6 10 P7.4 P7.0 P7.1 P7.2 P7.3 11 P3.5 P3.3 P3.2 P3.1 P3.0 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 P7.4 P7.5 P7.6 P7.7 11 P3.5 P3.4 P3.3 P3.2 外设端口切换控制寄存器 2 符号 P_SW2 地址 B7 B6 BAH EAXFR CAN_S B5 B4 I2C_S[1:0] B3 B2 B1 B0 CMPO_S S4_S S3_S S2_S B3 B2 B1 B0 MCLKO_S - 2 I2C_S[1:0]:I C 功能脚选择位 I2C_S[1:0] SCL SDA 00 P1.5 P1.4 01 P2.5 P2.4 10 P7.7 P7.6 11 P3.2 P3.3 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.0 P4.2 时钟选择寄存器 符号 地址 CKSEL FE00H 江苏国芯科技有限公司 B7 B6 B5 B4 MCLKODIV[3:0] 总机: 0513-5501 2928/2929/2966 MCKSEL[1:0] 传真: 0513-5501 2926/2956/2947 - 55 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 MCLKO_S:主时钟输出脚选择位 MCLKO_S MCLKO 0 P5.4 1 P1.6 增强型 PWM 控制寄存器 符号 地址 B7 B6 B5 PWM0CR FF04H ENC0O C0INI - PWM1CR FF14H ENC1O C1INI PWM2CR FF24H ENC2O PWM3CR FF34H PWM4CR B4 B3 B2 B1 B0 C0_S[1:0] EC0I EC0T2SI EC0T1SI - C1_S[1:0] EC1I EC1T2SI EC1T1SI C2INI - C2_S[1:0] EC2I EC2T2SI EC2T1SI ENC3O C3INI - C3_S[1:0] EC3I EC3T2SI EC3T1SI FF44H ENC4O C4INI - C4_S[1:0] EC4I EC4T2SI EC4T1SI PWM5CR FF54H ENC5O C5INI - C5_S[1:0] EC5I EC5T2SI EC5T1SI PWM6CR FF64H ENC6O C6INI - C6_S[1:0] EC6I EC6T2SI EC6T1SI PWM7CR FF74H ENC7O C7INI - C7_S[1:0] EC7I EC7T2SI EC7T1SI C0_S[1:0]:增强型 PWM 通道 0 输出脚选择位 C0_S[1:0] PWM0 00 P2.0 01 P1.0 10 P6.0 11 保留 C1_S[1:0]:增强型 PWM 通道 1 输出脚选择位 C1_S[1:0] PWM1 00 P2.1 01 P1.1 10 P6.1 11 保留 C2_S[1:0]:增强型 PWM 通道 2 输出脚选择位 C2_S[1:0] PWM2 00 P2.2 01 P1.2 10 P6.2 11 保留 C3_S[1:0]:增强型 PWM 通道 3 输出脚选择位 C3_S[1:0] PWM3 00 P2.3 01 P1.3 10 P6.3 11 保留 C4_S[1:0]:增强型 PWM 通道 4 输出脚选择位 C4_S[1:0] PWM4 00 P2.4 01 P1.4 10 P6.4 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 56 - STC8 系列技术手册 11 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 保留 C5_S[1:0]:增强型 PWM 通道 5 输出脚选择位 C5_S[1:0] PWM5 00 P2.5 01 P1.5 10 P6.5 11 保留 C6_S[1:0]:增强型 PWM 通道 6 输出脚选择位 C6_S[1:0] PWM6 00 P2.6 01 P1.6 10 P6.6 11 保留 C7_S[1:0]:增强型 PWM 通道 7 输出脚选择位 C7_S[1:0] PWM7 00 P2.7 01 P1.7 10 P6.7 11 保留 3.4 范例程序 串口 1 切换 3.4.1 汇编代码 P_SW1 DATA 0A2H ORG LJMP 0000H MAIN ORG 0100H MOV SP, #3FH MOV MOV MOV MOV P_SW1,#00H P_SW1,#40H P_SW1,#80H P_SW1,#0C0H SJMP $ 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 C 语言代码 #include "reg51.h" sfr P_SW1 = 0xa2; void main() { P_SW1 = 0x00; 江苏国芯科技有限公司 //RXD/P3.0, TXD/P3.1 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 57 - STC8 系列技术手册 // // // 官方网站: www.STCMCUDATA.com / www.STCMCU.com P_SW1 = 0x40; P_SW1 = 0x80; P_SW1 = 0xc0; 技术支持: 13922829991 研发顾问: 13922805190 //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); } 串口 2 切换 3.4.2 汇编代码 P_SW2 DATA 0BAH ORG LJMP 0000H MAIN ORG 0100H MOV SP, #3FH MOV MOV P_SW2,#00H P_SW2,#01H SJMP $ MAIN: ; ;RXD2/P1.0, TXD2/P1.1 ;RXD2_2/P4.0, TXD2_2/P4.2 END C 语言代码 #include "reg51.h" sfr P_SW2 = 0xba; void main() { P_SW2 = 0x00; // P_SW2 = 0x01; //RXD2/P1.0, TXD2/P1.1 //RXD2_2/P4.0, TXD2_2/P4.2 while (1); } 串口 3 切换 3.4.3 汇编代码 P_SW2 DATA 0BAH ORG LJMP 0000H MAIN ORG 0100H MOV SP, #3FH MOV MOV P_SW2,#00H P_SW2,#02H SJMP $ MAIN: ; 江苏国芯科技有限公司 ;RXD3/P0.0, TXD3/P0.1 ;RXD3_2/P5.0, TXD3_2/P5.1 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 58 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 END C 语言代码 #include "reg51.h" sfr P_SW2 = 0xba; void main() { P_SW2 = 0x00; // P_SW2 = 0x02; // RXD3/P0.0, TXD3/P0.1 // RXD3_2/P5.0, TXD3_2/P5.1 while (1); } 串口 4 切换 3.4.4 汇编代码 P_SW2 DATA 0BAH ORG LJMP 0000H MAIN ORG 0100H MOV SP, #3FH MOV MOV P_SW2,#00H P_SW2,#04H SJMP $ MAIN: ; ;RXD4/P0.2, TXD4/P0.3 ;RXD4_2/P5.2, TXD4_2/P5.3 END C 语言代码 #include "reg51.h" sfr P_SW2 = 0xba; void main() { P_SW2 = 0x00; // P_SW2 = 0x04; //RXD4/P0.2, TXD4/P0.3 //RXD4_2/P5.2, TXD4_2/P5.3 while (1); } 3.4.5 SPI切换 汇编代码 P_SW1 DATA 0A2H ORG 0000H 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 59 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com LJMP MAIN ORG 0100H MOV SP, #3FH MOV MOV MOV MOV P_SW1,#00H P_SW1,#04H P_SW1,#08H P_SW1,#0CH SJMP $ 技术支持: 13922829991 研发顾问: 13922805190 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/P7.4, MOSI_3/P7.5, MISO_3/P7.6, SCLK_3/P7.7 ;SS_4/P3.5, MOSI_4/P3.4, MISO_4/P3.3, SCLK_4/P3.2 END C 语言代码 #include "reg51.h" sfr P_SW1 = 0xa2; void main() { P_SW1 = 0x00; // P_SW1 = 0x04; // P_SW1 = 0x08; // P_SW1 = 0x0c; //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/P7.4, MOSI_3/P7.5, MISO_3/P7.6, SCLK_3/P7.7 //SS_4/P3.5, MOSI_4/P3.4, MISO_4/P3.3, SCLK_4/P3.2 while (1); } 3.4.6 PWM切换 汇编代码 P_SW2 PWM0CR PWM1CR PWM2CR PWM3CR PWM4CR PWM5CR PWM6CR PWM7CR DATA EQU EQU EQU EQU EQU EQU EQU EQU 0BAH 0FF04H 0FF14H 0FF24H 0FF34H 0FF44H 0FF54H 0FF64H 0FF74H ORG LJMP 0000H MAIN ORG 0100H MOV SP, #3FH MOV MOV MOV MOV MOV MOVX MOV P_SW2,#80H A,#00H A,#08H A,#10H DPTR,#PWM0CR @DPTR,A A,#00H MAIN: ; ; 江苏国芯科技有限公司 ;PWM0/P2.0 ;PWM0_2/P1.0 ;PWM0_3/P6.0 ;PWM1/P2.1 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 60 - STC8 系列技术手册 ; ; ; ; ; ; ; ; ; ; ; ; ; ; 官方网站: www.STCMCUDATA.com / www.STCMCU.com MOV MOV MOV MOVX MOV MOV MOV MOV MOVX MOV MOV MOV MOV MOVX MOV MOV MOV MOV MOVX MOV MOV MOV MOV MOVX MOV MOV MOV MOV MOVX MOV MOV MOV MOV MOVX MOV A,#08H A,#10H DPTR,#PWM1CR @DPTR,A A,#00H A,#08H A,#10H DPTR,#PWM2CR @DPTR,A A,#00H A,#08H A,#10H DPTR,#PWM3CR @DPTR,A A,#00H A,#08H A,#10H DPTR,#PWM4CR @DPTR,A A,#00H A,#08H A,#10H DPTR,#PWM5CR @DPTR,A A,#00H A,#08H A,#10H DPTR,#PWM6CR @DPTR,A A,#00H A,#08H A,#10H DPTR,#PWM7CR @DPTR,A P_SW2,#00H SJMP $ 技术支持: 13922829991 研发顾问: 13922805190 ;PWM1_2/P1.1 ;PWM1_3/P6.1 ;PWM2/P2.2 ;PWM2_2/P1.2 ;PWM2_3/P6.2 ;PWM3/P2.3 ;PWM3_2/P1.3 ;PWM3_3/P6.3 ;PWM4/P2.4 ;PWM4_2/P1.4 ;PWM4_3/P6.4 ;PWM5/P2.5 ;PWM5_2/P1.5 ;PWM5_3/P6.5 ;PWM6/P2.6 ;PWM6_2/P1.6 ;PWM6_3/P6.6 ;PWM7/P2.7 ;PWM7_2/P1.7 ;PWM7_3/P6.7 END C 语言代码 #include "reg51.h" #define PWM0CR #define PWM1CR #define PWM2CR #define PWM3CR #define PWM4CR #define PWM5CR #define PWM6CR #define PWM7CR (*(unsigned char volatile xdata *)0xff04) (*(unsigned char volatile xdata *)0xff14) (*(unsigned char volatile xdata *)0xff24) (*(unsigned char volatile xdata *)0xff34) (*(unsigned char volatile xdata *)0xff44) (*(unsigned char volatile xdata *)0xff54) (*(unsigned char volatile xdata *)0xff64) (*(unsigned char volatile xdata *)0xff74) sfr P_SW2 = 0xba; void main() { P_SW2 = 0x80; PWM0CR = 0x00; 江苏国芯科技有限公司 //PWM0/P2.0 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 61 - STC8 系列技术手册 // // // // // // // // // // // // // // // // 官方网站: www.STCMCUDATA.com / www.STCMCU.com PWM0CR = 0x08; PWM0CR = 0x10; PWM1CR = 0x00; PWM1CR = 0x08; PWM1CR = 0x10; PWM2CR = 0x00; PWM2CR = 0x08; PWM2CR = 0x10; PWM3CR = 0x00; PWM3CR = 0x08; PWM3CR = 0x10; PWM4CR = 0x00; PWM4CR = 0x08; PWM4CR = 0x10; PWM5CR = 0x00; PWM5CR = 0x08; PWM5CR = 0x10; PWM6CR = 0x00; PWM6CR = 0x08; PWM6CR = 0x10; PWM7CR = 0x00; PWM7CR = 0x08; PWM7CR = 0x10; P_SW2 = 0x00; 技术支持: 13922829991 研发顾问: 13922805190 //PWM0_2/P1.0 //PWM0_3/P6.0 //PWM1/P2.1 //PWM1_2/P1.1 //PWM1_3/P6.1 //PWM2/P2.2 //PWM2_2/P1.2 //PWM2_3/P6.2 //PWM3/P2.3 //PWM3_2/P1.3 //PWM3_3/P6.3 //PWM4/P2.4 //PWM4_2/P1.4 //PWM4_3/P6.4 //PWM5/P2.5 //PWM5_2/P1.5 //PWM5_3/P6.5 //PWM6/P2.6 //PWM6_2/P1.6 //PWM6_3/P6.6 //PWM7/P2.7 //PWM7_2/P1.7 //PWM7_3/P6.7 while (1); } 3.4.7 PCA/CCP/PWM切换 汇编代码 P_SW1 DATA 0A2H ORG LJMP 0000H MAIN ORG 0100H MOV SP, #3FH MOV MOV MOV MOV P_SW1,#00H P_SW1,#10H P_SW1,#20H P_SW1,#30H SJMP $ MAIN: ; ; ; ;ECI/P1.2, CCP0/P1.7, CCP1/P1.6, CCP2/P1.5,CCP3/P1.4 ;ECI_2/P2.2, CCP0_2/P2.3, CCP1_2/P2.4, CCP2_2/P2.5,CCP3_2/P2.6 ;ECI_3/P7.4, CCP0_3/P7.0, CCP1_3/P7.1, CCP2_3/P7.2,CCP3_3/P7.3 ;ECI_4/P3.5, CCP0_4/P3.3, CCP1_4/P3.2, CCP2_4/P3.1,CCP3_4/P3.0 END C 语言代码 #include "reg51.h" sfr P_SW1 = 0xa2; void main() { P_SW1 = 0x00; 江苏国芯科技有限公司 //ECI/P1.2, CCP0/P1.7, CCP1/P1.6, CCP2/P1.5,CCP3/P1.4 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 62 - STC8 系列技术手册 // // // 官方网站: www.STCMCUDATA.com / www.STCMCU.com P_SW1 = 0x10; P_SW1 = 0x20; P_SW1 = 0x30; 技术支持: 13922829991 研发顾问: 13922805190 //ECI_2/P2.2, CCP0_2/P2.3, CCP1_2/P2.4, CCP2_2/P2.5,CCP3_2/P2.6 //ECI_3/P7.4, CCP0_3/P7.0, CCP1_3/P7.1, CCP2_3/P7.2,CCP3_3/P7.3 //ECI_4/P3.5, CCP0_4/P3.3, CCP1_4/P3.2, CCP2_4/P3.1,CCP3_4/P3.0 while (1); } 3.4.8 I2C切换 汇编代码 P_SW2 DATA 0BAH ORG LJMP 0000H MAIN ORG 0100H MOV SP, #3FH MOV MOV MOV MOV P_SW2,#00H P_SW2,#10H P_SW2,#20H P_SW2,#30H SJMP $ 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 END C 语言代码 #include "reg51.h" sfr P_SW2 = 0xba; void main() { 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); } 比较器输出切换 3.4.9 汇编代码 P_SW2 DATA 0BAH ORG LJMP 0000H MAIN ORG 0100H MOV SP, #3FH MAIN: 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 63 - STC8 系列技术手册 ; 官方网站: www.STCMCUDATA.com / www.STCMCU.com MOV MOV P_SW2,#00H P_SW2,#08H SJMP $ 技术支持: 13922829991 研发顾问: 13922805190 ;CMPO/P3.4 ;CMPO_2/P4.1 END C 语言代码 #include "reg51.h" sfr P_SW2 = 0xba; void main() { P_SW2 = 0x00; // P_SW2 = 0x08; //CMPO/P3.4 //CMPO_2/P4.1 while (1); } 3.4.10 主时钟输出切换 汇编代码 P_SW2 CKSEL DATA EQU 0BAH 0FE00H ORG LJMP 0000H MAIN ORG 0100H MOV SP, #3FH MOV MOV MOV MOV MOV MOVX MOV P_SW2,#80H A,#40H A,#48H A,#0E8H DPTR,#CKSEL @DPTR,A P_SW2,#00H SJMP $ MAIN: ; ; ;IRC24M/4 output via MCLKO/P5.4 ;IRC24M/4 output via MCLKO_2/P1.6 ;IRC24M/128 output via MCLKO_2/P1.6 END C 语言代码 #include "reg51.h" #define CKSEL (*(unsigned char volatile xdata *)0xfe00) sfr P_SW2 = 0xba; void main() { P_SW2 = 0x80; CKSEL = 0x40; 江苏国芯科技有限公司 //IRC24M/4 output via MCLKO/P5.4 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 64 - STC8 系列技术手册 // // 官方网站: www.STCMCUDATA.com / www.STCMCU.com CKSEL = 0x48; CKSEL = 0xe8; P_SW2 = 0x00; 技术支持: 13922829991 研发顾问: 13922805190 //IRC24M/4 output via MCLKO_2/P1.6 //IRC24M/128 output via MCLKO_2/P1.6 while (1); } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 65 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 4 封装尺寸图 4.1 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 正看芯片丝印左下方小圆点处为第一脚 SYMBOL A A1 A2 A3 b b1 c c1 D D1 E E1 e L L1 L2 R1 R2 S ? ?1 ?2 ?3 江苏国芯科技有限公司 16 e (0.5mm) 一般尺寸 测量单位:毫米/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 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 R2 总机: 0513-5501 2928/2929/2966 ?3 ? L2 L1 L S b 0.75 0.20 7° 13° 13° ?2 ?1 b1 c c1 (A-A的截面图) 传真: 0513-5501 2926/2956/2947 - 66 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 4.2 LQFP64L封装尺寸图(16mm*16mm) STC8 系列暂无此封装 A D (16mm) A2 D1 (14mm) 48 A3 33 49 32 E1 (14mm) E (16mm) 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 正看芯片丝印左下方小圆点处为第一脚 SYMBOL A A1 A2 A3 b b1 c c1 D D1 E E1 e L L1 L2 R1 R2 S ? ?1 ?2 ?3 江苏国芯科技有限公司 16 e (0.8mm) 一般尺寸 测量单位:毫米/mm MIN TYP 0.05 1.35 1.40 0.59 0.64 0.31 0.30 0.35 0.13 0.12 0.127 15.80 16.00 13.90 14.00 15.80 16.00 13.90 14.00 0.70 0.80 0.45 0.60 1.00REF 0.25BSC 0.08 0.08 0.20 0° 3.5° 0° 11° 12° 11° 12° A1 b R1 MAX 1.60 0.15 1.45 0.69 0.44 0.40 0.18 0.134 16.20 14.10 16.20 14.10 0.90 0.75 0.20 7° 13° 13° 总机: 0513-5501 2928/2929/2966 ?2 ?1 R2 ? L2 ?3 L1 L S b b1 c c1 (A-A的截面图) 传真: 0513-5501 2926/2956/2947 - 67 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 4.3 LQFP48 封装尺寸图(9mm*9mm) D (9mm) D1 (7mm) 25 37 24 48 13 E1 (7mm) E (9mm) 36 1 12 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.30 0.35 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 - MAX 1.60 0.15 1.45 0.69 0.27 0.40 0.18 0.134 9.20 7.10 9.20 7.10 0.55 0.75 0.20 - 正看芯片丝印左下方小圆点处为第一脚 e (0.5mm) b A A2 A3 R1 A1 R2 L2 L b b1 c L1 c1 (A-A的截面图) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 68 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 D (9mm) D1 (7mm) 25 37 24 48 13 E1 (7mm) E (9mm) 36 1 12 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.30 0.35 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 - MAX 1.60 0.15 1.45 0.69 0.27 0.40 0.18 0.134 9.20 7.10 9.20 7.10 0.55 0.75 0.20 - 正看芯片丝印左下方小圆点处为第一脚 b R1 A2 A3 R2 A1 A e (0.5mm) L2 L b b1 c L1 c1 (A-A的截面图) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 69 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 D (9mm) D1 (7mm) 25 37 24 48 13 E1 (7mm) E (9mm) 36 1 12 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.30 0.35 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 - MAX 1.60 0.15 1.45 0.69 0.27 0.40 0.18 0.134 9.20 7.10 9.20 7.10 0.55 0.75 0.20 - 正看芯片丝印左下方小圆点处为第一脚 b A3 R1 R2 A1 A A2 e (0.5mm) L2 L b b1 c L1 c1 (A-A的截面图) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 70 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 4.4 LQFP44 封装尺寸图(12mm*12mm) D (12mm) 一般尺寸 测量单位:毫米/mm MIN TYP 0.05 1.35 1.40 0.59 0.64 0.25 0.30 0.09 11.80 12.00 9.90 10.00 11.80 12.00 9.90 10.00 0.70 0.80 0.45 0.60 1.00REF 0.25BSC 0.08 0.08 - D1 (10mm) 23 34 22 44 12 E1 (10mm) E (12mm) 33 1 SYMBOL A A1 A2 A3 b c1 D D1 E E1 e L L1 L2 R1 R2 MAX 1.60 0.15 1.45 0.69 0.35 0.16 12.20 10.10 12.20 10.10 0.90 0.75 0.20 11 正看芯片丝印左下方小圆点处为第一脚 e (0.80mm) R1 b(0.30mm) L2 A1 A A2 A3 c1 R2 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 ? L L1 传真: 0513-5501 2926/2956/2947 - 71 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 D (12mm) 一般尺寸 测量单位:毫米/mm MIN TYP 0.05 1.35 1.40 0.59 0.64 0.25 0.30 0.09 11.80 12.00 9.90 10.00 11.80 12.00 9.90 10.00 0.70 0.80 0.45 0.60 1.00REF 0.25BSC 0.08 0.08 - D1 (10mm) 23 34 22 44 12 E1 (10mm) E (12mm) 33 1 SYMBOL A A1 A2 A3 b c1 D D1 E E1 e L L1 L2 R1 R2 MAX 1.60 0.15 1.45 0.69 0.35 0.16 12.20 10.10 12.20 10.10 0.90 0.75 0.20 11 正看芯片丝印左下方小圆点处为第一脚 e (0.80mm) R1 b(0.30mm) L2 A1 A A2 A3 c1 R2 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 ? L L1 传真: 0513-5501 2926/2956/2947 - 72 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 D (12mm) 一般尺寸 测量单位:毫米/mm MIN TYP 0.05 1.35 1.40 0.59 0.64 0.25 0.30 0.09 11.80 12.00 9.90 10.00 11.80 12.00 9.90 10.00 0.70 0.80 0.45 0.60 1.00REF 0.25BSC 0.08 0.08 - D1 (10mm) 23 34 22 44 12 E1 (10mm) E (12mm) 33 1 SYMBOL A A1 A2 A3 b c1 D D1 E E1 e L L1 L2 R1 R2 MAX 1.60 0.15 1.45 0.69 0.35 0.16 12.20 10.10 12.20 10.10 0.90 0.75 0.20 11 正看芯片丝印左下方小圆点处为第一脚 e (0.80mm) R1 b(0.30mm) A A2 A3 c1 R2 A1 L2 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 ? L L1 传真: 0513-5501 2926/2956/2947 - 73 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 4.5 LQFP32 封装尺寸图(9mm*9mm) D (9mm) D1 (7mm) 17 25 16 32 9 SYMBOL A A1 A2 A3 b b1 c D D1 E E1 e L L L1 R R1 E1 (7mm) E (9mm) 24 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 b1 b ? L A1 A c L1 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 74 - STC8 系列技术手册 4.6 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 QFN32 封装尺寸图(4mm*4mm) D (4mm) 32 19 1 SYMBOL A A1 A2 A3 b D E D2 E2 e L K R C1 18 E (4mm) PIN 1 8 17 9 16 K 27 C2 32 一般尺寸 测量单位:毫米/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 - L e(0.4mm) 1 E2 R b(0.20mm) 江苏国芯科技有限公司 12 C1 A3 7 17 A1 A D2 C2 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 75 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 4.7 PDIP40 封装尺寸图 D (2060mil) 1 20 A1 L A A2 C E (600mil) E1 (545mil) 21 e? (650mil) ?° 40 e (100mil) b b1 SYMBOL A A1 A2 b b1 C D E E1 e? L ? 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 一般尺寸 测量单位:米尔/mil MIN TYP 15 150 155 45 15 8 2025 2060 600 BSC 540 545 630 650 120 130 0° 7° MAX 190 20 160 67 21 15 2070 传真: 0513-5501 2926/2956/2947 550 690 140 15° - 76 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 4.8 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 e (0.65mm) MAX 1.20 0.15 1.05 0.54 0.28 6.60 6.60 4.50 0.75 - R1 A3 R b(0.24mm) A1 A 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 L1 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 77 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 4.9 SOP16 封装尺寸图 16 9 1 8 e (1.27mm) MAX 1.75 0.25 1.65 0.75 0.45 10.00 6.20 4.00 0.80 - R1 A3 R b(0.40mm) A1 A 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 L1 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 78 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 5 STC8 系列单片机选型价格一览表 年新品供货信息 2017 2.0-5.5 8K 2K 2 4K 18 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥1.2 1.15 STC8F2K16S2 2.0-5.5 16K 2K 2 4K 42 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥1.8 ¥1.6 1.65 ¥1.4 1.35 STC8F2K32S2 2.0-5.5 32K 2K 2 32K 42 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 1.99 ¥1.8 1.85 STC8F2K60S2 2.0-5.5 60K 2K 2 4K 42 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.2 ¥2.0 STC8F2K64S2 2.0-5.5 64K 2K 2 IAP 42 2 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.2 ¥2.0 STC8F2K16S4 2.0-5.5 16K 2K 2 48K 42 4 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.7 ¥2.6 STC8F2K32S4 2.0-5.5 32K 2K 2 32K 42 4 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.8 ¥2.7 STC8F2K60S4 2.0-5.5 60K 2K 2 4K 42 4 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.9 ¥2.8 STC8F2K64S4 2.0-5.5 64K 2K 2 IAP 42 4 有 有 5 - - - 有 - 有 有 有 4级 有 是 有 是 是 是 是 ¥2.9 ¥2.8 STC8A4K16S2A12 2.0-5.5 16K 4K 2 48K 59 2 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.1 ¥2.9 ¥2.9 STC8A4K32S2A12 2.0-5.5 32K 4K 2 32K 59 2 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.3 ¥3.0 ¥3.0 STC8A4K60S2A12 2.0-5.5 60K 4K 2 4K 59 2 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.6 ¥3.2 ¥3.2 STC8A4K64S2A12 2.0-5.5 64K 4K 2 IAP 59 2 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.6 ¥3.2 ¥3.2 STC8A8K16S4A12 2.0-5.5 16K 8K 2 48K 59 4 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.4 ¥3.2 ¥3.2 STC8A8K32S4A12 2.0-5.5 32K 8K 2 32K 59 4 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.6 ¥3.3 ¥3.3 STC8A8K60S4A12 2.0-5.5 60K 8K 2 4K 59 4 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.8 ¥3.4 ¥3.4 STC8A8K64S4A12 2.0-5.5 64K 8K 2 IAP 59 4 有 有 5 - 8 4 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥3.8 ¥3.4 ¥3.4 STC8H1K64S2A10 1.7-5.5 64K 1K 2 IAP 45 2 有 有 4 4 - - 有 10 位 有 有 有 4级 有 是 有 是 是 是 是 ¥2.3 ¥2.1 STC8H1K32S2A10 1.7-5.5 32K 1K 2 1K 45 2 有 有 4 4 - - 有 10 位 有 有 有 4级 有 是 有 是 是 是 是 ¥1.9 ¥1.6 STC8H1K16S2A10 1.7-5.5 16K 1K 2 9K 45 2 有 有 4 4 - - 有 10 位 有 有 有 4级 有 是 有 是 是 是 是 ¥1.7 ¥1.4 有 有 4级 有 是 有 是 是 是 是 ¥1.1 1.05 0.95 ¥0.9 SOP8 STC8F2K08S2 大 量 供 货 大 量 供 货 大 量 供 货 大 量 供 货 1 月 送 样 STC8H1K08S2A10 1.7-5.5 8K 1K 2 3K 17 2 有 有 3 4 - - 有 10 位 有 STC8H1K08S2 1.7-5.5 8K 1K 2 3K 18 2 有 有 3 - - - 有 有 有 有 4级 有 是 有 是 是 是 是 STC8H04A10 1.7-5.5 4K 256 1 3K 6 1 有 有 3 - - - 有 10 位 有 有 有 4级 有 是 有 是 是 是 是 ¥0.7 STC8H04 1.7-5.5 4K 256 1 3K 6 1 有 有 3 - - - 有 有 有 4级 有 是 有 是 是 是 是 ¥0.6 有 各个版本芯片的使用注意事项请参考“附录 A、应用注意事项” 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 PDIP40 SOP16 TSSOP20 QFN32 LQFP32 LQFP44 QFN48 LQFP48 LQFP64S QFN64 直接下载 USB 本身就可在线仿真 支持 支持 RS485 下载 可设置下次更新程序需口令 可对外输出时钟及复位 程序加密后传输(防拦截) 看门狗 复位定时器 内部高精准时钟( 24MHz 可调) 内部高可靠复位(可选复位门槛电压) 内部低压检测中断并可掉电唤醒 比较器(可当 路 ,可作外部掉电检测) 1 A/D ( 路 可当 路 使用) ADC 8 PWM 8 D/A 掉电唤醒专用定时器 路高速 15 (可当外部中断并可掉电唤醒) PCA/CCP/PWM 位增强型 PWM (带死区控制) 15 I2 C 位高级 PWM 定时器 互补对称死区 16 定时器 计/数器( T0-T4 外部管脚也可掉电唤醒) SPI 串口并可掉电唤醒 口最多数量 I/O 万次 字节 EEPROM 10 强大的双 DPTR 可增可减 大容量扩展 SRAM字节 万次 字节 10 工作电压( ) V 单片机型号 程序存储器 Flash 封装 - 79 - 1 月 送 样 STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 5.1 STC8 系列单片机封装价格一览表 部分封装价格(人民币 ¥) QFN64 LQFP48 QFN48 年新品供货信息 2017 LQFP64S LQFP44 单片机型号 LQFP32 QFN32 TSSOP20 SOP16 SOP8 DFN8 LQFP64S QFN64 LQFP48 QFN48 LQFP44 LQFP32 QFN32 STC8F2K08S2 STC8F2K16S2 ¥1.8 ¥1.6 ¥1.65 STC8F2K32S2 1.99 ¥1.8 ¥1.85 STC8F2K60S2 ¥2.2 ¥2.0 STC8F2K64S2 ¥2.2 ¥2.0 STC8F2K16S4 ¥2.7 ¥2.6 STC8F2K32S4 ¥2.8 ¥2.7 STC8F2K60S4 ¥2.9 ¥2.8 STC8F2K64S4 ¥2.9 ¥2.8 STC8A4K16S2A12 ¥3.1 ¥2.9 ¥2.9 STC8A4K32S2A12 ¥3.3 ¥3.0 ¥3.0 STC8A4K60S2A12 ¥3.6 ¥3.2 ¥3.2 STC8A4K64S2A12 ¥3.6 ¥3.2 ¥3.2 STC8A8K16S4A12 ¥3.4 ¥3.2 ¥3.2 STC8A8K32S4A12 ¥3.6 ¥3.3 ¥3.3 STC8A8K60S4A12 ¥3.8 ¥3.4 ¥3.4 STC8A8K64S4A12 ¥3.8 ¥3.4 ¥3.4 TSSOP20 SOP16 SOP8 PDIP40 ¥1.2 ¥1.15 ¥1.4 ¥1.35 大 量 供 货 大 量 供 货 大 量 供 货 大 量 供 货 STC8H1K32S2 ¥2.3 ¥2.1 STC8H1K32S2 ¥1.9 ¥1.6 STC8H1K16S2 ¥1.7 ¥1.4 1 月 送 样 STC8H1K08S2A10 ¥1.1 ¥1.05 STC8H1K08S2 ¥0.95 ¥0.9 STC8H04A10 ¥0.7 STC8H04 ¥0.6 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 1 月 送 样 - 80 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 5.2 STC8 系列单片机命名规则 STC 8x xK 64 Sx Ax ADC精度 A12:12位ADC A10:10位ADC 独立串口个数 S4:4个独立串口 S2:2个独立串口 S :1个独立串口 程序空间大小 64:64K字节 32:32K字节 16:16K字节 SRAM空间大小 8K:8K字节 2K:2K字节 子系列 8F:STC8F系列(没有AVcc、AGnd、AVref管脚) 8A:STC8A系列(有AVcc、AGnd、AVref管脚) 8H:STC8H系列 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 81 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 6 ISP下载及典型应用线路图 6.1 STC8F系列ISP下载应用线路图 6.1.1 使用RS-232 转换器下载 系统电源 (可从USB取电) Vin Power On Vcc 47u C? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 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 P4.5 P4.6 P4.7 P5.4 Vcc P5.5 Gnd P0.2 P0.1 P0.0 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P4.1 P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 Vcc Vcc SP3232/ SP232/ MAX3232/ MAX232 0.1u 0.1u 0.1u 0.1u 1 2 3 4 5 6 7 8 C1+ VCC V+ GND C1T1OUT C2+ R1IN C2R1OUT VT1IN T2OUT T2IN R2IN R2OUT 16 10u 15 14 13 12 11 10 9 0.1u 1 6 2 7 3 8 4 9 5 300R STC8F2K64S4 1N5819 47u钽电容(封装3528)参考价 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++); } } void main() { Uart2Init(); IE2 = 0x01; EA = 1; Uart2SendStr(“Uart Test !\r\n”); while (1) { if (rptr != wptr) { Uart2Send(buffer[rptr++]); rptr &= 0x0f; } } } 14.7.5 串口 3 使用定时器 2 做波特率发生器 汇编代码 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 江苏国芯科技有限公司 ;16 bytes 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 265 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.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 技术支持: 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: MOV 江苏国芯科技有限公司 SP,#3FH 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 266 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 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 C 语言代码 #include "reg51.h" #include "intrins.h" #define #define FOSC BRT sfr sfr sfr sfr sfr sfr AUXR T2H T2L S3CON S3BUF IE2 bit char char char busy; wptr; rptr; buffer[16]; 11059200UL (65536 - FOSC / 115200 / 4) = = = = = = 0x8e; 0xd6; 0xd7; 0xac; 0xad; 0xaf; void Uart3Isr() interrupt 17 using 1 { if (S3CON & 0x02) { S3CON &= ~0x02; busy = 0; } if (S3CON & 0x01) { S3CON &= ~0x01; buffer[wptr++] = S3BUF; wptr &= 0x0f; } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 267 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 } 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++); } } void main() { Uart3Init(); IE2 = 0x08; EA = 1; Uart3SendStr(“Uart Test !\r\n”); while (1) { if (rptr != wptr) { Uart3Send(buffer[rptr++]); rptr &= 0x0f; } } } 14.7.6 串口 3 使用定时器 3 做波特率发生器 汇编代码 T4T3M T4H T4L T3H T3L S3CON S3BUF IE2 DATA DATA DATA DATA DATA DATA DATA DATA 0D1H 0D2H 0D3H 0D4H 0D5H 0ACH 0ADH 0AFH BUSY BIT 20H.0 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 268 - STC8 系列技术手册 WPTR RPTR BUFFER 官方网站: www.STCMCUDATA.com / www.STCMCU.com DATA DATA DATA 21H 22H 23H 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 技术支持: 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,#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 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 269 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 MAIN: MOV SP,#3FH 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 C 语言代码 #include "reg51.h" #include "intrins.h" #define #define FOSC BRT sfr sfr sfr sfr sfr sfr sfr sfr T4T3M T4H T4L T3H T3L S3CON S3BUF IE2 bit char char char busy; wptr; rptr; buffer[16]; 11059200UL (65536 - FOSC / 115200 / 4) = = = = = = = = 0xd1; 0xd2; 0xd3; 0xd4; 0xd5; 0xac; 0xad; 0xaf; void Uart3Isr() interrupt 17 using 1 { if (S3CON & 0x02) { S3CON &= ~0x02; busy = 0; } if (S3CON & 0x01) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 270 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 { 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() { Uart3Init(); IE2 = 0x08; EA = 1; Uart3SendStr(“Uart Test !\r\n”); while (1) { if (rptr != wptr) { Uart3Send(buffer[rptr++]); rptr &= 0x0f; } } } 14.7.7 串口 4 使用定时器 2 做波特率发生器 汇编代码 AUXR T2H T2L S4CON S4BUF DATA DATA DATA DATA DATA 江苏国芯科技有限公司 8EH 0D6H 0D7H 84H 085H 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 271 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com IE2 DATA 0AFH BUSY WPTR RPTR BUFFER BIT DATA DATA DATA 20H.0 21H 22H 23H 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 技术支持: 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 MOV RET BUSY,$ BUSY S4BUF,A ;65536-11059200/115200/4=0FFE8H UART4_SEND: UART4_SENDSTR: CLR MOVC JZ LCALL INC 江苏国芯科技有限公司 A A,@A+DPTR SEND4END UART4_SEND DPTR 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 272 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com JMP 技术支持: 13922829991 研发顾问: 13922805190 UART4_SENDSTR SEND4END: RET MAIN: MOV SP,#3FH 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 C 语言代码 #include "reg51.h" #include "intrins.h" #define #define FOSC BRT sfr sfr sfr sfr sfr sfr AUXR T2H T2L S4CON S4BUF IE2 bit char char char busy; wptr; rptr; buffer[16]; 11059200UL (65536 - FOSC / 115200 / 4) = = = = = = 0x8e; 0xd6; 0xd7; 0x84; 0x85; 0xaf; void Uart4Isr() interrupt 18 using 1 { if (S4CON & 0x02) { S4CON &= ~0x02; busy = 0; } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 273 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 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; } void Uart4SendStr(char *p) { while (*p) { Uart4Send(*p++); } } void main() { Uart4Init(); IE2 = 0x10; EA = 1; Uart4SendStr(“Uart Test !\r\n”); while (1) { if (rptr != wptr) { Uart4Send(buffer[rptr++]); rptr &= 0x0f; } } } 14.7.8 串口 4 使用定时器 4 做波特率发生器 汇编代码 T4T3M T4H T4L T3H DATA DATA DATA DATA 江苏国芯科技有限公司 0D1H 0D2H 0D3H 0D4H 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 274 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com T3L S4CON S4BUF IE2 DATA DATA DATA DATA 0D5H 84H 085H 0AFH BUSY WPTR RPTR BUFFER BIT DATA DATA DATA 20H.0 21H 22H 23H 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 技术支持: 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 JB SETB MOV RET BUSY,$ BUSY S4BUF,A ;65536-11059200/115200/4=0FFE8H UART4_SEND: UART4_SENDSTR: CLR MOVC 江苏国芯科技有限公司 A A,@A+DPTR 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 275 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com JZ LCALL INC JMP 技术支持: 13922829991 研发顾问: 13922805190 SEND4END UART4_SEND DPTR UART4_SENDSTR SEND4END: RET MAIN: MOV SP,#3FH 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 C 语言代码 #include "reg51.h" #include "intrins.h" #define #define FOSC BRT sfr sfr sfr sfr sfr sfr sfr sfr T4T3M T4H T4L T3H T3L S4CON S4BUF IE2 bit char char char busy; wptr; rptr; buffer[16]; 11059200UL (65536 - FOSC / 115200 / 4) = = = = = = = = 0xd1; 0xd2; 0xd3; 0xd4; 0xd5; 0x84; 0x85; 0xaf; void Uart4Isr() interrupt 18 using 1 { 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 276 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 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() { Uart4Init(); IE2 = 0x10; EA = 1; Uart4SendStr(“Uart Test !\r\n”); while (1) { if (rptr != wptr) { Uart4Send(buffer[rptr++]); rptr &= 0x0f; } } } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 277 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 15 比较器,掉电检测,内部固定比较电压 STC8 系列单片机内部集成了一个比较器。比较器的正极可以是 P3.7 端口或者 ADC 的模拟输入通 道,而负极可以 P3.6 端口或者是内部 BandGap 经过 OP 后的 REFV 电压(内部固定比较电压) 。 比较器内部有可程序控制的两级滤波:模拟滤波和数字滤波。模拟滤波可以过滤掉比较输入信号中 的毛刺信号,数字滤波可以等待输入信号更加稳定后再进行比较。比较结果可直接通过读取内部寄存器 位获得,也可将比较器结果正向或反向输出到外部端口。将比较结果输出到外部端口可用作外部事件的 触发信号和反馈信号,可扩大比较的应用范围。 P3.7 0 ADCIN 1 0.1us PIS REFV ( 内? ? ? ? 较电压) P3.6 CMPRES 模拟滤波 0 LCC 1 数字滤波 DISFLT 0 延时LCDTY个 CPU 时钟 CMPO E PIE 0 P3.4 1 P4.1 CMPO_S 1 CMPIF NIS NIE 比较器内部结构 15.1 比较器内部结构图 15.2 比较器相关的寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 PIE NIE PIS NIS CMPCR1 比较器控制寄存器 1 E6H CMPEN CMPIF CMPCR2 比较器控制寄存器 2 E7H INVCMPO DISFLT B1 B0 CMPOE CMPRES 0000,0000 LCDTY[5:0] 0000,0000 比较器控制寄存器 1 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 CMPCR1 E6H CMPEN CMPIF PIE NIE PIS NIS CMPOE CMPRES CMPEN:比较器模块使能位 0:关闭比较功能 1:使能比较功能 CMPIF:比较器中断标志位。当 PIE 或 NIE 被使能后,若产生相应的中断信号,硬件自动将 CMPIF 置 1,并向 CPU 提出中断请求。此标志位必须用户软件清零。 (注意:没有使能比较器中断时,硬件不会设置此中断标志,即使用查询方式访问比较器时,不 能查询此中断标志) PIE:比较器上升沿中断使能位。 0:禁止比较器上升沿中断。 1:使能比较器上升沿中断。使能比较器的比较结果由 0 变成 1 时产生中断请求。 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 278 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 NIE:比较器下降沿中断使能位。 0:禁止比较器下降沿中断。 1:使能比较器下降沿中断。使能比较器的比较结果由 1 变成 0 时产生中断请求。 PIS:比较器的正极选择位 0:选择外部端口 P3.7 为比较器正极输入源。 1:通过 ADC_CONTR 中的 ADC_CHS 位选择 ADC 的模拟输入端作为比较器正极输入源。 NIS:比较器的负极选择位 0:选择内部 BandGap 经过 OP 后的电压 REFV 作为比较器负极输入源。 1:选择外部端口 P3.6 为比较器负极输入源。 CMPOE:比较器结果输出控制位 0:禁止比较器结果输出 1:使能比较器结果输出。比较器结果输出到 P3.4 或者 P4.1(由 P_SW2 中的 CMPO_S 进行设定) CMPRES:比较器的比较结果。此位为只读。 0:表示 CMP+的电平低于 CMP-的电平 1:表示 CMP+的电平高于 CMP-的电平 CMPRES 是经过数字滤波后的输出信号,而不是比较器的直接输出结果。 比较器控制寄存器 2 符号 地址 B7 B6 CMPCR2 E7H INVCMPO DISFLT B5 B4 B3 B2 B1 B0 LCDTY[5:0] INVCMPO:比较器结果输出控制 0:比较器结果正向输出。若 CMPRES 为 0,则 P3.4/P4.1 输出低电平,反之输出高电平。 1:比较器结果反向输出。若 CMPRES 为 0,则 P3.4/P4.1 输出高电平,反之输出低电平。 DISFLT:模拟滤波功能控制 0:使能 0.1us 模拟滤波功能 1:关闭 0.1us 模拟滤波功能,可略微提高比较器的比较速度。 LCDTY[5:0]:数字滤波功能控制 数字滤波功能即为数字信号去抖动功能。当比较结果发生上升沿或者下降沿变化时,比较器侦测变 化后的信号必须维持 LCDTY 所设置的 CPU 时钟数不发生变化,才认为数据变化是有效的;否 则将视同信号无变化。 若 LCDTY 设置为 0 时表示关闭数字滤波功能。 比较器输出 CMPRES LCDTY[5:0] 个CPU时钟 比较器输出 CMPRES 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 279 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 15.3 范例程序 15.3.1 比较器的使用(中断方式) 汇编代码 CMPCR1 CMPCR2 DATA DATA 0E6H 0E7H ORG LJMP ORG LJMP 0000H MAIN 00ABH CMPISR ORG 0100H PUSH ANL MOV JB ACC CMPCR1,#NOT 40H A,CMPCR1 ACC.0,RSING CPL POP RETI P1.0 ACC ;下降沿中断测试端口 CPL POP RETI P1.1 ACC ;上升沿中断测试端口 MOV SP,#3FH MOV ANL ORL ANL ORL ANL ORL MOV ORL ANL ORL ANL ORL ANL ORL ANL ORL ANL ORL ORL SETB CMPCR2,#00H CMPCR2,#NOT 80H CMPCR2,#80H CMPCR2,#NOT 40H CMPCR2,#40H CMPCR2,#NOT 3FH CMPCR2,#10H CMPCR1,#00H CMPCR1,#30H CMPCR1,#NOT 20H CMPCR1,#20H CMPCR1,#NOT 10H CMPCR1,#10H CMPCR1,#NOT 08H CMPCR1,#08H CMPCR1,#NOT 04H CMPCR1,#04H CMPCR1,#NOT 02H CMPCR1,#02H CMPCR1,#80H EA JMP $ CMPISR: ;清中断标志 FALLING: RSING: MAIN: ; ; ; ; ; ; ; ; ; ; ;比较器正向输出 ;比较器反向输出 ;禁止 0.1us 滤波 ;使能 0.1us 滤波 ;比较器结果直接输出 ;比较器结果经过 16 个去抖时钟后输出 ;使能比较器边沿中断 ;禁止比较器上升沿中断 ;使能比较器上升沿中断 ;禁止比较器下降沿中断 ;使能比较器下降沿中断 ;P3.6 为 CMP+输入脚 ;ADC 输入脚为 CMP+输入教 ;内部参考电压为 CMP-输入脚 ;P3.7 为 CMP-输入脚 ;禁止比较器输出 ;使能比较器输出 ;使能比较器模块 END 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 280 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 C 语言代码 #include "reg51.h" #include "intrins.h" sfr sfr CMPCR1 CMPCR2 = = 0xe6; 0xe7; sbit sbit P10 P11 = = P1^0; P1^1; void CMP_Isr() interrupt 21 using 1 { CMPCR1 &= ~0x40; if (CMPCR1 & 0x01) { P10 = !P10; } else { P11 = !P11; } } void main() { CMPCR2 = 0x00; CMPCR2 &= ~0x80; // CMPCR2 |= 0x80; CMPCR2 &= ~0x40; // CMPCR2 |= 0x40; // CMPCR2 &= ~0x3f; CMPCR2 |= 0x10; CMPCR1 = 0x00; CMPCR1 |= 0x30; // CMPCR1 &= ~0x20; // CMPCR1 |= 0x20; // CMPCR1 &= ~0x10; // CMPCR1 |= 0x10; CMPCR1 &= ~0x08; // CMPCR1 |= 0x08; // CMPCR1 &= ~0x04; CMPCR1 |= 0x04; // CMPCR1 &= ~0x02; CMPCR1 |= 0x02; CMPCR1 |= 0x80; //清中断标志 //下降沿中断测试端口 //上升沿中断测试端口 //比较器正向输出 //比较器反向输出 //禁止 0.1us 滤波 //使能 0.1us 滤波 //比较器结果直接输出 //比较器结果经过 16 个去抖时钟后输出 //使能比较器边沿中断 //禁止比较器上升沿中断 //使能比较器上升沿中断 //禁止比较器下降沿中断 //使能比较器下降沿中断 //P3.6 为 CMP+输入脚 //ADC 输入脚为 CMP+输入教 //内部参考电压为 CMP-输入脚 //P3.7 为 CMP-输入脚 //禁止比较器输出 //使能比较器输出 //使能比较器模块 EA = 1; while (1); } 15.3.2 比较器的使用(查询方式) 汇编代码 CMPCR1 CMPCR2 DATA DATA 江苏国芯科技有限公司 0E6H 0E7H 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 281 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com ORG LJMP 0000H MAIN ORG 0100H MOV SP,#3FH MOV ANL ORL ANL ORL ANL ORL MOV ORL ANL ORL ANL ORL ANL ORL ANL ORL ANL ORL ORL CMPCR2,#00H CMPCR2,#NOT 80H CMPCR2,#80H CMPCR2,#NOT 40H CMPCR2,#40H CMPCR2,#NOT 3FH CMPCR2,#10H CMPCR1,#00H CMPCR1,#30H CMPCR1,#NOT 20H CMPCR1,#20H CMPCR1,#NOT 10H CMPCR1,#10H CMPCR1,#NOT 08H CMPCR1,#08H CMPCR1,#NOT 04H CMPCR1,#04H CMPCR1,#NOT 02H CMPCR1,#02H CMPCR1,#80H MOV MOV MOV JMP A,CMPCR1 C,ACC.0 P1.0,C LOOP 技术支持: 13922829991 研发顾问: 13922805190 MAIN: ; ; ; ; ; ; ; ; ; ; ;比较器正向输出 ;比较器反向输出 ;禁止 0.1us 滤波 ;使能 0.1us 滤波 ;比较器结果直接输出 ;比较器结果经过 16 个去抖时钟后输出 ;使能比较器边沿中断 ;禁止比较器上升沿中断 ;使能比较器上升沿中断 ;禁止比较器下降沿中断 ;使能比较器下降沿中断 ;P3.6 为 CMP+输入脚 ;ADC 输入脚为 CMP+输入教 ;内部参考电压为 CMP-输入脚 ;P3.7 为 CMP-输入脚 ;禁止比较器输出 ;使能比较器输出 ;使能比较器模块 LOOP: ;读取比较器比较结果 END C 语言代码 #include "reg51.h" #include "intrins.h" sfr sfr CMPCR1 CMPCR2 = = 0xe6; 0xe7; sbit sbit P10 P11 = = P1^0; P1^1; void main() { CMPCR2 = 0x00; CMPCR2 &= ~0x80; // CMPCR2 |= 0x80; CMPCR2 &= ~0x40; // CMPCR2 |= 0x40; // CMPCR2 &= ~0x3f; CMPCR2 |= 0x10; CMPCR1 = 0x00; CMPCR1 |= 0x30; CMPCR1 &= ~0x20; // 江苏国芯科技有限公司 //比较器正向输出 //比较器反向输出 //禁止 0.1us 滤波 //使能 0.1us 滤波 //比较器结果直接输出 //比较器结果经过 16 个去抖时钟后输出 //使能比较器边沿中断 //禁止比较器上升沿中断 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 282 - STC8 系列技术手册 // // // // // // 官方网站: www.STCMCUDATA.com / www.STCMCU.com CMPCR1 |= 0x20; CMPCR1 &= ~0x10; CMPCR1 |= 0x10; CMPCR1 &= ~0x08; CMPCR1 |= 0x08; CMPCR1 &= ~0x04; CMPCR1 |= 0x04; CMPCR1 &= ~0x02; CMPCR1 |= 0x02; CMPCR1 |= 0x80; while (1) { P10 = CMPCR1 & 0x01; } 技术支持: 13922829991 研发顾问: 13922805190 //使能比较器上升沿中断 //禁止比较器下降沿中断 //使能比较器下降沿中断 //P3.6 为 CMP+输入脚 //ADC 输入脚为 CMP+输入教 //内部参考电压为 CMP-输入脚 //P3.7 为 CMP-输入脚 //禁止比较器输出 //使能比较器输出 //使能比较器模块 //读取比较器比较结果 } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 283 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 16 IAP/EEPROM STC8 系列单片机内部集成了大容量的 EEPROM 。利用 ISP/IAP 技术可将内部 Data Flash 当 EEPROM,擦写次数在 10 万次以上。EEPROM 可分为若干个扇区,每个扇区包含 512 字节。使用时, 建议同一次修改的数据放在同一个扇区,不是同一次修改的数据放在不同的扇区,不一定要用满。数据 存储器的擦除操作是按扇区进行的。 EEPROM 可用于保存一些需要在应用过程中修改并且掉电不丢失的参数数据。在用户程序中,可 以对 EEPROM 进行字节读/字节编程/扇区擦除操作。在工作电压偏低时,建议不要进行 EEPROM 操作, 以免发送数据丢失的情况。 16.1 EEPROM相关的寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 IAP_DATA IAP 数据寄存器 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 - - - - - - CMD[1:0] xxxx,xx00 0000,0000 IAPEN SWBS SWRST - CMD_FAIL IAP_WT[2:0] 0000,x000 EEPROM 数据寄存器(IAP_DATA) 符号 地址 IAP_DATA C2H B7 B6 B5 B4 B3 B2 B1 B0 在进行 EEPROM 的读操作时,命令执行完成后读出的 EEPROM 数据保存在 IAP_DATA 寄存器中。 在进行 EEPROM 的写操作时,在执行写命令前,必须将待写入的数据存放在 IAP_DATA 寄存器中,再 发送写命令。擦除 EEPROM 命令与 IAP_DATA 寄存器无关。 EEPROM 地址寄存器 符号 地址 IAP_ADDRH C3H IAP_ADDRL C4H B7 B6 B5 B4 B3 B2 B1 B0 EEPROM 进行读、写、擦除操作的目标地址寄存器。IAP_ADDRH 保存地址的高字节,IAP_ADDRL 保存地址的低字节 EEPROM 命令寄存器(IAP_CMD) 符号 地址 B7 B6 B5 B4 B3 B2 IAP_CMD C5H - - - - - - B1 B0 CMD[1:0] CMD[1:0]:发送EEPROM操作命令 00:空操作 01:读 EEPROM 命令。读取目标地址所在的 1 字节。 10:写 EEPROM 命令。写目标地址所在的 1 字节。 11:擦除 EEPROM。擦除目标地址所在的 1 页(1 扇区/512 字节)。 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 284 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 EEPROM 触发寄存器 符号 地址 IAP_TRIG C6H B7 B6 B5 B4 B3 B2 B1 B0 设置完成 EEPROM 读、写、擦除的命令寄存器、地址寄存器、数据寄存器以及控制寄存器后,需 要向触发寄存器 IAP_TRIG 依次写入 5AH、A5H(顺序不能交换)两个触发命令来触发相应的读、写、 擦除操作。操作完成后,EEPROM 地址寄存器 IAP_ADDRH、IAP_ADDRL 和 EEPROM 命令寄存器 IAP_CMD 的 内 容 不 变。 如 果 接 下来 要 对 下 一个 地 址 的 数据 进 行 操 作, 需 手 动 更新 地 址 寄 存 器 IAP_ADDRH 和寄存器 IAP_ADDRL 的值。 注意:每次 EEPROM 操作时,都要对 IAP_TRIG 先写入 5AH,再写入 A5H,相应的命令才会生效。 写完触发命令后,CPU 会处于 IDLE 等待状态,直到相应的 IAP 操作执行完成后 CPU 才会从 IDLE 状 态返回正常状态继续执行 CPU 指令。 EEPROM 控制寄存器 符号 地址 B7 B6 B5 B4 B3 IAP_CONTR C7H IAPEN SWBS SWRST CMD_FAIL - B2 B1 B0 IAP_WT[2:0] IAPEN:EEPROM操作使能控制位 0:禁止 EEPROM 操作 1:使能 EEPROM 操作 SWBS:软件复位选择控制位,(需要与SWRST配合使用) 0:软件复位后从用户代码开始执行程序 1:软件复位后从系统 ISP 监控代码区开始执行程序 SWRST:软件复位控制位 0:无动作 1:产生软件复位 CMD_FAIL:EEPROM操作失败状态位,需要软件清零 0:EEPROM 操作正确 1:EEPROM 操作失败 IAP_WT[2:0]:设置EEPROM操作的等待时间 IAP_WT[2:0] 读字节 (2 个时钟) 写字节 (约 7us) 擦除扇区 (约 5ms) 时钟频率 1 1 1 2 个时钟 7 个时钟 5000 个时钟 1MHz 1 1 0 2 个时钟 14 个时钟 10000 个时钟 2MHz 1 0 1 2 个时钟 21 个时钟 15000 个时钟 3MHz 1 0 0 2 个时钟 42 个时钟 30000 个时钟 6MHz 0 1 1 2 个时钟 84 个时钟 60000 个时钟 12MHz 0 1 0 2 个时钟 140 个时钟 100000 个时钟 20MHz 0 0 1 2 个时钟 168 个时钟 120000 个时钟 24MHz 0 0 0 2 个时钟 301 个时钟 215000 个时钟 30MHz 此时 MCU 系统不给 CPU 供应时钟,CPU 没有时钟,所以无法工作,也就是说,针对 EEPROM 操 作所需要的等待时间是硬件自动完成的,用户不需要加额外的软件延时。但 MCU 给串口、定时器、SPI、 I2C 等外设供应时钟,故除 CPU 无法执行指令外,其他外设仍然继续工作。 EEPROM 的读操作其实可不用 IAP 读方式,可用 MOVC 指令进行读取,CPU 就可继续执行指令, 不用等待两个时钟。(汇编、C 如何读待后续介绍) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 285 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 16.2 关于EEPROM编程和擦除等待时间的重要说明 表一(STC8A 系列和 STC8F 系列 EEPROM 操作时间需求) EEPROM 操作 最短时间 最长时间 编程 6us 7.5us 擦除 4ms 6ms 表二(STC8A 系列和 STC8F 系列 EEPROM 操作相应等待参数的时间等待周期) IAP_WT[2:0] 编程等待时钟数 擦除等待时钟数 适合的频率 1 1 1 7 个时钟 5000 个时钟 1MHz 1 1 0 14 个时钟 10000 个时钟 2MHz 1 0 1 21 个时钟 15000 个时钟 3MHz 1 0 0 42 个时钟 30000 个时钟 6MHz 0 1 1 84 个时钟 60000 个时钟 12MHz 0 1 0 140 个时钟 100000 个时钟 20MHz 0 0 1 168 个时钟 120000 个时钟 24MHz 0 0 0 301 个时钟 215000 个时钟 30MHz STC8A 系列和 STC8F 系列 MCU 的内部 EEPROM 的编程和擦除等待时间必须达到表一中的要求, 等待时间不可过短,也不可过长。 编程的等待时间必须在 6us~7.5us 之间,编程等待时间过小(小于最短时间 6us) ,则被编程的目 标存储单元内部的数据可能不可靠(数据的保存期限可能达不到 25 年);若等待时间过长(大于最长时 间 7.5us 的 1.5 倍,即大于 11.25us) ,也可能由于有数据干扰而导致写入的数据不正确。在确保编程的 等待时间要求,并在编程完成后进行数据读出对比校验,若校验正确,数据便编程正确了。 擦除的等待时间必须在 4ms~6ms 之间,擦除等待时间过小(小于最短时间 4ms),则被擦除的目 标存储扇区可能没有被擦除干净;若等待时间过长(大于最长时间 6ms 的 1.5 倍,即大于 9ms),则会 缩短 EEPROM 的使用寿命,即原本 10 万次的擦除寿命可能会缩短为 5 万次。 编程与擦除的等待时间请严格按照表二所给的推荐频率进行合适的选择,假如工作频率为 12MHz, 请按照表二推荐将等待参数设置为 011B,若 CPU 实际的工作频率并不在表二所推荐的频率之列,则需 要根据实际的频率以及表二中实际的等待时钟数进行计算,找出满足表一时间需求的等待时间参数。 例如:工作频率为 4MHz,若选择等待参数为 101B,则编程时间为 21/4MHz = 5.25us,擦除时间为 15000/4MHz = 3.75ms,时间明显不够,所以应该选择等待参数为 100B,则编程时间为 42/4MHz = 10.5us, 擦除时间为 30000/4MHz = 7.5ms,时间均在最短时间和最长时间的 1.5 倍之间。 注意:EEPROM 等待操作的时钟是指对主时钟进行分频后的系统时钟,即 CPU 实际的工作时钟。 若单片机使用的是内部高精度 IRC,则 EEPROM 等待操作的时钟为使用 ISP 下载软件下载时经过调节 后的频率;若单片机使用的外部晶振,则 EEPROM 等待操作的时钟为外部晶振频率经过 CLKDIV 寄存 器分频后的时钟(例如:若单片机使用外部晶振,且外部晶振的频率为 24MHz,CLKDIV 寄存器的值 设置为 4,则 EEPROM 等待操作的时钟频率为 24MHz/4 = 6MHz,此时等待参数应选择 100B,而不能 选择 001B) 。 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 286 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 16.3 范例程序 16.3.1 EEPROM基本操作 汇编代码 ;测试工作频率为 11.0592MHz IAP_DATA IAP_ADDRH IAP_ADDRL IAP_CMD IAP_TRIG IAP_CONTR DATA DATA DATA DATA DATA DATA 0C2H 0C3H 0C4H 0C5H 0C6H 0C7H WT_30M WT_24M WT_20M WT_12M WT_6M WT_3M WT_2M WT_1M EQU EQU EQU EQU EQU EQU EQU EQU 80H 81H 82H 83H 84H 85H 86H 87H ORG LJMP 0000H MAIN ORG 0100H 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 NOP MOV LCALL RET IAP_CONTR,#WT_12M IAP_CMD,#1 IAP_ADDRL,DPL IAP_ADDRH,DPH IAP_TRIG,#5AH IAP_TRIG,#0A5H ;使能 IAP ;设置 IAP 读命令 ;设置 IAP 低地址 ;设置 IAP 高地址 ;写触发命令(0x5a) ;写触发命令(0xa5) A,IAP_DATA IAP_IDLE ;读取 IAP 数据 ;关闭 IAP 功能 IAP_CONTR,#WT_12M IAP_CMD,#2 IAP_ADDRL,DPL IAP_ADDRH,DPH IAP_DATA,A IAP_TRIG,#5AH IAP_TRIG,#0A5H ;使能 IAP ;设置 IAP 写命令 ;设置 IAP 低地址 ;设置 IAP 高地址 ;写 IAP 数据 ;写触发命令(0x5a) ;写触发命令(0xa5) IAP_IDLE ;关闭 IAP 功能 IAP_IDLE: IAP_READ: IAP_PROGRAM: MOV MOV MOV MOV MOV MOV MOV NOP LCALL 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 287 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 RET IAP_ERASE: MOV MOV MOV MOV MOV MOV NOP LCALL RET IAP_CONTR,#WT_12M IAP_CMD,#3 IAP_ADDRL,DPL IAP_ADDRH,DPH IAP_TRIG,#5AH IAP_TRIG,#0A5H ;使能 IAP ;设置 IAP 擦除命令 ;设置 IAP 低地址 ;设置 IAP 高地址 ;写触发命令(0x5a) ;写触发命令(0xa5) IAP_IDLE ;关闭 IAP 功能 MAIN: MOV SP,#3FH MOV LCALL MOV LCALL MOV MOV MOV LCALL MOV LCALL MOV DPTR,#0400H IAP_ERASE DPTR,#0400H IAP_READ P0,A DPTR,#0400H A,#12H IAP_PROGRAM DPTR,#0400H IAP_READ P1,A SJMP $ ;P0=0FFH ;P1=12H END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz sfr sfr sfr sfr sfr sfr IAP_DATA IAP_ADDRH IAP_ADDRL IAP_CMD IAP_TRIG IAP_CONTR #define #define #define #define #define #define #define #define WT_30M WT_24M WT_20M WT_12M WT_6M WT_3M WT_2M WT_1M = = = = = = void IapIdle() { IAP_CONTR = 0; IAP_CMD = 0; 江苏国芯科技有限公司 0xC2; 0xC3; 0xC4; 0xC5; 0xC6; 0xC7; 0x80 0x81 0x82 0x83 0x84 0x85 0x86 0x87 //关闭 IAP 功能 //清除命令寄存器 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 288 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com IAP_TRIG = 0; IAP_ADDRH = 0x80; IAP_ADDRL = 0; 技术支持: 13922829991 研发顾问: 13922805190 //清除触发寄存器 //将地址设置到非 IAP 区域 } char IapRead(int addr) { char dat; IAP_CONTR = WT_12M; IAP_CMD = 1; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); dat = IAP_DATA; IapIdle(); //使能 IAP //设置 IAP 读命令 //设置 IAP 低地址 //设置 IAP 高地址 //写触发命令(0x5a) //写触发命令(0xa5) //读 IAP 数据 //关闭 IAP 功能 return dat; } void IapProgram(int addr, char dat) { IAP_CONTR = WT_12M; 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 = WT_12M; IAP_CMD = 3; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); IapIdle(); } void main() { IapErase(0x0400); P0 = IapRead(0x0400); IapProgram(0x0400, 0x12); P1 = IapRead(0x0400); //使能 IAP //设置 IAP 写命令 //设置 IAP 低地址 //设置 IAP 高地址 //写 IAP 数据 //写触发命令(0x5a) //写触发命令(0xa5) //关闭 IAP 功能 //使能 IAP //设置 IAP 擦除命令 //设置 IAP 低地址 //设置 IAP 高地址 //写触发命令(0x5a) //写触发命令(0xa5) // //关闭 IAP 功能 //P0=0xff //P1=0x12 while (1); } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 289 - STC8 系列技术手册 16.3.2 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 使用串口送出EEPROM数据 汇编代码 AUXR T2H T2L DATA DATA DATA 8EH 0D6H 0D7H IAP_DATA IAP_ADDRH IAP_ADDRL IAP_CMD IAP_TRIG IAP_CONTR DATA DATA DATA DATA DATA DATA 0C2H 0C3H 0C4H 0C5H 0C6H 0C7H WT_30M WT_24M WT_20M WT_12M WT_6M WT_3M WT_2M WT_1M EQU EQU EQU EQU EQU EQU EQU EQU 80H 81H 82H 83H 84H 85H 86H 87H ORG LJMP 0000H MAIN ORG 0100H 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 NOP MOV IAP_CONTR,#WT_12M IAP_CMD,#1 IAP_ADDRL,DPL IAP_ADDRH,DPH IAP_TRIG,#5AH IAP_TRIG,#0A5H ;使能 IAP ;设置 IAP 读命令 ;设置 IAP 低地址 ;设置 IAP 高地址 ;写触发命令(0x5a) ;写触发命令(0xa5) A,IAP_DATA ;读取 IAP 数据 UART_INIT: ;65536-11059200/115200/4=0FFE8H UART_SEND: IAP_IDLE: IAP_READ: 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 290 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 LCALL RET IAP_IDLE ;关闭 IAP 功能 MOV MOV MOV MOV MOV MOV MOV NOP LCALL RET IAP_CONTR,#WT_12M IAP_CMD,#2 IAP_ADDRL,DPL IAP_ADDRH,DPH IAP_DATA,A IAP_TRIG,#5AH IAP_TRIG,#0A5H ;使能 IAP ;设置 IAP 写命令 ;设置 IAP 低地址 ;设置 IAP 高地址 ;写 IAP 数据 ;写触发命令(0x5a) ;写触发命令(0xa5) IAP_IDLE ;关闭 IAP 功能 IAP_CONTR,#WT_12M IAP_CMD,#3 IAP_ADDRL,DPL IAP_ADDRH,DPH IAP_TRIG,#5AH IAP_TRIG,#0A5H ;使能 IAP ;设置 IAP 擦除命令 ;设置 IAP 低地址 ;设置 IAP 高地址 ;写触发命令(0x5a) ;写触发命令(0xa5) IAP_IDLE ;关闭 IAP 功能 研发顾问: 13922805190 IAP_PROGRAM: IAP_ERASE: MOV MOV MOV MOV MOV MOV NOP LCALL RET MAIN: MOV SP,#3FH 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 C 语言代码 #include "reg51.h" #include "intrins.h" #define #define FOSC BRT sfr sfr sfr AUXR T2H T2L = = = 0x8e; 0xd6; 0xd7; sfr IAP_DATA = 0xC2; 江苏国芯科技有限公司 11059200UL (65536 - FOSC / 115200 / 4) 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 291 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com sfr sfr sfr sfr sfr IAP_ADDRH IAP_ADDRL IAP_CMD IAP_TRIG IAP_CONTR #define #define #define #define #define #define #define #define WT_30M WT_24M WT_20M WT_12M WT_6M WT_3M WT_2M WT_1M = = = = = 技术支持: 13922829991 研发顾问: 13922805190 0xC3; 0xC4; 0xC5; 0xC6; 0xC7; 0x80 0x81 0x82 0x83 0x84 0x85 0x86 0x87 void UartInit() { SCON = 0x5a; T2L = BRT; T2H = BRT >> 8; AUXR = 0x15; } void UartSend(char dat) { 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 = WT_12M; IAP_CMD = 1; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); dat = IAP_DATA; IapIdle(); //使能 IAP //设置 IAP 读命令 //设置 IAP 低地址 //设置 IAP 高地址 //写触发命令(0x5a) //写触发命令(0xa5) //读 IAP 数据 //关闭 IAP 功能 return dat; } void IapProgram(int addr, char dat) { IAP_CONTR = WT_12M; 江苏国芯科技有限公司 //使能 IAP 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 292 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com IAP_CMD = 2; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_DATA = dat; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); IapIdle(); 技术支持: 13922829991 研发顾问: 13922805190 //设置 IAP 写命令 //设置 IAP 低地址 //设置 IAP 高地址 //写 IAP 数据 //写触发命令(0x5a) //写触发命令(0xa5) //关闭 IAP 功能 } void IapErase(int addr) { IAP_CONTR = WT_12M; IAP_CMD = 3; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); IapIdle(); } //使能 IAP //设置 IAP 擦除命令 //设置 IAP 低地址 //设置 IAP 高地址 //写触发命令(0x5a) //写触发命令(0xa5) // //关闭 IAP 功能 void main() { UartInit(); IapErase(0x0400); UartSend(IapRead(0x0400)); IapProgram(0x0400, 0x12); UartSend(IapRead(0x0400)); while (1); } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 293 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 17 ADC模数转换 STC8 系列单片机内部集成了一个 12 位 15 通道的高速 A/D 转换器(注:第 16 通道只能用于检测 内部参考电压)。ADC 的时钟频率为系统频率 2 分频再经过用户设置的分频系数进行再次分频(ADC 的时钟频率范围为 SYSclk/2/1~SYSclk/2/16)。每固定 16 个 ADC 时钟可完成一次 A/D 转换。ADC 的 速度最快可达 800K(即每秒可进行 80 万次模数转换) ADC 转换结果的数据格式有两种:左对齐和右对齐。可方便用户程序进行读取和引用。 17.1 ADC相关的寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 BCH ADC_POWER ADC_START ADC_FLAG B3 B1 B0 ADC_CONTR ADC 控制寄存器 ADC_RES ADC 转换结果高位寄存器 BDH 0000,0000 ADC_RESL ADC 转换结果低位寄存器 BEH 0000,0000 ADCCFG ADC 配置寄存器 DEH - - - B2 RESFMT ADC_CHS[3:0] - 000x,0000 SPEED[3:0] xx0x,0000 ADC 控制寄存器 符号 地址 B7 B6 B5 B4 ADC_CONTR BCH ADC_POWER ADC_START ADC_FLAG - B3 B2 B1 B0 ADC_CHS[3:0] ADC_POWER:ADC 电源控制位 0:关闭 ADC 电源 1:打开 ADC 电源。 建议进入空闲模式和掉电模式前将 ADC 电源关闭,以降低功耗 ADC_START:ADC 转换启动控制位。写入 1 后开始 ADC 转换,转换完成后硬件自动将此位清零。 0:无影响。即使 ADC 已经开始转换工作,写 0 也不会停止 A/D 转换。 1:开始 ADC 转换,转换完成后硬件自动将此位清零。 ADC_FLAG:ADC 转换结束标志位。当 ADC 完成一次转换后,硬件会自动将此位置 1,并向 CPU 提 出中断请求。此标准为必须软件清零。 ADC_CHS[3:0]:ADC 模拟通道选择位 ADC_CHS[3:0] ADC 通道 ADC_CHS[3:0] ADC 通道 0000 P1.0 1000 P0.0 0001 P1.1 1001 P0.1 0010 P1.2 1010 P0.2 0011 P1.3 1011 P0.3 0100 P1.4 1100 P0.4 0101 P1.5 1101 P0.5 0110 P1.6 1110 P0.6 0111 P1.7 1111 - ADC 配置寄存器 符号 地址 江苏国芯科技有限公司 B7 B6 B5 总机: 0513-5501 2928/2929/2966 B4 B3 B2 B1 传真: 0513-5501 2926/2956/2947 B0 - 294 - STC8 系列技术手册 ADCCFG 官方网站: www.STCMCUDATA.com / www.STCMCU.com DEH - - RESFMT 技术支持: 13922829991 - 研发顾问: 13922805190 SPEED[3:0] RESFMT:ADC 转换结果格式控制位 0:转换结果左对齐。ADC_RES 保存结果的高 8 位,ADC_RESL 保存结果的低 4 位。格式如下: ADC_RES ADC_RESL D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 0 12位转换结果 0 0 0 自动填0 RESFMT=0 1:转换结果右对齐。ADC_RES 保存结果的高 4 位,ADC_RESL 保存结果的低 8 位。格式如下: ADC_RES 0 0 0 ADC_RESL 0 D11 D10 D9 D8 自动填0 D7 D6 D5 D4 D3 D2 D1 D0 12位转换结果 RESFMT=1 SPEED[3:0]:ADC 时钟控制(FADC=SYSclk/2/16/SPEED) SPEED[3:0] ADC 转换时间 (CPU 时钟数) SPEED[3:0] ADC 转换时间 (CPU 时钟数) 0000 32 1000 288 0001 64 1001 320 0010 96 1010 352 0011 128 1011 384 0100 160 1100 416 0101 192 1101 448 0110 224 1110 480 0111 256 1111 512 ADC 转换结果寄存器 符号 地址 ADC_RES BDH ADC_RESL BEH B7 B6 B5 B4 B3 B2 B1 B0 当 A/D 转换完成后,12 为的转换结果会自动保存到 ADC_RES 和 ADC_RESL 中。保存结果的数据 格式请参考 ADC_CFG 寄存器中的 RESFMT 设置。 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 295 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 17.2 ADC典型应用线路图 17.2.1 高精度ADC应用 CD431/TL431(2.5V基准源) 511R 0.1u 外部模拟 信号输入 系统电源 (可从USB取电) 103 0.1u 22u 10uH Vin AVcc Power On Vcc 47u 0R 模拟地 0R 系统地 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 AGnd AVref AVcc P5.4 Vcc P5.5 Gnd P0.2 P0.1 P0.0 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P4.1 P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 STC8A8K64S4A12 数字地 C? 江苏国芯科技有限公司 C? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 系统时钟10MHz 103(0.01uF) 传真: 0513-5501 2926/2956/2947 - 296 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 17.2.2 ADC一般应用(对ADC精度要求不高的应用) 外部模拟 信号输入 系统电源 (可从USB取电) 103 Vin Power On Vcc 47u C? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 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 AGnd AVref AVcc P5.4 Vcc P5.5 Gnd P0.2 P0.1 P0.0 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P4.1 P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 STC8A8K64S4A12 系统时钟10MHz 103(0.01uF) 传真: 0513-5501 2926/2956/2947 - 297 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 17.3 范例程序 17.3.1 ADC基本操作(查询方式) 汇编代码 ;测试工作频率为 11.0592MHz ADC_CONTR ADC_RES ADC_RESL ADCCFG DATA DATA DATA DATA 0BCH 0BDH 0BEH 0DEH P1M0 P1M1 DATA DATA 092H 091H ORG LJMP 0000H MAIN ORG 0100H MOV SP,#3FH MOV MOV MOV MOV P1M0,#00H P1M1,#01H ADCCFG,#0FH ADC_CONTR,#80H ;设置 P1.0 为 ADC 口 ORL NOP NOP MOV JNB ANL MOV ADC_CONTR,#40H ;启动 AD 转换 A,ADC_CONTR ACC.5,$-2 ADC_CONTR,#NOT 20H P2,ADC_RES ;查询 ADC 完成标志 SJMP LOOP MAIN: ;设置 ADC 时钟为系统时钟/2/16/16 ;使能 ADC 模块 LOOP: ;清完成标志 ;读取 ADC 结果 END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz sfr sfr sfr sfr ADC_CONTR ADC_RES ADC_RESL ADCCFG = = = = 0xbc; 0xbd; 0xbe; 0xde; sfr sfr P1M0 P1M1 = = 0x92; 0x91; void main() { P1M0 = 0x00; 江苏国芯科技有限公司 //设置 P1.0 为 ADC 口 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 298 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com P1M1 = 0x01; ADCCFG = 0x0f; ADC_CONTR = 0x80; 技术支持: 13922829991 研发顾问: 13922805190 //设置 ADC 时钟为系统时钟/2/16/16 //使能 ADC 模块 while (1) { ADC_CONTR |= 0x40; //启动 AD 转换 _nop_(); _nop_(); while (!(ADC_CONTR & 0x20)); //查询 ADC 完成标志 ADC_CONTR &= ~0x20; //清完成标志 P2 = ADC_RES; //读取 ADC 结果 } } 17.3.2 ADC基本操作(中断方式) 汇编代码 ;测试工作频率为 11.0592MHz ADC_CONTR ADC_RES ADC_RESL ADCCFG DATA DATA DATA DATA 0BCH 0BDH 0BEH 0DEH EADC BIT IE.5 P1M0 P1M1 DATA DATA 092H 091H ORG LJMP ORG LJMP 0000H MAIN 002BH ADCISR ORG 0100H ANL MOV ORL RETI ADC_CONTR,#NOT 20H P2,ADC_RES ADC_CONTR,#40H MOV SP,#3FH MOV MOV MOV MOV SETB SETB ORL P1M0,#00H P1M1,#01H ADCCFG,#0FH ADC_CONTR,#80H EADC EA ADC_CONTR,#40H SJMP $ ADCISR: ;清完成标志 ;读取 ADC 结果 ;继续 AD 转换 MAIN: ;设置 P1.0 为 ADC 口 ;设置 ADC 时钟为系统时钟/2/16/16 ;使能 ADC 模块 ;使能 ADC 中断 ;启动 AD 转换 END 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 299 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz sfr sfr sfr sfr ADC_CONTR ADC_RES ADC_RESL ADCCFG = = = = 0xbc; 0xbd; 0xbe; 0xde; sbit EADC = IE^5; sfr sfr P1M0 P1M1 = = 0x92; 0x91; void ADC_Isr() interrupt 5 using 1 { ADC_CONTR &= ~0x20; P2 = ADC_RES; ADC_CONTR |= 0x40; } //清中断标志 //读取 ADC 结果 //继续 AD 转换 void main() { P1M0 = 0x00; P1M1 = 0x01; ADCCFG = 0x0f; ADC_CONTR = 0x80; EADC = 1; EA = 1; ADC_CONTR |= 0x40; //设置 P1.0 为 ADC 口 //设置 ADC 时钟为系统时钟/2/16/16 //使能 ADC 模块 //使能 ADC 中断 //启动 AD 转换 while (1); } 17.3.3 格式化ADC转换结果 汇编代码 ;测试工作频率为 11.0592MHz ADC_CONTR ADC_RES ADC_RESL ADCCFG DATA DATA DATA DATA 0BCH 0BDH 0BEH 0DEH P1M0 P1M1 DATA DATA 092H 091H ORG LJMP 0000H MAIN ORG 0100H MOV SP,#3FH MOV P1M0,#00H MAIN: 江苏国芯科技有限公司 ;设置 P1.0 为 ADC 口 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 300 - STC8 系列技术手册 ; ; ; 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 MOV MOV MOV P1M1,#01H ADCCFG,#0FH ADC_CONTR,#80H ;设置 ADC 时钟为系统时钟/2/16/16 ;使能 ADC 模块 ORL NOP NOP MOV JNB ANL ADC_CONTR,#40H ;启动 AD 转换 A,ADC_CONTR ACC.5,$-2 ADC_CONTR,#NOT 20H ;查询 ADC 完成标志 ;清完成标志 MOV MOV MOV ADCCFG,#00H A,ADC_RES B,ADC_RESL ;设置结果左对齐 ;A 存储 ADC 的 12 位结果的高 8 位 ;B[7:4]存储 ADC 的 12 位结果的低 4 位,B[3:0]为 0 MOV MOV MOV ADCCFG,#20H A,ADC_RES B,ADC_RESL ;设置结果右对齐 ;A[3:0]存储 ADC 的 12 位结果的高 4 位,A[7:4]为 0 ;B 存储 ADC 的 12 位结果的低 8 位 SJMP $ END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz sfr sfr sfr sfr ADC_CONTR ADC_RES ADC_RESL ADCCFG = = = = 0xbc; 0xbd; 0xbe; 0xde; sfr sfr P1M0 P1M1 = = 0x92; 0x91; void main() { P1M0 = 0x00; P1M1 = 0x01; ADCCFG = 0x0f; ADC_CONTR = 0x80; ADC_CONTR |= 0x40; _nop_(); _nop_(); while (!(ADC_CONTR & 0x20)); ADC_CONTR &= ~0x20; // // // //设置 P1.0 为 ADC 口 //设置 ADC 时钟为系统时钟/2/16/16 //使能 ADC 模块 //启动 AD 转换 //查询 ADC 完成标志 //清完成标志 ADCCFG = 0x00; ACC = ADC_RES; B = ADC_RESL; //设置结果左对齐 //A 存储 ADC 的 12 位结果的高 8 位 //B[7:4]存储 ADC 的 12 位结果的低 4 位,B[3:0]为 0 ADCCFG = 0x20; ACC = ADC_RES; B = ADC_RESL; //设置结果右对齐 //A[3:0]存储 ADC 的 12 位结果的高 4 位,A[7:4]为 0 //B 存储 ADC 的 12 位结果的低 8 位 while (1); 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 301 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 } 利用ADC第 16 通道测量外部电压或电池电压 17.3.4 STC8 系列 ADC 的第 16 通道是用来测试内部 BandGap 参考电压的,由于内部 BandGap 参考电压 很稳定,约为 1.35V,且不会随芯片的工作电压的改变而变化,所以可以通过测量内部 BandGap 参考电 压,然后通过 ADC 的值便可反推出外部电压或外部电池电压。 下图为参考线路图: 外部供电 或电池供电 Vin Power On Vcc 47u 103 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 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 AGnd AVref AVcc P5.4 Vcc P5.5 Gnd P0.2 P0.1 P0.0 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P4.1 P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 STC8A8K64S4A12 C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz #define #define FOSC BRT 11059200UL (65536 - FOSC / 115200 / 4) sfr AUXR = 0x8e; sfr ADC_CONTR = 0xbc; 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 302 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com sfr sfr sfr ADC_RES ADC_RESL ADCCFG = = = 0xbd; 0xbe; 0xde; sfr sfr P1M0 P1M1 = = 0x92; 0x91; int idata BGV _at_ 0xef; bit busy; 技术支持: 13922829991 研发顾问: 13922805190 //内部 Bandgap 电压值存放在 idata 中 //idata 的 EFH 地址存放高字节 //idata 的 F0H 地址存放高字节 //电压单位为毫伏(mV) void UartIsr() interrupt 4 using 1 { 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 ADCInit() { ADCCFG = 0x2f; ADC_CONTR = 0x8f; } int { //设置 ADC 时钟为系统时钟/2/16/16 //使能 ADC 模块,并选择第 16 通道 ADCRead() int res; ADC_CONTR |= 0x40; _nop_(); _nop_(); while (!(ADC_CONTR & 0x20)); ADC_CONTR &= ~0x20; 江苏国芯科技有限公司 //启动 AD 转换 //查询 ADC 完成标志 //清完成标志 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 303 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 res = (ADC_RES = 3; vcc = (int)(4095L * BGV / res); UartSend(vcc >> 8); UartSend(vcc); //前两个数据丢弃 //读取 8 次数据 //取平均值 //计算 VREF 管脚电压,即电池电压 //注意,此电压的单位为毫伏(mV) //输出电压值到串口 while (1); } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 304 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 18 PCA/CCP/PWM应用 STC8 系列单片机内部集成了 4 组可编程计数器阵列(PCA/CCP/PWM)模块,可用于软件定时器、 外部脉冲捕获、高速脉冲输出和 PWM 脉宽调制输出。 PCA 内部含有一个特殊的 16 位计数器,4 组 PCA 模块均与之相连接。PCA 计数器的结构图如下: PCA模块0 PCA模块1 SYSclk/12 000 PCA模块2 SYSclk/2 001 PCA模块3 T0溢出 010 外部ECI 011 SYSclk 100 SYSclk/4 101 SYSclk/6 110 SYSclk/8 111 CH CL PCA中断 16位计数器 进入IDLE模式 CCON CF CR - - CF3 CF2 CF1 CF0 CMOD - CIDL - - CPS[2:0] ECF PCA计数器结构图 18.1 PCA相关的寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 CCF3 CCF2 CCF1 CCF0 00xx,0000 ECF 0xxx,0000 CCON PCA 控制寄存器 D8H CF CR - - CMOD PCA 模式寄存器 D9H CIDL - - - 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 CCAPM3 PCA 模块 3 模式控制寄存器 DDH - ECOM3 CCAPP3 CCAPN3 MAT3 TOG3 PWM3 ECCF3 x000,0000 CL PCA 计数器低字节 E9H 0000,0000 CCAP0L PCA 模块 0 低字节 EAH 0000,0000 CCAP1L PCA 模块 1 低字节 EBH 0000,0000 CCAP2L PCA 模块 2 低字节 ECH 0000,0000 CCAP3L PCA 模块 3 低字节 EDH 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 PCA_PWM3 PCA3 的 PWM 模式寄存器 F5H EBS3[1:0] XCCAP3H[1:0] XCCAP3L[1:0] EPC3H EPC3L 0000,0000 CH PCA 计数器高字节 F9H 0000,0000 CCAP0H PCA 模块 0 高字节 FAH 0000,0000 CCAP1H PCA 模块 1 高字节 FBH 0000,0000 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 CPS[2:0] 传真: 0513-5501 2926/2956/2947 - 305 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 CCAP2H PCA 模块 2 高字节 FCH 0000,0000 CCAP3H PCA 模块 3 高字节 FDH 0000,0000 PCA 控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 CCON D8H CF CR - - CCF3 CCF2 CCF1 CCF0 CF:PCA 计数器溢出中断标志。当 PCA 的 16 位计数器计数发生溢出时,硬件自动将此位置 1,并向 CPU 提出中断请求。此标志位需要软件清零。 CR:PCA 计数器允许控制位。 0:停止 PCA 计数 1:启动 PCA 计数 CCFn(n=0,1,2,3):PCA 模块中断标志。当 PCA 模块发生匹配或者捕获时,硬件自动将此位置 1,并 向 CPU 提出中断请求。此标志位需要软件清零。 PCA 模式寄存器 符号 地址 B7 B6 B5 B4 CMOD D9H CIDL - - - B5 B4 B3 B2 B1 CPS[2:0] B0 ECF CIDL:空闲模式下是否停止 PCA 计数。 0:空闲模式下 PCA 继续计数 1:空闲模式下 PCA 停止计数 CPS[2:0]:PCA 计数脉冲源选择位 CPS[2:0] PCA 的输入时钟源 000 系统时钟/12 001 系统时钟/2 010 定时器 0 的溢出脉冲 011 ECI 脚的外部输入时钟 100 系统时钟 101 系统时钟/4 110 系统时钟/6 111 系统时钟 8 ECF:PCA 计数器溢出中断允许位。 0:禁止 PCA 计数器溢出中断 1:使能 PCA 计数器溢出中断 PCA 计数器寄存器 符号 地址 CL E9H CH F9H B7 B6 B3 B2 B1 B0 由 CL 和 CH 两个字节组合成一个 16 位计数器,CL 为低 8 位计数器,CH 为高 8 位计数器。每个 PCA 时钟 16 位计数器自动加 1。 PCA 模块模式控制寄存器 符号 地址 江苏国芯科技有限公司 B7 B6 B5 总机: 0513-5501 2928/2929/2966 B4 B3 B2 B1 传真: 0513-5501 2926/2956/2947 B0 - 306 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 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 CCAPM3 DDH - ECOM3 CCAPP3 CCAPN3 MAT3 TOG3 PWM3 ECCF3 B5 B4 B3 B2 B1 B0 ECOMn:允许 PCA 模块 n 的比较功能 CCAPPn:允许 PCA 模块 n 进行上升沿捕获 CCAPNn:允许 PCA 模块 n 进行下降沿捕获 MATn:允许 PCA 模块 n 的匹配功能 TOGn:允许 PCA 模块 n 的高速脉冲输出功能 PWMn:允许 PCA 模块 n 的脉宽调制输出功能 ECCFn:允许 PCA 模块 n 的匹配/捕获中断 PCA 模块模式捕获值/比较值寄存器 符号 地址 CCAP0L EAH CCAP1L EBH CCAP2L ECH CCAP3L EDH CCAP0H FAH CCAP1H FBH CCAP2H FCH CCAP3H FDH B7 B6 当 PCA 模块捕获功能使能时,CCAPnL 和 CCAPnH 用于保存发生捕获时的 PCA 的计数值(CL 和 CH); 当 PCA 模块比较功能使能时,PCA 控制器会将当前 CL 和 CH 中的计数值与保存在 CCAPnL 和 CCAPnH 中的值进行比较,并给出比较结果;当 PCA 模块匹配功能使能时,PCA 控制器会将当前 CL 和 CH 中的计数值与保存在 CCAPnL 和 CCAPnH 中的值进行比较,看是否匹配(相等),并给 出匹配结果。 PCA 模块 PWM 模式控制寄存器 B7 B6 B5 B4 B1 B0 XCCAP0L[1:0] EPC0H EPC0L XCCAP1H[1:0] XCCAP1L[1:0] EPC1H EPC1L EBS2[1:0] XCCAP2H[1:0] XCCAP2L[1:0] EPC2H EPC2L EBS3[1:0] XCCAP3H[1:0] XCCAP3L[1:0] EPC3H EPC3L 符号 地址 PCA_PWM0 F2H EBS0[1:0] XCCAP0H[1:0] PCA_PWM1 F3H EBS1[1:0] PCA_PWM2 F4H PCA_PWM3 F5H B3 B2 EBSn[1:0]:PCA 模块 n 的 PWM 位数控制 EBSn[1:0] PWM 位数 重载值 比较值 00 8 位 PWM {EPCnH, CCAPnH[7:0]} {EPCnL, CCAPnL[7:0]} 01 7 位 PWM {EPCnH, CCAPnH[6:0]} {EPCnL, CCAPnL[6:0]} 10 6 位 PWM {EPCnH, CCAPnH[5:0]} {EPCnL, CCAPnL[5:0]} 11 10 位 PWM {EPCnH, XCCAPnH[1:0], CCAPnH[7:0]} {EPCnL, XCCAPnL[1:0], CCAPnL[7:0]} XCCAPnH[1:0]:10 位 PWM 的第 9 位和第 10 位的重载值 XCCAPnL[1:0]:10 位 PWM 的第 9 位和第 10 位的比较值 EPCnH:PWM 模式下,重载值的最高位(8 为 PWM 的第 9 位,7 位 PWM 的第 8 位,6 位 PWM 的第 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 307 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 7 位,10 位 PWM 的第 11 位) EPCnL:PWM 模式下,比较值的最高位(8 为 PWM 的第 9 位,7 位 PWM 的第 8 位,6 位 PWM 的第 7 位,10 位 PWM 的第 11 位) 注意:在更新 10 位 PWM 的重载值时,必须先写高两位 XCCAPnH[1:0],再写低 8 位 CCAPnH[7:0]。 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 308 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 18.2 PCA工作模式 STC8 系列单片机共有 4 组 PCA 模块,每组模块都可独立设置工作模式。模式设置如下所示: CCAPMn 模块功能 - ECOMn CAPPn CAPNn MATn TOGn PWMn ECCFn - 0 0 0 0 0 0 0 无操作 - 1 0 0 0 0 1 0 6/7/8/10 位 PWM 模式,无中断 - 1 1 0 0 0 1 1 6/7/8/10 位 PWM 模式,产生上升沿中断 - 1 0 1 0 0 1 1 6/7/8/10 位 PWM 模式,产生下降沿中断 - 1 1 1 0 0 1 1 6/7/8/10 位 PWM 模式,产生边沿中断 - 0 1 0 0 0 0 x 16 位上升沿捕获 - 0 0 1 0 0 0 x 16 位下降沿捕获 - 0 1 1 0 0 0 x 16 位边沿捕获 - 1 0 0 1 0 0 x 16 位软件定时器 - 1 0 0 1 1 0 x 16 为高速脉冲输出 18.2.1 捕获模式 要使一个 PCA 模块工作在捕获模式,寄存器 CCAPMn 中的 CAPNn 和 CAPPn 至少有一位必须置 1 (也可两位都置 1)。PCA 模块工作于捕获模式时,对模块的外部 CCP0/CCP1/CCP2/CCP3 管脚的输入 跳变进行采样。当采样到有效跳变时,PCA 控制器立即将 PCA 计数器 CH 和 CL 中的计数值装载到模 块的捕获寄存器中 CCAPnL 和 CCAPnH,同时将 CCON 寄存器中相应的 CCFn 置 1。若 CCAPMn 中的 ECCFn 位被设置为 1,将产生中断。由于所有 PCA 模块的中断入口地址是共享的,所以在中断服务程 序中需要判断是哪一个模块产生了中断,并注意中断标志位需要软件清零。 PCA 模块工作于捕获模式的结构图如下图所示: CCON CF CR CH - - CF3 CF2 CF1 CF0 CL PCA中断 CCAPnH CCAPnL CCP0 CCP1 CCP2 CCP3 CCAPMn - ECOMn 0 0 CAPPn CAPNn MATn TOGn PWMn 0 0 ECCFn 0 PCA模块捕获模式 18.2.2 软件定时器模式 通过置位 CCAPMn 寄存器的 ECOM 和 MAT 位,可使 PCA 模块用作软件定时器。PCA 计数器值 CL 和 CH 与模块捕获寄存器的值 CCAPnL 和 CCAPnH 相比较,当两者相等时,CCON 中的 CCFn 会被 置 1,若 CCAPMn 中的 ECCFn 被设置为 1 时将产生中断。CCFn 标志位需要软件清零。 PCA 模块工作于软件定时器模式的结构图如下图所示: 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 309 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 先写 CCAPnL 后写 CCAPnH 0 CCON CF CR 1 CH 使能 - 研发顾问: 13922805190 - CF3 CF2 CF1 CF0 CL 匹配 16位比较器 PCA中断 CCAPnH CCAPnL ECOMn=0,停止比较 ECOMn=1,恢复比较 CCAPMn - 技术支持: 13922829991 ECOMn CAPPn 0 0 CAPNn MATn TOGn PWMn 0 1 0 ECCFn 0 PCA模块软件定时器模式 18.2.3 高速脉冲输出模式 当 PCA 计数器的计数值与模块捕获寄存器的值相匹配时,PCA 模块的 CCPn 输出将发生翻转转。要 激活高速脉冲输出模式,CCAPMn 寄存器的 TOGn、MATn 和 ECOMn 位必须都置 1。 PCA 模块工作于高速脉冲输出模式的结构图如下图所示: 先写 CCAPnL 后写 CCAPnH 0 CCON CF CR - 1 CH 使能 ECOMn=0,停止比较 ECOMn=1,恢复比较 CCAPMn - ECOMn 0 - CF3 CF2 CF1 CF0 CL PCA中断 匹配 16位比较器 CCPn CCAPnH CCAPnL CAPPn 0 CAPNn MATn TOGn PWMn 0 1 1 ECCFn 0 PCA模块高速脉冲输出模式 18.2.4 18.2.4.1 PWM脉宽调制模式 8 位PWM模式 脉宽调制是使用程序来控制波形的占空比、周期、相位波形的一种技术,在三相电机驱动、D/A 转 换等场合有广泛的应用。STC8 系列单片机的 PCA 模块可以通过设定各自的 PCA_PWMn 寄存器使其工 作于 8 位 PWM 或 7 位 PWM 或 6 位 PWM 或 10 位 PWM 模式。要使能 PCA 模块的 PWM 功能,模块 寄存器 CCAPMn 的 PWMn 和 ECOMn 位必须置 1。 PCA_PWMn 寄存器中的 EBSn[1:0]设置为 00 时,PCA 模块 n 工作于 8 位 PWM 模式,此时将 {0,CL[7:0]}与捕获寄存器{EPCnL,CCAPnL[7:0]}进行比较。当 PCA 模块工作于 8 位 PWM 模式时,由 于所有模块共用一个 PCA 计数器,所有它们的输出频率相同。各个模块的输出占空比使用寄存器 {EPCnL,CCAPnL[7:0]}进行设置。当{0,CL[7:0]}的值小于{EPCnL,CCAPnL[7:0]}时,输出为低电平;当 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 310 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 {0,CL[7:0]}的值等于或大于{EPCnL,CCAPnL[7:0]}时,输出为高电平。当 CL[7:0]的值由 FF 变为 00 溢 出时,{EPCnH,CCAPnH[7:0]}的内容重新装载到{EPCnL,CCAPnL[7:0]}中。这样就可实现无干扰地更新 PWM。 PCA 模块工作于 8 位 PWM 模式的结构图如下图所示: 重载 EPCnH CCAPnH[7:0] EPCnL CCAPnL[7:0] 输出0 {0,CL[7:0]}小于 {EPCnL,CCAPnL[7:0]} 使能 CCPn 9位比较器 {0,CL[7:0]}大于等于 {EPCnL,CCAPnL[7:0]} 0 CL[7:0] 输出1 CL溢出 - ECOMn CAPPn 0 1 0 CAPNn MATn TOGn PWMn 0 0 ECCFn CCAPMn 0 PCA模块8位PWM模式 18.2.4.2 7 位PWM模式 PCA_PWMn 寄存器中的 EBSn[1:0]设置为 01 时,PCA 模块 n 工作于 7 位 PWM 模式,此时将 {0,CL[6:0]}与捕获寄存器{EPCnL,CCAPnL[6:0]}进行比较。当 PCA 模块工作于 7 位 PWM 模式时,由 于所有模块共用一个 PCA 计数器,所有它们的输出频率相同。各个模块的输出占空比使用寄存器 {EPCnL,CCAPnL[6:0]}进行设置。当{0,CL[6:0]}的值小于{EPCnL,CCAPnL[6:0]}时,输出为低电平;当 {0,CL[6:0]}的值等于或大于{EPCnL,CCAPnL[6:0]}时,输出为高电平。当 CL[6:0]的值由 7F 变为 00 溢 出时,{EPCnH,CCAPnH[6:0]}的内容重新装载到{EPCnL,CCAPnL[6:0]}中。这样就可实现无干扰地更新 PWM。 PCA 模块工作于 7 位 PWM 模式的结构图如下图所示: EPCnH 重载 CCAPnH[6:0] 输出0 EPCnL CCAPnL[6:0] {0,CL[6:0]}小于 {EPCnL,CCAPnL[6:0]} 使能 CCPn 8位比较器 {0,CL[6:0]}大于等于 {EPCnL,CCAPnL[6:0]} 0 CL[6:0] 输出1 CL溢出 - ECOMn CAPPn 0 1 0 CAPNn MATn TOGn PWMn 0 0 ECCFn CCAPMn 0 PCA模块7位PWM模式 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 311 - STC8 系列技术手册 18.2.4.3 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 6 位PWM模式 PCA_PWMn 寄存器中的 EBSn[1:0]设置为 10 时,PCA 模块 n 工作于 6 位 PWM 模式,此时将 {0,CL[5:0]}与捕获寄存器{EPCnL,CCAPnL[5:0]}进行比较。当 PCA 模块工作于 6 位 PWM 模式时,由 于所有模块共用一个 PCA 计数器,所有它们的输出频率相同。各个模块的输出占空比使用寄存器 {EPCnL,CCAPnL[5:0]}进行设置。当{0,CL[5:0]}的值小于{EPCnL,CCAPnL[5:0]}时,输出为低电平;当 {0,CL[5:0]}的值等于或大于{EPCnL,CCAPnL[5:0]}时,输出为高电平。当 CL[5:0]的值由 3F 变为 00 溢 出时,{EPCnH,CCAPnH[5:0]}的内容重新装载到{EPCnL,CCAPnL[5:0]}中。这样就可实现无干扰地更新 PWM。 PCA 模块工作于 6 位 PWM 模式的结构图如下图所示: 重载 EPCnH CCAPnH[5:0] EPCnL CCAPnL[5:0] 输出0 {0,CL[5:0]}小于 {EPCnL,CCAPnL[5:0]} 使能 CCPn 7位比较器 {0,CL[5:0]}大于等于 {EPCnL,CCAPnL[5:0]} 0 CL[5:0] 输出1 CL溢出 - ECOMn CAPPn 0 1 0 CAPNn MATn TOGn PWMn 0 0 ECCFn CCAPMn 0 PCA模块6位PWM模式 18.2.4.4 10 位PWM模式 PCA_PWMn 寄存器中的 EBSn[1:0]设置为 11 时,PCA 模块 n 工作于 10 位 PWM 模式,此时将 {CH[1:0],CL[7:0]}与捕获寄存器{EPCnL,XCCAPnL[1:0],CCAPnL[7:0]}进行比较。当 PCA 模块工作于 10 位 PWM 模式时,由于所有模块共用一个 PCA 计数器,所有它们的输出频率相同。各个模块的输出占 空 比 使 用 寄 存 器 {EPCnL,XCCAPnL[1:0],CCAPnL[7:0]} 进 行 设 置 。 当 {CH[1:0],CL[7:0]} 的 值 小 于 {EPCnL,XCCAPnL[1:0],CCAPnL[7:0]} 时 , 输 出 为 低 电 平 ; 当 {CH[1:0],CL[7:0]} 的 值 等 于 或 大 于 {EPCnL,XCCAPnL[1:0],CCAPnL[7:0]}时,输出为高电平。当{CH[1:0],CL[7:0]}的值由 3FF 变为 00 溢出 时,{EPCnH,XCCAPnH[1:0],CCAPnH[7:0]}的内容重新装载到{EPCnL,XCCAPnL[1:0],CCAPnL[7:0]}中。 这样就可实现无干扰地更新 PWM。 PCA 模块工作于 10 位 PWM 模式的结构图如下图所示: 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 312 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 EPCnH XCCAPnH[1:0] CCAPnH[7:0] 重载 输出0 EPCnL XCCAPnL[1:0] CCAPnL[7:0] {0,CH[1:0],CL[7:0]}小于 {EPCnL,XCCAPnL[1:0],CCAPnL[7:0]} 使能 CCPn 11位比较器 {0,CH[1:0],CL[7:0]}大于等于 {EPCnL,XCCAPnL[1:0],CCAPnL[7:0]} 0 CH[1:0] CL[7:0] 输出1 CL溢出 - ECOMn CAPPn 0 1 0 CAPNn MATn TOGn PWMn 0 0 ECCFn CCAPMn 0 PCA模块10位PWM模式 18.3 范例程序 18.3.1 PCA输出PWM(6/7/8/10 位) 汇编代码 ;测试工作频率为 11.0592MHz CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 CCAP3L CCAP3H PCA_PWM3 DATA BIT BIT BIT BIT BIT BIT DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA 0D8H CCON.7 CCON.6 CCON.3 CCON.2 CCON.1 CCON.0 0D9H 0E9H 0F9H 0DAH 0EAH 0FAH 0F2H 0DBH 0EBH 0FBH 0F3H 0DCH 0ECH 0FCH 0F4H 0DDH 0EDH 0FDH 0F5H ORG LJMP 0000H MAIN ORG 0100H MAIN: 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 313 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com MOV SP,#3FH MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV SETB CCON,#00H CMOD,#08H CL,#00H CH,#0H CCAPM0,#42H PCA_PWM0,#80H CCAP0L,#20H CCAP0H,#20H CCAPM1,#42H PCA_PWM1,#40H CCAP1L,#20H CCAP1H,#20H CCAPM2,#42H PCA_PWM2,#00H CCAP2L,#20H CCAP2H,#20H CCAPM3,#42H PCA_PWM3,#0C0H CCAP3L,#20H CCAP3H,#20H CR JMP $ 技术支持: 13922829991 研发顾问: 13922805190 ;PCA 时钟为系统时钟 ;PCA 模块 0 为 PWM 工作模式 ;PCA 模块 0 输出 6 位 PWM ;PWM 占空比为 50%[(40H-20H)/40H] ;PCA 模块 1 为 PWM 工作模式 ;PCA 模块 1 输出 7 位 PWM ;PWM 占空比为 75%[(80H-20H)/80H] ;PCA 模块 2 为 PWM 工作模式 ;PCA 模块 2 输出 8 位 PWM ;PWM 占空比为 87.5%[(100H-20H)/100H] ;PCA 模块 3 为 PWM 工作模式 ;PCA 模块 3 输出 10 位 PWM ;PWM 占空比为 96.875%[(400H-20H)/400H] ;启动 PCA 计时器 END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz sfr sbit sbit sbit sbit sbit sbit sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 CCAP3L 江苏国芯科技有限公司 = = = = = = = = = = = = = = = = = = = = = = = = 0xd8; CCON^7; CCON^6; CCON^3; CCON^2; CCON^1; CCON^0; 0xd9; 0xe9; 0xf9; 0xda; 0xea; 0xfa; 0xf2; 0xdb; 0xeb; 0xfb; 0xf3; 0xdc; 0xec; 0xfc; 0xf4; 0xdd; 0xed; 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 314 - STC8 系列技术手册 sfr sfr 官方网站: www.STCMCUDATA.com / www.STCMCU.com CCAP3H PCA_PWM3 = = 技术支持: 13922829991 研发顾问: 13922805190 0xfd; 0xf5; void main() { CCON = 0x00; CMOD = 0x08; CL = 0x00; CH = 0x00; CCAPM0 = 0x42; PCA_PWM0 = 0x80; CCAP0L = 0x20; CCAP0H = 0x20; CCAPM1 = 0x42; PCA_PWM1 = 0x40; CCAP1L = 0x20; CCAP1H = 0x20; CCAPM2 = 0x42; PCA_PWM2 = 0x00; CCAP2L = 0x20; CCAP2H = 0x20; CCAPM3 = 0x42; PCA_PWM3 = 0xc0; CCAP3L = 0x20; CCAP3H = 0x20; CR = 1; //PCA 时钟为系统时钟 //PCA 模块 0 为 PWM 工作模式 //PCA 模块 0 输出 6 位 PWM //PWM 占空比为 50%[(40H-20H)/40H] //PCA 模块 1 为 PWM 工作模式 //PCA 模块 1 输出 7 位 PWM //PWM 占空比为 75%[(80H-20H)/80H] //PCA 模块 2 为 PWM 工作模式 //PCA 模块 2 输出 8 位 PWM //PWM 占空比为 87.5%[(100H-20H)/100H] //PCA 模块 3 为 PWM 工作模式 //PCA 模块 3 输出 10 位 PWM //PWM 占空比为 96.875%[(400H-20H)/400H] //启动 PCA 计时器 while (1); } 18.3.2 PCA捕获测量脉冲宽度 汇编代码 ;测试工作频率为 11.0592MHz CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 DATA BIT BIT BIT BIT BIT BIT DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA 江苏国芯科技有限公司 0D8H CCON.7 CCON.6 CCON.3 CCON.2 CCON.1 CCON.0 0D9H 0E9H 0F9H 0DAH 0EAH 0FAH 0F2H 0DBH 0EBH 0FBH 0F3H 0DCH 0ECH 0FCH 0F4H 0DDH 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 315 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com CCAP3L CCAP3H PCA_PWM3 DATA DATA DATA 0EDH 0FDH 0F5H CNT COUNT0 COUNT1 LENGTH DATA DATA DATA DATA 20H 21H 24H 27H ORG LJMP ORG LJMP 0000H MAIN 003BH PCAISR ORG 0100H PUSH PUSH JNB CLR INC ACC PSW CF,CHECKCCF0 CF CNT JNB CLR MOV MOV MOV MOV MOV MOV CLR MOV SUBB MOV MOV SUBB MOV MOV SUBB MOV CCF0,ISREXIT CCF0 COUNT0,COUNT1 COUNT0+1,COUNT1+1 COUNT0+2,COUNT1+2 COUNT1,CNT COUNT1+1,CCAP0H COUNT1+2,CCAP0L C A,COUNT1+2 A,COUNT0+2 LENGTH+2,A A,COUNT1+1 A,COUNT0+1 LENGTH+1,A A,COUNT1 A,COUNT0 LENGTH,A POP POP RETI PSW ACC MOV SP,#3FH CLR MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV A CNT,A COUNT0,A COUNT0+1,A COUNT0+2,A COUNT1,A COUNT1+1,A COUNT1+2,A LENGTH,A LENGTH+1,A LENGTH+2,A 技术支持: 13922829991 研发顾问: 13922805190 ;3 bytes ;3 bytes ;3 bytes, (COUNT1-COUNT0) PCAISR: ;清中断标志 ; PCA 计时溢出次数+1 CHECKCCF0: ;备份上一次的捕获值 ;保存本次的捕获值 ;计算两次的捕获差值 ;LENGTH 保存的即为捕获的脉冲宽度 ISREXIT: MAIN: 江苏国芯科技有限公司 ;用户变量初始化 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 316 - STC8 系列技术手册 ; ; 官方网站: www.STCMCUDATA.com / www.STCMCU.com MOV MOV MOV MOV MOV MOV MOV MOV MOV SETB SETB CCON,#00H CMOD,#09H CL,#00H CH,#0H CCAPM0,#11H CCAPM0,#21H CCAPM0,#31H CCAP0L,#00H CCAP0H,#00H CR EA JMP $ 技术支持: 13922829991 研发顾问: 13922805190 ;PCA 时钟为系统时钟,使能 PCA 计时中断 ;PCA 模块 0 为 16 位捕获模式(下降沿捕获) ;PCA 模块 0 为 16 位捕获模式(上升沿捕获) ;PCA 模块 0 为 16 位捕获模式(边沿捕获) ;启动 PCA 计时器 END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz sfr sbit sbit sbit sbit sbit sbit sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 CCAP3L CCAP3H PCA_PWM3 unsigned char unsigned long unsigned long unsigned long = = = = = = = = = = = = = = = = = = = = = = = = = = 0xd8; CCON^7; CCON^6; CCON^3; CCON^2; CCON^1; CCON^0; 0xd9; 0xe9; 0xf9; 0xda; 0xea; 0xfa; 0xf2; 0xdb; 0xeb; 0xfb; 0xf3; 0xdc; 0xec; 0xfc; 0xf4; 0xdd; 0xed; 0xfd; 0xf5; cnt; count0; count1; length; //存储 PCA 计时溢出次数 //记录上一次的捕获值 //记录本次的捕获值 //存储信号的时间长度 void PCA_Isr() interrupt 7 using 1 { if (CF) 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 317 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 { CF = 0; cnt++; //PCA 计时溢出次数+1 } if (CCF0) { CCF0 = 0; count0 = count1; //备份上一次的捕获值 ((unsigned char *)&count1)[3] = CCAP0L; ((unsigned char *)&count1)[2] = CCAP0H; ((unsigned char *)&count1)[1] = cnt; ((unsigned char *)&count1)[0] = 0; length = count1 - count0; //length 保存的即为捕获的脉冲宽度 } } void main() { cnt = 0; count0 = 0; count1 = 0; length = 0; CCON = 0x00; CMOD = 0x09; CL = 0x00; CH = 0x00; CCAPM0 = 0x11; CCAPM0 = 0x21; CCAPM0 = 0x31; CCAP0L = 0x00; CCAP0H = 0x00; CR = 1; EA = 1; //用户变量初始化 //PCA 时钟为系统时钟,使能 PCA 计时中断 //PCA 模块 0 为 16 位捕获模式(下降沿捕获) //PCA 模块 0 为 16 位捕获模式(下降沿捕获) //PCA 模块 0 为 16 位捕获模式(下降沿捕获) //启动 PCA 计时器 while (1); } 18.3.3 PCA实现 16 位软件定时 汇编代码 ;测试工作频率为 11.0592MHz CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L DATA BIT BIT BIT BIT BIT BIT DATA DATA DATA DATA DATA DATA DATA DATA DATA 江苏国芯科技有限公司 0D8H CCON.7 CCON.6 CCON.3 CCON.2 CCON.1 CCON.0 0D9H 0E9H 0F9H 0DAH 0EAH 0FAH 0F2H 0DBH 0EBH 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 318 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 CCAP3L CCAP3H PCA_PWM3 DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA 0FBH 0F3H 0DCH 0ECH 0FCH 0F4H 0DDH 0EDH 0FDH 0F5H T50HZ EQU 2400H ORG LJMP ORG LJMP 0000H MAIN 003BH PCAISR ORG 0100H PUSH PUSH CLR MOV ADD MOV MOV ADDC MOV CPL POP POP RETI ACC PSW CCF0 A,CCAP0L A,#LOW T50HZ CCAP0L,A A,CCAP0H A,#HIGH T50HZ CCAP0H,A P1.0 PSW ACC MOV SP,#3FH MOV MOV MOV MOV MOV MOV MOV SETB SETB CCON,#00H CMOD,#00H CL,#00H CH,#0H CCAPM0,#49H CCAP0L,#LOW T50HZ CCAP0H,#HIGH T50HZ CR EA JMP $ 技术支持: 13922829991 研发顾问: 13922805190 ;11059200/12/2/50 PCAISR: ;测试端口,闪烁频率为 50Hz MAIN: ;PCA 时钟为系统时钟/12 ;PCA 模块 0 为 16 位定时器模式 ;启动 PCA 计时器 END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz #define T50HZ 江苏国芯科技有限公司 (11059200L / 12 / 2 / 50) 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 319 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com sfr sbit sbit sbit sbit sbit sbit sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 CCAP3L CCAP3H PCA_PWM3 = = = = = = = = = = = = = = = = = = = = = = = = = = 0xd8; CCON^7; CCON^6; CCON^3; CCON^2; CCON^1; CCON^0; 0xd9; 0xe9; 0xf9; 0xda; 0xea; 0xfa; 0xf2; 0xdb; 0xeb; 0xfb; 0xf3; 0xdc; 0xec; 0xfc; 0xf4; 0xdd; 0xed; 0xfd; 0xf5; sbit P10 = P1^0; unsigned int 技术支持: 13922829991 研发顾问: 13922805190 value; void PCA_Isr() interrupt 7 using 1 { CCF0 = 0; CCAP0L = value; CCAP0H = value >> 8; value += T50HZ; P10 = !P10; //测试端口 } void main() { CCON = 0x00; CMOD = 0x00; CL = 0x00; CH = 0x00; CCAPM0 = 0x49; value = T50HZ; CCAP0L = value; CCAP0H = value >> 8; value += T50HZ; CR = 1; EA = 1; //PCA 时钟为系统时钟/12 //PCA 模块 0 为 16 位定时器模式 //启动 PCA 计时器 while (1); } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 320 - STC8 系列技术手册 18.3.4 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 PCA输出高速脉冲 汇编代码 ;测试工作频率为 11.0592MHz CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 CCAP3L CCAP3H PCA_PWM3 DATA BIT BIT BIT BIT BIT BIT DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA 0D8H CCON.7 CCON.6 CCON.3 CCON.2 CCON.1 CCON.0 0D9H 0E9H 0F9H 0DAH 0EAH 0FAH 0F2H 0DBH 0EBH 0FBH 0F3H 0DCH 0ECH 0FCH 0F4H 0DDH 0EDH 0FDH 0F5H T38K4HZ EQU 90H ORG LJMP ORG LJMP 0000H MAIN 003BH PCAISR ORG 0100H PUSH PUSH CLR MOV ADD MOV MOV ADDC MOV POP POP RETI ACC PSW CCF0 A,CCAP0L A,#LOW T38K4HZ CCAP0L,A A,CCAP0H A,#HIGH T38K4HZ CCAP0H,A PSW ACC MOV SP,#3FH MOV CCON,#00H ;11059200/2/38400 PCAISR: MAIN: 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 321 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com MOV MOV MOV MOV MOV MOV SETB SETB CMOD,#08H CL,#00H CH,#0H CCAPM0,#4DH CCAP0L,#LOW T38K4HZ CCAP0H,#HIGH T38K4HZ CR EA JMP $ 技术支持: 13922829991 研发顾问: 13922805190 ;PCA 时钟为系统时钟 ;PCA 模块 0 为 16 位定时器模式并使能脉冲输出 ;启动 PCA 计时器 END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz #define T38K4HZ sfr sbit sbit sbit sbit sbit sbit sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 CCAP3L CCAP3H PCA_PWM3 unsigned int (11059200L / 2 / 38400) = = = = = = = = = = = = = = = = = = = = = = = = = = 0xd8; CCON^7; CCON^6; CCON^3; CCON^2; CCON^1; CCON^0; 0xd9; 0xe9; 0xf9; 0xda; 0xea; 0xfa; 0xf2; 0xdb; 0xeb; 0xfb; 0xf3; 0xdc; 0xec; 0xfc; 0xf4; 0xdd; 0xed; 0xfd; 0xf5; value; void PCA_Isr() interrupt 7 using 1 { CCF0 = 0; CCAP0L = value; CCAP0H = value >> 8; value += T38K4HZ; } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 322 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com void main() { CCON = 0x00; CMOD = 0x08; CL = 0x00; CH = 0x00; CCAPM0 = 0x4d; value = T38K4HZ; CCAP0L = value; CCAP0H = value >> 8; value += T38K4HZ; CR = 1; EA = 1; 技术支持: 13922829991 研发顾问: 13922805190 //PCA 时钟为系统时钟 //PCA 模块 0 为 16 位定时器模式并使能脉冲输出 //启动 PCA 计时器 while (1); } 18.3.5 PCA扩展外部中断 汇编代码 ;测试工作频率为 11.0592MHz CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 CCAP3L CCAP3H PCA_PWM3 DATA BIT BIT BIT BIT BIT BIT DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA 0D8H CCON.7 CCON.6 CCON.3 CCON.2 CCON.1 CCON.0 0D9H 0E9H 0F9H 0DAH 0EAH 0FAH 0F2H 0DBH 0EBH 0FBH 0F3H 0DCH 0ECH 0FCH 0F4H 0DDH 0EDH 0FDH 0F5H ORG LJMP ORG LJMP 0000H MAIN 003BH PCAISR ORG 0100H CLR CPL CCF0 P1.0 PCAISR: 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 323 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 RETI MAIN: ; ; MOV SP,#3FH MOV MOV MOV MOV MOV MOV MOV MOV MOV SETB SETB CCON,#00H CMOD,#08H CL,#00H CH,#0H CCAPM0,#11H CCAPM0,#21H CCAPM0,#31H CCAP0L,#0 CCAP0H,#0 CR EA JMP $ ;PCA 时钟为系统时钟 ;扩展外部端口 CCP0 为下降沿中断口 ;扩展外部端口 CCP0 为上升沿中断口 ;扩展外部端口 CCP0 为边沿中断口 ;启动 PCA 计时器 END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz sfr sbit sbit sbit sbit sbit sbit sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr sfr CCON CF CR CCF3 CCF2 CCF1 CCF0 CMOD CL CH CCAPM0 CCAP0L CCAP0H PCA_PWM0 CCAPM1 CCAP1L CCAP1H PCA_PWM1 CCAPM2 CCAP2L CCAP2H PCA_PWM2 CCAPM3 CCAP3L CCAP3H PCA_PWM3 = = = = = = = = = = = = = = = = = = = = = = = = = = 0xd8; CCON^7; CCON^6; CCON^3; CCON^2; CCON^1; CCON^0; 0xd9; 0xe9; 0xf9; 0xda; 0xea; 0xfa; 0xf2; 0xdb; 0xeb; 0xfb; 0xf3; 0xdc; 0xec; 0xfc; 0xf4; 0xdd; 0xed; 0xfd; 0xf5; sbit P10 = P1^0; void PCA_Isr() interrupt 7 using 1 { 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 324 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 CCF0 = 0; P10 = !P10; } void main() { CCON = 0x00; CMOD = 0x08; CL = 0x00; CH = 0x00; CCAPM0 = 0x11; // CCAPM0 = 0x21; // CCAPM0 = 0x31; CCAP0L = 0; CCAP0H = 0; CR = 1; EA = 1; //PCA 时钟为系统时钟 //扩展外部端口 CCP0 为下降沿中断口 //扩展外部端口 CCP0 为上升沿中断口 //扩展外部端口 CCP0 为边沿中断口 //启动 PCA 计时器 while (1); } 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 325 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 19 增强型PWM STC8 系列单片机集成了一组(各自独立 8 路)增强型的 PWM 波形发生器。PWM 波形发生器内 部有一个 15 位的 PWM 计数器供 8 路 PWM 使用,用户可以设置每路 PWM 的初始电平。另外,PWM 波形发生器为每路 PWM 又设计了两个用于控制波形翻转的计数器 T1/T2,可以非常灵活的每路 PWM 的高低电平宽度,从而达到对 PWM 的占空比以及 PWM 的输出延迟进行控制的目的。由于 8 路 PWM 是各自独立的,且每路 PWM 的初始状态可以进行设定,所以用户可以将其中的任意两路配合起来使用, 即可实现互补对称输出以及死区控制等特殊应用。 增强型的 PWM 波形发生器还设计了对外部异常事件(包括外部端口 P3.5 电平异常、比较器比较 结果异常)进行监控的功能,可用于紧急关闭 PWM 输出。PWM 波形发生器还可与 ADC 相关联,设 置 PWM 周期的任一时间点触发 ADC 转换事件。 19.1 PWM相关的寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 PWMCFG 增强型 PWM 配置寄存器 F1H CBIF ETADC - - - - - - 00xx,xxxx PWMIF 增强型 PWM 中断标志寄存器 F6H C7IF C6IF C5IF C4IF C3IF C2IF C1IF C0IF 0000,0000 PWMFDCR PWM 异常检测控制寄存器 F7H INVCMP INVIO ENFD FLTFLIO EFDI FDCMP FDIO FDIF 0000,0000 PWMCR PWM 控制寄存器 FEH ENPWM ECBI - - - - - - 00xx,xxxx 符号 描述 地址 B3 B2 B1 位地址与符号 复位值 B7 B6 B5 PWMCH PWM 计数器高字节 FFF0H PWMCL PWM 计数器低字节 FFF1H PWMCKS PWM 时钟选择 FFF2H - TADCPH 触发 ADC 计数值高字节 FFF3H - TADCPL 触发 ADC 计数值低字节 FFF4H PWM0T1H PWM0T1 计数值高字节 FF00H PWM0T1L PWM0T1 计数值低节 FF01H PWM0T2H PWM0T2 数值高字节 FF02H PWM0T2L PWM0T2 数值低节 FF03H PWM0CR PWM0 控制寄存器 FF04H ENC0O C0INI - PWM0HLD PWM0 电平保持控制寄存器 FF05H - - - PWM1T1H PWM1T1 计数值高字节 FF10H - PWM1T1L PWM1T1 计数值低节 FF11H PWM1T2H PWM1T2 数值高字节 FF12H PWM1T2L PWM1T2 数值低节 FF13H PWM1CR PWM1 控制寄存器 FF14H ENC1O C1INI - PWM1HLD PWM1 电平保持控制寄存器 FF15H - - - PWM2T1H PWM2T1 计数值高字节 FF20H - PWM2T1L PWM2T1 计数值低节 FF21H PWM2T2H PWM2T2 数值高字节 FF22H 江苏国芯科技有限公司 B4 B0 - x000,0000 0000,0000 - - SELT2 PWM_PS[3:0] xxx0,0000 x000,0000 0000,0000 - x000,0000 0000,0000 - x000,0000 0000,0000 C0_S[1:0] - EC0I - - EC0T2SI EC0T1SI 00x0,0000 HC0H HC0L xxxx,xx00 x000,0000 0000,0000 - x000,0000 0000,0000 C1_S[1:0] - EC1I - - EC1T2SI EC1T1SI 00x0,0000 HC1H HC1L xxxx,xx00 x000,0000 0000,0000 - 总机: 0513-5501 2928/2929/2966 x000,0000 传真: 0513-5501 2926/2956/2947 - 326 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com PWM2T2L PWM2T2 数值低节 FF23H PWM2CR PWM2 控制寄存器 FF24H ENC2O C2INI - PWM2HLD PWM2 电平保持控制寄存器 FF25H - - - PWM3T1H PWM3T1 计数值高字节 FF30H - PWM3T1L PWM3T1 计数值低节 FF31H PWM3T2H PWM3T2 数值高字节 FF32H PWM3T2L PWM3T2 数值低节 FF33H PWM3CR PWM3 控制寄存器 FF34H ENC3O C3INI - PWM3HLD PWM3 电平保持控制寄存器 FF35H - - - PWM4T1H PWM4T1 计数值高字节 FF40H - PWM4T1L PWM4T1 计数值低节 FF41H PWM4T2H PWM4T2 数值高字节 FF42H PWM4T2L PWM4T2 数值低节 FF43H PWM4CR PWM4 控制寄存器 FF44H ENC4O C4INI - PWM4HLD PWM4 电平保持控制寄存器 FF45H - - - PWM5T1H PWM5T1 计数值高字节 FF50H - PWM5T1L PWM5T1 计数值低节 FF51H PWM5T2H PWM5T2 数值高字节 FF52H PWM5T2L PWM5T2 数值低节 FF53H PWM5CR PWM5 控制寄存器 FF54H ENC5O C5INI - PWM5HLD PWM5 电平保持控制寄存器 FF55H - - - PWM6T1H PWM6T1 计数值高字节 FF60H - PWM6T1L PWM6T1 计数值低节 FF61H PWM6T2H PWM6T2 数值高字节 FF62H PWM6T2L PWM6T2 数值低节 FF63H PWM6CR PWM6 控制寄存器 FF64H ENC6O C6INI - PWM6HLD PWM6 电平保持控制寄存器 FF65H - - - PWM7T1H PWM7T1 计数值高字节 FF70H - PWM7T1L PWM7T1 计数值低节 FF71H PWM7T2H PWM7T2 数值高字节 FF72H PWM7T2L PWM7T2 数值低节 FF73H PWM7CR PWM7 控制寄存器 FF74H ENC7O C7INI - PWM7HLD PWM7 电平保持控制寄存器 FF75H - - - 技术支持: 13922829991 研发顾问: 13922805190 0000,0000 C2_S[1:0] - EC2I - - EC2T2SI EC2T1SI 00x0,0000 HC2H HC2L xxxx,xx00 x000,0000 0000,0000 - x000,0000 0000,0000 C3_S[1:0] - EC3I - - EC3T2SI EC3T1SI 00x0,0000 HC3H HC3L xxxx,xx00 x000,0000 0000,0000 - x000,0000 0000,0000 C4_S[1:0] - EC4I - - EC4T2SI EC4T1SI 00x0,0000 HC4H HC4L xxxx,xx00 x000,0000 0000,0000 - x000,0000 0000,0000 C5_S[1:0] - EC5I - - EC5T2SI EC5T1SI 00x0,0000 HC5H HC5L xxxx,xx00 x000,0000 0000,0000 - x000,0000 0000,0000 C6_S[1:0] - EC6I - - EC6T2SI EC6T1SI 00x0,0000 HC6H HC6L xxxx,xx00 x000,0000 0000,0000 - x000,0000 0000,0000 C7_S[1:0] - EC7I - - EC7T2SI EC7T1SI 00x0,0000 HC7H HC7L xxxx,xx00 PWM 配置寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PWMCFG F1H CBIF ETADC - - - - - - CBIF:PWM 计数器归零中断标志位。 当 15 位的 PWM 计数器记满溢出归零时,硬件自动将此位置 1,并向 CPU 提出中断请求,此标志 位需要软件清零。 ETADC:PWM 是否与 ADC 关联 0:PWM 与 ADC 不关联 允许在 PWM 周期中某个时间点触发 A/D 转换。使用 TADCPH 和 TADCPL 1:PWM 与 ADC 相关联。 进行设置。 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 327 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 PWM 中断标志寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PWMIF F6H C7IF C6IF C5IF C4IF C3IF C2IF C1IF C0IF CnIF:第 n 通道 PWM 的中断标志位。 可设置在各路 PWM 的翻转点 1 和翻转点 2。当所设置的翻转点发生翻转事件时,硬件自动将此位 置 1,并向 CPU 提出中断请求,此标志位需要软件清零。 PWM 异常检测控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PWMFDCR F7H INVCMP INVIO ENFD FLTFLIO EFDI FDCMP FDIO FDIF INVCMP:比较器器结果异常信号处理 0:比较器器结果由低变高为异常信号 1:比较器器结果由高变低为异常信号 INVIO:外部端口 P3.5 异常信号处理 0:外部端口 P3.5 信号由低变高为异常信号 1:外部端口 P3.5 信号由高变低为异常信号 ENFD:PWM 外部异常检测控制位 0:关闭 PWM 外部异常检测功能 1:使能 PWM 外部异常检测功能 FLTFLIO:发生 PWM 外部异常时对 PWM 输出口控制位 0:发生 WM 外部异常时,PWM 的输出口不作任何改变 (注:只有 ENCnO=1 所对 1:发生 WM 外部异常时,PWM 的输出口立即被设置为高阻输入模式。 应的端口才会被强制悬空) EFDI:PWM 异常检测中断使能位 0:关闭 PWM 异常检测中断(FDIF 依然会被硬件置位) 1:使能 PWM 异常检测中断 FDCMP:比较器输出异常检测使能位 0:比较器与 PWM 无关 1:设定 PWM 异常检测源为比较器输出(异常类型有 INVCMP 设定) FDIO:P3.5 口电平异常检测使能位 0:P3.5 口电平与 PWM 无关 1:设定 PWM 异常检测源为 P3.5 口(异常类型有 INVIO 设定) FDIF:PWM 异常检测中断标志位 当发生 PWM 异常(比较器的输出由低变高或者 P3.5 的电平由低变高)时,硬件自动将此位置 1。 当 EFDI==1 时,程序会跳转到相应中断入口执行中断服务程序。需要软件清零。 PWM 控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PWMCR FEH ENPWM ECBI - - - - - - ENPWM:使能增强型 PWM 波形发生器 0:关闭 PWM 波形发生器 1:使能 PWM 波形发生器,PWM 计数器开始计数 关于 ENPWM 控制位的重要说明: 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 328 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190  ENPWM 一旦被使能后,内部的 PWM 计数器会立即开始计数,并与 T1/T2 两个翻转点的值进 行比较。所以 ENPWM 必须在其他所有的 PWM 设置(包括 T1/T2 翻转点的设置、初始电平 的设置、PWM 异常检测的设置以及 PWM 中断设置)都完成后,最后才能使能 ENPWM 位。 也是 PWM 计数器开始计数的控制位。 在 PWM  ENPWM 控制位既是整个 PWM 模块的的使能位, 计数器计数的过程中,ENPWM 控制位被关闭时,PWM 计数会立即停止,当再次使能 ENPWM 控制位时,PWM 的计数会从 0 开始重新计数,而不会记忆 PWM 停止计数前的计数值 ECBI:PWM 计数器归零中断使能位 0:关闭 PWM 计数器归零中断(CBIF 依然会被硬件置位) 1:使能 PWM 计数器归零中断 PWM 计数器寄存器 符号 地址 B7 PWMCH FFF0H - PWMCL FFF1H B6 B5 B4 B3 B2 B1 B0 PWM 计数器位一个 15 位的寄存器,可设定 1~32767 之间的任意值作为 PWM 的周期。PWM 波形发生 器内部的计数器从 0 开始计数,每个 PWM 时钟周期递增 1,当内部计数器的计数值达到[PWMCH, PWMCL]所设定的 PWM 周期时,PWM 波形发生器内部的计数器将会从 0 重新开始开始计数,硬 件会自动将 PWM 归零中断中断标志位 CBIF 置 1,若 ECBI=1,程序将跳转到相应中断入口执行中 断服务程序。 PWM 时钟选择寄存器 符号 地址 B7 B6 B5 B4 PWMCKS FFF2H - - - SELT2 B3 B2 B1 B0 PWM_PS[3:0] SELT2:PWM 时钟源选择 0:PWM 时钟源为系统时钟经分频器分频之后的时钟 1:PWM 时钟源为定时器 2 的溢出脉冲 PWM_PS[3:0]:系统时钟预分频参数 SELT2 PWM_PS[3:0] PWM 输入时钟源频率 1 xxxx 定时器 2 的溢出脉冲 0 0000 SYSclk/1 0 0001 SYSclk/2 0 0010 SYSclk/3 … … … 0 x SYSclk/(x+1) … … … 0 1111 SYSclk/16 PWM 触发 ADC 计数器寄存器 符号 地址 B7 TADCPH FFF3H - TADCPL FFF4H B6 B5 B4 B3 B2 B1 B0 在 ETADC=1 且 ADC_POWER=1 时,{TADCPH,TADCPL}组成一个 15 位的寄存器。在 PWM 的计数周 期中,当 PWM 的内部计数值与{TADCPH,TADCPL}的值相等时,硬件自动触发 A/D 转换。 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 329 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 PWM 翻转点设置计数值寄存器 符号 地址 B7 PWM0T1H FF00H - PWM0T1L FF01H PWM0T2H FF02H PWM0T2L FF03H PWM1T1H FF10H PWM1T1L FF11H PWM1T2H FF12H PWM1T2L FF13H PWM2T1H FF20H PWM2T1L FF21H PWM2T2H FF22H PWM2T2L FF23H PWM3T1H FF30H PWM3T1L FF31H PWM3T2H FF32H PWM3T2L FF33H PWM4T1H FF40H PWM4T1L FF41H PWM4T2H FF42H PWM4T2L FF43H PWM5T1H FF50H PWM5T1L FF51H PWM5T2H FF52H PWM5T2L FF53H PWM6T1H FF60H PWM6T1L FF61H PWM6T2H FF62H PWM6T2L FF63H PWM7T1H FF70H PWM7T1L FF71H PWM7T2H FF72H PWM7T2L FF73H B6 B5 B4 B3 B2 B1 B0 - PWM 每个通道的{PWMnT1H, PWMnT1L}和{PWMnT2H, PWMnT2L}分别组合成两个 15 位的寄存器, 用于控制各路 PWM 每个周期中输出 PWM 波形的两个翻转点。在 PWM 的计数周期中,当 PWM 的内部计数值与所设置的第 1 个翻转点的值{PWMnT1H, PWMnT1L}相等时,PWM 的输出波形会 自动翻转为低电平;当 PWM 的内部计数值与所设置的第 2 个翻转点的值{PWMnT2H, PWMnT2L} 相等时,PWM 的输出波形会自动翻转为高电平。 注意:当{PWMnT1H, PWMnT1L}与{PWMnT2H, PWMnT2L}的值设置相等时,第 2 组翻转点的匹配将 被忽略,即只会翻转为低电平。 PWM 通道控制寄存器 符号 地址 江苏国芯科技有限公司 B7 B6 B5 总机: 0513-5501 2928/2929/2966 B4 B3 B2 B1 传真: 0513-5501 2926/2956/2947 B0 - 330 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 PWM0CR FF04H ENC0O C0INI - C0_S[1:0] EC0I EC0T2SI EC0T1SI PWM1CR FF14H ENC1O C1INI - C1_S[1:0] EC1I EC1T2SI EC1T1SI PWM2CR FF24H ENC2O C2INI - C2_S[1:0] EC2I EC2T2SI EC2T1SI PWM3CR FF34H ENC3O C3INI - C3_S[1:0] EC3I EC3T2SI EC3T1SI PWM4CR FF44H ENC4O C4INI - C4_S[1:0] EC4I EC4T2SI EC4T1SI PWM5CR FF54H ENC5O C5INI - C5_S[1:0] EC5I EC5T2SI EC5T1SI PWM6CR FF64H ENC6O C6INI - C6_S[1:0] EC6I EC6T2SI EC6T1SI PWM7CR FF74H ENC7O C7INI - C7_S[1:0] EC7I EC7T2SI EC7T1SI ENCnO:PWM 输出使能位 0:相应 PWM 通道的端口为 GPIO 1:相应 PWM 通道的端口为 PWM 输出口,受 PWM 波形发生器控制 CnINI:设置 PWM 输出端口的初始电平 0:第 n 通道的 PWM 初始电平为低电平 1:第 n 通道的 PWM 初始电平为高电平 Cn_S[1:0]:PWM 输出功能脚切换选择,请参考功能脚切换章节。 ECnI:第 n 通道的 PWM 中断使能控制位 0:关闭第 n 通道的 PWM 中断 1:使能第 n 通道的 PWM 中断 ECnT2SI:第 n 通道的 PWM 在第 2 个翻转点中断使能控制位 0:关闭第 n 通道的 PWM 在第 2 个翻转点中断 1:使能第 n 通道的 PWM 在第 2 个翻转点中断 ECnT1SI:第 n 通道的 PWM 在第 1 个翻转点中断使能控制位 0:关闭第 n 通道的 PWM 在第 1 个翻转点中断 1:使能第 n 通道的 PWM 在第 1 个翻转点中断 PWM 通道电平保持控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PWM0HLD FF05H - - - - - - HC0H HC0L PWM1HLD FF15H - - - - - - HC1H HC1L PWM2HLD FF25H - - - - - - HC2H HC2L PWM3HLD FF35H - - - - - - HC3H HC3L PWM4HLD FF45H - - - - - - HC4H HC4L PWM5HLD FF55H - - - - - - HC5H HC5L PWM6HLD FF65H - - - - - - HC6H HC6L PWM7HLD FF75H - - - - - - HC7H HC7L HCnH:第 n 通道 PWM 强制输出高电平控制位 0:第 n 通道 PWM 正常输出 1:第 n 通道 PWM 强制输出高电平 HCnL:第 n 通道 PWM 强制输出低电平控制位 0:第 n 通道 PWM 正常输出 1:第 n 通道 PWM 强制输出低电平 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 331 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 19.2 范例程序 19.2.1 输出任意周期和任意占空比的波形 汇编代码 ;测试工作频率为 11.0592MHz P_SW2 DATA 0BAH PWMCFG PWMIF PWMFDCR PWMCR PWMCH PWMCL PWMCKS TADCPH TADCPL PWM0T1H PWM0T1L PWM0T2H PWM0T2L PWM0CR PWM0HLD PWM1T1H PWM1T1L PWM1T2H PWM1T2L PWM1CR PWM1HLD PWM2T1H PWM2T1L PWM2T2H PWM2T2L PWM2CR PWM2HLD PWM3T1H PWM3T1L PWM3T2H PWM3T2L PWM3CR PWM3HLD PWM4T1H PWM4T1L PWM4T2H PWM4T2L PWM4CR PWM4HLD PWM5T1H PWM5T1L PWM5T2H PWM5T2L PWM5CR PWM5HLD PWM6T1H PWM6T1L PWM6T2H PWM6T2L DATA DATA DATA DATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA 0F1H 0F6H 0F7H 0FEH 0FFF0H 0FFF1H 0FFF2H 0FFF3H 0FFF4H 0FF00H 0FF01H 0FF02H 0FF03H 0FF04H 0FF05H 0FF10H 0FF11H 0FF12H 0FF13H 0FF14H 0FF15H 0FF20H 0FF21H 0FF22H 0FF23H 0FF24H 0FF25H 0FF30H 0FF31H 0FF32H 0FF33H 0FF34H 0FF35H 0FF40H 0FF41H 0FF42H 0FF43H 0FF44H 0FF45H 0FF50H 0FF51H 0FF52H 0FF53H 0FF54H 0FF55H 0FF60H 0FF61H 0FF62H 0FF63H 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 332 - STC8 系列技术手册 PWM6CR PWM6HLD PWM7T1H PWM7T1L PWM7T2H PWM7T2L PWM7CR PWM7HLD 官方网站: www.STCMCUDATA.com / www.STCMCU.com XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA 0FF64H 0FF65H 0FF70H 0FF71H 0FF72H 0FF73H 0FF74H 0FF75H ORG LJMP 0000H MAIN ORG 0100H MOV CLR MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV P_SW2,#80H A DPTR,#PWMCKS @DPTR,A A,#10H DPTR,#PWMCH @DPTR,A A,#00H DPTR,#PWMCL @DPTR,A A,#01H DPTR,#PWM0T1H @DPTR,A A,#00H DPTR,#PWM0T1L @DPTR,A A,#05H DPTR,#PWM0T2H @DPTR,A A,#00H DPTR,#PWM0T2L @DPTR,A A,#80H DPTR,#PWM0CR @DPTR,A P_SW2,#00H MOV PWMCR,#080H JMP $ 技术支持: 13922829991 研发顾问: 13922805190 MAIN: ;PWM 时钟为系统时钟 ;设置 PWM 周期为 1000H 个 PWM 时钟 ;在计数值为 100H 地方输出低电平 ;在计数值为 500H 地方输出高电平 ;使能 PWM0 输出 ;启动 PWM 模块 END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz sfr sfr sfr sfr sfr P_SW2 PWMCFG PWMIF PWMFDCR PWMCR 江苏国芯科技有限公司 = = = = = 0xba; 0xf1; 0xf6; 0xf7; 0xfe; 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 333 - STC8 系列技术手册 #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define 官方网站: www.STCMCUDATA.com / www.STCMCU.com PWMC PWMCKS TADCP PWM0T1 PWM0T2 PWM0CR PWM0HLD PWM1T1 PWM1T2 PWM1CR PWM1HLD PWM2T1 PWM2T2 PWM2CR PWM2HLD PWM3T1 PWM3T2 PWM3CR PWM3HLD PWM4T1 PWM4T2 PWM4CR PWM4HLD PWM5T1 PWM5T2 PWM5CR PWM5HLD PWM6T1 PWM6T2 PWM6CR PWM6HLD PWM7T1 PWM7T2 PWM7CR PWM7HLD 技术支持: 13922829991 研发顾问: 13922805190 (*(unsigned int volatile xdata *)0xfff0) (*(unsigned char volatile xdata *)0xfff2) (*(unsigned int volatile xdata *)0xfff3) (*(unsigned int volatile xdata *)0xff00) (*(unsigned int volatile xdata *)0xff02) (*(unsigned char volatile xdata *)0xff04) (*(unsigned char volatile xdata *)0xff05) (*(unsigned int volatile xdata *)0xff10) (*(unsigned int volatile xdata *)0xff12) (*(unsigned char volatile xdata *)0xff14) (*(unsigned char volatile xdata *)0xff15) (*(unsigned int volatile xdata *)0xff20) (*(unsigned int volatile xdata *)0xff22) (*(unsigned char volatile xdata *)0xff24) (*(unsigned char volatile xdata *)0xff25) (*(unsigned int volatile xdata *)0xff30) (*(unsigned int volatile xdata *)0xff32) (*(unsigned char volatile xdata *)0xff34) (*(unsigned char volatile xdata *)0xff35) (*(unsigned int volatile xdata *)0xff40) (*(unsigned int volatile xdata *)0xff42) (*(unsigned char volatile xdata *)0xff44) (*(unsigned char volatile xdata *)0xff45) (*(unsigned int volatile xdata *)0xff50) (*(unsigned int volatile xdata *)0xff52) (*(unsigned char volatile xdata *)0xff54) (*(unsigned char volatile xdata *)0xff55) (*(unsigned int volatile xdata *)0xff60) (*(unsigned int volatile xdata *)0xff62) (*(unsigned char volatile xdata *)0xff64) (*(unsigned char volatile xdata *)0xff65) (*(unsigned int volatile xdata *)0xff70) (*(unsigned int volatile xdata *)0xff72) (*(unsigned char volatile xdata *)0xff74) (*(unsigned char volatile xdata *)0xff75) void main() { P_SW2 = 0x80; PWMCKS = 0x00; PWMC = 0x1000; PWM0T1= 0x0100; PWM0T2= 0x0500; PWM0CR= 0x80; P_SW2 = 0x00; // PWM 时钟为系统时钟 //设置 PWM 周期为 1000H 个 PWM 时钟 //在计数值为 100H 地方输出低电平 //在计数值为 500H 地方输出高电平 //使能 PWM0 输出 //启动 PWM 模块 PWMCR = 0x80; while (1); } 19.2.2 两路PWM实现互补对称带死区控制的波形 汇编代码 ;测试工作频率为 11.0592MHz P_SW2 DATA 江苏国芯科技有限公司 0BAH 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 334 - STC8 系列技术手册 PWMCFG PWMIF PWMFDCR PWMCR PWMCH PWMCL PWMCKS TADCPH TADCPL PWM0T1H PWM0T1L PWM0T2H PWM0T2L PWM0CR PWM0HLD PWM1T1H PWM1T1L PWM1T2H PWM1T2L PWM1CR PWM1HLD PWM2T1H PWM2T1L PWM2T2H PWM2T2L PWM2CR PWM2HLD PWM3T1H PWM3T1L PWM3T2H PWM3T2L PWM3CR PWM3HLD PWM4T1H PWM4T1L PWM4T2H PWM4T2L PWM4CR PWM4HLD PWM5T1H PWM5T1L PWM5T2H PWM5T2L PWM5CR PWM5HLD PWM6T1H PWM6T1L PWM6T2H PWM6T2L PWM6CR PWM6HLD PWM7T1H PWM7T1L PWM7T2H PWM7T2L PWM7CR PWM7HLD 官方网站: www.STCMCUDATA.com / www.STCMCU.com DATA DATA DATA DATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA 江苏国芯科技有限公司 技术支持: 13922829991 研发顾问: 13922805190 0F1H 0F6H 0F7H 0FEH 0FFF0H 0FFF1H 0FFF2H 0FFF3H 0FFF4H 0FF00H 0FF01H 0FF02H 0FF03H 0FF04H 0FF05H 0FF10H 0FF11H 0FF12H 0FF13H 0FF14H 0FF15H 0FF20H 0FF21H 0FF22H 0FF23H 0FF24H 0FF25H 0FF30H 0FF31H 0FF32H 0FF33H 0FF34H 0FF35H 0FF40H 0FF41H 0FF42H 0FF43H 0FF44H 0FF45H 0FF50H 0FF51H 0FF52H 0FF53H 0FF54H 0FF55H 0FF60H 0FF61H 0FF62H 0FF63H 0FF64H 0FF65H 0FF70H 0FF71H 0FF72H 0FF73H 0FF74H 0FF75H 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 335 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com ORG LJMP 0000H MAIN ORG 0100H MOV CLR MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV P_SW2,#80H A DPTR,#PWMCKS @DPTR,A A,#08H DPTR,#PWMCH @DPTR,A A,#00H DPTR,#PWMCL @DPTR,A A,#01H DPTR,#PWM0T1H @DPTR,A A,#00H DPTR,#PWM0T1L @DPTR,A A,#07H DPTR,#PWM0T2H @DPTR,A A,#00H DPTR,#PWM0T2L @DPTR,A A,#00H DPTR,#PWM1T2H @DPTR,A A,#80H DPTR,#PWM1T2L @DPTR,A A,#07H DPTR,#PWM1T1H @DPTR,A A,#80H DPTR,#PWM1T1L @DPTR,A A,#080H DPTR,#PWM0CR @DPTR,A A,#80H DPTR,#PWM1CR @DPTR,A P_SW2,#00H MOV PWMCR,#080H JMP $ 技术支持: 13922829991 研发顾问: 13922805190 MAIN: ;PWM 时钟为系统时钟 ;设置 PWM 周期为 0800H 个 PWM 时钟 ;PWM0 在计数值为 0100H 地方输出低电平 ;PWM0 在计数值为 0700H 地方输出高电平 ;PWM1 在计数值为 0080H 地方输出高电平 ;PWM1 在计数值为 0780H 地方输出低电平 ;使能 PWM0 输出 ;使能 PWM1 输出 ;启动 PWM 模块 END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 336 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com sfr sfr sfr sfr sfr P_SW2 PWMCFG PWMIF PWMFDCR PWMCR #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define PWMC PWMCKS TADCP PWM0T1 PWM0T2 PWM0CR PWM0HLD PWM1T1 PWM1T2 PWM1CR PWM1HLD PWM2T1 PWM2T2 PWM2CR PWM2HLD PWM3T1 PWM3T2 PWM3CR PWM3HLD PWM4T1 PWM4T2 PWM4CR PWM4HLD PWM5T1 PWM5T2 PWM5CR PWM5HLD PWM6T1 PWM6T2 PWM6CR PWM6HLD PWM7T1 PWM7T2 PWM7CR PWM7HLD void main() { P_SW2 = 0x80; PWMCKS = 0x00; PWMC = 0x0800; PWM0T1= 0x0100; PWM0T2= 0x0700; PWM1T2= 0x0080; PWM1T1= 0x0780; PWM0CR= 0x80; PWM1CR= 0x80; P_SW2 = 0x00; PWMCR = 0x80; = = = = = 技术支持: 13922829991 研发顾问: 13922805190 0xba; 0xf1; 0xf6; 0xf7; 0xfe; (*(unsigned int volatile xdata *)0xfff0) (*(unsigned char volatile xdata *)0xfff2) (*(unsigned int volatile xdata *)0xfff3) (*(unsigned int volatile xdata *)0xff00) (*(unsigned int volatile xdata *)0xff02) (*(unsigned char volatile xdata *)0xff04) (*(unsigned char volatile xdata *)0xff05) (*(unsigned int volatile xdata *)0xff10) (*(unsigned int volatile xdata *)0xff12) (*(unsigned char volatile xdata *)0xff14) (*(unsigned char volatile xdata *)0xff15) (*(unsigned int volatile xdata *)0xff20) (*(unsigned int volatile xdata *)0xff22) (*(unsigned char volatile xdata *)0xff24) (*(unsigned char volatile xdata *)0xff25) (*(unsigned int volatile xdata *)0xff30) (*(unsigned int volatile xdata *)0xff32) (*(unsigned char volatile xdata *)0xff34) (*(unsigned char volatile xdata *)0xff35) (*(unsigned int volatile xdata *)0xff40) (*(unsigned int volatile xdata *)0xff42) (*(unsigned char volatile xdata *)0xff44) (*(unsigned char volatile xdata *)0xff45) (*(unsigned int volatile xdata *)0xff50) (*(unsigned int volatile xdata *)0xff52) (*(unsigned char volatile xdata *)0xff54) (*(unsigned char volatile xdata *)0xff55) (*(unsigned int volatile xdata *)0xff60) (*(unsigned int volatile xdata *)0xff62) (*(unsigned char volatile xdata *)0xff64) (*(unsigned char volatile xdata *)0xff65) (*(unsigned int volatile xdata *)0xff70) (*(unsigned int volatile xdata *)0xff72) (*(unsigned char volatile xdata *)0xff74) (*(unsigned char volatile xdata *)0xff75) // PWM 时钟为系统时钟 //设置 PWM 周期为 0800H 个 PWM 时钟 //PWM0 在计数值为 100H 地方输出低电平 //PWM0 在计数值为 700H 地方输出高电平 //PWM1 在计数值为 0080H 地方输出高电平 //PWM1 在计数值为 0780H 地方输出低电平 //使能 PWM0 输出 //使能 PWM1 输出 //启动 PWM 模块 while (1); 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 337 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 } 19.2.3 PWM实现渐变灯(呼吸灯) 汇编代码 ;测试工作频率为 11.0592MHz CYCLE EQU 1000H P_SW2 DATA 0BAH PWMCFG PWMIF PWMFDCR PWMCR PWMCH PWMCL PWMCKS TADCPH TADCPL PWM0T1H PWM0T1L PWM0T2H PWM0T2L PWM0CR PWM0HLD PWM1T1H PWM1T1L PWM1T2H PWM1T2L PWM1CR PWM1HLD PWM2T1H PWM2T1L PWM2T2H PWM2T2L PWM2CR PWM2HLD PWM3T1H PWM3T1L PWM3T2H PWM3T2L PWM3CR PWM3HLD PWM4T1H PWM4T1L PWM4T2H PWM4T2L PWM4CR PWM4HLD PWM5T1H PWM5T1L PWM5T2H PWM5T2L PWM5CR PWM5HLD PWM6T1H PWM6T1L DATA DATA DATA DATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA 0F1H 0F6H 0F7H 0FEH 0FFF0H 0FFF1H 0FFF2H 0FFF3H 0FFF4H 0FF00H 0FF01H 0FF02H 0FF03H 0FF04H 0FF05H 0FF10H 0FF11H 0FF12H 0FF13H 0FF14H 0FF15H 0FF20H 0FF21H 0FF22H 0FF23H 0FF24H 0FF25H 0FF30H 0FF31H 0FF32H 0FF33H 0FF34H 0FF35H 0FF40H 0FF41H 0FF42H 0FF43H 0FF44H 0FF45H 0FF50H 0FF51H 0FF52H 0FF53H 0FF54H 0FF55H 0FF60H 0FF61H 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 338 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com PWM6T2H PWM6T2L PWM6CR PWM6HLD PWM7T1H PWM7T1L PWM7T2H PWM7T2L PWM7CR PWM7HLD XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA XDATA 0FF62H 0FF63H 0FF64H 0FF65H 0FF70H 0FF71H 0FF72H 0FF73H 0FF74H 0FF75H DIR VALL VALH BIT DATA DATA 20H.0 21H 22H ORG LJMP ORG LJMP 0000H MAIN 00B3H PWMISR ORG 0100H PUSH PUSH PUSH PUSH PUSH ACC PSW DPL DPH P_SW2 MOV MOV JNB ANL JNB P_SW2,#80H A,PWMCFG ACC.7,ISREXIT PWMCFG,#NOT 80H DIR,PWMDN MOV ADD MOV MOV ADDC MOV CJNE MOV CJNE CLR JMP A,VALL A,#1 VALL,A A,VALH A,#0 VALH,A A,#HIGH CYCLE,SETPWM A,VALL A,#LOW CYCLE,SETPWM DIR SETPWM MOV ADD MOV MOV ADDC MOV JNZ MOV CJNE SETB A,VALL A,#0FFH VALL,A A,VALH A,#0FFH VALH,A SETPWM A,VALL A,#1,SETPWM DIR MOV MOV A,VALH DPTR,#PWM0T2H 技术支持: 13922829991 研发顾问: 13922805190 PWMISR: ;清中断标志 PWMUP: PWMDN: SETPWM: 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 339 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com MOVX MOV MOV MOVX @DPTR,A A,VALL DPTR,#PWM0T2L @DPTR,A POP POP POP POP POP RETI P_SW2 DPH DPL PSW ACC MOV SP,#3FH SETB MOV MOV DIR VALH,#00H VALL,#01H MOV CLR MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV P_SW2,#80H A DPTR,#PWMCKS @DPTR,A A,#HIGH CYCLE DPTR,#PWMCH @DPTR,A A,#LOW CYCLE DPTR,#PWMCL @DPTR,A A,#00H DPTR,#PWM0T1H @DPTR,A A,#00H DPTR,#PWM0T1L @DPTR,A A,VALH DPTR,#PWM0T2H @DPTR,A A,VALL DPTR,#PWM0T2L @DPTR,A A,#80H DPTR,#PWM0CR @DPTR,A P_SW2,#00H MOV SETB JMP PWMCR,#0C0H EA $ 技术支持: 13922829991 研发顾问: 13922805190 ISREXIT: MAIN: ;PWM 时钟为系统时钟 ;设置 PWM 周期 ;使能 PWM0 输出 ;启动 PWM 模块并使能 PWM 中断 END C 语言代码 #include "reg51.h" #include "intrins.h" //测试工作频率为 11.0592MHz 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 340 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com #define CYCLE sfr sfr sfr sfr sfr P_SW2 PWMCFG PWMIF PWMFDCR PWMCR #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define PWMC PWMCKS TADCP PWM0T1 PWM0T2 PWM0CR PWM0HLD PWM1T1 PWM1T2 PWM1CR PWM1HLD PWM2T1 PWM2T2 PWM2CR PWM2HLD PWM3T1 PWM3T2 PWM3CR PWM3HLD PWM4T1 PWM4T2 PWM4CR PWM4HLD PWM5T1 PWM5T2 PWM5CR PWM5HLD PWM6T1 PWM6T2 PWM6CR PWM6HLD PWM7T1 PWM7T2 PWM7CR PWM7HLD 技术支持: 13922829991 研发顾问: 13922805190 0x1000 = = = = = 0xba; 0xf1; 0xf6; 0xf7; 0xfe; (*(unsigned int volatile xdata *)0xfff0) (*(unsigned char volatile xdata *)0xfff2) (*(unsigned int volatile xdata *)0xfff3) (*(unsigned int volatile xdata *)0xff00) (*(unsigned int volatile xdata *)0xff02) (*(unsigned char volatile xdata *)0xff04) (*(unsigned char volatile xdata *)0xff05) (*(unsigned int volatile xdata *)0xff10) (*(unsigned int volatile xdata *)0xff12) (*(unsigned char volatile xdata *)0xff14) (*(unsigned char volatile xdata *)0xff15) (*(unsigned int volatile xdata *)0xff20) (*(unsigned int volatile xdata *)0xff22) (*(unsigned char volatile xdata *)0xff24) (*(unsigned char volatile xdata *)0xff25) (*(unsigned int volatile xdata *)0xff30) (*(unsigned int volatile xdata *)0xff32) (*(unsigned char volatile xdata *)0xff34) (*(unsigned char volatile xdata *)0xff35) (*(unsigned int volatile xdata *)0xff40) (*(unsigned int volatile xdata *)0xff42) (*(unsigned char volatile xdata *)0xff44) (*(unsigned char volatile xdata *)0xff45) (*(unsigned int volatile xdata *)0xff50) (*(unsigned int volatile xdata *)0xff52) (*(unsigned char volatile xdata *)0xff54) (*(unsigned char volatile xdata *)0xff55) (*(unsigned int volatile xdata *)0xff60) (*(unsigned int volatile xdata *)0xff62) (*(unsigned char volatile xdata *)0xff64) (*(unsigned char volatile xdata *)0xff65) (*(unsigned int volatile xdata *)0xff70) (*(unsigned int volatile xdata *)0xff72) (*(unsigned char volatile xdata *)0xff74) (*(unsigned char volatile xdata *)0xff75) void PWM_Isr() interrupt 22 using 1 { static bit dir = 1; static int val = 0; if (PWMCFG & 0x80) { PWMCFG &= ~0x80; //清中断标志 if (dir) { val++; if (val >= CYCLE) dir = 0; } else { 江苏国芯科技有限公司 总机: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 341 - STC8 系列技术手册 官方网站: www.STCMCUDATA.com / www.STCMCU.com 技术支持: 13922829991 研发顾问: 13922805190 val--; if (val
STC8A8K32S4A12-28I-LQFP44 价格&库存

很抱歉,暂时无法提供与“STC8A8K32S4A12-28I-LQFP44”相匹配的价格&库存,您可以联系我们找货

免费人工找货