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

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
STC32G12K128-BETA-LQFP64

STC32G12K128-BETA-LQFP64

  • 厂商:

    STC(宏晶科技)

  • 封装:

    LQFP64_10X10MM

  • 描述:

    STC32G系列单片机 1T 8051 LQFP64_10X10MM

  • 数据手册
  • 价格&库存
STC32G12K128-BETA-LQFP64 数据手册
o 深圳国芯人工智能有限公司 STC32G 系列单片机 技术参考手册              16 个 8 位累加器 16 个 16 位累加器 10 个 32 位累加器 32 位加减指令 16 位乘除指令 32 位乘除运算(MDU32) 32 位算术比较指令 所有的 SFR(80H~FFH)均支持位寻址 ebdata(20H~7FH)全部支持位寻址 单时钟 32/16/8 位数据读写(edata) 单时钟端口读写 堆栈理论深度可达 64K(实际取决于 edata) FreeRTOS for STC32G12K128:STC 官方移植 的高效稳定版已发布  RT-Thread for STC32G12K128:RT-Thread 官 方已安排人移植中  编译器:KEIL C251 编译器 技术支持网站:www.STCMCUDATA.com 资料更新日期:2022/5/5 STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 目录 1 2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.2.2 2.2.3 2.3 2.3.1 2.3.2 2.3.3 3 3.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.2 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 概述 ...................................................................................................................................... 1 特性、价格及管脚 .............................................................................................................. 2 STC32G12K128-LQFP64/LQFP48/LQFP32/PDIP40......................................................... 2 特性及价格 .......................................................................................................................... 2 管脚图,最小系统 .............................................................................................................. 5 管脚说明 .............................................................................................................................. 8 STC32G8K64-LQFP48/LQFP32/PDIP40 ......................................................................... 16 特性及价格 ........................................................................................................................ 16 管脚图,最小系统 ............................................................................................................ 19 管脚说明 ............................................................................................................................ 21 STC32F12K60-LQFP48/LQFP32/PDIP40 ........................................................................ 28 特性及价格 ........................................................................................................................ 28 管脚图,最小系统 ............................................................................................................ 31 管脚说明 ............................................................................................................................ 34 功能脚切换 ........................................................................................................................ 42 功能脚切换相关寄存器 .................................................................................................... 42 外设端口切换控制寄存器 1(P_SW1) ......................................................................... 42 外设端口切换控制寄存器 2(P_SW2) ......................................................................... 43 外设端口切换控制寄存器 3(P_SW3) ......................................................................... 43 时钟选择寄存器(MCLKOCR) .................................................................................... 44 T3/T4 选择寄存器(T3T4PIN) ...................................................................................... 44 高级 PWM 选择寄存器(PWMn_PS)........................................................................... 45 高级 PWM 功能脚选择寄存器(PWMx_ETRPS) ....................................................... 46 范例程序 ............................................................................................................................ 47 串口 1 切换 ........................................................................................................................ 47 串口 2 切换 ........................................................................................................................ 47 串口 3 切换 ........................................................................................................................ 48 串口 4 切换 ........................................................................................................................ 48 SPI 切换 ............................................................................................................................. 49 I2C 切换 ............................................................................................................................. 50 比较器输出切换 ................................................................................................................ 50 主时钟输出切换 ................................................................................................................ 51 封装尺寸图 ........................................................................................................................ 52 LQFP32 封装尺寸图(9mm*9mm) ............................................................................... 52 QFN32 封装尺寸图(4mm*4mm) ................................................................................. 53 LQFP48 封装尺寸图(9mm*9mm) ............................................................................... 54 QFN48 封装尺寸图(6mm*6mm) ................................................................................. 55 LQFP64 封装尺寸图(12mm*12mm) ........................................................................... 56 QFN64 封装尺寸图(8mm*8mm) ................................................................................. 57 STC32G 系列单片机命名规则 ......................................................................................... 58 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -i- STC32G 系列技术手册 5 5.1 5.1.1 5.1.2 5.2 5.3 5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 5.3.6 5.3.7 5.3.8 5.4 5.4.1 5.4.2 5.5 5.6 5.7 5.8 5.9 5.9.1 5.9.2 5.10 5.11 5.11.1 5.11.2 5.11.3 5.11.4 5.11.5 5.11.6 5.12 5.13 5.13.1 5.13.2 5.13.3 5.13.4 5.13.5 5.13.6 6 6.1 6.2 6.2.1 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 编译、仿真开发环境的建立与 ISP 下载 ........................................................................ 59 安装 Keil ............................................................................................................................ 59 安装 C251 编译环境 ......................................................................................................... 59 如何同时安装 Keil 的 C51、C251 和 MDK .................................................................... 62 添加型号和头文件到 Keil ................................................................................................ 63 新建与设置超 64K 程序代码的项目(Source 模式) ................................................... 65 设置项目路径和项目名称 ................................................................................................ 65 选择目标单片机型号(STC32G12K128) ..................................................................... 66 添加源代码文件到项目 .................................................................................................... 67 设置项目 1(“CPU Mode”选择 Source 模式) .......................................................... 68 设置项目 2(“Memory Model”选择 XSmall 模式) .................................................. 69 设置项目 3(“Code Rom Size”选择 Large 或者 Huge 模式) .................................. 72 设置项目 4(超 64K 代码的相关设置) ........................................................................ 73 设置项目 5(HEX 文件格式设置) ................................................................................ 74 Keil 中基于 STC32G 系列的汇编代码编写 .................................................................... 75 代码大小在 64K 以内的汇编程序编写方法 ................................................................... 75 代码大小超过 64K 的汇编程序编写方法 ....................................................................... 76 STC8H 系列项目转为 STC32G 系列 ............................................................................... 78 STC32G 系列项目转为 STC8H 系列 ............................................................................... 80 Keil 软件中获取帮助的简单方法 .................................................................................... 82 在 Keil 中建立多文件项目的方法 ................................................................................... 85 关于中断号大于 31 在 Keil 中编译出错的处理 ............................................................. 89 使用网上流行的中断号拓展工具 .................................................................................... 89 使用保留中断号进行中转 ................................................................................................ 91 程序超 64K 时如何设置保留 EEPROM 空间 ................................................................101 使用 STC-USB Link1 对 STC32G 系列单片机进行仿真 ..............................................103 认识 STC-USB Link1 工具(暂无外壳) ......................................................................103 硬件连接方式 ...................................................................................................................103 安装仿真驱动 ...................................................................................................................104 制作仿真芯片 ...................................................................................................................106 在 Keil 软件中创建并设置项目 ......................................................................................107 编译、下载并仿真 ........................................................................................................... 111 使用 ISP 进行烧录 ........................................................................................................... 113 ISP 下载典型应用线路图 ................................................................................................ 114 使用 PL2303-GL 下载 ...................................................................................................... 114 使用通用 USB 转串口工具下载 ..................................................................................... 115 使用 U8-Mini 工具下载,支持 ISP 在线和脱机下载.................................................... 116 使用 U8W 工具下载,支持 ISP 在线和脱机下载 ......................................................... 117 U8W 直通模式,可用于仿真、串口通信...................................................................... 118 硬件 USB 直接 ISP 下载,仿真后续支持 ...................................................................... 119 时钟管理 ...........................................................................................................................120 系统时钟控制 ...................................................................................................................120 相关寄存器 .......................................................................................................................121 USB 时钟控制寄存器(USBCLK)...............................................................................121 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - ii - STC32G 系列技术手册 6.2.2 6.2.3 6.2.4 6.2.5 6.2.6 6.2.7 6.2.8 6.2.9 6.2.10 6.2.11 6.3 6.3.1 6.3.2 6.3.3 6.4 6.4.1 6.4.2 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.5.5 6.5.6 6.5.7 6.5.8 6.5.9 6.5.10 6.5.11 6.5.12 7 7.1 7.1.1 7.1.2 7.1.3 7.2 7.2.1 8 8.1 8.1.1 8.1.2 8.1.3 8.1.4 8.1.5 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 系统时钟选择寄存器(CLKSEL) ................................................................................123 时钟分频寄存器(CLKDIV) ........................................................................................123 内部高速高精度 IRC 控制寄存器(HIRCCR) ............................................................123 外部振荡器控制寄存器(XOSCCR) ...........................................................................124 内部 32KHz 低速 IRC 控制寄存器(IRC32KCR) ......................................................124 主时钟输出控制寄存器(MCLKOCR) .......................................................................125 高速振荡器稳定时间控制寄存器(IRCDB) ...............................................................125 内部 48MHz 高速 IRC 控制寄存器(IRC48MCR) .....................................................125 外部 32K 振荡器控制寄存器(X32KCR) ...................................................................126 高速时钟分频寄存器(HSCLKDIV) ...........................................................................126 STC32G 系列内部 IRC 频率调整 ...................................................................................127 IRC 频段选择寄存器(IRCBAND)..............................................................................127 内部 IRC 频率调整寄存器(IRTRIM) .........................................................................127 内部 IRC 频率微调寄存器(LIRTRIM) ......................................................................127 外部晶振及外部时钟电路 ...............................................................................................129 外部晶振输入电路 ...........................................................................................................129 外部时钟输入电路(P1.6 不可用作普通 I/O) .............................................................129 范例程序 ...........................................................................................................................130 选择内部高速 IRC(HIRC)作为系统时钟源 ..............................................................130 选择内部 IRC(IRC32K)作为系统时钟源 ..................................................................130 选择内部 48M 的 IRC(IRC48M)作为系统时钟源 ....................................................131 选择外部高速晶振(XOSC)作为系统时钟源.............................................................132 选择外部低速晶振(X32K)作为系统时钟源..............................................................132 选择内部 PLL 作为系统时钟源 ......................................................................................133 选择主时钟(MCLK)作为高速外设时钟源 ................................................................134 选择内部 PLL 时钟作为高速外设时钟源 ......................................................................134 选择系统时钟(SYSCLK)作为 USB 时钟源 ..............................................................135 选择内部 PLL 时钟作为 USB 时钟源 ............................................................................136 选择内部 USB 专用 48M 的 IRC 作为 USB 时钟源......................................................137 主时钟分频输出 ...............................................................................................................137 自动频率校准,自动追频(CRE)...............................................................................139 相关寄存器 .......................................................................................................................139 CRE 控制寄存器(CRECR) .........................................................................................139 CRE 校准计数值寄存器(CRECNT) ...........................................................................140 CRE 校准误差值寄存器(CRERES) ...........................................................................140 范例程序 ...........................................................................................................................141 自动校准内部高速 IRC(HIRC) ..................................................................................141 复位、看门狗、掉电唤醒专用定时器与电源管理 .......................................................143 系统复位 ...........................................................................................................................143 看门狗控制寄存器(WDT_CONTR)...........................................................................143 IAP 控制寄存器(IAP_CONTR) ..................................................................................144 复位配置寄存器(RSTCFG) ........................................................................................144 复位标志寄存器(RSTFLAG) .....................................................................................145 复位控制寄存器(RSTCRx) ........................................................................................145 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - iii - STC32G 系列技术手册 8.1.6 8.1.7 8.1.8 8.2 8.2.1 8.3 8.3.1 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.4.6 8.4.7 8.4.8 8.4.9 8.4.10 8.4.11 8.4.12 9 9.1 9.1.1 9.2 9.2.1 9.2.2 9.2.3 9.2.4 9.2.5 9.2.6 9.2.7 9.2.8 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.3.6 9.4 9.4.1 9.4.2 9.4.3 9.4.4 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 低电平上电复位参考电路(一般不需要) ...................................................................147 低电平按键复位参考电路 ...............................................................................................147 传统 8051 高电平上电复位参考电路 .............................................................................148 系统电源管理 ...................................................................................................................149 电源控制寄存器(PCON) ............................................................................................149 掉电唤醒定时器 ...............................................................................................................150 掉电唤醒定时器计数寄存器(WKTCL,WKTCH) ..................................................150 范例程序 ...........................................................................................................................152 看门狗定时器应用 ...........................................................................................................152 软复位实现自定义下载 ...................................................................................................152 低压检测 ...........................................................................................................................153 省电模式 ...........................................................................................................................154 使用 INT0/INT1/INT2/INT3/INT4 管脚中断唤醒省电模式 ..........................................155 使用 T0/T1/T2/T3/T4 管脚中断唤醒省电模式...............................................................156 使用 RxD/RxD2/RxD3/RxD4 管脚中断唤醒省电模式 ..................................................158 使用 I2C 的 SDA 脚唤醒 MCU 省电模式 ......................................................................159 使用掉电唤醒定时器唤醒省电模式 ...............................................................................160 LVD 中断唤醒省电模式,建议配合使用掉电唤醒定时器...........................................161 比较器中断唤醒省电模式,建议配合使用掉电唤醒定时器 .......................................162 使用 LVD 功能检测工作电压(电池电压) .................................................................163 存储器(32 位访问,16 位访问,8 位访问) ..............................................................166 程序存储器 .......................................................................................................................167 程序读取等待控制寄存器(WTST) ............................................................................168 数据存储器(32 位访问,16 位访问,8 位访问) ......................................................169 Keil 选项 Memory Model 设置 .......................................................................................170 内部 edata-RAM(C 语言声明关键字为 edata) ..........................................................172 程序状态寄存器(PSW) ...............................................................................................173 内部 xdata-RAM(C 语言声明关键字为 xdata) ..........................................................174 辅助寄存器(AUXR) ....................................................................................................174 外部 xdata-RAM ...............................................................................................................174 总线速度控制寄存器(BUS_SPEED) .........................................................................174 STC32G 系列单片机中可位寻址的数据存储器 ............................................................176 只读特殊功能寄存器中存储的唯一 ID 号和重要参数(CHIPID) ............................178 CHIP 之全球唯一 ID 号解读 ...........................................................................................180 CHIP 之内部参考信号源解读 .........................................................................................180 CHIP 之内部 32K 的 IRC 振荡频率解读........................................................................180 CHIP 之高精度 IRC 参数解读 ........................................................................................182 CHIP 之测试时间参数解读 .............................................................................................183 CHIP 之芯片封装形式编号解读 .....................................................................................183 范例程序 ...........................................................................................................................184 读取内部 1.19V 参考信号源值 .......................................................................................184 读取全球唯一 ID 号 .........................................................................................................185 读取 32K 掉电唤醒定时器的频率 ..................................................................................186 用户自定义内部 IRC 频率 ..............................................................................................188 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - iv - STC32G 系列技术手册 9.4.5 10 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 11 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.1.5 11.1.6 11.1.7 11.1.8 11.2 11.3 11.3.1 11.3.2 11.3.3 11.3.4 11.3.5 11.3.6 11.3.7 11.3.8 11.4 11.4.1 11.4.2 11.5 11.6 11.7 11.8 11.9 12 12.1 12.2 12.3 12.4 12.4.1 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 读写片外扩展 RAM .........................................................................................................190 特殊功能寄存器(SFR、XFR) ...................................................................................191 STC32G12K128 系列 .......................................................................................................191 STC32G8K64 系列 ...........................................................................................................193 STC32F12K60 系列..........................................................................................................195 特殊功能寄存器列表(SFR:0x80-0xFF) ..................................................................197 扩展特殊功能寄存器列表(XFR:0x7EFE00-0x7EFEFF) ........................................200 扩展特殊功能寄存器列表(XFR:0x7EFD00-0x7EFDFF) .......................................205 扩展特殊功能寄存器列表(XFR:0x7EFB00-0x7EFBFF) .......................................208 扩展特殊功能寄存器列表(XFR:0x7EFA00-0x7EFAFF) .......................................208 I/O 口 ................................................................................................................................213 I/O 口相关寄存器 .............................................................................................................213 端口数据寄存器(Px) ...................................................................................................216 端口模式配置寄存器(PxM0,PxM1) ........................................................................216 端口上拉电阻控制寄存器(PxPU) ..............................................................................217 端口施密特触发控制寄存器(PxNCS) .......................................................................217 端口电平转换速度控制寄存器(PxSR) ......................................................................217 端口驱动电流控制寄存器(PxDR) .............................................................................218 端口数字信号输入使能控制寄存器(PxIE) ...............................................................218 端口下拉电阻控制寄存器(PxPD) ..............................................................................218 配置 I/O 口........................................................................................................................220 I/O 的结构图.....................................................................................................................221 准双向口(弱上拉) .......................................................................................................221 推挽输出 ...........................................................................................................................221 高阻输入 ...........................................................................................................................222 开漏输出 ...........................................................................................................................222 新增 4.1K 上拉电阻和 10K 下拉电阻 ............................................................................223 如何设置 I/O 口对外输出速度 ........................................................................................224 如何设置 I/O 口电流驱动能力 ........................................................................................225 如何降低 I/O 口对外辐射 ................................................................................................225 范例程序 ...........................................................................................................................226 端口模式设置(适用于所有的 I/O) .............................................................................226 双向口读写操作(适用于所有的 I/O) .........................................................................226 一种典型三极管控制电路 ...............................................................................................227 典型发光二极管控制电路 ...............................................................................................227 混合电压供电系统 3V/5V 器件 I/O 口互连 ...................................................................227 如何让 I/O 口上电复位时为低电平 ................................................................................228 利用 74HC595 驱动 8 个数码管(串行扩展,3 根线)的线路图 .......................................229 中断系统 ...........................................................................................................................230 STC32G 系列中断源 ........................................................................................................230 STC32G 中断结构图 ........................................................................................................232 STC32G 系列中断列表 ....................................................................................................233 中断相关寄存器 ...............................................................................................................237 中断使能寄存器(中断允许位) ...................................................................................239 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -v- STC32G 系列技术手册 12.4.2 12.4.3 12.5 12.5.1 12.5.2 12.5.3 12.5.4 12.5.5 12.5.6 12.5.7 12.5.8 12.5.9 12.5.10 12.5.11 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 13 13.1 13.1.1 13.1.2 13.1.3 13.1.4 13.1.5 13.2 13.2.1 13.2.2 13.2.3 13.2.4 14 14.1 14.2 14.2.1 14.2.2 14.2.3 14.2.4 14.2.5 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 中断请求寄存器(中断标志位) ...................................................................................248 中断优先级寄存器 ...........................................................................................................253 范例程序 ...........................................................................................................................261 INT0 中断(上升沿和下降沿),可同时支持上升沿和下降沿 ..................................261 INT0 中断(下降沿) .....................................................................................................262 INT1 中断(上升沿和下降沿),可同时支持上升沿和下降沿 ..................................262 INT1 中断(下降沿) .....................................................................................................263 INT2 中断(下降沿),只支持下降沿中断..................................................................264 INT3 中断(下降沿),只支持下降沿中断..................................................................265 INT4 中断(下降沿),只支持下降沿中断..................................................................265 定时器 0 中断 ...................................................................................................................266 定时器 1 中断 ...................................................................................................................267 定时器 2 中断 ...................................................................................................................268 定时器 3 中断 ...................................................................................................................268 定时器 4 中断 ...................................................................................................................269 UART1 中断 .....................................................................................................................270 UART2 中断 .....................................................................................................................271 UART3 中断 .....................................................................................................................272 UART4 中断 .....................................................................................................................273 ADC 中断 .........................................................................................................................274 LVD 中断 ..........................................................................................................................274 比较器中断 .......................................................................................................................275 SPI 中断 ............................................................................................................................276 I2C 中断 ............................................................................................................................277 I/O 口中断 ........................................................................................................................279 I/O 口中断相关寄存器 .....................................................................................................279 端口中断使能寄存器(PxINTE) ..................................................................................280 端口中断标志寄存器(PxINTF) ..................................................................................280 端口中断模式配置寄存器(PxIM0,PxIM1) .............................................................281 端口中断优先级控制寄存器(PINIPL,PINIPH) ......................................................281 端口中断掉电唤醒使能寄存器(PxWKUE) ...............................................................282 范例程序 ...........................................................................................................................283 P0 口下降沿中断 ..............................................................................................................283 P1 口上升沿中断 ..............................................................................................................284 P2 口低电平中断 ..............................................................................................................286 P3 口高电平中断 ..............................................................................................................287 定时器/计数器(24 位定时器,8 位预分频+16 位自动重装载) ...............................290 定时器的相关寄存器 .......................................................................................................290 定时器 0/1 .........................................................................................................................292 定时器 0/1 控制寄存器(TCON) .................................................................................292 定时器 0/1 模式寄存器(TMOD) ................................................................................292 定时器 0 模式 0(16 位自动重装载模式) ...................................................................293 定时器 0 模式 1(16 位不可重装载模式) ...................................................................294 定时器 0 模式 2(8 位自动重装载模式) .....................................................................295 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - vi - STC32G 系列技术手册 14.2.6 14.2.7 14.2.8 14.2.9 14.2.10 14.2.11 14.2.12 14.2.13 14.2.14 14.2.15 14.2.16 14.2.17 14.3 14.3.1 14.3.2 14.3.3 14.3.4 14.3.5 14.3.6 14.4 14.4.1 14.4.2 14.4.3 14.4.4 14.4.5 14.4.6 14.4.7 14.4.8 14.4.9 14.4.10 14.5 14.5.1 14.5.2 14.5.3 14.5.4 14.5.5 14.5.6 14.5.7 14.5.8 14.5.9 14.5.10 14.5.11 14.5.12 14.5.13 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器 0 模式 3(不可屏蔽中断 16 位自动重装载,实时操作系统节拍器)...........295 定时器 1 模式 0(16 位自动重装载模式) ...................................................................296 定时器 1 模式 1(16 位不可重装载模式) ...................................................................297 定时器 1 模式 2(8 位自动重装载模式) .....................................................................298 定时器 0 计数寄存器(TL0,TH0) .............................................................................298 定时器 1 计数寄存器(TL1,TH1) .............................................................................298 辅助寄存器 1(AUXR) .................................................................................................299 中断与时钟输出控制寄存器(INTCLKO) ..................................................................299 定时器 0 的 8 位预分频寄存器(TM0PS) ...................................................................299 定时器 1 的 8 位预分频寄存器(TM1PS) ...................................................................299 定时器 0 计算公式 ...........................................................................................................300 定时器 1 计算公式 ...........................................................................................................300 定时器 2 ............................................................................................................................301 辅助寄存器 1(AUXR) .................................................................................................301 中断与时钟输出控制寄存器(INTCLKO) ..................................................................301 定时器 2 计数寄存器(T2L,T2H) .............................................................................301 定时器 2 的 8 位预分频寄存器(TM2PS) ...................................................................301 定时器 2 工作模式 ...........................................................................................................302 定时器 2 计算公式 ...........................................................................................................302 定时器 3/4 .........................................................................................................................303 定时器 3/4 功能脚切换 ....................................................................................................303 定时器 4/3 控制寄存器(T4T3M)................................................................................303 定时器 3 计数寄存器(T3L,T3H) .............................................................................304 定时器 4 计数寄存器(T4L,T4H) .............................................................................304 定时器 3 的 8 位预分频寄存器(TM3PS) ...................................................................304 定时器 4 的 8 位预分频寄存器(TM4PS) ...................................................................304 定时器 3 工作模式 ...........................................................................................................304 定时器 4 工作模式 ...........................................................................................................305 定时器 3 计算公式 ...........................................................................................................306 定时器 4 计算公式 ...........................................................................................................306 范例程序 ...........................................................................................................................307 定时器 0(模式 0-16 位自动重载),用作定时 ........................................................307 定时器 0(模式 1-16 位不自动重载),用作定时 ....................................................307 定时器 0(模式 2-8 位自动重载),用作定时 ..........................................................308 定时器 0(模式 3-16 位自动重载不可屏蔽中断),用作定时 ................................309 定时器 0(外部计数-扩展 T0 为外部下降沿中断) ..................................................310 定时器 0(测量脉宽-INT0 高电平宽度)................................................................... 311 定时器 0(模式 0),时钟分频输出 ............................................................................. 311 定时器 1(模式 0-16 位自动重载),用作定时 ........................................................312 定时器 1(模式 1-16 位不自动重载),用作定时 ....................................................313 定时器 1(模式 2-8 位自动重载),用作定时 ..........................................................314 定时器 1(外部计数-扩展 T1 为外部下降沿中断) ..................................................315 定时器 1(测量脉宽-INT1 高电平宽度)...................................................................315 定时器 1(模式 0),时钟分频输出 .............................................................................316 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - vii - STC32G 系列技术手册 14.5.14 14.5.15 14.5.16 14.5.17 14.5.18 14.5.19 14.5.20 14.5.21 14.5.22 14.5.23 14.5.24 14.5.25 14.5.26 14.5.27 14.5.28 14.5.29 14.5.30 15 15.1 15.2 15.3 15.3.1 15.3.2 15.3.3 15.3.4 15.3.5 15.3.6 15.3.7 15.3.8 15.3.9 15.3.10 15.3.11 15.3.12 15.3.13 15.3.14 15.3.15 15.3.16 15.3.17 15.4 15.4.1 15.4.2 15.4.3 15.4.4 15.4.5 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器 1(模式 0)做串口 1 波特率发生器 .................................................................317 定时器 1(模式 2)做串口 1 波特率发生器 .................................................................319 定时器 2(16 位自动重载),用作定时 .......................................................................320 定时器 2(外部计数-扩展 T2 为外部下降沿中断) ..................................................321 定时器 2,时钟分频输出 ................................................................................................322 定时器 2 做串口 1 波特率发生器 ...................................................................................322 定时器 2 做串口 2 波特率发生器 ...................................................................................324 定时器 2 做串口 3 波特率发生器 ...................................................................................326 定时器 2 做串口 4 波特率发生器 ...................................................................................327 定时器 3(16 位自动重载),用作定时 .......................................................................329 定时器 3(外部计数-扩展 T3 为外部下降沿中断) ..................................................330 定时器 3,时钟分频输出 ................................................................................................331 定时器 3 做串口 3 波特率发生器 ...................................................................................331 定时器 4(16 位自动重载),用作定时 .......................................................................333 定时器 4(外部计数-扩展 T4 为外部下降沿中断) ..................................................334 定时器 4,时钟分频输出 ................................................................................................335 定时器 4 做串口 4 波特率发生器 ...................................................................................335 同步/异步串口通信(USART1、USART2) ...............................................................338 串口功能脚切换 ...............................................................................................................338 串口相关寄存器 ...............................................................................................................338 串口 1(同步/异步串口 USART) .................................................................................340 串口 1 控制寄存器(SCON) ........................................................................................340 串口 1 数据寄存器(SBUF) .........................................................................................340 电源管理寄存器(PCON) ............................................................................................341 辅助寄存器 1(AUXR) .................................................................................................341 串口 1 模式 0,模式 0 波特率计算公式 ........................................................................341 串口 1 模式 1,模式 1 波特率计算公式 ........................................................................342 串口 1 模式 2,模式 2 波特率计算公式 ........................................................................345 串口 1 模式 3,模式 3 波特率计算公式 ........................................................................346 自动地址识别 ...................................................................................................................346 串口 1 从机地址控制寄存器(SADDR,SADEN) ....................................................346 串口 1 同步模式控制寄存器 1(USARTCR1) ............................................................347 串口 1 同步模式控制寄存器 2(USARTCR2) ............................................................348 串口 1 同步模式控制寄存器 3(USARTCR3) ............................................................349 串口 1 同步模式控制寄存器 4(USARTCR4) ............................................................349 串口 1 同步模式控制寄存器 5(USARTCR5) ............................................................349 串口 1 同步模式保护时间寄存器(USARTGTR) ......................................................350 串口 1 同步模式波特率寄存器(USARTBR) .............................................................350 串口 2(同步/异步串口 USART2) ...............................................................................351 串口 2 控制寄存器(S2CON) ......................................................................................351 串口 2 数据寄存器(S2BUF) .......................................................................................351 串口 2 配置寄存器(S2CFG) .......................................................................................352 串口 2 模式 0,模式 0 波特率计算公式 ........................................................................352 串口 2 模式 1,模式 1 波特率计算公式 ........................................................................353 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - viii - STC32G 系列技术手册 15.4.6 15.4.7 15.4.8 15.4.9 15.4.10 15.4.11 15.4.12 15.4.13 15.4.14 15.4.15 15.4.16 15.5 15.5.1 15.5.2 15.5.3 15.5.4 16 16.1 16.2 16.3 16.3.1 16.3.2 16.3.3 16.3.4 16.4 16.4.1 16.4.2 16.4.3 16.4.4 16.5 16.6 16.6.1 16.6.2 16.6.3 16.6.4 17 17.1 17.2 17.3 17.3.1 17.3.2 17.3.3 17.4 17.4.1 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 2 模式 2,模式 2 波特率计算公式 ........................................................................355 串口 2 模式 3,模式 3 波特率计算公式 ........................................................................356 串口 2 自动地址识别 .......................................................................................................357 串口 2 从机地址控制寄存器(S2ADDR,S2ADEN) ................................................357 串口 2 同步模式控制寄存器 1(USART2CR1) ..........................................................358 串口 2 同步模式控制寄存器 2(USART2CR2) ..........................................................359 串口 2 同步模式控制寄存器 3(USART2CR3) ..........................................................359 串口 2 同步模式控制寄存器 4(USART2CR4) ..........................................................360 串口 2 同步模式控制寄存器 5(USART2CR5) ..........................................................360 串口 2 同步模式保护时间寄存器(USART2GTR) ....................................................361 串口 2 同步模式波特率寄存器(USART2BR) ...........................................................361 范例程序 ...........................................................................................................................362 串口 1 使用定时器 2 做波特率发生器 ...........................................................................362 串口 1 使用定时器 1(模式 0)做波特率发生器 .........................................................363 串口 1 使用定时器 1(模式 2)做波特率发生器 .........................................................365 串口 2 使用定时器 2 做波特率发生器 ...........................................................................367 异步串口通信(UART3、UART4) .............................................................................369 串口功能脚切换 ...............................................................................................................369 串口相关寄存器 ...............................................................................................................369 串口 3(异步串口 UART3) ..........................................................................................370 串口 3 控制寄存器(S3CON) ......................................................................................370 串口 3 数据寄存器(S3BUF) .......................................................................................370 串口 3 模式 0,模式 0 波特率计算公式 ........................................................................371 串口 3 模式 1,模式 1 波特率计算公式 ........................................................................371 串口 4(异步串口 UART4) ..........................................................................................373 串口 4 控制寄存器(S4CON) ......................................................................................373 串口 4 数据寄存器(S4BUF) .......................................................................................373 串口 4 模式 0,模式 0 波特率计算公式 ........................................................................374 串口 4 模式 1,模式 1 波特率计算公式 ........................................................................374 串口注意事项 ...................................................................................................................375 范例程序 ...........................................................................................................................377 串口 3 使用定时器 2 做波特率发生器 ...........................................................................377 串口 3 使用定时器 3 做波特率发生器 ...........................................................................378 串口 4 使用定时器 2 做波特率发生器 ...........................................................................380 串口 4 使用定时器 4 做波特率发生器 ...........................................................................382 比较器,掉电检测,内部固定比较电压 .......................................................................384 比较器内部结构图 ...........................................................................................................384 比较器功能脚切换 ...........................................................................................................384 比较器相关的寄存器 .......................................................................................................385 比较器控制寄存器 1(CMPCR1) ................................................................................385 比较器控制寄存器 2(CMPCR2) ................................................................................385 比较器扩展配置寄存器(CMPEXCFG) ......................................................................386 范例程序 ...........................................................................................................................387 比较器的使用(中断方式) ...........................................................................................387 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - ix - STC32G 系列技术手册 17.4.2 17.4.3 17.4.4 17.4.5 18 18.1 18.2 18.2.1 18.2.2 18.2.3 18.2.4 18.2.5 18.2.6 18.3 18.4 18.4.1 18.4.2 18.4.3 18.4.4 18.4.5 19 19.1 19.1.1 19.1.2 19.1.3 19.1.4 19.2 19.3 19.3.1 19.3.2 19.3.3 19.3.4 19.4 19.4.1 19.4.2 19.5 19.5.1 19.5.2 19.5.3 19.5.4 19.5.5 19.5.6 19.5.7 19.6 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 比较器的使用(查询方式) ...........................................................................................388 比较器的多路复用应用(比较器+ADC 输入通道)....................................................389 比较器作外部掉电检测(掉电过程中应及时保存用户数据到 EEPROM 中) .........390 比较器检测工作电压(电池电压) ...............................................................................391 IAP/EEPROM .................................................................................................................394 EEPROM 操作时间 ..........................................................................................................394 EEPROM 相关的寄存器 ..................................................................................................394 EEPROM 数据寄存器(IAP_DATA) ...........................................................................395 EEPROM 地址寄存器(IAP_ADDR) ..........................................................................395 EEPROM 命令寄存器(IAP_CMD) ............................................................................395 EEPROM 触发寄存器(IAP_TRIG) ............................................................................396 EEPROM 控制寄存器(IAP_CONTR) ........................................................................396 EEPROM 擦除等待时间控制寄存器(IAP_TPS) .......................................................396 EEPROM 大小及地址 ......................................................................................................397 范例程序 ...........................................................................................................................399 EEPROM 基本操作 ..........................................................................................................399 使用 MOV 读取 EEPROM...............................................................................................400 使用串口送出 EEPROM 数据 .........................................................................................402 串口 1 读写 EEPROM-带 MOV 读 .................................................................................404 口令擦除写入-多扇区备份-串口 1 操作......................................................................... 411 ADC 模数转换、传统 DAC 实现 ...................................................................................421 ADC 相关的寄存器..........................................................................................................421 ADC 控制寄存器(ADC_CONTR),PWM 触发 ADC 控制 .....................................421 ADC 配置寄存器(ADCCFG) .....................................................................................422 ADC 转换结果寄存器(ADC_RES,ADC_RESL) ....................................................423 ADC 时序控制寄存器(ADCTIM) ..............................................................................423 ADC 静态特性..................................................................................................................425 ADC 相关计算公式..........................................................................................................425 ADC 速度计算公式..........................................................................................................425 ADC 转换结果计算公式 ..................................................................................................425 反推 ADC 输入电压计算公式 .........................................................................................425 反推工作电压计算公式 ...................................................................................................426 ADC 应用参考线路图......................................................................................................427 一般精度 ADC 参考线路图 .............................................................................................427 高精度 ADC 参考线路图 .................................................................................................428 范例程序 ...........................................................................................................................428 ADC 基本操作(查询方式) ..........................................................................................428 ADC 基本操作(中断方式) ..........................................................................................429 格式化 ADC 转换结果.....................................................................................................430 利用 ADC 第 15 通道(内部 1.19V 参考信号源)测量外部电压或电池电压 ...........431 ADC 作按键扫描应用线路图 ..........................................................................................434 检测负电压参考线路图 ...................................................................................................435 常用加法电路在 ADC 中的应用 .....................................................................................436 使用 I/O 和 R-2R 电阻分压实现 DAC 的经典线路图 ...................................................437 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -x- STC32G 系列技术手册 19.7 20 20.1 20.2 20.2.1 20.2.2 20.2.3 20.3 20.3.1 20.3.2 20.3.3 20.4 20.5 20.6 20.6.1 20.6.2 20.6.3 20.6.4 20.6.5 20.6.6 21 21.1 21.1.1 21.1.2 21.1.3 21.2 21.2.1 22 22.1 22.2 22.3 22.3.1 22.3.2 22.3.3 22.3.4 22.4 22.4.1 22.4.2 22.4.3 22.4.4 22.5 22.5.1 22.5.2 22.5.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 利用 PWM 实现 16 位 DAC 的参考线路图 ...................................................................438 同步串行外设接口(SPI) .............................................................................................439 SPI 功能脚切换 ................................................................................................................439 SPI 相关的寄存器 ............................................................................................................439 SPI 状态寄存器(SPSTAT)...........................................................................................439 SPI 控制寄存器(SPCTL),SPI 速度控制 ..................................................................439 SPI 数据寄存器(SPDAT) ............................................................................................440 SPI 通信方式 ....................................................................................................................441 单主单从 ...........................................................................................................................441 互为主从 ...........................................................................................................................441 单主多从 ...........................................................................................................................442 配置 SPI ............................................................................................................................443 数据模式 ...........................................................................................................................445 范例程序 ...........................................................................................................................446 SPI 单主单从系统主机程序(中断方式) ....................................................................446 SPI 单主单从系统从机程序(中断方式) ....................................................................447 SPI 单主单从系统主机程序(查询方式) ....................................................................447 SPI 单主单从系统从机程序(查询方式) ....................................................................448 SPI 互为主从系统程序(中断方式) ............................................................................449 SPI 互为主从系统程序(查询方式) ............................................................................450 高速 SPI(HSSPI) ........................................................................................................452 相关寄存器 .......................................................................................................................452 高速 SPI 配置寄存器(HSSPI_CFG) ...........................................................................452 高速 SPI 配置寄存器 2(HSSPI_CFG2) ......................................................................452 高速 SPI 状态寄存器(HSSPI_STA) ...........................................................................453 范例程序 ...........................................................................................................................454 使能 SPI 的高速模式 .......................................................................................................454 I2C 总线 ...........................................................................................................................456 I2C 功能脚切换 ................................................................................................................456 I2C 相关的寄存器 ............................................................................................................456 I2C 主机模式 ....................................................................................................................457 I2C 配置寄存器(I2CCFG),总线速度控制 ..............................................................457 I2C 主机控制寄存器(I2CMSCR) ...............................................................................458 I2C 主机辅助控制寄存器(I2CMSAUX) ....................................................................459 I2C 主机状态寄存器(I2CMSST) ................................................................................459 I2C 从机模式 ....................................................................................................................461 I2C 从机控制寄存器(I2CSLCR) ................................................................................461 I2C 从机状态寄存器(I2CSLST) .................................................................................461 I2C 从机地址寄存器(I2CSLADR) .............................................................................462 I2C 数据寄存器(I2CTXD,I2CRXD)........................................................................463 范例程序 ...........................................................................................................................464 I2C 主机模式访问 AT24C256(中断方式) ..................................................................464 I2C 主机模式访问 AT24C256(查询方式) ..................................................................466 I2C 主机模式访问 PCF8563 ............................................................................................468 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xi - STC32G 系列技术手册 22.5.4 22.5.5 22.5.6 23 23.1 23.2 23.3 23.3.1 23.3.2 23.3.3 23.3.4 23.3.5 23.3.6 23.3.7 23.4 23.4.1 23.4.2 23.4.3 23.4.4 23.4.5 23.4.6 23.5 23.5.1 23.5.2 23.5.3 23.5.4 23.5.5 23.5.6 23.5.7 23.5.8 23.5.9 23.5.10 23.6 23.7 23.7.1 23.7.2 23.7.3 23.7.4 23.7.5 23.7.6 23.7.7 23.7.8 23.7.9 23.7.10 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 I2C 从机模式(中断方式) ............................................................................................471 I2C 从机模式(查询方式) ............................................................................................473 测试 I2C 从机模式代码的主机代码 ...............................................................................474 高级 PWM ........................................................................................................................477 简介 ...................................................................................................................................480 主要特性 ...........................................................................................................................480 时基单元 ...........................................................................................................................481 读写 16 位计数器 .............................................................................................................482 16 位 PWMA_ARR 寄存器的写操作..............................................................................482 预分频器 ...........................................................................................................................482 向上计数模式 ...................................................................................................................483 向下计数模式 ...................................................................................................................484 中间对齐模式(向上/向下计数) ..................................................................................486 重复计数器 .......................................................................................................................488 时钟/触发控制器 ..............................................................................................................489 预分频时钟(CK_PSC) ................................................................................................489 内部时钟源(fMASTER)..............................................................................................490 外部时钟源模式 1 ...........................................................................................................490 外部时钟源模式 2 ............................................................................................................491 触发同步 ...........................................................................................................................492 与 PWMB 同步 .................................................................................................................495 捕获/比较通道 ..................................................................................................................498 16 位 PWMA_CCRi 寄存器的写流程 ............................................................................500 输入模块 ...........................................................................................................................500 输入捕获模式 ...................................................................................................................500 输出模块 ...........................................................................................................................503 强制输出模式 ...................................................................................................................504 输出比较模式 ...................................................................................................................504 PWM 模式 ........................................................................................................................505 使用刹车功能(PWMFLT) ........................................................................................... 511 在外部事件发生时清除 OCiREF 信号 ...........................................................................513 编码器接口模式 ...............................................................................................................514 中断 ...................................................................................................................................516 PWMA/PWMB 寄存器描述 ............................................................................................517 功能脚切换(PWMx_PS) .............................................................................................517 高级 PWM 功能脚选择寄存器(PWMx_ETRPS) ......................................................518 输出使能寄存器(PWMx_ENO) .................................................................................518 输出附加使能寄存器(PWMx_IOAUX) .....................................................................519 控制寄存器 1(PWMx_CR1) .......................................................................................520 控制寄存器 2(PWMx_CR2),及实时触发 ADC ......................................................521 从模式控制寄存器(PWMx_SMCR) ................................................................................523 外部触发寄存器(PWMx_ETR) .......................................................................................525 中断使能寄存器(PWMx_IER) ........................................................................................525 状态寄存器 1(PWMx_SR1) .............................................................................................526 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xii - STC32G 系列技术手册 23.7.11 23.7.12 23.7.13 23.7.14 23.7.15 23.7.16 23.7.17 23.7.18 23.7.19 23.7.20 23.7.21 23.7.22 23.7.23 23.7.24 23.7.25 23.7.26 23.7.27 23.7.28 23.7.29 23.7.30 23.7.31 23.7.32 23.7.33 23.7.34 23.7.35 23.7.36 23.8 23.8.1 23.8.2 23.8.3 23.8.4 23.8.5 23.8.6 23.8.7 23.8.8 23.8.9 23.8.10 23.8.11 23.8.12 23.8.13 23.8.14 23.8.15 23.8.16 23.8.17 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 状态寄存器 2(PWMx_SR2) .............................................................................................527 事件产生寄存器(PWMx_EGR)..................................................................................527 捕获/比较模式寄存器 1(PWMx_CCMR1) ...............................................................528 捕获/比较模式寄存器 2(PWMx_CCMR2) ...............................................................531 捕获/比较模式寄存器 3(PWMx_CCMR3) ...............................................................532 捕获/比较模式寄存器 4(PWMx_CCMR4) ...............................................................533 捕获/比较使能寄存器 1(PWMx_CCER1) .................................................................534 捕获/比较使能寄存器 2(PWMx_CCER2) .................................................................535 计数器高 8 位(PWMx_CNTRH) ................................................................................536 计数器低 8 位(PWMx_CNTRL) ................................................................................536 预分频器高 8 位(PWMx_PSCRH),输出频率计算公式 .........................................536 预分频器低 8 位(PWMx_PSCRL) .............................................................................537 自动重装载寄存器高 8 位(PWMx_ARRH)...............................................................537 自动重装载寄存器低 8 位(PWMx_ARRL) ...............................................................537 重复计数器寄存器(PWMx_RCR)..............................................................................537 捕获/比较寄存器 1/5 高 8 位(PWMx_CCR1H).........................................................537 捕获/比较寄存器 1/5 低 8 位(PWMx_CCR1L) .........................................................538 捕获/比较寄存器 2/6 高 8 位(PWMx_CCR2H).........................................................538 捕获/比较寄存器 2/6 低 8 位(PWMx_CCR2L) .........................................................538 捕获/比较寄存器 3/7 高 8 位(PWMx_CCR3H).........................................................538 捕获/比较寄存器 3/7 低 8 位(PWMx_CCR3L) .........................................................538 捕获/比较寄存器 4/8 高 8 位(PWMx_CCR4H).........................................................538 捕获/比较寄存器 4/8 低 8 位(PWMx_CCR4L) .........................................................539 刹车寄存器(PWMx_BKR) .........................................................................................539 死区寄存器(PWMx_DTR)..........................................................................................540 输出空闲状态寄存器(PWMx_OISR).........................................................................540 范例程序 ...........................................................................................................................542 BLDC 无刷直流马达(带 HALL) .....................................................................................542 BLDC 无刷直流电机驱动(无 HALL) .............................................................................552 使用高级 PWM 实现编码器............................................................................................560 正交编码器模式 ...............................................................................................................563 单脉冲模式(触发控制脉冲输出) ...............................................................................564 门控模式(输入电平使能计数器) ...............................................................................565 外部时钟模式 ...................................................................................................................567 输入捕获模式测量脉冲周期(捕获上升沿到上升沿或者下降沿到下降沿)............568 输入捕获模式测量脉冲高电平宽度(捕获上升沿到下降沿) ...................................569 输入捕获模式测量脉冲低电平宽度(捕获下降沿到上升沿) ...................................570 输入捕获模式同时测量脉冲周期和占空比 ...................................................................571 带死区控制的 PWM 互补输出........................................................................................572 PWM 端口做外部中断(下降沿中断或者上升沿中断) .............................................573 输出任意周期和任意占空比的波形 ...............................................................................573 使用 PWM 的 CEN 启动 PWMA 定时器,实时触发 ADC ..........................................574 PWM 周期重复触发 ADC ...............................................................................................575 利用 PWM 实现 16 位 DAC 的参考线路图 ...................................................................576 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xiii - STC32G 系列技术手册 23.8.18 23.8.19 24 24.1 24.1.1 24.1.2 24.1.3 24.2 24.2.1 25 25.1 25.1.1 25.1.2 25.1.3 25.1.4 25.2 25.2.1 25.2.2 25.2.3 25.2.4 25.2.5 25.2.6 25.2.7 25.2.8 25.2.9 25.2.10 25.2.11 25.2.12 25.2.13 25.2.14 25.2.15 25.2.16 25.2.17 25.2.18 25.2.19 25.2.20 25.2.21 25.2.22 25.3 25.4 25.4.1 26 26.1 26.1.1 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 利用 PWM 实现互补 SPWM ...........................................................................................577 高级 PWM 输出-频率可调-脉冲计数 .............................................................................580 高速高级 PWM(HSPWM) ........................................................................................584 相关寄存器 .......................................................................................................................584 HSPWM 配置寄存器(HSPWMn_CFG) .....................................................................584 HSPWM 地址寄存器(HSPWMn_AD) .......................................................................584 HSPWM 数据寄存器(HSPWMn_DAT) .....................................................................585 范例程序 ...........................................................................................................................586 使能高级 PWM 的高速模式(异步模式) ....................................................................586 USB 通用串行总线 ..........................................................................................................589 USB 相关的寄存器 ..........................................................................................................589 USB 控制寄存器(USBCON) ......................................................................................589 USB 时钟控制寄存器(USBCLK)...............................................................................590 USB 间址地址寄存器(USBADR) ..............................................................................591 USB 间址数据寄存器(USBDAT) ...............................................................................591 USB 控制器寄存器(SIE) ............................................................................................591 USB 功能地址寄存器(FADDR) .................................................................................592 USB 电源控制寄存器(POWER) ................................................................................592 USB 端点 IN 中断标志位(INTRIN1) .........................................................................593 USB 端点 OUT 中断标志位(INTROUT1) .................................................................593 USB 电源中断标志(INTRUSB) .................................................................................594 USB 端点 IN 中断允许寄存器(INTRIN1E) ..............................................................594 USB 端点 OUT 中断允许寄存器(INTROUT1E) ......................................................595 USB 电源中断允许寄存器(INTRUSB) .....................................................................595 USB 数据帧号寄存器(FRAMEn)...............................................................................596 USB 端点索引寄存器(INDEX) ..................................................................................596 IN 端点的最大数据包大小(INMAXP) ......................................................................596 USB 端点 0 控制状态寄存器(CSR0) .........................................................................596 IN 端点控制状态寄存器 1(INCSR1) .........................................................................597 IN 端点控制状态寄存器 2(INCSR2) .........................................................................598 OUT 端点的最大数据包大小(OUTMAXP) ..............................................................598 OUT 端点控制状态寄存器 1(OUTCSR1) .................................................................598 OUT 端点控制状态寄存器 2(OUTCSR2) .................................................................599 USB 端点 0 的 OUT 长度(COUNT0) ........................................................................599 USB 端点的 OUT 长度(OUTCOUNTn) ....................................................................600 USB 端点的 FIFO 数据访问寄存器(FIFOn) .............................................................600 USB 跟踪控制寄存器(UTRKCTL) ............................................................................600 USB 跟踪状态寄存器(UTRKSTS) .............................................................................601 USB 产品开发注意事项 ..................................................................................................601 范例程序 ...........................................................................................................................602 HID 人机接口设备范例 ...................................................................................................602 RTC 实时时钟..................................................................................................................613 RTC 相关的寄存器 ..........................................................................................................613 RTC 控制寄存器(RTCCR) ..........................................................................................614 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xiv - STC32G 系列技术手册 26.1.2 26.1.3 26.1.4 26.1.5 26.1.6 26.1.7 26.2 26.3 26.4 26.4.1 27 27.1 27.2 27.2.1 27.2.2 27.2.3 27.2.4 27.2.5 27.3 27.3.1 27.3.2 28 28.1 28.2 28.2.1 28.2.2 28.2.3 28.2.4 28.2.5 28.2.6 28.2.7 28.3 28.3.1 28.3.2 28.3.3 28.3.4 28.3.5 28.3.6 28.3.7 28.4 28.4.1 28.4.2 28.4.3 28.4.4 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 RTC 配置寄存器(RTCCFG) .......................................................................................614 RTC 中断使能寄存器(RTCIEN) ................................................................................614 RTC 中断请求寄存器(RTCIF)....................................................................................615 RTC 闹钟设置寄存器 ......................................................................................................615 RTC 实时时钟初始值设置寄存器...................................................................................616 RTC 实时时钟计数寄存器...............................................................................................616 RTC 参考线路图(无 VBAT 管脚) ..............................................................................618 RTC 实战线路图 ..............................................................................................................619 范例程序 ...........................................................................................................................620 串口打印 RTC 时钟范例..................................................................................................620 LCM 接口(8/16 位彩屏模块 I8080/M6800 接口) ....................................................623 LCM 接口功能脚切换 .....................................................................................................623 LCM 相关的寄存器 .........................................................................................................623 LCM 接口配置寄存器(LCMIFCFG)..........................................................................624 LCM 接口配置寄存器 2(LCMIFCFG2).....................................................................624 LCM 接口控制寄存器(LCMIFCR) ............................................................................625 LCM 接口状态寄存器(LCMIFSTA) ..........................................................................625 LCM 接口数据寄存器(LCMIFDATL,LCMIFDATH) ............................................625 I8080/M6800 模式 LCM 接口时序图..............................................................................626 I8080 模式.........................................................................................................................626 M6800 模式 ......................................................................................................................627 DMA(批量数据传输) .................................................................................................628 DMA 相关的寄存器 .........................................................................................................628 存储器与存储器之间的数据读写(M2M_DMA) .......................................................633 M2M_DMA 配置寄存器(DMA_M2M_CFG)............................................................633 M2M_DMA 控制寄存器(DMA_M2M_CR) ..............................................................633 M2M_DMA 状态寄存器(DMA_M2M_STA) ............................................................633 M2M_DMA 传输总字节寄存器(DMA_M2M_AMT)...............................................634 M2M_DMA 传输完成字节寄存器(DMA_M2M_DONE) ........................................634 M2M_DMA 发送地址寄存器(DMA_M2M_TXAx) .................................................634 M2M_DMA 接收地址寄存器(DMA_M2M_RXAx) .................................................634 ADC 数据自动存储(ADC_DMA) ..............................................................................635 ADC_DMA 配置寄存器(DMA_ADC_CFG) .............................................................635 ADC_DMA 控制寄存器(DMA_ADC_CR) ...............................................................635 ADC_DMA 状态寄存器(DMA_ADC_STA) .............................................................635 ADC_DMA 接收地址寄存器(DMA_ADC_RXAx) ..................................................635 ADC_DMA 配置寄存器 2(DMA_ADC_CFG2) ........................................................636 ADC_DMA 通道使能寄存器(DMA_ADC_CHSWx) ...............................................636 ADC_DMA 的数据存储格式 ..........................................................................................637 SPI 与存储器之间的数据交换(SPI_DMA) ...............................................................639 SPI_DMA 配置寄存器(DMA_SPI_CFG) ..................................................................639 SPI_DMA 控制寄存器(DMA_SPI_CR) .....................................................................639 SPI_DMA 状态寄存器(DMA_SPI_STA) ...................................................................640 SPI_DMA 传输总字节寄存器(DMA_SPI_AMT) .....................................................640 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xv - STC32G 系列技术手册 28.4.5 28.4.6 28.4.7 28.4.8 28.5 28.5.1 28.5.2 28.5.3 28.5.4 28.5.5 28.5.6 28.5.7 28.5.8 28.5.9 28.5.10 28.5.11 28.5.12 28.6 28.6.1 28.6.2 28.6.3 28.6.4 28.6.5 28.6.6 28.6.7 28.6.8 28.6.9 28.6.10 28.6.11 28.6.12 28.7 28.7.1 28.7.2 28.7.3 28.7.4 28.7.5 28.7.6 28.7.7 28.7.8 28.7.9 28.7.10 28.7.11 28.7.12 28.8 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 SPI_DMA 传输完成字节寄存器(DMA_SPI_DONE) ...............................................640 SPI_DMA 发送地址寄存器(DMA_SPI_TXAx) ........................................................640 SPI_DMA 接收地址寄存器(DMA_SPI_RXAx)........................................................641 SPI_DMA 配置寄存 2 器(DMA_SPI_CFG2) ............................................................641 串口 1 与存储器之间的数据交换(UR1T_DMA,UR1R_DMA).............................642 UR1T_DMA 配置寄存器(DMA_UR1T_CFG) ..........................................................642 UR1T_DMA 控制寄存器(DMA_UR1T_CR) ............................................................642 UR1T_DMA 状态寄存器(DMA_UR1T_STA) ..........................................................642 UR1T_DMA 传输总字节寄存器(DMA_UR1T_AMT) .............................................643 UR1T_DMA 传输完成字节寄存器(DMA_UR1T_DONE) .......................................643 UR1T_DMA 发送地址寄存器(DMA_UR1T_TXAx) ...............................................643 UR1R_DMA 配置寄存器(DMA_UR1R_CFG) .........................................................643 UR1R_DMA 控制寄存器(DMA_UR1R_CR) ............................................................644 UR1R_DMA 状态寄存器(DMA_UR1R_STA) ..........................................................644 UR1R_DMA 传输总字节寄存器(DMA_UR1R_AMT) ............................................644 UR1R_DMA 传输完成字节寄存器(DMA_UR1R_DONE) ......................................644 UR1R_DMA 接收地址寄存器(DMA_UR1R_RXAx) ...............................................644 串口 2 与存储器之间的数据交换(UR2T_DMA,UR2R_DMA).............................646 UR2T_DMA 配置寄存器(DMA_UR2T_CFG) ..........................................................646 UR2T_DMA 控制寄存器(DMA_UR2T_CR) ............................................................646 UR2T_DMA 状态寄存器(DMA_UR2T_STA) ..........................................................646 UR2T_DMA 传输总字节寄存器(DMA_UR2T_AMT) .............................................647 UR2T_DMA 传输完成字节寄存器(DMA_UR2T_DONE) .......................................647 UR2T_DMA 发送地址寄存器(DMA_UR2T_TXAx) ...............................................647 UR2R_DMA 配置寄存器(DMA_UR2R_CFG) .........................................................647 UR2R_DMA 控制寄存器(DMA_UR2R_CR) ............................................................648 UR2R_DMA 状态寄存器(DMA_UR2R_STA) ..........................................................648 UR2R_DMA 传输总字节寄存器(DMA_UR2R_AMT) ............................................648 UR2R_DMA 传输完成字节寄存器(DMA_UR2R_DONE) ......................................648 UR2R_DMA 接收地址寄存器(DMA_UR2R_RXAx) ...............................................648 串口 3 与存储器之间的数据交换(UR3T_DMA,UR3R_DMA).............................650 UR3T_DMA 配置寄存器(DMA_UR3T_CFG) ..........................................................650 UR3T_DMA 控制寄存器(DMA_UR3T_CR) ............................................................650 UR3T_DMA 状态寄存器(DMA_UR3T_STA) ..........................................................650 UR3T_DMA 传输总字节寄存器(DMA_UR3T_AMT) .............................................651 UR3T_DMA 传输完成字节寄存器(DMA_UR3T_DONE) .......................................651 UR3T_DMA 发送地址寄存器(DMA_UR3T_TXAx) ...............................................651 UR3R_DMA 配置寄存器(DMA_UR3R_CFG) .........................................................651 UR3R_DMA 控制寄存器(DMA_UR3R_CR) ............................................................652 UR3R_DMA 状态寄存器(DMA_UR3R_STA) ..........................................................652 UR3R_DMA 传输总字节寄存器(DMA_UR3R_AMT) ............................................652 UR3R_DMA 传输完成字节寄存器(DMA_UR3R_DONE) ......................................652 UR3R_DMA 接收地址寄存器(DMA_UR3R_RXAx) ...............................................652 串口 4 与存储器之间的数据交换(UR4T_DMA,UR4R_DMA).............................654 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xvi - STC32G 系列技术手册 28.8.1 28.8.2 28.8.3 28.8.4 28.8.5 28.8.6 28.8.7 28.8.8 28.8.9 28.8.10 28.8.11 28.8.12 28.9 28.9.1 28.9.2 28.9.3 28.9.4 28.9.5 28.9.6 28.9.7 28.10 28.10.1 28.10.2 28.10.3 28.10.4 28.10.5 28.10.6 28.10.7 28.10.8 28.10.9 28.10.10 28.10.11 28.10.12 28.10.13 28.10.14 28.11 28.11.1 28.11.2 28.11.3 28.11.4 28.11.5 28.11.6 28.11.7 28.11.8 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 UR4T_DMA 配置寄存器(DMA_UR4T_CFG) ..........................................................654 UR4T_DMA 控制寄存器(DMA_UR4T_CR) ............................................................654 UR4T_DMA 状态寄存器(DMA_UR4T_STA) ..........................................................654 UR4T_DMA 传输总字节寄存器(DMA_UR4T_AMT) .............................................655 UR4T_DMA 传输完成字节寄存器(DMA_UR4T_DONE) .......................................655 UR4T_DMA 发送地址寄存器(DMA_UR4T_TXAx) ...............................................655 UR4R_DMA 配置寄存器(DMA_UR4R_CFG) .........................................................655 UR4R_DMA 控制寄存器(DMA_UR4R_CR) ............................................................656 UR4R_DMA 状态寄存器(DMA_UR4R_STA) ..........................................................656 UR4R_DMA 传输总字节寄存器(DMA_UR4R_AMT) ............................................656 UR4R_DMA 传输完成字节寄存器(DMA_UR4R_DONE) ......................................656 UR4R_DMA 接收地址寄存器(DMA_UR4R_RXAx) ...............................................656 LCM 与存储器之间的数据读写(LCM_DMA)..........................................................658 LCM_DMA 配置寄存器(DMA_LCM_CFG) ............................................................658 LCM_DMA 控制寄存器(DMA_LCM_CR) ...............................................................658 LCM_DMA 状态寄存器(DMA_LCM_STA) .............................................................659 LCM_DMA 传输总字节寄存器(DMA_LCM_AMT) ...............................................659 LCM_DMA 传输完成字节寄存器(DMA_LCM_DONE) .........................................659 LCM_DMA 发送地址寄存器(DMA_LCM_TXAx) ..................................................659 LCM_DMA 接收地址寄存器(DMA_LCM_RXAx) ..................................................659 I2C 与存储器之间的数据交换(I2CT_DMA,I2CR_DMA).....................................660 I2CT_DMA 配置寄存器(DMA_I2CT_CFG) .............................................................660 I2CT_DMA 控制寄存器(DMA_I2CT_CR) ...............................................................660 I2CT_DMA 状态寄存器(DMA_I2CT_STA) .............................................................660 I2CT_DMA 传输总字节寄存器(DMA_I2CT_AMT) ................................................661 I2CT_DMA 传输完成字节寄存器(DMA_I2CT_DONE) ..........................................661 I2CT_DMA 发送地址寄存器(DMA_I2CT_TXAx)...................................................661 I2CR_DMA 配置寄存器(DMA_I2CR_CFG) ............................................................661 I2CR_DMA 控制寄存器(DMA_I2CR_CR) ...............................................................662 I2CR_DMA 状态寄存器(DMA_I2CR_STA) .............................................................662 I2CR_DMA 传输总字节寄存器(DMA_I2CR_AMT) ...............................................662 I2CR_DMA 传输完成字节寄存器(DMA_I2CR_DONE) .........................................662 I2CR_DMA 接收地址寄存器(DMA_I2CR_RXAx) ..................................................662 I2C_DMA 控制寄存器(DMA_I2C_CR) ....................................................................663 I2C_DMA 状态寄存器(DMA_I2C_ST) .....................................................................663 I2S 与存储器之间的数据交换(I2ST_DMA,I2SR_DMA) ......................................664 I2ST_DMA 配置寄存器(DMA_I2ST_CFG) ..............................................................664 I2ST_DMA 控制寄存器(DMA_I2ST_CR) ................................................................664 I2ST_DMA 状态寄存器(DMA_I2ST_STA) ..............................................................664 I2ST_DMA 传输总字节寄存器(DMA_I2ST_AMT) .................................................665 I2ST_DMA 传输完成字节寄存器(DMA_I2ST_DONE) ...........................................665 I2ST_DMA 发送地址寄存器(DMA_I2ST_TXAx) ...................................................665 I2SR_DMA 配置寄存器(DMA_I2SR_CFG) .............................................................665 I2SR_DMA 控制寄存器(DMA_I2SR_CR) ................................................................666 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xvii - STC32G 系列技术手册 28.11.9 28.11.10 28.11.11 28.11.12 28.12 28.12.1 28.12.2 29 29.1 29.2 29.2.1 29.2.2 29.2.3 29.2.4 29.3 29.3.1 29.3.2 29.3.3 29.3.4 29.3.5 29.3.6 29.3.7 29.3.8 29.3.9 29.3.10 29.3.11 29.3.12 29.3.13 29.3.14 29.3.15 29.3.16 29.4 29.4.1 29.4.2 29.4.3 29.4.4 30 30.1 30.2 30.2.1 30.2.2 30.2.3 30.2.4 30.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 I2SR_DMA 状态寄存器(DMA_I2SR_STA) ..............................................................666 I2SR_DMA 传输总字节寄存器(DMA_I2SR_AMT) ................................................666 I2SR_DMA 传输完成字节寄存器(DMA_I2SR_DONE) ..........................................666 I2SR_DMA 接收地址寄存器(DMA_I2SR_RXAx) ...................................................666 范例程序 ...........................................................................................................................668 串口 1 中断模式与电脑收发测试 - DMA 接收超时中断 .............................................668 串口 1 中断模式与电脑收发测试 - DMA 数据校验 .....................................................673 CAN 总线 .........................................................................................................................681 CAN 功能脚切换..............................................................................................................681 CAN 相关的寄存器..........................................................................................................681 辅助寄存器 2(AUXR2) ...............................................................................................682 CAN 总线中断控制寄存器(CANICR) .......................................................................682 CAN 总线地址寄存器(CANAR) ................................................................................682 CAN 总线数据寄存器(CANDR) ................................................................................683 CAN 内部功能寄存器......................................................................................................683 CAN 模式寄存器(MR) ...............................................................................................684 CAN 命令寄存器(CMR) .............................................................................................684 CAN 状态寄存器(SR) .................................................................................................685 CAN 中断/应答寄存器(ISR/IACK)............................................................................685 CAN 中断寄存器(IMR) ..............................................................................................686 CAN 数据帧接收计数器(RMC) .................................................................................686 CAN 总线时钟寄存器 0(BTR0) .................................................................................687 CAN 总线时钟寄存器 1(BTR1) .................................................................................687 CAN 总线数据帧发送缓存(TXBUFn) .......................................................................687 CAN 总线数据帧接收缓存(RXBUFn) ......................................................................687 CAN 总线验收代码寄存器(ACRn)............................................................................688 CAN 总线验收屏蔽寄存器(AMRn)...........................................................................688 CAN 总线错误信息寄存器(ECC) ..............................................................................691 CAN 总线接收错误计数器(RXERR) ........................................................................691 CAN 总线发送错误计数器(TXERR) .........................................................................691 CAN 总线仲裁丢失寄存器(ALC) ..............................................................................692 范例程序 ...........................................................................................................................694 CAN 总线帧格式..............................................................................................................694 CAN 总线标准帧收发范例 ..............................................................................................695 CAN 总线扩展帧收发范例 ..............................................................................................698 CAN 总线标准帧收发测试(汇编) ..............................................................................701 LIN 总线 ........................................................................................................................... 711 LIN 功能脚切换 ............................................................................................................... 711 LIN 相关的寄存器 ........................................................................................................... 711 辅助寄存器 2(AUXR2) ............................................................................................... 711 LIN 总线中断控制寄存器(LINICR) .......................................................................... 711 LIN 总线地址寄存器(LINAR) ...................................................................................712 LIN 总线数据寄存器(LINDR) ...................................................................................712 LIN 内部功能寄存器 .......................................................................................................712 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xviii - STC32G 系列技术手册 30.3.1 30.3.2 30.3.3 30.3.4 30.3.5 30.3.6 30.3.7 30.3.8 30.3.9 30.3.10 30.4 30.4.1 30.4.2 30.4.3 30.4.4 31 31.1 31.2 31.3 31.3.1 31.3.2 31.3.3 31.4 32 32.1 32.2 32.3 32.4 32.4.1 32.4.2 32.4.3 32.4.4 32.4.5 32.4.6 32.4.7 32.5 32.5.1 32.5.2 32.5.3 32.5.4 32.6 32.6.1 32.6.2 32.6.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 LIN 数据寄存器(LBUF) .............................................................................................713 LIN 数据地址寄存器(LSEL) ......................................................................................713 LIN 帧 ID 寄存器(LID)...............................................................................................713 LIN 错误寄存器(LER) ................................................................................................713 LIN 中断使能寄存器(LIE) .........................................................................................714 LIN 状态寄存器(只读寄存器)(LSR) ....................................................................714 LIN 控制寄存器(只写寄存器)(LCR) ....................................................................714 LIN 波特率寄存器(DLL/DLH) ..................................................................................715 LIN 帧头延时计数寄存器(HDRL/HDRH) ................................................................715 LIN 帧头延时分频寄存器(HDP)................................................................................715 范例程序 ...........................................................................................................................716 LIN 总线主机收发范例 ...................................................................................................716 LIN 总线从机收发范例 ...................................................................................................720 使用串口模拟 LIN 总线范例 ..........................................................................................724 LIN 总线时序介绍 ...........................................................................................................729 32 位硬件乘除单元(MDU32) ....................................................................................732 相关的特殊功能寄存器 ...................................................................................................732 运算执行时间表 ...............................................................................................................732 MDU32 算术运算 .............................................................................................................733 32 位乘法 ..........................................................................................................................733 32 位无符号除法 ..............................................................................................................733 32 位有符号除法 ..............................................................................................................733 范例程序 ...........................................................................................................................734 单精度浮点运算器(FPMU) .......................................................................................737 FPMU 浮点运算器简介 ...................................................................................................737 相关的特殊功能寄存器 ...................................................................................................737 运算执行时间表 ...............................................................................................................737 FPMU 基本算术运算 .......................................................................................................739 浮点数加法(+) .............................................................................................................739 浮点数减法(-) ...........................................................................................................739 浮点数乘法(×) ...........................................................................................................739 浮点数除法(÷) ...........................................................................................................739 浮点数开方/平方根(sqrt) ............................................................................................740 浮点数比较(comp) ......................................................................................................740 浮点数检测(check) ......................................................................................................740 FPMU 三角函数 ...............................................................................................................742 正弦函数(sin) ..............................................................................................................742 余弦函数(cos) ..............................................................................................................742 正切函数(tan) ..............................................................................................................742 反正切函数(arctan) .....................................................................................................742 FPMU 数据转换操作 .......................................................................................................743 浮点数转 8 位整数(float → char) .............................................................................743 浮点数转 16 位整数(float → short) ..........................................................................743 浮点数转 32 位整数(float → long) ...........................................................................743 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xix - STC32G 系列技术手册 32.6.4 32.6.5 32.6.6 32.7 32.7.1 32.7.2 32.7.3 32.7.4 32.7.5 32.7.6 32.8 附录 A A.1 A.1.1 A.1.2 A.1.3 A.1.4 A.2 附录 B B.1 B.1.1 B.1.2 B.1.3 B.2 附录 C 附录 D 附录 E 附录 F 附录 G 附录 H 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 8 位整数转浮点数(char → float) ..............................................................................743 16 位整数转浮点数(short → float) ...........................................................................744 32 位整数转浮点数(long → float) ............................................................................744 FPMU 协处理器控制操作 ...............................................................................................745 初始化协处理器 ...............................................................................................................745 清除异常 ...........................................................................................................................745 读状态寄存器 ...................................................................................................................745 写状态寄存器 ...................................................................................................................745 读控制寄存器 ...................................................................................................................745 写控制寄存器 ...................................................................................................................745 范例程序 ...........................................................................................................................746 指令集 ...............................................................................................................................749 指令集简介 .......................................................................................................................749 BINARY 模式和 SOURCE 模式 .....................................................................................749 指令集标记 .......................................................................................................................749 指令表(功能排序) .......................................................................................................750 指令表(机器码排序) ...................................................................................................757 指令详解 ...........................................................................................................................761 逻辑代数的基础 ...............................................................................................................843 数制与编码 .......................................................................................................................843 数制转换 ...........................................................................................................................843 原码、反码及补码 ...........................................................................................................847 常用编码 ...........................................................................................................................847 几种常用的逻辑运算及其图形符号 ...............................................................................848 使用第三方 MCU 对 STC32G 系列单片机进行 ISP 下载范例程序 ..........................851 串口中断收发-MODBUS 协议 ....................................................................................858 关于回流焊前是否要烘烤 ...............................................................................................868 如何使用万用表检测芯片 I/O 口好坏 ...........................................................................869 电气特性 ...........................................................................................................................870 更新记录 ...........................................................................................................................872 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - xx - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 概述 1 STC32G 系列单片机是不需要外部晶振和外部复位的单片机,是以超强抗干扰/超低价/高速/低功耗 为目标的 32 位 8051 单片机,在相同的工作频率下,STC32G 系列单片机比传统的 8051 约快 70 倍。 STC32G 系列单片机是 STC 生产的单时钟(1T)的单片机,是宽电压/高速/高可靠/低功耗/强抗静电/ 较强抗干扰的新一代 32 位 8051 单片机,超级加密。 MCU 内部集成高精度 R/C 时钟(±0.3%,常温下+25℃),-1.38%~+1.42%温飘(-40℃~+85℃) , -0.88%~+1.05%温飘(-20℃~+65℃)。ISP 编程时 4MHz~33MHz 宽范围可设置,可彻底省掉外部昂贵的 晶振和外部复位电路(内部已集成高可靠复位电路,ISP 编程时 4 级复位门槛电压可选)。 MCU 内部有 4 个可选时钟源:内部高精度 IRC 时钟(可 ISP 编程时调整频率)、内部 32KHz 的低 速 IRC、外部 4M~33M 晶振或外部时钟信号以及内部 PLL 输出时钟。用户代码中可自由选择时钟源, 时钟源选定后可再经过 8-bit 的分频器分频后再将时钟信号提供给 CPU 和各个外设(如定时器、串口、 SPI 等)。 MCU 提供两种低功耗模式:IDLE 模式和 STOP 模式。IDLE 模式下,MCU 停止给 CPU 提供时钟, CPU 无时钟,CPU 停止执行指令,但所有的外设仍处于工作状态,此时功耗约为 1.3mA(6MHz 工作 频率)。STOP 模式即为主时钟停振模式,即传统的掉电模式/停电模式/停机模式,此时 CPU 和全部外 设都停止工作,功耗可降低到 1uA 以下。 MCU 提供了丰富的数字外设(4 个串口、5 个定时器、2 组针对三相电机控制能够输出互补/对称/ 带死区控制信号的 16 位高级 PWM 定时器以及 I2C、SPI、USB、CAN、LIN)接口与模拟外设(超高 速 12 位 ADC、比较器),可满足广大用户的设计需求。 STC32G 系列单片机有 268 条强大的指令,包含 32 位加减法指令和 16 位乘除法指令。硬件扩充了 32 位硬件乘除单元 MDU32(包含 32 位除以 32 位和 32 位乘以 32 位)。 STC32G 系列单片机内部集成了增强型的双数据指针。通过程序控制,可实现数据指针自动递增或 递减功能以及两组数据指针的自动切换功能。 ● ● STC32G8K64 系列 45 2 2 5 15CH*12B ● ● ● ● STC32F12K60 系列 45 2 2 5 15CH*12B ● ● ● ● 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 ● ● ● 2 ● ● ● ● ● ● 2 ● ● ● ● ● ● 2 ● ● ● ● ● ● 传真: 0513-5501 2926/2956/2947 -1- FPM ● 中 断 MDU32 ● 彩 屏 驱 动 I/O 15CH*12B DMA 5 RTC 2 LIN 2 CAN 60 USB STC32G12K128 系列 I2S I2C 比 较 器 SPI 高 级 PWM 定 时 器 ADC 同 步 串 口 USART 端 口 UART 产 品 线 异 步 串 口 ● STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 2 特性、价格及管脚 2.1 STC32G12K128-LQFP64/LQFP48/LQFP32/PDIP40 2.1.1 特性及价格  选型价格(不需要外部晶振、不需要外部复位,12 位 ADC,15 通道) 16 DMA 15 / 供 货 信 息 PDIP40 仿 真 LQFP32 本 支 持 直 身 接 就 下 可 载 在 线 下 和 仿 硬 载 件 真 LQFP48 可 设 置 下 次 更 新 程 序 需 口 令 LQFP64 程 序 加 密 后 传 输 ( 防 拦 截 ) USB D/A 可 对 外 输 出 时 钟 以 及 下 复 可 位 调 ) 追 频 支 持 硬 件 RS485 看 门 狗 复 位 定 时 器 内 部 高 精 准 时 钟 ( 36MHz A/D 8 内 部 低 压 检 测 中 断 并 可 掉 电 唤 醒 内 部 高 可 靠 复 位 ( 可 选 复 位 门 槛 电 压 ) 价 格 及 封 装 USB 1 PWM 32 USB ) 比 较 路 器 高 ( 速 可 当 掉 电 唤 ( 路 醒 专 路 , 用 可 定 作 时 器 可 外 当 部 掉 路 电 检 测 ) 使 用 ) ADC 8 PWM T0/T1/T2/T3/T4 MDU32 DMA I2C DMA SPI LIN 16 位 CAN 位 和 异 步 串 口 并 可 掉 电 唤 醒 定 时 器 计 数 位 器 高 ( 级 同 硬 全 定 步 件 速 时 并 并 异 器 总 可 可 位 步 总 线 线 互 掉 掉 串 外 电 电 乘 口 部 补 唤 唤 除 并 管 对 法 醒 醒 器 脚 称 可 掉 也 死 电 可 区 唤 掉 控 醒 电 制 唤 醒 ) / (8 实 时 模 时 块 钟 驱 动 DMA USART LCM RTC 接 口 DMA UART I/O INT0/INT1/INT2/INT3/INT4 口 均 支 持 中 断 并 可 掉 电 ) 唤 并 醒 可 掉 电 唤 醒 DMA 8080/6800 I/O I/O EEPROM 10 SRAM 字 节 中 断 所 ( 有 的 口 最 多 万 数 可 次 可 量 增 做 堆 可 可 字 栈 做 减 节 或 变 变 量 量 字 字 节 节 DPTR 万 次 内 部 内 扩 部 展 大 强 容 大 量 的 扩 双 展 DATA RAM 10 ) xdata edata Flash 工 作 电 压 ( V 单 片 机 型 号 程 序 存 储 器 传 统 STC32G12K64 1.9-5.5 64K 4K 8K 2 64K 60 有 有 有 有 2 2 2 有 有 有 有 有 5 8 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 √ √ √ √ STC32G12K128 1.9-5.5 128K 4K 8K 2 有 有 有 有 2 2 2 有 有 有 有 有 5 8 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 √ √ √ √ IAP 60  内核  超高速 32 位 8051 内核(1T),比传统 8051 约快 70 倍以上  49 个中断源,4 级中断优先级  支持在线仿真  工作电压  1.9V~5.5V(当工作温度低于-40℃时,工作电压不得低于 3.0V)  工作温度  -40℃~85℃(可使用内部高速 IRC(36MHz 或以下)和外部晶振)  -40℃~125℃(当温度高于 85℃时请使用外部耐高温晶振,且工作频率控制在 24MHz 以下)  Flash 存储器  最大 128K 字节 FLASH 程序存储器(ROM),用于存储用户代码  支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上  支持硬件 USB 直接下载和普通串口下载  支持硬件 SWD 实时仿真,P3.0/P3.1(需 STC-USB Link1 工具)  SRAM,共 12K 字节  4K 字节内部 SRAM(edata)  8K 字节内部扩展 RAM(内部 xdata) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -2- 2 月小 批量 4 月大 批量 STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190  使用注意:(强烈建议不要使用 idata 和 pdata 声明变量)  时钟控制  内部高精度 IRC(ISP 编程时可进行上下调整)  误差±0.3%(常温下 25℃)  -1.35%~+1.30%温漂(全温度范围,-40℃~85℃)  -0.76%~+0.98%温漂(温度范围,-20℃~65℃)  内部 32KHz 低速 IRC(误差较大)  外部晶振(4MHz~33MHz)和外部时钟,有专门的外部时钟干扰内部电路,可软件启动  内部 PLL 输出时钟(注:PLL 输出的 96MHz/144MHz 可独立作为高速 PWM 和高速 SPI 的时钟源) 用户可自由选择上面的 4 种时钟源  复位  硬件复位  上电复位,复位电压值为 1.7V~1.9V。(在芯片未使能低压复位功能时有效)  复位脚复位,出厂时 P5.4 默认为 I/O 口,ISP 下载时可将 P5.4 管脚设置为复位脚(注意:当设置 P5.4 管脚为复位脚时,复位电平为低电平)  看门狗溢出复位  低压检测复位,提供 4 级低压检测电压:2.0V、2.4V、2.7V、3.0V。  软件复位  软件方式写复位触发寄存器  中断  提供 49 个中断源:INT0、INT1、INT2、INT3、INT4、定时器 0、定时器 1、定时器 2、定时器 3、定时器 4、USART1、USART2、UART3、UART4、ADC 模数转换、LVD 低压检测、SPI、I2C、比较器、PWMA、 PWMB、USB、CAN、CAN2、LIN、LCMIF 彩屏接口中断、RTC 实时时钟、所有的 I/O 中断(8 组)、 串口 1 的 DMA 接收和发送中断、串口 2 的 DMA 接收和发送中断、串口 3 的 DMA 接收和发送中断、 串口 4 的 DMA 接收和发送中断、I2C 的 DMA 接收和发送中断、SPI 的 DMA 中断、ADC 的 DMA 中断、 LCD 驱动的 DMA 中断以及存储器到存储器的 DMA 中断。  提供 4 级中断优先级  数字外设  5 个 16 位定时器:定时器 0、定时器 1、定时器 2、定时器 3、定时器 4,其中定时器 0 的模式 3 具有 NMI (不可屏蔽中断)功能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式  2 个高速同步/异步串口:串口 1(USART1)、串口 2(USART2),波特率时钟源最快可为 FOSC/4。支持 同步串口模式、异步串口模式、SPI 模式、LIN 模式、红外模式(IrDA)、智能卡模式(ISO7816)  2 个高速异步串口:串口 3、串口 4,波特率时钟源最快可为 FOSC/4  2 组高级 PWM,可实现 8 通道(4 组互补对称)带死区的控制的 PWM,并支持外部异常检测功能  SPI:支持主机模式和从机模式以及主机/从机自动切换  I2C:支持主机模式和从机模式  ICE:硬件支持仿真  RTC:支持年、月、日、时、分、秒、次秒(1/128 秒),并支持时钟中断和一组闹钟  USB:USB2.0/USB1.1 兼容全速 USB,6 个双向端点,支持 4 种端点传输模式(控制传输、中断传输、批 量传输和同步传输),每个端点拥有 64 字节的缓冲区  CAN:两个独立的 CAN 2.0 控制单元  LIN:一个独立的 LIN 控制单元(支持 1.3 和 2.1 版本),另外 USART1 和 USART2 可支持两组 LIN  MDU32:硬件 32 位乘除法器(包含 32 位除以 32 位、32 位乘以 32 位)  I/O 口中断:所有的 I/O 均支持中断,每组 I/O 中断有独立的中断入口地址,所有的 I/O 中断可支持 4 种中 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -3- STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 断模式:高电平中断、低电平中断、上升沿中断、下降沿中断。I/O 口中断可以进行掉电唤醒,且有 4 级中断优先级。  LCD 驱动模块:支持 8080 和 6800 两种接口以及 8 位和 16 位数据宽度  DMA:支持 SPI 移位接收数据到存储器、SPI 移位发送存储器的数据、I2C 发送存储器的数据、I2C 接收数 据到存储器、串口 1/2/3/4 接收数据到的存储器、串口 1/2/3/4 发送存储器的数据、ADC 自动采样数据到 存储器(同时计算平均值)、LCD 驱动发送存储器的数据、以及存储器到存储器的数据复制  硬件数字 ID:支持 32 字节  模拟外设  ADC:超高速 ADC,支持 12 位高精度 15 通道(通道 0~通道 14)的模数转换,ADC 的通道 15 用于测试 内部参考电压(芯片在出厂时,内部参考电压调整为 1.19V,误差±1%)  比较器:一组比较器  GPIO  最多可达 60 个 GPIO:P0.0~P0.7、P1.0~ P1.7(无 P1.2)、P2.0~P2.7、P3.0~P3.7、P4.0~P4.7、P5.0~P5.4、 P6.0~P6.7、P7.0~P7.7  所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏输出模式、高阻输入模式  除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO 口时必须先设置 IO 口 模式  另外每个 I/O 均可独立使能内部 4K 上拉电阻  封装  LQFP64、LQDP48、LQFP32、PDIP40 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -4- STC32G 系列技术手册 技术支持: 19864585985 选型顾问: 13922805190 管脚图,最小系统 STC32G12K128 LQFP64 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 P5.0/RxD3_2/CMP+_2/CAN_RX_2 P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2 P3.1/TxD/D+ P3.0/RxD/D-/INT4 P6.7/PWM4N_3/S1SCLK_4 P6.6/PWM4P_3/S1MISO_4 P6.5/PWM3N_3/S1MOSI_4 P6.4/PWM3P_3/S1SS_4 P4.0/MOSI_3/S1MOSI_3/S2MOSI_3 GND/AGND/VREFVREF+ VCC/AVCC P5.4/RST/MCLKO/SS/SS_3/S1SS/S1SS_3/S2SS/S2SS_3/PWM2P/PWM6_2/ADC2/T2 UCAP LIN_TX_2/CAN2_TX_2/TxD4_2/P5.3 T3CLKO/ADC13/AD5/P0.5 PWMETI2_2/T4/ADC14/AD6/P0.6 T4CLKO/AD7/P0.7 PWM1P_3/P6.0 PWM1N_3/P6.1 PWM2P_3/P6.2 PWM2N_3/P6.3 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 LIN_TX_3/CAN2_TX_3/TxD2_2/P4.7 SDA/S2MISO/S1MISO/MISO/PWM3P/ADC4/P1.4 SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 S2MISO_2/S1MISO_2/MISO_2/SDA_2/PWM3P_2/A12/P2.4 S2SCLK_2/S1SCLK_2/SCLK_2/SCL_2/PWM3N_2/A13/P2.5 PWM4P_2/A14/P2.6 PWM4N_2/A15/P2.7 S2SS_4/PWM5_4/P7.4 S2MOSI_4/PWM6_4/P7.5 S2MISO_4/PWM7_4/P7.6 S2SCLK_4/PWM8_4/P7.7 CAN_TX_3/ALE/P4.5 LIN_RX_3/CAN2_RX_3/RxD2_2/P4.6 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TX/T4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 LIN_RX_2/CAN2_RX_2/RxD4_2/P5.2 注意: 1、除P3.0和P3.1外,其余所有I/O口上电后的状态均为高阻输入状态, 用户在使用I/O口时必须先设置I/O口模式 2、所有的I/O口均可以设置为准双向口模式、强推挽输出模式、开漏输 出模式或者高阻输入模式,另外每个I/O均可独立使能内部4K上拉电阻 3、当使能P5.4口为复位脚时,复位电平为低电平 4、ADC的外部参考电源管脚ADC_VRef+,一定不能浮空,必须接外部参考 电源或者直接连到Vcc 5、若不需要进行USB下载,芯片复位时P3.0/P3.1/P3.2不可同时为低电平 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P4.4/RD/TxD_4 P4.3/RxD_4/SCLK_3/S1SCLK_3/S2SCLK_3 P4.2/WR/CAN_RX_3 P4.1/MISO_3/S1MISO_3/S2MISO_3/CMPO_2/PWMETI_2 P7.3/CAN2_TX_4/LIN_TX_4/PWMETI_3 P7.2/CAN2_RX_4/LIN_RX_4 P7.1/CAN_TX_4 P7.0/CAN_RX_4 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT P5.1/TxD3_2/CMP+_3/CAN_TX_2 2.1.2 官方网站: www.STCMCUDATA.com 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -5- 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P4.4/RD/TxD_4 P4.3/RxD_4/SCLK_3/S1SCLK_3/S2SCLK_3 P4.2/WR/CAN_RX_3 P4.1/MISO_3/S1MISO_3/S2MISO_3/CMPO_2/PWMETI_2 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT/PWMFLT2 P5.1/TxD3_2/CAN_TX_2 STC32G 系列技术手册 选型顾问: 13922805190 36 35 34 33 32 31 30 29 28 27 26 25 注意: 1、除P3.0和P3.1外,其余所有I/O口上电后的状态均为高阻输入状态, 用户在使用I/O口时必须先设置I/O口模式 2、所有的I/O口均可以设置为准双向口模式、强推挽输出模式、开漏输 出模式或者高阻输入模式,另外每个I/O均可独立使能内部4K上拉电阻 3、当使能P5.4口为复位脚时,复位电平为低电平 4、ADC的外部参考电源管脚ADC_VRef+,一定不能浮空,必须接外部参考 电源或者直接连到Vcc 5、若不需要进行USB下载,芯片复位时P3.0/P3.1/P3.2不可同时为低电平 STC32G12K128 LQFP48 24 23 22 21 20 19 18 17 16 15 14 13 P5.0/RxD3_2/CAN_RX_2 P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2 P3.1/TxD/D+ P3.0/RxD/D-/INT4 P4.0/MOSI_3/S1MOSI_3/S2MOSI_3 Gnd/AGnd ADC_VRef+ Vcc/AVcc P5.4/RST/MCLKO/SS/SS_3/S1SS/S1SS_3/S2SS/S2SS_3/PWM2P/PWM6_2/ADC2/T2 UCap 1 2 3 4 5 6 7 8 9 10 11 12 37 38 39 40 41 42 43 44 45 46 47 48 LIN_TX_2/CAN_TX_2/TxD4_2/P5.3 T3CLKO/ADC13/AD5/P0.5 PWMETI2_2/T4/ADC14/AD6/P0.6 T4CLKO/AD7/P0.7 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 LIN_TX_3/CAN_TX_3/TxD2_2/P4.7 SDA/S2MISO/S1MISO/MISO/PWM3P/ADC4/P1.4 SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 S2MISO_2/S1MISO_2/MISO_2/SDA_2/PWM3P_2/A12/P2.4 S2SCLK_2/S1SCLK_2/SCLK_2/SCL_2/PWM3N_2/A13/P2.5 PWM4P_2/A14/P2.6 PWM4N_2/A15/P2.7 CAN_TX_3/ALE/P4.5 LIN_RX_3/CAN2_RX_3/RxD2_2/P4.6 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TXT4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 LIN_RX_2/CAN2_RX_2/RxD4_2/P5.2 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -6- 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT/PWMFLT2 P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO STC32G 系列技术手册 选型顾问: 13922805190 24 23 22 21 20 19 18 17 注意: 1、除P3.0和P3.1外,其余所有I/O口上电后的状态均为高阻输入状态, 用户在使用I/O口时必须先设置I/O口模式 2、所有的I/O口均可以设置为准双向口模式、强推挽输出模式、开漏输 出模式或者高阻输入模式,另外每个I/O均可独立使能内部4K上拉电阻 3、当使能P5.4口为复位脚时,复位电平为低电平 4、ADC的外部参考电源管脚ADC_VRef+,一定不能浮空,必须接外部参考 电源或者直接连到Vcc 5、若不需要进行USB下载,芯片复位时P3.0/P3.1/P3.2不可同时为低电平 25 16 26 15 27 14 28 STC32G12K128 13 LQFP32 29 12 30 11 31 10 32 9 P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2 P3.1/TxD/D+ P3.0/RxD/D-/INT4 Gnd/AGnd ADC_VRef+ Vcc/AVcc P5.4/RST/MCLKO/SS/SS_3/S1SS/S1SS_3/S2SS/S2SS_3/PWM2P/PWM6_2/ADC2/T2 1 2 3 4 5 6 7 8 S2MISO_2/S1MISO_2/MISO_2/SDA_2/PWM3P_2/A12/P2.4 S2SCLK_2/S1SCLK_2/SCLK_2/SCL_2/PWM3N_2/A13/P2.5 PWM4P_2/A14/P2.6 PWM4N_2/A15/P2.7 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TXT4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 SDA/S2MISO/S1MISO/MISO/PWM3P/ADC4/P1.4 SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 UCap MCU-VCC 22u 0.1u 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 深圳国芯人工智能有限公司 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 PDIP40 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TXT4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 PWMETI2_2/T4/ADC14/AD6/P0.6 T4CLKO/AD7/P0.7 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 SDA/S2MISO/S1MISO/MISO/PWM3P/ADC4/P1.4 SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 UCap T2/ADC2/PWM6_2/PWM2P/S2SS_3/S2SS/S1SS_3/S1SS/SS_3/SS/MCLKO/NRST/P5.4 0.1u Vcc/AVcc ADC_VRef+ Gnd/AGnd 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 国内分销商电话: 0513-5501 2928/2929/2966 P4.5/ALE/CAN_TX_3 P2.7/A15/PWM4N_2 P2.6/A14/PWM4P_2 P2.5/A13/PWM3N_2/SCL_2/SCLK_2/S1SCLK_2/S2SCLK_2 P2.4/A12/PWM3P_2/SDA_2/MISO_2/S1MISO_2/S2MISO_2 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P4.4/RD/TxD_4 P4.2/WR/CAN_RX_3 P4.1/MISO_3/S1MISO_3/S2MISO_3/CMPO_2/PWMETI_2 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT/PWMFLT2 P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2 P3.1/TxD/D+ P3.0/RxD/D-/INT4 传真: 0513-5501 2926/2956/2947 -7- STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 1 2 3 4 LQFP48 LQFP32 1 2 6 3 7 4 8 6 7 8 10 5 6 1 2 深圳国芯人工智能有限公司 名称 类 型 P5.3 I/O TxD4_2 O 串口 4 的发送脚 CAN2_TX_2 O CAN2 总线发送脚 LIN_TX_2 O LIN 总线发送脚 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 外部时钟输入 PWMFLT2_2 I 增强 PWM 的外部异常检测脚 P0.7 I/O 标准 IO 口 AD7 I 地址总线 T4CLKO O 定时器 4 时钟分频输出 P6.0 I/O 标准 IO 口 PWM1P_3 I/O PWM1 的捕获输入和脉冲输出正极 P6.1 I/O 标准 IO 口 PWM1N_3 I/O PWM1 的捕获输入和脉冲输出负极 P6.2 I/O 标准 IO 口 PWM2P_3 I/O PWM2 的捕获输入和脉冲输出正极 P6.3 I/O 标准 IO 口 PWM2N_3 I/O PWM2 的捕获输入和脉冲输出负极 P1.0 I/O 标准 IO 口 ADC0 I PWM1P I/O RxD2 I P1.1 I/O ADC1 I PWM1N I/O TxD2 I PDIP40 5 9 选型顾问: 13922805190 管脚说明 2.1.3 LQFP64 技术支持: 19864585985 9 10 说明 标准 IO 口 ADC 模拟输入通道 0 PWM1 的捕获输入和脉冲输出正极 串口 2 的接收脚 标准 IO 口 ADC 模拟输入通道 1 PWM1 的捕获输入和脉冲输出负极 串口 2 的发送脚 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -8- STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP64 11 12 13 14 15 16 17 LQFP48 LQFP32 8 9 10 11 12 13 3 4 5 6 7 8 深圳国芯人工智能有限公司 11 12 13 14 15 16 选型顾问: 13922805190 名称 类 型 P4.7 I/O TxD2_2 I 串口 2 的发送脚 CAN2_TX_3 O CAN2 总线发送脚 LIN_TX_3 O LIN 总线发送脚 P1.4 I/O ADC4 I PWM3P I/O PWM3 的捕获输入和脉冲输出正极 MISO I/O SPI 主机输入从机输出 S1MISO I/O USART1-SPI 主机输入从机输出 S2MISO I/O USART2-SPI 主机输入从机输出 SDA I/O I2C 接口的数据线 P1.5 I/O 标准 IO 口 ADC5 I PWM3N I/O PWM3 的捕获输入和脉冲输出负极 SCLK I/O SPI 的时钟脚 S1SCLK I/O USART1-SPI 的时钟脚 S2SCLK I/O USART2-SPI 的时钟脚 SCL I/O I2C 的时钟线 P1.6 I/O 标准 IO 口 ADC6 I ADC 模拟输入通道 6 RxD_3 I 串口 1 的接收脚 PWM4P I/O MCLKO_2 O 主时钟分频输出 XTALO O 外部晶振的输出脚 P1.7 I/O ADC7 I ADC 模拟输入通道 7 TxD_3 O 串口 1 的发送脚 PWM4N I/O PWM4 的捕获输入和脉冲输出负极 PWM5_2 I/O PWM5 的捕获输入和脉冲输出 XTALI I P1.3 I/O ADC3 I ADC 模拟输入通道 3 MOSI I/O SPI 主机输出从机输入 S1MOSI I/O USART1-SPI 主机输出从机输入 S2MOSI I/O USART2-SPI 主机输出从机输入 PWM2N I/O PWM2 的捕获输入和脉冲输出负极 T2CLKO O 定时器 2 时钟分频输出 UCAP I USB 内核电源稳压脚 PDIP40 7 技术支持: 19864585985 说明 标准 IO 口 标准 IO 口 ADC 模拟输入通道 4 ADC 模拟输入通道 5 PWM4 的捕获输入和脉冲输出正极 标准 IO 口 外部晶振/外部时钟的输入脚 标准 IO 口 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 -9- STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP64 18 LQFP48 14 LQFP32 9 17 15 10 18 20 16 11 19 22 17 12 20 18 23 24 25 26 27 19 13 深圳国芯人工智能有限公司 选型顾问: 13922805190 名称 类型 说明 P5.4 I/O 标准 IO 口 RST I 复位引脚 MCLKO O 主时钟分频输出 SS_3 I SPI 的从机选择脚(主机为输出) SS I SPI 的从机选择脚(主机为输出) S1SS_3 I USART1-SPI 的从机选择脚(主机为输出) S1SS I USART1-SPI 的从机选择脚(主机为输出) S2SS_3 I USART2-SPI 的从机选择脚(主机为输出) S2SS I USART2-SPI 的从机选择脚(主机为输出) PWM2P I/O PWM2 的捕获输入和脉冲输出正极 PWM6_2 I/O PWM6 的捕获输入和脉冲输出 T2 I 定时器 2 外部时钟输入 ADC2 I ADC 模拟输入通道 2 Vcc VCC 电源脚 AVcc VCC ADC 电源脚 Vref+ I Gnd GND 地线 Agnd GND ADC 地线 Vref- I P4.0 I/O 标准 IO 口 MOSI_3 I/O SPI 主机输出从机输入 S1MOSI_3 I/O USART1-SPI 主机输出从机输入 S2MOSI_3 I/O USART2-SPI 主机输出从机输入 P6.4 I/O 标准 IO 口 PWM3P_3 I/O PWM3 的捕获输入和脉冲输出正极 S1SS_4 I P6.5 I/O 标准 IO 口 PWM3N_3 I/O PWM3 的捕获输入和脉冲输出负极 S1MOSI_4 I/O USART1-SPI 主机输出从机输入 P6.6 I/O 标准 IO 口 PWM4P_3 I/O PWM4 的捕获输入和脉冲输出正极 S1MISO_4 I/O USART1-SPI 主机输入从机输出 P6.7 I/O 标准 IO 口 PWM4N_3 I/O PWM4 的捕获输入和脉冲输出负极 S1SCLK_4 I/O USART1-SPI 的时钟脚 P3.0 I/O 标准 IO 口 D- I/O USB 数据口 RxD I 串口 1 的接收脚 INT4 I 外部中断 4 PDIP40 19 21 技术支持: 19864585985 21 ADC 的参考电压脚 ADC 的参考电压地线 USART1-SPI 的从机选择脚(主机为输出) 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 10 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP64 28 29 30 31 32 33 34 35 LQFP48 20 21 22 23 LQFP32 14 15 16 17 23 24 25 24 25 26 27 18 19 深圳国芯人工智能有限公司 26 27 选型顾问: 13922805190 名称 类 型 P3.1 I/O 标准 IO 口 D+ I/O USB 数据口 TxD O P3.2 I/O 标准 IO 口 INT0 I 外部中断 0 SCLK_4 I/O SPI 的时钟脚 SCL_4 I/O I2C 的时钟线 PWMETI I PWM 外部触发输入脚 PWMETI2 I PWM 外部触发输入脚 2 P3.3 I/O 标准 IO 口 INT1 I 外部中断 1 MISO_4 I/O SPI 主机输入从机输出 SDA_4 I/O I2C 接口的数据线 PWM4N_4 I/O PWM4 的捕获输入和脉冲输出负极 PWM7_2 I/O PWM7 的捕获输入和脉冲输出 P3.4 I/O 标准 IO 口 T0 I 定时器 0 外部时钟输入 T1CLKO O 定时器 1 时钟分频输出 MOSI_4 I/O SPI 主机输出从机输入 PWM4P_4 I/O PWM4 的捕获输入和脉冲输出正极 PWM8_2 I/O PWM8 的捕获输入和脉冲输出 CMPO O 比较器输出 P5.0 I/O 标准 IO 口 RxD3_2 I 串口 3 的接收脚 CMP+_2 I 比较器正极输入 CAN_RX_2 I CAN 总线接收脚 P5.1 I/O TxD3_2 O 串口 3 的发送脚 CMP+_3 I 比较器正极输入 CAN_TX_2 O CAN 总线发送脚 P3.5 I/O T1 I 定时器 1 外部时钟输入 T0CLKO O 定时器 0 时钟分频输出 SS_4 I SPI 的从机选择脚(主机为输出) PWMFLT I 增强 PWM 的外部异常检测脚 P3.6 I/O 标准 IO 口 INT2 I 外部中断 2 RxD_2 I 串口 1 的接收脚 CMP- I 比较器负极输入 PDIP40 22 技术支持: 19864585985 说明 串口 1 的发送脚 标准 IO 口 标准 IO 口 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 11 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP64 36 LQFP48 28 LQFP32 20 37 38 39 40 41 42 43 44 45 29 29 30 30 31 32 33 31 21 深圳国芯人工智能有限公司 32 选型顾问: 13922805190 名称 类 型 P3.7 I/O 标准 IO 口 INT3 I 外部中断 3 TxD_2 O 串口 1 的发送脚 CMP+ I 比较器正极输入 P7.0 I/O CAN_RX_4 I P7.1 I/O CAN_TX_4 O P7.2 I/O CAN2_RX_4 I CAN2 总线接收脚 LIN_RX_4 I LIN 总线接收脚 P7.3 I/O CAN2_TX_4 O CAN2 总线发送脚 LIN_TX_4 O LIN 总线发送脚 PWMETI_3 I PWM 外部触发输入脚 P4.1 I/O 标准 IO 口 MISO_3 I/O SPI 主机输入从机输出 S1MISO_3 I/O USART1-SPI 主机输入从机输出 S2MISO_3 I/O USART2-SPI 主机输入从机输出 CMPO_2 O 比较器输出 PWMETI_3 I PWM 外部触发输入脚 P4.2 I/O WR O 外部总线的写信号线 CAN_RX_3 I CAN 总线接收脚 P4.3 I/O RxD_4 I SCLK_3 I/O SPI 的时钟脚 S1SCLK_3 I/O USART1-SPI 的时钟脚 S2SCLK_3 I/O USART2-SPI 的时钟脚 P4.4 I/O 标准 IO 口 RD O 外部总线的读信号线 TxD_4 O 串口 1 的发送脚 P2.0 I/O 标准 IO 口 A8 I 地址总线 PWM1P_2 I/O PWM1 的捕获输入和脉冲输出正极 PWM5 I/O PWM5 的捕获输入和脉冲输出 PDIP40 28 技术支持: 19864585985 说明 标准 IO 口 CAN 总线接收脚 标准 IO 口 CAN 总线发送脚 标准 IO 口 标准 IO 口 标准 IO 口 标准 IO 口 串口 1 的接收脚 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 12 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP64 46 47 48 49 50 51 LQFP48 34 35 36 37 38 39 LQFP32 22 23 24 25 26 27 深圳国芯人工智能有限公司 34 356 36 37 38 选型顾问: 13922805190 名称 类 型 P2.1 I/O 标准 IO 口 A9 I 地址总线 PWM1N_2 I/O PWM1 的捕获输入和脉冲输出负极 PWM6 I/O PWM6 的捕获输入和脉冲输出 P2.2 I/O 标准 IO 口 A10 I 地址总线 SS_2 I SPI 的从机选择脚(主机为输出) S1SS_2 I USART1-SPI 的从机选择脚(主机为输出) S2SS_2 I USART2-SPI 的从机选择脚(主机为输出) PWM2P_2 I/O PWM2 的捕获输入和脉冲输出正极 PWM7 I/O PWM7 的捕获输入和脉冲输出 P2.3 I/O 标准 IO 口 A11 I 地址总线 MOSI_2 I/O SPI 主机输出从机输入 S1MOSI_2 I/O USART1-SPI 主机输出从机输入 S2MOSI_2 I/O USART2-SPI 主机输出从机输入 PWM2N_2 I/O PWM2 的捕获输入和脉冲输出负极 PWM8 I/O PWM8 的捕获输入和脉冲输出 P2.4 I/O 标准 IO 口 A12 I 地址总线 MISO_2 I/O SPI 主机输入从机输出 S1MISO_2 I/O USART1-SPI 主机输入从机输出 S2MISO_2 I/O USART2-SPI 主机输入从机输出 SDA_2 I/O I2C 接口的数据线 PWM3P_2 I/O PWM3 的捕获输入和脉冲输出正极 P2.5 I/O 标准 IO 口 A13 I 地址总线 SCLK_2 I/O SPI 的时钟脚 S1SCLK_2 I/O USART1-SPI 的时钟脚 S2SCLK_2 I/O USART2-SPI 的时钟脚 SCL_2 I/O I2C 的时钟线 PWM3N_2 I/O PWM3 的捕获输入和脉冲输出负极 P2.6 I/O 标准 IO 口 A14 I 地址总线 PWM4P_2 I/O PDIP40 33 技术支持: 19864585985 说明 PWM4 的捕获输入和脉冲输出正极 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 13 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP64 52 LQFP48 40 LQFP32 28 39 54 55 56 58 59 41 40 42 43 29 深圳国芯人工智能有限公司 选型顾问: 13922805190 名称 类型 说明 P2.7 I/O 标准 IO 口 A15 I 地址总线 PWM4N_2 I/O PWM4 的捕获输入和脉冲输出负极 P7.4 I/O 标准 IO 口 PWM5_4 I/O PWM5 的捕获输入和脉冲输出 S2SS_4 I P7.5 I/O 标准 IO 口 PWM6_4 I/O PWM6 的捕获输入和脉冲输出 S2MOSI_4 I/O USART2-SPI 从机输入主机输出 P7.6 I/O 标准 IO 口 PWM7_4 I/O PWM7 的捕获输入和脉冲输出 S2MISO_4 I/O USART2-SPI 主机输入从机输出 P7.7 I/O 标准 IO 口 PWM8_4 I/O PWM8 的捕获输入和脉冲输出 S2SCLK_4 I/O USART2-SPI 的时钟脚 P4.5 I/O 标准 IO 口 ALE O 地址锁存信号 CAN_TX_3 O CAN 总线发送脚 P4.6 I/O RxD2_2 I 串口 2 的接收脚 CAN2_RX_3 I CAN2 总线接收脚 LIN_RX_3 I LIN 总线接收脚 P0.0 I/O 标准 IO 口 AD0 I 地址总线 ADC8 I ADC 模拟输入通道 8 RxD3 I 串口 3 的接收脚 PWM5_3 I/O CAN_RX I PDIP40 53 57 技术支持: 19864585985 1 USART2-SPI 的从机选择脚(主机为输出) 标准 IO 口 PWM5 的捕获输入和脉冲输出 CAN 总线接收脚 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 14 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP64 60 61 62 63 64 LQFP48 44 45 46 LQFP32 30 31 32 47 48 深圳国芯人工智能有限公司 技术支持: 19864585985 名称 类型 P0.1 I/O 标准 IO 口 AD1 I 地址总线 ADC9 I ADC 模拟输入通道 9 TxD3 O 串口 3 的发送脚 PWM6_3 I/O CAN_TX O P0.2 I/O 标准 IO 口 AD2 I 地址总线 ADC10 I ADC 模拟输入通道 10 RxD4 I 串口 4 的接收脚 PWM7_3 I/O CAN2_RX I CAN2 总线接收脚 LIN_RX I LIN 总线接收脚 P0.3 I/O 标准 IO 口 AD3 I 地址总线 ADC11 I ADC 模拟输入通道 11 TxD4 O 串口 4 的发送脚 PWM8_3 I/O CAN2_TX O CAN2 总线发送脚 LIN_TX O LIN 总线发送脚 P0.4 I/O 标准 IO 口 AD4 I 地址总线 ADC12 I ADC 模拟输入通道 12 T3 I 定时器 3 外部时钟输入 P5.2 I/O RxD4_2 I 串口 4 的接收脚 CAN2_RX_2 I CAN2 总线接收脚 LIN_RX_2 I LIN 总线接收脚 选型顾问: 13922805190 说明 PDIP40 2 3 4 5 PWM6 的捕获输入和脉冲输出 CAN 总线发送脚 PWM7 的捕获输入和脉冲输出 PWM8 的捕获输入和脉冲输出 标准 IO 口 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 15 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 2.2 STC32G8K64-LQFP48/LQFP32/PDIP40 2.2.1 特性及价格  选型顾问: 13922805190 选型价格(不需要外部晶振、不需要外部复位,12 位 ADC,15 通道) QFN48 LQFP32 PDIP40 有 有 有 2 2 2 有 有 有 有 5 8 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥4 √ √ √ STC32G8K64 1.9-5.5 64K 2K 6K 2 IAP 45 有 有 有 有 2 2 2 有 有 有 有 5 8 有 12 位 有 有 有 4级 有 是 有 是 是 是 是 ¥4 √ √ √ A/D 8 (8 16 D/A 可 对 外 输 出 时 钟 以 及 下 复 可 位 调 ) 追 频 本 身 就 可 在 线 下 仿 载 直 真 接 下 载 USB PWM 32 LCM DPTR SRAM V 10 )  位 1 有 位 和 异 步 串 口 并 可 掉 电 唤 醒 同 硬 定 步 件 时 并 异 器 总 并 步 总 线 可 可 位 掉 掉 乘 外 互 串 线 电 电 除 部 补 口 唤 唤 法 管 对 并 醒 醒 器 脚 称 可 掉 也 死 电 可 区 唤 掉 控 醒 电 制 唤 醒 ) ADC 8 45 实 时 模 时 块 钟 驱 动 PWM 48K 字 节 接 口 T0/T1/T2/T3/T4 2 万 次 口 均 支 持 中 断 并 可 掉 电 ) 唤 并 醒 可 掉 电 唤 醒 RTC 6K ) 口 最 多 万 数 可 次 可 量 增 做 堆 可 可 字 栈 做 减 节 或 变 变 量 量 字 字 节 节 I/O 2K 工 作 电 压 ( I/O STC32G6K48 1.9-5.5 48K 单 片 机 型 号 程 序 存 储 器 DATA RAM LQFP48 可 设 置 下 次 更 新 程 序 需 口 令 RS485 支 持 软 支 件 持 模 拟 程 序 加 密 后 传 输 ( 防 拦 截 ) DMA I2C 看 门 狗 复 位 定 时 器 LIN MDU32 内 部 高 精 准 时 钟 ( 内 部 高 可 靠 复 位 ( 可 选 复 位 门 槛 电 压 ) DMA SPI 内 部 低 压 检 测 中 断 并 可 掉 电 唤 醒 价 格 及 封 装 / 比 较 路 器 高 ( 速 可 当 掉 电 唤 ( 路 醒 专 路 , 用 可 定 作 时 器 可 外 当 部 掉 路 电 检 测 ) 使 用 ) 36Hz 16 DMA 15 / 定 时 器 计 数 位 器 高 ( 级 CAN DMA UART DMA USART 中 断 所 ( 有 的 INT0/INT1/INT2/INT3/INT4 EEPROM 10 Flash 内 部 内 扩 部 展 大 强 容 大 量 的 扩 双 展 DMA 8080/6800 I/O xdata edata 传 统 内核  超高速 32 位 8051 内核(1T),比传统 8051 约快 70 倍以上  48 个中断源,4 级中断优先级  支持在线仿真  工作电压  1.9V~5.5V(当工作温度低于-40℃时,工作电压不得低于 3.0V)  工作温度  -40℃~85℃(可使用内部高速 IRC(36MHz 或以下)和外部晶振)  -40℃~125℃(当温度高于 85℃时请使用外部耐高温晶振,且工作频率控制在 24MHz 以下)  Flash 存储器  最大 64K 字节 FLASH 程序存储器(ROM),用于存储用户代码  支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上  支持硬件 USB 直接下载和普通串口下载  支持硬件 SWD 实时仿真,P3.0/P3.1(需 STC-USB Link1 工具)  SRAM,共 6K 字节  2K 字节内部 SRAM(edata)  6K 字节内部扩展 RAM(内部 xdata)  使用注意:(强烈建议不要使用 idata 和 pdata 声明变量)  时钟控制 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 16 - 供 货 信 息 4月 送样 STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190  内部高精度 IRC(ISP 编程时可进行上下调整)  误差±0.3%(常温下 25℃)  -1.35%~+1.30%温漂(全温度范围,-40℃~85℃)  -0.76%~+0.98%温漂(温度范围,-20℃~65℃)  内部 32KHz 低速 IRC(误差较大)  外部晶振(4MHz~33MHz)和外部时钟  内部 PLL 输出时钟(注:PLL 输出的 96MHz/144MHz 可独立作为高速 PWM 和高速 SPI 的时钟源) 用户可自由选择上面的 4 种时钟源  复位  硬件复位  上电复位,复位电压值为 1.7V~1.9V。(在芯片未使能低压复位功能时有效)  复位脚复位,出厂时 P5.4 默认为 I/O 口,ISP 下载时可将 P5.4 管脚设置为复位脚(注意:当设置 P5.4 管脚为复位脚时,复位电平为低电平)  看门狗溢出复位  低压检测复位,提供 4 级低压检测电压:2.0V、2.4V、2.7V、3.0V。  软件复位  软件方式写复位触发寄存器  中断  提供 48 个中断源:INT0、INT1、INT2、INT3、INT4、定时器 0、定时器 1、定时器 2、定时器 3、定时器 4、USART1、USART2、UART3、UART4、ADC 模数转换、LVD 低压检测、SPI、I2C、比较器、PWMA、 PWMB、CAN、CAN2、LIN、LCMIF 彩屏接口中断、RTC 实时时钟、所有的 I/O 中断(8 组)、串口 1 的 DMA 接收和发送中断、串口 2 的 DMA 接收和发送中断、串口 3 的 DMA 接收和发送中断、串口 4 的 DMA 接收和发送中断、I2C 的 DMA 接收和发送中断、SPI 的 DMA 中断、ADC 的 DMA 中断、LCD 驱动的 DMA 中断以及存储器到存储器的 DMA 中断。  提供 4 级中断优先级  数字外设  5 个 16 位定时器:定时器 0、定时器 1、定时器 2、定时器 3、定时器 4,其中定时器 0 的模式 3 具有 NMI (不可屏蔽中断)功能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式  2 个高速同步/异步串口:串口 1(USART1)、串口 2(USART2),波特率时钟源最快可为 FOSC/4。支持 同步串口模式、异步串口模式、SPI 模式、LIN 模式、红外模式(IrDA)、智能卡模式(ISO7816)  2 个高速异步串口:串口 3、串口 4,波特率时钟源最快可为 FOSC/4  2 组高级 PWM,可实现 8 通道(4 组互补对称)带死区的控制的 PWM,并支持外部异常检测功能  SPI:支持主机模式和从机模式以及主机/从机自动切换  I2C:支持主机模式和从机模式  ICE:硬件支持仿真  RTC:支持年、月、日、时、分、秒、次秒(1/128 秒),并支持时钟中断和一组闹钟  CAN:两个独立的 CAN 2.0 控制单元  LIN:一个独立 LIN 控制单元(支持 1.3 和 2.1 版本),USART1 和 USART2 可支持两组 LIN  MDU32:硬件 32 位乘除法器(包含 32 位除以 32 位、32 位乘以 32 位)  I/O 口中断:所有的 I/O 均支持中断,每组 I/O 中断有独立的中断入口地址,所有的 I/O 中断可支持 4 种中 断模式:高电平中断、低电平中断、上升沿中断、下降沿中断。I/O 口中断可以进行掉电唤醒,且有 4 级中断优先级。  LCD 驱动模块:支持 8080 和 6800 两种接口以及 8 位和 16 位数据宽度  DMA:支持 SPI 移位接收数据到存储器、SPI 移位发送存储器的数据、I2C 发送存储器的数据、I2C 接收数 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 17 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 据到存储器、串口 1/2/3/4 接收数据到的存储器、串口 1/2/3/4 发送存储器的数据、ADC 自动采样数据到 存储器(同时计算平均值)、LCD 驱动发送存储器的数据、以及存储器到存储器的数据复制  硬件数字 ID:支持 32 字节  模拟外设  ADC:超高速 ADC,支持 12 位高精度 15 通道(通道 0~通道 14)的模数转换,ADC 的通道 15 用于测试 内部参考电压(芯片在出厂时,内部参考电压调整为 1.19V,误差±1%)  比较器:一组比较器  GPIO  最多可达 45 个 GPIO:P0.0~P0.7、P1.0~ P1.7、P2.0~P2.7、P3.0~P3.7、P4.0~P4.7、P5.0~P5.4  所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏输出模式、高阻输入模式  除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO 口时必须先设置 IO 口 模式  另外每个 I/O 均可独立使能内部 4K 上拉电阻  封装  LQFP48、LQFP32、PDIP40 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 18 - STC32G 系列技术手册 技术支持: 19864585985 选型顾问: 13922805190 管脚图,最小系统 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P4.4/RD/TxD_4 P4.3/RxD_4/SCLK_3/S1SCLK_3/S2SCLK_3 P4.2/WR/CAN_RX_3 P4.1/MISO_3/S1MISO_3/S2MISO_3/CMPO_2/PWMETI_2 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT/PWMFLT2 P5.1/TxD3_2/CAN_TX_2 2.2.2 官方网站: www.STCMCUDATA.com 36 35 34 33 32 31 30 29 28 27 26 25 注意: 1、除P3.0和P3.1外,其余所有I/O口上电后的状态均为高阻输入 状态,用户在使用I/O口时必须先设置I/O口模式 2、所有的I/O口均可以设置为准双向口模式、强推挽输出模式、 开漏输出模式或者高阻输入模式,另外每个I/O均可独立使能 内部4K上拉电阻 3、当使能P5.4口为复位脚时,复位电平为低电平 4、ADC的外部参考电源管脚ADC_VRef+,一定不能浮空,必须接外 部参考电源或者直接连到Vcc 5、若不需要进行USB下载,芯片复位时P3.0/P3.1/P3.2不可同时 为低电平 STC32G6K64 LQFP48 24 23 22 21 20 19 18 17 16 15 14 13 P5.0/RxD3_2/CAN_RX_2 P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2 P3.1/TxD P3.0/RxD/INT4 P4.0/MOSI_3/S1MOSI_3/S2MOSI_3 Gnd/AGnd ADC_VRef+ Vcc/AVcc P5.4/RST/MCLKO/SS_3/S1SS_3/S2SS_3/PWM6_2 P1.2/ADC2/PWM2P/SS/S1SS/S2SS/T2 1 2 3 4 5 6 7 8 9 10 11 12 37 38 39 40 41 42 43 44 45 46 47 48 LIN_TX_2/CAN_TX_2/TxD4_2/P5.3 T3CLKO/ADC13/AD5/P0.5 PWMETI2_2/T4/ADC14/AD6/P0.6 T4CLKO/AD7/P0.7 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 LIN_TX_3/CAN_TX_3/TxD2_2/P4.7 SDA/S2MISO/S1MISO/MISO/PWM3P/ADC4/P1.4 SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 S2MISO_2/S1MISO_2/MISO_2/SDA_2/PWM3P_2/A12/P2.4 S2SCLK_2/S1SCLK_2/SCLK_2/SCL_2/PWM3N_2/A13/P2.5 PWM4P_2/A14/P2.6 PWM4N_2/A15/P2.7 CAN_TX_3/ALE/P4.5 LIN_RX_3/CAN2_RX_3/RxD2_2/P4.6 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TXT4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 LIN_RX_2/CAN2_RX_2/RxD4_2/P5.2 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 19 - 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 注意: 1、除P3.0和P3.1外,其余所有I/O口上电后的状态均为高阻输入状态, 用户在使用I/O口时必须先设置I/O口模式 2、所有的I/O口均可以设置为准双向口模式、强推挽输出模式、开漏输 出模式或者高阻输入模式,另外每个I/O均可独立使能内部4K上拉电阻 3、当使能P5.4口为复位脚时,复位电平为低电平 4、ADC的外部参考电源管脚ADC_VRef+,一定不能浮空,必须接外部参考 电源或者直接连到Vcc 5、若不需要进行USB下载,芯片复位时P3.0/P3.1/P3.2不可同时为低电平 24 23 22 21 20 19 18 17 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT/PWMFLT2 P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO STC32G 系列技术手册 25 26 27 28 STC32G6K64 LQFP32 29 30 31 32 16 15 14 13 12 11 10 9 P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2 P3.1/TxD P3.0/RxD/INT4 Gnd/AGnd ADC_VRef+ Vcc/AVcc P5.4/RST/MCLKO/SS_3/S1SS_3/S2SS_3/PWM6_2 1 2 3 4 5 6 7 8 S2MISO_2/S1MISO_2/MISO_2/SDA_2/PWM3P_2/A12/P2.4 S2SCLK_2/S1SCLK_2/SCLK_2/SCL_2/PWM3N_2/A13/P2.5 PWM4P_2/A14/P2.6 PWM4N_2/A15/P2.7 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TXT4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 SDA/S2MISO/S1MISO/MISO/PWM3P/ADC4/P1.4 SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 T2/S2SS/S1SS/SS/PWM2P/ADC2/P1.2 MCU-VCC 22u 0.1u 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 深圳国芯人工智能有限公司 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 PDIP40 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TXT4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 PWMETI2_2/T4/ADC14/AD6/P0.6 T4CLKO/AD7/P0.7 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 SDA/S2MISO/S2MISO/MISO/PWM3P/ADC4/P1.4 SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 T2/ADC2/PWM2P/S2SS/S1SS/SS/P1.2 PWM6_2/S2SS_3/S1SS_3/SS_3/MCLKO/NRST/P5.4 Vcc/AVcc ADC_VRef+ Gnd/AGnd 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 P4.5/ALE/CAN_TX_3 P2.7/A15/PWM4N_2 P2.6/A14/PWM4P_2 P2.5/A13/PWM3N_2/SCL_2/SCLK_2/S1SCLK_2/S2SCLK_2 P2.4/A12/PWM3P_2/SDA_2/MISO_2/S1MISO_2/S2MISO_2 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P4.4/RD/TxD_4 P4.2/WR/CAN_RX_3 P4.1/MISO_3/S1MISO_3/S2MISO_3/CMPO_2/PWMETI_2 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT/PWMFLT2 P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2 P3.1/TxD P3.0/RxD/INT4 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 20 - STC32G 系列技术手册 2.2.3 官方网站: www.STCMCUDATA.com LQFP32 2 6 3 7 4 6 8 1 2 9 10 7 8 3 名称 类型 说明 P5.3 I/O TxD4_2 O 串口 4 的发送脚 CAN2_TX_2 O CAN2 总线发送脚 LIN_TX_2 O LIN 总线发送脚 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 外部时钟输入 PWMFLT2_2 I 增强 PWM 的外部异常检测脚 P0.7 I/O 标准 IO 口 AD7 I 地址总线 T4CLKO O 定时器 4 时钟分频输出 P1.0 I/O ADC0 I PWM1P I/O RxD2 I P1.1 I/O ADC1 I PWM1N I/O TxD2 I P4.7 I/O TxD2_2 I 串口 2 的发送脚 CAN2_TX_3 O CAN2 总线发送脚 LIN_TX_3 O LIN 总线发送脚 P1.4 I/O ADC4 I PWM3P I/O PWM3 的捕获输入和脉冲输出正极 MISO I/O SPI 主机输入从机输出 S1MISO I/O USART1-SPI 主机输入从机输出 S2MISO I/O USART2-SPI 主机输入从机输出 SDA I/O I2C 接口的数据线 PDIP40 1 5 选型顾问: 13922805190 管脚说明 编号 LQFP48 技术支持: 19864585985 11 深圳国芯人工智能有限公司 标准 IO 口 标准 IO 口 ADC 模拟输入通道 0 PWM1 的捕获输入和脉冲输出正极 串口 2 的接收脚 标准 IO 口 ADC 模拟输入通道 1 PWM1 的捕获输入和脉冲输出负极 串口 2 的发送脚 标准 IO 口 标准 IO 口 ADC 模拟输入通道 4 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 21 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 9 10 11 12 13 LQFP32 4 5 6 7 8 技术支持: 19864585985 选型顾问: 13922805190 名称 类型 说明 P1.5 I/O ADC5 I PWM3N I/O PWM3 的捕获输入和脉冲输出负极 SCLK I/O SPI 的时钟脚 S1SCLK I/O USART1-SPI 的时钟脚 S2SCLK I/O USART2-SPI 的时钟脚 SCL I/O I2C 的时钟线 P1.6 I/O 标准 IO 口 ADC6 I ADC 模拟输入通道 6 RxD_3 I 串口 1 的接收脚 PWM4P I/O MCLKO_2 O 主时钟分频输出 XTALO O 外部晶振的输出脚 P1.7 I/O ADC7 I ADC 模拟输入通道 7 TxD_3 O 串口 1 的发送脚 PWM4N I/O PWM4 的捕获输入和脉冲输出负极 PWM5_2 I/O PWM5 的捕获输入和脉冲输出 XTALI I P1.3 I/O ADC3 I ADC 模拟输入通道 3 MOSI I/O SPI 主机输出从机输入 S1MOSI I/O USART1-SPI 主机输出从机输入 S2MOSI I/O USART2-SPI 主机输出从机输入 PWM2N I/O PWM2 的捕获输入和脉冲输出负极 T2CLKO O P1.2 I/O ADC2 I PWM2P I/O PWM2 的捕获输入和脉冲输出正极 SS I SPI 的从机选择脚(主机为输出) S1SS I USART1-SPI 的从机选择脚(主机为输出) S2SS I USART2-SPI 的从机选择脚(主机为输出) T2 I 定时器 2 外部时钟输入 PDIP40 12 13 14 15 16 深圳国芯人工智能有限公司 标准 IO 口 ADC 模拟输入通道 5 PWM4 的捕获输入和脉冲输出正极 标准 IO 口 外部晶振/外部时钟的输入脚 标准 IO 口 定时器 2 时钟分频输出 标准 IO 口 ADC 模拟输入通道 2 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 22 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 14 LQFP32 9 17 10 18 16 11 19 12 20 18 19 20 21 13 14 15 选型顾问: 13922805190 名称 类型 说明 P5.4 I/O 标准 IO 口 RST I 复位引脚 MCLKO O 主时钟分频输出 SS_3 I SPI 的从机选择脚(主机为输出) S1SS_3 I USART1-SPI 的从机选择脚(主机为输出) S2SS_3 I USART2-SPI 的从机选择脚(主机为输出) PWM6_2 I/O Vcc VCC 电源脚 AVcc VCC ADC 电源脚 Vref+ I Gnd GND 地线 Agnd GND ADC 地线 Vref- I P4.0 I/O 标准 IO 口 MOSI_3 I/O SPI 主机输出从机输入 S1MOSI_3 I/O USART1-SPI 主机输出从机输入 S2MOSI_3 I/O USART2-SPI 主机输出从机输入 P3.0 I/O 标准 IO 口 RxD I 串口 1 的接收脚 INT4 I 外部中断 4 P3.1 I/O 标准 IO 口 TxD O P3.2 I/O 标准 IO 口 INT0 I 外部中断 0 SCLK_4 I/O SPI 的时钟脚 SCL_4 I/O I2C 的时钟线 PWMETI I PWM 外部触发输入脚 PWMETI2 I PWM 外部触发输入脚 2 PDIP40 15 17 技术支持: 19864585985 21 22 23 深圳国芯人工智能有限公司 PWM6 的捕获输入和脉冲输出 ADC 的参考电压脚 ADC 的参考电压地线 串口 1 的发送脚 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 23 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 22 23 LQFP32 16 17 24 25 25 27 18 19 选型顾问: 13922805190 名称 类型 说明 P3.3 I/O 标准 IO 口 INT1 I 外部中断 1 MISO_4 I/O SPI 主机输入从机输出 SDA_4 I/O I2C 接口的数据线 PWM4N_4 I/O PWM4 的捕获输入和脉冲输出负极 PWM7_2 I/O PWM7 的捕获输入和脉冲输出 P3.4 I/O 标准 IO 口 T0 I 定时器 0 外部时钟输入 T1CLKO O 定时器 1 时钟分频输出 MOSI_4 I/O SPI 主机输出从机输入 PWM4P_4 I/O PWM4 的捕获输入和脉冲输出正极 PWM8_2 I/O PWM8 的捕获输入和脉冲输出 CMPO O 比较器输出 P5.0 I/O 标准 IO 口 RxD3_2 I 串口 3 的接收脚 CMP+_2 I 比较器正极输入 CAN_RX_2 I CAN 总线接收脚 P5.1 I/O TxD3_2 O 串口 3 的发送脚 CMP+_3 I 比较器正极输入 CAN_TX_2 O CAN 总线发送脚 P3.5 I/O T1 I 定时器 1 外部时钟输入 T0CLKO O 定时器 0 时钟分频输出 SS_4 I SPI 的从机选择脚(主机为输出) PWMFLT I 增强 PWM 的外部异常检测脚 P3.6 I/O 标准 IO 口 INT2 I 外部中断 2 RxD_2 I 串口 1 的接收脚 CMP- I 比较器负极输入 PDIP40 24 26 技术支持: 19864585985 26 27 深圳国芯人工智能有限公司 标准 IO 口 标准 IO 口 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 24 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 28 LQFP32 20 29 28 30 31 32 33 34 35 31 21 22 23 选型顾问: 13922805190 名称 类型 说明 P3.7 I/O 标准 IO 口 INT3 I 外部中断 3 TxD_2 O 串口 1 的发送脚 CMP+ I 比较器正极输入 P4.1 I/O 标准 IO 口 MISO_3 I/O SPI 主机输入从机输出 S1MISO_3 I/O USART1-SPI 主机输入从机输出 S2MISO_3 I/O USART2-SPI 主机输入从机输出 CMPO_2 O 比较器输出 PWMETI_3 I PWM 外部触发输入脚 P4.2 I/O WR O 外部总线的写信号线 CAN_RX_3 I CAN 总线接收脚 P4.3 I/O RxD_4 I SCLK_3 I/O SPI 的时钟脚 S1SCLK_3 I/O USART1-SPI 的时钟脚 S2SCLK_3 I/O USART2-SPI 的时钟脚 P4.4 I/O 标准 IO 口 RD O 外部总线的读信号线 TxD_4 O 串口 1 的发送脚 P2.0 I/O 标准 IO 口 A8 I 地址总线 PWM1P_2 I/O PWM1 的捕获输入和脉冲输出正极 PWM5 I/O PWM5 的捕获输入和脉冲输出 P2.1 I/O 标准 IO 口 A9 I 地址总线 PWM1N_2 I/O PWM1 的捕获输入和脉冲输出负极 PWM6 I/O PWM6 的捕获输入和脉冲输出 P2.2 I/O 标准 IO 口 A10 I 地址总线 SS_2 I SPI 的从机选择脚(主机为输出) S1SS_2 I USART1-SPI 的从机选择脚(主机为输出) S2SS_2 I USART2-SPI 的从机选择脚(主机为输出) PWM2P_2 I/O PWM2 的捕获输入和脉冲输出正极 PWM7 I/O PWM7 的捕获输入和脉冲输出 PDIP40 29 30 技术支持: 19864585985 32 33 34 深圳国芯人工智能有限公司 标准 IO 口 标准 IO 口 串口 1 的接收脚 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 25 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 36 37 38 39 40 LQFP32 技术支持: 19864585985 选型顾问: 13922805190 名称 类型 说明 P2.3 I/O 标准 IO 口 A11 I 地址总线 MOSI_2 I/O SPI 主机输出从机输入 S1MOSI_2 I/O USART1-SPI 主机输出从机输入 S2MOSI_2 I/O USART2-SPI 主机输出从机输入 PWM2N_2 I/O PWM2 的捕获输入和脉冲输出负极 PWM8 I/O PWM8 的捕获输入和脉冲输出 P2.4 I/O 标准 IO 口 A12 I 地址总线 MISO_2 I/O SPI 主机输入从机输出 S1MISO_2 I/O USART1-SPI 主机输入从机输出 S2MISO_2 I/O USART2-SPI 主机输入从机输出 SDA_2 I/O I2C 接口的数据线 PWM3P_2 I/O PWM3 的捕获输入和脉冲输出正极 P2.5 I/O 标准 IO 口 A13 I 地址总线 SCLK_2 I/O SPI 的时钟脚 S1SCLK_2 I/O USART1-SPI 的时钟脚 S2SCLK_2 I/O USART2-SPI 的时钟脚 SCL_2 I/O I2C 的时钟线 PWM3N_2 I/O PWM3 的捕获输入和脉冲输出负极 P2.6 I/O 标准 IO 口 A14 I 地址总线 PWM4P_2 I/O PWM4 的捕获输入和脉冲输出正极 P2.7 I/O 标准 IO 口 A15 I 地址总线 PWM4N_2 I/O PWM4 的捕获输入和脉冲输出负极 P4.5 I/O 标准 IO 口 ALE O 地址锁存信号 CAN_TX_3 O CAN 总线发送脚 PDIP40 24 25 26 27 28 41 深圳国芯人工智能有限公司 35 36 37 38 39 40 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 26 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 LQFP32 44 45 46 名称 类型 P4.6 I/O RxD2_2 I 串口 2 的接收脚 CAN2_RX_3 I CAN2 总线接收脚 LIN_RX_3 I LIN 总线接收脚 P0.0 I/O 标准 IO 口 AD0 I 地址总线 ADC8 I ADC 模拟输入通道 8 RxD3 I 串口 3 的接收脚 PWM5_3 I/O CAN_RX I P0.1 I/O 标准 IO 口 AD1 I 地址总线 ADC9 I ADC 模拟输入通道 9 TxD3 O 串口 3 的发送脚 PWM6_3 I/O CAN_TX O P0.2 I/O 标准 IO 口 AD2 I 地址总线 ADC10 I ADC 模拟输入通道 10 RxD4 I 串口 4 的接收脚 PWM7_3 I/O CAN2_RX I CAN2 总线接收脚 LIN_RX I LIN 总线接收脚 P0.3 I/O 标准 IO 口 AD3 I 地址总线 ADC11 I ADC 模拟输入通道 11 TxD4 O 串口 4 的发送脚 PWM8_3 I/O CAN2_TX O CAN2 总线发送脚 LIN_TX O LIN 总线发送脚 P0.4 I/O 标准 IO 口 AD4 I 地址总线 ADC12 I ADC 模拟输入通道 12 T3 I 定时器 3 外部时钟输入 P5.2 I/O RxD4_2 I 串口 4 的接收脚 CAN2_RX_2 I CAN2 总线接收脚 LIN_RX_2 I LIN 总线接收脚 选型顾问: 13922805190 说明 PDIP40 42 43 技术支持: 19864585985 29 30 31 32 47 48 深圳国芯人工智能有限公司 1 2 3 4 5 标准 IO 口 PWM5 的捕获输入和脉冲输出 CAN 总线接收脚 PWM6 的捕获输入和脉冲输出 CAN 总线发送脚 PWM7 的捕获输入和脉冲输出 PWM8 的捕获输入和脉冲输出 标准 IO 口 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 27 - STC32G 系列技术手册 技术支持: 19864585985 2.3 STC32F12K60-LQFP48/LQFP32/PDIP40 2.3.1 特性及价格  内 部 高 精 准 时 钟 ( 支 持 , 支 持 硬 件 STC32F12K48 1.9-5.5 48K 8K 4K 2 48K 44 有 有 有 有 2 2 2 有 有 有 有 有 有 5 8 有 12 位 有 有 4级 有 是 有 是 是 是 是 ¥5 √ √ √ STC32F12K60 1.9-5.5 60K 8K 4K 2 IAP 44 有 有 有 有 2 2 2 有 有 有 有 有 有 5 8 有 12 位 有 有 4级 有 是 有 是 是 是 是 ¥5 √ √ √ 字 节 位 可 当 路 使 用 ) 以 下 可 调 ) 追 频 下 载 USB 位 和 ) ) 并 可 掉 电 唤 醒 外 部 管 脚 也 可 掉 电 唤 醒 ) D/A 可 做 变 量 字 节 16  可 增 可 减 8 字 节 可 做 堆 栈 或 变 量 字 节 (8 PDIP40 供 货 信 息 LQFP32 直 接 下 载 和 硬 件 本 身 就 可 在 线 仿 真 QFN48 可 设 置 下 次 更 新 程 序 需 口 令 LQFP48 可 对 外 输 出 时 钟 及 复 位 程 序 加 密 后 传 输 ( 防 拦 截 ) RS485 内 部 低 压 检 测 中 断 并 可 掉 电 唤 醒 内 部 高 可 靠 复 位 ( 可 选 复 位 门 槛 电 压 ) USB PWM , 可 作 外 部 掉 电 检 测 ) 全 速 72MHz 路 路 A/D ( 1 ADC 8 PWM 定 时 器 互 补 对 称 死 区 控 制 路 高 速 比 较 器 ( 可 当 价 格 及 封 装 USB 16 T0/T1/T2/T3/T4 FPMU 位 乘 除 法 器 单 精 度 浮 点 运 算 器 位 高 级 独 立 掉 电 唤 醒 专 用 定 时 器 , 看 门 狗 复 位 定 时 器 DMA 15 定 时 器 计 数 器 ( / 硬 件 32 并 可 掉 电 唤 醒 2 DMA I C 音 频 接 口 并 可 掉 电 唤 醒 MDU32 总 线 DMA I2S LIN 总 线 DMA SPI 同 步 异 步 串 口 并 可 掉 电 唤 醒 CAN 异 步 串 口 并 可 掉 电 唤 醒 / LCM 实 时 模 时 块 钟 驱 动 DMA UART 接 口 RTC 口 均 支 持 中 断 并 可 掉 电 唤 醒 DMA USART I/O INT0/INT1/INT2/INT3/INT4 口 最 多 数 量 所 有 的 DMA 8080/6800 I/O DPTR 万 次 I/O 强 大 的 双 SRAM 10 万 次 中 断 ( 内 部 内 扩 部 展 大 容 量 扩 展 DATA RAM ) 传 统 EEPROM 10 Flash 程 序 存 储 器 选型顾问: 13922805190 选型价格(不需要外部晶振、不需要外部复位,12 位 ADC,15 通道) xdata edata 工 作 电 压 ( V 单 片 机 型 号 官方网站: www.STCMCUDATA.com 仿 真 内核  超高速 32 位 8051 内核(1T),比传统 8051 约快 70 倍以上  50 个中断源,4 级中断优先级  支持在线仿真  工作电压  1.9V~5.5V(当工作温度低于-40℃时,工作电压不得低于 3.0V)  工作温度  -40℃~85℃(可使用内部高速 IRC(36MHz 或以下)和外部晶振)  -40℃~125℃(当温度高于 85℃时请使用外部耐高温晶振,且工作频率控制在 24MHz 以下)  Flash 存储器  最大 60K 字节 FLASH 程序存储器(ROM),用于存储用户代码  支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达 10 万次以上  支持硬件 USB 直接下载和普通串口下载  支持硬件 SWD 实时仿真,P3.0/P3.1(需 STC-USB Link1 工具)  SRAM,共 12K 字节  8K 字节内部 SRAM(edata)  4K 字节内部扩展 RAM(内部 xdata)  使用注意:(强烈建议不要使用 idata 和 pdata 声明变量)  时钟控制 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 28 - 4月 送样 STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190  内部高精度 IRC(ISP 编程时可进行上下调整)  误差±0.3%(常温下 25℃)  -1.35%~+1.30%温漂(全温度范围,-40℃~85℃)  -0.76%~+0.98%温漂(温度范围,-20℃~65℃)  内部 32KHz 低速 IRC(误差较大)  外部晶振(4MHz~33MHz)和外部时钟  内部 PLL 输出时钟(注:PLL 输出的 96MHz/144MHz 可独立作为高速 PWM 和高速 SPI 的时钟源) 用户可自由选择上面的 4 种时钟源  复位  硬件复位  上电复位,复位电压值为 1.7V~1.9V。(在芯片未使能低压复位功能时有效)  复位脚复位,出厂时 P5.4 默认为 I/O 口,ISP 下载时可将 P5.4 管脚设置为复位脚(注意:当设置 P5.4 管脚为复位脚时,复位电平为低电平)  看门狗溢出复位  低压检测复位,提供 4 级低压检测电压:2.0V、2.4V、2.7V、3.0V。  软件复位  软件方式写复位触发寄存器  中断  提供 50 个中断源:INT0、INT1、INT2、INT3、INT4、定时器 0、定时器 1、定时器 2、定时器 3、定时器 4、USART1、USART2、UART3、UART4、ADC 模数转换、LVD 低压检测、SPI、I2C、比较器、PWMA、 PWMB、USB、CAN、CAN2、LIN、LCMIF 彩屏接口中断、RTC 实时时钟、所有的 I/O 中断(6 组)、 I2S 音频接口、I2S 音频接口的 DMA 接收和发送中断、串口 1 的 DMA 接收和发送中断、串口 2 的 DMA 接收和发送中断、串口 3 的 DMA 接收和发送中断、串口 4 的 DMA 接收和发送中断、I2C 的 DMA 接收 和发送中断、SPI 的 DMA 中断、ADC 的 DMA 中断、LCD 驱动的 DMA 中断以及存储器到存储器的 DMA 中断。  提供 4 级中断优先级  数字外设  5 个 16 位定时器:定时器 0、定时器 1、定时器 2、定时器 3、定时器 4,其中定时器 0 的模式 3 具有 NMI (不可屏蔽中断)功能,定时器 0 和定时器 1 的模式 0 为 16 位自动重载模式  2 个高速同步/异步串口:串口 1(USART1)、串口 2(USART2),波特率时钟源最快可为 FOSC/4。支持 同步串口模式、异步串口模式、SPI 模式、LIN 模式、红外模式(IrDA)、智能卡模式(ISO7816)  2 个高速异步串口:串口 3、串口 4,波特率时钟源最快可为 FOSC/4  2 组高级 PWM,可实现 8 通道(4 组互补对称)带死区的控制的 PWM,并支持外部异常检测功能  SPI:支持主机模式和从机模式以及主机/从机自动切换  I2C:支持主机模式和从机模式  ICE:硬件支持仿真  RTC:支持年、月、日、时、分、秒、次秒(1/128 秒),并支持时钟中断和一组闹钟  USB:USB2.0/USB1.1 兼容全速 USB,6 个双向端点,支持 4 种端点传输模式(控制传输、中断传输、批 量传输和同步传输),每个端点拥有 64 字节的缓冲区  I2S:音频接口  CAN:两个独立的 CAN 2.0 控制单元  LIN:一个独立 LIN 控制单元(支持 1.3 和 2.1 版本),USART1 和 USART2 可支持两组 LIN  MDU32:硬件 32 位乘除法器(包含 32 位除以 32 位、32 位乘以 32 位)  I/O 口中断:所有的 I/O 均支持中断,每组 I/O 中断有独立的中断入口地址,所有的 I/O 中断可支持 4 种中 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 29 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 断模式:高电平中断、低电平中断、上升沿中断、下降沿中断。I/O 口中断可以进行掉电唤醒,且有 4 级中断优先级。  LCD 驱动模块:支持 8080 和 6800 两种接口以及 8 位和 16 位数据宽度  DMA:支持 SPI 移位接收数据到存储器、SPI 移位发送存储器的数据、I2C 发送存储器的数据、I2C 接收数 据到存储器、串口 1/2/3/4 接收数据到的存储器、串口 1/2/3/4 发送存储器的数据、ADC 自动采样数据到 存储器(同时计算平均值)、LCD 驱动发送存储器的数据、以及存储器到存储器的数据复制  硬件数字 ID:支持 32 字节  模拟外设  ADC:超高速 ADC,支持 12 位高精度 15 通道(通道 0~通道 14)的模数转换,ADC 的通道 15 用于测试 内部参考电压(芯片在出厂时,内部参考电压调整为 1.19V,误差±1%)  比较器:一组比较器  GPIO  最多可达 44 个 GPIO:P0.0~P0.7、P1.0~ P1.7(无 P1.2)、P2.0~P2.7、P3.0~P3.7、P4.0~P4.7、P5.0~P5.4  所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏输出模式、高阻输入模式  除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO 口时必须先设置 IO 口 模式  另外每个 I/O 均可独立使能内部 4K 上拉电阻  封装  LQFP48、LQFP32、PDIP40 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 30 - STC32G 系列技术手册 技术支持: 19864585985 选型顾问: 13922805190 管脚图,最小系统 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2/I2SSD_3 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2/I2SWS_3 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P4.4/RD/TxD_4 P4.3/RxD_4/SCLK_3/S1SCLK_3/S2SCLK_3/I2SCK_4 P4.2/WR/CAN_RX_3 P4.1/MISO_3/S1MISO_3/S2MISO_3/CMPO_2/PWMETI_2 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT/PWMFLT2/I2SWS P5.1/TxD3_2/CAN_TX_2 2.3.2 官方网站: www.STCMCUDATA.com 36 35 34 33 32 31 30 29 28 27 26 25 注意: 1、除P3.0和P3.1外,其余所有I/O口上电后的状态均为高阻输入状态, 用户在使用I/O口时必须先设置I/O口模式 2、所有的I/O口均可以设置为准双向口模式、强推挽输出模式、开漏输 出模式或者高阻输入模式,另外每个I/O均可独立使能内部4K上拉电阻 3、当使能P5.4口为复位脚时,复位电平为低电平 4、ADC的外部参考电源管脚ADC_VRef+,一定不能浮空,必须接外部参考 电源或者直接连到Vcc 5、若不需要进行USB下载,芯片复位时P3.0/P3.1/P3.2不可同时为低电平 STC32F12K60 LQFP48 24 23 22 21 20 19 18 17 16 15 14 13 1 2 3 4 5 6 7 8 9 10 11 12 37 38 39 40 41 42 43 44 45 46 47 48 P5.0/RxD3_2/CAN_RX_2 P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO/I2SSD P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2/I2SCK P3.1/D+/TxD P3.0/D-/RxD/INT4 P4.0/MOSI_3/S1MOSI_3/S2MOSI_3/I2SSD_4 Gnd/AGnd ADC_VRef+ Vcc/AVcc P5.4/RST/MCLKO/SS/SS_3/S1SS/S1SS_3/S2SS/S2SS_3/ PWM2P/PWM6_2/ADC2/T2/I2SWS_2/I2SWS_4/I2SMCK/I2SMCK_3 UCap LIN_TX_2/CAN_TX_2/TxD4_2/P5.3 T3CLKO/ADC13/AD5/P0.5 PWMETI2_2/T4/ADC14/AD6/P0.6 T4CLKO/AD7/P0.7 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 LIN_TX_3/CAN_TX_3/TxD2_2/P4.7 SDA/S2MISO/S1MISO/MISO/PWM3P/ADC4/P1.4 I2SCK_2/SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 I2SMCK_2/I2SMCK_4/XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 I2SSD_2/T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 S2MISO_2/S1MISO_2/MISO_2/SDA_2/PWM3P_2/A12/P2.4 I2SCK_3/S2SCLK_2/S1SCLK_2/SCLK_2/SCL_2/PWM3N_2/A13/P2.5 PWM4P_2/A14/P2.6 PWM4N_2/A15/P2.7 CAN_TX_3/ALE/P4.5 LIN_RX_3/CAN2_RX_3/RxD2_2/P4.6 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TXT4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 LIN_RX_2/CAN2_RX_2/RxD4_2/P5.2 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 31 - 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 注意: 1、除P3.0和P3.1外,其余所有I/O口上电后的状态均为高阻输入状态, 用户在使用I/O口时必须先设置I/O口模式 2、所有的I/O口均可以设置为准双向口模式、强推挽输出模式、开漏输 出模式或者高阻输入模式,另外每个I/O均可独立使能内部4K上拉电阻 3、当使能P5.4口为复位脚时,复位电平为低电平 4、ADC的外部参考电源管脚ADC_VRef+,一定不能浮空,必须接外部参考 电源或者直接连到Vcc 5、若不需要进行USB下载,芯片复位时P3.0/P3.1/P3.2不可同时为低电平 24 23 22 21 20 19 18 17 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2/I2S_SD_3 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2/I2SWS_3 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT/PWMFLT2/I2SWS P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO/I2SSD STC32G 系列技术手册 25 16 26 15 27 14 28 STC32F12K60 13 LQFP32 29 12 30 11 31 10 32 9 1 2 3 4 5 6 7 8 S2MISO_2/S1MISO_2/MISO_2/SDA_2/PWM3P_2/A12/P2.4 I2SCK_3/S2SCLK_2/S1SCLK_2/SCLK_2/SCL_2/PWM3N_2/A13/P2.5 PWM4P_2/A14/P2.6 PWM4N_2/A15/P2.7 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TXT4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2/I2SCK P3.1/TxD/D+ P3.0/RxD/D-/INT4 Gnd/AGnd ADC_VRef+ Vcc/AVcc P5.4/RST/MCLKO/SS/SS_3/S1SS/S1SS_3/S2SS/S2SS_3/ PWM2P/PWM6_2/ADC2/T2/I2SWS_2/I2SWS_4/I2SMCK/I2SMCK_3 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 SDA/S2MISO/S1MISO/MISO/PWM3P/ADC4/P1.4 I2SCK_2/SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 I2SMCK_2/I2SMCK_4/XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 I2SSD_2/T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 UCap MCU-VCC 22u 0.1u 正看芯片丝印左下方小圆点处为第一脚 正看芯片丝印最下面一行最后一个字母为芯片版本号 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 32 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 深圳国芯人工智能有限公司 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 PDIP40 CAN_RX/T3_2/PWM5_3/RxD3/ADC8/AD0/P0.0 CAN_TX/T3CLKO_2/PWM6_3/TxD3/ADC9/AD1/P0.1 LIN_RX/CAN2_RX/T4_2/PWM7_3/RxD4/ADC10/AD2/P0.2 LIN_TX/CAN2_TXT4CLKO_2/PWM8_3/TxD4/ADC11/AD3/P0.3 T3/ADC12/AD4/P0.4 T3CLKO/ADC13/AD5/P0.5 PWMETI2_2/T4/ADC14/AD6/P0.6 T4CLKO/AD7/P0.7 RxD2/PWM1P/ADC0/P1.0 TxD2/PWM1N/ADC1/P1.1 SDA/S2MISO/S1MISO/MISO/PWM3P/ADC4/P1.4 I2SCK_2/SCL/S2SCLK/S1SCLK/SCLK/PWM3N/ADC5/P1.5 I2SMCK_2/I2SMCK_4/XTALO/MCLKO_2/RxD_3/PWM4P/ADC6/P1.6 XTALI/PWM5_2/TxD_3/PWM4N/ADC7/P1.7 I2SSD_2/T2CLKO/S2MOSI/S1MOSI/MOSI/PWM2N/ADC3/P1.3 UCap T2/ADC2/PWM6_2/PWM2P/S2SS_3/S2SS/S1SS_3/S1SS/SS_3/SS/MCLKO/NRST/P5.4 0.1u Vcc/AVcc I2SMCK_3/I2SMCK/I2SWS_4/I2SWS_2/ ADC_VRef+ Gnd/AGnd 技术支持: 19864585985 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 国内分销商电话: 0513-5501 2928/2929/2966 选型顾问: 13922805190 P4.5/ALE/CAN_TX_3 P2.7/A15/PWM4N_2 P2.6/A14/PWM4P_2 P2.5/A13/PWM3N_2/SCL_2/SCLK_2/S1SCLK_2/S2SCLK_2/I2SCK_3 P2.4/A12/PWM3P_2/SDA_2/MISO_2/S1MISO_2/S2MISO_2 P2.3/A11/PWM2N_2/PWM8/MOSI_2/S1MOSI_2/S2MOSI_2/I2SSD_3 P2.2/A10/PWM2P_2/PWM7/SS_2/S1SS_2/S2SS_2/I2SWS_3 P2.1/A9/PWM1N_2/PWM6 P2.0/A8/PWM1P_2/PWM5 P4.4/RD/TxD_4 P4.2/WR/CAN_RX_3 P4.1/MISO_3/S1MISO_3/S2MISO_3/CMPO_2/PWMETI_2 P3.7/INT3/TxD_2/CMP+ P3.6/INT2/RxD_2/CMPP3.5/T1/T0CLKO/SS_4/PWMFLT/PWMFLT2/I2SWS P3.4/T0/T1CLKO/MOSI_4/PWM4P_4/PWM8_2/CMPO/I2SSD P3.3/INT1/MISO_4/SDA_4/PWM4N_4/PWM7_2 P3.2/INT0/SCLK_4/SCL_4/PWMETI/PWMETI2/I2SCK P3.1/TxD/D+ P3.0/RxD/D-/INT4 传真: 0513-5501 2926/2956/2947 - 33 - STC32G 系列技术手册 2.3.3 官方网站: www.STCMCUDATA.com LQFP32 2 6 3 7 4 6 8 1 2 9 10 7 8 3 名称 类型 说明 P5.3 I/O TxD4_2 O 串口 4 的发送脚 CAN2_TX_2 O CAN2 总线发送脚 LIN_TX_2 O LIN 总线发送脚 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 外部时钟输入 PWMFLT2_2 I 增强 PWM 的外部异常检测脚 P0.7 I/O 标准 IO 口 AD7 I 地址总线 T4CLKO O 定时器 4 时钟分频输出 P1.0 I/O ADC0 I PWM1P I/O RxD2 I P1.1 I/O ADC1 I PWM1N I/O TxD2 I P4.7 I/O TxD2_2 I 串口 2 的发送脚 CAN2_TX_3 O CAN2 总线发送脚 LIN_TX_3 O LIN 总线发送脚 P1.4 I/O ADC4 I PWM3P I/O PWM3 的捕获输入和脉冲输出正极 MISO I/O SPI 主机输入从机输出 S1MISO I/O USART1-SPI 主机输入从机输出 S2MISO I/O USART2-SPI 主机输入从机输出 SDA I/O I2C 接口的数据线 PDIP40 1 5 选型顾问: 13922805190 管脚说明 编号 LQFP48 技术支持: 19864585985 11 深圳国芯人工智能有限公司 标准 IO 口 标准 IO 口 ADC 模拟输入通道 0 PWM1 的捕获输入和脉冲输出正极 串口 2 的接收脚 标准 IO 口 ADC 模拟输入通道 1 PWM1 的捕获输入和脉冲输出负极 串口 2 的发送脚 标准 IO 口 标准 IO 口 ADC 模拟输入通道 4 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 34 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 9 10 11 12 13 LQFP32 4 5 6 7 8 技术支持: 19864585985 选型顾问: 13922805190 名称 类型 说明 P1.5 I/O ADC5 I PWM3N I/O PWM3 的捕获输入和脉冲输出负极 SCLK I/O SPI 的时钟脚 S1SCLK I/O USART1-SPI 的时钟脚 S2SCLK I/O USART2-SPI 的时钟脚 SCL I/O I2C 的时钟线 I2SCK_2 I/O I2S 的时钟线 P1.6 I/O 标准 IO 口 ADC6 I ADC 模拟输入通道 6 RxD_3 I 串口 1 的接收脚 PWM4P I/O MCLKO_2 O 主时钟分频输出 XTALO O 外部晶振的输出脚 I2SMCK_2 O I2S 的主时钟线 I2SMCK_4 O I2S 的主时钟线 P1.7 I/O ADC7 I ADC 模拟输入通道 7 TxD_3 O 串口 1 的发送脚 PWM4N I/O PWM4 的捕获输入和脉冲输出负极 PWM5_2 I/O PWM5 的捕获输入和脉冲输出 XTALI I P1.3 I/O ADC3 I ADC 模拟输入通道 3 MOSI I/O SPI 主机输出从机输入 S1MOSI I/O USART1-SPI 主机输出从机输入 S2MOSI I/O USART2-SPI 主机输出从机输入 PWM2N I/O PWM2 的捕获输入和脉冲输出负极 T2CLKO O I2SSD_2 I/O UCAP I PDIP40 12 13 14 15 16 深圳国芯人工智能有限公司 标准 IO 口 ADC 模拟输入通道 5 PWM4 的捕获输入和脉冲输出正极 标准 IO 口 外部晶振/外部时钟的输入脚 标准 IO 口 定时器 2 时钟分频输出 I2S 的数据线 USB 内核电源稳压脚 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 35 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 14 LQFP32 9 17 10 18 16 11 19 12 20 18 19 13 选型顾问: 13922805190 名称 类型 说明 P5.4 I/O 标准 IO 口 RST I 复位引脚 MCLKO O 主时钟分频输出 SS_3 I SPI 的从机选择脚(主机为输出) SS I SPI 的从机选择脚(主机为输出) S1SS_3 I USART1-SPI 的从机选择脚(主机为输出) S1SS I USART1-SPI 的从机选择脚(主机为输出) S2SS_3 I USART2-SPI 的从机选择脚(主机为输出) S2SS I USART2-SPI 的从机选择脚(主机为输出) PWM2P I/O PWM2 的捕获输入和脉冲输出正极 PWM6_2 I/O PWM6 的捕获输入和脉冲输出 T2 I 定时器 2 外部时钟输入 ADC2 I ADC 模拟输入通道 2 I2SWS_2 I/O I2S 的声道选择线 I2SWS_4 I/O I2S 的声道选择线 I2SMCK O I2S 的主时钟线 I2SMCK_3 O I2S 的主时钟线 Vcc VCC 电源脚 AVcc VCC ADC 电源脚 Vref+ I Gnd GND 地线 Agnd GND ADC 地线 Vref- I P4.0 I/O 标准 IO 口 MOSI_3 I/O SPI 主机输出从机输入 S1MOSI_3 I/O USART1-SPI 主机输出从机输入 S2MOSI_3 I/O USART2-SPI 主机输出从机输入 I2SSD_4 I/O I2S 的数据线 P3.0 I/O 标准 IO 口 D- I/O USB 数据口 RxD I 串口 1 的接收脚 INT4 I 外部中断 4 PDIP40 15 17 技术支持: 19864585985 21 深圳国芯人工智能有限公司 ADC 的参考电压脚 ADC 的参考电压地线 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 36 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 20 21 22 23 LQFP32 14 15 16 17 技术支持: 19864585985 选型顾问: 13922805190 名称 类型 说明 P3.1 I/O 标准 IO 口 D+ I/O USB 数据口 TxD O P3.2 I/O 标准 IO 口 INT0 I 外部中断 0 SCLK_4 I/O SPI 的时钟脚 SCL_4 I/O I2C 的时钟线 PWMETI I PWM 外部触发输入脚 PWMETI2 I PWM 外部触发输入脚 2 I2SCK I/O I2S 的时钟线 P3.3 I/O 标准 IO 口 INT1 I 外部中断 1 MISO_4 I/O SPI 主机输入从机输出 SDA_4 I/O I2C 接口的数据线 PWM4N_4 I/O PWM4 的捕获输入和脉冲输出负极 PWM7_2 I/O PWM7 的捕获输入和脉冲输出 P3.4 I/O 标准 IO 口 T0 I 定时器 0 外部时钟输入 T1CLKO O 定时器 1 时钟分频输出 MOSI_4 I/O SPI 主机输出从机输入 PWM4P_4 I/O PWM4 的捕获输入和脉冲输出正极 PWM8_2 I/O PWM8 的捕获输入和脉冲输出 CMPO O I2SSD I/O I2S 的数据线 P5.0 I/O 标准 IO 口 RxD3_2 I 串口 3 的接收脚 CMP+_2 I 比较器正极输入 CAN_RX_2 I CAN 总线接收脚 P5.1 I/O TxD3_2 O 串口 3 的发送脚 CMP+_3 I 比较器正极输入 CAN_TX_2 O CAN 总线发送脚 PDIP40 22 23 24 25 24 25 深圳国芯人工智能有限公司 串口 1 的发送脚 比较器输出 标准 IO 口 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 37 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 26 27 28 LQFP32 18 19 20 29 26 27 28 30 31 32 33 31 21 选型顾问: 13922805190 名称 类型 说明 P3.5 I/O T1 I 定时器 1 外部时钟输入 T0CLKO O 定时器 0 时钟分频输出 SS_4 I SPI 的从机选择脚(主机为输出) PWMFLT I 增强 PWM 的外部异常检测脚 I2SWS I/O I2S 的声道选择线 P3.6 I/O 标准 IO 口 INT2 I 外部中断 2 RxD_2 I 串口 1 的接收脚 CMP- I 比较器负极输入 P3.7 I/O 标准 IO 口 INT3 I 外部中断 3 TxD_2 O 串口 1 的发送脚 CMP+ I 比较器正极输入 P4.1 I/O 标准 IO 口 MISO_3 I/O SPI 主机输入从机输出 S1MISO_3 I/O USART1-SPI 主机输入从机输出 S2MISO_3 I/O USART2-SPI 主机输入从机输出 CMPO_2 O 比较器输出 PWMETI_3 I PWM 外部触发输入脚 P4.2 I/O WR O 外部总线的写信号线 CAN_RX_3 I CAN 总线接收脚 P4.3 I/O RxD_4 I SCLK_3 I/O SPI 的时钟脚 S1SCLK_3 I/O USART1-SPI 的时钟脚 S2SCLK_3 I/O USART2-SPI 的时钟脚 I2SCK_4 I/O I2S 的时钟线 P4.4 I/O 标准 IO 口 RD O 外部总线的读信号线 TxD_4 O 串口 1 的发送脚 P2.0 I/O 标准 IO 口 A8 I 地址总线 PWM1P_2 I/O PWM1 的捕获输入和脉冲输出正极 PWM5 I/O PWM5 的捕获输入和脉冲输出 PDIP40 29 30 技术支持: 19864585985 32 深圳国芯人工智能有限公司 标准 IO 口 标准 IO 口 标准 IO 口 串口 1 的接收脚 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 38 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 34 35 36 37 38 39 LQFP32 22 23 24 25 26 27 技术支持: 19864585985 选型顾问: 13922805190 名称 类型 说明 P2.1 I/O 标准 IO 口 A9 I 地址总线 PWM1N_2 I/O PWM1 的捕获输入和脉冲输出负极 PWM6 I/O PWM6 的捕获输入和脉冲输出 P2.2 I/O 标准 IO 口 A10 I 地址总线 SS_2 I SPI 的从机选择脚(主机为输出) S1SS_2 I USART1-SPI 的从机选择脚(主机为输出) S2SS_2 I USART2-SPI 的从机选择脚(主机为输出) PWM2P_2 I/O PWM2 的捕获输入和脉冲输出正极 PWM7 I/O PWM7 的捕获输入和脉冲输出 I2SWS_3 I/O I2S 的声道选择线 P2.3 I/O 标准 IO 口 A11 I 地址总线 MOSI_2 I/O SPI 主机输出从机输入 S1MOSI_2 I/O USART1-SPI 主机输出从机输入 S2MOSI_2 I/O USART2-SPI 主机输出从机输入 PWM2N_2 I/O PWM2 的捕获输入和脉冲输出负极 PWM8 I/O PWM8 的捕获输入和脉冲输出 I2SSD_3 I/O I2S 的数据线 P2.4 I/O 标准 IO 口 A12 I 地址总线 MISO_2 I/O SPI 主机输入从机输出 S1MISO_2 I/O USART1-SPI 主机输入从机输出 S2MISO_2 I/O USART2-SPI 主机输入从机输出 SDA_2 I/O I2C 接口的数据线 PWM3P_2 I/O PWM3 的捕获输入和脉冲输出正极 P2.5 I/O 标准 IO 口 A13 I 地址总线 SCLK_2 I/O SPI 的时钟脚 S1SCLK_2 I/O USART1-SPI 的时钟脚 S2SCLK_2 I/O USART2-SPI 的时钟脚 SCL_2 I/O I2C 的时钟线 PWM3N_2 I/O PWM3 的捕获输入和脉冲输出负极 I2SCK_3 I/O I2S 的时钟线 P2.6 I/O 标准 IO 口 A14 I 地址总线 PWM4P_2 I/O PDIP40 33 34 35 36 37 38 深圳国芯人工智能有限公司 PWM4 的捕获输入和脉冲输出正极 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 39 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 40 LQFP32 28 39 40 42 44 45 选型顾问: 13922805190 名称 类型 说明 P2.7 I/O 标准 IO 口 A15 I 地址总线 PWM4N_2 I/O PWM4 的捕获输入和脉冲输出负极 P4.5 I/O 标准 IO 口 ALE O 地址锁存信号 CAN_TX_3 O CAN 总线发送脚 P4.6 I/O RxD2_2 I 串口 2 的接收脚 CAN2_RX_3 I CAN2 总线接收脚 LIN_RX_3 I LIN 总线接收脚 P0.0 I/O 标准 IO 口 AD0 I 地址总线 ADC8 I ADC 模拟输入通道 8 RxD3 I 串口 3 的接收脚 PWM5_3 I/O CAN_RX I P0.1 I/O 标准 IO 口 AD1 I 地址总线 ADC9 I ADC 模拟输入通道 9 TxD3 O 串口 3 的发送脚 PWM6_3 I/O CAN_TX O P0.2 I/O 标准 IO 口 AD2 I 地址总线 ADC10 I ADC 模拟输入通道 10 RxD4 I 串口 4 的接收脚 PWM7_3 I/O CAN2_RX I CAN2 总线接收脚 LIN_RX I LIN 总线接收脚 PDIP40 41 43 技术支持: 19864585985 29 30 31 深圳国芯人工智能有限公司 1 2 3 标准 IO 口 PWM5 的捕获输入和脉冲输出 CAN 总线接收脚 PWM6 的捕获输入和脉冲输出 CAN 总线发送脚 PWM7 的捕获输入和脉冲输出 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 40 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 编号 LQFP48 46 LQFP32 技术支持: 19864585985 名称 类型 P0.3 I/O 标准 IO 口 AD3 I 地址总线 ADC11 I ADC 模拟输入通道 11 TxD4 O 串口 4 的发送脚 PWM8_3 I/O CAN2_TX O CAN2 总线发送脚 LIN_TX O LIN 总线发送脚 P0.4 I/O 标准 IO 口 AD4 I 地址总线 ADC12 I ADC 模拟输入通道 12 T3 I 定时器 3 外部时钟输入 P5.2 I/O RxD4_2 I 串口 4 的接收脚 CAN2_RX_2 I CAN2 总线接收脚 LIN_RX_2 I LIN 总线接收脚 选型顾问: 13922805190 说明 PDIP40 32 47 48 深圳国芯人工智能有限公司 4 5 PWM8 的捕获输入和脉冲输出 标准 IO 口 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 41 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 功能脚切换 3 STC32G 系列单片机的特殊外设串口、SPI、PWM、I2C、CAN、LIN 以及总线控制脚可以在多个 I/O 直接进行切换,以实现一个外设当作多个设备进行分时复用。 功能脚切换相关寄存器 3.1 位地址与符号 符号 描述 地址 复位值 B7 P_SW1 外设端口切换寄存器 1 A2H P_SW2 外设端口切换寄存器 2 BAH P_SW3 外设端口切换寄存器 2 BBH B6 B5 S1_S[1:0] EAXFR B4 B3 CAN_S[1:0] - SPI_S[1:0] I2C_S[1:0] I2S_S[1:0] B2 CMPO_S S2SPI_S[1:0] S4_S S1SPI_S[1:0] B1 B0 LIN_S[1:0] S3_S S2_S CAN2_S[1:0] nn00,0000 0x00,0000 0000,0000 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 MCLKOCR 主时钟输出控制寄存器 7EFE05H PWMA_PS PWMA 切换寄存器 7EFEB2H C4PS[1:0] C3PS[1:0] C2PS[1:0] C1PS[1:0] 0000,0000 PWMB_PS PWMB 切换寄存器 7EFEB6H C8PS[1:0] C7PS[1:0] C6PS[1:0] C5PS[1:0] 0000,0000 MCLKODIV[6:0] MCLKO_S 0000,0000 PWMA_ETRPS PWMA 的 ERT 切换寄存器 7EFEB0H BRKAPS ETRAPS[1:0] xxx,x000 PWMB_ETRPS PWMB 的 ERT 切换寄存器 7EFEB4H BRKBPS ETRBPS[1:0] xxx,x000 T3T4PIN T3/T4 选择寄存器 3.1.1 7EFEACH - - - - - - - T3T4SEL xxxx,xxx0 外设端口切换控制寄存器 1(P_SW1) 符号 地址 P_SW1 A2H B7 B6 S1_S[1:0] B5 B4 CAN_S[1:0] B3 SPI_S[1:0] B2 B1 B0 LIN_S[1: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 CAN_S[1:0]:CAN 功能脚选择位 CAN_S[1:0] CAN_RX CAN_TX 00 P0.0 P0.1 01 P5.0 P5.1 10 P4.2 P4.5 11 P7.0 P7.1 LIN_S[1:0]:LIN 功能脚选择位 LIN_S[1:0] LIN_RX LIN_TX 00 P0.2 P0.3 01 P5.2 P5.3 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 42 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 10 P4.6 P4.7 11 P7.2 P7.3 技术支持: 19864585985 选型顾问: 13922805190 SPI_S[1:0]:SPI 功能脚选择位 SPI_S[1:0] SS MOSI MISO SCLK 00 P5.4 P1.3 P1.4 P1.5 01 P2.2 P2.3 P2.4 P2.5 10 P5.4 P4.0 P4.1 P4.3 11 P3.5 P3.4 P3.3 P3.2 3.1.2 外设端口切换控制寄存器 2(P_SW2) 符号 地址 B7 B6 P_SW2 BAH EAXFR - B5 B4 I2C_S[1:0] B3 B2 B1 B0 CMPO_S S4_S S3_S S2_S B1 B0 EAXFR:扩展 RAM 区特殊功能寄存器(XFR)访问控制寄存器 0:禁止访问 XFR 1:使能访问 XFR。 当需要访问 XFR 时,必须先将 EAXFR 置 1,才能对 XFR 进行正常的读写 I2C_S[1:0]:I2C 功能脚选择位 I2C_S[1:0] SCL SDA 00 P1.5 P1.4 01 P2.5 P2.4 10 - - 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.6 P4.7 3.1.3 符号 外设端口切换控制寄存器 3(P_SW3) 地址 深圳国芯人工智能有限公司 B7 B6 B5 B4 国内分销商电话: 0513-5501 2928/2929/2966 B3 B2 传真: 0513-5501 2926/2956/2947 - 43 - STC32G 系列技术手册 P_SW3 官方网站: www.STCMCUDATA.com BBH I2S_S 技术支持: 19864585985 S2SPI_S[1:0] S1SPI_S[1:0] 选型顾问: 13922805190 CAN2_S[1:0] S2SPI_S[1:0]:USART2 的 SPI 功能脚选择位 S2SPI_S[1:0] S2SS S2MOSI S2MISO S2SCLK 00 P5.4 P1.3 P1.4 P1.5 01 P2.2 P2.3 P2.4 P2.5 10 P5.4 P4.0 P4.1 P4.3 11 P7.4 P7.5 P7.6 P7.7 S1SPI_S[1:0]:USART1 的 SPI 功能脚选择位 S1SPI_S[1:0] S1SS S1MOSI S1MISO S1SCLK 00 P5.4 P1.3 P1.4 P1.5 01 P2.2 P2.3 P2.4 P2.5 10 P5.4 P4.0 P4.1 P4.3 11 P6.4 P6.5 P6.6 P6.7 CAN2_S[1:0]:CAN2 功能脚选择位 CAN2_S[1:0] CAN2_RX CAN2_TX 00 P0.2 P0.3 01 P5.2 P5.3 10 P4.6 P4.7 11 P7.2 P7.3 I2S_S[1:0]:I2S 功能脚选择位 I2S_S[1:0] I2SCK I2SSD I2SMCK I2SWS 00 P3.2 P3.4 P5.4 P3.5 01 P1.5 P1.3 P1.6 P5.4 10 P2.5 P2.3 P5.4 P2.2 11 P4.3 P4.0 P1.6 P5.4 3.1.4 时钟选择寄存器(MCLKOCR) 符号 地址 B7 MCLKOCR 7EFE07H MCLKO_S B6 B5 B4 B3 B2 B1 B0 MCLKODIV[6:0] MCLKO_S:主时钟输出脚选择位 MCLKO_S MCLKO 0 P5.4 1 P1.6 3.1.5 T3/T4 选择寄存器(T3T4PIN) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 T3T4PIN 7EFEACH - - - - - - - T3T4SEL T3T4SEL:T3/T3CLKO/T4/T4CLKO 脚选择位 T3T4SEL T3 T3CLKO T4 T4CLKO 0 P0.4 P0.5 P0.6 P0.7 1 P0.0 P0.1 P0.2 P0.3 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 44 - STC32G 系列技术手册 3.1.6 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 高级 PWM 选择寄存器(PWMn_PS) 符号 地址 PWMA_PS 7EFEB2H C4PS[1:0] C3PS[1:0] C2PS[1:0] C1PS[1:0] PWMB_PS 7EFEB6H C8PS[1:0] C7PS[1:0] C6PS[1:0] C5PS[1:0] B7 B6 B5 B4 B3 B2 B1 B0 C1PS[1:0]:高级 PWM 通道 1 输出脚选择位 C1PS[1:0] PWM1P PWM1N 00 P1.0 P1.1 01 P2.0 P2.1 10 P6.0 P6.1 11 - - C2PS[1:0]:高级 PWM 通道 2 输出脚选择位 C2PS[1:0] PWM2P PWM2N 00 P5.4 P1.3 01 P2.2 P2.3 10 P6.2 P6.3 11 - - C3PS[1:0]:高级 PWM 通道 3 输出脚选择位 C3PS[1:0] PWM3P PWM3N 00 P1.4 P1.5 01 P2.4 P2.5 10 P6.4 P6.5 11 - - C4PS[1:0]:高级 PWM 通道 4 输出脚选择位 C4PS[1:0] PWM4P PWM4N 00 P1.6 P1.7 01 P2.6 P2.7 10 P6.6 P6.7 11 P3.4 P3.3 C5PS[1:0]:高级 PWM 通道 5 输出脚选择位 C5PS[1:0] PWM5 00 P2.0 01 P1.7 10 P0.0 11 P7.4 C6PS[1:0]:高级 PWM 通道 6 输出脚选择位 C6PS[1:0] PWM6 00 P2.1 01 P5.4 10 P0.1 11 P7.5 C7PS[1:0]:高级 PWM 通道 7 输出脚选择位 C7PS[1:0] PWM7 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 45 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 00 P2.2 01 P3.3 10 P0.2 11 P7.6 技术支持: 19864585985 选型顾问: 13922805190 C8PS[1:0]:高级 PWM 通道 8 输出脚选择位 C8PS[1:0] PWM8 00 P2.3 01 P3.4 10 P0.3 11 P7.7 3.1.7 高级 PWM 功能脚选择寄存器(PWMx_ETRPS) 符号 地址 PWMA_ETRPS 7EFEB0H BRKAPS ETRAPS[1:0] PWMB_ETRPS 7EFEB4H BRKBPS ETRBPS[1:0] B7 B6 B5 B4 B3 B2 B1 B0 ETRAPS[1:0]:高级 PWMA 的外部触发脚 ERI 选择位 ETRAPS [1:0] PWMETI 00 P3.2 01 P4.1 10 P7.3 11 - ETRBPS[1:0]:高级 PWMB 的外部触发脚 ERIB 选择位 ETRBPS [1:0] PWMETI2 00 P3.2 01 P0.6 10 - 11 - BRKAPS:高级 PWMA 的刹车脚 PWMFLT 选择位 BRKAPS PWMFLT 0 P3.5 1 比较器的输出 BRKBPS:高级 PWMB 的刹车脚 PWMFLT2 选择位 BRKBPS PWMFLT2 0 P3.5 1 比较器的输出 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 46 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 3.2 范例程序 3.2.1 串口 1 切换 技术支持: 19864585985 选型顾问: 13922805190 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" //头文件见下载软件 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // // // S1_S1 = 0; S1_S0 = 0; S1_S1 = 0; S1_S0 = 1; S1_S1 = 1; S1_S0 = 0; S1_S1 = 1; S1_S0 = 1; //RXD/P3.0, TXD/P3.1 //RXD_2/P3.6, TXD_2/P3.7 //RXD_3/P1.6, TXD_3/P1.7 //RXD_4/P4.3, TXD_4/P4.4 while (1); } 3.2.2 串口 2 切换 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 47 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // S2_S = 0; S2_S = 1; //RXD2/P1.0, TXD2/P1.1 //RXD2_2/P4.6, TXD2_2/P4.7 while (1); } 3.2.3 串口 3 切换 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" //头文件见下载软件 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // S3_S = 0; S3_S = 1; //RXD3/P0.0, TXD3/P0.1 //RXD3_2/P5.0, TXD3_2/P5.1 while (1); } 3.2.4 串口 4 切换 //测试工作频率为 11.0592MHz 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 48 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com //#include "stc8h.h" #include "stc32g.h" void main() { EAXFR = 1; WTST = 0x00; 技术支持: 19864585985 选型顾问: 13922805190 //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // S4_S = 0; S4_S = 1; //RXD4/P0.2, TXD4/P0.3 //RXD4_2/P5.2, TXD4_2/P5.3 while (1); } 3.2.5 SPI 切换 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // SPI_S1 = 0; SPI_S1 = 0; SPI_S1 = 0; SPI_S0 = 1; 深圳国芯人工智能有限公司 //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 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 49 - STC32G 系列技术手册 // // 官方网站: www.STCMCUDATA.com SPI_S1 = 1; SPI_S0 = 0; SPI_S1 = 1; SPI_S0 = 1; 技术支持: 19864585985 选型顾问: 13922805190 //SS_3/P5.4, MOSI_3/P4.0, MISO_3/P4.1, SCLK_3/P4.3 //SS_4/P3.5, MOSI_4/P3.4, MISO_4/P3.3, SCLK_4/P3.2 while (1); } 3.2.6 I2C 切换 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" //头文件见下载软件 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // // // I2C_S1 = 0; I2C_S0 = 0; I2C_S1 = 0; I2C_S0 = 1; I2C_S1 = 1; I2C_S0 = 0; I2C_S1 = 1; I2C_S0 = 1; //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.2.7 比较器输出切换 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" void main() { EAXFR = 1; WTST = 0x00; 深圳国芯人工智能有限公司 //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 50 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // CMPO_S = 0; CMPO_S = 1; //CMPO/P3.4 //CMPO_2/P4.1 while (1); } 3.2.8 主时钟输出切换 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // MCLKOCR = 0x04; MCLKOCR = 0x84; //IRC/4 output via MCLKO/P5.4 //IRC/4 output via MCLKO_2/P1.6 while (1); } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 51 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 4 封装尺寸图 4.1 LQFP32 封装尺寸图(9mm*9mm) 选型顾问: 13922805190 D (9mm) D1 (7mm) 24 17 16 32 9 E (9mm) E1 (7mm) 25 SYMBOL A A1 A2 A3 b1 b c D D1 E E1 e L L L1 R R1 1 8 e (0.80mm) b(0.30mm) ? 一般尺寸 测量单位:毫米/mm MIN TYP 1.45 1.55 0.01 1.35 1.40 0.254 0.30 0.35 0.31 0.37 0.127 8.80 9.00 6.90 7.00 8.80 9.00 6.90 7.00 0.70 0.80 0.43 1.00REF 0.25BSC 0.1 0.1 0° - MAX 1.65 0.21 1.45 0.40 0.43 9.20 7.10 9.20 7.10 0.90 0.71 0.25 10° (A-A的截面图) R1 R A3 A2 A c ? L A1 b1 b L1 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 52 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 QFN32 封装尺寸图(4mm*4mm) 4.2 D (4mm) 32 19 1 SYMBOL A A1 A2 A3 b D E D2 E2 e L K R C1 C2 18 E (4mm) PIN 1 8 17 9 16 K 27 一般尺寸 测量单位:毫米/mm MIN TYP 0.70 0.75 0 0.02 0.50 0.55 0.20REF 0.15 0.20 3.90 4.00 3.90 4.00 2.60 2.70 2.60 2.70 0.30 0.40 0.35 0.40 0.25REF 0.09 0.16 0.16 MAX 0.80 0.05 0.60 0.25 4.10 4.10 2.80 2.80 0.50 0.45 - 32 L e(0.4mm) 1 E2 R 17 b(0.20mm) 深圳国芯人工智能有限公司 12 C1 A3 7 A1 A D2 C2 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 53 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 LQFP48 封装尺寸图(9mm*9mm) 4.3 D (9mm) D1 (7mm) 25 37 24 48 13 E1 (7mm) E (9mm) 36 1 12 MAX 1.60 0.15 1.45 0.69 0.27 0.23 0.18 0.134 9.20 7.10 9.20 7.10 0.55 0.75 0.20 - b R1 A3 R2 A1 A2 A e (0.5mm) SYMBOL A A1 A2 A3 b b1 c c1 D D1 E E1 e L L1 L2 R1 R2 S 一般尺寸 测量单位:毫米/mm MIN TYP 0.05 1.35 1.40 0.59 0.64 0.18 0.17 0.20 0.13 0.12 0.127 8.80 9.00 6.90 7.00 8.80 9.00 6.90 7.00 0.45 0.50 0.45 0.60 1.00REF 0.25BSC 0.08 0.08 0.20 - L2 L b b1 c L1 c1 (A-A的截面图) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 54 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 QFN48 封装尺寸图(6mm*6mm) 4.4 D (6mm) 48 37 1 36 E (6mm) PIN 1 12 25 13 SYMBOL A A1 A3 b D E D2 E2 e L K R 一般尺寸 测量单位:毫米/mm MIN TYP 0.70 0.75 0.00 0.02 0.20REF 0.15 0.20 5.90 6.00 5.90 6.00 3.95 4.05 3.95 4.05 0.35 0.40 0.35 0.40 0.20 0.09 - MAX 0.80 0.05 0.25 6.10 6.10 4.15 4.15 0.45 0.45 - 24 K 39 48 A3 1 35 A1 A L E2 e(0.4mm) R D2 25 12 24 深圳国芯人工智能有限公司 b(0.20mm) 13 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 55 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 LQFP64 封装尺寸图(12mm*12mm) 4.5 A D (12mm) A2 D1 (10mm) 48 A3 33 49 32 E1 (10mm) E (12mm) TOP E-MARK 2-Φ1.8±0.1 DEPTH 0.1±0.05 BTM E-MARK 2-Φ1.8±0.1 DEPTH 0.1±0.05 INDEX Φ1.2±0.1 DEPTH 0.2±0.1 64 17 1 16 e (0.5mm) SYMBOL A A1 A2 A3 b b1 c c1 D D1 E E1 e L L1 L2 R1 R2 S ? ?1 ?2 ?3 深圳国芯人工智能有限公司 一般尺寸 测量单位:毫米/mm MIN TYP 0.05 1.35 1.40 0.59 0.64 0.18 0.17 0.20 0.13 0.12 0.127 11.80 12.00 9.90 10.00 11.80 12.00 9.90 10.00 0.50BSC 0.45 0.60 1.00REF 0.25BSC 0.08 0.08 0.20 0° 3.5° 0° 11° 12° 11° 12° A1 b ?2 R1 MAX 1.60 0.15 1.45 0.69 0.27 0.23 0.18 0.134 12.20 10.10 12.20 10.10 ?1 R2 ?3 ? L2 L1 L S b 0.75 b1 0.20 7° 13° 13° c c1 国内分销商电话: 0513-5501 2928/2929/2966 (A-A的截面图) 传真: 0513-5501 2926/2956/2947 - 56 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 QFN64 封装尺寸图(8mm*8mm) 4.6 D (8mm) 64 49 1 48 E (8mm) PIN 1 16 SYMBOL A A1 A2 A3 b D E D2 E2 e L K R 一般尺寸 测量单位:毫米/mm MIN TYP 0.70 0.75 0.00 0.02 0.50 0.55 0.20REF 0.15 0.20 7.90 8.00 7.90 8.00 5.90 6.00 5.90 6.00 0.30 0.40 0.30 0.40 0.40 0.09 - MAX 0.80 0.05 0.60 0.25 8.10 8.10 6.10 6.10 0.50 0.50 - 33 17 K 51 A3 A1 A 32 64 L 1 47 R e(0.4mm) E2 D2 33 16 32 深圳国芯人工智能有限公司 b(0.20mm) 17 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 57 - STC32G 系列技术手册 4.7 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 STC32G 系列单片机命名规则 STC 32X xK xx 程序空间大小 64:64K字节 128:128K字节 SRAM空间大小 40K:40K字节 子系列 32G:STC32G系列(无浮点) 32F:STC32F系列(有浮点) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 58 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 5 编译、仿真开发环境的建立与 ISP 下载 5.1 安装 Keil 5.1.1 安装 C251 编译环境 首先登录 Keil 官网,下载最新版的 C251 安装包,下载链接如下: Keil Product Downloads 信息随便填写,点确定后进入下载页面进行下载。 双击下载的安装包开始安装, 点击“Next”: 勾选“I agree to all the terms of the preceding License Agreement”,然后点击“Next”: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 59 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 选择安装目录,然后点击“Next”: 填写个人信息,然后点击“Next”: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 60 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 安装完成,点击“Finish”结束。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 61 - STC32G 系列技术手册 5.1.2 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 如何同时安装 Keil 的 C51、C251 和 MDK 旧版本的 Keil 软件的安装目录默认是 C:\Keil,C51、C251 和 MDK 分别会被安装在 C:\Keil 目录下 的 C51、C251 和 ARM 目录中,如下图所示。 新版本的 Keil 软件的安装目录默认是 C:\Keil_v5,C51、C251 和 MDK 分别会被安装在 C:\Keil_v5 目录下的 C51、C251 和 ARM 目录中,如下图所示。 无论是新版本还是旧版本,C51、C251 和 MDK 是安装在不同的目录,并不会有冲突。软件的和 谐也是 3 个软件分别进行的,之前已经安装完成并设置好的软件,并不会因为后续有安装新的软件而改 变。所以安装时只需要按照默认方式安装即可,Keil 软件会自动处理好。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 62 - STC32G 系列技术手册 5.2 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 添加型号和头文件到 Keil 使用 Keil 之前需要先安装 STC 的仿真驱动。STC 的仿真驱动的安装步骤如下: 首先开 STC 的 ISP 下载软件,然后在软件右边功能区的“Keil 仿真设置”页面中点击“添加型号和 头文件到 Keil 中 添加 STC 仿真器驱动到 Keil 中”按钮: 按下后会出现如下画面: 将目录定位到 Keil 软件的安装目录,然后确定。安装成功后会弹出如下的提示框: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 63 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 即表示驱动正确安装了 头文件默认复制到 Keil 安装目录下的“C251\INC\STC”目录中 在 C 代码中使用“#include ”或者“#include "STC32G.H"”进行包含均可正确使用 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 64 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 5.3 新建与设置超 64K 程序代码的项目(Source 模式) 5.3.1 设置项目路径和项目名称 打开 Keil 软件,并点击“Project”菜单中的“New uVision Project ...”项 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 65 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 将目录定位在准备好的项目文件夹中,并输入项目名称(例如:Demo) 5.3.2 选择目标单片机型号(STC32G12K128) 在弹出的“Select a CPU Data Base File”窗口中选择“STC MCU Database” 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 66 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 在“Select Device for Target ...”窗口中选择正确的目标单片机型号(例如:STC32G12K128) 5.3.3 添加源代码文件到项目 如下图所示,在“Source Group 1”所在的图标点击鼠标右键,并选择右键菜单中的“Add Files to Group ' Source Group 1'...” 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 67 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 选择已编辑完成的代码文件加入到项目中 5.3.4 设置项目 1(“CPU Mode”选择 Source 模式) 如下图所示,在“Target1”所在的图标点击鼠标右键,并选择“Options for Target ' Target 1'...” 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 68 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 在弹出的“Options for Target ' Target 1'”窗口中选择“Target”选项页,在“CPU Mode”的下拉选项中 选择“Source (251 Native)” 80251 的指令模式有“Binary”和“Source”两种模式,STC32G 系列目前只支持“Source”模式 由于 STC32G 系列单片机在中断中的压栈和出栈都是 4 字节模式,建议“4 Byte Interrupt Frame Size” 选项也打上钩 5.3.5 设置项目 2(“Memory Model”选择 XSmall 模式) 在“Memory Model”的下拉选项中选择“XSmall: ...”模式。80251 的存储器模式,在 Keil 环境下有如下 图所示的 5 种模式: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 69 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 各种模式对比如下表: Memory Model 默认变量类型 (数据存储器) 默认常量类型 (程序存储器) 默认指针变量 指针访问范围 Tiny 模式 data near 2 字节 00:0000 ~ 00:FFFF XTiny 模式 edata near 2 字节 00:0000 ~ 00:FFFF Small 模式 data far 4 字节 00:0000 ~ FF:FFFF XSmall 模式 edata far 4 字节 00:0000 ~ FF:FFFF Large 模式 xdata far 4 字节 00:0000 ~ FF:FFFF 由于 STC32G 的程序逻辑地址为 FE:0000H~FF:FFFFH,需要使用 24 位地址线才能正确访问,默认的 常量类型(程序存储器类型)必须使用“far”类型,默认指针变量必须为 4 字节。 所以不建议使用“Small”“Tiny”和“XTiny”模式,推荐使用“XSmall”模式,这种模式默认将变量 定义在内部 RAM(edata),单时钟存取,访问速度快,且 STC32G12K128 系列芯片有 12K 的 edata 可以使用; 使用“Small”模式时,默认将变量定义在内部 RAM(data),单时钟存取,访问速度快(data 默认只有 128 字 节,当用户对 RAM 需求超过 128 字节时,Keil 编译器会报错,此时用户需要将存储模式切换为 XSmall)数 量有限,容易报错,所以不建议使用;不推荐使用“Large”模式,虽然该模式也能正确访问 STC32G 的全 部 16M 寻址空间,但“Large”模式默认将变量定义在内部扩展 RAM(xdata)里面,存取需要 2~3 个时钟,访 问速度慢 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 70 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 与之相对应的 STC8H8K64U 系列,在 Keil 软件中的“Memory Model”有如下 3 个选择 各种模式对比如下表: Memory Model 默认变量类型 (数据存储器) 存储器大小 地址范围 Small 模式 data 128 字节 D:00 ~ D:7F Compact 模式 pdata 256 字节 X:0000 ~ X:00FF Large 模式 xdata 64K 字节(理论值) X:0000 ~ X:FFFF 为了达到比较高的效率,一般建议选择“Small”模式,当编译器出现“error C249: 'DATA': SEGMENT TOO LARGE”错误时,则需要手动将部分比较大的数组通过“xdata”强制分配到 XDATA 区域(例 如:char xdata buffer[256];) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 71 - STC32G 系列技术手册 5.3.6 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 设置项目 3(“Code Rom Size”选择 Large 或者 Huge 模 式) 在“Code Rom Size”的下拉选项中选择“Large: ...”或者“Huge: ...”模式 80251 的代码大小模式,在 Keil 环境下有如下图所示的 5 种模式: 各种模式对比如下表: 代码大小限制 Code Rom Size 跳转/调用指令 单个函数/模块/文件 的代码大小 总代码大小 Small 模式 AJMP/ACALL 2K 2K Medium 模式 内部模块代码使用 AJMP/ACALL 外部模块代码使用 LJMP/LCALL 2K 64K Compact 模式 LCALL/AJMP 2K 64K Large 模式 LCALL/LJMP 64K 64K Huge 模式 内部模块代码使用 LJMP/ECALL 外部模块代码使用 EJMP/ECALL (多文件项目中,文件内部的代码为内部模 块代码,其他文件的代码为外部模块代码) 64K 16M 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 72 - STC32G 系列技术手册 5.3.7 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 设置项目 4(超 64K 代码的相关设置) 如果代码大小在 64K 以内,选择“Large”模式即可。若代码大小超过 64K,则需要选择“Huge” 模式,并需要保证单个函数以及单个文件的代码大小必须在 64K 字节以内,并且单个表格的数据量也 必须在 64K 字节以内。同时还需要作如下图所示的设置: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 73 - STC32G 系列技术手册 5.3.8 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 设置项目 5(HEX 文件格式设置) “Options for Target ' Target 1'”窗口中选择“Output”选项页,勾选其中的“Create HEX File”选项。若 程序空间超过 64K,则“HEX format”必须选择“HEX-386”模式,只有程序空间在 64K 以内,“HEX format”才可选择 “HEX-80”模式; 完成上面的设置后,鼠标单击如下图所示的编译按钮,如果代码没有错误,即可生成 HEX 文件 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 74 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 5.4 Keil 中基于 STC32G 系列的汇编代码编写 5.4.1 代码大小在 64K 以内的汇编程序编写方法 P0 P0M1 P0M0 WTST 选型顾问: 13922805190 DATA DATA DATA DATA 080H 093H 094H 0E9H ORG JMP 0000H RESET ;复位入口地址 ;1. 64K 程序大小的代码,可直接使用 0000H 定义地址 ; 编译器会自动将代码连接到 FF:0000 开始的地方 ;2. 中断向量处可使用 JMP 语句,编译器会自动 ; 根据实际编译情况智能替换成 AJMP/LJMP/EJMP ORG JMP ORG JMP ORG JMP ORG JMP 0003H INT0_ISR 000BH TIMER0_ISR 0013H INT1_ISR 001BH TIMER1_ISR ;中断入口地址 ORG NOP 0200H ;中断函数 INT0_ISR: NOP NOP RETI ;64K 程序大小的中断使用 RETI 返回 TIMER0_ISR NOP NOP RETI INT1_ISR NOP NOP RETI TIMER1_ISR NOP NOP RETI RESET: MOV MOV SPX,#0100H WTST,#0 ;设置堆栈指针初始值 MOV MOV P0M0,#0 P0M1,#0 ;系统初始化 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 75 - STC32G 系列技术手册 MAINLOOP: INC LCALL JMP 官方网站: www.STCMCUDATA.com P0 DELAY MAINLOOP 技术支持: 19864585985 选型顾问: 13922805190 ;64K 程序大小的函数使用 LCALL 或者 ACALL 调用 DELAY: MOV WR0,#5 DEC JNE RET WR0,#1 DELAY1 DELAY1: ;64K 程序大小的函数使用 RET 返回 END 代码大小超过 64K 的汇编程序编写方法 5.4.2 P0 P0M1 P0M0 WTST DATA DATA DATA DATA 080H 093H 094H 0E9H ORG JMP 0FF:0000H RESET ;复位入口地址 ; 1. 超 64K 程序大小的代码, ; ORG 定址必须使用 0xx:xxxx 的方式 ;2. 中断向量处可使用 JMP 语句,编译器会自动 ; 根据实际编译情况智能替换成 AJMP/LJMP/EJMP ORG JMP ORG JMP ORG JMP ORG JMP 0FF:0003H INT0_ISR 0FF:000BH TIMER0_ISR 0FF:0013H INT1_ISR 0FF:001BH TIMER1_ISR ;中断入口地址 ORG 0FF:0200H ;中断函数 INT0_ISR: NOP NOP RETI ;中断返回 TIMER0_ISR: NOP NOP RETI INT1_ISR: NOP NOP RETI TIMER1_ISR: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 76 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 NOP NOP RETI RESET: MOV MOV MOV MOV MAINLOOP: INC ECALL JMP SPX,#0100H WTST,#0 ;设置堆栈指针初始值 P0M0,#0 P0M1,#0 ;系统初始化 P0 DELAY MAINLOOP ORG 0FE:0000H MOV WR0,#1000 DEC JNE ERET WR0,#1 DELAY1 ;超 64K 程序大小的函数使用 ECALL 调用 DELAY: DELAY1: ;超 64K 程序大小的函数使用 ERET 返回 END 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 77 - STC32G 系列技术手册 5.5 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 STC8H 系列项目转为 STC32G 系列 1、更改目标单片机型号。如下图所示,将 STC8H 项目的原单片机型号“STC8H8K64U”更改为 “STC32G12K128”型号 2、在“Options for Target “Target1””中的“Target”页中的按下图进行设置 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 78 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 3、更换头文件的引用。将原来的“#include “stc8h.h””替换为“#include “stc32g.h”” 由于 STC32G 系列和 STC8H 系列的 SFR 和 XFR,绝大部分是完全兼容的,所以经过上面的设置后, 再次编译基本都能通过。如有少量不兼容的地方稍作修改即可。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 79 - STC32G 系列技术手册 5.6 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 STC32G 系列项目转为 STC8H 系列 1、更改目标单片机型号。如下图所示,将 STC32G 项目的原单片机型号“STC32G12K128”更改为 “STC8H8K64U”型号 2、在“Options for Target “Target1””中的“Target”页中的按下图进行设置 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 80 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 3、更换头文件的引用。将原来的“#include “stc32g.h””替换为“#include “stc8h.h”” 由于 STC32G 系列和 STC8H 系列的 SFR 和 XFR,绝大部分是完全兼容的,所以经过上面的设置后, 再次编译基本都能通过。如有少量不兼容的地方稍作修改即可。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 81 - STC32G 系列技术手册 5.7 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 Keil 软件中获取帮助的简单方法 Keil 软件提供了很完整的帮组文件,对于一般的软件使用和编程问题,直接使用 Keil 软件的帮组基本 都可以得到解决。如下图: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 82 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 若需要了解项目设置中的相关设置的,可按下图所示的方法获取帮组 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 83 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 另外,也可在帮组窗口中直接输入想了解的内如。比如需要了解如何在程序中设置特殊的编译指示,可 按下图所示,在搜索框输入“#pragma”即可 如果需要更详细的帮组详细,可登录 Keil 官网进行查询 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 84 - STC32G 系列技术手册 5.8 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 在 Keil 中建立多文件项目的方法 在 Keil 中,一般比较小的项目都只有一个源文件,但对于一些稍微复杂的项目往往需要多个源文件 建立多文件项目的方法如下: 1、首先打开 Keil,在菜单“Project”中选择“New uVision Project ...” 即可完成一个空项目的建立 2、在空项目的项目树中,鼠标右键单击“Source Group 1”,并选择右键菜单中的“Add Existing Files to Group "Source Group 1" ...” 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 85 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 3、在弹出的文件对话框中,多次添加源文件 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 86 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 如下图所示即可完成多文件项目的建立 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 87 - STC32G 系列技术手册 深圳国芯人工智能有限公司 官方网站: www.STCMCUDATA.com 国内分销商电话: 0513-5501 2928/2929/2966 技术支持: 19864585985 选型顾问: 13922805190 传真: 0513-5501 2926/2956/2947 - 88 - STC32G 系列技术手册 5.9 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 关于中断号大于 31 在 Keil 中编译出错的处理 注:目前 Keil 各个版本的 C51 和 C251 编译器均只支持 32 个中断号(0~31),经我公司与 Keil 公司多方协商和探讨,Keil 公司答应会在后续某个版本增加我公司对中断号超过 32 个的需求。但对于 目前现有的 Keil 版本,只能使用本章节的方法进行临时解决。 5.9.1 使用网上流行的中断号拓展工具 热心网友有提供一个简单的拓展工具,可将中断号拓展到 254。工具界面如下: 点击“打开”按钮,定位到 Keil 的安装目录后,点击“确定”即可。 由于 Keil 的版本在不断更新,而早期版本过多,有无法收集齐,这里列举一下已测试通过的 C51.EXE 版本和 C251.EXE 版本 已测试通过的 C51.EXE 版本: V6.12.0.1 V8.8.0.1 V9.0.0.1 V9.1.0.1 V9.53.0.0 V9.54.0.0 V9.57.0.0 V9.59.0.0 V9.60.0.0 已测试通过的 C251.EXE 版本: V5.57.0.0 V5.60.0.0 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 89 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 查看 C51.EXE 版本的方法: 在 keil 中打开一个基于 STC8 系列或者 STC15 系列单片机的项目,在 Keil 软件菜单项“Help”中打开 “About uVision...” 查看 C251.EXE 版本的方法: 在 keil 中打开一个基于 STC32G 系列单片机的项目,在 Keil 软件菜单项“Help”中打开“About uVision...” 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 90 - STC32G 系列技术手册 5.9.2 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 使用保留中断号进行中转 在 Keil 的 C251 编译环境下,中断号只支持 0~31,即中断向量必须小于 0100H。 下表是 STC 目前所有系列的中断列表: 中断号 中断向量 0 0003 H INT0 1 000B H 定时器 0 2 0013 H INT1 3 001B H 定时器 1 4 0023 H 串口 1 5 002B H ADC 6 0033 H LVD 8 0043 H 串口 2 9 004B H SPI 10 0053 H INT2 11 005B H INT3 12 0063 H 定时器 2 13 006B H 14 0073 H 深圳国芯人工智能有限公司 中断类型 系统内部中断 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 91 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 15 007B H 系统内部中断 16 0083 H INT4 17 008B H 串口 3 18 0093 H 串口 4 19 009B H 定时器 3 20 00A3 H 定时器 4 21 00AB H 比较器 24 00C3 H I2C 25 00CB H USB 26 00D3 H PWMA 27 00DB H PWMB 28 00E3 H CAN1 29 00EB H CAN2 30 00F3 H LIN 36 0123 H RTC 37 012B H P0 口中断 38 0133 H P1 口中断 39 013B H P2 口中断 40 0143 H P3 口中断 41 014B H P4 口中断 42 0153 H P5 口中断 43 015B H P6 口中断 44 0163 H P7 口中断 45 016B H P8 口中断 46 0173 H P9 口中断 47 017BH M2M DMA 中断 48 0183H ADC DMA 中断 49 018BH SPI DMA 中断 50 0193H UR1T DMA 中断 51 019BH UR1R DMA 中断 52 01A3H UR2T DMA 中断 53 01ABH UR2R DMA 中断 54 01B3H UR3T DMA 中断 55 01BBH UR3R DMA 中断 56 01C3H UR4T DMA 中断 57 01CBH UR4R DMA 中断 58 01D3H LCM DMA 中断 59 01DBH LCM 中断 60 01E3H I2CT DMA 中断 61 01EBH I2CR DMA 中断 62 01F3H I2S 中断 63 01FBH I2ST DMA 中断 64 0203H I2SR DMA 中断 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 技术支持: 19864585985 选型顾问: 13922805190 传真: 0513-5501 2926/2956/2947 - 92 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 不难发现,RTC 中断开始,后面所有的中断服务程序,在 keil 中均会编译出错,如下图所示: 处理这种错误有如下三种方法:(均需要借助于汇编代码,优先推荐使用方法 1) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 93 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 方法 1:借用 13 号中断向量 0~31 号中断中,第 13 号是保留中断号,我们可以借用此中断号 操作步骤如下: 1、将我们报错的中断号改为“13”,如下图: 2、新建一个汇编语言文件,比如“isr.asm”,加入到项目,并在地址“0103H”的地方添加一条“LJMP 006BH”,如下图: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 94 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 3、编译即可通过。 此时经过 Keil 的 C51 编译器编译后,在 006BH 处有一条“LJMP 条“LJMP 006BH”,如下图: 选型顾问: 13922805190 PWM5_ISR”,在 0103H 处有一 当发生 PWM5 中断时,硬件会自动跳转到 0103H 地址执行“LJMP 006BH”,然后在 006BH 处再 执行“LJMP PWM5_ISR”即可跳转到真正的中断服务程序,如下图: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 95 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 中断服务程序执行完成后,再通过 RETI 指令返回。整个中断响应过程只是多执行了一条 LJMP 语句而 已。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 96 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 方法 2:与方法 1 类似,借用用户程序中未使用的 0~31 的中断号 比如在用户的代码中,没有使用 INT0 中断,则可将上面的代码作类似与方法 1 的修改: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 97 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 执行效果与方法 1 相同,此方法适用于需要重映射多个中断号大于 31 的情况。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 98 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 方法 3:将中断服务程序定义成子程序,然后在汇编代码中的中断入口地址中 使用 LCALL 指令执行服务程序 操作步骤如下: 1、首先将中断服务程序去掉“interrupt”属性,定义成普通子程序 2、然后在汇编文件的 0103H 地址输入如下图所示的代码 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 99 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 3、编译通过后,即可发现在 0103H 地址的地方即为中断服务程序 此方法不需要重映射中断入口,不过这种方法有一个问题,在汇编文件中具体需要将哪些寄存器压入堆 栈,需要用户查看 C 程序的反汇编代码来确定。一般包括 PSW、ACC、B、DPL、DPH 以及 R0~R7。 除 PSW 必须压栈外,其他哪些寄存器在用户子程序中有使用,就必须将哪些寄存器压栈。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 100 - STC32G 系列技术手册 5.10 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 程序超 64K 时如何设置保留 EEPROM 空间 若用户代码大小在 64K 以内,则可设置“Code Rom Size”为“Large”模式,Keil 编译器在链接代 码块时会自动将代码全部链接在 FF:0000~FF:FFFF 的地址范围内。FE:0000~FE:FFFF 的 64K 可根据 用户的 EEPROM 大小设置,任意使用 若用户代码大小超过 64K,则“Code Rom Size”必须设置为“Huge”模式,此时 Keil 编译器在链 接代码块时,首先会将复位代码和中断向量代码链接在 FF:0000 开始的地址,其他代码块则会自动从用 户设置的地址范例开始存放。由于 STC32G12K128 的 EEPROM 在 FLASH 中的地址固定为 FE:0000, 所以为了让编译器不要将用户代码放在 EEPROM 区,则必须进行如下的相应设置: 比如用户需要 EEPROM 的大小为 8K,即 FLASH 地址的 FE:0000~FE:1FFF 区域为 EEPROM 区域, FLASH 地址的 FE:2000~FF:FFFF 区域为用户代码区。则在 Keil 中需要进行如下设置: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 101 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 在 ISP 下载软件中需要进行如下设置: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 102 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 5.11 使用 STC-USB Link1 对 STC32G 系列单片机进行仿真 5.11.1 认识 STC-USB Link1 工具(暂无外壳) 注:工具的大 USB 接头和小 USB 接口,任选一个连接到电脑即可。 5.11.2 硬件连接方式 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 103 - STC32G 系列技术手册 5.11.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 安装仿真驱动 首先从 STC 官网下载最新的 STC-ISP 下载软件 下载并解压完成后,打开软件包中的“stc-isp-vxx.exe”可执行文件 点击下载软件“Keil 仿真设置”页面中的“添加型号和头文件...”按钮(如下图“2”) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 104 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 在弹出的“浏览文件夹”窗口中,选中 Keil 的安装目录(一般 Keil 的安装目录为“c:\keil”), 点击确定后,若弹出“STC MCU 型号添加成功”则表示驱动已安装完成。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 105 - STC32G 系列技术手册 5.11.4 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 制作仿真芯片 芯片出厂时默认是不使能硬件仿真功能的,若要启用硬件仿真功能,则需要使用 ISP 下载软件进 行设置。 选择“使用 SWD 口进行仿真”,下载完成后,芯片就具有仿真功能了。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 106 - STC32G 系列技术手册 5.11.5 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 在 Keil 软件中创建并设置项目 指定项目路径,并输入项目名称 选择目标芯片型号:STC32G12K128 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 107 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 创建代码文件并加入项目 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 108 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 项目设置 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 109 - STC32G 系列技术手册 深圳国芯人工智能有限公司 官方网站: www.STCMCUDATA.com 国内分销商电话: 0513-5501 2928/2929/2966 技术支持: 19864585985 选型顾问: 13922805190 传真: 0513-5501 2926/2956/2947 - 110 - STC32G 系列技术手册 5.11.6 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 编译、下载并仿真 在 Keil 环境下,编辑完成源代码,并编译无误后,即可开始仿真 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 111 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 若芯片制作和连接均无误,则会如上图所示显示仿真驱动版本,并可正确下载用户代码到单片机, 接下来便可进行运行、单步、断点等调试功能了。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 112 - STC32G 系列技术手册 5.12 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 使用 ISP 进行烧录 首先使用串口工具将待烧录芯片与电脑正确连接,然后打开 STC 的 ISP 下载软件(例如:“STC-ISP (Ver6.87Q)”及其以后的版本) 在上面的界面中,下面几点需要注意: 1、 选择待烧录的单片机型号,如:“STC32G12K128” 2、 串口必须选择串口工具所对应的串口号。 点击界面中的“打开程序文件”按钮,在出现的打开程序代码文件的对话框中选择需要下载的文件: 文件正确打开后,设置对应的硬件选项,然后点击界面中的“下载/编程”按钮开始下载流程: 此时 ISP 软件开始试图与单片机进行握手,检测目标单片机 接下来需要给单片机进行上电,上电复位过程中检测到握手信号就进入下载流程开始下载。 若下载成功,会出现操作成功的提示画面。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 113 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com ISP 下载典型应用线路图 5.13.1 使用 PL2303-GL 下载 选型顾问: 13922805190 P5.2 P0.4 P0.3 P0.2 P0.1 P0.0 P4.6 P4.5 P2.7 P2.6 P2.5 P2.4 48 47 46 45 44 43 42 41 40 39 38 37 5.13 技术支持: 19864585985 P5.3 P0.5 P0.6 P0.7 P1.0 P1.1 P4.7 P1.4 P1.5 P1.6 P1.7 P1.3 P2.3 P2.2 P2.1 P2.0 P4.4 P4.3 P4.2 P4.1 P3.7 P3.6 P3.5 P5.1 STC32G12K128 36 35 34 33 32 31 30 29 28 27 26 25 UCap P5.4 Vcc VRef Gnd P4.0 P3.0 P3.1 P3.2 P3.3 P3.4 P5.0 1 2 3 4 5 6 7 8 9 10 11 12 USB +5V 0.1u 10u 0.1u 13 14 15 16 17 18 19 20 21 22 23 24 系统电源 (可从USB取电) 此处的二极管和电阻的作用是防止USB器件给目标芯片 供电。由于目标芯片断电过程中,USB器件是不能断电 的,USB器件的发送脚一般都是强推挽输出,电流能达 到5~10mA,而STC32G系列的单片机功耗又极低,低电 流下芯片就能工作,所以当使用这种模式对STC单片机 下载程序时,此处的二极管和电阻不能省 USB +5V Vin 1N5819 Power On 47u 1 2 3 4 MCU_VCC 100欧 GND VO33 TXD VBUS IO_VDD DM RXD DP 8 7 6 5 PL2303-GL SOP8 C? 1 +5V 2 D3 D+ 4 GND 注意:PL2303GL的Pin3/IO_VDD, 在本下载线路图中 应直接连到USB+5V, 以前我们的参考图连到MCU_VCC, 有误,请改正 C? 系统时钟10MHz 103(0.01uF) ISP 下载步骤: 1、 给目标芯片停电,注意不能给 USB 转串口芯片停电(如:CH340、PL2303-GL 等) 2、 由于 USB 转串口芯片的发送脚一般都是强推挽输出,必须在目标芯片的 P3.0 口和 USB 转串口芯片 的发送脚之间串接一个二极管,否则目标芯片无法完全断电,达不到给目标芯片停电的目标。 3、 点击 STC-ISP 下载软件中的“下载/编程”按钮 4、 给目标芯片上电 5、 开始 ISP 下载 注意:目前有发现使用 USB 线供电进行 ISP 下载时,由于 USB 线太细,在 USB 线上的压降过大,导 致 ISP 下载时供电不足,所以请在使用 USB 线供电进行 ISP 下载时,务必使用 USB 加强线。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 114 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 使用通用 USB 转串口工具下载 5.13.2 连接 电脑/PC P5.2 P0.4 P0.3 P0.2 P0.1 P0.0 P4.6 P4.5 P2.7 P2.6 P2.5 P2.4 48 47 46 45 44 43 42 41 40 39 38 37 通用USB转串口工具 (人民币30元) 0.1u STC32G12K128 UCap P5.4 Vcc VRef Gnd P4.0 P3.0/DP3.1/D+ P3.2 P3.3 P3.4 P5.0 P5.3 P0.5 P0.6 P0.7 P1.0 P1.1 P4.7 P1.4 P1.5 P1.6 P1.7 P1.3 P2.3 P2.2 P2.1 P2.0 P4.4 P4.3 P4.2 P4.1 P3.7 P3.6 P3.5 P5.1 36 35 34 33 32 31 30 29 28 27 26 25 13 14 15 16 17 18 19 20 21 22 23 24 1 2 3 4 5 6 7 8 9 10 11 12 Vcc 47u 0.1u ISP 下载步骤: 1、 按照如图所示的连接方式将通用 USB 转串口工具和目标芯片连接 2、 按下电源按钮,确定目标芯片处于停电状态(上电指示灯为灭的状态)。注意:工具第一次上电时 是不对外供电的,因此若是第一次上电使用此工具,可跳过此步。 3、 点击 STC-ISP 下载软件中的“下载/编程”按钮 4、 再次按下电源按钮,给目标芯片上电(上电指示灯为亮的状态) 5、 开始 ISP 下载 注意:目前有发现使用 USB 线供电进行 ISP 下载时,由于 USB 线太细,在 USB 线上的压降过大,导 致 ISP 下载时供电不足,所以请在使用 USB 线供电进行 ISP 下载时,务必使用 USB 加强线。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 115 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 使用 U8-Mini 工具下载,支持 ISP 在线和脱机下载 5.13.3 连接 电脑/PC P5.2 P0.4 P0.3 P0.2 P0.1 P0.0 P4.6 P4.5 P2.7 P2.6 P2.5 P2.4 48 47 46 45 44 43 42 41 40 39 38 37 STC USB型 脱机/联机烧录工具 U8W Mini(人民币50元) 0.1u STC32G12K128 UCap P5.4 Vcc VRef Gnd P4.0 P3.0/DP3.1/D+ P3.2 P3.3 P3.4 P5.0 P5.3 P0.5 P0.6 P0.7 P1.0 P1.1 P4.7 P1.4 P1.5 P1.6 P1.7 P1.3 P2.3 P2.2 P2.1 P2.0 P4.4 P4.3 P4.2 P4.1 P3.7 P3.6 P3.5 P5.1 36 35 34 33 32 31 30 29 28 27 26 25 13 14 15 16 17 18 19 20 21 22 23 24 1 2 3 4 5 6 7 8 9 10 11 12 Vcc 47u 0.1u ISP 下载步骤: 1、 按照如图所示的连接方式将 U8-Mini 和目标芯片连接 2、 点击 STC-ISP 下载软件中的“下载/编程”按钮 3、 开始 ISP 下载 注意:若是使用 U8-Mini 给目标系统供电,目标系统的总电流不能大于 200mA,否则会导致下载失败。 注意:目前有发现使用 USB 线供电进行 ISP 下载时,由于 USB 线太细,在 USB 线上的压降过大,导 致 ISP 下载时供电不足,所以请在使用 USB 线供电进行 ISP 下载时,务必使用 USB 加强线。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 116 - STC32G 系列技术手册 技术支持: 19864585985 选型顾问: 13922805190 使用 U8W 工具下载,支持 ISP 在线和脱机下载 P5.2 P0.4 P0.3 P0.2 P0.1 P0.0 P4.6 P4.5 P2.7 P2.6 P2.5 P2.4 48 47 46 45 44 43 42 41 40 39 38 37 5.13.4 官方网站: www.STCMCUDATA.com 0.1u STC32G12K128 UCap P5.4 Vcc VRef Gnd P4.0 P3.0/DP3.1/D+ P3.2 P3.3 P3.4 P5.0 P5.3 P0.5 P0.6 P0.7 P1.0 P1.1 P4.7 P1.4 P1.5 P1.6 P1.7 P1.3 Vcc 47u P2.3 P2.2 P2.1 P2.0 P4.4 P4.3 P4.2 P4.1 P3.7 P3.6 P3.5 P5.1 36 35 34 33 32 31 30 29 28 27 26 25 STC USB型 脱机 /联机烧录工具 U8W(人民币100 元) 13 14 15 16 17 18 19 20 21 22 23 24 1 2 3 4 5 6 7 8 9 10 11 12 0.1u 芯片可直接放在此绿色的锁紧座上 进行ISP编程,也可如左边的连接方 式进行引线下载 连接 电脑/PC ISP 下载步骤(连线方式): 1、 按照如图所示的连接方式将 U8W 和目标芯片连接 2、 点击 STC-ISP 下载软件中的“下载/编程”按钮 3、 开始 ISP 下载 注意:若是使用 U8W 给目标系统供电,目标系统的总电流不能大于 200mA,否则会导致下载失败。 ISP 下载步骤(在板方式): 1、 将芯片按照 1 脚靠近锁紧扳手、管脚向下靠齐的方向放置好目标芯片 2、 点击 STC-ISP 下载软件中的“下载/编程”按钮 开始 ISP 下载 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 117 - STC32G 系列技术手册 5.13.5 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 U8W 直通模式,可用于仿真、串口通信 若要使用 U8W 进行仿真,首先必须将 U8W 设置为直通模式。U8W/U8W-Mini 实现 USB 转串口直通 模式的方法如下: 1、 首先 U8W/U8W-Mini 固件必须升级到 v1.37 及以上版本 2、 U8W/U8W-Mini 上电后为正常下载模式,此时按住工具上的 Key1(下载)按键不要松开,再按一 下 Key2(电源)按键,然后放开 Key2(电源)按键 后, 再松开 Key1(下载)按键,U8W/U8W-Mini 会进入 USB 转串口直通模式。(按下 Key1  按下 Key2  松开 Key2  松开 Key1) 3、 进入直通模式的 U8W/U8W-Mini 工具只是简单的 USB 转串口不具备脱机下载功能,若需要恢复 U8W/U8W-Mini 的原有功能,只需要再次单独按一下 Key2(电源)按键 即可 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 118 - STC32G 系列技术手册 5.13.6 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 硬件 USB 直接 ISP 下载,仿真后续支持 P5.2 P0.4 P0.3 P0.2 P0.1 P0.0 P4.6 P4.5 P2.7 P2.6 P2.5 P2.4 48 47 46 45 44 43 42 41 40 39 38 37 注 1:使用 USB 下载时需要将 P3.2 接 Gnd 才可进行正常下载(P3.2 只需上电过程中接 Gnd,下载过程 中不需要一直接 Gnd,一直接地也没有关系) 注 2:若不需要进行 USB 下载,芯片复位时 P3.0/P3.1/P3.2 不可同时为低电平,否则芯片将会一直处于 USB 下载模式而不会运行用户代码 0.1u UCap P5.4 Vcc VRef Gnd P4.0 P3.0/DP3.1/D+ P3.2 P3.3 P3.4 P5.0 STC32G12K128 P2.3 P2.2 P2.1 P2.0 P4.4 P4.3 P4.2 P4.1 P3.7 P3.6 P3.5 P5.1 如需要直接连接USB进行下载, 请务必在PCB上预留此线路。 按住此按钮然后连接USB,可进 行ISP下载,若连接USB时没有按住 此按钮,则不会进入ISP,而是直 接运行用户代码 注意:使用USB直接下载不能调 节内部IRC的频率,但可在下载时 选择内部预置的频率。只有硬件 USB下载才有此功能,模拟USB下 载无此功能 36 35 34 33 32 31 30 29 28 27 26 25 USB+5V 1 D2 D+ 3 Vcc 4 5 10K USB-Micro 系统电源 (可从USB取电) P5.3 P0.5 P0.6 P0.7 P1.0 P1.1 P4.7 P1.4 P1.5 P1.6 P1.7 P1.3 13 14 15 16 17 18 19 20 21 22 23 24 1 2 3 4 5 6 7 8 9 10 11 12 Vin 300R Power On Vcc 47u 22R C? 22R 建议添加此上拉电阻 47u钽电容(封装3528)参考价= 1; RSTCFG = LVD2V4; delay(); LVDF = 0; delay(); if (LVDF) { power >>= 1; RSTCFG = LVD2V0; delay(); LVDF = 0; delay(); if (LVDF) { power >>= 1; } } } } RSTCFG = LVD3V0; P2 = ~power; //P2.3~P2.0 显示电池电量 } } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 165 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 存储器(32 位访问,16 位访问,8 位访问) 9 STC32G 系列单片机的程序存储器和数据存储器是统一编址的。STC32G 系列单片机提供 24 位寻 址空间,最多能够访问 16M 的存储器(8M 数据存储器+8M 程序存储器)。由于没有提供访问外部程 序存储器的总线,所以单片机的所有程序存储器都是片上 Flash 存储器,不能访问外部程序存储器。 STC32G 系列单片机内部集成了大容量的数据存储器。STC32G 系列单片机内部的数据存储器在物 理和逻辑上都分为两个地址空间:内部 RAM(edata)和内部扩展 RAM(xdata)。 FF:FFFFH FF:0000 ~ FF:FFFF的64K程序空间与传统的 8051的0000~FFFF兼容,为code区域; FE:0000 ~ FE:FFFF的64K程序空间为扩展程 序空间,为ecode区域 64KB程序空间 code code区域 (64K) FF:0000H FE:FFFFH 程序复位入口地址 64KB程序空间 ecode FE:0000H FD:FFFFH ecode区域 最大(8M-64K) 保留 80:0000H FF:FFFFH 7F:FFFFH 64K片外扩展RAM 7F:0000H 8M程序空间 7E:FFFFH 80:0000H 7F:FFFFH 扩展SFR 7E:0000H 8M数据空间 xdata区域 最大(8M-64K) 7D:FFFFH 保留 00:0000H 01:2000H 01:1FFFH 8K字节扩展RAM xdata 01:0000H 00:FFFFH xdata区域在C语言代码中使用“xdata”关 键字声明变量,edata区域在C语言代码中使 用“edata”关键字声明变量。 保留 整个64K的edata区域均可当堆栈使用(传统 8051堆栈最大256字节) 4K字节RAM edata 00:1000H 00:0FFFH edata区域 最大64K 00:0000H 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 166 - STC32G 系列技术手册 9.1 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 程序存储器 程序存储器用于存放用户程序、固定不变的数据以及表格等信息。 单片机系列 Flash 程序存储器 (ROM) 地址范围 STC32G12K128 系列 128K 字节 FE:0000H~FF:FFFFH STC32G8K64 系列 64K 字节 FF:0000H~FF:FFFFH STC32F12K60 系列 60K 字节 FF:0000H~FF:EFFFH FF:FFFFH 64K … FF:001BH FF:0013H FF:000BH FF:0003H FF:0000H FE:FFFFH 中断向量入口地址 程序复位入口地址 64K FE:0000H (STC32G 系列与传统 8051 中断入口地址对比) STC32G 系列 传统 8051 复位入口地址 FF:0000H 0000H INT0 中断入口地址 FF:0003H 0003H TIMER0 中断入口地址 FF:000BH 000BH INT1 中断入口地址 FF:0013H 0013H TIMER1 中断入口地址 FF:001BH 001BH UART 中断入口地址 FF:0023H 0023H 单片机复位后,程序计数器(PC)的内容为 FF:0000H,从 FF:0000H 单元开始执行程序。另外中断服务程 序的入口地址(又称中断向量)也位于程序存储器单元。在程序存储器中,每个中断都有一个固定的入口地址, 当中断发生并得到响应后,单片机就会自动跳转到相应的中断入口地址去执行程序。外部中断 0(INT0)的 中断服务程序的入口地址是 FF:0003H,定时器/计数器 0(TIMER0)中断服务程序的入口地址是 FF:000BH, 外部中断 1(INT1)的中断服务程序的入口地址是 FF:0013H,定时器/计数器 1(TIMER1)的中断服务程序的 入口地址是 FF:001BH 等。更多的中断服务程序的入口地址(中断向量)请参考中断介绍章节。 由于相邻中断入口地址的间隔区间仅仅有 8 个字节,一般情况下无法保存完整的中断服务程序,因此在 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 167 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 中断响应的地址区域存放一条无条件转移指令,指向真正存放中断服务程序的空间去执行。 STC32G 系列单片机中都包含有 Flash 数据存储器(EEPROM)。以字节为单位进行读/写数据,以 512 字 节为页单位进行擦除,可在线反复编程擦写 10 万次以上,提高了使用的灵活性和方便性。 9.1.1 程序读取等待控制寄存器(WTST) 符号 地址 WTST E9H B7 B6 B5 B4 B3 B2 B1 B0 WTST[7:0] WTST[7:0]:CPU 读取程序存储器的等待时间控制 WTST[7:0] 等待时钟数 0 0 个时钟 1 1 个时钟 … … 7 7 个时钟 8 保留 … 保留 255 保留 每条指令的实际执行时钟数=指令时钟数+程序存储器的等待时钟数 注:STC32G12K128 系列的 A 版芯片,WTST 寄存器的上电默认值为 7,当用户的工作频率在 35MHz 以下 时,建议修改为 0,可加快 CPU 运行程序的速度。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 168 - STC32G 系列技术手册 9.2 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 数据存储器(32 位访问,16 位访问,8 位访问) STC32G 的 edata 区域可对 32-BIT/16-BIT/8-BIT 的数据进行单时钟读写访问,xdata 区域可对 16-BIT/8-BIT 的数据读写访问。edata 区域的 SRAM 目前的最大存储深度已设计为 64K 字节;xdata 区 域的 SRAM 最大存储深度为 8M 字节。 将来新增的特殊功能寄存器 32-BIT SFR32(如 ADC_DATA32),如将 SFR32 的逻辑地址映射在 edata 区域,就可以支持对新增特殊功能寄存器的 32-BIT/16-BIT/8-BIT 访问; 将来新增的特殊功能寄存器 16-BIT SFR16(如 ADC_DATA16),如将 SFR16 的逻辑地址映射在 xdata 区域,就可以支持对新增特殊功能寄存器的 16-BIT/8-BIT 访问 STC32G 系列单片机内部集成的 RAM 可用于存放程序执行的中间结果和过程数据。 内部 RAM 内部扩展 RAM (edata) (xdata) STC32G12K128 系列 4K 字节 8K 字节 STC32G8K64 系列 2K 字节 6K 字节 STC32F12K60 系列 8K 字节 4K 字节 单片机系列 EDATA:单时钟存取,访问速度快,可做堆栈使用,成本高; XDATA:存取需要 2~3 个时钟,访问速度慢,寻址空间可达 8M,成本低。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 169 - STC32G 系列技术手册 9.2.1 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 Keil 选项 Memory Model 设置 对于 STC32G 系列的项目的存储器模式,在 Keil 环境下有如下图所示的 5 种模式: 各种模式对比如下表: Memory Model 默认变量类型 (数据存储器) 默认常量类型 (程序存储器) 默认指针变量 指针访问范围 Tiny 模式 data near 2 字节 00:0000 ~ 00:FFFF XTiny 模式 edata near 2 字节 00:0000 ~ 00:FFFF Small 模式 data far 4 字节 00:0000 ~ FF:FFFF XSmall 模式 edata far 4 字节 00:0000 ~ FF:FFFF Large 模式 xdata far 4 字节 00:0000 ~ FF:FFFF 由于 STC32G 的程序逻辑地址为 FE:0000H~FF:FFFFH,需要使用 24 位地址线才能正确访问,默认的 常量类型(程序存储器类型)必须使用“far”类型,默认指针变量必须为 4 字节。 所以不建议使用“Tiny”和“XTiny”模式,推荐使用“XSmall”模式,这种模式默认将变量定义在内 部 RAM(edata),单时钟存取,访问速度快,且 STC32G12K128 系列芯片有 12K 的 edata 可以使用;也可“Small” 模式,这种模式默认将变量定义在内部 RAM(data),单时钟存取,访问速度快,(data 默认只有 128 字节, 当用户对 RAM 需求超过 128 字节时,Keil 编译器会报错,此时用户需要将存储模式切换为 XSmall);不推 荐使用“Large”模式,虽然该模式也能正确访问 STC32G 的全部 16M 寻址空间,但“Large”模式默认将变 量定义在内部扩展 RAM(xdata)里面,存取需要 2~3 个时钟,访问速度慢 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 170 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 STC32G 系列单片机的 C 语言变量声明建议: 1、 当用户变量需求量较小时,建议不要使用“edata、xdata”等关键字声明变量,而使用如下方式直 接声明变量: char bCounter = 1; //声明字节变量 int wCounter = 100; //声明双字节变量 long dwCounter = 0x1234; //声明 4 字节变量 然后在项目选项中将“Memory Model”设置为“XSmall”,让编译器自动将声明的变量分配到 edata 区域 2、 当用户变量需求量接近或超过(单片机 edata 容量-1K)的大小时,建议将超出部分使用“xdata” 关键字强制分配到 xdata 区域,如下所示: int xdata pBuffer = 5; 深圳国芯人工智能有限公司 //使用 xdata 关键字强制分配到 xdata 区域 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 171 - STC32G 系列技术手册 9.2.2 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 内部 edata-RAM(C 语言声明关键字为 edata) 内部可 edata-RAM 共 4K 字节,4K 字节低端的 256 字节与 8051 的 256 字节 DATA 完全兼容,可分为 2 个部分:低 128 字节 RAM 和高 128 字节 RAM。低 128 字节的数据存储器与传统 8051 兼容,既可直接寻址 也可间接寻址。高 128 字节 RAM(在 8052 中扩展了高 128 字节 RAM)只能间接寻址。特殊功能寄存器分 布在 80H~FFH 区域,只可直接寻址。 低端 256 字节 RAM 的结构如下图所示: STC32G12K128 的堆栈放在 EDATA,设计上理论深度可达 64K,实际放了 4K Bytes;STC32G12K128 的 普通扩展 XDATA,设计上理论深度可达(8M-64K),实际放了 8K Bytes。所以 STC32G12K128 的 SRAM 总共是 12K(4K edata + 8K xdata)。 在 C 语言代码中将变量声明在 EDATA 区域,即可实现单时钟进行 32 位/16 位/8 位的读写操作 char edata bCounter; //在 EDATA 区域声明字节变量(单时钟进行 8 位读写操作) int edata wCounter; //在 EDATA 区域声明双字节变量(单时钟进行 16 位读写操作) long edata dwCounter; //在 EDATA 区域声明 4 字节变量(单时钟进行 32 位读写操作) 在 C 语言代码中将变量声明在 XDATA 区域,即可实现 8 位/16 位的读写操作 char xdata bCounter; //在 XDATA 区域声明字节变量(3/2 个时钟进行 8 位读/写操作) int xdata wCounter; //在 XDATA 区域声明双字节变量(3/2 个时钟进行 16 位读/写操作) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 172 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 程序状态寄存器(PSW) 9.2.3 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PSW D0H CY AC F0 RS1 RS0 OV - P RS1,RS0:工作寄存器选择位 RS1 RS0 工作寄存器组(R0~R7) 0 0 第 0 组(00H~07H) 0 1 第 1 组(08H~0FH) 1 0 第 2 组(10H~17H) 1 1 第 3 组(18H~1FH) 可位寻址区的地址从 20H ~ 2FH 共 16 个字节单元。20H~2FH 单元既可像普通 RAM 单元一样按字节存 取,也可以对单元中的任何一位单独存取,共 128 位,所对应的逻辑位地址范围是 00H~7FH。位地址范围是 00H~7FH,内部 RAM 低 128 字节的地址也是 00H~7FH,从外表看,二者地址是一样的,实际上二者具有本 质的区别;位地址指向的是一个位,而字节地址指向的是一个字节单元,在程序中使用不同的指令区分。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 173 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 内部 xdata-RAM(C 语言声明关键字为 xdata) 9.2.4 STC32G 系列单片机片内除了集成扩展 RAM。访问内部扩展 RAM 的方法和传统 8051 单片机访问外部 扩展 RAM 的方法相同,但是不影响 P0 口(数据总线和高八位地址总线)、P2 口(低八位地址总线)、以及 RD、 WR 和 ALE 等端口上的信号。 在汇编语言中,内部扩展 RAM 通过 MOVX 指令访问, MOVX A , @DPTR MOVX @DPTR , A MOVX A , @Ri MOVX @Ri , A 在 C 语言中,可使用 xdata 关键字声明存储类型即可。如: unsigned char xdata i; (强烈建议不要使用 pdata 关键字声明变量) 单片机内部扩展 RAM 是否可以访问,受辅助寄存器 AUXR 中的 EXTRAM 位控制。 辅助寄存器(AUXR) 9.2.5 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 AUXR 8EH T0x12 T1x12 UART_M0x6 T2R T2_C/T T2x12 EXTRAM S1BRT EXTRAM:扩展 RAM 访问控制 0:禁止访问外部扩展 RAM。 1:使能访问外部扩展 RAM。 9.2.6 外部 xdata-RAM STC32G 系列单片机具有扩展 64KB 外部数据存储器的能力。访问外部数据存储器期间,WR/RD/ALE 信号 要有效。STC32G 系列单片机控制外部 64K 字节数据总线速度的特殊功能寄存器 BUS_SPEED,说明如下: 9.2.7 总线速度控制寄存器(BUS_SPEED) 符号 地址 BUS_SPEED A1H B7 B6 B5 B4 RW_S[1:0] B3 B2 B1 B0 SPEED[2:0] RW_S[1:0]:RD/WR 控制线选择位 00:P4.4 为 RD,P4.2 为 WR x1:保留 SPEED[2:0]:总线读写速度控制(读写数据时控制信号和数据信号的准备时间和保持时间) 读写外部扩展 RAM 时序如下图所示: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 174 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 选型顾问: 13922805190 高8位地址 P2 (A[15:8]) P0 (AD[7:0]) 技术支持: 19864585985 低8位地址 读出的数据 P4.5 (ALE) P4.4 (RD) 读外部扩展RAM 高8位地址 P2 (A[15:8]) P0 (AD[7:0]) 低8位地址 待写入的数据 P4.5 (ALE) P4.2 (WR) 写外部扩展RAM setup ADRL 深圳国芯人工智能有限公司 hold ADRL setup DAT 国内分销商电话: 0513-5501 2928/2929/2966 Read Write hold DAT 传真: 0513-5501 2926/2956/2947 - 175 - STC32G 系列技术手册 9.2.8 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 STC32G 系列单片机中可位寻址的数据存储器 STC32G 系列单片机内部可位寻址的数据存储器包括两部分:第一部分的地址范围为 DATA 区域的 20H~7FH,第二部分的地址范围是特殊功能寄存器 SFR:80H~FFH,下面对这两部分区域分别进行说明。 DATA 区域 DATA 区域的 00H~1FH 为寄存器 R0~R7 的映射区,不可位寻址,剩下 20H~7FH,共 96 个字节,每个 字节均可位寻址。 汇编代码的定义方法: BVAR1 BIT 20H.0 ;定义位变量 BVAR1 BVAR2 BIT 50H.1 ;定义位变量 BVAR2 BVAR3 BIT 70H.2 ;定义位变量 BVAR3 汇编代码的使用方法: SETB BVAR1 ;BVAR1 = 1 CLR BVAR2 ;BVAR2 = 0 CPL BVAR3 ;BVAR3 = ~BVAR3 C 语言代码的定义方法: char ebdata flag; //在可位寻址区域定义一个字节变量 sbit bVar1 = flag^0; //使用 sbit 在 flag 中声明位变量 bVar1 sbit bVar2 = flag^7; //使用 sbit 在 flag 中声明位变量 bVar2 bit ebdata bVar3; //使用 bit ebdata 直接声明位变量 bVar3 C 语言代码的使用方法: bVar1 = 1; //位变量置 1 bVar2 = 0; //位变量清 0 bVar3 = ~bVar3 //位变量取反 特殊功能寄存器(SFR)区域 全部 SFR 区域的 80H~FFH,共 128 个字节,每个字节均可位寻址。 汇编代码的定义方法: BVAR1 BIT 80H.0 ;定义位变量 BVAR1 BVAR2 BIT 87H.1 ;定义位变量 BVAR2 BVAR3 BIT FFH.2 ;定义位变量 BVAR3 汇编代码的使用方法: SETB BVAR1 ;BVAR1 = 1 CLR BVAR2 ;BVAR2 = 0 CPL BVAR3 ;BVAR3 = ~BVAR3 C 语言代码的定义方法: sfr P0 = 0x80; //定义 SFR sbit P00 = P0^0; //使用 sbit 在 SFR 中声明 SFR 位 sfr PCON = 0x87; //定义 SFR sbit PD = PCON^1; //使用 sbit 在 SFR 中声明 SFR 位 sfr ACC = 0xE0; //定义 SFR sbit ACC7 = ACC^7; //使用 sbit 在 SFR 中声明 SFR 位 C 语言代码的使用方法: PD = 0; 深圳国芯人工智能有限公司 //位变量置 1 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 176 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 P00 = 1; //位变量清 0 ACC7 = ~ACC7 //位变量取反 选型顾问: 13922805190 注意:位变量不支持数组和指针类型的定义 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 177 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 只 读 特 殊 功 能 寄 存 器 中 存 储 的 唯 一 ID 号 和 重 要 参 数 9.3 (CHIPID) 产品线 CHIPID STC32G12K128 系列 ● STC32G8K64 系列 ● STC32F12K60 系列 ● STC32G 系列单片机内部的只读特殊功能寄存器 CHIPID 中保存有与芯片相关的一些特殊参数,包 括:全球唯一 ID 号、32K 掉电唤醒定时器的频率、内部 1.19V 参考信号源值以及 IRC 参数。在用户程 序中只能读取 CHIPID 中的内容,不可修改。使用 CHIPID 中的数据对用户程序进行加密是 STC 官方推 荐的最优方案。 相关寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 CHIPID00 硬件数字 ID00 7EFDE0H 全球唯一 ID 号(第 0 字节) nnnn,nnnn CHIPID01 硬件数字 ID01 7EFDE1H 全球唯一 ID 号(第 1 字节) nnnn,nnnn CHIPID02 硬件数字 ID02 7EFDE2H 全球唯一 ID 号(第 2 字节) nnnn,nnnn CHIPID03 硬件数字 ID03 7EFDE3H 全球唯一 ID 号(第 3 字节) nnnn,nnnn CHIPID04 硬件数字 ID04 7EFDE4H 全球唯一 ID 号(第 4 字节) nnnn,nnnn CHIPID05 硬件数字 ID05 7EFDE5H 全球唯一 ID 号(第 5 字节) nnnn,nnnn CHIPID06 硬件数字 ID06 7EFDE6H 全球唯一 ID 号(第 6 字节) nnnn,nnnn CHIPID07 硬件数字 ID07 7EFDE7H 内部 1.19V 参考信号源(高字节) nnnn,nnnn CHIPID08 硬件数字 ID08 7EFDE8H 内部 1.19V 参考信号源(低字节) nnnn,nnnn CHIPID09 硬件数字 ID09 7EFDE9H 32K 掉电唤醒定时器的频率(高字节) nnnn,nnnn CHIPID10 硬件数字 ID10 7EFDEAH 32K 掉电唤醒定时器的频率(低字节) nnnn,nnnn CHIPID11 硬件数字 ID11 7EFDEBH 22.1184MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID12 硬件数字 ID12 7EFDECH 24MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID13 硬件数字 ID13 7EFDEDH 27MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID14 硬件数字 ID14 7EFDEEH 30MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID15 硬件数字 ID15 7EFDEFH 33.1776MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID16 硬件数字 ID16 7EFDF0H 35MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID17 硬件数字 ID17 7EFDF1H 36.864MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID18 硬件数字 ID18 7EFDF2H 40MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID19 硬件数字 ID19 7EFDF3H 44.2368MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID20 硬件数字 ID20 7EFDF4H 48MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID21 硬件数字 ID21 7EFDF5H 6M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID22 硬件数字 ID22 7EFDF6H 10M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID23 硬件数字 ID23 7EFDF7H 27M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID24 硬件数字 ID24 7EFDF8H 44M 频段的 VRTRIM 参数 nnnn,nnnn 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 178 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 CHIPID25 硬件数字 ID25 7EFDF9H 00H nnnn,nnnn CHIPID26 硬件数字 ID26 7EFDFAH 用户程序空间结束地址(高字节) nnnn,nnnn CHIPID27 硬件数字 ID27 7EFDFBH 芯片测试时间(年) nnnn,nnnn CHIPID28 硬件数字 ID28 7EFDFCH 芯片测试时间(月) nnnn,nnnn CHIPID29 硬件数字 ID29 7EFDFDH 芯片测试时间(日) nnnn,nnnn CHIPID30 硬件数字 ID30 7EFDFEH 芯片封装形式编号 nnnn,nnnn CHIPID31 硬件数字 ID31 7EFDFFH 5AH nnnn,nnnn 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 179 - STC32G 系列技术手册 9.3.1 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 CHIP 之全球唯一 ID 号解读 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 CHIPID00 硬件数字 ID00 7EFDE0H 全球唯一 ID 号(第 0 字节) nnnn,nnnn CHIPID01 硬件数字 ID01 7EFDE1H 全球唯一 ID 号(第 1 字节) nnnn,nnnn CHIPID02 硬件数字 ID02 7EFDE2H 全球唯一 ID 号(第 2 字节) nnnn,nnnn CHIPID03 硬件数字 ID03 7EFDE3H 全球唯一 ID 号(第 3 字节) nnnn,nnnn CHIPID04 硬件数字 ID04 7EFDE4H 全球唯一 ID 号(第 4 字节) nnnn,nnnn CHIPID05 硬件数字 ID05 7EFDE5H 全球唯一 ID 号(第 5 字节) nnnn,nnnn CHIPID06 硬件数字 ID06 7EFDE6H 全球唯一 ID 号(第 6 字节) nnnn,nnnn [CHIPID0, CHIPID1]:16 位 MCU ID,用于区别不同的单片机型号(高位在前)。 [CHIPID2, CHIPID3]:16 位测试机台编号(高位在前)。 [CHIPID4, CHIPID5, CHIPID6]:24 位测试流水编号(高位在前)。 9.3.2 CHIP 之内部参考信号源解读 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 CHIPID07 硬件数字 ID07 7EFDE7H 内部 1.19V 参考信号源(高字节) nnnn,nnnn CHIPID08 硬件数字 ID08 7EFDE8H 内部 1.19V 参考信号源(低字节) nnnn,nnnn [CHIPID7, CHIPID8]:16 位内部参考信号源电压值(高位在前)。 标准值为 1190(04A6H),单位为 mV,即 1.19V。但实际的芯片由于存在制造误差。内部参考信号源 的电压值并不会受工作电压 VCC 的影响,所以内部参考信号源可以和 ADC 结合用于校准 ADC, 也可和比较器结合用于侦测工作电压。 9.3.3 CHIP 之内部 32K 的 IRC 振荡频率解读 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 CHIPID09 硬件数字 ID09 7EFDE9H 32K 掉电唤醒定时器的频率(高字节) nnnn,nnnn CHIPID10 硬件数字 ID10 7EFDEAH 32K 掉电唤醒定时器的频率(低字节) nnnn,nnnn [CHIPID9, CHIPID10]:16 位 32K IRC 振荡器频率值(高位在前)。 标准值为 32768(8000H),单位为 Hz,即 32.768KHz。但实际的芯片由于存在制造误差,而且温漂和 压漂均比较大。 内部 32K 振荡器的压漂测试线性图和温漂线性图如下: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 180 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 压漂测试 (测试温度:室温27℃) 40000 #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 频率(Hz) 35000 30000 25000 20000 15000 5.0 4.5 4.0 3.5 3.0 2.5 电压(V) 温漂测试 (测试电压:5.0V) 55000 #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 50000 频率(Hz) 45000 40000 35000 30000 25000 20000 15000 -40 -20 0 25 45 65 85 温度(℃) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 181 - STC32G 系列技术手册 9.3.4 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 CHIP 之高精度 IRC 参数解读 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 CHIPID11 硬件数字 ID11 7EFDEBH 22.1184MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID12 硬件数字 ID12 7EFDECH 24MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID13 硬件数字 ID13 7EFDEDH 27MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID14 硬件数字 ID14 7EFDEEH 30MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID15 硬件数字 ID15 7EFDEFH 33.1776MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID16 硬件数字 ID16 7EFDF0H 35MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID17 硬件数字 ID17 7EFDF1H 36.864MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID18 硬件数字 ID18 7EFDF2H 40MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID19 硬件数字 ID19 7EFDF3H 44.2368MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID20 硬件数字 ID20 7EFDF4H 48MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID21 硬件数字 ID21 7EFDF5H 6M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID22 硬件数字 ID22 7EFDF6H 10M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID23 硬件数字 ID23 7EFDF7H 27M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID24 硬件数字 ID24 7EFDF8H 44M 频段的 VRTRIM 参数 nnnn,nnnn 支持 CHIPID 功能的 STC32G 系列单片机,内部集成的高精度 IRC 分 4 个频段,每个频段对应的参考电 压值在出厂时已进行了校准,当选择不同的频段时,只需要将相应频段的电压校准值填入 VRTRIM 寄存器即可。4 个频段的中心频率分别为 6MHz、10MHz、27MHz 和 44MHz,由于制造误差,中 心频率一般可能有±5%的偏差,为了得到精确的用户频率,可使用 IRTRIM 对频率进行微调校准。 使用 STC 官方提供的下载软件下载用户程序时,系统会根据用户所设定频率自动设置 VRTRIM 和 IRTRIM 寄存器。同时,在 CHIPID 也内部预置了 10 个常用频率的 IRTRIM 值以及 4 个频段的参考 电压值校准值,让用户可以在程序运行过程中动态的修改工作频率。 [CHIPID11 : CHIPID20]:10 个常用频率的 IRTRIM 值。括号里面的注解即为对应的频段 [CHIPID21 : CHIPID24]:4 个频段的参考电压值校准值。 用户动态修改频率时,只需要将[CHIPID11 : CHIPID20]中的某个频率校准值读出并写入 IRTRIM 寄存 器,同时根据该频率所对应的频段将[CHIPID21 : CHIPID24]中的某个电压校准值读出并写入 VRTRIM 寄存器即可。详细操作请参考后续章节的范例程序。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 182 - STC32G 系列技术手册 9.3.5 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 CHIP 之测试时间参数解读 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 CHIPID27 硬件数字 ID27 7EFDFBH 芯片测试时间(年) nnnn,nnnn CHIPID28 硬件数字 ID28 7EFDFCH 芯片测试时间(月) nnnn,nnnn CHIPID29 硬件数字 ID29 7EFDFDH 芯片测试时间(日) nnnn,nnnn 测试时间的年、月、日参数均为 BCD 码。(例如:CHIPID27=0x21,CHIPID28=0x11,CHIPID29=0x18, 则目标芯片的生产测试日期为 2021 年 11 月 18 日) 9.3.6 CHIP 之芯片封装形式编号解读 位地址与符号 符号 描述 地址 复位值 B7 CHIPID30 硬件数字 ID30 B5 B4 B3 B2 B1 芯片封装形式编号 7EFDFEH 封装编号 封装形式 封装编号 封装形式 0x00 DIP8 0x50 SOP32 0x01 SOP8 0x51 LQFP32 0x02 DFN8 0x52 QFN32 0x10 DIP16 0x53 PLCC32 0x11 SOP16 0x54 QFN32S 0x20 DIP18 0x60 PDIP40 0x21 SOP18 0x70 LQFP44 0x30 DIP20 0x71 PLCC44 0x31 SOP20 0x72 PQFP44 0x32 TSSOP20 0x80 LQFP48 0x33 LSSOP20 0x81 QFN48 0x34 QFN20 0x90 LQFP64 0x40 SKDIP28 0x91 LQFP64S 0x41 SOP28 0x92 LQFP64L 0x42 TSSOP28 0x93 LQFP64M 0x43 QFN28 0x94 QFN64 深圳国芯人工智能有限公司 B6 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 B0 nnnn,nnnn - 183 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 9.4 范例程序 9.4.1 读取内部 1.19V 参考信号源值 选型顾问: 13922805190 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT #define #define VREFH_ADDR VREFL_ADDR bit busy; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 CHIPID07 CHIPID08 void UartIsr() interrupt 4 { if (TI) { TI = 0; busy = 0; } if (RI) { RI = 0; } } void UartInit() { SCON = 0x50; TMOD = 0x00; TL1 = BRT; TH1 = BRT >> 8; TR1 = 1; T1x12 = 1; busy = 0; } void UartSend(char dat) { while (busy); busy = 1; SBUF = dat; } void main() { EAXFR = 1; WTST = 0x00; 深圳国芯人工智能有限公司 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 184 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; UartInit(); ES = 1; EA = 1; UartSend(VREF_ADDRH); UartSend(VREF_ADDRL); //读取内部 1.19V 参考信号源的高字节 //读取内部 1.19V 参考信号源的低字节 while (1); } 读取全球唯一 ID 号 9.4.2 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT #define ID_ADDR bit busy; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 (&CHIPID00) void UartIsr() interrupt 4 { if (TI) { TI = 0; busy = 0; } if (RI) { RI = 0; } } void UartInit() { SCON = 0x50; TMOD = 0x00; TL1 = BRT; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 185 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 TH1 = BRT >> 8; TR1 = 1; T1x12 = 1; busy = 0; } void UartSend(char dat) { while (busy); busy = 1; SBUF = dat; } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; char i; UartInit(); ES = 1; EA = 1; for (i=0; i> 8; TR1 = 1; T1x12 = 1; busy = 0; } void UartSend(char dat) { while (busy); busy = 1; SBUF = dat; } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; UartInit(); ES = 1; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 187 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 EA = 1; //读取 32K 频率的高字节 //读取 32K 频率的低字节 UartSend(F32K_ADDRH); UartSend(F32K_ADDRL); while (1); } 9.4.4 用户自定义内部 IRC 频率 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define #define #define #define #define #define #define #define #define #define #define #define #define T22M_ADDR T24M_ADDR T27M_ADDR T30M_ADDR T33M_ADDR T35M_ADDR T36M_ADDR T40M_ADDR T44M_ADDR T48M_ADDR VRT6M_ADDR VRT10M_ADDR VRT27M_ADDR VRT44M_ADDR //头文件见下载软件 CHIPID11 CHIPID12 CHIPID13 CHIPID14 CHIPID15 CHIPID16 CHIPID17 CHIPID18 CHIPID19 CHIPID20 CHIPID21 CHIPID22 CHIPID23 CHIPID24 void main() { EAXFR = 1; WTST = 0x00; //22.1184MHz //24MHz //27MHz //30MHz //33.1776MHz //35MHz //36.864MHz //40MHz //44.2368MHz //48MHz //VRTRIM_6M //VRTRIM_10M //VRTRIM_27M //VRTRIM_44M //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // // // // // //选择 22.1184MHz CLKDIV = 0x04; IRTRIM = T22M_ADDR; VRTRIM = VRT27M_ADDR; IRCBAND = 0x02; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 188 - STC32G 系列技术手册 // 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 CLKDIV = 0x00; //选择 24MHz CLKDIV = 0x04; IRTRIM = T24M_ADDR; VRTRIM = VRT27M_ADDR; IRCBAND = 0x02; CLKDIV = 0x00; // // // // // // //选择 27MHz CLKDIV = 0x04; IRTRIM = T27M_ADDR; VRTRIM = VRT27M_ADDR; IRCBAND = 0x02; CLKDIV = 0x00; // // // // // // //选择 30MHz CLKDIV = 0x04; IRTRIM = T30M_ADDR; VRTRIM = VRT27M_ADDR; IRCBAND = 0x02; CLKDIV = 0x00; // // // // // // //选择 33.1776MHz CLKDIV = 0x04; IRTRIM = T33M_ADDR; VRTRIM = VRT27M_ADDR; IRCBAND = 0x02; CLKDIV = 0x00; // // // // // // //选择 35MHz CLKDIV = 0x04; IRTRIM = T35M_ADDR; VRTRIM = VRT44M_ADDR; IRCBAND = 0x03; CLKDIV = 0x00; // // // // // // //选择 44.2368MHz CLKDIV = 0x04; IRTRIM = T44M_ADDR; VRTRIM = VRT44M_ADDR; IRCBAND = 0x03; CLKDIV = 0x00; // // // // // // //选择 48MHz CLKDIV = 0x04; IRTRIM = T48M_ADDR; VRTRIM = VRT44M_ADDR; IRCBAND = 0x03; CLKDIV = 0x00; while (1); } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 189 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 读写片外扩展 RAM 9.4.5 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define #define EXRAMB EXRAMW EXRAMD //头文件见下载软件 ((unsigned char volatile far *)0x7f0000) ((unsigned int volatile far *)0x7f0000) ((unsigned long volatile far *)0x7f0000) void main() { char x8; int x16; long x32; EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; EXTRAM = 1; BUS_SPEED = 2; //使能访问片外 //设置外部总线访问速度 x8 = EXRAMB[0x0100]; x16 = EXRAMW[0x0200]; x32 = EXRAMD[0x0300]; //从外部扩展 RAM 的 0x0100 地址读取 1 字节数据到变量 x8 //从外部扩展 RAM 的 0x0400 地址读取 2 字节数据到变量 x16 //从外部扩展 RAM 的 0x0C00 地址读取 4 字节数据到变量 x32 //注意:Keil 中的多字节数据格式使用的是 BE(big-endian)格式, //即高字节存放在较低的地址,低字节存放在较高的地址 EXRAMB[0x0101] = x8; EXRAMB[0x0205] = x16; EXRAMB[0x030c] = x32; //将变量 x8 的数据写入外部扩展 RAM 的 0x0101 地址 //将变量 x16 的数据写入外部扩展 RAM 的 0x040A 地址 //将变量 x32 的数据写入外部扩展 RAM 的 0x0C30 地址 while (1); } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 190 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 10 特殊功能寄存器(SFR、XFR) 10.1 STC32G12K128 系列 0/8 1/9 2/A 3/B 4/C 5/D 6/E 7/F F8H P7 LINICR LINAR LINDR USBADR S4CON S4BUF RSTCFG F0H B CANICR USBCON IAP_TPS IAP_ADDRE ICHECR E8H P6 WTST CKCON MXAX USBDAT DMAIR IP3H AUXINTIF E0H ACC P7M1 P7M0 DPS DPL1 DPH1 CMPCR1 CMPCR2 USBCLK T4T3M ADCCFG IP3 D8H D0H PSW PSW1 TH4 TL4 TH3 TL3 TH2 TL2 C8H P5 P5M1 P5M0 P6M1 P6M0 SPSTAT SPCTL SPDAT C0H P4 WDT_CONTR IAP_DATA IAP_ADDRH IAP_ADDRL IAP_CMD IAP_TRIG IAP_CONTR B8H IP SADEN P_SW2 P_SW3 ADC_CONTR ADC_RES ADC_RESL B0H P3 P3M1 P3M0 P4M1 P4M0 IP2 IP2H IPH A8H IE SADDR WKTCL WKTCH S3CON S3BUF TA IE2 A0H P2 BUS_SPEED P_SW1 98H SCON SBUF S2CON S2BUF IRCBAND LIRTRIM IRTRIM 90H P1 P1M1 P1M0 P0M1 P0M0 P2M1 P2M0 AUXR2 88H TCON TMOD TL0 TL1 TH0 TH1 AUXR INTCLKO 80H P0 SP DPL DPH DPXL SPH 0/8 1/9 PCON 2/A 3/B 4/C 5/D 6/E 7/F 7EFEF8 PWMB_CCR2L PWMB_CCR3H PWMB_CCR3L PWMB_CCR4H PWMB_CCR4L PWMB_BKR PWMB_DTR PWMB_OISR 7EFEF0 PWMB_PSCRH PWMB_PSCRL PWMB_ARRH PWMB_ARRL PWMB_RCR PWMB_CCR1H PWMB_CCR1L PWMB_CCR2H PWMB_CCMR4 PWMB_CCER1 PWMB_CCER2 PWMB_CNTRH PWMB_CNTRL PWMB_SMCR PWMB_ETR PWMB_IER PWMB_SR1 PWMB_SR2 PWMB_EGR 7EFED8 PWMA_CCR2L PWMA_CCR3H PWMA_CCR3L PWMA_CCR4H PWMA_CCR4L PWMA_BKR PWMA_DTR PWMA_OISR 7EFED0 PWMA_PSCRH PWMA_PSCRL PWMA_ARRH PWMA_ARRL PWMA_RCR PWMA_CCR1H PWMA_CCR1L PWMA_CCR2H PWMA_CCMR4 PWMA_CCER1 PWMA_CCER2 PWMA_CNTRH PWMA_CNTRL PWMA_ETR PWMA_IER PWMA_SR1 PWMA_SR2 PWMA_EGR CANAR CANDR PWMA_IOAUX PWMB_ETRPS PWMB_ENO PWMB_PS PWMB_IOAUX T3T4PIN ADCEXCFG CMPEXCFG 7EFEE8 PWMB_CCMR1 PWMB_CCMR2 PWMB_CCMR3 7EFEE0 PWMB_CR1 PWMB_CR2 7EFEC8 PWMA_CCMR1 PWMA_CCMR2 PWMA_CCMR3 7EFEC0 PWMA_CR1 PWMA_CR2 PWMA_SMCR 7EFEB8 7EFEB0 PWMA_ETRPS PWMA_ENO 7EFEA8 ADCTIM 7EFEA0 TM0PS TM1PS TM2PS TM3PS TM4PS 7EFE98 SPFUNC RSTFLAG RSTCR0 RSTCR1 RSTCR2 RSTCR3 RSTCR4 RSTCR5 7EFE88 I2CMSAUX 7EFE80 I2CCFG I2CMSCR I2CMSST I2CSLCR I2CSLST I2CSLADR I2CTxD I2CRxD 7EFE70 YEAR MONTH DAY HOUR MIN SEC SSEC 7EFE68 INIYEAR INIMONTH INIDAY INIHOUR INIMIN INISEC INISSEC 7EFE60 RTCCR RTCCFG RTCIEN RTCIF ALAHOUR ALAMIN ALASEC 7EFE50 LCMIFCFG LCMIFCFG2 LCMIFCR LCMIFSTA LCMIFDATL LCMDATH 深圳国芯人工智能有限公司 PWMA_PS 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 ALASSEC - 191 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 7EFE30 P0IE P1IE P2IE P3IE P4IE P5IE P6IE P7IE 7EFE28 P0DR P1DR P2DR P3DR P4DR P5DR P6DR P7DR 7EFE20 P0SR P1SR P2SR P3SR P4SR P5SR P6SR P7SR 7EFE18 P0NCS P1NCS P2NCS P3NCS P4NCS P5NCS P6NCS P7NCS 7EFE10 P0PU P1PU P2PU P3PU P4PU P5PU P6PU P7PU 7EFE08 X32KCR 7EFE00 CLKSEL CLKDIV HIRCCR XOSCCR IRC32KCR MCLKOCR IRCDB IRC48MCR 7EFDF8 CHIPID[24] CHIPID[25] CHIPID[26] CHIPID[27] CHIPID[28] CHIPID[29] CHIPID[30] CHIPID[31] 7EFDF0 CHIPID[16] CHIPID[17] CHIPID[18] CHIPID[19] CHIPID[20] CHIPID[21] CHIPID[22] CHIPID[23] 7EFDE8 CHIPID[8] CHIPID[9] CHIPID[10] CHIPID[11] CHIPID[12] CHIPID[13] CHIPID[14] CHIPID[15] 7EFDE0 CHIPID[0] CHIPID[1] CHIPID[2] CHIPID[3] CHIPID[4] CHIPID[5] CHIPID[6] CHIPID[7] 7EFDC8 USART2CR1 USART2CR2 USART2CR3 USART2CR4 USART2CR5 USART2GTR USART2BRH USART2BRL 7EFDC0 USARTCR1 USARTCR2 USARTCR3 USARTCR4 USARTCR5 USARTGTR USARTBRH USARTBRL S2CFG S2ADDR S2ADEN HSCLKDIV 7EFDB0 7EFD60 PINIPL PINIPH 7EFD40 P0WKUE P1WKUE P2WKUE P3WKUE P4WKUE P5WKUE P6WKUE P7WKUE 7EFD30 P0IM1 P1IM1 P2IM1 P3IM1 P4IM1 P5IM1 P6IM1 P7IM1 7EFD20 P0IM0 P1IM0 P2IM0 P3IM0 P4IM0 P5IM0 P6IM0 P7IM0 7EFD10 P0INTF P1INTF P2INTF P3INTF P4INTF P5INTF P6INTF P7INTF 7EFD00 P0INTE P1INTE P2INTE P3INTE P4INTE P5INTE P6INTE P7INTE 7EFBF8 HSSPI_CFG HSSPI_CFG2 HSSPI_STA 7EFBF0 HSPWMA_CFG HSPWMA_ADR HSPWMA_DAT HSPWMB_CFG HSPWMB_ADR HSPWMB_DAT 7EFAF8 DMA_ARBCFG DMA_ARBSTA 7EFAA8 DMA_I2CT_AMTH DMA_I2CT_DONEH DMA_I2CR_AMTH DMA_I2CR_DONEH DMA_I2C_CR DMA_I2C_ST1 7EFAA0 DMA_I2CR_CFG DMA_I2CR_CR DMA_I2CR_STA DMA_I2CR_AMT DMA_I2CR_DONE DMA_I2CR_RXAH DMA_I2CR_RXAL 7EFA98 DMA_I2CT_CFG DMA_I2CT_CR DMA_I2CT_STA DMA_I2CT_AMT DMA_I2CT_DONE DMA_I2CT_TXAH DMA_I2CT_TXAL DMA_I2C_ST2 7EFA90 DMA_UR3T_AMTH DMA_UR3T_DONEH DMA_UR3R_AMTH DMA_UR3R_DONEH DMA_UR4T_AMTH DMA_UR4T_DONEH DMA_UR4R_AMTH DMA_UR4R_DONEH 7EFA88 DMA_UR1T_AMTH DMA_UR1T_DONEH DMA_UR1R_AMTH DMA_UR1R_DONEH DMA_UR2T_AMTH DMA_UR2T_DONEH DMA_UR2R_AMTH DMA_UR2R_DONEH 7EFA80 DMA_M2M_AMTH DMA_M2M_DONEH DMA_SPI_AMTH DMA_SPI_DONEH DMA_LCM_AMTH DMA_LCM_DONEH 7EFA78 DMA_LCM_RXAL 7EFA70 DMA_LCM_CFG DMA_LCM_CR DMA_LCM_STA DMA_LCM_AMT DMA_LCM_DONE DMA_LCM_TXAH DMA_LCM_TXAL DMA_LCM_RXAH 7EFA68 DMA_UR4R_CFG DMA_UR4R_CR DMA_UR4R_STA DMA_UR4R_AMT DMA_UR4R_DONE DMA_UR4R_RXAH DMA_UR4R_RXAL 7EFA60 DMA_UR4T_CFG DMA_UR4T_CR DMA_UR4T_STA DMA_UR4T_AMT DMA_UR4T_DONE DMA_UR4T_TXAH DMA_UR4T_TXAL 7EFA58 DMA_UR3R_CFG DMA_UR3R_CR DMA_UR3R_STA DMA_UR3R_AMT DMA_UR3R_DONE DMA_UR3R_RXAH DMA_UR3R_RXAL 7EFA50 DMA_UR3T_CFG DMA_UR3T_CR DMA_UR3T_STA DMA_UR3T_AMT DMA_UR3T_DONE DMA_UR3T_TXAH DMA_UR3T_TXAL 7EFA48 DMA_UR2R_CFG DMA_UR2R_CR DMA_UR2R_STA DMA_UR2R_AMT DMA_UR2R_DONE DMA_UR2R_RXAH DMA_UR2R_RXAL 7EFA40 DMA_UR2T_CFG DMA_UR2T_CR DMA_UR2T_STA DMA_UR2T_AMT DMA_UR2T_DONE DMA_UR2T_TXAH DMA_UR2T_TXAL 7EFA38 DMA_UR1R_CFG DMA_UR1R_CR DMA_UR1R_STA DMA_UR1R_AMT DMA_UR1R_DONE DMA_UR1R_RXAH DMA_UR1R_RXAL 7EFA30 DMA_UR1T_CFG DMA_UR1T_CR DMA_UR1T_STA DMA_UR1T_AMT DMA_UR1T_DONE DMA_UR1T_TXAH DMA_UR1T_TXAL 7EFA28 DMA_SPI_RXAL DMA_SPI_CFG2 7EFA20 DMA_SPI_CFG DMA_SPI_CR DMA_SPI_STA DMA_SPI_AMT DMA_SPI_DONE DMA_SPI_TXAH DMA_SPI_TXAL 7EFA18 DMA_ADC_RXAL DMA_ADC_CFG2 DMA_ADC_CHSW0 DMA_ADC_CHSW1 7EFA10 DMA_ADC_CFG DMA_ADC_CR DMA_ADC_STA 7EFA08 DMA_M2M_RXAL 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 DMA_SPI_RXAH DMA_ADC_RXAH 传真: 0513-5501 2926/2956/2947 - 192 - STC32G 系列技术手册 7EFA00 DMA_M2M_CFG 官方网站: www.STCMCUDATA.com DMA_M2M_CR 0/8 F8H B DMA_M2M_DONE DMA_M2M_TXAH 1/9 2/A 3/B LINICR LINAR LINDR 4/C CANICR E8H E0H DMA_M2M_AMT 选型顾问: 13922805190 DMA_M2M_TXAL DMA_M2M_RXAH STC32G8K64 系列 10.2 F0H DMA_M2M_STA 技术支持: 19864585985 WTST CKCON ACC MXAX DPS DPL1 D8H 5/D 6/E 7/F S4CON S4BUF RSTCFG IAP_TPS IAP_ADDRE ICHECR DMAIR IP3H AUXINTIF DPH1 CMPCR1 CMPCR2 T4T3M ADCCFG IP3 TL3 TH2 TL2 SPSTAT SPCTL SPDAT IAP_CONTR D0H PSW PSW1 TH4 C8H P5 P5M1 P5M0 C0H P4 WDT_CONTR IAP_DATA IAP_ADDRH IAP_ADDRL IAP_CMD IAP_TRIG B8H IP SADEN P_SW2 P_SW3 ADC_CONTR ADC_RES ADC_RESL B0H P3 P3M1 P3M0 P4M1 P4M0 IP2 IP2H IPH A8H IE SADDR WKTCL WKTCH S3CON S3BUF TA IE2 A0H P2 BUS_SPEED P_SW1 98H SCON SBUF S2CON S2BUF IRCBAND LIRTRIM IRTRIM 90H P1 P1M1 P1M0 P0M1 P0M0 P2M1 P2M0 AUXR2 88H TCON TMOD TL0 TL1 TH0 TH1 AUXR INTCLKO 80H P0 SP DPL DPH DPXL SPH 0/8 1/9 TL4 TH3 PCON 2/A 3/B 4/C 5/D 6/E 7/F 7EFEF8 PWMB_CCR2L PWMB_CCR3H PWMB_CCR3L PWMB_CCR4H PWMB_CCR4L PWMB_BKR PWMB_DTR PWMB_OISR 7EFEF0 PWMB_PSCRH PWMB_PSCRL PWMB_ARRH PWMB_ARRL PWMB_RCR PWMB_CCR1H PWMB_CCR1L PWMB_CCR2H PWMB_CCMR4 PWMB_CCER1 PWMB_CCER2 PWMB_CNTRH PWMB_CNTRL PWMB_SMCR PWMB_ETR PWMB_IER PWMB_SR1 PWMB_SR2 PWMB_EGR 7EFED8 PWMA_CCR2L PWMA_CCR3H PWMA_CCR3L PWMA_CCR4H PWMA_CCR4L PWMA_BKR PWMA_DTR PWMA_OISR 7EFED0 PWMA_PSCRH PWMA_PSCRL PWMA_ARRH PWMA_ARRL PWMA_RCR PWMA_CCR1H PWMA_CCR1L PWMA_CCR2H PWMA_CCMR4 PWMA_CCER1 PWMA_CCER2 PWMA_CNTRH PWMA_CNTRL PWMA_ETR PWMA_IER PWMA_SR1 PWMA_SR2 PWMA_EGR CANAR CANDR PWMA_IOAUX PWMB_ETRPS PWMB_ENO PWMB_PS PWMB_IOAUX T3T4PIN ADCEXCFG CMPEXCFG 7EFEE8 PWMB_CCMR1 PWMB_CCMR2 PWMB_CCMR3 7EFEE0 PWMB_CR1 PWMB_CR2 7EFEC8 PWMA_CCMR1 PWMA_CCMR2 PWMA_CCMR3 7EFEC0 PWMA_CR1 PWMA_CR2 PWMA_SMCR 7EFEB8 7EFEB0 PWMA_ETRPS PWMA_ENO 7EFEA8 ADCTIM 7EFEA0 TM0PS TM1PS TM2PS TM3PS TM4PS 7EFE98 SPFUNC RSTFLAG RSTCR0 RSTCR1 RSTCR2 RSTCR3 RSTCR4 RSTCR5 7EFE88 I2CMSAUX 7EFE80 I2CCFG I2CMSCR I2CMSST I2CSLCR I2CSLST I2CSLADR I2CTxD I2CRxD 7EFE70 YEAR MONTH DAY HOUR MIN SEC SSEC 7EFE68 INIYEAR INIMONTH INIDAY INIHOUR INIMIN INISEC INISSEC 7EFE60 RTCCR RTCCFG RTCIEN RTCIF ALAHOUR ALAMIN ALASEC ALASSEC 7EFE50 LCMIFCFG LCMIFCFG2 LCMIFCR LCMIFSTA LCMIFDATL LCMDATH 7EFE40 P0PD P1PD P2PD P3PD P4PD P5PD P6PD P7PD 7EFE30 P0IE P1IE P2IE P3IE P4IE P5IE P6IE P7IE 深圳国芯人工智能有限公司 PWMA_PS 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 193 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 7EFE28 P0DR P1DR P2DR P3DR P4DR P5DR P6DR P7DR 7EFE20 P0SR P1SR P2SR P3SR P4SR P5SR P6SR P7SR 7EFE18 P0NCS P1NCS P2NCS P3NCS P4NCS P5NCS P6NCS P7NCS 7EFE10 P0PU P1PU P2PU P3PU P4PU P5PU P6PU P7PU 7EFE08 X32KCR 7EFE00 CLKSEL CLKDIV HIRCCR XOSCCR IRC32KCR MCLKOCR IRCDB IRC48MCR 7EFDF8 CHIPID[24] CHIPID[25] CHIPID[26] CHIPID[27] CHIPID[28] CHIPID[29] CHIPID[30] CHIPID[31] 7EFDF0 CHIPID[16] CHIPID[17] CHIPID[18] CHIPID[19] CHIPID[20] CHIPID[21] CHIPID[22] CHIPID[23] 7EFDE8 CHIPID[8] CHIPID[9] CHIPID[10] CHIPID[11] CHIPID[12] CHIPID[13] CHIPID[14] CHIPID[15] 7EFDE0 CHIPID[0] CHIPID[1] CHIPID[2] CHIPID[3] CHIPID[4] CHIPID[5] CHIPID[6] CHIPID[7] 7EFDC8 USART2CR1 USART2CR2 USART2CR3 USART2CR4 USART2CR5 USART2GTR USART2BRH USART2BRL 7EFDC0 USARTCR1 USARTCR2 USARTCR3 USARTCR4 USARTCR5 USARTGTR USARTBRH USARTBRL S2CFG S2ADDR S2ADEN HSCLKDIV 7EFDB0 7EFDA8 CRECR CRECNTH CRECNTL CRERES 7EFD60 PINIPL PINIPH 7EFD40 P0WKUE P1WKUE P2WKUE P3WKUE P4WKUE P5WKUE P6WKUE P7WKUE 7EFD30 P0IM1 P1IM1 P2IM1 P3IM1 P4IM1 P5IM1 P6IM1 P7IM1 7EFD20 P0IM0 P1IM0 P2IM0 P3IM0 P4IM0 P5IM0 P6IM0 P7IM0 7EFD10 P0INTF P1INTF P2INTF P3INTF P4INTF P5INTF P6INTF P7INTF 7EFD00 P0INTE P1INTE P2INTE P3INTE P4INTE P5INTE P6INTE P7INTE 7EFBF8 HSSPI_CFG HSSPI_CFG2 HSSPI_STA 7EFBF0 HSPWMA_CFG HSPWMA_ADR HSPWMA_DAT HSPWMB_CFG HSPWMB_ADR HSPWMB_DAT 7EFAF8 DMA_ARBCFG DMA_ARBSTA 7EFAA8 DMA_I2CT_AMTH DMA_I2CT_DONEH DMA_I2CR_AMTH DMA_I2CR_DONEH DMA_I2C_CR DMA_I2C_ST1 7EFAA0 DMA_I2CR_CFG DMA_I2CR_CR DMA_I2CR_STA DMA_I2CR_AMT DMA_I2CR_DONE DMA_I2CR_RXAH DMA_I2CR_RXAL 7EFA98 DMA_I2CT_CFG DMA_I2CT_CR DMA_I2CT_STA DMA_I2CT_AMT DMA_I2CT_DONE DMA_I2CT_TXAH DMA_I2CT_TXAL DMA_I2C_ST2 7EFA90 DMA_UR3T_AMTH DMA_UR3T_DONEH DMA_UR3R_AMTH DMA_UR3R_DONEH DMA_UR4T_AMTH DMA_UR4T_DONEH DMA_UR4R_AMTH DMA_UR4R_DONEH 7EFA88 DMA_UR1T_AMTH DMA_UR1T_DONEH DMA_UR1R_AMTH DMA_UR1R_DONEH DMA_UR2T_AMTH DMA_UR2T_DONEH DMA_UR2R_AMTH DMA_UR2R_DONEH 7EFA80 DMA_M2M_AMTH DMA_M2M_DONEH DMA_SPI_AMTH DMA_SPI_DONEH DMA_LCM_AMTH DMA_LCM_DONEH 7EFA78 DMA_LCM_RXAL 7EFA70 DMA_LCM_CFG DMA_LCM_CR DMA_LCM_STA DMA_LCM_AMT DMA_LCM_DONE DMA_LCM_TXAH DMA_LCM_TXAL DMA_LCM_RXAH 7EFA68 DMA_UR4R_CFG DMA_UR4R_CR DMA_UR4R_STA DMA_UR4R_AMT DMA_UR4R_DONE DMA_UR4R_RXAH DMA_UR4R_RXAL 7EFA60 DMA_UR4T_CFG DMA_UR4T_CR DMA_UR4T_STA DMA_UR4T_AMT DMA_UR4T_DONE DMA_UR4T_TXAH DMA_UR4T_TXAL 7EFA58 DMA_UR3R_CFG DMA_UR3R_CR DMA_UR3R_STA DMA_UR3R_AMT DMA_UR3R_DONE DMA_UR3R_RXAH DMA_UR3R_RXAL 7EFA50 DMA_UR3T_CFG DMA_UR3T_CR DMA_UR3T_STA DMA_UR3T_AMT DMA_UR3T_DONE DMA_UR3T_TXAH DMA_UR3T_TXAL 7EFA48 DMA_UR2R_CFG DMA_UR2R_CR DMA_UR2R_STA DMA_UR2R_AMT DMA_UR2R_DONE DMA_UR2R_RXAH DMA_UR2R_RXAL 7EFA40 DMA_UR2T_CFG DMA_UR2T_CR DMA_UR2T_STA DMA_UR2T_AMT DMA_UR2T_DONE DMA_UR2T_TXAH DMA_UR2T_TXAL 7EFA38 DMA_UR1R_CFG DMA_UR1R_CR DMA_UR1R_STA DMA_UR1R_AMT DMA_UR1R_DONE DMA_UR1R_RXAH DMA_UR1R_RXAL 7EFA30 DMA_UR1T_CFG DMA_UR1T_CR DMA_UR1T_STA DMA_UR1T_AMT DMA_UR1T_DONE DMA_UR1T_TXAH DMA_UR1T_TXAL 7EFA28 DMA_SPI_RXAL DMA_SPI_CFG2 7EFA20 DMA_SPI_CFG DMA_SPI_CR DMA_SPI_STA DMA_SPI_AMT DMA_SPI_DONE DMA_SPI_TXAH DMA_SPI_TXAL 7EFA18 DMA_ADC_RXAL DMA_ADC_CFG2 DMA_ADC_CHSW0 DMA_ADC_CHSW1 7EFA10 DMA_ADC_CFG DMA_ADC_CR DMA_ADC_STA 7EFA08 DMA_M2M_RXAL 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 DMA_SPI_RXAH DMA_ADC_RXAH 传真: 0513-5501 2926/2956/2947 - 194 - STC32G 系列技术手册 7EFA00 DMA_M2M_CFG 官方网站: www.STCMCUDATA.com DMA_M2M_CR 0/8 F8H B DMA_M2M_DONE DMA_M2M_TXAH DMA_M2M_TXAL DMA_M2M_RXAH 1/9 2/A 3/B 4/C 5/D 6/E 7/F LINICR LINAR LINDR USBADR S4CON S4BUF RSTCFG USBCON IAP_TPS IAP_ADDRE ICHECR MXAX USBDAT DMAIR IP3H AUXINTIF DPS DPL1 DPH1 CMPCR1 CMPCR2 CANICR E8H E0H DMA_M2M_AMT 选型顾问: 13922805190 STC32F12K60 系列 10.3 F0H DMA_M2M_STA 技术支持: 19864585985 WTST CKCON ACC D8H IAP_DATA1 IAP_DATA2 IAP_DATA3 USBCLK T4T3M ADCCFG IP3 TL4 TH3 TL3 TH2 TL2 SPSTAT SPCTL SPDAT IAP_CONTR D0H PSW PSW1 TH4 C8H P5 P5M1 P5M0 C0H P4 WDT_CONTR IAP_DATA0 IAP_ADDRH IAP_ADDRL IAP_CMD IAP_TRIG B8H IP SADEN P_SW2 P_SW3 ADC_CONTR ADC_RES ADC_RESL B0H P3 P3M1 P3M0 P4M1 P4M0 IP2 IP2H IPH A8H IE SADDR WKTCL WKTCH S3CON S3BUF TA IE2 A0H P2 BUS_SPEED P_SW1 98H SCON SBUF S2CON S2BUF IRCBAND LIRTRIM IRTRIM 90H P1 P1M1 P1M0 P0M1 P0M0 P2M1 P2M0 AUXR2 88H TCON TMOD TL0 TL1 TH0 TH1 AUXR INTCLKO 80H P0 SP DPL DPH DPXL SPH 0/8 1/9 PCON 2/A 3/B 4/C 5/D 6/E 7/F 7EFEF8 PWMB_CCR2L PWMB_CCR3H PWMB_CCR3L PWMB_CCR4H PWMB_CCR4L PWMB_BKR PWMB_DTR PWMB_OISR 7EFEF0 PWMB_PSCRH PWMB_PSCRL PWMB_ARRH PWMB_ARRL PWMB_RCR PWMB_CCR1H PWMB_CCR1L PWMB_CCR2H PWMB_CCMR4 PWMB_CCER1 PWMB_CCER2 PWMB_CNTRH PWMB_CNTRL PWMB_SMCR PWMB_ETR PWMB_IER PWMB_SR1 PWMB_SR2 PWMB_EGR 7EFED8 PWMA_CCR2L PWMA_CCR3H PWMA_CCR3L PWMA_CCR4H PWMA_CCR4L PWMA_BKR PWMA_DTR PWMA_OISR 7EFED0 PWMA_PSCRH PWMA_PSCRL PWMA_ARRH PWMA_ARRL PWMA_RCR PWMA_CCR1H PWMA_CCR1L PWMA_CCR2H PWMA_CCMR4 PWMA_CCER1 PWMA_CCER2 PWMA_CNTRH PWMA_CNTRL PWMA_ETR PWMA_IER PWMA_SR1 PWMA_SR2 PWMA_EGR CANAR CANDR PWMA_IOAUX PWMB_ETRPS PWMB_ENO PWMB_PS PWMB_IOAUX T3T4PIN ADCEXCFG CMPEXCFG 7EFEE8 PWMB_CCMR1 PWMB_CCMR2 PWMB_CCMR3 7EFEE0 PWMB_CR1 PWMB_CR2 7EFEC8 PWMA_CCMR1 PWMA_CCMR2 PWMA_CCMR3 7EFEC0 PWMA_CR1 PWMA_CR2 PWMA_SMCR 7EFEB8 7EFEB0 PWMA_ETRPS PWMA_ENO 7EFEA8 ADCTIM 7EFEA0 TM0PS TM1PS TM2PS TM3PS TM4PS 7EFE98 SPFUNC RSTFLAG RSTCR0 RSTCR1 RSTCR2 RSTCR3 RSTCR4 RSTCR5 7EFE88 I2CMSAUX 7EFE80 I2CCFG I2CMSCR I2CMSST I2CSLCR I2CSLST I2CSLADR I2CTxD I2CRxD 7EFE70 YEAR MONTH DAY HOUR MIN SEC SSEC 7EFE68 INIYEAR INIMONTH INIDAY INIHOUR INIMIN INISEC INISSEC 7EFE60 RTCCR RTCCFG RTCIEN RTCIF ALAHOUR ALAMIN ALASEC ALASSEC 7EFE50 LCMIFCFG LCMIFCFG2 LCMIFCR LCMIFSTA LCMIFDATL LCMDATH 7EFE40 P0PD P1PD P2PD P3PD P4PD P5PD P6PD P7PD 深圳国芯人工智能有限公司 PWMA_PS 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 195 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 7EFE30 P0IE P1IE P2IE P3IE P4IE P5IE P6IE P7IE 7EFE28 P0DR P1DR P2DR P3DR P4DR P5DR P6DR P7DR 7EFE20 P0SR P1SR P2SR P3SR P4SR P5SR P6SR P7SR 7EFE18 P0NCS P1NCS P2NCS P3NCS P4NCS P5NCS P6NCS P7NCS 7EFE10 P0PU P1PU P2PU P3PU P4PU P5PU P6PU P7PU 7EFE08 X32KCR HSCLKDIV HPLLCR HPLLPSCR 7EFE00 CLKSEL CLKDIV HIRCCR XOSCCR IRC32KCR MCLKOCR IRCDB IRC48MCR 7EFDF8 CHIPID[24] CHIPID[25] CHIPID[26] CHIPID[27] CHIPID[28] CHIPID[29] CHIPID[30] CHIPID[31] 7EFDF0 CHIPID[16] CHIPID[17] CHIPID[18] CHIPID[19] CHIPID[20] CHIPID[21] CHIPID[22] CHIPID[23] 7EFDE8 CHIPID[8] CHIPID[9] CHIPID[10] CHIPID[11] CHIPID[12] CHIPID[13] CHIPID[14] CHIPID[15] 7EFDE0 CHIPID[0] CHIPID[1] CHIPID[2] CHIPID[3] CHIPID[4] CHIPID[5] CHIPID[6] CHIPID[7] 7EFDC8 USART2CR1 USART2CR2 USART2CR3 USART2CR4 USART2CR5 USART2GTR USART2BRH USART2BRL 7EFDC0 USARTCR1 USARTCR2 USARTCR3 USARTCR4 USARTCR5 USARTGTR USARTBRH USARTBRL S2CFG S2ADDR S2ADEN 7EFDB0 7EFDA8 CRECR CRECNTH CRECNTL CRERES 7EFDA0 I2S_MD 7EFD98 I2S_CR I2S_SR I2S_DRH I2S_DRL I2S_PRH I2S_PRL I2S_CFGH I2S_CFGL 7EFD60 PINIPL PINIPH 7EFD40 P0WKUE P1WKUE P2WKUE P3WKUE P4WKUE P5WKUE P6WKUE P7WKUE 7EFD30 P0IM1 P1IM1 P2IM1 P3IM1 P4IM1 P5IM1 P6IM1 P7IM1 7EFD20 P0IM0 P1IM0 P2IM0 P3IM0 P4IM0 P5IM0 P6IM0 P7IM0 7EFD10 P0INTF P1INTF P2INTF P3INTF P4INTF P5INTF P6INTF P7INTF 7EFD00 P0INTE P1INTE P2INTE P3INTE P4INTE P5INTE P6INTE P7INTE 7EFBF8 HSSPI_CFG HSSPI_CFG2 HSSPI_STA 7EFBF0 HSPWMA_CFG HSPWMA_ADR HSPWMA_DAT HSPWMB_CFG HSPWMB_ADR HSPWMB_DAT 7EFAF8 DMA_ARBCFG DMA_ARBSTA 7EFAC0 DMA_I2ST_AMTH DMA_I2ST_DONEH DMA_I2SR_AMTH DMA_I2SR_DONEH 7EFAB8 DMA_I2SR_CFG DMA_I2SR_CR DMA_I2SR_STA DMA_I2SR_AMT DMA_I2SR_DONE DMA_I2SR_RXAH DMA_I2SR_RXAL 7EFAB0 DMA_I2ST_CFG DMA_I2ST_CR DMA_I2ST_STA DMA_I2ST_AMT DMA_I2ST_DONE DMA_I2ST_TXAH DMA_I2ST_TXAL 7EFAA8 DMA_I2CT_AMTH DMA_I2CT_DONEH DMA_I2CR_AMTH DMA_I2CR_DONEH DMA_I2C_CR DMA_I2C_ST1 7EFAA0 DMA_I2CR_CFG DMA_I2CR_CR DMA_I2CR_STA DMA_I2CR_AMT DMA_I2CR_DONE DMA_I2CR_RXAH DMA_I2CR_RXAL 7EFA98 DMA_I2CT_CFG DMA_I2CT_CR DMA_I2CT_STA DMA_I2CT_AMT DMA_I2CT_DONE DMA_I2CT_TXAH DMA_I2CT_TXAL DMA_I2C_ST2 7EFA90 DMA_UR3T_AMTH DMA_UR3T_DONEH DMA_UR3R_AMTH DMA_UR3R_DONEH DMA_UR4T_AMTH DMA_UR4T_DONEH DMA_UR4R_AMTH DMA_UR4R_DONEH 7EFA88 DMA_UR1T_AMTH DMA_UR1T_DONEH DMA_UR1R_AMTH DMA_UR1R_DONEH DMA_UR2T_AMTH DMA_UR2T_DONEH DMA_UR2R_AMTH DMA_UR2R_DONEH 7EFA80 DMA_M2M_AMTH DMA_M2M_DONEH DMA_SPI_AMTH DMA_SPI_DONEH DMA_LCM_AMTH DMA_LCM_DONEH 7EFA78 DMA_LCM_RXAL 7EFA70 DMA_LCM_CFG DMA_LCM_CR DMA_LCM_STA DMA_LCM_AMT DMA_LCM_DONE DMA_LCM_TXAH DMA_LCM_TXAL DMA_LCM_RXAH 7EFA68 DMA_UR4R_CFG DMA_UR4R_CR DMA_UR4R_STA DMA_UR4R_AMT DMA_UR4R_DONE DMA_UR4R_RXAH DMA_UR4R_RXAL 7EFA60 DMA_UR4T_CFG DMA_UR4T_CR DMA_UR4T_STA DMA_UR4T_AMT DMA_UR4T_DONE DMA_UR4T_TXAH DMA_UR4T_TXAL 7EFA58 DMA_UR3R_CFG DMA_UR3R_CR DMA_UR3R_STA DMA_UR3R_AMT DMA_UR3R_DONE DMA_UR3R_RXAH DMA_UR3R_RXAL 7EFA50 DMA_UR3T_CFG DMA_UR3T_CR DMA_UR3T_STA DMA_UR3T_AMT DMA_UR3T_DONE DMA_UR3T_TXAH DMA_UR3T_TXAL 7EFA48 DMA_UR2R_CFG DMA_UR2R_CR DMA_UR2R_STA DMA_UR2R_AMT DMA_UR2R_DONE DMA_UR2R_RXAH DMA_UR2R_RXAL 7EFA40 DMA_UR2T_CFG DMA_UR2T_CR DMA_UR2T_STA DMA_UR2T_AMT DMA_UR2T_DONE DMA_UR2T_TXAH DMA_UR2T_TXAL 7EFA38 DMA_UR1R_CFG DMA_UR1R_CR DMA_UR1R_STA DMA_UR1R_AMT DMA_UR1R_DONE DMA_UR1R_RXAH DMA_UR1R_RXAL 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 196 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 7EFA30 DMA_UR1T_CFG DMA_UR1T_CR 7EFA28 DMA_SPI_RXAL DMA_SPI_CFG2 7EFA20 DMA_SPI_CFG 7EFA18 技术支持: 19864585985 选型顾问: 13922805190 DMA_UR1T_STA DMA_UR1T_AMT DMA_UR1T_DONE DMA_UR1T_TXAH DMA_UR1T_TXAL DMA_SPI_CR DMA_SPI_STA DMA_SPI_AMT DMA_SPI_DONE DMA_SPI_TXAH DMA_SPI_TXAL DMA_ADC_RXAL DMA_ADC_CFG2 DMA_ADC_CHSW0 DMA_ADC_CHSW1 7EFA10 DMA_ADC_CFG DMA_ADC_CR DMA_ADC_STA 7EFA08 DMA_M2M_RXAL 7EFA00 DMA_M2M_CFG DMA_M2M_CR DMA_M2M_STA 10.4 DMA_SPI_RXAH DMA_ADC_RXAH DMA_M2M_AMT DMA_M2M_DONE DMA_M2M_TXAH DMA_M2M_TXAL DMA_M2M_RXAH 特殊功能寄存器列表(SFR:0x80-0xFF) 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 P07 P06 P05 P04 P03 P02 P01 P00 P0 P0 端口 80H SP 堆栈指针 81H 0000,0111 DPL 数据指针(低字节) 82H 0000,0000 DPH 数据指针(高字节) 83H 0000,0000 数据指针(最高字节) 84H 0000,0000 SPH 堆栈指针高字节 85H 0000,0000 PCON 电源控制寄存器 87H SMOD SMOD0 LVDF POF GF1 GF0 PD IDL 0011,0000 TCON 定时器控制寄存器 88H TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 0000,0000 TMOD 定时器模式寄存器 89H GATE C/T M1 M0 GATE C/T M1 M0 0000,0000 TL0 定时器 0 低 8 位寄存器 8AH 0000,0000 TL1 定时器 1 低 8 位寄存器 8BH 0000,0000 TH0 定时器 0 高 8 位寄存器 8CH 0000,0000 TH1 定时器 1 高 8 位寄存器 8DH 0000,0000 辅助寄存器 1 8EH T0x12 T1x12 UART_M0x6 T2R T2_C/T T2x12 EXTRAM S1BRT 0000,0001 中断与时钟输出控制寄存器 8FH - EX4 EX3 EX2 - T2CLKO T1CLKO T0CLKO x000,x000 P1 端口 90H P17 P16 P15 P14 P13 P12 P11 P10 1111,1111 P1M1 P1 口配置寄存器 1 91H P17M1 P16M1 P15M1 P14M1 P13M1 P12M1 P11M1 P10M1 1111,1111 P1M0 P1 口配置寄存器 0 92H P17M0 P16M0 P15M0 P14M0 P13M0 P12M0 P11M0 P10M0 0000,0000 P0M1 P0 口配置寄存器 1 93H P07M1 P06M1 P05M1 P04M1 P03M1 P02M1 P01M1 P00M1 P0M0 P0 口配置寄存器 0 94H P07M0 P06M0 P05M0 P04M0 P03M0 P02M0 P01M0 P00M0 0000,0000 P2M1 P2 口配置寄存器 1 95H P27M1 P26M1 P25M1 P24M1 P23M1 P22M1 P21M1 P20M1 P2M0 P2 口配置寄存器 0 96H P27M0 P26M0 P25M0 P24M0 P23M0 P22M0 P21M0 P20M0 0000,0000 辅助寄存器 2 97H - - - - CANSEL CAN2EN CANEN LINEN xxxx,0000 SCON 串口 1 控制寄存器 98H SM0/FE SM1 SM2 REN SBUF 串口 1 数据寄存器 99H S2CON 串口 2 控制寄存器 9AH S2SM0/FE S2BUF 串口 2 数据寄存器 9BH IRCBAND IRC 频段选择检测 9DH USBCKS USBCKS2 - - - - SEL[1:0] 10xx,xxnn LIRTRIM IRC 频率微调寄存器 9EH - - - - - - LIRTRIM[1:0] xxxx,xxnn IRTRIM IRC 频率调整寄存器 9FH P2 端口 A0H DPXL AUXR INTCLKO P1 AUXR2 P2 BUS_SPEED 总线速度控制寄存器 深圳国芯人工智能有限公司 A1H TB8 RB8 TI RI 1111,1111 1111,1111 1111,1111 0000,0000 0000,0000 S2SM1 S2SM2 S2REN S2TB8 S2RB8 S2TI S2RI 0000,0000 0000,0000 IRTRIM[7:0] P27 P26 P25 RW_S[1:0] 国内分销商电话: 0513-5501 2928/2929/2966 P24 nnnn,nnnn P23 P22 P21 SPEED[2:0] 传真: 0513-5501 2926/2956/2947 P20 1111,1111 00xx,x000 - 197 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 外设端口切换寄存器 1 A2H 中断允许寄存器 A8H SADDR 串口 1 从机地址寄存器 A9H 0000,0000 WKTCL 掉电唤醒定时器低字节 AAH 1111,1111 WKTCH 掉电唤醒定时器高字节 ABH WKTEN S3CON 串口 3 控制寄存器 ACH S3SM0 S3BUF 串口 3 数据寄存器 ADH 0000,0000 TA DPTR 时序控制寄存器 AEH 0000,0000 IE2 中断允许寄存器 2 AFH EUSB ET4 ET3 ES4 ES3 ET2 ESPI ES2 0000,0000 P3 P3 端口 B0H P37 P36 P35 P34 P33 P32 P31 P30 1111,1111 P3M1 P3 口配置寄存器 1 B1H P37M1 P36M1 P35M1 P34M1 P33M1 P32M1 P31M1 P30M1 1111,1100 P3M0 P3 口配置寄存器 0 B2H P37M0 P36M0 P35M0 P34M0 P33M0 P32M0 P31M0 P30M0 0000,0000 P4M1 P4 口配置寄存器 1 B3H P47M1 P46M1 P45M1 P44M1 P43M1 P42M1 P41M1 P40M1 P4M0 P4 口配置寄存器 0 B4H P47M0 P46M0 P45M0 P44M0 P43M0 P42M0 P41M0 P40M0 0000,0000 中断优先级控制寄存器 2 B5H PUSB PI2C PCMP PX4 PPWMB PPWMA PSPI PS2 0000,0000 IP2H 高中断优先级控制寄存器 2 B6H PUSBH PI2CH PCMPH PX4H PPWMBH PPWMAH PSPIH PS2H 0000,0000 IPH 高中断优先级控制寄存器 B7H - PLVDH PADCH PSH PT1H PX1H PT0H PX0H x000,0000 中断优先级控制寄存器 B8H - PLVD PADC PS PT1 PX1 PT0 PX0 x000,0000 SADEN 串口 1 从机地址屏蔽寄存器 B9H P_SW2 外设端口切换寄存器 2 BAH P_SW3 外设端口切换寄存器 2 BBH P_SW1 IE IP2 IP ADC_CONTR ADC 控制寄存器 S1_S[1:0] EA CAN_S[1:0] ELVD EADC SPI_S[1:0] ES ET1 LIN_S[1:0] EX1 ET0 EX0 nn00,0000 0000,0000 0111,1111 S3ST3 S3SM2 S3REN S3TB8 S3RB8 S3TI S3RI 0000,0000 1111,1111 0000,0000 EAXFR - I2S_S[1:0] I2C_S[1:0] CMPO_S S2SPI_S[1:0] S4_S S3_S S1SPI_S[1:0] BCH ADC_POWER ADC_START ADC_FLAG ADC_EPWMT S2_S 0x00,0000 CAN2_S[1:0] 0000,0000 ADC_CHS[3:0] 0000,0000 ADC 转换结果高位寄存器 BDH 0000,0000 ADC_RESL ADC 转换结果低位寄存器 BEH 0000,0000 ADC_RES P4 P4 端口 WDT_CONTR 看门狗控制寄存器 IAP_DATA IAP 数据寄存器 C0H P47 C1H WDT_FLAG P46 P45 P44 P43 - EN_WDT CLR_WDT IDL_WDT P42 P41 P40 WDT_PS[2:0] 1111,1111 0x00,0000 C2H 0000,0000 IAP_ADDRH IAP 高地址寄存器 C3H 0000,0000 IAP_ADDRL IAP 低地址寄存器 C4H 0000,0000 IAP_CMD IAP 命令寄存器 C5H IAP_TRIG IAP 触发寄存器 C6H IAP_CONTR IAP 控制寄存器 C7H IAPEN SWBS SWRST CMD_FAIL - - - - 0000,xxxx P5 端口 C8H - - P55 P54 P53 P52 P51 P50 xx11,1111 P5M1 P5 口配置寄存器 1 C9H - - P55M1 P54M1 P53M1 P52M1 P51M1 P50M1 xx11,1111 P5M0 P5 口配置寄存器 0 CAH - - P55M0 P54M0 P53M0 P52M0 P51M0 P50M0 xx00,0000 P6M1 P6 口配置寄存器 1 CBH P67M1 P66M1 P65M1 P64M1 P63M1 P62M1 P61M1 P60M1 P6M0 P6 口配置寄存器 0 CCH P67M0 P66M0 P65M0 P64M0 P63M0 P62M0 P61M0 P60M0 0000,0000 SPSTAT SPI 状态寄存器 CDH SPIF WCOL - - - - - SPCTL SPI 控制寄存器 CEH SSIG SPEN DORD MSTR CPOL CPHA SPDAT SPI 数据寄存器 CFH PSW 程序状态字寄存器 D0H CY AC F0 RS1 RS0 OV F1 PSW1 程序状态字 1 寄存器 D1H CY AC N RS1 RS0 OV Z T4H 定时器 4 高字节 D2H 0000,0000 T4L 定时器 4 低字节 D3H 0000,0000 P5 深圳国芯人工智能有限公司 - - - - - CMD[2:0] xxxx,x000 0000,0000 SPR[1:0] 1111,1111 00xx,xxxx 0000,0100 0000,0000 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 P 0000,0000 0000,000x - 198 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 T3H 定时器 3 高字节 D4H 0000,0000 T3L 定时器 3 低字节 D5H 0000,0000 T2H 定时器 2 高字节 D6H 0000,0000 T2L 定时器 2 低字节 D7H 0000,0000 IAP_DATA1 IAP 数据寄存器 1 D9H 0000,0000 IAP_DATA2 IAP 数据寄存器 2 DAH 0000,0000 IAP_DATA3 IAP 数据寄存器 3 DBH 0000,0000 USBCLK USB 时钟控制寄存器 DCH ENCKM T4T3M 定时器 4/3 控制寄存器 DDH T4R T4_C/T T4x12 T4CLKO ADC 配置寄存器 DEH - - RESFMT - 中断优先级控制寄存器 3 DFH - - - - ACC 累加器 E0H P7M1 P7 口配置寄存器 1 E1H P77M1 P76M1 P75M1 P74M1 P73M1 P72M1 P71M1 P70M1 P7M0 P7 口配置寄存器 0 E2H P77M0 P76M0 P75M0 P74M0 P73M0 P72M0 P71M0 P70M0 0000,0000 DPS DPTR 指针选择器 E3H ID1 ID0 TSL AU1 AU0 - - DPL1 第二组数据指针(低字节) E4H 0000,0000 DPH1 第二组数据指针(高字节) E5H 0000,0000 CMPCR1 比较器控制寄存器 1 E6H CMPCR2 比较器控制寄存器 2 E7H INVCMPO P6 端口 E8H 程序读取等待控制寄存器 E9H CKCON XRAM 控制寄存器 EAH MXAX MOVX 扩展地址寄存器 EBH 0000,0001 USBDAT USB 数据寄存器 ECH 0000,0000 DMAIR FMU DMA 指令寄存器 EDH 0000,0000 高中断优先级控制寄存器 3 EEH - - - - PI2SH PRTCH PS4H PS3H xxxx,0000 扩展外部中断标志寄存器 EFH - INT4IF INT3IF INT2IF - T4IF T3IF T2IF x000,x000 B 寄存器 F0H CANICR CANBUS 中断控制寄存器 F1H PCAN2H CAN2IF CAN2IE PCAN2L PCANH CANIF CANIE USBCON USB 控制寄存器 F4H ENUSB USBRST PS2M PUEN PDEN DFREC DP IAP_TPS IAP 等待时间控制寄存器 F5H - - ADCCFG IP3 P6 WTST IP3H AUXINTIF B IAP_ADDRE IAP 扩展高地址寄存器 PCKI[1:0] CRE TST_USB TST_PHY T3R T3_C/T PHYTST[1:0] T3x12 T3CLKO 0000,0000 SPEED[3:0] PI2S PRTC 0010,0000 xx0x,0000 PS4 PS3 xxxx,0000 0000,0000 CMPEN P67 CMPIF PIE NIE - DISFLT P66 - SEL P64 P63 0000,0xx0 CMPOE CMPRES 0000,xx00 LCDTY[5:0] P65 1111,1111 0000,0000 P62 P61 P60 1111,1111 0000,0111 - - - T1M T0M CKCON[2:0] 0000,0000 0000,0000 PCANL 0000,0000 DM IAP_TPS[5:0] 0000,0000 xx00,0000 F6H 1111,1111 CACHE 控制寄存器 F7H CON HIT CLR P7 端口 F8H P77 P76 P75 LINICR LINBUS 中断控制寄存器 F9H LINAR LINBUS 地址寄存器 FAH 0000,0000 LINDR LINBUS 数据寄存器 FBH 0000,0000 USB 地址寄存器 FCH BUSY AUTORD S4CON 串口 4 控制寄存器 FDH S4SM0 S4ST4 S4BUF 串口 4 数据寄存器 FEH 复位配置寄存器 FFH ICHECR P7 USBADR RSTCFG 深圳国芯人工智能有限公司 P74 P73 P72 P71 PLINH LINIF LINIE EN 000x,xxx0 P70 1111,1111 PLINL 0000,0000 UADR[5:0] S4SM2 S4REN S4TB8 0000,0000 S4RB8 S4TI S4RI 0000,0000 0000,0000 - ENLVR - P54RST 国内分销商电话: 0513-5501 2928/2929/2966 - - LVDS[1:0] 传真: 0513-5501 2926/2956/2947 x0x0,xx00 - 199 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 扩展特殊功能寄存器列表(XFR:0x7EFE00-0x7EFEFF) 10.5 下列特殊功能寄存器为扩展 SFR(XFR),逻辑地址位于 XDATA 区域,访问前需要将 P_SW2 寄 存器的最高位(EAXFR)置 1,然后使用 MOV @DRk, Rm 和 MOV Rm, @DRk 指令进行访问,例如: MOV A,#00H MOV WR6,#WORD0 CLKSEL ; CLKSEL 可换为需要访问的寄存器 MOV WR4,#WORD2 CLKSEL MOV @DR4,R11 和 MOV WR6,#WORD0 CLKSEL ; CLKSEL 可换为需要访问的寄存器 MOV WR4,#WORD2 CLKSEL MOV R11,@DR4 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 CKMS HSIOCK - - CLKSEL 时钟选择寄存器 7EFE00H CLKDIV 时钟分频寄存器 7EFE01H HIRCCR 内部高速振荡器控制寄存器 7EFE02H ENHIRC - - - XOSCCR 外部晶振控制寄存器 7EFE03H ENXOSC XITYPE GAIN - IRC32KCR 内部 32K 振荡器控制寄存器 7EFE04H ENIRC32K - - - MCLKOCR 主时钟输出控制寄存器 7EFE05H 内部高速振荡器去抖控制 7EFE06H IRCDB IRC48MCR B3 B2 MCK2SEL[1:0] B1 B0 MCKSEL[1:0] 00xx,0000 0000,0100 - - XCFILTER[1:0] - - - HIRCST 1xxx,xxx0 - XOSCST 000x,00x0 - IRC32KST 0xxx,xxx0 MCLKODIV[6:0] MCLKO_S 0000,0000 1000,0000 内部 48M 振荡器控制寄存器 7EFE07H ENIRC48M - - - - - - GAIN32K - - - - - IRC48MST 1xxx,xxx0 外部 32K 晶振控制寄存器 7FFE08H HSCLKDIV 高速时钟分频寄存器 7EFE0BH HPLLCR 高速 PLL 控制寄存器 7EFE0CH ENHPLL - - - HPLLDIV[3:0] 0xxx,0000 高速 PLL 预分频寄存器 7EFE0DH - - - - HPLL_PREDIV[3:0] xxxx,0000 P0PU P0 口上拉电阻控制寄存器 7EFE10H 0000,0000 P1PU P1 口上拉电阻控制寄存器 7EFE11H 0000,0000 P2PU P2 口上拉电阻控制寄存器 7EFE12H 0000,0000 P3PU P3 口上拉电阻控制寄存器 7EFE13H 0000,0000 P4PU P4 口上拉电阻控制寄存器 7EFE14H 0000,0000 P5PU P5 口上拉电阻控制寄存器 7EFE15H P6PU P6 口上拉电阻控制寄存器 7EFE16H 0000,0000 P7PU P7 口上拉电阻控制寄存器 7EFE17H 0000,0000 P0NCS P0 口施密特触发控制寄存器 7EFE18H 0000,0000 P1NCS P1 口施密特触发控制寄存器 7EFE19H 0000,0000 P2NCS P2 口施密特触发控制寄存器 7EFE1AH 0000,0000 P3NCS P3 口施密特触发控制寄存器 7EFE1BH 0000,0000 X32KCR HPLLPSCR 深圳国芯人工智能有限公司 ENX32K X32KST 00xx,xxx0 0000,0010 - - xxx0,0000 - 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 200 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P4NCS P4 口施密特触发控制寄存器 7EFE1CH P5NCS P5 口施密特触发控制寄存器 7EFE1DH P6NCS P6 口施密特触发控制寄存器 7EFE1EH 0000,0000 P7NCS P7 口施密特触发控制寄存器 7EFE1FH 0000,0000 P0SR P0 口电平转换速率寄存器 7EFE20H 1111,1111 P1SR P1 口电平转换速率寄存器 7EFE21H 1111,1111 P2SR P2 口电平转换速率寄存器 7EFE22H 1111,1111 P3SR P3 口电平转换速率寄存器 7EFE23H 1111,1111 P4SR P4 口电平转换速率寄存器 7EFE24H 1111,1111 P5SR P5 口电平转换速率寄存器 7EFE25H P6SR P6 口电平转换速率寄存器 7EFE26H 1111,1111 P7SR P7 口电平转换速率寄存器 7EFE27H 1111,1111 P0DR P0 口驱动电流控制寄存器 7EFE28H 1111,1111 P1DR P1 口驱动电流控制寄存器 7EFE29H 1111,1111 P2DR P2 口驱动电流控制寄存器 7EFE2AH 1111,1111 P3DR P3 口驱动电流控制寄存器 7EFE2BH 1111,1111 P4DR P4 口驱动电流控制寄存器 7EFE2CH 1111,1111 P5DR P5 口驱动电流控制寄存器 7EFE2DH P6DR P6 口驱动电流控制寄存器 7EFE2EH 1111,1111 P7DR P7 口驱动电流控制寄存器 7EFE2FH 1111,1111 P0IE P0 口输入使能控制寄存器 7EFE30H 1111,1111 P1IE P1 口输入使能控制寄存器 7EFE31H 1111,1111 P2IE P2 口输入使能控制寄存器 7EFE32H 1111,1111 P3IE P3 口输入使能控制寄存器 7EFE33H 1111,1111 P4IE P4 口输入使能控制寄存器 7EFE34H 1111,1111 P5IE P5 口输入使能控制寄存器 7EFE35H P6IE P6 口输入使能控制寄存器 7EFE36H 1111,1111 P7IE P7 口输入使能控制寄存器 7EFE37H 1111,1111 P0PD P0 口下拉电阻控制寄存器 7EFE40H 0000,0000 P1PD P1 口下拉电阻控制寄存器 7EFE41H 0000,0000 P2PD P2 口下拉电阻控制寄存器 7EFE42H 0000,0000 P3PD P3 口下拉电阻控制寄存器 7EFE43H 0000,0000 P4PD P4 口下拉电阻控制寄存器 7EFE44H 0000,0000 P5PD P5 口下拉电阻控制寄存器 7EFE45H P6PD P6 口下拉电阻控制寄存器 7EFE46H 0000,0000 P7PD P7 口下拉电阻控制寄存器 7EFE47H 0000,0000 LCMIFCFG LCM 接口配置寄存器 7EFE50H LCMIFIE LCMIFCFG2 LCM 接口配置寄存器 2 7EFE51H LCMIFCR LCM 接口控制寄存器 7EFE52H ENLCMIF LCMIFSTA LCM 接口状态寄存器 7EFE53H LCMIDDATL LCM 接口低字节数据 7EFE54H LCMIFDAT[7:0] 0000,0000 LCMIDDATH LCM 接口高字节数据 7EFE55H LCMIFDAT[15:8] 0000,0000 0000,0000 - - - - - - - - - - - - - xxx0,0000 - - xxx1,1111 - xxx1,1111 - xxx1,1111 - xxx1,1111 LCMIFIP[1:0] LCMIFCPS[1:0] LCMIFDPS[1:0] SETUPT[2:0] - - - - - - - - D16_D8 HOLDT[1:0] CMD[2:0] - - RTCCR RTC 控制寄存器 7EFE60H - - - - - - - RTCCFG RTC 配置寄存器 7EFE61H - - - - - - RTCCKS 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 M68_I80 0x00,0000 传真: 0513-5501 2926/2956/2947 x000,0000 0xxx,x000 LCMIFIF xxxx,xxx0 RUNRTC xxxx,xxx0 SETRTC xxxx,xx00 - 201 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 RTCIEN RTC 中断使能寄存器 7EFE62H EALAI EDAYI EHOURI EMINI ESECI ESEC2I ESEC8I ESEC32I 0000,0000 RTCIF RTC 中断请求寄存器 7EFE63H ALAIF DAYIF HOURIF MINIF SECIF SEC2IF SEC8IF SEC32IF 0000,0000 ALAHOUR RTC 闹钟的小时值 7EFE64H - - - ALAMIN RTC 闹钟的分钟值 7EFE65H - - xx00,0000 ALASEC RTC 闹钟的秒值 7EFE66H - - xx00,0000 ALASSEC RTC 闹钟的 1/128 秒值 7EFE67H - x000,0000 INIYEAR RTC 年初始化 7EFE68H - x000,0000 INIMONTH RTC 月初始化 7EFE69H - - - INIDAY RTC 日初始化 7EFE6AH - - - xxx0,0000 INIHOUR RTC 小时初始化 7EFE6BH - - - xxx0,0000 INIMIN RTC 分钟初始化 7EFE6CH - - xx00,0000 INISEC RTC 秒初始化 7EFE6DH - - xx00,0000 INISSEC RTC1/128 秒初始化 7EFE6EH - x000,0000 YEAR RTC 的年计数值 7EFE70H - x000,0000 MONTH RTC 的月计数值 7EFE71H - - - DAY RTC 的日计数值 7EFE72H - - - xxx0,0000 HOUR RTC 的小时计数值 7EFE73H - - - xxx0,0000 MIN RTC 的分钟计数值 7EFE74H - - xx00,0000 SEC RTC 的秒计数值 7EFE75H - - xx00,0000 SSEC RTC 的 1/128 秒计数值 7EFE76H - I2C 配置寄存器 7EFE80H ENI2C MSSL I2CMSCR I2C 主机控制寄存器 7EFE81H EMSI - - - I2CMSST I2C 主机状态寄存器 7EFE82H MSBUSY MSIF - - - - MSACKI MSACKO 00xx,xx00 I2CSLCR I2C 从机控制寄存器 7EFE83H - ESTAI ERXI ETXI ESTOI - - SLRST x000,0xx0 I2CSLST I2C 从机状态寄存器 7EFE84H SLBUSY STAIF RXIF TXIF STOIF TXING SLACKI SLACKO 0000,0000 I2CSLADR I2C 从机地址寄存器 7EFE85H MA 0000,0000 I2CTXD I2C 数据发送寄存器 7EFE86H 0000,0000 I2CRXD I2C 数据接收寄存器 7EFE87H 0000,0000 I2C 主机辅助控制寄存器 7EFE88H - - - - - - - WDTA xxxx,xxx0 SPFUNC 辅助控制寄存器 7EFE98H - - - - - - - BKSWR xxxx,xxx0 RSTFLAG 复位标志寄存器 7EFE99H - - - LVDRST WDTRST SWRST ROMOV EXRST xxx0,0000 RSTCR0 复位控制寄存器 0 7EFE9AH - - - - RSTCR1 复位控制寄存器 1 7EFE9BH - - - - RSTCR2 复位控制寄存器 2 7EFE9CH RSTCAN2 RSTCAN RSTLIN RSTRTC RSTPWMB RSTPWMA RSTCR3 复位控制寄存器 3 7EFE9DH RSTFPU RSTDMA RSTLCM RSTLCD RSTLED RSTCR4 复位控制寄存器 4 7EFE9EH - - - - RSTCR5 复位控制寄存器 5 7EFE9FH - - - - TM0PS 定时器 0 时钟预分频寄存器 7EFEA0H 0000,0000 TM1PS 定时器 1 时钟预分频寄存器 7EFEA1H 0000,0000 TM2PS 定时器 2 时钟预分频寄存器 7EFEA2H 0000,0000 TM3PS 定时器 3 时钟预分频寄存器 7EFEA3H 0000,0000 TM4PS 定时器 4 时钟预分频寄存器 7EFEA4H 0000,0000 ADCTIM ADC 时序控制寄存器 7EFEA8H CSSETUP T3T4PIN T3/T4 选择寄存器 7EFEACH I2CCFG I2CMSAUX 深圳国芯人工智能有限公司 xxx0,0000 - xxxx,0000 - xxxx,0000 x000,0000 MSSPEED[6:1] 0000,0000 MSCMD[3:0] SLADR[6:0] - RSTTM34 TSTTM2 RSTUR4 - 国内分销商电话: 0513-5501 2928/2929/2966 RSTUR3 RSTTM01 xxxx,00x0 RSTUR2 RSTUR1 xxxx,0000 RSTI2C RSTSPI 0000,0000 RSTTKS RSTCMP RSTADC 0000,0000 - - - - - - CSHOLD[1:0] - - 0xxx,0000 RSTMDU xxxx,xxx0 - xxxx,xxxx 0010,1010 SMPDUTY[4:0] - - - - 传真: 0513-5501 2926/2956/2947 T3T4SEL xxxx,xxx0 - 202 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com ADCEXCFG ADC 扩展配置寄存器 7EFEADH CMPEXCFG 比较器扩展配置寄存器 7EFEAEH PWMA_ETRPS PWMA 的 ETR 选择寄存器 PWMA_ENO PWMA_PS PWMA 输出使能控制 7EFEB1H PWMA 输出脚选择寄存器 7EFEB2H 7EFEB3H PWMB_ETRPS PWMB 的 ETR 选择寄存器 7EFEB4H PWMB_PS PWMB 输出使能控制 7EFEB5H PWMB 输出脚选择寄存器 7EFEB6H PWMB_IOAUX PWMB 辅助寄存器 - ADCETRS [1:0] CHYS[1:0] - 7EFEB7H ENO4N ENO4P - ENO3N C4PS[1:0] AUX4N ENO2N C3PS[1:0] AUX4P AUX3N CMPNS CMPPS[1:0] CHYS[1:0] BRKAPS ETRAPS[1:0] xxxx,x000 ENO2P ENO1N C2PS[1:0] AUX3P AUX2N ENO8P - C8PS[1:0] - ENO7P - C7PS[1:0] AUX8P - AUX2P AUX1N ENO6P - 0000,0000 AUX1P 0000,0000 xxxx,x000 - x0x0,x0x0 ENO5P C5PS[1:0] AUX6P 0000,0000 ETRBPS[1:0] C6PS[1:0] AUX7P ENO1P C1PS[1:0] BRKBPS - xx00,x000 CVTIMESEL[2:0] - ENO3P 选型顾问: 13922805190 - 7EFEB0H PWMA_IOAUX PWMA 辅助寄存器 PWMB_ENO - 技术支持: 19864585985 - 0000,0000 AUX5P x0x0,x0x0 CANAR CANBUS 地址寄存器 7EFEBBH 0000,0000 CANDR CANBUS 数据寄存器 7EFEBCH 0000,0000 PWMA_CR1 PWMA 控制寄存器 1 7EFEC0H ARPE PWMA_CR2 PWMA 控制寄存器 2 7EFEC1H - 7EFEC2H MSM PWMA_SMCR PWMA 从模式控制寄存器 CMS[1:0] DIR OPM URS UDIS CEN 0000,0000 MMS[2:0] - COMS - CCPC x000,x0x0 TS[2:0] - SMS[2:0] 0000,x000 PWMA_ETR PWMA 外部触发寄存器 7EFEC3H ETP ECE PWMA_IER PWMA 中断使能寄存器 7EFEC4H BIE TIE COMIE CC4IE CC3IE CC2IE CC1IE UIE 0000,0000 PWMA_SR1 PWMA 状态寄存器 1 7EFEC5H BIF TIF COMIF CC4IF CC3IF CC2IF CC1IF UIF 0000,0000 PWMA_SR2 PWMA 状态寄存器 2 7EFEC6H - - - CC4OF CC3OF CC2OF CC1OF - xxx0,000x PWMA_EGR PWMA 事件发生寄存器 7EFEC7H BG TG COMG CC4G CC3G CC2G CC1G UG 0000,0000 OC1PE OC1FE PWMA 捕获模式寄存器 1 PWMA_CCMR1 OC1CE ETPS[1:0] ETF[3:0] OC1M[2:0] 0000,0000 CC1S[1:0] 0000,0000 CC1S[1:0] 0000,0000 CC2S[1:0] 0000,0000 CC2S[1:0] 0000,0000 CC3S[1:0] 0000,0000 CC3S[1:0] 0000,0000 CC4S[1:0] 0000,0000 CC4S[1:0] 0000,0000 7EFEC8H PWMA 比较模式寄存器 1 IC1F[3:0] PWMA 捕获模式寄存器 2 PWMA_CCMR2 OC2CE IC1PSC[1:0] OC2M[2:0] OC2PE OC2FE 7EFEC9H PWMA 比较模式寄存器 2 IC2F[3:0] PWMA 捕获模式寄存器 3 PWMA_CCMR3 OC3CE IC2PSC[1:0] OC3M[2:0] OC3PE OC3FE 7EFECAH PWMA 比较模式寄存器 3 IC3F[3:0] PWMA 捕获模式寄存器 4 PWMA_CCMR4 OC4CE IC3PSC[1:0] OC4M[2:0] OC4PE OC4FE 7EFECBH PWMA 比较模式寄存器 4 IC4F[3:0] IC4PSC[1:0] PWMA 捕获比较使能寄存器 7EFECCH PWMA_CCER1 CC2NP CC2NE CC2P CC2E CC1NP CC1NE CC1P CC1E 0000,0000 CC4NP CC4NE CC4P CC4E CC3NP CC3NE CC3P CC3E 0000,0000 1 PWMA 捕获比较使能寄存器 7EFECDH PWMA_CCER2 2 PWMA_CNTRH PWMA 计数器高字节 7EFECEH CNT[15:8] 0000,0000 PWMA_CNTRL PWMA 计数器低字节 7EFECFH CNT[7:0] 0000,0000 PWMA_PSCRH PWMA 预分频高字节 7EFED0H PSC[15:8] 0000,0000 PWMA_PSCRL PWMA 预分频低字节 7EFED1H PSC[7:0] 0000,0000 PWMA_ARRH PWMA 自动重装寄存器高字节 7EFED2H ARR[15:8] 0000,0000 PWMA_ARRL PWMA 自动重装寄存器低字节 7EFED3H ARR[7:0] 0000,0000 REP[7:0] 0000,0000 PWMA_CCR1H PWMA 比较捕获寄存器 1 高位 7EFED5H CCR1[15:8] 0000,0000 PWMA_CCR1L PWMA 比较捕获寄存器 1 低位 7EFED6H CCR1[7:0] 0000,0000 PWMA_CCR2H PWMA 比较捕获寄存器 2 高位 7EFED7H CCR2[15:8] 0000,0000 PWMA_CCR2L PWMA 比较捕获寄存器 2 低位 7EFED8H CCR2[7:0] 0000,0000 PWMA_CCR3H PWMA 比较捕获寄存器 3 高位 7EFED9H CCR3[15:8] 0000,0000 PWMA_RCR PWMA 重复计数器寄存器 深圳国芯人工智能有限公司 7EFED4H 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 203 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 PWMA_CCR3L PWMA 比较捕获寄存器 3 低位 7EFEDAH CCR3[7:0] 0000,0000 PWMA_CCR4H PWMA 比较捕获寄存器 4 高位 7EFEDBH CCR4[15:8] 0000,0000 PWMA_CCR4L PWMA 比较捕获寄存器 4 低位 7EFEDCH CCR4[7:0] 0000,0000 PWMA_BKR PWMA 刹车寄存器 7EFEDDH PWMA_DTR PWMA 死区控制寄存器 7EFEDEH PWMA_OISR PWMA 输出空闲状态寄存器 7EFEDFH MOE AOE BKP BKE OSSR LOCK[1:0] 0000,000x DTG[7:0] OIS4N OIS4 OIS3N 0000,0000 OIS3 OIS2N OIS2 OIS1N OIS1 0000,0000 DIR OPM URS UDIS CEN 0000,0000 COMS - CCPC x000,x0x0 PWMB_CR1 PWMB 控制寄存器 1 7EFEE0H ARPE PWMB_CR2 PWMB 控制寄存器 2 7EFEE1H - MMS[2:0] - 7EFEE2H MSM TS[2:0] - PWMB_SMCR PWMB 从模式控制寄存器 OSSI CMS[1:0] SMS[2:0] 0000,x000 PWMB_ETR PWMB 外部触发寄存器 7EFEE3H ETP ECE PWMB_IER PWMB 中断使能寄存器 7EFEE4H BIE TIE COMIE CC8IE CC7IE CC6IE CC5IE UIE 0000,0000 PWMB_SR1 PWMB 状态寄存器 1 7EFEE5H BIF TIF COMIF CC8IF CC7IF CC6IF CC5IF UIF 0000,0000 PWMB_SR2 PWMB 状态寄存器 2 7EFEE6H - - - CC8OF CC7OF CC6OF CC5OF - xxx0,000x PWMB_EGR PWMB 事件发生寄存器 7EFEE7H BG TG COMG CC8G CC7G CC6G CC5G UG 0000,0000 OC5PE OC5FE PWMB 捕获模式寄存器 1 PWMB_CCMR1 OC5CE ETPS[1:0] ETF[3:0] OC5M[2:0] 0000,0000 CC5S[1:0] 0000,0000 CC5S[1:0] 0000,0000 CC6S[1:0] 0000,0000 CC6S[1:0] 0000,0000 CC7S[1:0] 0000,0000 CC7S[1:0] 0000,0000 CC8S[1:0] 0000,0000 CC8S[1:0] 0000,0000 7EFEE8H PWMB 比较模式寄存器 1 IC5F[3:0] PWMB 捕获模式寄存器 2 PWMB_CCMR2 OC6CE IC5PSC[1:0] OC6M[2:0] OC6PE OC6FE 7EFEE9H PWMB 比较模式寄存器 2 IC6F[3:0] PWMB 捕获模式寄存器 3 PWMB_CCMR3 OC7CE IC6PSC[1:0] OC7M[2:0] OC7PE OC7FE 7EFEEAH PWMB 比较模式寄存器 3 IC7F[3:0] PWMB 捕获模式寄存器 4 PWMB_CCMR4 OC8CE IC7PSC[1:0] OC8M[2:0] OC8PE OC8FE 7EFEEBH PWMB 比较模式寄存器 4 IC8F[3:0] IC8PSC[1:0] PWMB_CCER1 PWMB 捕获比较使能寄存器 1 7EFEECH - - CC6P CC6E - - CC5P CC5E xx00,xx00 PWMB_CCER2 PWMB 捕获比较使能寄存器 2 7EFEEDH - - CC8P CC8E - - CC7P CC7E xx00,xx00 PWMB_CNTRH PWMB 计数器高字节 7EFEEEH CNT[15:8] 0000,0000 PWMB_CNTRL PWMB 计数器低字节 7EFEEFH CNT[7:0] 0000,0000 PWMB_PSCRH PWMB 预分频高字节 7EFEF0H PSC[15:8] 0000,0000 PWMB_PSCRL PWMB 预分频低字节 7EFEF1H PSC[7:0] 0000,0000 PWMB_ARRH PWMB 自动重装寄存器高字节 7EFEF2H ARR[15:8] 0000,0000 PWMB_ARRL PWMB 自动重装寄存器低字节 7EFEF3H ARR[7:0] 0000,0000 REP[7:0] 0000,0000 PWMB_CCR1H PWMB 比较捕获寄存器 1 高位 7EFEF5H CCR1[15:8] 0000,0000 PWMB_CCR1L PWMB 比较捕获寄存器 1 低位 7EFEF6H CCR1[7:0] 0000,0000 PWMB_CCR2H PWMB 比较捕获寄存器 2 高位 7EFEF7H CCR2[15:8] 0000,0000 PWMB_CCR2L PWMB 比较捕获寄存器 2 低位 7EFEF8H CCR2[7:0] 0000,0000 PWMB_CCR3H PWMB 比较捕获寄存器 3 高位 7EFEF9H CCR3[15:8] 0000,0000 PWMB_CCR3L PWMB 比较捕获寄存器 3 低位 7EFEFAH CCR3[7:0] 0000,0000 PWMB_CCR4H PWMB 比较捕获寄存器 4 高位 7EFEFBH CCR4[15:8] 0000,0000 PWMB_CCR4L PWMB 比较捕获寄存器 4 低位 7EFEFCH CCR4[7:0] 0000,0000 PWMB_RCR PWMB 重复计数器寄存器 7EFEF4H PWMB_BKR PWMB 刹车寄存器 7EFEFDH PWMB_DTR PWMB 死区控制寄存器 7EFEFEH PWMB_OISR PWMB 输出空闲状态寄存器 7EFEFFH 深圳国芯人工智能有限公司 MOE AOE BKP BKE OSSR OSSI LOCK[1:0] - 0000,000x DTG[7:0] - OIS8 - 国内分销商电话: 0513-5501 2928/2929/2966 OIS7 0000,0000 - OIS6 - 传真: 0513-5501 2926/2956/2947 OIS5 x0x0,x0x0 - 204 - STC32G 系列技术手册 10.6 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 扩展特殊功能寄存器列表(XFR:0x7EFD00-0x7EFDFF) 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 P0INTE P0 口中断使能寄存器 7EFD00H P07INTE P06INTE P05INTE P04INTE P03INTE P02INTE P01INTE P00INTE 0000,0000 P1INTE P1 口中断使能寄存器 7EFD01H P17INTE P16INTE P15INTE P14INTE P13INTE P12INTE P11INTE P10INTE 0000,0000 P2INTE P2 口中断使能寄存器 7EFD02H P27INTE P26INTE P25INTE P24INTE P23INTE P22INTE P21INTE P20INTE 0000,0000 P3INTE P3 口中断使能寄存器 7EFD03H P37INTE P36INTE P35INTE P34INTE P33INTE P32INTE P31INTE P30INTE 0000,0000 P4INTE P4 口中断使能寄存器 7EFD04H P47INTE P46INTE P45INTE P44INTE P43INTE P42INTE P41INTE P40INTE 0000,0000 P5INTE P5 口中断使能寄存器 7EFD05H - - P55INTE P54INTE P53INTE P52INTE P51INTE P50INTE xx00,0000 P6INTE P6 口中断使能寄存器 7EFD06H P67INTE P66INTE P65INTE P64INTE P63INTE P62INTE P61INTE P60INTE 0000,0000 P7INTE P7 口中断使能寄存器 7EFD07H P77INTE P76INTE P75INTE P74INTE P73INTE P72INTE P71INTE P70INTE 0000,0000 P0INTF P0 口中断标志寄存器 7EFD10H P07INTF P06INTF P05INTF P04INTF P03INTF P02INTF P01INTF P00INTF 0000,0000 P1INTF P1 口中断标志寄存器 7EFD11H P17INTF P16INTF P15INTF P14INTF P13INTF P12INTF P11INTF P10INTF 0000,0000 P2INTF P2 口中断标志寄存器 7EFD12H P27INTF P26INTF P25INTF P24INTF P23INTF P22INTF P21INTF P20INTF 0000,0000 P3INTF P3 口中断标志寄存器 7EFD13H P37INTF P36INTF P35INTF P34INTF P33INTF P32INTF P31INTF P30INTF 0000,0000 P4INTF P4 口中断标志寄存器 7EFD14H P47INTF P46INTF P45INTF P44INTF P43INTF P42INTF P41INTF P40INTF 0000,0000 P5INTF P5 口中断标志寄存器 7EFD15H - - P55INTF P54INTF P53INTF P52INTF P51INTF P50INTF xx00,0000 P6INTF P6 口中断标志寄存器 7EFD16H P67INTF P66INTF P65INTF P64INTF P63INTF P62INTF P61INTF P60INTF 0000,0000 P7INTF P7 口中断标志寄存器 7EFD17H P77INTF P76INTF P75INTF P74INTF P73INTF P72INTF P71INTF P70INTF 0000,0000 P0IM0 P0 口中断模式寄存器 0 7EFD20H P07IM0 P06IM0 P05IM0 P04IM0 P03IM0 P02IM0 P01IM0 P00IM0 0000,0000 P1IM0 P1 口中断模式寄存器 0 7EFD21H P17IM0 P16IM0 P15IM0 P14IM0 P13IM0 P12IM0 P11IM0 P10IM0 0000,0000 P2IM0 P2 口中断模式寄存器 0 7EFD22H P27IM0 P26IM0 P25IM0 P24IM0 P23IM0 P22IM0 P21IM0 P20IM0 0000,0000 P3IM0 P3 口中断模式寄存器 0 7EFD23H P37IM0 P36IM0 P35IM0 P34IM0 P33IM0 P32IM0 P31IM0 P30IM0 0000,0000 P4IM0 P4 口中断模式寄存器 0 7EFD24H P47IM0 P46IM0 P45IM0 P44IM0 P43IM0 P42IM0 P41IM0 P40IM0 0000,0000 P5IM0 P5 口中断模式寄存器 0 7EFD25H - - P55IM0 P54IM0 P53IM0 P52IM0 P51IM0 P50IM0 xx00,0000 P6IM0 P6 口中断模式寄存器 0 7EFD26H P67IM0 P66IM0 P65IM0 P64IM0 P63IM0 P62IM0 P61IM0 P60IM0 0000,0000 P7IM0 P7 口中断模式寄存器 0 7EFD27H P77IM0 P76IM0 P75IM0 P74IM0 P73IM0 P72IM0 P71IM0 P70IM0 0000,0000 P0IM1 P0 口中断模式寄存器 1 7EFD30H P07IM1 P06IM1 P05IM1 P04IM1 P03IM1 P02IM1 P01IM1 P00IM1 0000,0000 P1IM1 P1 口中断模式寄存器 1 7EFD31H P17IM1 P16IM1 P15IM1 P14IM1 P13IM1 P12IM1 P11IM1 P10IM1 0000,0000 P2IM1 P2 口中断模式寄存器 1 7EFD32H P27IM1 P26IM1 P25IM1 P24IM1 P23IM1 P22IM1 P21IM1 P20IM1 0000,0000 P3IM1 P3 口中断模式寄存器 1 7EFD33H P37IM1 P36IM1 P35IM1 P34IM1 P33IM1 P32IM1 P31IM1 P30IM1 0000,0000 P4IM1 P4 口中断模式寄存器 1 7EFD34H P47IM1 P46IM1 P45IM1 P44IM1 P43IM1 P42IM1 P41IM1 P40IM1 0000,0000 P5IM1 P5 口中断模式寄存器 1 7EFD35H - - P55IM1 P54IM1 P53IM1 P52IM1 P51IM1 P50IM1 xx00,0000 P6IM1 P6 口中断模式寄存器 1 7EFD36H P67IM1 P66IM1 P65IM1 P64IM1 P63IM1 P62IM1 P61IM1 P60IM1 0000,0000 P7IM1 P7 口中断模式寄存器 1 7EFD37H P77IM1 P76IM1 P75IM1 P74IM1 P73IM1 P72IM1 P71IM1 P70IM1 0000,0000 P0WKUE P0 口中断唤醒使能 7EFD40H P07WKUE P06WKUE P05WKUE P04WKUE P03WKUE P02WKUE P01WKUE P00WKUE 0000,0000 P1WKUE P1 口中断唤醒使能 7EFD41H P17WKUE P16WKUE P15WKUE P14WKUE P13WKUE P12WKUE P11WKUE P10WKUE 0000,0000 P2WKUE P2 口中断唤醒使能 7EFD42H P27WKUE P26WKUE P25WKUE P24WKUE P23WKUE P22WKUE P21WKUE P20WKUE 0000,0000 P3WKUE P3 口中断唤醒使能 7EFD43H P37WKUE P36WKUE P35WKUE P34WKUE P33WKUE P32WKUE P31WKUE P30WKUE 0000,0000 P4WKUE P4 口中断唤醒使能 7EFD44H P47WKUE P46WKUE P45WKUE P44WKUE P43WKUE P42WKUE P41WKUE P40WKUE 0000,0000 P5WKUE P5 口中断唤醒使能 7EFD45H P6WKUE P6 口中断唤醒使能 7EFD46H P67WKUE P66WKUE P65WKUE P64WKUE P63WKUE P62WKUE P61WKUE P60WKUE 0000,0000 深圳国芯人工智能有限公司 - - P55WKUE P54WKUE P53WKUE P52WKUE P51WKUE P50WKUE xx00,0000 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 205 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P7 口中断唤醒使能 7EFD47H P77WKUE P76WKUE P75WKUE P74WKUE P73WKUE P72WKUE P71WKUE P70WKUE 0000,0000 PINIPL I/O 口中断优先级低寄存器 7EFD60H P7IP P6IP P5IP P4IP P3IP P2IP P1IP P0IP 0000,0000 PINIPH I/O 口中断优先级高寄存器 7EFD61H P7IPH P6IPH P5IPH P4IPH P3IPH P2IPH P1IPH P0IPH 0000,0000 P7WKUE FSHWUPPRD FLASH 唤醒等待时间寄存器 7EFD68H 0011,1100 UR1TOCR 串口 1 超时控制寄存器 7EFD70H ENTO ENTOI SCALE - - - - - 000x,xxxx UR1TOSR 串口 1 超时状态寄存器 7EFD71H - - - - - - - TOIF xxxx,xxx0 UR1TOTH 串口 1 超时长度控制寄存器 7EFD72H TM[15:8] 0000,0000 UR1TOTL 串口 1 超时长度控制寄存器 7EFD73H TM[7:0] 0000,0000 UR2TOCR 串口 2 超时控制寄存器 7EFD74H ENTO ENTOI SCALE - - - - - 000x,xxxx UR2TOSR 串口 2 超时状态寄存器 7EFD75H - - - - - - - TOIF xxxx,xxx0 UR2TOTH 串口 2 超时长度控制寄存器 7EFD76H TM[15:8] 0000,0000 UR2TOTL 串口 2 超时长度控制寄存器 7EFD77H TM[7:0] 0000,0000 UR3TOCR 串口 3 超时控制寄存器 7EFD78H ENTO ENTOI SCALE - - - - - 000x,xxxx UR3TOSR 串口 3 超时状态寄存器 7EFD79H - - - - - - - TOIF xxxx,xxx0 UR3TOTH 串口 3 超时长度控制寄存器 7EFD7AH TM[15:8] 0000,0000 UR3TOTL 串口 3 超时长度控制寄存器 7EFD7BH TM[7:0] 0000,0000 UR4TOCR 串口 4 超时控制寄存器 7EFD7CH ENTO ENTOI SCALE - - - - - 000x,xxxx UR4TOSR 串口 4 超时状态寄存器 7EFD7DH - - - - - - - TOIF xxxx,xxx0 UR4TOTH 串口 4 超时长度控制寄存器 7EFD7EH TM[15:8] 0000,0000 UR4TOTL 串口 4 超时长度控制寄存器 7EFD7FH TM[7:0] 0000,0000 SPITOCR SPI 超时控制寄存器 7EFD80H ENTO ENTOI SCALE - - - - - 000x,xxxx SPITOSR SPI 超时状态寄存器 7EFD81H - - - - - - - TOIF xxxx,xxx0 SPITOTH SPI 超时长度控制寄存器 7EFD82H TM[15:8] 0000,0000 SPITOTL SPI 超时长度控制寄存器 7EFD83H TM[7:0] 0000,0000 I2CTOCR I2C 超时控制寄存器 7EFD84H ENTO ENTOI SCALE - - - - - 000x,xxxx I2CTOSR I2C 超时状态寄存器 7EFD85H - - - - - - - TOIF xxxx,xxx0 I2CTOTH I2C 超时长度控制寄存器 7EFD86H TM[15:8] 0000,0000 I2CTOTL I2C 超时长度控制寄存器 7EFD87H TM[7:0] 0000,0000 I2SCR I2S 控制寄存器 7EFD98H TXEIE RXNEIE ERRIE FRF - - I2SSR I2S 状态寄存器 7EFD99H - FRE BUY OVR UDR CHSID I2SDRH I2S 数据寄存器高字节 7EFD9AH DR[15:8] 0000,0000 I2SDRL I2S 数据寄存器低字节 7EFD9BH DR[7:0] 0000,0000 I2SPRH I2S 分频寄存器高字节 7EFD9CH I2SPRL I2S 分频寄存器低字节 7EFD9DH I2SCFGH I2S 配置寄存器高字节 7EFD9EH - - I2SCFGL I2S 配置寄存器低字节 7EFD9FH PCMSYNC - I2SMD I2S 从模式控制寄存器 7EFDA0H CRECR CRE 控制寄存器 7EFDA8H CRECNTH CRE 校准目标寄存器 7EFDA9H CNT[15:8] 0000,0000 CRECNTL CRE 校准目标寄存器 7EFDAAH CNT[7:0] 0000,0000 CRE 分辨率控制寄存器 7EFDABH RES[7:0] 0000,0000 串口 2 配置寄存器 7EFDB4H S2ADDR. 串口 2 从机地址寄存器 7EFDB5H 0000,0000 S2ADEN 串口 2 从机地址屏蔽寄存器 7EFDB6H 0000,0000 CRERES S2CFG 深圳国芯人工智能有限公司 - - - - - - TXDMAEN RXDMAEN 0000,xx00 TXE MCKOE RXNE ODD DIV[7:0] - STD[1:0] - MONO CKPOL S2MOD0 UPT[1:0] S2M0x6 I2SE I2SCFG[1:0] DATLEN[1:0] xxxx,x000 CHLEN 国内分销商电话: 0513-5501 2928/2929/2966 0x00,0000 0000,0000 CREHF - xxxx,xx00 0000,0000 MD[7:0] ENCRE x000,0000 - CREINC - CREDEC - 传真: 0513-5501 2926/2956/2947 CRERDY 0000,0000 W1 000x,xxx0 - 206 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 USARTCR1 串口 1 控制寄存器 1 7EFDC0H LINEN DORD CLKEN SPMOD SPIEN SPSLV CPOL CPHA 0000,0000 USARTCR2 串口 1 控制寄存器 2 7EFDC1H IREN IRLP SCEN NACK HDSEL PCEN PS PE 0000,0000 USARTCR3 串口 1 控制寄存器 3 7EFDC2H USARTCR4 串口 1 控制寄存器 4 7EFDC3H USARTCR5 串口 1 控制寄存器 5 7EFDC4H BRKDET USARTGTR 串口 1 保护时间寄存器 7EFDC5H USARTBRH 串口 1 波特率寄存器 7EFDC6H USARTBR[15:8] 0000,0000 USARTBRL 串口 1 波特率寄存器 7EFDC7H USARTBR[7:0] 0000,0000 USART2CR1 串口 2 控制寄存器 1 7EFDC8H LINEN DORD CLKEN SPMOD SPIEN SPSLV CPOL CPHA 0000,0000 USART2CR2 串口 2 控制寄存器 2 7EFDC9H IREN IRLP SCEN NACK HDSEL PCEN PS PE 0000,0000 USART2CR3 串口 2 控制寄存器 3 7EFDCAH USART2CR4 串口 2 控制寄存器 4 7EFDCBH USART2CR5 串口 2 控制寄存器 5 7EFDCCH BRKDET USART2GTR 串口 2 保护时间寄存器 7EFDCDH USART2BRH 串口 2 波特率寄存器 7EFDCEH USART2BR[15:8] 0000,0000 USART2BRL 串口 2 波特率寄存器 7EFDCFH USART2BR[7:0] 0000,0000 CHIPID00 硬件数字 ID00 7EFDE0H 全球唯一 ID 号(第 0 字节) nnnn,nnnn CHIPID01 硬件数字 ID01 7EFDE1H 全球唯一 ID 号(第 1 字节) nnnn,nnnn CHIPID02 硬件数字 ID02 7EFDE2H 全球唯一 ID 号(第 2 字节) nnnn,nnnn CHIPID03 硬件数字 ID03 7EFDE3H 全球唯一 ID 号(第 3 字节) nnnn,nnnn CHIPID04 硬件数字 ID04 7EFDE4H 全球唯一 ID 号(第 4 字节) nnnn,nnnn CHIPID05 硬件数字 ID05 7EFDE5H 全球唯一 ID 号(第 5 字节) nnnn,nnnn CHIPID06 硬件数字 ID06 7EFDE6H 全球唯一 ID 号(第 6 字节) nnnn,nnnn CHIPID07 硬件数字 ID07 7EFDE7H 内部 1.19V 参考信号源(高字节) nnnn,nnnn CHIPID08 硬件数字 ID08 7EFDE8H 内部 1.19V 参考信号源(低字节) nnnn,nnnn CHIPID09 硬件数字 ID09 7EFDE9H 32K 掉电唤醒定时器的频率(高字节) nnnn,nnnn CHIPID10 硬件数字 ID10 7EFDEAH 32K 掉电唤醒定时器的频率(低字节) nnnn,nnnn CHIPID11 硬件数字 ID11 7EFDEBH 22.1184MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID12 硬件数字 ID12 7EFDECH 24MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID13 硬件数字 ID13 7EFDEDH 27MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID14 硬件数字 ID14 7EFDEEH 30MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID15 硬件数字 ID15 7EFDEFH 33.1776MHz 的 IRC 参数(27M 频段) nnnn,nnnn CHIPID16 硬件数字 ID16 7EFDF0H 35MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID17 硬件数字 ID17 7EFDF1H 36.864MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID18 硬件数字 ID18 7EFDF2H 40MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID19 硬件数字 ID19 7EFDF3H 44.2368MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID20 硬件数字 ID20 7EFDF4H 48MHz 的 IRC 参数(44M 频段) nnnn,nnnn CHIPID21 硬件数字 ID21 7EFDF5H 6M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID22 硬件数字 ID22 7EFDF6H 10M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID23 硬件数字 ID23 7EFDF7H 27M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID24 硬件数字 ID24 7EFDF8H 44M 频段的 VRTRIM 参数 nnnn,nnnn CHIPID25 硬件数字 ID25 7EFDF9H 00H nnnn,nnnn CHIPID26 硬件数字 ID26 7EFDFAH 用户程序空间结束地址(高字节) nnnn,nnnn CHIPID27 硬件数字 ID27 7EFDFBH 芯片测试时间(年) nnnn,nnnn 深圳国芯人工智能有限公司 IrDA_LPBAUD[7:0] - - - - HDRER SLVEN ASYNC 0000,0111 SCCKS[1:0] TXCF SENDBK SPICKS[1:0] HDRDET xxxx,0000 SYNC 0000,0000 0000,0000 IrDA_LPBAUD[7:0] - - - - HDRER SLVEN ASYNC 0000,0000 SCCKS[1:0] TXCF SENDBK SPICKS[1:0] HDRDET xxxx,0000 SYNCAN 0000,0000 0000,0000 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 207 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 CHIPID28 硬件数字 ID28 7EFDFCH 芯片测试时间(月) nnnn,nnnn CHIPID29 硬件数字 ID29 7EFDFDH 芯片测试时间(日) nnnn,nnnn CHIPID30 硬件数字 ID30 7EFDFEH 芯片封装形式编号 nnnn,nnnn CHIPID31 硬件数字 ID31 7EFDFFH 5AH nnnn,nnnn 10.7 扩展特殊功能寄存器列表(XFR:0x7EFB00-0x7EFBFF) 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 - - - - AUTORD INTEN ASYNCEN 1 HSPWMA_CFG 高速 PWMA 配置寄存器 7EFBF0H HSPWMA_ADR 高速 PWMA 地址寄存器 7EFBF1H RW/BUSY HSPWMA_DAT 高速 PWMA 数据寄存器 7EFBF2H HSPWMB_CFG 高速 PWMB 配置寄存器 7EFBF4H HSPWMB_ADR 高速 PWMB 地址寄存器 7EFBF5H RW/BUSY HSPWMB_DAT 高速 PWMB 数据寄存器 7EFBF6H ADDR[6:0] - - - - 0000,0000 AUTORD INTEN ASYNCEN 1 xxxx,0001 ADDR[6:0] 0000,0000 DATA[7:0] 高速 SPI 配置寄存器 7EFBF8H HSSPI_CFG2 高速 SPI 配置寄存器 2 7EFBF9H - - HSSPIEN FIFOEN 高速 SPI 状态寄存器 7EFBFAH - - - - 10.8 0000,0000 DATA[7:0] HSSPI_CFG HSSPI_STA xxxx,0001 0000,0000 SS_HLD[3:0] TXFULL SS_SETUP[3:0] 0011,0011 SS_DACT[3:0] xx00,0011 TXEMPT RXFULL RXEMPT xxxx,0000 扩展特殊功能寄存器列表(XFR:0x7EFA00-0x7EFAFF) 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 DMA_M2M_CFG M2M_DMA 配置寄存器 7EFA00H M2MIE - TXACO RXACO DMA_M2M_CR M2M_DMA 控制寄存器 7EFA01H ENM2M TRIG - - - - DMA_M2M_STA M2M_DMA 状态寄存器 7EFA02H - - - - - - DMA_M2M_AMT M2M_DMA 传输总字节数 7EFA03H 0000,0000 DMA_M2M_DONE M2M_DMA 传输完成字节数 7EFA04H 0000,0000 DMA_M2M_TXAH M2M_DMA 发送高地址 7EFA05H 0000,0000 DMA_M2M_TXAL M2M_DMA 发送低地址 7EFA06H 0000,0000 DMA_M2M_RXAH M2M_DMA 接收高地址 7EFA07H 0000,0000 DMA_M2M_RXAL M2M_DMA 接收低地址 7EFA08H 0000,0000 DMA_ADC_CFG ADC_DMA 配置寄存器 7EFA10H ADCIE - - - ADCMIP[1:0] DMA_ADC_CR ADC_DMA 控制寄存器 7EFA11H ENADC TRIG - - - - DMA_ADC_STA ADC_DMA 状态寄存器 7EFA12H - - - - - - DMA_ADC_RXAH ADC_DMA 接收高地址 7EFA17H 0000,0000 DMA_ADC_RXAL ADC_DMA 接收低地址 7EFA18H 0000,0000 DMA_ADC_CFG2 ADC_DMA 配置寄存器 2 7EFA19H - - - - DMA_ADC_CHSW0 ADC_DMA 通道使能 7EFA1AH CH15 CH14 CH13 CH12 CH11 CH10 CH9 CH8 1000,0000 DMA_ADC_CHSW1 ADC_DMA 通道使能 7EFA1BH CH7 CH6 CH5 CH4 CH3 CH2 CH1 CH0 0000,0001 DMA_SPI_CFG SPI_DMA 配置寄存器 7EFA20H SPIIE ACT_TX ACT_RX - DMA_SPI_CR SPI_DMA 控制寄存器 7EFA21H ENSPI TRIG_M TRIG_S - 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 M2MIP[1:0] M2MPTY[1:0] 0x00,0000 - - 00xx,xxxx - M2MIF xxxx,xxx0 ADCPTY[1:0] 0xxx,0000 - - 00xx,xxxx - ADCIF xxxx,xxx0 CVTIMESEL[3:0] SPIIP[1:0] - xxxx,0000 SPIPTY[1:0] - - 传真: 0513-5501 2926/2956/2947 000x,0000 CLRFIFO 000x,xxx0 - 208 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 DMA_SPI_STA SPI_DMA 状态寄存器 7EFA22H DMA_SPI_AMT SPI_DMA 传输总字节数 7EFA23H 0000,0000 DMA_SPI_DONE SPI_DMA 传输完成字节数 7EFA24H 0000,0000 DMA_SPI_TXAH SPI_DMA 发送高地址 7EFA25H 0000,0000 DMA_SPI_TXAL SPI_DMA 发送低地址 7EFA26H 0000,0000 DMA_SPI_RXAH SPI_DMA 接收高地址 7EFA27H 0000,0000 DMA_SPI_RXAL SPI_DMA 接收低地址 7EFA28H 0000,0000 DMA_SPI_CFG2 SPI_DMA 配置寄存器 2 7EFA29H - - - - - DMA_UR1T_CFG UR1T_DMA 配置寄存器 7EFA30H UR1TIE - - - UR1TIP[1:0] DMA_UR1T_CR UR1T_DMA 控制寄存器 7EFA31H ENUR1T TRIG - - - - - - 00xx,xxxx DMA_UR1T_STA UR1T_DMA 状态寄存器 7EFA32H - - - - - TXOVW - UR1TIF xxxx,x0x0 DMA_UR1T_AMT UR1T_DMA 传输总字节数 7EFA33H 0000,0000 DMA_UR1T_DONE UR1T_DMA 传输完成字节数 7EFA34H 0000,0000 DMA_UR1T_TXAH UR1T_DMA 发送高地址 7EFA35H 0000,0000 DMA_UR1T_TXAL UR1T_DMA 发送低地址 7EFA36H 0000,0000 DMA_UR1R_CFG UR1R_DMA 配置寄存器 7EFA38H UR1RIE - - - UR1RIP[1:0] DMA_UR1R_CR UR1R_DMA 控制寄存器 7EFA39H ENUR1R - TRIG - - - - DMA_UR1R_STA UR1R_DMA 状态寄存器 7EFA3AH - - - - - - RXLOSS DMA_UR1R_AMT UR1R_DMA 传输总字节数 7EFA3BH 0000,0000 DMA_UR1R_DONE UR1R_DMA 传输完成字节数 7EFA3CH 0000,0000 DMA_UR1R_RXAH UR1R_DMA 接收高地址 7EFA3DH 0000,0000 DMA_UR1R_RXAL UR1R_DMA 接收低地址 7EFA3EH 0000,0000 DMA_UR2T_CFG UR2T_DMA 配置寄存器 7EFA40H UR2TIE - - - UR2TIP[1:0] DMA_UR2T_CR UR2T_DMA 控制寄存器 7EFA41H ENUR2T TRIG - - - - - - 00xx,xxxx DMA_UR2T_STA UR2T_DMA 状态寄存器 7EFA42H - - - - - TXOVW - UR2TIF xxxx,x0x0 DMA_UR2T_AMT UR2T_DMA 传输总字节数 7EFA43H 0000,0000 DMA_UR2T_DONE UR2T_DMA 传输完成字节数 7EFA44H 0000,0000 DMA_UR2T_TXAH UR2T_DMA 发送高地址 7EFA45H 0000,0000 DMA_UR2T_TXAL UR2T_DMA 发送低地址 7EFA46H 0000,0000 DMA_UR2R_CFG UR2R_DMA 配置寄存器 7EFA48H UR2RIE - - - UR2RIP[1:0] DMA_UR2R_CR UR2R_DMA 控制寄存器 7EFA49H ENUR2R - TRIG - - - - DMA_UR2R_STA UR2R_DMA 状态寄存器 7EFA4AH - - - - - - RXLOSS DMA_UR2R_AMT UR2R_DMA 传输总字节数 7EFA4BH 0000,0000 DMA_UR2R_DONE UR2R_DMA 传输完成字节数 7EFA4CH 0000,0000 DMA_UR2R_RXAH UR2R_DMA 接收高地址 7EFA4DH 0000,0000 DMA_UR2R_RXAL UR2R_DMA 接收低地址 7EFA4EH 0000,0000 DMA_UR3T_CFG UR3T_DMA 配置寄存器 7EFA50H UR3TIE - - - UR3TIP[1:0] DMA_UR3T_CR UR3T_DMA 控制寄存器 7EFA51H ENUR3T TRIG - - - - - - 00xx,xxxx DMA_UR3T_STA UR3T_DMA 状态寄存器 7EFA52H - - - - - TXOVW - UR3TIF xxxx,x0x0 DMA_UR3T_AMT UR3T_DMA 传输总字节数 7EFA53H 0000,0000 DMA_UR3T_DONE UR3T_DMA 传输完成字节数 7EFA54H 0000,0000 DMA_UR3T_TXAH UR3T_DMA 发送高地址 7EFA55H 0000,0000 DMA_UR3T_TXAL UR3T_DMA 发送低地址 7EFA56H 0000,0000 DMA_UR3R_CFG UR3R_DMA 配置寄存器 7EFA58H 深圳国芯人工智能有限公司 - UR3RIE - - - - 国内分销商电话: 0513-5501 2928/2929/2966 - - - TXOVW RXLOSS WRPSS UR3RIP[1:0] SPIIF xxxx,x000 SSS[1:0] xxxx,x000 UR1TPTY[1:0] 0xxx,0000 UR1RPTY[1:0] CLRFIFO 0x0x,xxx0 UR1RIF UR2TPTY[1:0] UR2RPTY[1:0] xxxx,xx00 0xxx,0000 0xxx,0000 CLRFIFO 0x0x,xxx0 UR2RIF UR3TPTY[1:0] UR3RPTY[1:0] 传真: 0513-5501 2926/2956/2947 0xxx,0000 xxxx,xx00 0xxx,0000 0xxx,0000 - 209 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 DMA_UR3R_CR UR3R_DMA 控制寄存器 7EFA59H ENUR3R - TRIG - - - - DMA_UR3R_STA UR3R_DMA 状态寄存器 7EFA5AH - - - - - - RXLOSS DMA_UR3R_AMT UR3R_DMA 传输总字节数 7EFA5BH 0000,0000 DMA_UR3R_DONE UR3R_DMA 传输完成字节数 7EFA5CH 0000,0000 DMA_UR3R_RXAH UR3R_DMA 接收高地址 7EFA5DH 0000,0000 DMA_UR3R_RXAL UR3R_DMA 接收低地址 7EFA5EH 0000,0000 DMA_UR4T_CFG UR4T_DMA 配置寄存器 7EFA60H UR4TIE - - - UR4TIP[1:0] DMA_UR4T_CR UR4T_DMA 控制寄存器 7EFA61H ENUR4T TRIG - - - - - - 00xx,xxxx DMA_UR4T_STA UR4T_DMA 状态寄存器 7EFA62H - - - - - TXOVW - UR4TIF xxxx,x0x0 DMA_UR4T_AMT UR4T_DMA 传输总字节数 7EFA63H 0000,0000 DMA_UR4T_DONE UR4T_DMA 传输完成字节数 7EFA64H 0000,0000 DMA_UR4T_TXAH UR4T_DMA 发送高地址 7EFA65H 0000,0000 DMA_UR4T_TXAL UR4T_DMA 发送低地址 7EFA66H 0000,0000 DMA_UR4R_CFG UR4R_DMA 配置寄存器 7EFA68H UR4RIE - - - UR4RIP[1:0] DMA_UR4R_CR UR4R_DMA 控制寄存器 7EFA69H ENUR4R - TRIG - - - - DMA_UR4R_STA UR4R_DMA 状态寄存器 7EFA6AH - - - - - - RXLOSS DMA_UR4R_AMT UR4R_DMA 传输总字节数 7EFA6BH 0000,0000 DMA_UR4R_DONE UR4R_DMA 传输完成字节数 7EFA6CH 0000,0000 DMA_UR4R_RXAH UR4R_DMA 接收高地址 7EFA6DH 0000,0000 DMA_UR4R_RXAL UR4R_DMA 接收低地址 7EFA6EH 0000,0000 DMA_LCM_CFG LCM_DMA 配置寄存器 7EFA70H LCMIE DMA_LCM_CR LCM_DMA 控制寄存器 7EFA71H ENLCM DMA_LCM_STA LCM_DMA 状态寄存器 7EFA72H - DMA_LCM_AMT LCM_DMA 传输总字节数 7EFA73H 0000,0000 DMA_LCM_DONE LCM_DMA 传输完成字节数 7EFA74H 0000,0000 DMA_LCM_TXAH LCM_DMA 发送高地址 7EFA75H 0000,0000 DMA_LCM_TXAL LCM_DMA 发送低地址 7EFA76H 0000,0000 DMA_LCM_RXAH LCM_DMA 接收高地址 7EFA77H 0000,0000 DMA_LCM_RXAL LCM_DMA 接收低地址 7EFA78H 0000,0000 DMA_M2M_AMTH M2M_DMA 传输总字节数 7EFA80H 0000,0000 DMA_M2M_DONEH M2M_DMA 传输完成字节数 7EFA81H 0000,0000 DMA_SPI_AMTH SPI_DMA 传输总字节数 7EFA84H 0000,0000 DMA_SPI_DONEH SPI_DMA 传输完成字节数 7EFA85H 0000,0000 DMA_LCM_AMTH LCM_DMA 传输总字节数 7EFA86H 0000,0000 DMA_LCM_DONEH LCM_DMA 传输完成字节数 7EFA87H 0000,0000 DMA_UR1T_AMTH UR1T_DMA 传输总字节数 7EFA88H 0000,0000 DMA_UR1T_DONEH UR1T_DMA 传输完成字节数 7EFA89H 0000,0000 DMA_UR1R_AMTH UR1R_DMA 传输总字节数 7EFA8AH 0000,0000 DMA_UR1R_DONEH UR1R_DMA 传输完成字节数 7EFA8BH 0000,0000 DMA_UR2T_AMTH UR2T_DMA 传输总字节数 7EFA8CH 0000,0000 DMA_UR2T_DONEH UR2T_DMA 传输完成字节数 7EFA8DH 0000,0000 DMA_UR2R_AMTH UR2R_DMA 传输总字节数 7EFA8EH 0000,0000 DMA_UR2R_DONEH UR2R_DMA 传输完成字节数 7EFA8FH 0000,0000 UR3T_DMA 传输总字节数 0000,0000 DMA_UR3T_AMTH 深圳国芯人工智能有限公司 - - TRIGWC TRIGWD - - - LCMIP[1:0] UR3RIF UR4TPTY[1:0] UR4RPTY[1:0] xxxx,xx00 0xxx,0000 0xxx,0000 CLRFIFO 0x0x,xxx0 UR4RIF xxxx,xx00 LCMPTY[1:0] 0xxx,0000 TRIGRC TRIGRD - - - 0000,0xxx - - - TXOVW LCMIF xxxx,xx00 7EFA90H 国内分销商电话: 0513-5501 2928/2929/2966 CLRFIFO 0x0x,xxx0 传真: 0513-5501 2926/2956/2947 - 210 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 DMA_UR3T_DONEH UR3T_DMA 传输完成字节数 7EFA91H 0000,0000 DMA_UR3R_AMTH UR3R_DMA 传输总字节数 7EFA92H 0000,0000 DMA_UR3R_DONEH UR3R_DMA 传输完成字节数 7EFA93H 0000,0000 DMA_UR4T_AMTH UR4T_DMA 传输总字节数 7EFA94H 0000,0000 DMA_UR4T_DONEH UR4T_DMA 传输完成字节数 7EFA95H 0000,0000 DMA_UR4R_AMTH UR4R_DMA 传输总字节数 7EFA96H 0000,0000 DMA_UR4R_DONEH UR4R_DMA 传输完成字节数 7EFA97H 0000,0000 DMA_I2CT_CFG I2CT_DMA 配置寄存器 7EFA98H I2CTIE - - - I2CTIP[1:0] I2CTPTY[1:0] 0xxx,0000 DMA_I2CT_CR I2CT_DMA 控制寄存器 7EFA99H ENI2CT TRIG - - - - - - 00xx,xxxx DMA_I2CT_STA I2CT_DMA 状态寄存器 7EFA9AH - - - - - TXOVW - I2CTIF xxxx,x0x0 DMA_I2CT_AMT I2CT_DMA 传输总字节数 7EFA9BH 0000,0000 DMA_I2CT_DONE I2CT_DMA 传输完成字节数 7EFA9CH 0000,0000 DMA_I2CT_TXAH I2CT_DMA 发送高地址 7EFA9DH 0000,0000 DMA_I2CT_TXAL I2CT_DMA 发送低地址 7EFA9EH 0000,0000 DMA_I2CR_CFG I2CR_DMA 配置寄存器 7EFAA0H I2CRIE - - - I2CRIP[1:0] I2CRPTY[1:0] DMA_I2CR_CR I2CR_DMA 控制寄存器 7EFAA1H ENI2CR TRIG - - - - - DMA_I2CR_STA I2CR_DMA 状态寄存器 7EFAA2H - - - - - - RXLOSS DMA_I2CR_AMT I2CR_DMA 传输总字节数 7EFAA3H 0000,0000 DMA_I2CR_DONE I2CR_DMA 传输完成字节数 7EFAA4H 0000,0000 DMA_I2CR_RXAH I2CR_DMA 接收高地址 7EFAA5H 0000,0000 DMA_I2CR_RXAL I2CR_DMA 接收低地址 7EFAA6H 0000,0000 DMA_I2CT_AMTH I2CT_DMA 传输总字节数 7EFAA8H 0000,0000 DMA_I2CT_DONEH I2CT_DMA 传输完成字节数 7EFAA9H 0000,0000 DMA_I2CR_AMTH I2CR_DMA 传输总字节数 7EFAAAH 0000,0000 DMA_I2CR_DONEH I2CR_DMA 传输完成字节数 7EFAABH 0000,0000 0xxx,0000 CLRFIFO 00xx,xxx0 I2CRIF xxxx,xx00 DMA_I2C_CR I2C_DMA 控制寄存器 7EFAADH DMA_I2C_ST1 I2C_DMA 状态寄存器 7EFAAEH COUNT[7:0] 0000,0000 DMA_I2C_ST2 I2C_DMA 状态寄存器 7EFAAFH COUNT[15:8] 0000,0000 RDSEL - - - - ACKERR INTEN BMMEN 0xxx,x000 DMA_I2ST_CFG I2ST_DMA 配置寄存器 7EFAB0H I2STIE - - - I2STIP[1:0] I2STPTY[1:0] 0xxx,0000 DMA_I2ST_CR I2ST_DMA 控制寄存器 7EFAB1H ENI2ST TRIG - - - - - - 00xx,xxxx DMA_I2ST_STA I2ST_DMA 状态寄存器 7EFAB2H - - - - - TXOVW - I2STIF xxxx,x0x0 DMA_I2ST_AMT I2ST_DMA 传输总字节数 7EFAB3H 0000,0000 DMA_I2ST_DONE I2ST_DMA 传输完成字节数 7EFAB4H 0000,0000 DMA_I2ST_TXAH I2ST_DMA 发送高地址 7EFAB5H 0000,0000 DMA_I2ST_TXAL I2ST_DMA 发送低地址 7EFAB6H 0000,0000 DMA_I2SR_CFG I2SR_DMA 配置寄存器 7EFAB8H I2SRIE - - - I2SRIP[1:0] I2SRPTY[1:0] DMA_I2SR_CR I2SR_DMA 控制寄存器 7EFAB9H ENI2SR - TRIG - - - - DMA_I2SR_STA I2SR_DMA 状态寄存器 7EFABAH - - - - - - RXLOSS DMA_I2SR_AMT I2SR_DMA 传输总字节数 7EFABBH 0000,0000 DMA_I2SR_DONE I2SR_DMA 传输完成字节数 7EFABCH 0000,0000 DMA_I2SR_RXAH I2SR_DMA 接收高地址 7EFABDH 0000,0000 DMA_I2SR_RXAL I2SR_DMA 接收低地址 7EFABEH 0000,0000 DMA_I2ST_AMTH I2ST_DMA 传输总字节数 7EFAC0H 0000,0000 DMA_I2ST_DONEH I2ST_DMA 传输完成字节数 7EFAC1H 0000,0000 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 0xxx,0000 CLRFIFO 0x0x,xxx0 I2SRIF xxxx,xx00 - 211 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 DMA_I2SR_AMTH I2SR_DMA 传输总字节数 7EFAC2H 0000,0000 DMA_I2SR_DONEH I2SR_DMA 传输完成字节数 7EFAC3H 0000,0000 DMA_ARB_CFG DMA 总裁配置寄存器 DMA_ARB_STA DMA 总裁状态寄存器 深圳国芯人工智能有限公司 7EFAF8H WTRREN - - - STASEL[3:0]- 7EFAF9H 国内分销商电话: 0513-5501 2928/2929/2966 0xxx,0000 0000,0000 传真: 0513-5501 2926/2956/2947 - 212 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 I/O 口 11 产品线 最多 I/O 口数量 STC32G12K128 系列 60 STC32G8K64 系列 45 STC32F12K60 系列 45 STC32G 系列单片机所有的 I/O 口均有 4 种工作模式:准双向口/弱上拉(标准 8051 输出口模式)、 推挽输出/强上拉、高阻输入(电流既不能流入也不能流出)、开漏输出。可使用软件对 I/O 口的工作 模式进行容易配置。 关于 I/O 的注意事项: 1、 P3.0 和 P3.0 口上电后的状态为弱上拉双向口模式 2、 除 P3.0 和 P3.1 外,其余所有 IO 口上电后的状态均为高阻输入状态,用户在使用 IO 口前必须先设置 IO 口模式 3、 芯片上电时如果不需要使用 USB 进行 ISP 下载,P3.0/P3.1/P3.2 这 3 个 I/O 口不能同 时为低电平,否则会进入 USB 下载模式而无法运行用户代码 4、 芯片上电时,若 P3.0 和 P3.1 同时为低电平,P3.2 口会短时间由高阻输入状态切换到 双向口模式,用以读取 P3.2 口外部状态来判断是否需要进入 USB 下载模式 5、 当使用 P5.4 当作复位脚时,这个端口内部的 4K 上拉电阻会一直打开;但 P5.4 做普通 I/O 口时,基于这个 I/O 口与复位脚共享管脚的特殊考量,端口内部的 4K 上拉电阻依 然会打开大约 6.5 毫秒时间,再自动关闭(当用户的电路设计需要使用 P5.4 口驱动外 部电路时,请务必考虑上电瞬间会有 6.5 毫秒时间的高电平的问题) 11.1 I/O 口相关寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 P0 P0 端口 80H P07 P06 P05 P04 P03 P02 P01 P00 1111,1111 P1 P1 端口 90H P17 P16 P15 P14 P13 P12 P11 P10 1111,1111 P2 P2 端口 A0H P27 P26 P25 P24 P23 P22 P21 P20 1111,1111 P3 P3 端口 B0H P37 P36 P35 P34 P33 P32 P31 P30 1111,1111 P4 P4 端口 C0H P47 P46 P45 P44 P43 P42 P41 P40 1111,1111 P5 P5 端口 C8H - - P55 P54 P53 P52 P51 P50 xx11,1111 P6 P6 端口 E8H P67 P66 P65 P64 P63 P62 P61 P60 1111,1111 P7 P7 端口 F8H P77 P76 P75 P74 P73 P72 P71 P70 1111,1111 P0M0 P0 口配置寄存器 0 93H P07M1 P06M1 P05M1 P04M1 P03M1 P02M1 P01M1 P00M1 0000,0000 P0M1 P0 口配置寄存器 1 94H P07M0 P06M0 P05M0 P04M0 P03M0 P02M0 P01M0 P00M0 1111,1111 P1M0 P1 口配置寄存器 0 91H P17M1 P16M1 P15M1 P14M1 P13M1 P12M1 P11M1 P10M1 0000,0000 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 213 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P1M1 P1 口配置寄存器 1 92H P17M0 P16M0 P15M0 P14M0 P13M0 P12M0 P11M0 P10M0 1111,1111 P2M0 P2 口配置寄存器 0 95H P27M1 P26M1 P25M1 P24M1 P23M1 P22M1 P21M1 P20M1 0000,0000 P2M1 P2 口配置寄存器 1 96H P27M0 P26M0 P25M0 P24M0 P23M0 P22M0 P21M0 P20M0 1111,1111 P3M0 P3 口配置寄存器 0 B1H P37M1 P36M1 P35M1 P34M1 P33M1 P32M1 P31M1 P30M1 0000,0000 P3M1 P3 口配置寄存器 1 B2H P37M0 P36M0 P35M0 P34M0 P33M0 P32M0 P31M0 P30M0 1111,1100 P4M0 P4 口配置寄存器 0 B3H P47M1 P46M1 P45M1 P44M1 P43M1 P42M1 P41M1 P40M1 0000,0000 P4M1 P4 口配置寄存器 1 B4H P47M0 P46M0 P45M0 P44M0 P43M0 P42M0 P41M0 P40M0 1111,1111 P5M0 P5 口配置寄存器 0 C9H - - P55M1 P54M1 P53M1 P52M1 P51M1 P50M1 xx00,0000 P5M1 P5 口配置寄存器 1 CAH - - P55M0 P54M0 P53M0 P52M0 P51M0 P50M0 xx11,1111 P6M0 P6 口配置寄存器 0 CBH P67M1 P66M1 P65M1 P64M1 P63M1 P62M1 P61M1 P60M1 0000,0000 P6M1 P6 口配置寄存器 1 CCH P67M0 P66M0 P65M0 P64M0 P63M0 P62M0 P61M0 P60M0 1111,1111 P7M0 P7 口配置寄存器 0 E1H P77M1 P76M1 P75M1 P74M1 P73M1 P72M1 P71M1 P70M1 0000,0000 P7M1 P7 口配置寄存器 1 E2H P77M0 P76M0 P75M0 P74M0 P73M0 P72M0 P71M0 P70M0 1111,1111 符号 描述 位地址与符号 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 P0PU P0 口上拉电阻控制寄存器 7EFE10H P07PU P06PU P05PU P04PU P03PU P02PU P01PU P00PU 0000,0000 P1PU P1 口上拉电阻控制寄存器 7EFE11H P17PU P16PU P15PU P14PU P13PU P12PU P11PU P10PU 0000,0000 P2PU P2 口上拉电阻控制寄存器 7EFE12H P27PU P26PU P25PU P24PU P23PU P22PU P21PU P20PU 0000,0000 P3PU P3 口上拉电阻控制寄存器 7EFE13H P37PU P36PU P35PU P34PU P33PU P32PU P31PU P30PU 0000,0000 P4PU P4 口上拉电阻控制寄存器 7EFE14H P47PU P46PU P45PU P44PU P43PU P42PU P41PU P40PU 0000,0000 P5PU P5 口上拉电阻控制寄存器 7EFE15H - - P55PU P54PU P53PU P52PU P51PU P50PU xx00,0000 P6PU P6 口上拉电阻控制寄存器 7EFE16H P67PU P66PU P65PU P64PU P63PU P62PU P61PU P60PU 0000,0000 P7PU P7 口上拉电阻控制寄存器 7EFE17H P77PU P76PU P75PU P74PU P73PU P72PU P71PU P70PU 0000,0000 P0NCS P0 口施密特触发控制寄存器 7EFE18H P07NCS P06NCS P05NCS P04NCS P03NCS P02NCS P01NCS P00NCS 0000,0000 P1NCS P1 口施密特触发控制寄存器 7EFE19H P17NCS P16NCS P15NCS P14NCS P13NCS P12NCS P11NCS P10NCS 0000,0000 P2NCS P2 口施密特触发控制寄存器 7EFE1AH P27NCS P26NCS P25NCS P24NCS P23NCS P22NCS P21NCS P20NCS 0000,0000 P3NCS P3 口施密特触发控制寄存器 7EFE1BH P37NCS P36NCS P35NCS P34NCS P33NCS P32NCS P31NCS P30NCS 0000,0000 P4NCS P4 口施密特触发控制寄存器 7EFE1CH P47NCS P46NCS P45NCS P44NCS P43NCS P42NCS P41NCS P40NCS 0000,0000 P5NCS P5 口施密特触发控制寄存器 7EFE1DH P6NCS P6 口施密特触发控制寄存器 7EFE1EH P67NCS P66NCS P65NCS P64NCS P63NCS P62NCS P61NCS P60NCS 0000,0000 P7NCS P7 口施密特触发控制寄存器 7EFE1FH P77NCS P76NCS P75NCS P74NCS P73NCS P72NCS P71NCS P70NCS 0000,0000 - - P55NCS P54NCS P53NCS P52NCS P51NCS P50NCS xx00,0000 P0SR P0 口电平转换速率寄存器 7EFE20H P07SR P06SR P05SR P04SR P03SR P02SR P01SR P00SR 1111,1111 P1SR P1 口电平转换速率寄存器 7EFE21H P17SR P16SR P15SR P14SR P13SR P12SR P11SR P10SR 1111,1111 P2SR P2 口电平转换速率寄存器 7EFE22H P27SR P26SR P25SR P24SR P23SR P22SR P21SR P20SR 1111,1111 P3SR P3 口电平转换速率寄存器 7EFE23H P37SR P36SR P35SR P34SR P33SR P32SR P31SR P30SR 1111,1111 P4SR P4 口电平转换速率寄存器 7EFE24H P47SR P46SR P45SR P44SR P43SR P42SR P41SR P40SR 1111,1111 P5SR P5 口电平转换速率寄存器 7EFE25H - - P55SR P54SR P53SR P52SR P51SR P50SR xx11,1111 P6SR P6 口电平转换速率寄存器 7EFE26H P67SR P66SR P65SR P64SR P63SR P62SR P61SR P60SR 1111,1111 P7SR P7 口电平转换速率寄存器 7EFE27H P77SR P76SR P75SR P74SR P73SR P72SR P71SR P70SR 1111,1111 P0DR P0 口驱动电流控制寄存器 7EFE28H P07DR P06DR P05DR P04DR P03DR P02DR P01DR P00DR 1111,1111 P1DR P1 口驱动电流控制寄存器 7EFE29H P17DR P16DR P15DR P14DR P13DR P12DR P11DR P10DR 1111,1111 P2DR P2 口驱动电流控制寄存器 7EFE2AH P27DR P26DR P25DR P24DR P23DR P22DR P21DR P20DR 1111,1111 P3DR P3 口驱动电流控制寄存器 7EFE2BH P37DR P36DR P35DR P34DR P33DR P32DR P31DR P30DR 1111,1111 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 214 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P4DR P4 口驱动电流控制寄存器 7EFE2CH P47DR P46DR P45DR P44DR P43DR P42DR P41DR P40DR P5DR P5 口驱动电流控制寄存器 7EFE2DH - - P5DR P54DR P53DR P52DR P51DR P50DR xx11,1111 P6DR P6 口驱动电流控制寄存器 7EFE2EH P67DR P66DR P65DR P64DR P63DR P62DR P61DR P60DR 1111,1111 P7DR P7 口驱动电流控制寄存器 7EFE2FH P77DR P76DR P75DR P74DR P73DR P72DR P71DR P70DR 1111,1111 P0IE P0 口输入使能控制寄存器 7EFE30H P07IE P06IE P05IE P04IE P03IE P02IE P11IE P00IE 1111,1111 P1IE P1 口输入使能控制寄存器 7EFE31H P17IE P16IE P15IE P14IE P13IE P12IE P11IE P10IE 1111,1111 P2IE P2 口输入使能控制寄存器 7EFE32H P27IE P26IE P25IE P24IE P23IE P22IE P21IE P20IE 1111,1111 P3IE P3 口输入使能控制寄存器 7EFE33H P37IE P36IE P35IE P34IE P33IE P32IE P31IE P30IE 1111,1111 P4IE P4 口输入使能控制寄存器 7EFE34H P47IE P46IE P45IE P44IE P43IE P42IE P41IE P40IE 1111,1111 P5IE P5 口输入使能控制寄存器 7EFE35H - - P55IE P54IE P53IE P52IE P51IE P50IE xx11,1111 P6IE P6 口输入使能控制寄存器 7EFE36H P67IE P66IE P65IE P64IE P63IE P62IE P61IE P60IE 1111,1111 P7IE P7 口输入使能控制寄存器 7EFE37H P77IE P76IE P75IE P74IE P73IE P72IE P71IE P70IE 1111,1111 P0PD P0 口下拉电阻控制寄存器 7EFE40H P07PD P06PD P05PD P04PD P03PD P02PD P11PD P00PD 0000,0000 P1PD P1 口下拉电阻控制寄存器 7EFE41H P17PD P16PD P15PD P14PD P13PD P12PD P11PD P10PD 0000,0000 P2PD P2 口下拉电阻控制寄存器 7EFE42H P27PD P26PD P25PD P24PD P23PD P22PD P11PD P20PD 0000,0000 P3PD P3 口下拉电阻控制寄存器 7EFE43H P37PD P36PD P35PD P34PD P33PD P32PD P11PD P30PD 0000,0000 P4PD P4 口下拉电阻控制寄存器 7EFE44H P47PD P46PD P45PD P44PD P43PD P42PD P11PD P40PD 0000,0000 P5PD P5 口下拉电阻控制寄存器 7EFE45H - - P55PD P54PD P53PD P52PD P11PD P50PD xx00,0000 P6PD P6 口下拉电阻控制寄存器 7EFE46H P67PD P66PD P65PD P64PD P63PD P62PD P11PD P60PD 0000,0000 P7PD P7 口下拉电阻控制寄存器 7EFE47H P77PD P76PD P75PD P74PD P73PD P72PD P11PD P70PD 0000,0000 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 1111,1111 - 215 - STC32G 系列技术手册 11.1.1 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 端口数据寄存器(Px) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0 80H P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 P1 90H P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 P2 A0H P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P3 B0H P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 P4 C0H P4.7 P4.6 P4.5 P4.4 P4.3 P4.2 P4.1 P4.0 P5 C8H - - P5.5 P5.4 P5.3 P5.2 P5.1 P5.0 P6 E8H P6.7 P6.6 P6.5 P6.4 P6.3 P6.2 P6.1 P6.0 P7 F8H P7.7 P7.6 P7.5 P7.4 P7.3 P7.2 P7.1 P7.0 读写端口状态 写 0:输出低电平到端口缓冲区 写 1:输出高电平到端口缓冲区 读:直接读端口管脚上的电平 11.1.2 端口模式配置寄存器(PxM0,PxM1) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0M0 93H P07M0 P06M0 P05M0 P04M0 P03M0 P02M0 P01M0 P00M0 P0M1 94H P07M1 P06M1 P05M1 P04M1 P03M1 P02M1 P01M1 P00M1 P1M0 91H P17M0 P16M0 P15M0 P14M0 P13M0 P12M0 P11M0 P10M0 P1M1 92H P17M1 P16M1 P15M1 P14M1 P13M1 P12M1 P11M1 P10M1 P2M0 95H P27M0 P26M0 P25M0 P24M0 P23M0 P22M0 P21M0 P20M0 P2M1 96H P27M1 P26M1 P25M1 P24M1 P23M1 P22M1 P21M1 P20M1 P3M0 B1H P37M0 P36M0 P35M0 P34M0 P33M0 P32M0 P31M0 P30M0 P3M1 B2H P37M1 P36M1 P35M1 P34M1 P33M1 P32M1 P31M1 P30M1 P4M0 B3H P47M0 P46M0 P45M0 P44M0 P43M0 P42M0 P41M0 P40M0 P4M1 B4H P47M1 P46M1 P45M1 P44M1 P43M1 P42M1 P41M1 P40M1 P5M0 C9H - - P55M0 P54M0 P53M0 P52M0 P51M0 P50M0 P5M1 CAH - - P55M1 P54M1 P53M1 P52M1 P51M1 P50M1 P6M0 CBH P67M0 P66M0 P65M0 P64M0 P63M0 P62M0 P61M0 P60M0 P6M1 CCH P67M1 P66M1 P65M1 P64M1 P63M1 P62M1 P61M1 P60M1 P7M0 E1H P77M0 P76M0 P75M0 P74M0 P73M0 P72M0 P71M0 P70M0 P7M1 E2H P77M1 P76M1 P75M1 P74M1 P73M1 P72M1 P71M1 P70M1 配置端口的模式 PnM1.x PnM0.x Pn.x 口工作模式 0 0 准双向口 0 1 推挽输出 1 0 高阻输入 1 1 开漏输出 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 216 - STC32G 系列技术手册 11.1.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 端口上拉电阻控制寄存器(PxPU) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0PU 7EFE10H P07PU P06PU P05PU P04PU P03PU P02PU P01PU P00PU P1PU 7EFE11H P17PU P16PU P15PU P14PU P13PU P12PU P11PU P10PU P2PU 7EFE12H P27PU P26PU P25PU P24PU P23PU P22PU P21PU P20PU P3PU 7EFE13H P37PU P36PU P35PU P34PU P33PU P32PU P31PU P30PU P4PU 7EFE14H P47PU P46PU P45PU P44PU P43PU P42PU P41PU P40PU P5PU 7EFE15H - - P55PU P54PU P53PU P52PU P51PU P50PU P6PU 7EFE16H P67PU P66PU P65PU P64PU P63PU P62PU P61PU P60PU P7PU 7EFE17H P77PU P76PU P75PU P74PU P73PU P72PU P71PU P70PU 端口内部4.1K上拉电阻控制位(注:P3.0和P3.1口上的上拉电阻可能会略小一些) 0:禁止端口内部的 4.1K 上拉电阻 1:使能端口内部的 4.1K 上拉电阻 11.1.4 端口施密特触发控制寄存器(PxNCS) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0NCS 7EFE18H P07NCS P06NCS P05NCS P04NCS P03NCS P02NCS P01NCS P00NCS P1NCS 7EFE19H P17NCS P16NCS P15NCS P14NCS P13NCS P12NCS P11NCS P10NCS P2NCS 7EFE1AH P27NCS P26NCS P25NCS P24NCS P23NCS P22NCS P21NCS P20NCS P3NCS 7EFE1BH P37NCS P36NCS P35NCS P34NCS P33NCS P32NCS P31NCS P30NCS P4NCS 7EFE1CH P47NCS P46NCS P45NCS P44NCS P43NCS P42NCS P41NCS P40NCS P5NCS 7EFE1DH - - P55NCS P54NCS P53NCS P52NCS P51NCS P50NCS P6NCS 7EFE1EH P67NCS P66NCS P65NCS P64NCS P63NCS P62NCS P61NCS P60NCS P7NCS 7EFE1FH P77NCS P76NCS P75NCS P74NCS P73NCS P72NCS P71NCS P70NCS 端口施密特触发控制位 0:使能端口的施密特触发功能。(上电复位后默认使能施密特触发) 1:禁止端口的施密特触发功能。 11.1.5 端口电平转换速度控制寄存器(PxSR) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0SR 7EFE20H P07SR P06SR P05SR P04SR P03SR P02SR P01SR P00SR P1SR 7EFE21H P17SR P16SR P15SR P14SR P13SR P12SR P11SR P10SR P2SR 7EFE22H P27SR P26SR P25SR P24SR P23SR P22SR P21SR P20SR P3SR 7EFE23H P37SR P36SR P35SR P34SR P33SR P32SR P31SR P30SR P4SR 7EFE24H P47SR P46SR P45SR P44SR P43SR P42SR P41SR P40SR P5SR 7EFE25H - - P55SR P54SR P53SR P52SR P51SR P50SR P6SR 7EFE26H P57SR P66SR P65SR P64SR P63SR P62SR P61SR P60SR P7SR 7EFE27H P77SR P76SR P75SR P74SR P73SR P72SR P71SR P70SR 控制端口电平转换的速度 0:电平转换速度快,相应的上下冲会比较大 1:电平转换速度慢,相应的上下冲比较小 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 217 - STC32G 系列技术手册 11.1.6 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 端口驱动电流控制寄存器(PxDR) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0DR 7EFE28H P07DR P06DR P05DR P04DR P03DR P02DR P01DR P00DR P1DR 7EFE29H P17DR P16DR P15DR P14DR P13DR P12DR P11DR P10DR P2DR 7EFE2AH P27DR P26DR P25DR P24DR P23DR P22DR P21DR P20DR P3DR 7EFE2BH P37DR P36DR P35DR P34DR P33DR P32DR P31DR P30DR P4DR 7EFE2CH P47DR P46DR P45DR P44DR P43DR P42DR P41DR P40DR P5DR 7EFE2DH - - P55DR P54DR P53DR P52DR P51DR P50DR P6DR 7EFE2EH P67DR P66DR P65DR P64DR P63DR P62DR P61DR P60DR P7DR 7EFE2FH P77DR P76DR P75DR P74DR P73DR P72DR P71DR P70DR 控制端口的驱动能力 0:一般驱动能力 1:增强驱动能力 11.1.7 端口数字信号输入使能控制寄存器(PxIE) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0IE 7EFE30H P07IE P06IE P05IE P04IE P03IE P02IE P11IE P00IE P1IE 7EFE31H P17IE P16IE P15IE P14IE P13IE P12IE P11IE P10IE P2IE 7EFE32H P27IE P26IE P25IE P24IE P23IE P22IE P21IE P20IE P3IE 7EFE33H P37IE P36IE P35IE P34IE P33IE P32IE P31IE P30IE P4IE 7EFE34H P47IE P46IE P45IE P44IE P43IE P42IE P41IE P40IE P5IE 7EFE35H - - P55IE P54IE P53IE P52IE P51IE P50IE P6IE 7EFE36H P67IE P66IE P65IE P64IE P63IE P62IE P61IE P60IE P7IE 7EFE37H P77IE P76IE P75IE P74IE P73IE P72IE P71IE P70IE 数字信号输入使能控制 0:禁止数字信号输入。若 I/O 被当作比较器输入口、ADC 输入口或者触摸按键输入口等模拟口时, 进入时钟停振模式前,必须设置为 0,否则会有额外的耗电。 1:使能数字信号输入。若 I/O 被当作数字口时,必须设置为 1,否 MCU 无法读取外部端口的电平。 11.1.8 端口下拉电阻控制寄存器(PxPD) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0PD 7EFE40H P07PD P06PD P05PD P04PD P03PD P02PD P01PD P00PD P1PD 7EFE41H P17PD P16PD P15PD P14PD P13PD P12PD P11PD P10PD P2PD 7EFE42H P27PD P26PD P25PD P24PD P23PD P22PD P21PD P20PD P3PD 7EFE43H P37PD P36PD P35PD P34PD P33PD P32PD P31PD P30PD P4PD 7EFE44H P47PD P46PD P45PD P44PD P43PD P42PD P41PD P40PD P5PD 7EFE45H - - P55PD P54PD P53PD P52PD P51PD P50PD P6PD 7EFE46H P67PD P66PD P65PD P64PD P63PD P62PD P61PD P60PD P7PD 7EFE47H P77PD P76PD P75PD P74PD P73PD P72PD P71PD P70PD 端口内部10K下拉电阻控制位 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 218 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 0:禁止端口内部的下拉电阻 1:使能端口内部的下拉电阻 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 219 - STC32G 系列技术手册 11.2 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 配置 I/O 口 每个 I/O 的配置都需要使用两个寄存器进行设置。 以 P0 口为例,配置 P0 口需要使用 P0M0 和 P0M1 两个寄存器进行配置,如下图所示: 即 P0M0 的第 0 位和 P0M1 的第 0 位组合起来配置 P0.0 口的模式 即 P0M0 的第 1 位和 P0M1 的第 1 位组合起来配置 P0.1 口的模式 其他所有 I/O 的配置都与此类似。 PnM0 与 PnM1 的组合方式如下表所示 PnM1 PnM0 0 0 I/O 口工作模式 准双向口(传统8051端口模式,弱上拉) 灌电流可达20mA,拉电流为270~150μA(存在制造误差) 0 1 推挽输出(强上拉输出,可达20mA,要加限流电阻) 1 0 高阻输入(电流既不能流入也不能流出) 开漏输出(Open-Drain),内部上拉电阻断开 1 1 开漏模式既可读外部状态也可对外输出(高电平或低电 平)。如要正确读外部状态或需要对外输出高电平,需外 加上拉电阻,否则读不到外部状态,也对外输不出高电平。 注:n = 0,1,2,3,4,5,6,7 注意: 虽然每个 I/O 口在弱上拉(准双向口)/强推挽输出/开漏模式时都能承受 20mA 的灌电流(还是要加限 流电阻,如 1K、560Ω、472Ω 等),在强推挽输出时能输出 20mA 的拉电流(也要加限流电阻),但整个芯 片的工作电流推荐不要超过 90mA,即从 VCC 流入的电流建议不要超过 90mA,从 GND 流出电流建议不要 超过 90mA,整体流入/流出电流建议都不要超过 90mA。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 220 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 11.3 I/O 的结构图 11.3.1 准双向口(弱上拉) 技术支持: 19864585985 选型顾问: 13922805190 准双向口(弱上拉)输出类型可用作输出和输入功能而不需重新配置端口输出状态。这是因为当端 口输出为 1 时驱动能力很弱,允许外部装置将其拉低。当引脚输出为低时,它的驱动能力很强,可吸收 相当大的电流。准双向口有 3 个上拉晶体管适应不同的需要。 在 3 个上拉晶体管中,有 1 个上拉晶体管称为“弱上拉”,当端口寄存器为 1 且引脚本身也为 1 时打开。此上拉提供基本驱动电流使准双向口输出为 1。如果一个引脚输出为 1 而由外部装置下拉到低 时,弱上拉关闭而“极弱上拉”维持开状态,为了把这个引脚强拉为低,外部装置必须有足够的灌电流 能力使引脚上的电压降到门槛电压以下。对于 5V 单片机, “弱上拉”晶体管的电流约 250uA;对于 3.3V 单片机,“弱上拉”晶体管的电流约 150uA。 第 2 个上拉晶体管,称为“极弱上拉”,当端口锁存为 1 时打开。当引脚悬空时,这个极弱的上拉 源产生很弱的上拉电流将引脚上拉为高电平。对于 5V 单片机,“极弱上拉”晶体管的电流约 18uA; 对于 3.3V 单片机,“极弱上拉”晶体管的电流约 5uA。 第 3 个上拉晶体管称为“强上拉”。当端口锁存器由 0 到 1 跳变时,这个上拉用来加快准双向口由 逻辑 0 到逻辑 1 转换。当发生这种情况时,强上拉打开约 2 个时钟以使引脚能够迅速地上拉到高电平。 准双向口(弱上拉)带有一个施密特触发输入以及一个干扰抑制电路。准双向口(弱上拉)读外部 状态前,要先锁存为 ‘1’,才可读到外部正确的状态. 准双向口(弱上拉)输出如下图所示: VCC 2个CPU 时钟延时 强 VCC VCC 极弱 弱 端口 引脚 端口锁存数据 输入数据 干扰抑制 11.3.2 推挽输出 强推挽输出配置的下拉结构与开漏输出以及准双向口的下拉结构相同,但当锁存器为 1 时提供持续 的强上拉。推挽模式一般用于需要更大驱动电流的情况。 强推挽引脚配置如下图所示: VCC 强 端口 引脚 端口锁存数据 输入数据 干扰抑制 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 221 - STC32G 系列技术手册 11.3.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 高阻输入 电流既不能流入也不能流出 输入口带有一个施密特触发输入以及一个干扰抑制电路 高阻输入引脚配置如下图所示: 端口 引脚 输入数据 干扰抑制 11.3.4 开漏输出 开漏模式既可读外部状态也可对外输出(高电平或低电平)。如要正确读外部状态或需要对外输出 高电平,需外加上拉电阻。 当端口锁存器为 0 时,开漏输出关闭所有上拉晶体管。当作为一个逻辑输出高电平时,这种配置方 式必须有外部上拉,一般通过电阻外接到 VCC。如果外部有上拉电阻,开漏的 I/O 口还可读外部状态, 即此时被配置为开漏模式的 I/O 口还可作为输入 I/O 口。这种方式的下拉与准双向口相同。 开漏端口带有一个施密特触发输入以及一个干扰抑制电路。 输出端口配置如下图所示: 端口 引脚 端口锁存数据 输入数据 干扰抑制 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 222 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 新增 4.1K 上拉电阻和 10K 下拉电阻 11.3.5 STC32G 系列所有的 I/O 口内部均可使能一个大约 4.1K 的上拉电阻(由于制造误差,上拉电阻的 范围可能为 3K~5K)和一个大约 10K 的下拉电阻(由于制造误差,下拉电阻的范围可能为 8K~12K) VCC VCC VCC VCC 新增 4.1K 上拉电阻 2个CPU 时钟延时 强 极弱 弱 端口 引脚 端口锁存数据 PxPU控制位 新增 10K 下拉电阻 PxPD控制位 输入数据 干扰抑制 端口上拉电阻控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0PU 7EFE10H P07PU P06PU P05PU P04PU P03PU P02PU P01PU P00PU P1PU 7EFE11H P17PU P16PU P15PU P14PU P13PU P12PU P11PU P10PU P2PU 7EFE12H P27PU P26PU P25PU P24PU P23PU P22PU P21PU P20PU P3PU 7EFE13H P37PU P36PU P35PU P34PU P33PU P32PU P31PU P30PU P4PU 7EFE14H P47PU P46PU P45PU P44PU P43PU P42PU P41PU P40PU P5PU 7EFE15H - - P55PU P54PU P53PU P52PU P51PU P50PU P6PU 7EFE16H P67PU P66PU P65PU P64PU P63PU P62PU P61PU P60PU P7PU 7EFE17H P77PU P76PU P75PU P74PU P73PU P72PU P71PU P70PU 端口内部4.1K上拉电阻控制位(注:P3.0和P3.1口上的上拉电阻可能会略小一些) 0:禁止端口内部的 4.1K 上拉电阻 1:使能端口内部的 4.1K 上拉电阻 端口下拉电阻控制寄存器(PxPD) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0PD 7EFE40H P07PD P06PD P05PD P04PD P03PD P02PD P01PD P00PD P1PD 7EFE41H P17PD P16PD P15PD P14PD P13PD P12PD P11PD P10PD P2PD 7EFE42H P27PD P26PD P25PD P24PD P23PD P22PD P21PD P20PD P3PD 7EFE43H P37PD P36PD P35PD P34PD P33PD P32PD P31PD P30PD P4PD 7EFE44H P47PD P46PD P45PD P44PD P43PD P42PD P41PD P40PD P5PD 7EFE45H - - P55PD P54PD P53PD P52PD P51PD P50PD P6PD 7EFE46H P67PD P66PD P65PD P64PD P63PD P62PD P61PD P60PD 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 223 - STC32G 系列技术手册 P7PD 7EFE47H 官方网站: www.STCMCUDATA.com P77PD P76PD P75PD 技术支持: 19864585985 P74PD P73PD P72PD 选型顾问: 13922805190 P71PD P70PD 端口内部10K下拉电阻控制位 0:禁止端口内部的下拉电阻 1:使能端口内部的下拉电阻 11.3.6 如何设置 I/O 口对外输出速度 当用户需要 I/O 口对外输出较快的频率时,可通过加大 I/O 口驱动电流以及增加 I/O 口电平转换速 度以达到提高 I/O 口对外输出速度 设置 PxSR 寄存器,可用于控制 I/O 口电平转换速度,设置为 0 时相应的 I/O 口为快速翻转,设置 为 1 时为慢速翻转。 设置 PxDR 寄存器,可用于控制 I/O 口驱动电流大小,设置为 1 时 I/O 输出为一般驱动电流,设置 为 0 时为强驱动电流 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 224 - STC32G 系列技术手册 11.3.7 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 如何设置 I/O 口电流驱动能力 若需要改变 I/O 口的电流驱动能力,可通过设置 PxDR 寄存器来实现 设置 PxDR 寄存器,可用于控制 I/O 口驱动电流大小,设置为 1 时 I/O 输出为一般驱动电流,设置 为 0 时为强驱动电流 11.3.8 如何降低 I/O 口对外辐射 由于设置 PxSR 寄存器,可用于控制 I/O 口电平转换速度,设置 PxDR 寄存器,可用于控制 I/O 口 驱动电流大小 当需要降低 I/O 口对外的辐射时,需要将 PxSR 寄存器设置为 1 以降低 I/O 口电平转换速度,同时 需要将 PxDR 寄存器设为 1 以降低 I/O 驱动电流,最终达到降低 I/O 口对外辐射 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 225 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 11.4 范例程序 11.4.1 端口模式设置(适用于所有的 I/O) 选型顾问: 13922805190 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void main() { EAXFR = 1; WTST = 0x00; P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0xff; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0xff; P3M0 = 0xff; P3M1 = 0xff; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 //设置 P0.0~P0.7 为双向口模式 //设置 P1.0~P1.7 为推挽输出模式 //设置 P2.0~P2.7 为高阻输入模式 //设置 P3.0~P3.7 为开漏模式 while (1); } 11.4.2 双向口读写操作(适用于所有的 I/O) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 226 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P5M0 = 0x00; P5M1 = 0x00; P0M0 = 0x00; P0M1 = 0x00; //设置 P0.0~P0.7 为双向口模式 P00 = 1; P00 = 0; //P0.0 口输出高电平 //P0.0 口输出低电平 P00 = 1; _nop_(); _nop_(); CY = P00; //读取端口前先使能内部弱上拉电阻 //等待两个时钟 // //读取端口状态 while (1); } 11.5 一种典型三极管控制电路 如果上拉控制,建议加上拉电阻 R1(3.3K~10K),如果不加上拉电阻 R1(3.3K~10K),建议 R2 的值在 15K 以上,或用强推挽输出。 11.6 典型发光二极管控制电路 11.7 混合电压供电系统 3V/5V 器件 I/O 口互连 STC 系列宽电压单片机工作在 5V 时,如需要直接连接 3.3V 器件时,为防止 3.3V 器件承受不了 5V,可 将相应的单片机 I/O 口先串一个 330Ω 的限流电阻到 3.3V 器件 I/O 口,程序初始化时将单片机的 I/O 口设 置成开漏配置,断开内部上拉电阻,相应的 3.3V 器件 I/O 口外部加 10K 上拉电阻到 3.3V 器件的 Vcc,这样 高电平是 3.3V,低电平是 0V,输入输出一切正常。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 227 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 STC 宽电压单片机工作在 3V 时,如需要直接连接 5V 器件时,为防止 3V 单片机承受不了 5V,如果相应 的 I/O 口是输入,可在该 I/O 口上串接一个隔离二极管,隔离高压部分。外部信号电压高于单片机工作电压 时截止,I/O 口因内内部上拉到高电平,所以读 I/O 口状态是高电平;外部信号电压为低时导通,I/O 口被 钳位在 0.7V,小于 0.8V 时单片机读 I/O 口状态是低电平。 STC 宽电压单片机工作在 3V 时,如需要直接连接 5V 器件时,为防止 3V 单片机承受不了 5V,如果相应 的 I/O 口是输出,可用一个 NPN 三极管隔离,电路如下: 11.8 如何让 I/O 口上电复位时为低电平 普通 8051 单片机上电复位时普通 I/O 口为弱上拉(准双向口)高电平输出,而很多实际应用要求上电时 某些 I/O 口为低电平输出,否则所控制的系统(如马达)就会误动作,现 STC 的单片机由于既有弱上拉输出又 有强推挽输出,就可以很轻松的解决此问题。 现可在 STC 的单片机 I/O 口上加一个下拉电阻(10K 左右),这样上电复位时,除了下载口 P3.0 和 P3.1 为弱上拉(准双向口)外,其他 I/O 口均为高阻输入模式,而外部有下拉电阻,所以该 I/O 口上电复位时外部 为低电平。如果要将此 I/O 口驱动为高电平,可将此 I/O 口设置为强推挽输出,而强推挽输出时,I/O 口驱 动电流可达 20mA,故肯定可以将该口驱动为高电平输出。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 228 - STC32G 系列技术手册 11.9 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 利用 74HC595 驱动 8 个数码管(串行扩展,3 根线)的线路图 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 229 - STC32G 系列技术手册 12 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 中断系统 中断系统是为使 CPU 具有对外界紧急事件的实时处理能力而设置的。 当中央处理机 CPU 正在处理某件事的时候外界发生了紧急事件请求,要求 CPU 暂停当前的工作, 转而去处理这个紧急事件,处理完以后,再回到原来被中断的地方,继续原来的工作,这样的过程称为 中断。实现这种功能的部件称为中断系统,请示 CPU 中断的请求源称为中断源。微型机的中断系统一 般允许多个中断源,当几个中断源同时向 CPU 请求中断,要求为它服务的时候,这就存在 CPU 优先响 应哪一个中断源请求的问题。通常根据中断源的轻重缓急排队,优先处理最紧急事件的中断请求源,即 规定每一个中断源有一个优先级别。CPU 总是先响应优先级别最高的中断请求。 当 CPU 正在处理一个中断源请求的时候(执行相应的中断服务程序),发生了另外一个优先级比 它还高的中断源请求。如果 CPU 能够暂停对原来中断源的服务程序,转而去处理优先级更高的中断请 求源,处理完以后,再回到原低级中断服务程序,这样的过程称为中断嵌套。这样的中断系统称为多级 中断系统,没有中断嵌套功能的中断系统称为单级中断系统。 用户可以用关总中断允许位(EA/IE.7)或相应中断的允许位屏蔽相应的中断请求,也可以用打开 相应的中断允许位来使 CPU 响应相应的中断申请,每一个中断源可以用软件独立地控制为开中断或关 中断状态,部分中断的优先级别均可用软件设置。高优先级的中断请求可以打断低优先级的中断,反之, 低优先级的中断请求不可以打断高优先级的中断。当两个相同优先级的中断同时产生时,将由查询次序 来决定系统先响应哪个中断。 12.1 STC32G 系列中断源 中断源 STC32G12K128系列 STC32G8K64系列 STC32F12K60系列 外部中断 0 中断(INT0) √ √ √ 定时器 0 中断(Timer0) √ √ √ 外部中断 1 中断(INT1) √ √ √ 定时器 1 中断(Timer1) √ √ √ 串口 1 中断(UART1) √ √ √ 模数转换中断(ADC) √ √ √ 低压检测中断(LVD) √ √ √ 串口 2 中断(UART2) √ √ √ 串行外设接口中断(SPI) √ √ √ 外部中断 2 中断(INT2) √ √ √ 外部中断 3 中断(INT3) √ √ √ 定时器 2 中断(Timer2) √ √ √ 外部中断 4 中断(INT4) √ √ √ 串口 3 中断(UART3) √ √ √ 串口 4 中断(UART4) √ √ √ 定时器 3 中断(Timer3) √ √ √ 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 230 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 定时器 4 中断(Timer4) √ √ √ 比较器中断(CMP) √ √ √ I2C 总线中断 √ √ √ USB 中断 √ PWMA √ √ √ PWMB √ √ √ CAN 中断 √ √ √ CAN2 中断 √ √ √ LIN 中断 √ √ √ RTC 中断 √ √ √ P0 口中断 √ √ √ P1 口中断 √ √ √ P2 口中断 √ √ √ P3 口中断 √ √ √ P4 口中断 √ √ √ P5 口中断 √ √ √ P6 口中断 √ P7 口中断 √ M2M_DMA 中断 √ √ √ ADC_DMA 中断 √ √ √ SPI_DMA 中断 √ √ √ 串口 1 发送 DMA 中断 √ √ √ 串口 1 接收 DMA 中断 √ √ √ 串口 2 发送 DMA 中断 √ √ √ 串口 2 接收 DMA 中断 √ √ √ 串口 3 发送 DMA 中断 √ √ √ 串口 3 接收 DMA 中断 √ √ √ 串口 4 发送 DMA 中断 √ √ √ 串口 4 接收 DMA 中断 √ √ √ LCM_DMA 中断 √ √ √ LCM 中断 √ √ √ I2C 发送 DMA 中断 √ √ √ I2C 接收 DMA 中断 √ √ √ √ I2S 中断 √ I2S 发送 DMA 中断 √ I2S 接收 DMA 中断 √ 深圳国芯人工智能有限公司 选型顾问: 13922805190 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 231 - STC32G 系列技术手册 12.2 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 STC32G 中断结构图 中断请求 中断允许控制 中断优先级控制 最低优先级 较低优先级 较高优先级 最高优先级 TCON.0/IT0=0 EX0 INT0 EA PX0/PX0H IE0 0 1 2 3 TCON.0/IT0=1 ET0 Timer0 EA PT0/PT0H TF0 0 1 2 3 TCON.2/IT1=0 EX1 INT1 EA PX1/PX1H IE1 0 1 2 3 TCON.2/IT1=1 Timer1 UART1 ET1 EA PT1/PT1H 0 ES EA PS/PSH 0 TF1 RI TI EADC ADC ADC_Flag LVD LVDF EA ELVD S2RI UART2 ES2 S2TI SPI EA EA ESPI INT3 INT3IF Timer2 EA EX3 EA ET2 EA EX4 EA ES3 EA T2IF INT4 S3RI S3TI S4RI S4TI T3IF Timer4 T4IF ES4 EA ET3 EA ET4 EA PIE EI2CI I2CIF PWMB I2CIF CAN I2CIF CAN2 I2CIF LIN I2CIF RTC I2CIF EI2CI EI2CI EI2CI EI2CI EI2CI P0INTE EA PI2C/PI2CH EA PI2C/PI2CH EA PI2C/PI2CH EA PI2C/PI2CH EA PI2C/PI2CH EA EA PI2C/PI2CH PINIPL[0]/PINIPH[0] ... ... EA PINIPL[7]/PINIPH[7] EA M2MIP[1:0] ... ... EA I2SRIP[1:0] I2SRIF LCMIFIE LCM LCMIF I2S I2S事件 使能I2S事件中断 深圳国芯人工智能有限公司 PUSB/PUSBH ... I2SRIE I2SR_DMA中断 0 EA LCMIFIP[1:0] EA 国内分销商电话: 0513-5501 2928/2929/2966 PI2S/PI2SH 1 1 2 2 2 2 3 3 3 3 3 3 1 1 1 2 2 2 3 3 3 0 0 0 M2MIF ... ... PS3/PS3H PI2C/PI2CH EA 1 2 0 0 优先级固定为最低优先级 1 2 0 0 优先级固定为最低优先级 1 0 EA P7INTF M2MIE M2M_DMA中断 0 PX4/PX4H PS4/PS4H ... P7INTE P7中断 0 0 P0INTF ... ... 优先级固定为最低优先级 0 PCMP/PCMPH USB事件 PWMA P0中断 优先级固定为最低优先级 I2CIF EUSB USB 优先级固定为最低优先级 0 EA CMPIF EI2CI NIE I2C PSPI/PSPIH INT4IF Timer3 CMP PS2/PS2H EA EX2 INT2IF UART4 PLVD/PLVDH SPIF INT2 UART3 PADC/PADCH 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 传真: 0513-5501 2926/2956/2947 - 232 - STC32G 系列技术手册 12.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 STC32G 系列中断列表 (表 1) 中断源 中断向量 次序 优先级设置 优先级 中断请求位 中断允许位 INT0 FF0003H 0 PX0PX0H 0/1/2/3 IE0 EX0 Timer0 FF000BH 1 PT0,PT0H 0/1/2/3 TF0 ET0 INT1 FF0013H 2 PX1,PX1H 0/1/2/3 IE1 EX1 Timer1 FF001BH 3 PT1,PT1H 0/1/2/3 TF1 ET1 UART1 FF0023H 4 PS,PSH 0/1/2/3 RI || TI ES ADC FF002BH 5 PADC,PADCH 0/1/2/3 ADC_FLAG EADC LVD FF0033H 6 PLVD,PLVDH 0/1/2/3 LVDF ELVD UART2 FF0043H 8 PS2,PS2H 0/1/2/3 S2RI || S2TI ES2 SPI FF004BH 9 PSPI,PSPIH 0/1/2/3 SPIF ESPI INT2 FF0053H 10 0 INT2IF EX2 INT3 FF005BH 11 0 INT3IF EX3 Timer2 FF0063H 12 0 T2IF ET2 INT4 FF0083H 16 PX4,PX4H 0/1/2/3 INT4IF EX4 UART3 FF008BH 17 PS3,PS3H 0/1/2/3 S3RI || S3TI ES3 UART4 FF0093H 18 PS4,PS4H 0/1/2/3 S4RI || S4TI ES4 Timer3 FF009BH 19 0 T3IF ET3 Timer4 FF00A3H 20 0 T4IF ET4 CMP FF00ABH 21 0/1/2/3 CMPIF PIE|NIE MSIF EMSI STAIF ESTAI RXIF ERXI TXIF ETXI STOIF ESTOI I2C FF00C3H 24 PCMP,PCMPH PI2C,PI2CH 0/1/2/3 USB FF00CBH 25 PUSB,PUSBH 0/1/2/3 USB Events EUSB PWMA FF00D3H 26 PPWMA,PPWMAH 0/1/2/3 PWMA_SR PWMA_IER PWMB FF00DBH 27 PPWMB,PPWMBH 0/1/2/3 PWMB_SR PWMB_IER 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 233 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 (表 2) 中断源 CANBUS CAN2BUS LINBUS RTC 中断向量 FF00E3H FF00EBH FF00F3H FF0123H 深圳国芯人工智能有限公司 次序 28 29 30 36 优先级设置 PCANL,PCANH PCAN2L,PCAN2H PLINL,PLINH PRTC,PRTCH 优先级 0/1/2/3 0/1/2/3 中断请求位 中断允许位 ALI ALIM EWI EWIM EPI EPIM RI RIM TI TIM BEI BEIM DOI DOIM ALI ALIM EWI EWIM EPI EPIM RI RIM TI TIM BEI BEIM DOI DOIM ABORT ABORTE ERR ERRE RDY RDYE LID LIDE ALAIF EALAI DAYIF EDAYI HOURIF EHOURI MINIF EMINI SECIF ESECI SEC2IF ESEC2I SEC8IF ESEC8I SEC32IF ESEC32I 0/1/2/3 0/1/2/3 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 234 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 (表 3) 中断源 中断向量 次序 优先级设置 优先级 中断请求位 中断允许位 P0 中断 FF012BH 37 PINIPL[0], PINIPH[0] 0/1/2/3 P0INTF P0INTE P1 中断 FF0133H 38 PINIPL[1], PINIPH[1] 0/1/2/3 P1INTF P1INTE P2 中断 FF013BH 39 PINIPL[2], PINIPH[2] 0/1/2/3 P2INTF P2INTE P3 中断 FF0143H 40 PINIPL[3], PINIPH[3] 0/1/2/3 P3INTF P3INTE P4 中断 FF014BH 41 PINIPL[4], PINIPH[4] 0/1/2/3 P4INTF P4INTE P5 中断 FF0153H 42 PINIPL[5], PINIPH[5] 0/1/2/3 P5INTF P5INTE P6 中断 FF015BH 43 PINIPL[6], PINIPH[6] 0/1/2/3 P6INTF P6INTE P7 中断 FF0163H 44 PINIPL[7], PINIPH[7] 0/1/2/3 P7INTF P7INTE DMA_M2M 中断 FF017BH 47 M2MIP[1:0] 0/1/2/3 M2MIF M2MIE DMA_ADC 中断 FF0183H 48 ADCIP[1:0] 0/1/2/3 ADCIF ADCIE DMA_SPI 中断 FF018BH 49 SPIIP[1:0] 0/1/2/3 SPIIF SPIIE DMA_UR1T 中断 FF0193H 50 UR1TIP[1:0] 0/1/2/3 UR1TIF UR1TIE DMA_UR1R 中断 FF019BH 51 UR1RIP[1:0] 0/1/2/3 UR1RIF UR1RIE DMA_UR2T 中断 FF01A3H 52 UR2TIP[1:0] 0/1/2/3 UR2TIF UR2TIE DMA_UR2R 中断 FF01ABH 53 UR2RIP[1:0] 0/1/2/3 UR2RIF UR2RIE DMA_UR3T 中断 FF01B3H 54 UR3TIP[1:0] 0/1/2/3 UR3TIF UR3TIE DMA_UR3R 中断 FF01BBH 55 UR3RIP[1:0] 0/1/2/3 UR3RIF UR3RIE DMA_UR4T 中断 FF01C3H 56 UR4TIP[1:0] 0/1/2/3 UR4TIF UR4TIE DMA_UR4R 中断 FF01CBH 57 UR4RIP[1:0] 0/1/2/3 UR4RIF UR3RIE DMA_LCM 中断 FF01D3H 58 LCMIP[1:0] 0/1/2/3 LCMIF LCMIE LCM 中断 FF01DBH 59 LCMIFIP[1:0] 0/1/2/3 LCMIFIF LCMIFIE DMA_I2CT 中断 FF01E3H 60 I2CTIP[1:0] 0/1/2/3 I2CTIF I2CTIE DMA_I2CR 中断 FF01EBH 61 I2CRIP[1:0] 0/1/2/3 I2CRIF I2CRIE 0/1/2/3 TXE TXEIE 0/1/2/3 RXNE RXNEIE I2S中断 FF01F3H 62 PI2S,PI2SH FRE 0/1/2/3 OVR ERRIE UDR DMA_I2ST 中断 FF01FBH 63 I2STIP[1:0] 0/1/2/3 I2STIF I2STIE DMA_I2SR 中断 FF0203H 64 I2SRIP[1:0] 0/1/2/3 I2SRIF I2SRIE 在 C 语言中声明中断服务程序 void INT0_Routine(void) interrupt 0; void TM0_Rountine(void) interrupt 1; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 235 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com void INT1_Routine(void) interrupt 2; void TM1_Rountine(void) interrupt 3; void UART1_Routine(void) interrupt 4; void ADC_Routine(void) interrupt 5; void LVD_Routine(void) interrupt 6; void UART2_Routine(void) interrupt 8; void SPI_Routine(void) interrupt 9; void INT2_Routine(void) interrupt 10; void INT3_Routine(void) interrupt 11; void TM2_Routine(void) interrupt 12; void INT4_Routine(void) interrupt 16; void UART3_Routine(void) interrupt 17; void UART4_Routine(void) interrupt 18; void TM3_Routine(void) interrupt 19; void TM4_Routine(void) interrupt 20; void CMP_Routine(void) interrupt 21; void I2C_Routine(void) interrupt 24; void USB_Routine(void) interrupt 25; void PWMA_Routine(void) interrupt 26; void PWMB_Routine(void) interrupt 27; void CAN_Routine(void) interrupt 28; void CAN2_Routine(void) interrupt 29; void LIN_Routine(void) interrupt 30; 技术支持: 19864585985 选型顾问: 13922805190 中断号超过31的C语言中断服务程序不能直接用interrupt声明,请参考“开发环境的 建立与ISP下载”章节中的“关于中断号大于31在Keil中编译出错的处理”小节的处 理方法。汇编语言不受影响 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 236 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 中断相关寄存器 12.4 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 IE 中断允许寄存器 A8H EA ELVD EADC ES ET1 EX1 ET0 EX0 0000,0000 IE2 中断允许寄存器 2 AFH EUSB ET4 ET3 ES4 ES3 ET2 ESPI ES2 0000,0000 IP 中断优先级控制寄存器 B8H - PLVD PADC PS PT1 PX1 PT0 PX0 x000,0000 IPH 高中断优先级控制寄存器 B7H - PLVDH PADCH PSH PT1H PX1H PT0H PX0H x000,0000 IP2 中断优先级控制寄存器 2 B5H PUSB PI2C PCMP PX4 PPWMB PPWMA PSPI PS2 0000,0000 高中断优先级控制寄存器 2 B6H PUSBH PI2CH PCMPH PX4H PPWMBH PPWMAH PSPIH PS2H 0000,0000 中断优先级控制寄存器 3 DFH - - - - PI2S PRTC PS4 PS3 xxxx,0000 IP3H 高中断优先级控制寄存器 3 EEH - - - - PI2SH PRTCH PS4H PS3H xxxx,0000 PCON 电源控制寄存器 87H SMOD SMOD0 LVDF POF GF1 GF0 PD IDL 0011,0000 TCON 定时器控制寄存器 88H TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 0000,0000 INTCLKO 中断与时钟输出控制寄存器 8FH - EX4 EX3 EX2 - T2CLKO T1CLKO AUXINTIF 扩展外部中断标志寄存器 EFH - INT4IF INT3IF INT2IF - T4IF T3IF T2IF x000,x000 SCON 串口 1 控制寄存器 98H SM0/FE SM1 SM2 REN TB8 RB8 TI RI 0000,0000 S2CON 串口 2 控制寄存器 9AH S2SM0/FE S2SM1 S2SM2 S2REN S2TB8 S2RB8 S2TI S2RI 0000,0000 S3CON 串口 3 控制寄存器 ACH S3SM0 S3ST3 S3SM2 S3REN S3TB8 S3RB8 S3TI S3RI 0000,0000 S4CON 串口 4 控制寄存器 FDH S4SM0 S4ST4 S4SM2 S4REN S4TB8 S4RB8 S4TI S4RI 0000,0000 IP2H IP3 ADC_CONTR ADC 控制寄存器 BCH ADC_POWER ADC_START ADC_FLAG ADC_EPWMT T0CLKO x000,x000 ADC_CHS[3:0] 0000,0000 SPSTAT SPI 状态寄存器 CDH SPIF WCOL - - - - CMPCR1 比较器控制寄存器 1 E6H CMPEN CMPIF PIE NIE - - CANICR CANBUS 中断控制寄存器 F1H PCAN2H CAN2IF CAN2IE PCAN2L PCANH CANIF CANIE PCANL 0000,0000 LINICR LINBUS 中断控制寄存器 F9H PLINH LINIF LINIE PLINL 0000,0000 - - 00xx,xxxx CMPOE CMPRES 0000,xx00 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 LCMIFCFG LCM 接口配置寄存器 7EFE50H LCMIFIE LCMIFSTA LCM 接口状态寄存器 7EFE53H - - - - - RTCIEN RTC 中断使能寄存器 7EFE62H EALAI EDAYI EHOURI EMINI RTCIF RTC 中断请求寄存器 7EFE63H ALAIF DAYIF HOURIF MINIF I2CMSCR I C 主机控制寄存器 7EFE81H EMSI - - - I2CMSST I C 主机状态寄存器 7EFE82H MSBUSY MSIF - - - - MSACKI I2CSLCR I C 从机控制寄存器 7EFE83H - ESTAI ERXI ETXI ESTOI - - SLRST x000,0xx0 I2CSLST I2C 从机状态寄存器 7EFE84H SLBUSY STAIF RXIF TXIF STOIF TXING SLACKI SLACKO 0000,0000 PWMA_IER PWMA 中断使能寄存器 7EFEC4H BIE TIE COMIE CC4IE CC3IE CC2IE CC1IE UIE 0000,0000 PWMA_SR1 PWMA 状态寄存器 1 7EFEC5H BIF TIF COMIF CC4IF CC3IF CC2IF CC1IF UIF 0000,0000 PWMA_SR2 PWMA 状态寄存器 2 7EFEC6H - - - CC4OF CC3OF CC2OF CC1OF - xxx0,000x PWMB_IER PWMB 中断使能寄存器 7EFEE4H BIE TIE COMIE CC8IE CC7IE CC6IE CC5IE UIE 0000,0000 PWMB_SR1 PWMB 状态寄存器 1 7EFEE5H BIF TIF COMIF CC8IF CC7IF CC6IF CC5IF UIF 0000,0000 PWMB_SR2 PWMB 状态寄存器 2 7EFEE6H - - - CC8OF CC7OF CC6OF CC5OF - xxx0,000x 2 2 2 深圳国芯人工智能有限公司 - LCMIFIP[1:0] 国内分销商电话: 0513-5501 2928/2929/2966 LCMIFDPS[1:0] D16_D8 M68_I80 0x00,0000 - - LCMIFIF xxxx,xxx0 ESECI ESEC2I ESEC8I ESEC32I 0000,0000 SECIF SEC2IF SEC8IF SEC32IF 0000,0000 MSCMD[3:0] 传真: 0513-5501 2926/2956/2947 0xxx,0000 MSACKO 00xx,xx00 - 237 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P0INTE P0 口中断使能寄存器 7EFD00H P07INTE P06INTE P05INTE P04INTE P03INTE P02INTE P01INTE P00INTE 0000,0000 P1INTE P1 口中断使能寄存器 7EFD01H P17INTE P16INTE P15INTE P14INTE P13INTE P12INTE P11INTE P10INTE 0000,0000 P2INTE P2 口中断使能寄存器 7EFD02H P27INTE P26INTE P25INTE P24INTE P23INTE P22INTE P21INTE P20INTE 0000,0000 P3INTE P3 口中断使能寄存器 7EFD03H P37INTE P36INTE P35INTE P34INTE P33INTE P32INTE P31INTE P30INTE 0000,0000 P4INTE P4 口中断使能寄存器 7EFD04H P47INTE P46INTE P45INTE P44INTE P43INTE P42INTE P41INTE P40INTE 0000,0000 P5INTE P5 口中断使能寄存器 7EFD05H - - P55INTE P54INTE P53INTE P52INTE P51INTE P50INTE xx00,0000 P6INTE P6 口中断使能寄存器 7EFD06H P67INTE P66INTE P65INTE P64INTE P63INTE P62INTE P61INTE P60INTE 0000,0000 P7INTE P7 口中断使能寄存器 7EFD07H P77INTE P76INTE P75INTE P74INTE P73INTE P72INTE P71INTE P70INTE 0000,0000 P0INTF P0 口中断标志寄存器 7EFD10H P07INTF P06INTF P05INTF P04INTF P03INTF P02INTF P01INTF P00INTF 0000,0000 P1INTF P1 口中断标志寄存器 7EFD11H P17INTF P16INTF P15INTF P14INTF P13INTF P12INTF P11INTF P10INTF 0000,0000 P2INTF P2 口中断标志寄存器 7EFD12H P27INTF P26INTF P25INTF P24INTF P23INTF P22INTF P21INTF P20INTF 0000,0000 P3INTF P3 口中断标志寄存器 7EFD13H P37INTF P36INTF P35INTF P34INTF P33INTF P32INTF P31INTF P30INTF 0000,0000 P4INTF P4 口中断标志寄存器 7EFD14H P47INTF P46INTF P45INTF P44INTF P43INTF P42INTF P41INTF P40INTF 0000,0000 P5INTF P5 口中断标志寄存器 7EFD15H - - P55INTF P54INTF P53INTF P52INTF P51INTF P50INTF xx00,0000 P6INTF P6 口中断标志寄存器 7EFD16H P67INTF P66INTF P65INTF P64INTF P63INTF P62INTF P61INTF P60INTF 0000,0000 P7INTF P7 口中断标志寄存器 7EFD17H P77INTF P76INTF P75INTF P74INTF P73INTF P72INTF P71INTF P70INTF 0000,0000 PINIPL I/O 口中断优先级低寄存器 7EFD60H P7IP P6IP P5IP P4IP P3IP P2IP P1IP P0IP 0000,0000 PINIPH I/O 口中断优先级高寄存器 7EFD61H P7IPH P6IPH P5IPH P4IPH P3IPH P2IPH P1IPH P0IPH 0000,0000 UR1TOCR 串口 1 超时控制寄存器 7EFD70H ENTO ENTOI SCALE - - - - - 000x,xxxx UR1TOSR 串口 1 超时状态寄存器 7EFD71H - - - - - - - TOIF xxxx,xxx0 UR2TOCR 串口 2 超时控制寄存器 7EFD74H ENTO ENTOI SCALE - - - - - 000x,xxxx UR2TOSR 串口 2 超时状态寄存器 7EFD75H - - - - - - - TOIF xxxx,xxx0 UR3TOCR 串口 3 超时控制寄存器 7EFD78H ENTO ENTOI SCALE - - - - - 000x,xxxx UR3TOSR 串口 3 超时状态寄存器 7EFD79H - - - - - - - TOIF xxxx,xxx0 UR4TOCR 串口 4 超时控制寄存器 7EFD7CH ENTO ENTOI SCALE - - - - - 000x,xxxx UR4TOSR 串口 4 超时状态寄存器 7EFD7DH - - - - - - - TOIF xxxx,xxx0 SPITOCR SPI 超时控制寄存器 7EFD80H ENTO ENTOI SCALE - - - - - 000x,xxxx SPITOSR SPI 超时状态寄存器 7EFD81H - - - - - - - TOIF xxxx,xxx0 I2CTOCR I2C 超时控制寄存器 7EFD84H ENTO ENTOI SCALE - - - - - 000x,xxxx I2CTOSR I2C 超时状态寄存器 7EFD85H - - - - - - - TOIF xxxx,xxx0 I2SCR I2S 控制寄存器 7EFD98H TXEIE RXNEIE ERRIE FRF - - I2SSR I2S 状态寄存器 7EFD99H - FRE BUY OVR UDR CHSID DMA_M2M_CFG M2M_DMA 配置寄存器 7EFA00H M2MIE - TXACO RXACO DMA_M2M_STA M2M_DMA 状态寄存器 7EFA02H - - - DMA_ADC_CFG ADC_DMA 配置寄存器 7EFA10H ADCIE - DMA_ADC_STA ADC_DMA 状态寄存器 7EFA12H - DMA_SPI_CFG SPI_DMA 配置寄存器 7EFA20H DMA_SPI_STA SPI_DMA 状态寄存器 DMA_UR1T_CFG TXDMAEN RXDMAEN 0000,xx00 TXE RXNE x000,0000 M2MIP[1:0] M2MPTY[1:0] 0x00,0000 - - - xxxx,xxx0 - - ADCMIP[1:0] ADCPTY[1:0] 0xxx,0000 - - - - - xxxx,xxx0 SPIIE ACT_TX ACT_RX - 7EFA22H - - - - - UR1T_DMA 配置寄存器 7EFA30H UR1TIE - - - UR1TIP[1:0] DMA_UR1T_STA UR1T_DMA 状态寄存器 7EFA32H - - - - - DMA_UR1R_CFG UR1R_DMA 配置寄存器 7EFA38H UR1RIE - - - UR1RIP[1:0] DMA_UR1R_STA UR1R_DMA 状态寄存器 7EFA3AH - - - - - DMA_UR2T_CFG UR2T_DMA 配置寄存器 7EFA40H UR2TIE - - - UR2TIP[1:0] DMA_UR2T_STA UR2T_DMA 状态寄存器 7EFA42H - - - - - 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 - SPIIP[1:0] M2MIF ADCIF SPIPTY[1:0] TXOVW TXOVW - TXOVW RXLOSS 000x,0000 SPIIF UR1TPTY[1:0] - UR1TIF UR1RPTY[1:0] RXLOSS UR1RIF UR2TPTY[1:0] - 传真: 0513-5501 2926/2956/2947 UR2TIF xxxx,x000 0xxx,0000 xxxx,x0x0 0xxx,0000 xxxx,xx00 0xxx,0000 xxxx,x0x0 - 238 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 DMA_UR2R_CFG UR2R_DMA 配置寄存器 7EFA48H UR2RIE - - - UR2RIP[1:0] DMA_UR2R_STA UR2R_DMA 状态寄存器 7EFA4AH - - - - - DMA_UR3T_CFG UR3T_DMA 配置寄存器 7EFA50H UR3TIE - - - UR3TIP[1:0] DMA_UR3T_STA UR3T_DMA 状态寄存器 7EFA52H - - - - - DMA_UR3R_CFG UR3R_DMA 配置寄存器 7EFA58H UR3RIE - - - UR3RIP[1:0] DMA_UR3R_STA UR3R_DMA 状态寄存器 7EFA5AH - - - - - DMA_UR4T_CFG UR4T_DMA 配置寄存器 7EFA60H UR4TIE - - - UR4TIP[1:0] DMA_UR4T_STA UR4T_DMA 状态寄存器 7EFA62H - - - - - DMA_UR4R_CFG UR4R_DMA 配置寄存器 7EFA68H UR4RIE - - - UR4RIP[1:0] DMA_UR4R_STA UR4R_DMA 状态寄存器 7EFA6AH - - - - - DMA_LCM_CFG LCM_DMA 配置寄存器 7EFA70H LCMIE - - - LCMIP[1:0] DMA_LCM_STA LCM_DMA 状态寄存器 7EFA72H - - - - - DMA_I2CT_CFG I2CT_DMA 配置寄存器 7EFA98H I2CTIE - - - I2CTIP[1:0] I2CTPTY[1:0] 0xxx,0000 DMA_I2CT_STA I2CT_DMA 状态寄存器 7EFA9AH - - - - - - xxxx,x0x0 DMA_I2CR_CFG I2CR_DMA 配置寄存器 7EFAA0H I2CRIE - - - I2CRIP[1:0] DMA_I2CR_STA I2CR_DMA 状态寄存器 7EFAA2H - - - - - DMA_I2ST_CFG I2ST_DMA 配置寄存器 7EFAB0H I2STIE - - - I2STIP[1:0] I2STPTY[1:0] 0xxx,0000 DMA_I2ST_STA I2ST_DMA 状态寄存器 7EFAB2H - - - - - - xxxx,x0x0 DMA_I2SR_CFG I2SR_DMA 配置寄存器 7EFAB8H I2SRIE - - - I2SRIP[1:0] DMA_I2SR_STA I2SR_DMA 状态寄存器 7EFABAH - - - - - 12.4.1 - TXOVW - TXOVW - - TXOVW - TXOVW - UR2RPTY[1:0] RXLOSS 0xxx,0000 UR2RIF UR3TPTY[1:0] - 0xxx,0000 UR3TIF UR3RPTY[1:0] RXLOSS UR3RIF UR4RPTY[1:0] UR4RIF LCMIF I2CRPTY[1:0] xxxx,xx00 0xxx,0000 I2CRIF I2STIF I2SRPTY[1:0] RXLOSS xxxx,xx00 0xxx,0000 I2CTIF RXLOSS xxxx,x0x0 0xxx,0000 LCMPTY[1:0] TXOVW xxxx,xx00 0xxx,0000 UR4TIF RXLOSS xxxx,x0x0 0xxx,0000 UR4TPTY[1:0] - xxxx,xx00 xxxx,xx00 0xxx,0000 I2SRIF xxxx,xx00 中断使能寄存器(中断允许位) IE(中断使能寄存器) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 IE A8H EA ELVD EADC ES ET1 EX1 ET0 EX0 EA:总中断允许控制位。EA 的作用是使中断允许形成多级控制。即各中断源首先受 EA 控制;其次还受 各中断源自己的中断允许控制位控制。 0:CPU 屏蔽所有的中断申请 1:CPU 开放中断 ELVD:低压检测中断允许位。 0:禁止低压检测中断 1:允许低压检测中断 EADC:A/D 转换中断允许位。 0:禁止 A/D 转换中断 1:允许 A/D 转换中断 ES:串行口 1 中断允许位。 0:禁止串行口 1 中断 1:允许串行口 1 中断 ET1:定时/计数器 T1 的溢出中断允许位。 0:禁止 T1 中断 1:允许 T1 中断 EX1:外部中断 1 中断允许位。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 239 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 0:禁止 INT1 中断 1:允许 INT1 中断 ET0:定时/计数器 T0 的溢出中断允许位。 0:禁止 T0 中断 1:允许 T0 中断 EX0:外部中断 0 中断允许位。 0:禁止 INT0 中断 1:允许 INT0 中断 IE2(中断使能寄存器 2) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 IE2 E7H EUSB ET4 ET3 ES4 ES3 ET2 ESPI ES2 EUSB:USB 中断允许位。 0:禁止 USB 中断 1:允许 USB 中断 ET4:定时/计数器 T4 的溢出中断允许位。 0:禁止 T4 中断 1:允许 T4 中断 ET3:定时/计数器 T3 的溢出中断允许位。 0:禁止 T3 中断 1:允许 T3 中断 ES4:串行口 4 中断允许位。 0:禁止串行口 4 中断 1:允许串行口 4 中断 ES3:串行口 3 中断允许位。 0:禁止串行口 3 中断 1:允许串行口 3 中断 ET2:定时/计数器 T2 的溢出中断允许位。 0:禁止 T2 中断 1:允许 T2 中断 ESPI:SPI 中断允许位。 0:禁止 SPI 中断 1:允许 SPI 中断 ES2:串行口 2 中断允许位。 0:禁止串行口 2 中断 1:允许串行口 2 中断 INTCLKO(外部中断与时钟输出控制寄存器) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 INTCLKO 95H - EX4 EX3 EX2 - T2CLKO T1CLKO T0CLKO EX4:外部中断 4 中断允许位。 0:禁止 INT4 中断 1:允许 INT4 中断 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 240 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 EX3:外部中断 3 中断允许位。 0:禁止 INT3 中断 1:允许 INT3 中断 EX2:外部中断 2 中断允许位。 0:禁止 INT2 中断 1:允许 INT2 中断 CMPCR1(比较器控制寄存器 1) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 CMPCR1 B4H CMPEN CMPIF PIE NIE - - CMPOE CMPRES PIE:比较器上升沿中断允许位。 0:禁止比较器上升沿中断 1:允许比较器上升沿中断 NIE:比较器下降沿中断允许位。 0:禁止比较器下降沿中断 1:允许比较器下降沿中断 CANICR(CAN 总线中断控制寄存器) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 CANICR F1H PCAN2H CAN2IF CAN2IE PCAN2L PCANH CANIF CANIE PCANL CANIE:CAN中断允许位。 0:禁止 CAN 中断 1:允许 CAN 中断 CAN2IE:CAN2中断允许位。 0:禁止 CAN2 中断 1:允许 CAN2 中断 LINICR(LIN 总线中断控制寄存器) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 LINICR F9H - - - - PLINH LINIF LINIE PLINL B5 B2 B1 B0 D16_D8 M68_I80 LINIE:LIN中断允许位。 0:禁止 LIN 中断 1:允许 LIN 中断 LCM 接口配置寄存器 符号 地址 B7 B6 LCMIFCFG 7EFE50H LCMIFIE - B4 LCMIFIP[1:0] B3 LCMIFDPS[1:0] LCMIFIE:LCM接口中断允许位。 0:禁止 LCM 接口中断 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 241 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 1:允许 LCM 接口中断 RTC 中断使能寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 RTCIEN 7EFE62H EALAI EDAYI EHOURI EMINI ESECI ESEC2I ESEC8I ESEC32I B2 B1 B0 EALAI:闹钟中断使能位 0:关闭闹钟中断 1:使能闹钟中断 EDAYI:一日(24 小时)中断使能位 0:关闭一日中断 1:使能一日中断 EHOURI:一小时(60 分钟)中断使能位 0:关闭小时中断 1:使能小时中断 EMINI:一分钟(60 秒)中断使能位 0:关闭小时中断 1:使能小时中断 ESECI:一秒中断使能位 0:关闭秒中断 1:使能秒中断 ESEC2I:1/2 秒中断使能位 0:关闭 1/2 秒中断 1:使能 1/2 秒中断 ESEC8I:1/8 秒中断使能位 0:关闭 1/8 秒中断 1:使能 1/8 秒中断 ESEC32I:1/32 秒中断使能位 0:关闭 1/32 秒中断 1:使能 1/32 秒中断 I2C 控制寄存器 符号 地址 B7 B6 B5 B4 B3 I2CMSCR 7EFE81H EMSI - - - - I2CSLCR 7EFE83H - ESTAI ERXI ETXI ESTOI MSCMD[2:0] - - SLRST EMSI:I2C主机模式中断允许位。 0:禁止 I2C 主机模式中断 1:允许 I2C 主机模式中断 ESTAI:I2C从机接收START事件中断允许位。 0:禁止 I2C 从机接收 START 事件中断 1:允许 I2C 从机接收 START 事件中断 ERXI:I2C从机接收数据完成事件中断允许位。 0:禁止 I2C 从机接收数据完成事件中断 1:允许 I2C 从机接收数据完成事件中断 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 242 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 ETXI:I2C从机发送数据完成事件中断允许位。 0:禁止 I2C 从机发送数据完成事件中断 1:允许 I2C 从机发送数据完成事件中断 ESTOI:I2C从机接收STOP事件中断允许位。 0:禁止 I2C 从机接收 STOP 事件中断 1:允许 I2C 从机接收 STOP 事件中断 PWMA 中断使能寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PWMA_IER 7EFEC4H BIE TIE COMIE CC4IE CC3IE CC2IE CC1IE UIE BIE:PWMA刹车中断允许位。 0:禁止 PWMA 刹车中断 1:允许 PWMA 刹车中断 TIE:PWMA触发中断允许位。 0:禁止 PWMA 触发中断 1:允许 PWMA 触发中断 COMIE:PWMA比较中断允许位。 0:禁止 PWMA 比较中断 1:允许 PWMA 比较中断 CC4IE:PWMA捕获比较通道4中断允许位。 0:禁止 PWMA 捕获比较通道 4 中断 1:允许 PWMA 捕获比较通道 4 中断 CC3IE:PWMA捕获比较通道3中断允许位。 0:禁止 PWMA 捕获比较通道 3 中断 1:允许 PWMA 捕获比较通道 3 中断 CC2IE:PWMA捕获比较通道2中断允许位。 0:禁止 PWMA 捕获比较通道 2 中断 1:允许 PWMA 捕获比较通道 2 中断 CC1IE:PWMA捕获比较通道1中断允许位。 0:禁止 PWMA 捕获比较通道 1 中断 1:允许 PWMA 捕获比较通道 1 中断 UIE:PWMA更新中断允许位。 0:禁止 PWMA 更新中断 1:允许 PWMA 更新中断 PWMB 中断使能寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PWMB_IER 7EFEE4H BIE TIE COMIE CC8IE CC7IE CC6IE CC5IE UIE BIE:PWMB刹车中断允许位。 0:禁止 PWMB 刹车中断 1:允许 PWMB 刹车中断 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 243 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 TIE:PWMB触发中断允许位。 0:禁止 PWMB 触发中断 1:允许 PWMB 触发中断 COMIE:PWMB比较中断允许位。 0:禁止 PWMB 比较中断 1:允许 PWMB 比较中断 CC8IE:PWMB捕获比较通道8中断允许位。 0:禁止 PWMB 捕获比较通道 8 中断 1:允许 PWMB 捕获比较通道 8 中断 CC7IE:PWMB捕获比较通道7中断允许位。 0:禁止 PWMB 捕获比较通道 7 中断 1:允许 PWMB 捕获比较通道 7 中断 CC6IE:PWMB捕获比较通道6中断允许位。 0:禁止 PWMB 捕获比较通道 6 中断 1:允许 PWMB 捕获比较通道 6 中断 CC5IE:PWMB捕获比较通道5中断允许位。 0:禁止 PWMB 捕获比较通道 5 中断 1:允许 PWMB 捕获比较通道 5 中断 UIE:PWMB更新中断允许位。 0:禁止 PWMB 更新中断 1:允许 PWMB 更新中断 端口中断使能寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0INTE 7EFD00H P07INTE P06INTE P05INTE P04INTE P03INTE P02INTE P01INTE P00INTE P1INTE 7EFD01H P17INTE P16INTE P15INTE P14INTE P13INTE P12INTE P11INTE P10INTE P2INTE 7EFD02H P27INTE P26INTE P25INTE P24INTE P23INTE P22INTE P21INTE P20INTE P3INTE 7EFD03H P37INTE P36INTE P35INTE P34INTE P33INTE P32INTE P31INTE P30INTE P4INTE 7EFD04H P47INTE P46INTE P45INTE P44INTE P43INTE P42INTE P41INTE P40INTE P5INTE 7EFD05H - - P55INTE P54INTE P53INTE P52INTE P51INTE P50INTE P6INTE 7EFD06H P67INTE P66INTE P65INTE P64INTE P63INTE P62INTE P61INTE P60INTE P7INTE 7EFD07H P77INTE P76INTE P75INTE P74INTE P73INTE P72INTE P71INTE P70INTE PnINTE.x:端口中断使能控制位(n=0~7,x=0~7) 0:关闭 Pn.x 口中断功能 1:使能 Pn.x 口中断功能 串口 1 超时控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 UR1TOCR 7EFD70H ENTO ENTOI SCALE - - - - - ENTOI:串口1超时中断允许位。 0:禁止串口 1 超时中断 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 244 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 1:允许串口 1 超时中断 串口 2 超时控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 UR2TOCR 7EFD74H ENTO ENTOI SCALE - - - - - ENTOI:串口2超时中断允许位。 0:禁止串口 2 超时中断 1:允许串口 2 超时中断 串口 3 超时控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 UR3TOCR 7EFD78H ENTO ENTOI SCALE - - - - - ENTOI:串口1超时中断允许位。 0:禁止串口 3 超时中断 1:允许串口 3 超时中断 串口 4 超时控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 UR4TOCR 7EFD7CH ENTO ENTOI SCALE - - - - - ENTOI:串口1超时中断允许位。 0:禁止串口 4 超时中断 1:允许串口 4 超时中断 SPI 超时控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 SPITOCR 7EFD80H ENTO ENTOI SCALE - - - - - ENTOI:SPI超时中断允许位。 0:禁止 SPI 超时中断 1:允许 SPI 超时中断 I2C 超时控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 I2CTOCR 7EFD84H ENTO ENTOI SCALE - - - - - ENTOI:I2C超时中断允许位。 0:禁止 I2C 超时中断 1:允许 I2C 超时中断 I2S 控制寄存器 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 245 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 I2SCR 7EFD98H TXEIE RXNEIE ERRIE FRF - - TXDMAEN RXDMAEN TXEIE:输出缓冲区空中断允许位。 0:禁止输出缓冲区空中断 1:允许输出缓冲区空中断 RXNEIE:输入缓冲区非空中断允许位。 0:禁止输入缓冲区非空中断 1:允许输入缓冲区非空中断 ERRIE:错误中断允许位。 0:禁止错误中断 1:允许错误中断 DMA_I2CT_CFG I2CT_DMA 配置寄存器 7EFA98H I2CTIE - - - I2CTIP[1:0] I2CTPTY[1:0] 0xxx,0000 DMA_I2CR_CFG I2CR_DMA 配置寄存器 7EFAA0H I2CRIE - - - I2CRIP[1:0] I2CRPTY[1:0] 0xxx,0000 DMA_I2ST_CFG I2ST_DMA 配置寄存器 7EFAB0H I2STIE - - - I2STIP[1:0] I2STPTY[1:0] 0xxx,0000 DMA_I2SR_CFG I2SR_DMA 配置寄存器 7EFAB8H I2SRIE - - - I2SRIP[1:0] I2SRPTY[1:0] 0xxx,0000 DMA 中断使能寄存器 符号 地址 B7 B6 B5 B4 DMA_M2M_CFG 7EFA00H M2MIE - TXACO RXACO M2MIP[1:0] M2MPTY[1:0] DMA_ADC_CFG 7EFA10H ADCIE - - - ADCMIP[1:0] ADCPTY[1:0] DMA_SPI_CFG 7EFA20H SPIIE ACT_TX ACT_RX - SPIIP[1:0] SPIPTY[1:0] DMA_UR1T_CFG 7EFA30H UR1TIE - - - UR1TIP[1:0] UR1TPTY[1:0] DMA_UR1R_CFG 7EFA38H UR1RIE - - - UR1RIP[1:0] UR1RPTY[1:0] DMA_UR2T_CFG 7EFA40H UR2TIE - - - UR2TIP[1:0] UR2TPTY[1:0] DMA_UR2R_CFG 7EFA48H UR2RIE - - - UR2RIP[1:0] UR2RPTY[1:0] DMA_UR3T_CFG 7EFA50H UR3TIE - - - UR3TIP[1:0] UR3TPTY[1:0] DMA_UR3R_CFG 7EFA58H UR3RIE - - - UR3RIP[1:0] UR3RPTY[1:0] DMA_UR4R_CFG 7EFA60H UR4TIE - - - UR4TIP[1:0] UR4TPTY[1:0] DMA_UR4R_CFG 7EFA68H UR4RIE - - - UR4RIP[1:0] UR4RPTY[1:0] DMA_LCM_CFG 7EFA70H LCMIE - - - LCMIP[1:0] LCMPTY[1:0] DMA_I2CT_CFG 7EFA98H I2CTIE - - - I2CTIP[1:0] I2CTPTY[1:0] DMA_I2CR_CFG 7EFAA0H I2CRIE - - - I2CRIP[1:0] I2CRPTY[1:0] DMA_I2ST_CFG 7EFAB0H I2STIE - - - I2STIP[1:0] I2STPTY[1:0] DMA_I2SR_CFG 7EFAB8H I2SRIE - - - I2SRIP[1:0] I2SRPTY[1:0] B3 B2 B1 B0 M2MIE: DMA_M2M(存储器到存储器DMA)中断允许位。 0:禁止 DMA_M2M 中断 1:允许 DMA_M2M 中断 ADCIE:DMA_ADC(ADC DMA)中断允许位。 0:禁止 DMA_ADC 中断 1:允许 DMA_ADC 中断 SPIIE:DMA_SPI(SPI DMA)中断允许位。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 246 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 0:禁止 DMA_SPI 中断 1:允许 DMA_SPI 中断 UR1TIE:DMA_UR1T(串口1发送DMA)中断允许位。 0:禁止 DMA_UR1T 中断 1:允许 DMA_UR1T 中断 UR1RIE:DMA_UR1R(串口1接收DMA)中断允许位。 0:禁止 DMA_UR1R 中断 1:允许 DMA_UR1R 中断 UR2TIE:DMA_UR2T(串口2发送DMA)中断允许位。 0:禁止 DMA_UR2T 中断 1:允许 DMA_UR2T 中断 UR2RIE:DMA_UR2R(串口2接收DMA)中断允许位。 0:禁止 DMA_UR2R 中断 1:允许 DMA_UR2R 中断 UR3TIE:DMA_UR3T(串口3发送DMA)中断允许位。 0:禁止 DMA_UR3T 中断 1:允许 DMA_UR3T 中断 UR3RIE:DMA_UR3R(串口3接收DMA)中断允许位。 0:禁止 DMA_UR3R 中断 1:允许 DMA_UR3R 中断 UR4TIE:DMA_UR4T(串口4发送DMA)中断允许位。 0:禁止 DMA_UR4T 中断 1:允许 DMA_UR4T 中断 UR4RIE:DMA_UR4R(串口4接收DMA)中断允许位。 0:禁止 DMA_UR4R 中断 1:允许 DMA_UR4R 中断 LCMIE:DMA_LCM(LCM接口DMA)中断允许位。 0:禁止 DMA_LCM 中断 1:允许 DMA_LCM 中断 I2CTIE:DMA_I2CT(I2C发送DMA)中断允许位。 0:禁止 DMA_I2CT 中断 1:允许 DMA_I2CT 中断 I2CRIE:DMA_I2CR(I2C接收DMA)中断允许位。 0:禁止 DMA_I2CR 中断 1:允许 DMA_I2CR 中断 I2STIE:DMA_I2ST(I2S发送DMA)中断允许位。 0:禁止 DMA_I2ST 中断 1:允许 DMA_I2ST 中断 I2SRIE:DMA_I2SR(I2S接收DMA)中断允许位。 0:禁止 DMA_I2SR 中断 1:允许 DMA_I2SR 中断 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 247 - STC32G 系列技术手册 12.4.2 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 中断请求寄存器(中断标志位) 定时器控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 TCON 88H TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TF1:定时器1溢出中断标志。中断服务程序中,硬件自动清零。 TF0:定时器0溢出中断标志。中断服务程序中,硬件自动清零。 IE1:外部中断1中断请求标志。中断服务程序中,硬件自动清零。 IE0:外部中断0中断请求标志。中断服务程序中,硬件自动清零。 中断标志辅助寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 AUXINTIF EFH - INT4IF INT3IF INT2IF - T4IF T3IF T2IF INT4IF:外部中断4中断请求标志。中断服务程序中,硬件自动清零。 INT3IF:外部中断3中断请求标志。中断服务程序中,硬件自动清零。 INT2IF:外部中断2中断请求标志。中断服务程序中,硬件自动清零。 T4IF:定时器4溢出中断标志。中断服务程序中,硬件自动清零。 T3IF:定时器3溢出中断标志。中断服务程序中,硬件自动清零。 T2IF:定时器2溢出中断标志。中断服务程序中,硬件自动清零。 串口控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 SCON 98H SM0/FE SM1 SM2 REN TB8 RB8 TI RI S2CON 9AH S2SM0/FE S2SM1 S2SM2 S2REN S2TB8 S2RB8 S2TI S2RI S3CON ACH S3SM0 S3ST3 S3SM2 S3REN S3TB8 S3RB8 S3TI S3RI S4CON FDH S4SM0 S4ST4 S4SM2 S4REN S4TB8 S4RB8 S4TI S4RI TI:串口1发送完成中断请求标志。需要软件清零。 RI:串口1接收完成中断请求标志。需要软件清零。 S2TI:串口2发送完成中断请求标志。需要软件清零。 S2RI:串口2接收完成中断请求标志。需要软件清零。 S3TI:串口3发送完成中断请求标志。需要软件清零。 S3RI:串口3接收完成中断请求标志。需要软件清零。 S4TI:串口4发送完成中断请求标志。需要软件清零。 S4RI:串口4接收完成中断请求标志。需要软件清零。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 248 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 电源管理寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PCON 87H SMOD SMOD0 LVDF POF GF1 GF0 PD IDL LVDF:低压检测中断请求标志。需要软件清零。 ADC 控制寄存器 符号 地址 B7 B6 B5 B4 ADC_CONTR BCH ADC_POWER ADC_START ADC_FLAG ADC_EPWMT B3 B2 B1 B0 ADC_CHS[3:0] ADC_FLAG:ADC转换完成中断请求标志。需要软件清零。 SPI 状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 SPSTAT CDH SPIF WCOL - - - - - - SPIF:SPI数据传输完成中断请求标志。需要软件写“1”清零。 比较器控制寄存器 1 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 CMPCR1 E6H CMPEN CMPIF PIE NIE - - CMPOE CMPRES CMPIF:比较器中断请求标志。需要软件清零。 CANICR(CAN 总线中断控制寄存器) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 CANICR F1H PCAN2H CAN2IF CAN2IE PCAN2L PCANH CANIF CANIE PCANL CANIF:CAN中断请求标志。需要软件清零。 CAN2IF:CAN2中断请求标志。需要软件清零。 LINICR(LIN 总线中断控制寄存器) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 LINICR F9H - - - - PLINH LINIF LINIE PLINL LINIF:LIN中断请求标志。需要软件清零。 LCM 接口状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 LCMIFSTA 7EFE53H - - - - - - - LCMIFIF LCMIFIF:LCM接口中断请求标志。需要软件清零。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 249 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 RTC 中断请求标志寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 RTCIF 7EFE63H ALAIF DAYIF HOURIF MINIF SECIF SEC2IF SEC8IF SEC32IF ALAIF:闹钟中断请求位。需软件清零。 DAYIF:一日(24 小时)中断请求位。需软件清零。 HOURIF:一小时(60 分钟)中断请求位。需软件清零。 MINIF:一分钟(60 秒)中断请求位。需软件清零。 SECIF:一秒中断请求位。需软件清零。 SEC2IF:1/2 秒中断请求位。需软件清零 SEC8IF:1/8 秒中断请求位。需软件清零。 SEC32IF:1/32 秒中断请求位。需软件清零。 I2C 状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 I2CMSST 7EFE82H MSBUSY MSIF - - - - MSACKI MSACKO I2CSLST 7EFE84H SLBUSY STAIF RXIF TXIF STOIF TXING SLACKI SLACKO MSIF:I2C主机模式中断请求标志。需要软件清零。 ESTAI:I2C从机接收START事件中断请求标志。需要软件清零。 ERXI:I2C从机接收数据完成事件中断请求标志。需要软件清零。 ETXI:I2C从机发送数据完成事件中断请求标志。需要软件清零。 ESTOI:I2C从机接收STOP事件中断请求标志。需要软件清零。 PWMA 状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PWMA_SR1 7EFEC5H BIF TIF COMIF CC4IF CC3IF CC2IF CC1IF UIF PWMA_SR2 7EFEC6H - - - CC4OF CC3OF CC2OF CC1OF - BIF:PWMA刹车中断请求标志。需要软件清零。 TIF:PWMA触发中断请求标志。需要软件清零。 COMIF:PWMA比较中断请求标志。需要软件清零。 CC4IF:PWMA通道4发生捕获比较中断请求标志。需要软件清零。 CC3IF:PWMA通道3发生捕获比较中断请求标志。需要软件清零。 CC2IF:PWMA通道2发生捕获比较中断请求标志。需要软件清零。 CC1IF:PWMA通道1发生捕获比较中断请求标志。需要软件清零。 TIF:PWMA更新中断请求标志。需要软件清零。 CC4OF:PWMA通道4发生重复捕获中断请求标志。需要软件清零。 CC3OF:PWMA通道3发生重复捕获中断请求标志。需要软件清零。 CC2OF:PWMA通道2发生重复捕获中断请求标志。需要软件清零。 CC1OF:PWMA通道1发生重复捕获中断请求标志。需要软件清零。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 250 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 PWMB 状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PWMB_SR1 7EFEE5H BIF TIF COMIF CC8IF CC7IF CC6IF CC5IF UIF PWMB_SR2 7EFEE6H - - - CC8OF CC7OF CC6OF CC5OF - BIF:PWMB刹车中断请求标志。需要软件清零。 TIF:PWMB触发中断请求标志。需要软件清零。 COMIF:PWMB比较中断请求标志。需要软件清零。 CC8IF:PWMB通道8发生捕获比较中断请求标志。需要软件清零。 CC7IF:PWMB通道7发生捕获比较中断请求标志。需要软件清零。 CC6IF:PWMB通道6发生捕获比较中断请求标志。需要软件清零。 CC5IF:PWMB通道5发生捕获比较中断请求标志。需要软件清零。 TIF:PWMB更新中断请求标志。需要软件清零。 CC8OF:PWMB通道8发生重复捕获中断请求标志。需要软件清零。 CC7OF:PWMB通道7发生重复捕获中断请求标志。需要软件清零。 CC6OF:PWMB通道6发生重复捕获中断请求标志。需要软件清零。 CC5OF:PWMB通道5发生重复捕获中断请求标志。需要软件清零。 端口中断标志寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0INTF 7EFD10H P07INTF P06INTF P05INTF P04INTF P03INTF P02INTF P01INTF P00INTF P1INTF 7EFD11H P17INTF P16INTF P15INTF P14INTF P13INTF P12INTF P11INTF P10INTF P2INTF 7EFD12H P27INTF P26INTF P25INTF P24INTF P23INTF P22INTF P21INTF P20INTF P3INTF 7EFD13H P37INTF P36INTF P35INTF P34INTF P33INTF P32INTF P31INTF P30INTF P4INTF 7EFD14H P47INTF P46INTF P45INTF P44INTF P43INTF P42INTF P41INTF P40INTF P5INTF 7EFD15H - - P55INTF P54INTF P53INTF P52INTF P51INTF P50INTF P6INTF 7EFD16H P67INTF P66INTF P65INTF P64INTF P63INTF P62INTF P61INTF P60INTF P7INTF 7EFD17H P77INTF P76INTF P75INTF P74INTF P73INTF P72INTF P71INTF P70INTF PnINTF.x:端口中断请求标志位(n=0~7,x=0~7) 0:Pn.x 口没有中断请求 1:Pn.x 口有中断请求,若使能中断,则会进入中断服务程序。需要软件清零。 串口 1 超时状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 UR1TOSR 7EFD71H - - - - - - - TOIF TOIF:串口1超时中断请求标志。需要软件清零。 串口 2 超时状态寄存器 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 251 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 UR2TOSR 7EFD75H - - - - - - - TOIF TOIF:串口2超时中断请求标志。需要软件清零。 串口 3 超时状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 UR3TOSR 7EFD79H - - - - - - - TOIF TOIF:串口3超时中断请求标志。需要软件清零。 串口 4 超时状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 UR4TOSR 7EFD7DH - - - - - - - TOIF TOIF:串口4超时中断请求标志。需要软件清零。 SPI 超时状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 SPITOSR 7EFD81H - - - - - - - TOIF TOIF:SPI超时中断请求标志。需要软件清零。 I2C 超时状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 I2CTOSR 7EFD75H - - - - - - - TOIF TOIF:I2C超时中断请求标志。需要软件清零。 I2S 超时状态寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 I2STOSR 7EFD79H - - - - - - - TOIF TOIF:I2S超时中断请求标志。需要软件清零。 DMA 中断标志寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 DMA_M2M_STA 7EFA02H - - - - - - - M2MIF DMA_ADC_STA 7EFA12H - - - - - - - ADCIF DMA_SPI_STA 7EFA22H - - - - - TXOVW RXLOSS SPIIF DMA_UR1T_STA 7EFA32H - - - - - TXOVW - UR1TIF DMA_UR1R_STA 7EFA3AH - - - - - - RXLOSS UR1RIF DMA_UR2T_STA 7EFA42H - - - - - TXOVW - UR2TIF DMA_UR2R_STA 7EFA4AH - - - - - - RXLOSS UR2RIF 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 252 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 DMA_UR3T_STA 7EFA52H - - - - - TXOVW - UR3TIF DMA_UR3R_STA 7EFA5AH - - - - - - RXLOSS UR3RIF DMA_UR4T_STA 7EFA62H - - - - - TXOVW - UR4TIF DMA_UR4R_STA 7EFA6AH - - - - - - RXLOSS UR4RIF DMA_LCM_STA 7EFA72H - - - - - - TXOVW LCMIF DMA_I2CT_STA 7EFA9AH - - - - - TXOVW - I2CTIF DMA_I2CR_STA 7EFAA2H - - - - - - RXLOSS I2CRIF DMA_I2ST_STA 7EFAB2H - - - - - TXOVW - I2STIF DMA_I2SR_STA 7EFABAH - - - - - - RXLOSS I2SRIF M2MIF: DMA_M2M(存储器到存储器DMA)中断请求标志。需要软件清零。 ADCIF:DMA_ADC(ADC DMA)中断请求标志。需要软件清零。 SPIIF:DMA_SPI(SPI DMA)中断请求标志。需要软件清零。。 UR1TIF:DMA_UR1T(串口1发送DMA)中断请求标志。需要软件清零。 UR1RIF:DMA_UR1R(串口1接收DMA)中断请求标志。需要软件清零。 UR2TIF:DMA_UR2T(串口2发送DMA)中断请求标志。需要软件清零。 UR2RIF:DMA_UR2R(串口2接收DMA)中断请求标志。需要软件清零。 UR3TIF:DMA_UR3T(串口3发送DMA)中断请求标志。需要软件清零。 UR3RIF:DMA_UR3R(串口3接收DMA)中断请求标志。需要软件清零。 UR4TIF:DMA_UR4T(串口4发送DMA)中断请求标志。需要软件清零。 UR4RIF:DMA_UR4R(串口4接收DMA)中断请求标志。需要软件清零。 LCMIF:DMA_LCM(LCM接口DMA)中断请求标志。需要软件清零。 I2CTIF:DMA_I2CT(I2C发送DMA)中断请求标志。需要软件清零。 I2CRIF:DMA_I2CR(I2C接收DMA)中断请求标志。需要软件清零。 I2STIF:DMA_I2ST(I2S发送DMA)中断请求标志。需要软件清零。 I2SRIF:DMA_I2SR(I2S接收DMA)中断请求标志。需要软件清零。 12.4.3 中断优先级寄存器 中断优先级控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 IP B8H PPWMA PLVD PADC PS PT1 PX1 PT0 PX0 IPH B7H PPWMAH PLVDH PADCH PSH PT1H PX1H PT0H PX0H IP2 B5H PUSB PI2C PCMP PX4 PPWMB PUSB PSPI PS2 IP2H B6H PUSBH PI2CH PCMPH PX4H PPWMBH PUSBH PSPIH PS2H IP3 DFH - - - - PI2S PRTC PS4 PS3 IP3H EEH - - - - PI2SH PRTCH PS4H PS3H PX0H,PX0:外部中断0中断优先级控制位 00:INT0 中断优先级为 0 级(最低级) 01:INT0 中断优先级为 1 级(较低级) 10:INT0 中断优先级为 2 级(较高级) 11:INT0 中断优先级为 3 级(最高级) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 253 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 PT0H,PT0:定时器0中断优先级控制位 00:定时器 0 中断优先级为 0 级(最低级) 01:定时器 0 中断优先级为 1 级(较低级) 10:定时器 0 中断优先级为 2 级(较高级) 11:定时器 0 中断优先级为 3 级(最高级) PX1H,PX1:外部中断1中断优先级控制位 00:INT1 中断优先级为 0 级(最低级) 01:INT1 中断优先级为 1 级(较低级) 10:INT1 中断优先级为 2 级(较高级) 11:INT1 中断优先级为 3 级(最高级) PT1H,PT1:定时器1中断优先级控制位 00:定时器 1 中断优先级为 0 级(最低级) 01:定时器 1 中断优先级为 1 级(较低级) 10:定时器 1 中断优先级为 2 级(较高级) 11:定时器 1 中断优先级为 3 级(最高级) PSH,PS:串口1中断优先级控制位 00:串口 1 中断优先级为 0 级(最低级) 01:串口 1 中断优先级为 1 级(较低级) 10:串口 1 中断优先级为 2 级(较高级) 11:串口 1 中断优先级为 3 级(最高级) PADCH,PADC:ADC中断优先级控制位 00:ADC 中断优先级为 0 级(最低级) 01:ADC 中断优先级为 1 级(较低级) 10:ADC 中断优先级为 2 级(较高级) 11:ADC 中断优先级为 3 级(最高级) PLVDH,PLVD:低压检测中断优先级控制位 00:LVD 中断优先级为 0 级(最低级) 01:LVD 中断优先级为 1 级(较低级) 10:LVD 中断优先级为 2 级(较高级) 11:LVD 中断优先级为 3 级(最高级) PS2H,PS2:串口2中断优先级控制位 00:串口 2 中断优先级为 0 级(最低级) 01:串口 2 中断优先级为 1 级(较低级) 10:串口 2 中断优先级为 2 级(较高级) 11:串口 2 中断优先级为 3 级(最高级) PS3H,PS3:串口3中断优先级控制位 00:串口 3 中断优先级为 0 级(最低级) 01:串口 3 中断优先级为 1 级(较低级) 10:串口 3 中断优先级为 2 级(较高级) 11:串口 3 中断优先级为 3 级(最高级) PS4H,PS4:串口4中断优先级控制位 00:串口 4 中断优先级为 0 级(最低级) 01:串口 4 中断优先级为 1 级(较低级) 10:串口 4 中断优先级为 2 级(较高级) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 254 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 11:串口 4 中断优先级为 3 级(最高级) PSPIH,PSPI:SPI中断优先级控制位 00:SPI 中断优先级为 0 级(最低级) 01:SPI 中断优先级为 1 级(较低级) 10:SPI 中断优先级为 2 级(较高级) 11:SPI 中断优先级为 3 级(最高级) PPWMAH,PPWMA:高级PWMA中断优先级控制位 00:高级 PWMA 中断优先级为 0 级(最低级) 01:高级 PWMA 中断优先级为 1 级(较低级) 10:高级 PWMA 中断优先级为 2 级(较高级) 11:高级 PWMA 中断优先级为 3 级(最高级) PPWMBH,PPWMB:高级PWMB中断优先级控制位 00:高级 PWMB 中断优先级为 0 级(最低级) 01:高级 PWMB 中断优先级为 1 级(较低级) 10:高级 PWMB 中断优先级为 2 级(较高级) 11:高级 PWMB 中断优先级为 3 级(最高级) PX4H,PX4:外部中断4中断优先级控制位 00:INT4 中断优先级为 0 级(最低级) 01:INT4 中断优先级为 1 级(较低级) 10:INT4 中断优先级为 2 级(较高级) 11:INT4 中断优先级为 3 级(最高级) PCMPH,PCMP:比较器中断优先级控制位 00:CMP 中断优先级为 0 级(最低级) 01:CMP 中断优先级为 1 级(较低级) 10:CMP 中断优先级为 2 级(较高级) 11:CMP 中断优先级为 3 级(最高级) PI2CH,PI2C:I2C中断优先级控制位 00:I2C 中断优先级为 0 级(最低级) 01:I2C 中断优先级为 1 级(较低级) 10:I2C 中断优先级为 2 级(较高级) 11:I2C 中断优先级为 3 级(最高级) PUSBH,PUSB:USB中断优先级控制位 00:USB 中断优先级为 0 级(最低级) 01:USB 中断优先级为 1 级(较低级) 10:USB 中断优先级为 2 级(较高级) 11:USB 中断优先级为 3 级(最高级) PRTCH,PRTC:RTC中断优先级控制位 00:RTC 中断优先级为 0 级(最低级) 01:RTC 中断优先级为 1 级(较低级) 10:RTC 中断优先级为 2 级(较高级) 11:RTC 中断优先级为 3 级(最高级) PI2SH,PI2S:I2S中断优先级控制位 00:I2S 中断优先级为 0 级(最低级) 01:I2S 中断优先级为 1 级(较低级) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 255 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 10:I2S 中断优先级为 2 级(较高级) 11:I2S 中断优先级为 3 级(最高级) CANICR(CAN 总线中断控制寄存器) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 CANICR F1H PCAN2H CAN2IF CAN2IE PCAN2L PCANH CANIF CANIE PCANL PCANH,PCANL:CAN中断优先级控制位 00:CAN 中断优先级为 0 级(最低级) 01:CAN 中断优先级为 1 级(较低级) 10:CAN 中断优先级为 2 级(较高级) 11:CAN 中断优先级为 3 级(最高级) PCAN2H,PCAN2L:CAN2中断优先级控制位 00:CAN2 中断优先级为 0 级(最低级) 01:CAN2 中断优先级为 1 级(较低级) 10:CAN2 中断优先级为 2 级(较高级) 11:CAN2 中断优先级为 3 级(最高级) LINICR(LIN 总线中断控制寄存器) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 LINICR F9H - - - - PLINH LINIF LINIE PLINL B2 B1 B0 D16_D8 M68_I80 PLINH,PLINL:LIN中断优先级控制位 00:LIN 中断优先级为 0 级(最低级) 01:LIN 中断优先级为 1 级(较低级) 10:LIN 中断优先级为 2 级(较高级) 11:LIN 中断优先级为 3 级(最高级) LCM 接口配置寄存器 符号 地址 B7 B6 LCMIFCFG 7EFE50H LCMIFIE - B5 B4 LCMIFIP[1:0] B3 LCMIFDPS[1:0] LCMIFIP[1:0]:LCM接口中断优先级控制位 00:LCM 接口中断优先级为 0 级(最低级) 01:LCM 接口中断优先级为 1 级(较低级) 10:LCM 接口中断优先级为 2 级(较高级) 11:LCM 接口中断优先级为 3 级(最高级) 端口中断优先级控制寄存器 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PINIPL 7EFD60H P7IP P6IP P5IP P4IP P3IP P2IP P1IP P0IP PINIPH 7EFD61H P7IPH P6IPH P5IPH P4IPH P3IPH P2IPH P1IPH P0IPH P0IPH,P0IP:P0口中断优先级控制位 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 256 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 00:P0 口中断优先级为 0 级(最低级) 01:P0 口中断优先级为 1 级(较低级) 10:P0 口中断优先级为 2 级(较高级) 11:P0 口中断优先级为 3 级(最高级) P1IPH,P1IP:P1口中断优先级控制位 00:P1 口中断优先级为 0 级(最低级) 01:P1 口中断优先级为 1 级(较低级) 10:P1 口中断优先级为 2 级(较高级) 11:P1 口中断优先级为 3 级(最高级) P2IPH,P2IP:P2口中断优先级控制位 00:P2 口中断优先级为 0 级(最低级) 01:P2 口中断优先级为 1 级(较低级) 10:P2 口中断优先级为 2 级(较高级) 11:P2 口中断优先级为 3 级(最高级) P3IPH,P3IP:P3口中断优先级控制位 00:P3 口中断优先级为 0 级(最低级) 01:P3 口中断优先级为 1 级(较低级) 10:P3 口中断优先级为 2 级(较高级) 11:P3 口中断优先级为 3 级(最高级) P4IPH,P4IP:P4口中断优先级控制位 00:P4 口中断优先级为 0 级(最低级) 01:P4 口中断优先级为 1 级(较低级) 10:P4 口中断优先级为 2 级(较高级) 11:P4 口中断优先级为 3 级(最高级) P5IPH,P5IP:P5口中断优先级控制位 00:P5 口中断优先级为 0 级(最低级) 01:P5 口中断优先级为 1 级(较低级) 10:P5 口中断优先级为 2 级(较高级) 11:P5 口中断优先级为 3 级(最高级) P6IPH,P6IP:P6口中断优先级控制位 00:P6 口中断优先级为 0 级(最低级) 01:P6 口中断优先级为 1 级(较低级) 10:P6 口中断优先级为 2 级(较高级) 11:P6 口中断优先级为 3 级(最高级) P7IPH,P7IP:P7口中断优先级控制位 00:P7 口中断优先级为 0 级(最低级) 01:P7 口中断优先级为 1 级(较低级) 10:P7 口中断优先级为 2 级(较高级) 11:P7 口中断优先级为 3 级(最高级) DMA 中断优先级控制寄存器 符号 地址 B7 B6 B5 B4 DMA_M2M_CFG 7EFA00H M2MIE - TXACO RXACO 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 B3 B2 M2MIP[1:0] B1 B0 M2MPTY[1:0] 传真: 0513-5501 2926/2956/2947 - 257 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 DMA_ADC_CFG 7EFA10H ADCIE - - - ADCMIP[1:0] ADCPTY[1:0] DMA_SPI_CFG 7EFA20H SPIIE ACT_TX ACT_RX - SPIIP[1:0] SPIPTY[1:0] DMA_UR1T_CFG 7EFA30H UR1TIE - - - UR1TIP[1:0] UR1TPTY[1:0] DMA_UR1R_CFG 7EFA38H UR1RIE - - - UR1RIP[1:0] UR1RPTY[1:0] DMA_UR2T_CFG 7EFA40H UR2TIE - - - UR2TIP[1:0] UR2TPTY[1:0] DMA_UR2R_CFG 7EFA48H UR2RIE - - - UR2RIP[1:0] UR2RPTY[1:0] DMA_UR3T_CFG 7EFA50H UR3TIE - - - UR3TIP[1:0] UR3TPTY[1:0] DMA_UR3R_CFG 7EFA58H UR3RIE - - - UR3RIP[1:0] UR3RPTY[1:0] DMA_UR4T_CFG 7EFA60H UR4TIE - - - UR4TIP[1:0] UR4TPTY[1:0] DMA_UR4R_CFG 7EFA68H UR4RIE - - - UR4RIP[1:0] UR4RPTY[1:0] DMA_LCM_CFG 7EFA70H LCMIE - - - LCMIP[1:0] LCMPTY[1:0] DMA_I2CT_CFG 7EFA98H I2CTIE - - - I2CTIP[1:0] I2CTPTY[1:0] DMA_I2CR_CFG 7EFAA0H I2CRIE - - - I2CRIP[1:0] I2CRPTY[1:0] DMA_I2ST_CFG 7EFAB0H I2STIE - - - I2STIP[1:0] I2STPTY[1:0] DMA_I2SR_CFG 7EFAB8H I2SRIE - - - I2SRIP[1:0] I2SRPTY[1:0] M2MIP: DMA_M2M(存储器到存储器DMA)中断优先级控制位 00:DMA_M2M 中断优先级为 0 级(最低级) 01:DMA_M2M 中断优先级为 1 级(较低级) 10:DMA_M2M 中断优先级为 2 级(较高级) 11:DMA_M2M 中断优先级为 3 级(最高级) ADCIP:DMA_ADC(ADC DMA)中断优先级控制位 00:DMA_ADC 中断优先级为 0 级(最低级) 01:DMA_ADC 中断优先级为 1 级(较低级) 10:DMA_ADC 中断优先级为 2 级(较高级) 11:DMA_ADC 中断优先级为 3 级(最高级) SPIIP:DMA_SPI(SPI DMA)中断优先级控制位 00:DMA_SPI 中断优先级为 0 级(最低级) 01:DMA_SPI 中断优先级为 1 级(较低级) 10:DMA_SPI 中断优先级为 2 级(较高级) 11:DMA_SPI 中断优先级为 3 级(最高级) UR1TIP:DMA_UR1T(串口1发送DMA)中断优先级控制位 00:DMA_UR1T 中断优先级为 0 级(最低级) 01:DMA_UR1T 中断优先级为 1 级(较低级) 10:DMA_UR1T 中断优先级为 2 级(较高级) 11:DMA_UR1T 中断优先级为 3 级(最高级) UR1RIP:DMA_UR1R(串口1接收DMA)中断优先级控制位 00:DMA_UR1R 中断优先级为 0 级(最低级) 01:DMA_UR1R 中断优先级为 1 级(较低级) 10:DMA_UR1R 中断优先级为 2 级(较高级) 11:DMA_UR1R 中断优先级为 3 级(最高级) UR2TIP:DMA_UR2T(串口2发送DMA)中断优先级控制位 00:DMA_UR2T 中断优先级为 0 级(最低级) 01:DMA_UR2T 中断优先级为 1 级(较低级) 10:DMA_UR2T 中断优先级为 2 级(较高级) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 258 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 11:DMA_UR2T 中断优先级为 3 级(最高级) UR2RIP:DMA_UR2R(串口2接收DMA)中断优先级控制位 00:DMA_UR2R 中断优先级为 0 级(最低级) 01:DMA_UR2R 中断优先级为 1 级(较低级) 10:DMA_UR2R 中断优先级为 2 级(较高级) 11:DMA_UR2R 中断优先级为 3 级(最高级) UR3TIP:DMA_UR3T(串口3发送DMA)中断优先级控制位 00:DMA_UR3T 中断优先级为 0 级(最低级) 01:DMA_UR3T 中断优先级为 1 级(较低级) 10:DMA_UR3T 中断优先级为 2 级(较高级) 11:DMA_UR3T 中断优先级为 3 级(最高级) UR3RIP:DMA_UR3R(串口3接收DMA)中断优先级控制位 00:DMA_UR3R 中断优先级为 0 级(最低级) 01:DMA_UR3R 中断优先级为 1 级(较低级) 10:DMA_UR3R 中断优先级为 2 级(较高级) 11:DMA_UR3R 中断优先级为 3 级(最高级) UR4TIP:DMA_UR4T(串口4发送DMA)中断优先级控制位 00:DMA_UR4T 中断优先级为 0 级(最低级) 01:DMA_UR4T 中断优先级为 1 级(较低级) 10:DMA_UR4T 中断优先级为 2 级(较高级) 11:DMA_UR4T 中断优先级为 3 级(最高级) UR4RIP:DMA_UR4R(串口4接收DMA)中断优先级控制位 00:DMA_UR4R 中断优先级为 0 级(最低级) 01:DMA_UR4R 中断优先级为 1 级(较低级) 10:DMA_UR4R 中断优先级为 2 级(较高级) 11:DMA_UR4R 中断优先级为 3 级(最高级) LCMIP:DMA_LCM(LCM接口DMA)中断优先级控制位 00:DMA_LCM 中断优先级为 0 级(最低级) 01:DMA_LCM 中断优先级为 1 级(较低级) 10:DMA_LCM 中断优先级为 2 级(较高级) 11:DMA_LCM 中断优先级为 3 级(最高级) I2CTIP:DMA_I2CT(I2C发送DMA)中断优先级控制位 00:DMA_I2CT 中断优先级为 0 级(最低级) 01:DMA_I2CT 中断优先级为 1 级(较低级) 10:DMA_I2CT 中断优先级为 2 级(较高级) 11:DMA_I2CT 中断优先级为 3 级(最高级) I2CRIP:DMA_I2CR(I2C接收DMA)中断优先级控制位 00:DMA_I2CR 中断优先级为 0 级(最低级) 01:DMA_I2CR 中断优先级为 1 级(较低级) 10:DMA_I2CR 中断优先级为 2 级(较高级) 11:DMA_I2CR 中断优先级为 3 级(最高级) I2STIP:DMA_I2ST(I2S发送DMA)中断优先级控制位 00:DMA_I2ST 中断优先级为 0 级(最低级) 01:DMA_I2ST 中断优先级为 1 级(较低级) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 259 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 10:DMA_I2ST 中断优先级为 2 级(较高级) 11:DMA_I2ST 中断优先级为 3 级(最高级) I2SRIP:DMA_I2SR(I2S接收DMA)中断优先级控制位 00:DMA_I2SR 中断优先级为 0 级(最低级) 01:DMA_I2SR 中断优先级为 1 级(较低级) 10:DMA_I2SR 中断优先级为 2 级(较高级) 11:DMA_I2SR 中断优先级为 3 级(最高级) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 260 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 12.5 范例程序 12.5.1 INT0 中断(上升沿和下降沿),可同时支持上升沿和下降 沿 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void INT0_Isr() interrupt 0 { if (INT0) { P10 = !P10; } else { P11 = !P11; } } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //判断上升沿和下降沿 //测试端口 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; IT0 = 0; EX0 = 1; EA = 1; //使能 INT0 上升沿和下降沿中断 //使能 INT0 中断 while (1); } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 261 - STC32G 系列技术手册 12.5.2 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 INT0 中断(下降沿) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void INT0_Isr() interrupt 0 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //使能 INT0 下降沿中断 //使能 INT0 中断 IT0 = 1; EX0 = 1; EA = 1; while (1); } 12.5.3 INT1 中断(上升沿和下降沿),可同时支持上升沿和下降 沿 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void INT1_Isr() interrupt 2 { if (INT1) 深圳国芯人工智能有限公司 //头文件见下载软件 //判断上升沿和下降沿 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 262 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 { P10 = !P10; //测试端口 P11 = !P11; //测试端口 } else { } } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //使能 INT1 上升沿和下降沿中断 //使能 INT1 中断 IT1 = 0; EX1 = 1; EA = 1; while (1); } 12.5.4 INT1 中断(下降沿) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void INT1_Isr() interrupt 2 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 263 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //使能 INT1 下降沿中断 //使能 INT1 中断 IT1 = 1; EX1 = 1; EA = 1; while (1); } 12.5.5 INT2 中断(下降沿),只支持下降沿中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void INT2_Isr() interrupt 10 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; EX2 = ; EA = 1; //使能 INT2 中断 while (1); 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 264 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 } 12.5.6 INT3 中断(下降沿),只支持下降沿中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void INT3_Isr() interrupt 11 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //使能 INT3 中断 EX3 = 1; EA = 1; while (1); } 12.5.7 INT4 中断(下降沿),只支持下降沿中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void INT4_Isr() interrupt 16 { P10 = !P10; 深圳国芯人工智能有限公司 //头文件见下载软件 //测试端口 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 265 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //使能 INT4 中断 EX4 = 1; EA = 1; while (1); } 12.5.8 定时器 0 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM0_Isr() interrupt 1 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 266 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x00; TL0 = 0x66; TH0 = 0xfc; TR0 = 1; ET0 = 1; EA = 1; //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 12.5.9 定时器 1 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM1_Isr() interrupt 3 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x00; TL1 = 0x66; TH1 = 0xfc; TR1 = 1; ET1 = 1; EA = 1; //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 267 - STC32G 系列技术手册 12.5.10 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器 2 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" //头文件见下载软件 void TM2_Isr() interrupt 12 { P10 = !P10; } //测试端口 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T2L = 0x66; T2H = 0xfc; T2R = 1; ET2 = 1; EA = 1; //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 12.5.11 定时器 3 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" //头文件见下载软件 void TM3_Isr() interrupt 19 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 268 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 { //测试端口 P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T3L = 0x66; T3H = 0xfc; T3R = 1; ET3 = 1; EA = 1; //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 12.5.12 定时器 4 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM4_Isr() interrupt 20 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 269 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T4L = 0x66; T4H = 0xfc; T4R = 1; ET4 = 1; EA = 1; //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 12.5.13 UART1 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void UART1_Isr() interrupt 4 { if (TI) { TI = 0; P10 = !P10; } if (RI) { RI = 0; P11 = !P11; } } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //清中断标志 //测试端口 //清中断标志 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 270 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; SCON = 0x50; T2L = 0xe8; T2H = 0xff; S1BRT = 1; T2x12 = 1; T2R = 1; ES = 1; EA = 1; SBUF = 0x5a; //65536-11059200/115200/4=0FFE8H //启动定时器 //使能串口中断 //发送测试数据 while (1); } 12.5.14 UART2 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void UART2_Isr() interrupt 8 { if (S2TI) { S2TI = 0; P12 = !P12; } if (S2RI) { S2RI = 0; P13 = !P13; } } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //清中断标志 //测试端口 //清中断标志 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 271 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P5M0 = 0x00; P5M1 = 0x00; S2CON = 0x50; T2L = 0xe8; T2H = 0xff; T2x12 = 1; T2R = 1; ES2 = 1; EA = 1; S2BUF = 0x5a; //65536-11059200/115200/4=0FFE8H //启动定时器 //使能串口中断 //发送测试数据 while (1); } 12.5.15 UART3 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void UART3_Isr() interrupt 17 { if (S3TI) { S3TI = 0; P12 = !P12; } if (S3RI) { S3RI = 0; P13 = !P13; } } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //清中断标志 //测试端口 //清中断标志 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; S3CON = 0x10; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 272 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com T2L = 0xe8; T2H = 0xff; T2x12 = 1; T2R = 1; ES3 = 1; EA = 1; S3BUF = 0x5a; 技术支持: 19864585985 选型顾问: 13922805190 //65536-11059200/115200/4=0FFE8H //启动定时器 //使能串口中断 //发送测试数据 while (1); } 12.5.16 UART4 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void UART4_Isr() interrupt 18 { if (S4TI) { S4TI = 0; P12 = !P12; } if (S4RI) { S4RI = 0; P13 = !P13; } } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //清中断标志 //测试端口 //清中断标志 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; S4CON = 0x10; T2L = 0xe8; T2H = 0xff; T2x12 = 1; T2R = 1; ES4 = 1; 深圳国芯人工智能有限公司 //65536-11059200/115200/4=0FFE8H //启动定时器 //使能串口中断 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 273 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com EA = 1; S4BUF = 0x5a; 技术支持: 19864585985 选型顾问: 13922805190 //发送测试数据 while (1); } 12.5.17 ADC 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void ADC_Isr() interrupt 5 { ADC_FLAG = 0; P0 = ADC_RES; P2 = ADC_RESL; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //清中断标志 //测试端口 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; ADCCFG = 0x00; ADC_CONTR = 0xc0; EADC = 1; EA = 1; //使能并启动 ADC 模块 //使能 ADC 中断 while (1); } 12.5.18 LVD 中断 //测试工作频率为 11.0592MHz 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 274 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define #define #define #define ENLVR LVD2V2 LVD2V4 LVD2V7 LVD3V0 技术支持: 19864585985 选型顾问: 13922805190 //头文件见下载软件 0x40 0x00 0x01 0x02 0x03 void LVD_Isr() interrupt 6 { LVDF = 0; P10 = !P10; } //RSTCFG.6 //LVD@2.2V //LVD@2.4V //LVD@2.7V //LVD@3.0V //清中断标志 //测试端口 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //上电需要清中断标志 //设置 LVD 电压为 3.0V //使能 LVD 中断 LVDF = 0; RSTCFG = LVD3V0; ELVD = 1; EA = 1; while (1); } 12.5.19 比较器中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void CMP_Isr() interrupt 21 { CMPIF = 0; 深圳国芯人工智能有限公司 //头文件见下载软件 //清中断标志 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 275 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com P10 = !P10; 技术支持: 19864585985 选型顾问: 13922805190 //测试端口 } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; CMPCR2 = 0x00; CMPEN = 1; PIE = NIE = 1; EA = 1; //使能比较器模块 //使能比较器边沿中断 while (1); } 12.5.20 SPI 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void SPI_Isr() interrupt 9 { SPIF = 1; P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //清中断标志 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 276 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; SPCTL = 0x50; SPSTAT = 0xc0; ESPI = 1; EA = 1; SPDAT = 0x5a; //使能 SPI 主机模式 //清中断标志 //使能 SPI 中断 //发送测试数据 while (1); } 12.5.21 I2C 中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void I2C_Isr() interrupt 24 { if (I2CMSST & 0x40) { I2CMSST &= ~0x40; P10 = !P10; } } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //清中断标志 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; I2CCFG = 0xc0; I2CMSCR = 0x80; 深圳国芯人工智能有限公司 //使能 I2C 主机模式 //使能 I2C 中断; 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 277 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 EA = 1; I2CMSCR = 0x81; //发送起始命令 while (1); } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 278 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 I/O 口中断 13 产品线 I/O 中断 I/O 中断优先级 I/O 中断唤醒功能 STC32G12K128 系列 ● 4级 ● STC32G8K64 系列 ● 4级 ● STC32F12K60 系列 ● 4级 ● STC32G 系列支持所有的 I/O 中断,且支持 4 种中断模式:下降沿中断、上升沿中断、低电平中断、 高电平中断。每组 I/O 口都有独立的中断入口地址,且每个 I/O 可独立设置中断模式。 注:STC32G12K128-Beta 版芯片的普通 I/O 口下降沿中断和上升沿中断暂时不要使用 13.1 I/O 口中断相关寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 P0INTE P0 口中断使能寄存器 7EFD00H P07INTE P06INTE P05INTE P04INTE P03INTE P02INTE P01INTE P00INTE 0000,0000 P1INTE P1 口中断使能寄存器 7EFD01H P17INTE P16INTE P15INTE P14INTE P13INTE P12INTE P11INTE P10INTE 0000,0000 P2INTE P2 口中断使能寄存器 7EFD02H P27INTE P26INTE P25INTE P24INTE P23INTE P22INTE P21INTE P20INTE 0000,0000 P3INTE P3 口中断使能寄存器 7EFD03H P37INTE P36INTE P35INTE P34INTE P33INTE P32INTE P31INTE P30INTE 0000,0000 P4INTE P4 口中断使能寄存器 7EFD04H P47INTE P46INTE P45INTE P44INTE P43INTE P42INTE P41INTE P40INTE 0000,0000 P5INTE P5 口中断使能寄存器 7EFD05H - P55INTE P54INTE P53INTE P52INTE P51INTE P50INTE xx00,0000 P6INTE P6 口中断使能寄存器 7EFD06H P67INTE P66INTE P65INTE P64INTE P63INTE P62INTE P61INTE P60INTE 0000,0000 P7INTE P7 口中断使能寄存器 7EFD07H P77INTE P76INTE P75INTE P74INTE P73INTE P72INTE P71INTE P70INTE 0000,0000 P0INTF P0 口中断标志寄存器 7EFD10H P07INTF P06INTF P05INTF P04INTF P03INTF P02INTF P01INTF P00INTF 0000,0000 P1INTF P1 口中断标志寄存器 7EFD11H P17INTF P16INTF P15INTF P14INTF P13INTF P12INTF P11INTF P10INTF 0000,0000 P2INTF P2 口中断标志寄存器 7EFD12H P27INTF P26INTF P25INTF P24INTF P23INTF P22INTF P21INTF P20INTF 0000,0000 P3INTF P3 口中断标志寄存器 7EFD13H P37INTF P36INTF P35INTF P34INTF P33INTF P32INTF P31INTF P30INTF 0000,0000 P4INTF P4 口中断标志寄存器 7EFD14H P47INTF P46INTF P45INTF P44INTF P43INTF P42INTF P41INTF P40INTF 0000,0000 P5INTF P5 口中断标志寄存器 7EFD15H - P55INTF P54INTF P53INTF P52INTF P51INTF P50INTF xx00,0000 P6INTF P6 口中断标志寄存器 7EFD16H P67INTF P66INTF P65INTF P64INTF P63INTF P62INTF P61INTF P60INTF 0000,0000 P7INTF P7 口中断标志寄存器 7EFD17H P77INTF P76INTF P75INTF P74INTF P73INTF P72INTF P71INTF P70INTF 0000,0000 P0IM0 P0 口中断模式寄存器 0 7EFD20H P07IM0 P06IM0 P05IM0 P04IM0 P03IM0 P02IM0 P01IM0 P00IM0 0000,0000 P1IM0 P1 口中断模式寄存器 0 7EFD21H P17IM0 P16IM0 P15IM0 P14IM0 P13IM0 P12IM0 P11IM0 P10IM0 0000,0000 P2IM0 P2 口中断模式寄存器 0 7EFD22H P27IM0 P26IM0 P25IM0 P24IM0 P23IM0 P22IM0 P21IM0 P20IM0 0000,0000 P3IM0 P3 口中断模式寄存器 0 7EFD23H P37IM0 P36IM0 P35IM0 P34IM0 P33IM0 P32IM0 P31IM0 P30IM0 0000,0000 P4IM0 P4 口中断模式寄存器 0 7EFD24H P47IM0 P46IM0 P45IM0 P44IM0 P43IM0 P42IM0 P41IM0 P40IM0 0000,0000 P5IM0 P5 口中断模式寄存器 0 7EFD25H - - P55IM0 P54IM0 P53IM0 P52IM0 P51IM0 P50IM0 xx00,0000 P6IM0 P6 口中断模式寄存器 0 7EFD26H P67IM0 P66IM0 P65IM0 P64IM0 P63IM0 P62IM0 P61IM0 P60IM0 0000,0000 P7IM0 P7 口中断模式寄存器 0 7EFD27H P77IM0 P76IM0 P75IM0 P74IM0 P73IM0 P72IM0 P71IM0 P70IM0 0000,0000 P0IM1 P0 口中断模式寄存器 1 7EFD30H P07IM1 P06IM1 P05IM1 P04IM1 P03IM1 P02IM1 P01IM1 P00IM1 0000,0000 深圳国芯人工智能有限公司 - - 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 279 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P1IM1 P1 口中断模式寄存器 1 7EFD31H P17IM1 P16IM1 P15IM1 P14IM1 P13IM1 P12IM1 P11IM1 P10IM1 0000,0000 P2IM1 P2 口中断模式寄存器 1 7EFD32H P27IM1 P26IM1 P25IM1 P24IM1 P23IM1 P22IM1 P21IM1 P20IM1 0000,0000 P3IM1 P3 口中断模式寄存器 1 7EFD33H P37IM1 P36IM1 P35IM1 P34IM1 P33IM1 P32IM1 P31IM1 P30IM1 0000,0000 P4IM1 P4 口中断模式寄存器 1 7EFD34H P47IM1 P46IM1 P45IM1 P44IM1 P43IM1 P42IM1 P41IM1 P40IM1 0000,0000 P5IM1 P5 口中断模式寄存器 1 7EFD35H - - P55IM1 P54IM1 P53IM1 P52IM1 P51IM1 P50IM1 xx00,0000 P6IM1 P6 口中断模式寄存器 1 7EFD36H P67IM1 P66IM1 P65IM1 P64IM1 P63IM1 P62IM1 P61IM1 P60IM1 0000,0000 P7IM1 P7 口中断模式寄存器 1 7EFD37H P77IM1 P76IM1 P75IM1 P74IM1 P73IM1 P72IM1 P71IM1 P70IM1 0000,0000 PINIPL I/O 口中断优先级低寄存器 7EFD40H P7IP P6IP P5IP P4IP P3IP P2IP P1IP P0IP 0000,0000 PINIPH I/O 口中断优先级高寄存器 7EFD41H P7IPH P6IPH P5IPH P4IPH P3IPH P2IPH P1IPH P0IPH 0000,0000 P0WKUE P0 口中断唤醒使能寄存器 7EFD42H P07WKUE P06WKUE P05WKUE P04WKUE P03WKUE P02WKUE P01WKUE P00WKUE 0000,0000 P1WKUE P1 口中断唤醒使能寄存器 7EFD43H P17WKUE P16WKUE P15WKUE P14WKUE P13WKUE P12WKUE P11WKUE P10WKUE 0000,0000 P2WKUE P2 口中断唤醒使能寄存器 7EFD44H P27WKUE P26WKUE P25WKUE P24WKUE P23WKUE P22WKUE P21WKUE P20WKUE 0000,0000 P3WKUE P3 口中断唤醒使能寄存器 7EFD45H P37WKUE P36WKUE P35WKUE P34WKUE P33WKUE P32WKUE P31WKUE P30WKUE 0000,0000 P4WKUE P4 口中断唤醒使能寄存器 7EFD46H P47WKUE P46WKUE P45WKUE P44WKUE P43WKUE P42WKUE P41WKUE P40WKUE 0000,0000 P5WKUE P5 口中断唤醒使能寄存器 7EFD47H P6WKUE P6 口中断唤醒使能寄存器 7EFD60H P67WKUE P66WKUE P65WKUE P64WKUE P63WKUE P62WKUE P61WKUE P60WKUE 0000,0000 P7WKUE P7 口中断唤醒使能寄存器 7EFD61H P77WKUE P76WKUE P75WKUE P74WKUE P73WKUE P72WKUE P71WKUE P70WKUE 0000,0000 13.1.1 - - P55WKUE P54WKUE P53WKUE P52WKUE P51WKUE P50WKUE xx00,0000 端口中断使能寄存器(PxINTE) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0INTE 7EFD00H P07INTE P06INTE P05INTE P04INTE P03INTE P02INTE P01INTE P00INTE P1INTE 7EFD01H P17INTE P16INTE P15INTE P14INTE P13INTE P12INTE P11INTE P10INTE P2INTE 7EFD02H P27INTE P26INTE P25INTE P24INTE P23INTE P22INTE P21INTE P20INTE P3INTE 7EFD03H P37INTE P36INTE P35INTE P34INTE P33INTE P32INTE P31INTE P30INTE P4INTE 7EFD04H P47INTE P46INTE P45INTE P44INTE P43INTE P42INTE P41INTE P40INTE P5INTE 7EFD05H - - P55INTE P54INTE P53INTE P52INTE P51INTE P50INTE P6INTE 7EFD06H P67INTE P66INTE P65INTE P64INTE P63INTE P62INTE P61INTE P60INTE P7INTE 7EFD07H P77INTE P76INTE P75INTE P74INTE P73INTE P72INTE P71INTE P70INTE PnINTE.x:端口中断使能控制位(n=0~7,x=0~7) 0:关闭 Pn.x 口中断功能 1:使能 Pn.x 口中断功能 13.1.2 端口中断标志寄存器(PxINTF) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0INTF 7EFD10H P07INTF P06INTF P05INTF P04INTF P03INTF P02INTF P01INTF P00INTF P1INTF 7EFD11H P17INTF P16INTF P15INTF P14INTF P13INTF P12INTF P11INTF P10INTF P2INTF 7EFD12H P27INTF P26INTF P25INTF P24INTF P23INTF P22INTF P21INTF P20INTF P3INTF 7EFD13H P37INTF P36INTF P35INTF P34INTF P33INTF P32INTF P31INTF P30INTF P4INTF 7EFD14H P47INTF P46INTF P45INTF P44INTF P43INTF P42INTF P41INTF P40INTF P5INTF 7EFD15H - - P55INTF P54INTF P53INTF P52INTF P51INTF P50INTF P6INTF 7EFD16H P67INTF P66INTF P65INTF P64INTF P63INTF P62INTF P61INTF P60INTF 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 280 - STC32G 系列技术手册 P7INTF 官方网站: www.STCMCUDATA.com 7EFD17H P77INTF P76INTF P75INTF 技术支持: 19864585985 P74INTF P73INTF P72INTF 选型顾问: 13922805190 P71INTF P70INTF PnINTF.x:端口中断请求标志位(n=0~7,x=0~7) 0:Pn.x 口没有中断请求 1:Pn.x 口有中断请求,若使能中断,则会进入中断服务程序。标志位需软件清 0。 13.1.3 端口中断模式配置寄存器(PxIM0,PxIM1) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0IM0 7EFD20H P07IM0 P06IM0 P05IM0 P04IM0 P03IM0 P02IM0 P01IM0 P00IM0 P0IM1 7EFD30H P07IM1 P06IM1 P05IM1 P04IM1 P03IM1 P02IM1 P01IM1 P00IM1 P1IM0 7EFD21H P17IM0 P16IM0 P15IM0 P14IM0 P13IM0 P12IM0 P11IM0 P10IM0 P1IM1 7EFD31H P17IM1 P16IM1 P15IM1 P14IM1 P13IM1 P12IM1 P11IM1 P10IM1 P2IM0 7EFD22H P27IM0 P26IM0 P25IM0 P24IM0 P23IM0 P22IM0 P21IM0 P20IM0 P2IM1 7EFD32H P27IM1 P26IM1 P25IM1 P24IM1 P23IM1 P22IM1 P21IM1 P20IM1 P3IM0 7EFD23H P37IM0 P36IM0 P35IM0 P34IM0 P33IM0 P32IM0 P31IM0 P30IM0 P3IM1 7EFD33H P37IM1 P36IM1 P35IM1 P34IM1 P33IM1 P32IM1 P31IM1 P30IM1 P4IM0 7EFD24H P47IM0 P46IM0 P45IM0 P44IM0 P43IM0 P42IM0 P41IM0 P40IM0 P4IM1 7EFD34H P47IM1 P46IM1 P45IM1 P44IM1 P43IM1 P42IM1 P41IM1 P40IM1 P5IM0 7EFD25H - - P55IM0 P54IM0 P53IM0 P52IM0 P51IM0 P50IM0 P5IM1 7EFD35H - - P55IM1 P54IM1 P53IM1 P52IM1 P51IM1 P50IM1 P6IM0 7EFD26H P67IM0 P66IM0 P65IM0 P64IM0 P63IM0 P62IM0 P61IM0 P60IM0 P6IM1 7EFD36H P67IM1 P66IM1 P65IM1 P64IM1 P63IM1 P62IM1 P61IM1 P60IM1 P7IM0 7EFD27H P77IM0 P76IM0 P75IM0 P74IM0 P73IM0 P72IM0 P71IM0 P70IM0 P7IM1 7EFD37H P77IM1 P76IM1 P75IM1 P74IM1 P73IM1 P72IM1 P71IM1 P70IM1 配置端口的模式 PnIM1.x PnIM0.x Pn.x 口中断模式 0 0 下降沿中断 0 1 上升沿中断 1 0 低电平中断 1 1 高电平中断 13.1.4 端口中断优先级控制寄存器(PINIPL,PINIPH) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PINIPL 7EFD60H P7IP P6IP P5IP P4IP P3IP P2IP P1IP P0IP PINIPH 7EFD61H P7IPH P6IPH P5IPH P4IPH P3IPH P2IPH P1IPH P0IPH PxIPH,PxIP:Px口中断优先级控制位 00:Px 口中断优先级为 0 级(最低级) 01:Px 口中断优先级为 1 级(较低级) 10:Px 口中断优先级为 2 级(较高级) 11:Px 口中断优先级为 3 级(最高级) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 281 - STC32G 系列技术手册 13.1.5 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 端口中断掉电唤醒使能寄存器(PxWKUE) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 P0WKUE 7EFD40H P07WKUE P06WKUE P05WKUE P04WKUE P03WKUE P02WKUE P01WKUE P00WKUE P1WKUE 7EFD41H P17WKUE P16WKUE P15WKUE P14WKUE P13WKUE P12WKUE P11WKUE P10WKUE P2WKUE 7EFD42H P27WKUE P26WKUE P25WKUE P24WKUE P23WKUE P22WKUE P21WKUE P20WKUE P3WKUE 7EFD43H P37WKUE P36WKUE P35WKUE P34WKUE P33WKUE P32WKUE P31WKUE P30WKUE P4WKUE 7EFD44H P47WKUE P46WKUE P45WKUE P44WKUE P43WKUE P42WKUE P41WKUE P40WKUE P5WKUE 7EFD45H - - P55WKUE P54WKUE P53WKUE P52WKUE P51WKUE P50WKUE P6WKUE 7EFD46H P67WKUE P66WKUE P65WKUE P64WKUE P63WKUE P62WKUE P61WKUE P60WKUE P7WKUE 7EFD47H P77WKUE P76WKUE P75WKUE P74WKUE P73WKUE P72WKUE P71WKUE P70WKUE PnxWKUE:端口中断掉电唤醒使能控制位(n=0~7,x=0~7) 0:关闭 Pn.x 口中断掉电唤醒功能 1:使能 Pn.x 口中断掉电唤醒功能 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 282 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 13.2 范例程序 13.2.1 P0 口下降沿中断 技术支持: 19864585985 选型顾问: 13922805190 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" //头文件见下载软件 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //下降沿中断 P0IM0 = 0x00; P0IM1 = 0x00; P0INTE = 0xff; //使能 P0 口中断 EA = 1; while (1); } //由于中断向量大于 31,在 KEIL 中无法直接编译 //必须借用第 13 号中断入口地址 void common_isr() interrupt 13 { unsigned char intf; intf = P0INTF; if (intf) { P0INTF = 0x00; if (intf & 0x01) { //P0.0 口中断 } if (intf & 0x02) { //P0.1 口中断 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 283 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 } if (intf & 0x04) { //P0.2 口中断 } if (intf & 0x08) { //P0.3 口中断 } if (intf & 0x10) { //P0.4 口中断 } if (intf & 0x20) { //P0.5 口中断 } if (intf & 0x40) { //P0.6 口中断 } if (intf & 0x80) { //P0.7 口中断 } } } // ISR.ASM //将下面的代码保存为 ISP.ASM,然后将文件加入到项目中即可 CSEG JMP AT 012BH P0INT_ISR ;P0 口中断入口地址 JMP END 006BH ;借用 13 号中断的入口地址 P0INT_ISR: 13.2.2 P1 口上升沿中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 284 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //上升沿中断 P1IM0 = 0xff; P1IM1 = 0x00; P1INTE = 0xff; //使能 P1 口中断 EA = 1; while (1); } //由于中断向量大于 31,在 KEIL 中无法直接编译 //必须借用第 13 号中断入口地址 void common_isr() interrupt 13 { unsigned char intf; intf = P1INTF; if (intf) { P1INTF = 0x00; if (intf & 0x01) { //P1.0 口中断 } if (intf & 0x02) { //P1.1 口中断 } if (intf & 0x04) { //P1.2 口中断 } if (intf & 0x08) { //P1.3 口中断 } if (intf & 0x10) { //P1.4 口中断 } if (intf & 0x20) { //P1.5 口中断 } if (intf & 0x40) { //P1.6 口中断 } if (intf & 0x80) { 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 285 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 //P1.7 口中断 } } } // ISR.ASM //将下面的代码保存为 ISP.ASM,然后将文件加入到项目中即可 CSEG JMP AT 0133H P1INT_ISR ;P1 口中断入口地址 JMP END 006BH ;借用 13 号中断的入口地址 P1INT_ISR: 13.2.3 P2 口低电平中断 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" //头文件见下载软件 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //低电平中断 P2IM0 = 0x00; P2IM1 = 0xff; P2INTE = 0xff; //使能 P2 口中断 EA = 1; while (1); } //由于中断向量大于 31,在 KEIL 中无法直接编译 //必须借用第 13 号中断入口地址 void common_isr() interrupt 13 { 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 286 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 unsigned char intf; intf = P2INTF; if (intf) { P2INTF = 0x00; if (intf & 0x01) { //P2.0 口中断 } if (intf & 0x02) { //P2.1 口中断 } if (intf & 0x04) { //P2.2 口中断 } if (intf & 0x08) { //P0.3 口中断 } if (intf & 0x10) { //P2.4 口中断 } if (intf & 0x20) { //P2.5 口中断 } if (intf & 0x40) { //P2.6 口中断 } if (intf & 0x80) { //P2.7 口中断 } } } // ISR.ASM //将下面的代码保存为 ISP.ASM,然后将文件加入到项目中即可 CSEG JMP AT 013BH P2INT_ISR ;P2 口中断入口地址 JMP END 006BH ;借用 13 号中断的入口地址 P2INT_ISR: 13.2.4 P3 口高电平中断 //测试工作频率为 11.0592MHz 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 287 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" 技术支持: 19864585985 选型顾问: 13922805190 //头文件见下载软件 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //高电平中断 P3IM0 = 0xff; P3IM1 = 0xff; P3INTE = 0xff; //使能 P3 口中断 EA = 1; while (1); } //由于中断向量大于 31,在 KEIL 中无法直接编译 //必须借用第 13 号中断入口地址 void common_isr() interrupt 13 { unsigned char intf; intf = P3INTF; if (intf) { P3INTF = 0x00; if (intf & 0x01) { //P3.0 口中断 } if (intf & 0x02) { //P3.1 口中断 } if (intf & 0x04) { //P3.2 口中断 } if (intf & 0x08) { //P3.3 口中断 } if (intf & 0x10) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 288 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 { //P3.4 口中断 } if (intf & 0x20) { //P3.5 口中断 } if (intf & 0x40) { //P3.6 口中断 } if (intf & 0x80) { //P3.7 口中断 } } } // ISR.ASM //将下面的代码保存为 ISP.ASM,然后将文件加入到项目中即可 CSEG JMP AT 0143H P3INT_ISR ;P3 口中断入口地址 JMP END 006BH ;借用 13 号中断的入口地址 P3INT_ISR: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 289 - STC32G 系列技术手册 14 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器/计数器(24 位定时器,8 位预分频 +16 位自动重装载) STC32G 系列单片机内部设置了 5 个 24 位定时器/计数器(8 位预分频+16 位计数)。5 个 16 位定 时器 T0、T1、T2、T3 和 T4 都具有计数方式和定时方式两种工作方式。对定时器/计数器 T0 和 T1,用 它们在特殊功能寄存器 TMOD 中相对应的控制位 C/T 来选择 T0 或 T1 为定时器还是计数器。对定时器 /计数器 T2,用特殊功能寄存器 AUXR 中的控制位 T2_C/T 来选择 T2 为定时器还是计数器。对定时器/ 计数器 T3,用特殊功能寄存器 T4T3M 中的控制位 T3_C/T 来选择 T3 为定时器还是计数器。对定时器/ 计数器 T4,用特殊功能寄存器 T4T3M 中的控制位 T4_C/T 来选择 T4 为定时器还是计数器。定时器/计 数器的核心部件是一个加法计数器,其本质是对脉冲进行计数。只是计数脉冲来源不同:如果计数脉冲 来自系统时钟,则为定时方式,此时定时器/计数器每 12 个时钟或者每 1 个时钟得到一个计数脉冲,计 数值加 1;如果计数脉冲来自单片机外部引脚,则为计数方式,每来一个脉冲加 1。 当定时器/计数器 T0、T1 及 T2 工作在定时模式时,特殊功能寄存器 AUXR 中的 T0x12、T1x12 和 T2x12 分别决定是系统时钟/12 还是系统时钟/1(不分频)后让 T0、T1 和 T2 进行计数。当定时器/计数 器 T3 和 T4 工作在定时模式时,特殊功能寄存器 T4T3M 中的 T3x12 和 T4x12 分别决定是系统时钟/12 还是系统时钟/1(不分频)后让 T3 和 T4 进行计数。当定时器/计数器工作在计数模式时,对外部脉冲 计数不分频。 定时器/计数器 0 有 4 种工作模式:模式 0(16 位自动重装载模式),模式 1(16 位不可重装载模 式),模式 2(8 位自动重装模式),模式 3(不可屏蔽中断的 16 位自动重装载模式)。定时器/计数器 1 除模式 3 外,其他工作模式与定时器/计数器 0 相同。T1 在模式 3 时无效,停止计数。定时器 T2 的工 作模式固定为 16 位自动重装载模式。T2 可以当定时器使用,也可以当串口的波特率发生器和可编程时 钟输出。定时器 3、定时器 4 与定时器 T2 一样,它们的工作模式固定为 16 位自动重装载模式。T3/T4 可以当定时器使用,也可以当串口的波特率发生器和可编程时钟输出。 14.1 定时器的相关寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 TCON 定时器控制寄存器 88H TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 0000,0000 TMOD 定时器模式寄存器 89H GATE C/T M1 M0 GATE C/T M1 M0 0000,0000 TL0 定时器 0 低 8 位寄存器 8AH 0000,0000 TL1 定时器 1 低 8 位寄存器 8BH 0000,0000 TH0 定时器 0 高 8 位寄存器 8CH 0000,0000 TH1 定时器 1 高 8 位寄存器 8DH 0000,0000 AUXR 辅助寄存器 1 8EH T0x12 T1x12 UART_M0x6 T2R T2_C/T T2x12 EXTRAM S1BRT 0000,0001 INTCLKO 中断与时钟输出控制寄存器 8FH - EX4 EX3 EX2 - T2CLKO T1CLKO T0CLKO x000,x000 WKTCL 掉电唤醒定时器低字节 AAH WKTCH 掉电唤醒定时器高字节 ABH WKTEN T4T3M 定时器 4/3 控制寄存器 DDH T4R T4H 定时器 4 高字节 D2H 0000,0000 T4L 定时器 4 低字节 D3H 0000,0000 深圳国芯人工智能有限公司 1111,1111 0111,1111 T4_C/T T4x12 国内分销商电话: 0513-5501 2928/2929/2966 T4CLKO T3R T3_C/T T3x12 T3CLKO 0000,0000 传真: 0513-5501 2926/2956/2947 - 290 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 T3H 定时器 3 高字节 D4H 0000,0000 T3L 定时器 3 低字节 D5H 0000,0000 T2H 定时器 2 高字节 D6H 0000,0000 T2L 定时器 2 低字节 D7H 0000,0000 符号 描述 位地址与符号 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 TM0PS 定时器 0 时钟预分频寄存器 7EFEA0H 0000,0000 TM1PS 定时器 1 时钟预分频寄存器 7EFEA1H 0000,0000 TM2PS 定时器 2 时钟预分频寄存器 7EFEA2H 0000,0000 TM3PS 定时器 3 时钟预分频寄存器 7EFEA3H 0000,0000 TM4PS 定时器 4 时钟预分频寄存器 7EFEA4H 0000,0000 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 291 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 14.2 定时器 0/1 14.2.1 定时器 0/1 控制寄存器(TCON) 选型顾问: 13922805190 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 TCON 88H TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TF1:T1溢出中断标志。T1被允许计数以后,从初值开始加1计数。当产生溢出时由硬件将TF1位置“1”, 并向CPU请求中断,一直保持到CPU响应中断时,才由硬件清“0”(也可由查询软件清“0”)。 TR1:定时器T1的运行控制位。该位由软件置位和清零。当GATE(TMOD.7)=0,TR1=1时就允许T1 开始计数,TR1=0时禁止T1计数。当GATE(TMOD.7)=1,TR1=1且INT1输入高电平时,才允 许T1计数。 TF0:T0溢出中断标志。T0被允许计数以后,从初值开始加1计数,当产生溢出时,由硬件置“1”TF0, 向CPU请求中断,一直保持CPU响应该中断时,才由硬件清0(也可由查询软件清0)。 TR0:定时器T0的运行控制位。该位由软件置位和清零。当GATE(TMOD.3)=0,TR0=1时就允许T0 开始计数,TR0=0时禁止T0计数。当GATE(TMOD.3)=1,TR0=1且INT0输入高电平时,才允 许T0计数,TR0=0时禁止T0计数。 IE1:外部中断1请求源(INT1/P3.3)标志。IE1=1,外部中断向CPU请求中断,当CPU响应该中断时由 硬件清“0”IE1。 IT1:外部中断源1触发控制位。IT1=0,上升沿或下降沿均可触发外部中断1。IT1=1,外部中断1程控为 下降沿触发方式。 IE0:外部中断0请求源(INT0/P3.2)标志。IE0=1外部中断0向CPU请求中断,当CPU响应外部中断时, 由硬件清“0”IE0(边沿触发方式)。 IT0:外部中断源0触发控制位。IT0=0,上升沿或下降沿均可触发外部中断0。IT0=1,外部中断0程控为 下降沿触发方式。 定时器 0/1 模式寄存器(TMOD) 14.2.2 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 TMOD 89H T1_GATE T1_C/T T1_M1 T1_M0 T0_GATE T0_C/T T0_M1 T0_M0 T1_GATE:控制定时器1,置1时只有在INT1脚为高及TR1控制位置1时才可打开定时器/计数器1。 T0_GATE:控制定时器0,置1时只有在INT0脚为高及TR0控制位置1时才可打开定时器/计数器0。 T1_C/T:控制定时器1用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作 计数器(对引脚T1/P3.5外部脉冲进行计数)。 T0_C/T:控制定时器0用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作 计数器(对引脚T0/P3.4外部脉冲进行计数)。 T1_M1/T1_M0:定时器定时器/计数器1模式选择 T1_M1 T1_M0 0 0 定时器/计数器1工作模式 16位自动重载模式 当[TH1,TL1]中的16位计数值溢出时,系统会自动将内部16位 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 292 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 重载寄存器中的重载值装入[TH1,TL1]中。 16位不自动重载模式 0 1 当[TH1,TL1]中的16位计数值溢出时,定时器1将从0开始计数 8位自动重载模式 1 当TL1中的8位计数值溢出时,系统会自动将TH1中的重载值 0 装入TL1中。 1 T1停止工作 1 T0_M1/T0_M0:定时器定时器/计数器0模式选择 T0_M1 定时器/计数器0工作模式 T0_M0 16位自动重载模式 0 当[TH0,TL0]中的16位计数值溢出时,系统会自动将内部16位 0 重载寄存器中的重载值装入[TH0,TL0]中。 16位不自动重载模式 0 1 当[TH0,TL0]中的16位计数值溢出时,定时器0将从0开始计数 8位自动重载模式 1 当TL0中的8位计数值溢出时,系统会自动将TH0中的重载值 0 装入TL0中。 不可屏蔽中断的16位自动重载模式 与模式0相同,不可屏蔽中断,中断优先级最高,高于其他所 1 1 有中断的优先级,并且不可关闭,可用作操作系统的系统节拍 定时器,或者系统监控定时器。 14.2.3 定时器 0 模式 0(16 位自动重装载模式) 此模式下定时器/计数器 0 作为可自动重装载的 16 位计数器,如下图所示: ÷12 SYSclk AUXR.7/T0x12=0 TM0PS TF0 C/T=0 ÷1 Interrupt Toggle TH0 (8bits) AUXR.7/T0x12=1 C/T=1 T0 Pin TL0 (8bits) control T0CLKO TR0 GATE INT0 T0CLKO P3.5 RL_TH0 (8bits) RL_TL0 (8bits) 定时器/计数器 0 的模式 0:16 位自动重装载模式 当 GATE=0(TMOD.3)时,如 TR0=1,则定时器计数。GATE=1 时,允许由外部输入 INT0 控制定时器 0,这样可实现脉宽测量。TR0 为 TCON 寄存器内的控制位,TCON 寄存器各位的具体功能描述见上节 TCON 寄存器的介绍。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 293 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 当 C/T=0 时,多路开关连接到系统时钟的分频输出,T0 对内部系统时钟计数,T0 工作在定时方式。当 C/T=1 时,多路开关连接到外部脉冲输入 P3.4/T0,即 T0 工作在计数方式。 STC 单片机的定时器 0 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同; 另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T0 的速率由特殊功能寄存器 AUXR 中的 T0x12 决定,如果 T0x12=0,T0 则工作在 12T 模式;如果 T0x12=1,T0 则工作在 1T 模式 定时器 0 有两个隐藏的寄存器 RL_TH0 和 RL_TL0。RL_TH0 与 TH0 共有同一个地址,RL_TL0 与 TL0 共有同一个地址。当 TR0=0 即定时器/计数器 0 被禁止工作时,对 TL0 写入的内容会同时写入 RL_TL0,对 TH0 写入的内容也会同时写入 RL_TH0。当 TR0=1 即定时器/计数器 0 被允许工作时,对 TL0 写入内容,实 际上不是写入当前寄存器 TL0 中,而是写入隐藏的寄存器 RL_TL0 中,对 TH0 写入内容,实际上也不是写 入当前寄存器 TH0 中,而是写入隐藏的寄存器 RL_TH0,这样可以巧妙地实现 16 位重装载定时器。当读 TH0 和 TL0 的内容时,所读的内容就是 TH0 和 TL0 的内容,而不是 RL_TH0 和 RL_TL0 的内容。 当定时器 0 工作在模式 0(TMOD[1:0]/[M1,M0]=00B)时,[TH0,TL0]的溢出不仅置位 TF0,而且会自 动将[RL_TH0,RL_TL0]的内容重新装入[TH0,TL0]。 当 T0CLKO/INT_CLKO.0=1 时,P3.5/T1 管脚配置为定时器 0 的时钟输出 T0CLKO。输出时钟频率为 T0 溢出率/2。 如果 C/T=0,定时器/计数器 T0 对内部系统时钟计数,则: T0 工作在 1T 模式(AUXR.7/T0x12=1)时的输出时钟频率 = (SYSclk)/(TM0PS+1)/(65536-[RL_TH0, RL_TL0])/2 T0 工作在 12T 模式(AUXR.7/T0x12=0)时的输出时钟频率 = (SYSclk)/(TM0PS+1)/12/(65536-[RL_TH0, RL_TL0])/2 如果 C/T=1,定时器/计数器 T0 是对外部脉冲输入(P3.4/T0)计数,则: 输出时钟频率 = (T0_Pin_CLK) / (65536-[RL_TH0, RL_TL0])/2 14.2.4 定时器 0 模式 1(16 位不可重装载模式) 此模式下定时器/计数器 0 工作在 16 位不可重装载模式,如下图所示: ÷12 SYSclk AUXR.7/T0x12=0 TM0PS TF0 C/T=0 ÷1 Interrupt Toggle TH0 (8bits) AUXR.7/T0x12=1 C/T=1 T0 Pin TL0 (8bits) T0CLKO P3.5 control T0CLKO TR0 GATE INT0 定时器/计数器 0 的模式 1:16 位不可重装载模式 此模式下,定时器/计数器 0 配置为 16 位不可重装载模式,由 TL0 的 8 位和 TH0 的 8 位所构成。TL0 的 8 位溢出向 TH0 进位,TH0 计数溢出置位 TCON 中的溢出标志位 TF0。 当 GATE=0(TMOD.3)时,如 TR0=1,则定时器计数。GATE=1 时,允许由外部输入 INT0 控制定时器 0, 这样可实现脉宽测量。TR0 为 TCON 寄存器内的控制位,TCON 寄存器各位的具体功能描述见上节 TCON 寄存器的介绍。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 294 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 当 C/T=0 时,多路开关连接到系统时钟的分频输出,T0 对内部系统时钟计数,T0 工作在定时方式。当 C/T=1 时,多路开关连接到外部脉冲输入 P3.4/T0,即 T0 工作在计数方式。 STC 单片机的定时器 0 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同; 另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T0 的速率由特殊功能寄存器 AUXR 中的 T0x12 决定,如果 T0x12=0,T0 则工作在 12T 模式;如果 T0x12=1,T0 则工作在 1T 模式。 14.2.5 定时器 0 模式 2(8 位自动重装载模式) 此模式下定时器/计数器 0 作为可自动重装载的 8 位计数器,如下图所示: ÷12 SYSclk AUXR.7/T0x12=0 TM0PS TF0 C/T=0 ÷1 Interrupt Toggle TL0 (8bits) AUXR.7/T0x12=1 C/T=1 T0 Pin T0CLKO P3.5 control T0CLKO TR0 GATE INT0 TH0 (8bits) 定时器/计数器 0 的模式 2:8 位自动重装载模式 TL0 的溢出不仅置位 TF0,而且将 TH0 的内容重新装入 TL0,TH0 内容由软件预置,重装时 TH0 内容 不变。 当 T0CLKO/INT_CLKO.0=1 时,P3.5/T1 管脚配置为定时器 0 的时钟输出 T0CLKO。输出时钟频率为 T0 溢出率/2。 如果 C/T=0,定时器/计数器 T0 对内部系统时钟计数,则: T0 工作在 1T 模式(AUXR.7/T0x12=1)时的输出时钟频率 = (SYSclk)/(TM0PS+1)/(256-TH0)/2 T0 工作在 12T 模式(AUXR.7/T0x12=0)时的输出时钟频率 = (SYSclk)/(TM0PS+1)/12/(256-TH0)/2 如果 C/T=1,定时器/计数器 T0 是对外部脉冲输入(P3.4/T0)计数,则: 输出时钟频率 = (T0_Pin_CLK) / (256-TH0)/2 14.2.6 定时器 0 模式 3(不可屏蔽中断 16 位自动重装载,实时操 作系统节拍器) 对定时器/计数器 0,其工作模式模式 3 与工作模式 0 是一样的(下图定时器模式 3 的原理图,与工作模 式 0 是一样的)。唯一不同的是:当定时器/计数器 0 工作在模式 3 时,只需允许 ET0/IE.1(定时器/计数器 0 中断允许位),不需要允许 EA/IE.7(总中断使能位)就能打开定时器/计数器 0 的中断,此模式下的定时器/计数 器 0 中断与总中断使能位 EA 无关,一旦工作在模式 3 下的定时器/计数器 0 中断被打开(ET0=1),那么该中 断是不可屏蔽的,该中断的优先级是最高的,即该中断不能被任何中断所打断,而且该中断打开后既不受 EA/IE.7 控制也不再受 ET0 控制,当 EA=0 或 ET0=0 时都不能屏蔽此中断。故将此模式称为不可屏蔽中断的 16 位自动重装载模式。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 295 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com ÷12 SYSclk 技术支持: 19864585985 AUXR.7/T0x12=0 TM0PS TF0 C/T=0 ÷1 选型顾问: 13922805190 Interrupt Toggle TH0 (8bits) AUXR.7/T0x12=1 C/T=1 T0 Pin TL0 (8bits) T0CLKO P3.5 control T0CLKO TR0 RL_TH0 (8bits) GATE INT0 RL_TL0 (8bits) 定时器/计数器 0 的模式 3:不可屏蔽中断的 16 位自动重装载模式 注意:当定时器/计数器 0 工作在模式 3(不可屏蔽中断的 16 位自动重装载模式)时,不需要允许 EA/IE.7(总中断使能位), 只需允许 ET0/IE.1(定时器/计数器 0 中断允许位)就能打开定时器/计数器 0 的中断,此模式下的定时器/计数器 0 中断与总中断使能位 EA 无关。一旦此模式下的定时器/计数器 0 中断被打开后,该定时器/计数器 0 中断优先级就 是最高的,它不能被其它任何中断所打断(不管是比定时器/计数器 0 中断优先级低的中断还是比其优先级高的中 断,都不能打断此时的定时器/计数器 0 中断),而且该中断打开后既不受 EA/IE.7 控制也不再受 ET0 控制了,清 零 EA 或 ET0 都不能关闭此中断。 14.2.7 定时器 1 模式 0(16 位自动重装载模式) 此模式下定时器/计数器 1 作为可自动重装载的 16 位计数器,如下图所示: ÷12 SYSclk AUXR.6/T1x12=0 TM1PS TF1 C/T=0 ÷1 Interrupt Toggle TH1 (8bits) AUXR.6/T1x12=1 C/T=1 T1 Pin TL1 (8bits) P3.4 control T1CLKO TR1 GATE INT1 T1CLKO RL_TH1 (8bits) RL_TL1 (8bits) 定时器/计数器 1 的模式 0:16 位自动重装载模式 当 GATE=0(TMOD.7)时,如 TR1=1,则定时器计数。GATE=1 时,允许由外部输入 INT1 控制定时器 1,这样可实现脉宽测量。TR1 为 TCON 寄存器内的控制位,TCON 寄存器各位的具体功能描述见上节 TCON 寄存器的介绍。 当 C/T=0 时,多路开关连接到系统时钟的分频输出,T1 对内部系统时钟计数,T1 工作在定时方式。当 C/T=1 时,多路开关连接到外部脉冲输入 P3.5/T1,即 T1 工作在计数方式。 STC 单片机的定时器 1 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同; 另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T1 的速率由特殊功能寄存器 AUXR 中的 T1x12 决定,如果 T1x12=0,T1 则工作在 12T 模式;如果 T1x12=1,T1 则工作在 1T 模式 定时器 1 有两个隐藏的寄存器 RL_TH1 和 RL_TL1。RL_TH1 与 TH1 共有同一个地址,RL_TL1 与 TL1 共有同一个地址。当 TR1=0 即定时器/计数器 1 被禁止工作时,对 TL1 写入的内容会同时写入 RL_TL1,对 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 296 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 TH1 写入的内容也会同时写入 RL_TH1。当 TR1=1 即定时器/计数器 1 被允许工作时,对 TL1 写入内容,实 际上不是写入当前寄存器 TL1 中,而是写入隐藏的寄存器 RL_TL1 中,对 TH1 写入内容,实际上也不是写 入当前寄存器 TH1 中,而是写入隐藏的寄存器 RL_TH1,这样可以巧妙地实现 16 位重装载定时器。当读 TH1 和 TL1 的内容时,所读的内容就是 TH1 和 TL1 的内容,而不是 RL_TH1 和 RL_TL1 的内容。 当定时器 1 工作在模式 1(TMOD[5:4]/[M1,M0]=00B)时,[TH1,TL1]的溢出不仅置位 TF1,而且会自 动将[RL_TH1,RL_TL1]的内容重新装入[TH1,TL1]。 当 T1CLKO/INT_CLKO.1=1 时,P3.4/T0 管脚配置为定时器 1 的时钟输出 T1CLKO。输出时钟频率为 T1 溢出率/2。 如果 C/T=0,定时器/计数器 T1 对内部系统时钟计数,则: T1 工作在 1T 模式(AUXR.6/T1x12=1)时的输出时钟频率 = (SYSclk)/(TM1PS+1)/(65536-[RL_TH1, RL_TL1])/2 T1 工作在 12T 模式(AUXR.6/T1x12=0)时的输出时钟频率 = (SYSclk)/(TM1PS+1)/12/(65536-[RL_TH1, RL_TL1])/2 如果 C/T=1,定时器/计数器 T1 是对外部脉冲输入(P3.5/T1)计数,则: 输出时钟频率 = (T1_Pin_CLK) / (65536-[RL_TH1, RL_TL1])/2 14.2.8 定时器 1 模式 1(16 位不可重装载模式) 此模式下定时器/计数器 1 工作在 16 位不可重装载模式,如下图所示: ÷12 SYSclk AUXR.6/T1x12=0 TM1PS TF1 C/T=0 ÷1 Interrupt Toggle TH1 (8bits) AUXR.6/T1x12=1 C/T=1 T1 Pin TL1 (8bits) T1CLKO P3.4 control T1CLKO TR1 GATE INT1 定时器/计数器 1 的模式 1:16 位不可重装载模式 此模式下,定时器/计数器 1 配置为 16 位不可重装载模式,由 TL1 的 8 位和 TH1 的 8 位所构成。TL1 的 8 位溢出向 TH1 进位,TH1 计数溢出置位 TCON 中的溢出标志位 TF1。 当 GATE=0(TMOD.7)时,如 TR1=1,则定时器计数。GATE=1 时,允许由外部输入 INT1 控制定时器 1, 这样可实现脉宽测量。TR1 为 TCON 寄存器内的控制位,TCON 寄存器各位的具体功能描述见上节 TCON 寄存器的介绍。 当 C/T=0 时,多路开关连接到系统时钟的分频输出,T1 对内部系统时钟计数,T1 工作在定时方式。当 C/T=1 时,多路开关连接到外部脉冲输入 P3.5/T1,即 T1 工作在计数方式。 STC 单片机的定时器 1 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同; 另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T1 的速率由特殊功能寄存器 AUXR 中的 T1x12 决定,如果 T1x12=0,T1 则工作在 12T 模式;如果 T1x12=1,T1 则工作在 1T 模式。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 297 - STC32G 系列技术手册 14.2.9 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器 1 模式 2(8 位自动重装载模式) 此模式下定时器/计数器 1 作为可自动重装载的 8 位计数器,如下图所示: ÷12 SYSclk AUXR.6/T1x12=0 TM1PS TF1 C/T=0 ÷1 Interrupt Toggle TL1 (8bits) AUXR.6/T1x12=1 C/T=1 T1 Pin T1CLKO P3.4 control T1CLKO TR1 TH1 (8bits) GATE INT1 定时器/计数器 1 的模式 2:8 位自动重装载模式 TL1 的溢出不仅置位 TF1,而且将 TH1 的内容重新装入 TL1,TH1 内容由软件预置,重装时 TH1 内容 不变。 当 T1CLKO/INT_CLKO.1=1 时,P3.4/T0 管脚配置为定时器 1 的时钟输出 T1CLKO。输出时钟频率为 T1 溢出率/2。 如果 C/T=0,定时器/计数器 T1 对内部系统时钟计数,则: T1 工作在 1T 模式(AUXR.6/T1x12=1)时的输出时钟频率 = (SYSclk)/(TM1PS+1)/(256-TH1)/2 T1 工作在 12T 模式(AUXR.6/T1x12=0)时的输出时钟频率 = (SYSclk)/(TM1PS+1)/12/(256-TH1)/2 如果 C/T=1,定时器/计数器 T1 是对外部脉冲输入(P3.5/T1)计数,则: 输出时钟频率 = (T1_Pin_CLK) / (256-TH1)/2 14.2.10 定时器 0 计数寄存器(TL0,TH0) 符号 地址 TL0 8AH TH0 8CH B7 B6 B5 B4 B3 B2 B1 B0 当定时器/计数器0工作在16位模式(模式0、模式1、模式3)时,TL0和TH0组合成为一个16位寄存器, TL0为低字节,TH0为高字节。若为8位模式(模式2)时,TL0和TH0为两个独立的8位寄存器。 14.2.11 定时器 1 计数寄存器(TL1,TH1) 符号 地址 TL1 8BH TH1 8DH B7 B6 B5 B4 B3 B2 B1 B0 当定时器/计数器1工作在16位模式(模式0、模式1)时,TL1和TH1组合成为一个16位寄存器,TL1为低 字节,TH1为高字节。若为8位模式(模式2)时,TL1和TH1为两个独立的8位寄存器。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 298 - STC32G 系列技术手册 14.2.12 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 辅助寄存器 1(AUXR) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 AUXR 8EH T0x12 T1x12 UART_M0x6 T2R T2_C/T T2x12 EXTRAM S1BRT T0x12:定时器0速度控制位 0:12T 模式,即 CPU 时钟 12 分频(FOSC/12) 1:1T 模式,即 CPU 时钟不分频分频(FOSC/1) T1x12:定时器1速度控制位 0:12T 模式,即 CPU 时钟 12 分频(FOSC/12) 1:1T 模式,即 CPU 时钟不分频分频(FOSC/1) 14.2.13 中断与时钟输出控制寄存器(INTCLKO) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 INTCLKO 8FH - EX4 EX3 EX2 - T2CLKO T1CLKO T0CLKO T0CLKO:定时器0时钟输出控制 0:关闭时钟输出 1:使能 P3.5 口的是定时器 0 时钟输出功能 当定时器 0 计数发生溢出时,P3.5 口的电平自动发生翻转。 T1CLKO:定时器1时钟输出控制 0:关闭时钟输出 1:使能 P3.4 口的是定时器 1 时钟输出功能 当定时器 1 计数发生溢出时,P3.4 口的电平自动发生翻转。 14.2.14 定时器 0 的 8 位预分频寄存器(TM0PS) 符号 地址 TM0PS 7EFEA0H B7 B6 B5 B4 B3 B2 B1 B0 B2 B1 B0 定时器0的时钟 = 系统时钟SYSclk ÷ ( TM0PS + 1 ) 14.2.15 定时器 1 的 8 位预分频寄存器(TM1PS) 符号 地址 TM1PS 7EFEA1H B7 B6 B5 B4 B3 定时器1的时钟 = 系统时钟SYSclk ÷ ( TM1PS + 1 ) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 299 - STC32G 系列技术手册 14.2.16 官方网站: www.STCMCUDATA.com 选型顾问: 13922805190 定时器 0 计算公式 定时器模式 定时器速度 周期计算公式 1T 定时器周期 = 12T 定时器周期 = 1T 定时器周期 = 12T 定时器周期 = 1T 定时器周期 = 12T 定时器周期 = 65536 – [TH0, TL0] (自动重载) SYSclk/(TM0PS+1) 模式0/3 (16位自动重载) 65536 – [TH0, TL0] SYSclk/(TM0PS+1) ×12 (自动重载) 65536 – [TH0, TL0] (需软件装载) SYSclk/(TM0PS+1) 模式1 (16位不自动重载) 65536 – [TH0, TL0] SYSclk/(TM0PS+1) ×12 (需软件装载) 256 – TH0 (自动重载) SYSclk/(TM0PS+1) 模式2 (8位自动重载) 14.2.17 技术支持: 19864585985 256 – TH0 SYSclk/(TM0PS+1) ×12 (自动重载) 定时器 1 计算公式 定时器模式 定时器速度 周期计算公式 1T 定时器周期 = 12T 定时器周期 = 1T 定时器周期 = 12T 定时器周期 = 1T 定时器周期 = 12T 定时器周期 = SYSclk/(TM1PS+1) 模式0 (16位自动重载) 65536 – [TH1, TL1] SYSclk/(TM1PS+1) 65536 – [TH1, TL1] SYSclk/(TM1PS+1) 模式1 (16位不自动重载) 65536 – [TH1, TL1] SYSclk/(TM1PS+1) 256 – TH1 SYSclk/(TM1PS+1) 模式2 (8位自动重载) 深圳国芯人工智能有限公司 65536 – [TH1, TL1] 256 – TH1 SYSclk/(TM1PS+1) 国内分销商电话: 0513-5501 2928/2929/2966 (自动重载) ×12 (自动重载) (需软件装载) ×12 (需软件装载) (自动重载) ×12 (自动重载) 传真: 0513-5501 2926/2956/2947 - 300 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 14.3 定时器 2 14.3.1 辅助寄存器 1(AUXR) 技术支持: 19864585985 选型顾问: 13922805190 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 AUXR 8EH T0x12 T1x12 UART_M0x6 T2R T2_C/T T2x12 EXTRAM S1BRT TR2:定时器2的运行控制位 0:定时器 2 停止计数 1:定时器 2 开始计数 T2_C/T:控制定时器0用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作 计数器(对引脚T2/P1.2外部脉冲进行计数)。 T2x12:定时器2速度控制位 0:12T 模式,即 CPU 时钟 12 分频(FOSC/12) 1:1T 模式,即 CPU 时钟不分频分频(FOSC/1) 14.3.2 中断与时钟输出控制寄存器(INTCLKO) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 INTCLKO 8FH - EX4 EX3 EX2 - T2CLKO T1CLKO T0CLKO T2CLKO:定时器2时钟输出控制 0:关闭时钟输出 1:使能 P1.3 口的是定时器 2 时钟输出功能 当定时器 2 计数发生溢出时,P1.3 口的电平自动发生翻转。 14.3.3 定时器 2 计数寄存器(T2L,T2H) 符号 地址 T2L D7H T2H D6H B7 B6 B5 B4 B3 B2 B1 B0 定时器/计数器2的工作模式固定为16位重载模式,T2L和T2H组合成为一个16位寄存器,T2L为低字节, T2H为高字节。当[T2H,T2L]中的16位计数值溢出时,系统会自动将内部16位重载寄存器中的重载 值装入[T2H,T2L]中。 14.3.4 定时器 2 的 8 位预分频寄存器(TM2PS) 符号 地址 TM2PS FEA2H B7 B6 B5 B4 B3 B2 B1 B0 定时器2的时钟 = 系统时钟SYSclk ÷ ( TM2PS + 1 ) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 301 - STC32G 系列技术手册 14.3.5 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器 2 工作模式 定时器/计数器2的原理框图如下: ÷12 SYSclk AUXR.2/T2x12=0 TM2PS T2IF T2_C/T=0 ÷1 T2H (8bits) AUXR.2/T2x12=1 T2_C/T=1 T2 Pin Interrupt T2L (8bits) T2CLKO Toggle control T2CLKO T2R RL_T2H (8bits) RL_T2L (8bits) 定时器/计数器 2 的工作模式:16 位自动重装载模式 T2R/AUXR.4 为 AUXR 寄存器内的控制位,AUXR 寄存器各位的具体功能描述见上节 AUXR 寄存器的 介绍。 当 T2_C/T=0 时,多路开关连接到系统时钟输出,T2 对内部系统时钟计数,T2 工作在定时方式。当 T2_C/T=1 时,多路开关连接到外部脉冲输 T2,即 T2 工作在计数方式。 STC 单片机的定时器 2 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同; 另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T2 的速率由特殊功能寄存器 AUXR 中的 T2x12 决定,如果 T2x12=0,T2 则工作在 12T 模式;如果 T2x12=1,T2 则工作在 1T 模式 定时器 2 有两个隐藏的寄存器 RL_T2H 和 RL_T2L。RL_T2H 与 T2H 共有同一个地址,RL_T2L 与 T2L 共有同一个地址。当 T2R=0 即定时器/计数器 2 被禁止工作时,对 T2L 写入的内容会同时写入 RL_T2L,对 T2H 写入的内容也会同时写入 RL_T2H。当 T2R=1 即定时器/计数器 2 被允许工作时,对 T2L 写入内容,实 际上不是写入当前寄存器 T2L 中,而是写入隐藏的寄存器 RL_T2L 中,对 T2H 写入内容,实际上也不是写 入当前寄存器 T2H 中,而是写入隐藏的寄存器 RL_T2H,这样可以巧妙地实现 16 位重装载定时器。当读 T2H 和 T2L 的内容时,所读的内容就是 T2H 和 T2L 的内容,而不是 RL_T2H 和 RL_T2L 的内容。 [T2H,T2L]的溢出不仅置位中断请求标志位(T2IF),使 CPU 转去执行定时器 2 的中断程序,而且会自 动将[RL_T2H,RL_T2L]的内容重新装入[T2H,T2L]。 14.3.6 定时器 2 计算公式 定时器速度 周期计算公式 1T 定时器周期 = 12T 定时器周期 = 65536 – [T2H, T2L] SYSclk/(TM2PS+1) 深圳国芯人工智能有限公司 65536 – [T2H, T2L] SYSclk/(TM2PS+1) (自动重载) ×12 (自动重载) 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 302 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 14.4 定时器 3/4 14.4.1 定时器 3/4 功能脚切换 技术支持: 19864585985 选型顾问: 13922805190 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 T3T4PIN 7EFEACH - - - - - - - T3T4SEL T3T4SEL:T3/T3CLKO/T4/T4CLKO 脚选择位 T3T4SEL T3 T3CLKO T4 T4CLKO 0 P0.4 P0.5 P0.6 P0.7 1 P0.0 P0.1 P0.2 P0.3 14.4.2 定时器 4/3 控制寄存器(T4T3M) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 T4T3M DDH T4R T4_C/T T4x12 T4CLKO T3R T3_C/T T3x12 T3CLKO TR4:定时器4的运行控制位 0:定时器 4 停止计数 1:定时器 4 开始计数 T4_C/T:控制定时器4用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作 计数器(对引脚T4/P0.6外部脉冲进行计数)。 T4x12:定时器4速度控制位 0:12T 模式,即 CPU 时钟 12 分频(FOSC/12) 1:1T 模式,即 CPU 时钟不分频分频(FOSC/1) T4CLKO:定时器4时钟输出控制 0:关闭时钟输出 1:使能 P0.7 口的是定时器 4 时钟输出功能 当定时器 4 计数发生溢出时,P0.7 口的电平自动发生翻转。 TR3:定时器3的运行控制位 0:定时器 3 停止计数 1:定时器 3 开始计数 T3_C/T:控制定时器3用作定时器或计数器,清0则用作定时器(对内部系统时钟进行计数),置1用作 计数器(对引脚T3/P0.4外部脉冲进行计数)。 T3x12:定时器3速度控制位 0:12T 模式,即 CPU 时钟 12 分频(FOSC/12) 1:1T 模式,即 CPU 时钟不分频分频(FOSC/1) T3CLKO:定时器3时钟输出控制 0:关闭时钟输出 1:使能 P0.5 口的是定时器 3 时钟输出功能 当定时器 3 计数发生溢出时,P0.5 口的电平自动发生翻转。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 303 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器 3 计数寄存器(T3L,T3H) 14.4.3 符号 地址 T3L D5H T3H D4H B7 B6 B5 B4 B3 B2 B1 B0 定时器/计数器3的工作模式固定为16位重载模式,T3L和T3H组合成为一个16位寄存器,T3L为低字节, T3H为高字节。当[T3H,T3L]中的16位计数值溢出时,系统会自动将内部16位重载寄存器中的重载 值装入[T3H,T3L]中。 定时器 4 计数寄存器(T4L,T4H) 14.4.4 符号 地址 T4L D3H T4H D2H B7 B6 B5 B4 B3 B2 B1 B0 定时器/计数器4的工作模式固定为16位重载模式,T4L和T4H组合成为一个16位寄存器,T4L为低字节, T4H为高字节。当[T4H,T4L]中的16位计数值溢出时,系统会自动将内部16位重载寄存器中的重载 值装入[T4H,T4L]中。 定时器 3 的 8 位预分频寄存器(TM3PS) 14.4.5 符号 地址 TM3PS FEA3H B7 B6 B5 B4 B3 B2 B1 B0 B2 B1 B0 定时器3的时钟 = 系统时钟SYSclk ÷ ( TM3PS + 1 ) 定时器 4 的 8 位预分频寄存器(TM4PS) 14.4.6 符号 地址 TM4PS FEA4H B7 B6 B5 B4 B3 定时器4的时钟 = 系统时钟SYSclk ÷ ( TM4PS + 1 ) 14.4.7 定时器 3 工作模式 定时器/计数器3的原理框图如下: ÷12 SYSclk T4T3M.1/T3x12=0 TM3PS T3IF T3_C/T=0 ÷1 T3H (8bits) T4T3M.1/T3x12=1 T3_C/T=1 T3 Pin Interrupt T3L (8bits) T3CLKO Toggle control T3CLKO T3R RL_T3H (8bits) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 RL_T3L (8bits) 传真: 0513-5501 2926/2956/2947 - 304 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器/计数器 3 的工作模式:16 位自动重装载模式 T3R/T4T3M.3 为 T4T3M 寄存器内的控制位,T4T3M 寄存器各位的具体功能描述见上节 T4T3M 寄存器 的介绍。 当 T3_C/T=0 时,多路开关连接到系统时钟输出,T3 对内部系统时钟计数,T3 工作在定时方式。当 T3_C/T=1 时,多路开关连接到外部脉冲输 T3,即 T3 工作在计数方式。 STC 单片机的定时器 3 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同; 另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T3 的速率由特殊功能寄存器 T4T3M 中的 T3x12 决定,如果 T3x12=0,T3 则工作在 12T 模式;如果 T3x12=1,T3 则工作在 1T 模式 定时器 3 有两个隐藏的寄存器 RL_T3H 和 RL_T3L。RL_T3H 与 T3H 共有同一个地址,RL_T3L 与 T3L 共有同一个地址。当 T3R=0 即定时器/计数器 3 被禁止工作时,对 T3L 写入的内容会同时写入 RL_T3L,对 T3H 写入的内容也会同时写入 RL_T3H。当 T3R=1 即定时器/计数器 3 被允许工作时,对 T3L 写入内容,实 际上不是写入当前寄存器 T3L 中,而是写入隐藏的寄存器 RL_T3L 中,对 T3H 写入内容,实际上也不是写 入当前寄存器 T3H 中,而是写入隐藏的寄存器 RL_T3H,这样可以巧妙地实现 16 位重装载定时器。当读 T3H 和 T3L 的内容时,所读的内容就是 T3H 和 T3L 的内容,而不是 RL_T3H 和 RL_T3L 的内容。 [T3H,T3L]的溢出不仅置位中断请求标志位(T3IF),使 CPU 转去执行定时器 3 的中断程序,而且会自 动将[RL_T3H,RL_T3L]的内容重新装入[T3H,T3L]。 14.4.8 定时器 4 工作模式 定时器/计数器 4 的原理框图如下: ÷12 SYSclk T4T3M.5/T4x12=0 TM4PS T4IF T4_C/T=0 ÷1 T4H (8bits) T4T3M.5/T4x12=1 T4_C/T=1 T4 Pin Interrupt T4L (8bits) T4CLKO Toggle control T4CLKO T4R RL_T4H (8bits) RL_T4L (8bits) 定时器/计数器 4 的工作模式:16 位自动重装载模式 T4R/T4T3M.7 为 T4T3M 寄存器内的控制位,T4T3M 寄存器各位的具体功能描述见上节 T4T3M 寄存器 的介绍。 当 T4_C/T=0 时,多路开关连接到系统时钟输出,T4 对内部系统时钟计数,T4 工作在定时方式。当 T4_C/T=1 时,多路开关连接到外部脉冲输 T4,即 T4 工作在计数方式。 STC 单片机的定时器 4 有两种计数速率:一种是 12T 模式,每 12 个时钟加 1,与传统 8051 单片机相同; 另外一种是 1T 模式,每个时钟加 1,速度是传统 8051 单片机的 12 倍。T4 的速率由特殊功能寄存器 T4T3M 中的 T4x12 决定,如果 T4x12=0,T4 则工作在 12T 模式;如果 T4x12=1,T4 则工作在 1T 模式 定时器 4 有两个隐藏的寄存器 RL_T4H 和 RL_T4L。RL_T4H 与 T4H 共有同一个地址,RL_T4L 与 T4L 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 305 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 共有同一个地址。当 T4R=0 即定时器/计数器 4 被禁止工作时,对 T4L 写入的内容会同时写入 RL_T4L,对 T4H 写入的内容也会同时写入 RL_T4H。当 T4R=1 即定时器/计数器 4 被允许工作时,对 T4L 写入内容,实 际上不是写入当前寄存器 T4L 中,而是写入隐藏的寄存器 RL_T4L 中,对 T4H 写入内容,实际上也不是写 入当前寄存器 T4H 中,而是写入隐藏的寄存器 RL_T4H,这样可以巧妙地实现 16 位重装载定时器。当读 T4H 和 T4L 的内容时,所读的内容就是 T4H 和 T4L 的内容,而不是 RL_T4H 和 RL_T4L 的内容。 [T4H,T4L]的溢出不仅置位中断请求标志位(T4IF),使 CPU 转去执行定时器 4 的中断程序,而且会自 动将[RL_T4H,RL_T4L]的内容重新装入[T4H,T4L]。 14.4.9 定时器 3 计算公式 定时器速度 周期计算公式 1T 定时器周期 = 12T 定时器周期 = 14.4.10 65536 – [T3H, T3L] (自动重载) SYSclk/(TM3PS+1) 65536 – [T3H, T3L] SYSclk/(TM3PS+1) ×12 (自动重载) 定时器 4 计算公式 定时器速度 周期计算公式 1T 定时器周期 = 12T 定时器周期 = 65536 – [T4H, T4L] SYSclk/(TM4PS+1) 深圳国芯人工智能有限公司 65536 – [T4H, T4L] SYSclk/(TM4PS+1) (自动重载) ×12 (自动重载) 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 306 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 14.5 范例程序 14.5.1 定时器 0(模式 0-16 位自动重载),用作定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM0_Isr() interrupt 1 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x00; TL0 = 0x66; TH0 = 0xfc; TR0 = 1; ET0 = 1; EA = 1; //模式 0 //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 14.5.2 定时器 0(模式 1-16 位不自动重载),用作定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" 深圳国芯人工智能有限公司 //头文件见下载软件 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 307 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com void TM0_Isr() interrupt 1 { TL0 = 0x66; TH0 = 0xfc; P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; 技术支持: 19864585985 选型顾问: 13922805190 //重设定时参数 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x01; TL0 = 0x66; TH0 = 0xfc; TR0 = 1; ET0 = 1; EA = 1; //模式 1 //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 14.5.3 定时器 0(模式 2-8 位自动重载),用作定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM0_Isr() interrupt 1 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; 深圳国芯人工智能有限公司 //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 308 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x02; TL0 = 0xf4; TH0 = 0xf4; TR0 = 1; ET0 = 1; EA = 1; //模式 2 //256-11.0592M/12/76K //启动定时器 //使能定时器中断 while (1); } 14.5.4 定时器 0(模式 3-16 位自动重载不可屏蔽中断),用作 定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM0_Isr() interrupt 1 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 309 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P5M0 = 0x00; P5M1 = 0x00; // TMOD = 0x03; TL0 = 0x66; TH0 = 0xfc; TR0 = 1; ET0 = 1; EA = 1; //模式 3 //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 //不受 EA 控制 while (1); } 14.5.5 定时器 0(外部计数-扩展 T0 为外部下降沿中断) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM0_Isr() interrupt 1 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x04; TL0 = 0xff; TH0 = 0xff; TR0 = 1; ET0 = 1; EA = 1; //外部计数模式 //启动定时器 //使能定时器中断 while (1); } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 310 - STC32G 系列技术手册 14.5.6 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器 0(测量脉宽-INT0 高电平宽度) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void INT0_Isr() interrupt 0 { P0 = TL0; P1 = TH0; TL0 = 0x00; TH0 = 0x00; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //TL0 为测量值低字节 //TH0 为测量值高字节 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T0x12 = 1; TMOD = 0x08; TL0 = 0x00; TH0 = 0x00; while (INT0); TR0 = 1; IT0 = 1; EX0 = 1; EA = 1; //1T 模式 //使能 GATE,INT0 为 1 时使能计时 //等待 INT0 为低 //启动定时器 //使能 INT0 下降沿中断 while (1); } 14.5.7 定时器 0(模式 0),时钟分频输出 //测试工作频率为 11.0592MHz 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 311 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void main() { EAXFR = 1; WTST = 0x00; 技术支持: 19864585985 选型顾问: 13922805190 //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x00; TL0 = 0x66; TH0 = 0xfc; TR0 = 1; T0CLKO = 1; //模式 0 //65536-11.0592M/12/1000 //启动定时器 //使能时钟输出 while (1); } 14.5.8 定时器 1(模式 0-16 位自动重载),用作定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM1_Isr() interrupt 3 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 312 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x00; TL1 = 0x66; TH1 = 0xfc; TR1 = 1; ET1 = 1; EA = 1; //模式 0 //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 14.5.9 定时器 1(模式 1-16 位不自动重载),用作定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM1_Isr() interrupt 3 { TL1 = 0x66; TH1 = 0xfc; P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //重设定时参数 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x10; TL1 = 0x66; 深圳国芯人工智能有限公司 //模式 1 //65536-11.0592M/12/1000 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 313 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com TH1 = 0xfc; TR1 = 1; ET1 = 1; EA = 1; 技术支持: 19864585985 选型顾问: 13922805190 //启动定时器 //使能定时器中断 while (1); } 14.5.10 定时器 1(模式 2-8 位自动重载),用作定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM1_Isr() interrupt 3 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x20; TL1 = 0xf4; TH1 = 0xf4; TR1 = 1; ET1 = 1; EA = 1; //模式 2 //256-11.0592M/12/76K //启动定时器 //使能定时器中断 while (1); } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 314 - STC32G 系列技术手册 14.5.11 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器 1(外部计数-扩展 T1 为外部下降沿中断) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM1_Isr() interrupt 3 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; TMOD = 0x40; TL1 = 0xff; TH1 = 0xff; TR1 = 1; ET1 = 1; EA = 1; //外部计数模式 //启动定时器 //使能定时器中断 while (1); } 14.5.12 定时器 1(测量脉宽-INT1 高电平宽度) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void INT1_Isr() interrupt 2 { P0 = TL1; 深圳国芯人工智能有限公司 //头文件见下载软件 //TL1 为测量值低字节 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 315 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com P1 = TH1; TL1 = 0x00; TH1= 0x00; 技术支持: 19864585985 选型顾问: 13922805190 //TH1 为测量值高字节 } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T1x12 = 1; TMOD = 0x80; TL1 = 0x00; TH1 = 0x00; while (INT1); TR1 = 1; IT1 = 1; EX1 = 1; EA = 1; //1T 模式 //使能 GATE,INT1 为 1 时使能计时 //等待 INT1 为低 //启动定时器 //使能 INT1 下降沿中断 while (1); } 14.5.13 定时器 1(模式 0),时钟分频输出 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 316 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; //模式 0 //65536-11.0592M/12/1000 TMOD = 0x00; TL1 = 0x66; TH1 = 0xfc; TR1 = 1; T1CLKO = 1; //启动定时器 //使能时钟输出 while (1); } 14.5.14 定时器 1(模式 0)做串口 1 波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 void UartIsr() interrupt 4 { if (TI) { TI = 0; busy = 0; } if (RI) { RI = 0; buffer[wptr++] = SBUF; wptr &= 0x0f; } } void UartInit() { SCON = 0x50; TMOD = 0x00; TL1 = BRT; TH1 = BRT >> 8; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 317 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 TR1 = 1; T1x12 = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void UartSend(char dat) { while (busy); busy = 1; SBUF = dat; } void UartSendStr(char *p) { while (*p) { UartSend(*p++); } } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; UartInit(); ES = 1; EA = 1; UartSendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { UartSend(buffer[rptr++]); rptr &= 0x0f; } } } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 318 - STC32G 系列技术手册 14.5.15 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 定时器 1(模式 2)做串口 1 波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (256 - FOSC / 115200 / 32) //定义为无符号长整型,避免计算溢出 void UartIsr() interrupt 4 { if (TI) { TI = 0; busy = 0; } if (RI) { RI = 0; buffer[wptr++] = SBUF; wptr &= 0x0f; } } void UartInit() { SCON = 0x50; TMOD = 0x20; TL1 = BRT; TH1 = BRT; TR1 = 1; T1x12 = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void UartSend(char dat) { while (busy); busy = 1; SBUF = dat; } void UartSendStr(char *p) { while (*p) { UartSend(*p++); } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 319 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; UartInit(); ES = 1; EA = 1; UartSendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { UartSend(buffer[rptr++]); rptr &= 0x0f; } } } 14.5.16 定时器 2(16 位自动重载),用作定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM2_Isr() interrupt 12 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; 深圳国芯人工智能有限公司 //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 320 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T2L = 0x66; T2H = 0xfc; T2R = 1; ET2 = 1; EA = 1; //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 14.5.17 定时器 2(外部计数-扩展 T2 为外部下降沿中断) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void TM2_Isr() interrupt 12 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T2L = 0xff; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 321 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com T2H = 0xff; T2CT = 1; T2R = 1; ET2 = 1; EA = 1; 技术支持: 19864585985 选型顾问: 13922805190 //设置外部计数模式并启动定时器 //使能定时器中断 while (1); } 14.5.18 定时器 2,时钟分频输出 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T2L = 0x66; T2H = 0xfc; T2R = 1; T2CLKO = 1; //65536-11.0592M/12/1000 //启动定时器 //使能时钟输出 while (1); } 14.5.19 定时器 2 做串口 1 波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" 深圳国芯人工智能有限公司 //头文件见下载软件 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 322 - STC32G 系列技术手册 #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; 官方网站: www.STCMCUDATA.com 11059200UL (65536 - FOSC / 115200 / 4) 技术支持: 19864585985 选型顾问: 13922805190 //定义为无符号长整型,避免计算溢出 void UartIsr() interrupt 4 { if (TI) { TI = 0; busy = 0; } if (RI) { RI = 0; buffer[wptr++] = SBUF; wptr &= 0x0f; } } void UartInit() { SCON = 0x50; T2L = BRT; T2H = BRT >> 8; S1BRT = 1; T2x12 = 1; T2R = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void UartSend(char dat) { while (busy); busy = 1; SBUF = dat; } void UartSendStr(char *p) { while (*p) { UartSend(*p++); } } void main() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 323 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; UartInit(); ES = 1; EA = 1; UartSendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { UartSend(buffer[rptr++]); rptr &= 0x0f; } } } 14.5.20 定时器 2 做串口 2 波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 void Uart2Isr() interrupt 8 { if (S2TI) { S2TI = 0; busy = 0; } if (S2RI) { S2RI = 0; buffer[wptr++] = S2BUF; wptr &= 0x0f; } } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 324 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 void Uart2Init() { S2CON = 0x10; T2L = BRT; T2H = BRT >> 8; T2x12 = 1; T2R = 1; 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() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; Uart2Init(); IE2 = 0x01; EA = 1; Uart2SendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { Uart2Send(buffer[rptr++]); rptr &= 0x0f; } } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 325 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 } 14.5.21 定时器 2 做串口 3 波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 void Uart3Isr() interrupt 17 { if (S3TI) { S3TI = 0; busy = 0; } if (S3RI) { S3RI = 0; buffer[wptr++] = S3BUF; wptr &= 0x0f; } } void Uart3Init() { S3CON = 0x10; T2L = BRT; T2H = BRT >> 8; T2x12 = 1; T2R = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void Uart3Send(char dat) { while (busy); busy = 1; S3BUF = dat; } void Uart3SendStr(char *p) { while (*p) { 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 326 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 Uart3Send(*p++); } } void main() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; Uart3Init(); IE2 = 0x08; EA = 1; Uart3SendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { Uart3Send(buffer[rptr++]); rptr &= 0x0f; } } } 14.5.22 定时器 2 做串口 4 波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 void Uart4Isr() interrupt 18 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 327 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 { if (S4TI) { S4TI = 0; busy = 0; } if (S4RI) { S4RI = 0; buffer[wptr++] = S4BUF; wptr &= 0x0f; } } void Uart4Init() { S4CON = 0x10; T2L = BRT; T2H = BRT >> 8; T2x12 = 1; T2R = 1; 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() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 328 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 Uart4Init(); IE2 = 0x10; EA = 1; Uart4SendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { Uart4Send(buffer[rptr++]); rptr &= 0x0f; } } } 14.5.23 定时器 3(16 位自动重载),用作定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define #define #define #define #define ET2 ET3 ET4 T2IF T3IF T4IF void TM3_Isr() interrupt 19 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 0x04 0x20 0x40 0x01 0x02 0x04 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 329 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com T3L = 0x66; T3H = 0xfc; T4T3M = 0x08; IE2 = ET3; EA = 1; 技术支持: 19864585985 选型顾问: 13922805190 //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 14.5.24 定时器 3(外部计数-扩展 T3 为外部下降沿中断) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define #define #define #define #define ET2 ET3 ET4 T2IF T3IF T4IF void TM3_Isr() interrupt 19 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 0x04 0x20 0x40 0x01 0x02 0x04 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T3L = 0x66; T3H = 0xfc; T4T3M = 0x0c; IE2 = ET3; EA = 1; //65536-11.0592M/12/1000 //设置外部计数模式并启动定时器 //使能定时器中断 while (1); 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 330 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 } 14.5.25 定时器 3,时钟分频输出 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" //头文件见下载软件 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T3L = 0x66; T3H = 0xfc; T4T3M = 0x09; //65536-11.0592M/12/1000 //使能时钟输出并启动定时器 while (1); } 14.5.26 定时器 3 做串口 3 波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; 深圳国芯人工智能有限公司 //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 331 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 void Uart3Isr() interrupt 17 { if (S3TI) { S3TI = 0; busy = 0; } if (S3RI) { S3RI = 0; 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() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 332 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P5M1 = 0x00; Uart3Init(); IE2 = 0x08; EA = 1; Uart3SendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { Uart3Send(buffer[rptr++]); rptr &= 0x0f; } } } 14.5.27 定时器 4(16 位自动重载),用作定时 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define #define #define #define #define ET2 ET3 ET4 T2IF T3IF T4IF void TM4_Isr() interrupt 20 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 0x04 0x20 0x40 0x01 0x02 0x04 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 333 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com T4L = 0x66; T4H = 0xfc; T4T3M = 0x80; IE2 = ET4; EA = 1; 技术支持: 19864585985 选型顾问: 13922805190 //65536-11.0592M/12/1000 //启动定时器 //使能定时器中断 while (1); } 14.5.28 定时器 4(外部计数-扩展 T4 为外部下降沿中断) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define #define #define #define #define ET2 ET3 ET4 T2IF T3IF T4IF void TM4_Isr() interrupt 20 { P10 = !P10; } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 0x04 0x20 0x40 0x01 0x02 0x04 //测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; T4L = 0x66; T4H = 0xfc; T4T3M = 0xc0; IE2 = ET4; EA = 1; 深圳国芯人工智能有限公司 //65536-11.0592M/12/1000 //设置外部计数模式并启动定时器 //使能定时器中断 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 334 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 while (1); } 14.5.29 定时器 4,时钟分频输出 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" //头文件见下载软件 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P3M1 = 0x00; T4L = 0x66; T4H = 0xfc; T4T3M = 0x90; //65536-11.0592M/12/1000 //使能时钟输出并启动定时器 while (1); } 14.5.30 定时器 4 做串口 4 波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char busy; wptr; rptr; 深圳国芯人工智能有限公司 //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 335 - STC32G 系列技术手册 char 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 buffer[16]; void Uart4Isr() interrupt 18 { if (S4TI) { S4TI = 0; busy = 0; } if (S4RI) { S4RI = 0; 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() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 336 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P5M0 = 0x00; P5M1 = 0x00; 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 - 337 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 同步/异步串口通信(USART1、USART2) 15 STC32G 系列单片机具有 2 个全双工同步/异步串行通信接口(USART1 和 USART2)。每个串行口 由 2 个数据缓冲器、一个移位寄存器、一个串行控制寄存器和一个波特率发生器等组成。每个串行口的 数据缓冲器由 2 个互相独立的接收、发送缓冲器构成,可以同时发送和接收数据。 STC32G 系列单片机的串口 1、串口 2 均有 4 种工作方式,其中两种方式的波特率是可变的,另两 种是固定的,以供不同应用场合选用。用户可用软件设置不同的波特率和选择不同的工作方式。主机可 通过查询或中断方式对接收/发送进行程序处理,使用十分灵活。 串口 1、串口 2 的通讯口均可以通过功能管脚的切换功能切换到多组端口,从而可以将一个通讯口 分时复用为多个通讯口。 串口功能脚切换 15.1 符号 地址 P_SW1 A2H B7 B6 B5 B4 B3 CAN_S[1:0] S1_S[1:0] B2 B1 SPI_S[1:0] B0 LIN_S[1: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 符号 地址 B7 B6 P_SW2 BAH EAXFR - B5 B4 I2C_S[1:0] B3 B2 B1 B0 CMPO_S S4_S S3_S S2_S S2_S:串口 2 功能脚选择位 S2_S RxD2 TxD2 0 P1.0 P1.1 1 P4.6 P4.7 15.2 串口相关寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 SM0/FE SM1 SM2 REN TB8 RB8 TI RI SCON 串口 1 控制寄存器 98H SBUF 串口 1 数据寄存器 99H S2CON 串口 2 控制寄存器 9AH S2BUF 串口 2 数据寄存器 9BH PCON 电源控制寄存器 87H SMOD SMOD0 LVDF POF GF1 AUXR 辅助寄存器 1 8EH T0x12 T1x12 UART_M0x6 T2R T2_C/T SADDR 串口 1 从机地址寄存器 A9H 0000,0000 SADEN 串口 1 从机地址屏蔽寄存器 B9H 0000,0000 深圳国芯人工智能有限公司 0000,0000 0000,0000 S2SM0/FE S2SM1 S2SM2 S2REN S2TB8 S2RB8 S2TI S2RI 0000,0000 0000,0000 国内分销商电话: 0513-5501 2928/2929/2966 GF0 PD T2x12 EXTRAM IDL 0011,0000 S1BRT 0000,0001 传真: 0513-5501 2926/2956/2947 - 338 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 - S2MOD0 S2M0x6 - - - - W1 串口 2 配置寄存器 7EFDB4H S2ADDR. 串口 2 从机地址寄存器 7EFDB5H 0000,0000 S2ADEN 串口 2 从机地址屏蔽寄存器 7EFDB6H 0000,0000 USARTCR1 串口 1 控制寄存器 1 7EFDC0H LINEN DORD CLKEN SPMOD SPIEN SPSLV CPOL CPHA 0000,0000 USARTCR2 串口 1 控制寄存器 2 7EFDC1H IREN IRLP SCEN NACK HDSEL PCEN PS PE 0000,0000 USARTCR3 串口 1 控制寄存器 3 7EFDC2H USARTCR4 串口 1 控制寄存器 4 7EFDC3H USARTCR5 串口 1 控制寄存器 5 7EFDC4H BRKDET USARTGTR 串口 1 保护时间寄存器 7EFDC5H USARTBRH 串口 1 波特率寄存器 7EFDC6H USARTBR[15:8] 0000,0000 USARTBRL 串口 1 波特率寄存器 7EFDC7H USARTBR[7:0] 0000,0000 USART2CR1 串口 2 控制寄存器 1 7EFDC8H LINEN DORD CLKEN SPMOD SPIEN SPSLV CPOL CPHA 0000,0000 USART2CR2 串口 2 控制寄存器 2 7EFDC9H IREN IRLP SCEN NACK HDSEL PCEN PS PE 0000,0000 USART2CR3 串口 2 控制寄存器 3 7EFDCAH USART2CR4 串口 2 控制寄存器 4 7EFDCBH USART2CR5 串口 2 控制寄存器 5 7EFDCCH BRKDET USART2GTR 串口 2 保护时间寄存器 7EFDCDH USART2BRH 串口 2 波特率寄存器 7EFDCEH USART2BR[15:8] 0000,0000 USART2BRL 串口 2 波特率寄存器 7EFDCFH USART2BR[7:0] 0000,0000 S2CFG 深圳国芯人工智能有限公司 IrDA_LPBAUD[7:0] - - - - HDRER SLVEN ASYNC 0000,0111 SCCKS[1:0] TXCF 000x,xxx0 SENDBK SPICKS[1:0] HDRDET xxxx,0000 SYNC 0000,0000 0000,0000 IrDA_LPBAUD[7:0] - - - - HDRER SLVEN ASYNC 国内分销商电话: 0513-5501 2928/2929/2966 0000,0000 SCCKS[1:0] TXCF SENDBK SPICKS[1:0] HDRDET xxxx,0000 SYNCAN 0000,0000 0000,0000 传真: 0513-5501 2926/2956/2947 - 339 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 15.3 串口 1(同步/异步串口 USART) 15.3.1 串口 1 控制寄存器(SCON) 选型顾问: 13922805190 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 SCON 98H SM0/FE SM1 SM2 REN TB8 RB8 TI RI SM0/FE:当PCON寄存器中的SMOD0位为1时,该位为帧错误检测标志位。当UART在接收过程中检测 到一个无效停止位时,通过UART接收器将该位置1,必须由软件清零。当PCON寄存器中的SMOD0 位为0时,该位和SM1一起指定串口1的通信工作模式,如下表所示: SM0 SM1 串口1工作模式 功能说明 0 0 模式0 同步移位串行方式 0 1 模式1 可变波特率8位数据方式 1 0 模式2 固定波特率9位数据方式 1 1 模式3 可变波特率9位数据方式 SM2:允许模式 2 或模式 3 多机通信控制位。当串口 1 使用模式 2 或模式 3 时,如果 SM2 位为 1 且 REN 位为 1,则接收机处于地址帧筛选状态。此时可以利用接收到的第 9 位(即 RB8)来筛选地址帧, 若 RB8=1,说明该帧是地址帧,地址信息可以进入 SBUF,并使 RI 为 1,进而在中断服务程序 中再进行地址号比较;若 RB8=0,说明该帧不是地址帧,应丢掉且保持 RI=0。在模式 2 或模式 3 中,如果 SM2 位为 0 且 REN 位为 1,接收收机处于地址帧筛选被禁止状态,不论收到的 RB8 为 0 或 1,均可使接收到的信息进入 SBUF,并使 RI=1,此时 RB8 通常为校验位。模式 1 和模 式 0 为非多机通信方式,在这两种方式时,SM2 应设置为 0。 REN:允许/禁止串口接收控制位 0:禁止串口接收数据 1:允许串口接收数据 TB8:当串口 1 使用模式 2 或模式 3 时,TB8 为要发送的第 9 位数据,按需要由软件置位或清 0。在模 式 0 和模式 1 中,该位不用。 RB8:当串口 1 使用模式 2 或模式 3 时,RB8 为接收到的第 9 位数据,一般用作校验位或者地址帧/数 据帧标志位。在模式 0 和模式 1 中,该位不用。 TI:串口 1 发送中断请求标志位。在模式 0 中,当串口发送数据第 8 位结束时,由硬件自动将 TI 置 1, 向主机请求中断,响应中断后 TI 必须用软件清零。在其他模式中,则在停止位开始发送时由硬 件自动将 TI 置 1,向 CPU 发请求中断,响应中断后 TI 必须用软件清零。 RI:串口 1 接收中断请求标志位。在模式 0 中,当串口接收第 8 位数据结束时,由硬件自动将 RI 置 1, 向主机请求中断,响应中断后 RI 必须用软件清零。在其他模式中,串行接收到停止位的中间时 刻由硬件自动将 RI 置 1,向 CPU 发中断申请,响应中断后 RI 必须由软件清零。 15.3.2 串口 1 数据寄存器(SBUF) 符号 地址 SBUF 99H B7 B6 B5 B4 B3 B2 B1 B0 SBUF:串口 1 数据接收/发送缓冲区。SBUF 实际是 2 个缓冲器,读缓冲器和写缓冲器,两个操作分别 对应两个不同的寄存器,1 个是只写寄存器(写缓冲器),1 个是只读寄存器(读缓冲器)。对 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 340 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 SBUF 进行读操作,实际是读取串口接收缓冲区,对 SBUF 进行写操作则是触发串口开始发送数 据。 15.3.3 电源管理寄存器(PCON) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 PCON 87H SMOD SMOD0 LVDF POF GF1 GF0 PD IDL SMOD:串口 1 波特率控制位 0:串口 1 的各个模式的波特率都不加倍 1:串口 1 模式 1(使用模式 2 的定时器 1 作为波特率发生器时有效)、模式 2、模式 3(使用模式 2 的定时器 1 作为波特率发生器时有效)的波特率加倍 SMOD0:帧错误检测控制位 0:无帧错检测功能 1:使能帧错误检测功能。此时 SCON 的 SM0/FE 为 FE 功能,即为帧错误检测标志位。 15.3.4 辅助寄存器 1(AUXR) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 AUXR 8EH T0x12 T1x12 UART_M0x6 T2R T2_C/T T2x12 EXTRAM S1BRT UART_M0x6:串口 1 模式 0 的通讯速度控制 0:串口 1 模式 0 的波特率不加倍,固定为 Fosc/12 1:串口 1 模式 0 的波特率 6 倍速,即固定为 Fosc/12*6 = Fosc/2 S1BRT:串口 1 波特率发射器选择位 0:选择定时器 1 作为波特率发射器 1:选择定时器 2 作为波特率发射器 15.3.5 串口 1 模式 0,模式 0 波特率计算公式 当串口 1 选择工作模式为模式 0 时,串行通信接口工作在同步移位寄存器模式,当串行口模式 0 的通信速度设置位 UART_M0x6 为 0 时,其波特率固定为系统时钟时钟的 12 分频(SYSclk/12);当设 置 UART_M0x6 为 1 时,其波特率固定为系统时钟频率的 2 分频(SYSclk/2)。RxD 为串行通讯的数据 口,TxD 为同步移位脉冲输出脚,发送、接收的是 8 位数据,低位在先。 模式 0 的发送过程:当主机执行将数据写入发送缓冲器 SBUF 指令时启动发送,串行口即将 8 位数 据以 SYSclk/12 或 SYSclk/2(由 UART_M0x6 确定是 12 分频还是 2 分频)的波特率从 RxD 管脚输出(从 低位到高位),发送完中断标志 TI 置 1,TxD 管脚输出同步移位脉冲信号。当写信号有效后,相隔一个 时钟,发送控制端 SEND 有效(高电平),允许 RxD 发送数据,同时允许 TxD 输出同步移位脉冲。一帧 (8 位)数据发送完毕时,各控制端均恢复原状态,只有 TI 保持高电平,呈中断申请状态。在再次发送数 据前,必须用软件将 TI 清 0。 模式 0 的接收过程:首先将接收中断请求标志 RI 清零并置位允许接收控制位 REN 时启动模式 0 接收过程。启动接收过程后,RxD 为串行数据输入端,TxD 为同步脉冲输出端。串行接收的波特率为 SYSclk/12 或 SYSclk/2(由 UART_M0x6 确定是 12 分频还是 2 分频)。当接收完成一帧数据(8 位)后, 控制信号复位,中断标志 RI 被置 1,呈中断申请状态。当再次接收时,必须通过软件将 RI 清 0 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 341 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 写SBUF TxD RxD D0 D1 D2 D3 D4 D5 D6 D7 D6 D7 TI RI 发送数据(串口1模式0) 写SCON REN=1, RI=0 TxD RxD D0 D1 D2 D3 D4 D5 TI RI 接收数据(串口1模式0) 工作于模式 0 时,必须清 0 多机通信控制位 SM2,使之不影响 TB8 位和 RB8 位。由于波特率固定 为 SYSclk/12 或 SYSclk/2,无需定时器提供,直接由单片机的时钟作为同步移位脉冲。 串口 1 模式 0 的波特率计算公式如下表所示(SYSclk 为系统工作频率): UART_M0x6 波特率计算公式 0 波特率 = 1 波特率 = 15.3.6 SYSclk 12 SYSclk 2 串口 1 模式 1,模式 1 波特率计算公式 当软件设置 SCON 的 SM0、SM1 为“01”时,串行口 1 则以模式 1 进行工作。此模式为 8 位 UART 格式,一帧信息为 10 位:1 位起始位,8 位数据位(低位在先)和 1 位停止位。波特率可变,即可根据 需要进行设置波特率。TxD 为数据发送口,RxD 为数据接收口,串行口全双工接受/发送。 模式 1 的发送过程:串行通信模式发送时,数据由串行发送端 TxD 输出。当主机执行一条写 SBUF 的指令就启动串行通信的发送,写“SBUF”信号还把“1”装入发送移位寄存器的第 9 位,并通知 TX 控制单元开始发送。移位寄存器将数据不断右移送 TxD 端口发送,在数据的左边不断移入“0”作补充。 当数据的最高位移到移位寄存器的输出位置,紧跟其后的是第 9 位“1”,在它的左边各位全为“0”, 这个状态条件,使 TX 控制单元作最后一次移位输出,然后使允许发送信号“SEND”失效,完成一帧 信息的发送,并置位中断请求位 TI,即 TI=1,向主机请求中断处理。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 342 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 模式 1 的接收过程:当软件置位接收允许标志位 REN,即 REN=1 时,接收器便对 RxD 端口的信 号进行检测,当检测到 RxD 端口发送从“1”→“0”的下降沿跳变时就启动接收器准备接收数据,并 立即复位波特率发生器的接收计数器,将 1FFH 装入移位寄存器。接收的数据从接收移位寄存器的右边 移入,已装入的 1FFH 向左边移出,当起始位"0"移到移位寄存器的最左边时,使 RX 控制器作最后一次 移位,完成一帧的接收。若同时满足以下两个条件: ·RI=0; ·SM2=0 或接收到的停止位为 1。 则接收到的数据有效,实现装载入 SBUF,停止位进入 RB8,RI 标志位被置 1,向主机请求中断, 若上述两条件不能同时满足,则接收到的数据作废并丢失,无论条件满足与否,接收器重又检测 RxD 端口上的"1"→"0"的跳变,继续下一帧的接收。接收有效,在响应中断后,RI 标志位必须由软件清 0。 通常情况下,串行通信工作于模式 1 时,SM2 设置为"0"。 写SBUF TxD Start D0 D1 D2 D3 D4 D5 D6 D7 Stop TI 发送数据(串口1模式1) 写SCON RxD REN=1, RI=0 Start D0 D1 D2 D3 D4 D5 D6 D7 Stop RI 接收数据(串口1模式1) 串口 1 的波特率是可变的,其波特率可由定时器 1 或者定时器 2 产生。当定时器采用 1T 模式时(12 倍速),相应的波特率的速度也会相应提高 12 倍。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 343 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 1 模式 1 的波特率计算公式如下表所示:(SYSclk 为系统工作频率) 选择定 定时器 时器 速度 重装值计算公式 1T 定时器2重载值 = 65536 - 12T 定时器2重载值 = 65536 - 1T 定时器1重载值 = 65536 - 12T 定时器1重载值 = 65536 - 1T 定时器1重载值 = 256 - 12T 定时器1重载值 = 256 - 波特率 SYSclk 波特率 = 4 ×(65536 - 定时器重装数) SYSclk 4×波特率 定时器2 定时器1 SYSclk 12×4×波特率 定时器1 模式2 12 ×4 ×(65536 - 定时器重装数) SYSclk 波特率 = 4 ×(65536 - 定时器重装数) SYSclk 4×波特率 模式0 SYSclk 波特率 = SYSclk 12×4×波特率 2SMOD×SYSclk 32×波特率 2SMOD×SYSclk 12×32×波特率 SYSclk 波特率 = 12 ×4 ×(65536 - 定时器重装数) 2SMOD×SYSclk 波特率 = 波特率 = 32 ×(256 - 定时器重装数) 2SMOD×SYSclk 12 × 32 ×(256 - 定时器重装数) 下面为常用频率与常用波特率所对应定时器的重载值 频率 (MHz) 11.0592 18.432 22.1184 定时器 2 波特率 定时器 1 模式 0 1T 模式 12T 模式 1T 模式 12T 模式 115200 FFE8H FFFEH FFE8H 57600 FFD0H FFFCH 38400 FFB8H 19200 定时器 1 模式 2 SMOD=1 SMOD=0 1T 模式 12T 模式 1T 模式 12T 模式 FFFEH FAH - FDH - FFD0H FFFCH F4H FFH FAH - FFFAH FFB8H FFFAH EEH - F7H - FF70H FFF4H FF70H FFF4H DCH FDH EEH - 9600 FEE0H FFE8H FEE0H FFE8H B8H FAH DCH FDH 115200 FFD8H - FFD8H - F6H - FBH - 57600 FFB0H - FFB0H - ECH - F6H - 38400 FF88H FFF6H FF88H FFF6H E2H - F1H - 19200 FF10H FFECH FF10H FFECH C4H FBH E2H - 9600 FE20H FFD8H FE20H FFD8H 88H F6H C4H FBH 115200 FFD0H FFFCH FFD0H FFFCH F4H FFH FAH - 57600 FFA0H FFF8H FFA0H FFF8H E8H FEH F4H FFH 38400 FF70H FFF4H FF70H FFF4H DCH FDH EEH - 19200 FEE0H FFE8H FEE0H FFE8H B8H FAH DCH FDH 9600 FDC0H FFD0H FDC0H FFD0H 70H F4H B8H FAH 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 344 - STC32G 系列技术手册 15.3.7 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 1 模式 2,模式 2 波特率计算公式 当 SM0、SM1 两位为 10 时,串行口 1 工作在模式 2。串行口 1 工作模式 2 为 9 位数据异步通信 UART 模式,其一帧的信息由 11 位组成:1 位起始位,8 位数据位(低位在先),1 位可编程位(第 9 位数据)和 1 位停止位。发送时可编程位(第 9 位数据)由 SCON 中的 TB8 提供,可软件设置为 1 或 0,或者可将 PSW 中的奇/偶校验位 P 值装入 TB8(TB8 既可作为多机通信中的地址数据标志位,又可 作为数据的奇偶校验位)。接收时第 9 位数据装入 SCON 的 RB8。TxD 为发送端口,RxD 为接收端口, 以全双工模式进行接收/发送。 模式 2 的波特率固定为系统时钟的 64 分频或 32 分频(取决于 PCON 中 SMOD 的值) 串口 1 模式 2 的波特率计算公式如下表所示(SYSclk 为系统工作频率): SMOD 波特率计算公式 0 波特率 = 1 波特率 = SYSclk 64 SYSclk 32 模式 2 和模式 1 相比,除波特率发生源略有不同,发送时由 TB8 提供给移位寄存器第 9 数据位不 同外,其余功能结构均基本相同,其接收/发送操作过程及时序也基本相同。 当接收器接收完一帧信息后必须同时满足下列条件: ·RI=0 ·SM2=0 或者 SM2=1 且接收到的第 9 数据位 RB8=1。 当上述两条件同时满足时,才将接收到的移位寄存器的数据装入 SBUF 和 RB8 中,RI 标志位被置 1,并向主机请求中断处理。如果上述条件有一个不满足,则刚接收到移位寄存器中的数据无效而丢失, 也不置位 RI。无论上述条件满足与否,接收器又重新开始检测 RxD 输入端口的跳变信息,接收下一帧 的输入信息。在模式 2 中,接收到的停止位与 SBUF、RB8 和 RI 无关。 通过软件对 SCON 中的 SM2、TB8 的设置以及通信 Ð 议的约定,为多机通信提供了方便。 写SBUF TxD Start D0 D1 D2 D3 D4 D5 D6 D7 TB8 Stop D6 D7 RB8 Stop TI 发送数据(串口1模式2) 写SCON RxD REN=1,RI=0 Start D0 D1 D2 D3 D4 D5 RI 接收数据(串口1模式2) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 345 - STC32G 系列技术手册 15.3.8 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 1 模式 3,模式 3 波特率计算公式 当 SM0、SM1 两位为 11 时,串行口 1 工作在模式 3。串行通信模式 3 为 9 位数据异步通信 UART 模式,其一帧的信息由 11 位组成:1 位起始位,8 位数据位(低位在先),1 位可编程位(第 9 位数据) 和 1 位停止位。发送时可编程位(第 9 位数据)由 SCON 中的 TB8 提供,可软件设置为 1 或 0,或者 可将 PSW 中的奇/偶校验位 P 值装入 TB8(TB8 既可作为多机通信中的地址数据标志位,又可作为数据 的奇偶校验位)。接收时第 9 位数据装入 SCON 的 RB8。TxD 为发送端口,RxD 为接收端口,以全双 工模式进行接收/发送。 模式 3 和模式 1 相比,除发送时由 TB8 提供给移位寄存器第 9 数据位不同外,其余功能结构均基 本相同,其接收‘发送操作过程及时序也基本相同。 当接收器接收完一帧信息后必须同时满足下列条件: ·RI=0 ·SM2=0 或者 SM2=1 且接收到的第 9 数据位 RB8=1。 当上述两条件同时满足时,才将接收到的移位寄存器的数据装入 SBUF 和 RB8 中,RI 标志位被置 1,并向主机请求中断处理。如果上述条件有一个不满足,则刚接收到移位寄存器中的数据无效而丢失, 也不置位 RI。无论上述条件满足与否,接收器又重新开始检测 RxD 输入端口的跳变信息,接收下一帧 的输入信息。在模式 3 中,接收到的停止位与 SBUF、RB8 和 RI 无关。 通过软件对 SCON 中的 SM2、TB8 的设置以及通信协议的约定,为多机通信提供了方便。 写SBUF TxD Start D0 D1 D2 D3 D4 D5 D6 D7 TB8 Stop D6 D7 RB8 Stop TI 发送数据(串口1模式3) 写SCON REN=1,RI=0 RxD Start D0 D1 D2 D3 D4 D5 RI 接收数据(串口1模式3) 串口 1 模式 3 的波特率计算公式与模式 1 是完全相同的。请参考模式 1 的波特率计算公式。 15.3.9 自动地址识别 15.3.10 串口 1 从机地址控制寄存器(SADDR,SADEN) 符号 地址 SADDR A9H SADEN B9H B7 B6 B5 B4 B3 B2 B1 B0 SADDR:从机地址寄存器 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 346 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 SADEN:从机地址屏蔽位寄存器 自动地址识别功能典型应用在多机通讯领域,其主要原理是从机系统通过硬件比较功能来识别来自 于主机串口数据流中的地址信息,通过寄存器 SADDR 和 SADEN 设置的本机的从机地址,硬件自动对 从机地址进行过滤,当来自于主机的从机地址信息与本机所设置的从机地址相匹配时,硬件产生串口中 断;否则硬件自动丢弃串口数据,而不产生中断。当众多处于空闲模式的从机链接在一起时,只有从机 地址相匹配的从机才会从空闲模式唤醒,从而可以大大降低从机 MCU 的功耗,即使从机处于正常工作 状态也可避免不停地进入串口中断而降低系统执行效率。 要使用串口的自动地址识别功能,首先需要将参与通讯的 MCU 的串口通讯模式设置为模式 2 或者 模式 3(通常都选择波特率可变的模式 3,因为模式 2 的波特率是固定的,不便于调节),并开启从机 的 SCON 的 SM2 位。对于串口模式 2 或者模式 3 的 9 位数据位中,第 9 位数据(存放在 RB8 中)为地 址/数据的标志位,当第 9 位数据为 1 时,表示前面的 8 位数据(存放在 SBUF 中)为地址信息。当 SM2 被设置为 1 时,从机 MCU 会自动过滤掉非地址数据(第 9 位为 0 的数据),而对 SBUF 中的地址数据 (第 9 位为 1 的数据)自动与 SADDR 和 SADEN 所设置的本机地址进行比较,若地址相匹配,则会将 RI 置“1”,并产生中断,否则不予处理本次接收的串口数据。 从机地址的设置是通过 SADDR 和 SADEN 两个寄存器进行设置的。SADDR 为从机地址寄存器, 里面存放本机的从机地址。SADEN 为从机地址屏蔽位寄存器,用于设置地址信息中的忽略位,设置方 法如下: 例如 SADDR = 11001010 SADEN = 10000001 则匹配地址为 1xxxxxx0 即,只要主机送出的地址数据中的 bit0 为 0 且 bit7 为 1 就可以和本机地址相匹配 再例如 SADDR = 11001010 SADEN = 00001111 则匹配地址为 xxxx1010 即,只要主机送出的地址数据中的低 4 位为 1010 就可以和本机地址相匹配,而高 4 为被忽略,可 以为任意值。 主机可以使用广播地址(FFH)同时选中所有的从机来进行通讯。 15.3.11 串口 1 同步模式控制寄存器 1(USARTCR1) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 USARTCR1 7EFDC0H LINEN DORD CLKEN SPMOD SPIEN SPSLV CPOL CPHA LINEN:LIN 模式使能位 0:禁止 LIN 模式 1:使能 LIN 模式 DORD:SPI 模式数据位发送/接收的顺序 0:先发送/接收数据的高位(MSB) 1:先发送/接收数据的低位(LSB) CLKEN:SmartCard 模式时钟输出控制位 0:禁止时钟输出 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 347 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 1:使能时钟输出 SPMOD:SPI 模式使能位 0:禁止 SPI 模式 1:使能 SPI 模式 SPIEN:SPI 使能位 0:禁止 SPI 功能 1:使能 SPI 功能 SPSLV:SPI 从机模式使能位 0:SPI 为主机模式 1:SPI 为从机模式 CPOL:SPI 时钟极性控制 0:SCLK 空闲时为低电平,SCLK 的前时钟沿为上升沿,后时钟沿为下降沿 1:SCLK 空闲时为高电平,SCLK 的前时钟沿为下降沿,后时钟沿为上升沿 CPHA:SPI 时钟相位控制 0:数据 SS 管脚为低电平驱动第一位数据并在 SCLK 的后时钟沿改变数据,前时钟沿采样数据 1:数据在 SCLK 的前时钟沿驱动,后时钟沿采样 15.3.12 串口 1 同步模式控制寄存器 2(USARTCR2) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 USARTCR2 7EFDC1H IREN IRLP SCEN NACK HDSEL PCEN PS PE IREN:IrDA 模式使能位 0:禁止 IrDA 模式 1:使能 IrDA 模式 IRLP:IrDA 低电模式控制位 0:IrDA 为普通模式 1:IrDA 为低电模式 SCEN:SmartCard 模式使能位 0:禁止 SmartCard 模式 1:使能 SmartCard 模式 NACK:SmartCard 模式 NACK 输出使能位 0:禁止输出 NACK 信号 1:使能输出 NACK 信号 HDSEL:单线半双工模式使能位 0:禁止单线半双工模式 1:使能单线半双工模式 PCEN:校验位控制使能 0:禁止校验位控制功能 1:使能校验位控制功能 PS:校验位模式选择 0:偶检验 1:奇校验 PE:校验位错误标志(必须软件清零) 0:无检验错误 1:有校验错误 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 348 - STC32G 系列技术手册 15.3.13 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 1 同步模式控制寄存器 3(USARTCR3) 符号 地址 USARTCR3 7EFDC2H B7 B6 B5 B4 B3 B2 B1 B0 B1 B0 IrDA_LPBAUD[7:0] IrDA_LPBAUD:IrDA 低电模式波特率控制寄存器 IrDA_LPBAUD[7:0] IrDA 低电模式波特率 0 SYSclk/16/256 1 SYSclk/16/1 2 SYSclk/16/2 ... ... 255 SYSclk/16/255 15.3.14 串口 1 同步模式控制寄存器 4(USARTCR4) 符号 地址 B7 B6 B5 B4 USARTCR4 7EFDC3H - - - - B3 B2 SCCKS[1:0] SPICKS[1:0] SCCKS[1:0]:SmartCard 模式时钟选择 SCCKS[1:0] SmartCard 模式时钟 00 SYSclk/64 01 SYSclk/32 10 SYSclk/16 11 SYSclk/8 SPICKS[1:0]:SPI 模式时钟选择 SPICKS[1:0] SPI 模式时钟 00 SYSclk/4 01 SYSclk/8 10 SYSclk/16 11 SYSclk/2 15.3.15 串口 1 同步模式控制寄存器 5(USARTCR5) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 USARTCR5 7EFDC4H BRKDET HDRER SLVEN ASYNC TXCF SENDBK HDRDET SYNC BRKDET:LIN 从模式间隔场(BREAK)检测标志 0:未检测到 LIN 间隔场 1:检测到 LIN 间隔场,需要软件清零 HDRER:LIN 从模式报文头(HEADER)错误 0:未检测到 LIN 报文头错误 1:检测到 LIN 报文头错误,需要软件清零 SLVEN:LIN 从机模式使能位 0:LIN 为主机模式 1:LIN 为从机模式 ASYNC:LIN 自动同步功能使能位 0:禁止自动同步 1:使能自动同步 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 349 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 TXCF:传输冲突标志位。单线半双工模式、LIN 模式和 SmartCard 模式有效 0:未检测到传输冲突(发送的数据与接收的数据相同) 1:检测到传输冲突(发送的数据与接收的数据不同) SENDBK:发送间隔场。软件写 1 触发发送间隔场,发送完成后硬件自动清 0 HDRDET:LIN 从模式报文头(HEADER)检测标志 0:未检测到 LIN 报文头 1:检测到 LIN 报文头,需要软件清零 SYNC:LIN 从模式同步场检测标志。 正确分析到同步场后,硬件将 SYNC 标志为置 1。在接收标志符场时硬件会自动清零 SYNC 15.3.16 串口 1 同步模式保护时间寄存器(USARTGTR) 符号 地址 USARTGTR 7EFDC5H B7 B6 B5 B4 B3 B2 B1 B0 USARTGTR 寄存器仅在 SmartCard 模式有效。该寄存器是根据波特率时钟数给出保护时间值。TI 标志 在 SmartCard 发送的数据位等于 USARTGTR 寄存器所设置的保护时间值时被硬件置 1。注: USARTGTR 寄存器的值应大于 11 15.3.17 串口 1 同步模式波特率寄存器(USARTBR) 符号 地址 USARTBRH 7EFDC6H USARTBR[15:8] USARTBRL 7EFDC7H USARTBR[7:0] B7 B6 B5 B4 B3 B2 B1 B0 LIN 模式、IrDA 模式和 SmartCard 模式时的波特率计算公式 同步波特率 = SYSclk 16 * USARTBR[15:0] 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 350 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 15.4 串口 2(同步/异步串口 USART2) 15.4.1 串口 2 控制寄存器(S2CON) 选型顾问: 13922805190 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 S2CON 9AH S2SM0/FE S2SM1 S2SM2 S2REN S2TB8 S2RB8 S2TI S2RI S2SM0/FE:当S2CFG寄存器中的S2MOD0位为1时,该位为帧错误检测标志位。当UART2在接收过程中 检测到一个无效停止位时,通过UART2接收器将该位置1,必须由软件清零。当S2CFG寄存器中 的S2MOD0位为0时,该位和S2SM1一起指定串口2的通信工作模式,如下表所示: S2SM0 S2SM1 串口2工作模式 功能说明 0 0 模式0 同步移位串行方式 0 1 模式1 可变波特率8位数据方式 1 0 模式2 固定波特率9位数据方式 1 1 模式3 可变波特率9位数据方式 S2SM2:允许模式 2 或模式 3 多机通信控制位。当串口 2 使用模式 2 或模式 3 时,如果 S2SM2 位为 1 且 S2REN 位为 1,则接收机处于地址帧筛选状态。此时可以利用接收到的第 9 位(即 S2RB8) 来筛选地址帧,若 S2RB8=1,说明该帧是地址帧,地址信息可以进入 S2BUF,并使 S2RI 为 1, 进而在中断服务程序中再进行地址号比较;若 S2RB8=0,说明该帧不是地址帧,应丢掉且保持 S2RI=0。在模式 2 或模式 3 中,如果 S2SM2 位为 0 且 S2REN 位为 1,接收收机处于地址帧筛选 被禁止状态,不论收到的 S2RB8 为 0 或 1,均可使接收到的信息进入 S2BUF,并使 S2RI=1,此 时 S2RB8 通常为校验位。模式 1 和模式 0 为非多机通信方式,在这两种方式时,S2SM2 应设置 为 0。 S2REN:允许/禁止串口接收控制位 0:禁止串口接收数据 1:允许串口接收数据 S2TB8:当串口 2 使用模式 2 或模式 3 时,S2TB8 为要发送的第 9 位数据,按需要由软件置位或清 0。 在模式 0 和模式 1 中,该位不用。 S2RB8:当串口 2 使用模式 2 或模式 3 时,S2RB8 为接收到的第 9 位数据,一般用作校验位或者地址帧 /数据帧标志位。在模式 0 和模式 1 中,该位不用。 S2TI:串口 2 发送中断请求标志位。在模式 0 中,当串口发送数据第 8 位结束时,由硬件自动将 S2TI 置 1,向主机请求中断,响应中断后 S2TI 必须用软件清零。在其他模式中,则在停止位开始发 送时由硬件自动将 S2TI 置 1,向 CPU 发请求中断,响应中断后 S2TI 必须用软件清零。 S2RI:串口 2 接收中断请求标志位。在模式 0 中,当串口接收第 8 位数据结束时,由硬件自动将 S2RI 置 1,向主机请求中断,响应中断后 S2RI 必须用软件清零。在其他模式中,串行接收到停止位 的中间时刻由硬件自动将 S2RI 置 1,向 CPU 发中断申请,响应中断后 S2RI 必须由软件清零。 15.4.2 串口 2 数据寄存器(S2BUF) 符号 地址 S2BUF 9BH B7 B6 B5 B4 B3 B2 B1 B0 S2BUF:串口 1 数据接收/发送缓冲区。S2BUF 实际是 2 个缓冲器,读缓冲器和写缓冲器,两个操作分 别对应两个不同的寄存器,1 个是只写寄存器(写缓冲器),1 个是只读寄存器(读缓冲器)。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 351 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 对 S2BUF 进行读操作,实际是读取串口接收缓冲区,对 S2BUF 进行写操作则是触发串口开始发 送数据。 15.4.3 串口 2 配置寄存器(S2CFG) 符号 地址 B7 B6 B5 S2CFG 7EFDB4H - S2MOD0 S2M0x6 B4 B3 B2 B1 B0 W1 S2MOD0:帧错误检测控制位 0:无帧错检测功能 1:使能帧错误检测功能。此时 S2CON 的 S2SM0/FE 为 FE 功能,即为帧错误检测标志位。 S2M0x6:串口 2 模式 0 的通讯速度控制 0:串口 2 模式 0 的波特率不加倍,固定为 Fosc/12 1:串口 2 模式 0 的波特率 6 倍速,即固定为 Fosc/12*6 = Fosc/2 W1:必须设置为“1” 15.4.4 串口 2 模式 0,模式 0 波特率计算公式 当串口 2 选择工作模式为模式 0 时,串行通信接口工作在同步移位寄存器模式,当串行口模式 0 的通信速度设置位 S2M0x6 为 0 时,其波特率固定为系统时钟时钟的 12 分频(SYSclk/12);当设置 S2M0x6 为 1 时,其波特率固定为系统时钟频率的 2 分频(SYSclk/2)。RxD2 为串行通讯的数据口, TxD2 为同步移位脉冲输出脚,发送、接收的是 8 位数据,低位在先。 模式 0 的发送过程:当主机执行将数据写入发送缓冲器 S2BUF 指令时启动发送,串行口即将 8 位 数据以 SYSclk/12 或 SYSclk/2(由 S2M0x6 确定是 12 分频还是 2 分频)的波特率从 RxD2 管脚输出(从 低位到高位),发送完中断标志 S2TI 置 1,TxD2 管脚输出同步移位脉冲信号。当写信号有效后,相隔 一个时钟,发送控制端 SEND 有效(高电平),允许 RxD2 发送数据,同时允许 TxD2 输出同步移位脉冲。 一帧(8 位)数据发送完毕时,各控制端均恢复原状态,只有 S2TI 保持高电平,呈中断申请状态。在再次 发送数据前,必须用软件将 S2TI 清 0。 模式 0 的接收过程:首先将接收中断请求标志 S2RI 清零并置位允许接收控制位 S2REN 时启动模 式 0 接收过程。启动接收过程后,RxD2 为串行数据输入端,TxD2 为同步脉冲输出端。串行接收的波 特率为 SYSclk/12 或 SYSclk/2(由 S2M0x6 确定是 12 分频还是 2 分频)。当接收完成一帧数据(8 位) 后,控制信号复位,中断标志 S2RI 被置 1,呈中断申请状态。当再次接收时,必须通过软件将 S2RI 清 0 写S2BUF TxD2 RxD2 D0 D1 D2 D3 D4 D5 D6 D7 S2TI S2RI 发送数据(串口2模式0) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 352 - STC32G 系列技术手册 写S2CON 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 S2REN=1, S2RI=0 TxD2 RxD2 D0 D1 D2 D3 D4 D5 D6 D7 S2TI S2RI 接收数据(串口2模式0) 工作于模式 0 时,必须清 0 多机通信控制位 S2SM2,使之不影响 S2TB8 位和 S2RB8 位。由于波特 率固定为 SYSclk/12 或 SYSclk/2,无需定时器提供,直接由单片机的时钟作为同步移位脉冲。 串口 2 模式 0 的波特率计算公式如下表所示(SYSclk 为系统工作频率): 波特率计算公式 S2M0x6 0 波特率 = 1 波特率 = 15.4.5 SYSclk 12 SYSclk 2 串口 2 模式 1,模式 1 波特率计算公式 当软件设置 S2CON 的 S2SM0、S2SM1 为“01”时,串行口 2 则以模式 1 进行工作。此模式为 8 位 UART 格式,一帧信息为 10 位:1 位起始位,8 位数据位(低位在先)和 1 位停止位。波特率可变, 即可根据需要进行设置波特率。TxD2 为数据发送口,RxD2 为数据接收口,串行口全双工接受/发送。 模式 1 的发送过程:串行通信模式发送时,数据由串行发送端 TxD2 输出。 当主机执行一条写 S2BUF 的指令就启动串行通信的发送,写“S2BUF”信号还把“1”装入发送移位寄存器的第 9 位,并通知 TX 控制单元开始发送。移位寄存器将数据不断右移送 TxD 端口发送,在数据的左边不断移入“0”作补充。 当数据的最高位移到移位寄存器的输出位置,紧跟其后的是第 9 位“1”,在它的左边各位全为“0”, 这个状态条件,使 TX 控制单元作最后一次移位输出,然后使允许发送信号“SEND”失效,完成一帧 信息的发送,并置位中断请求位 S2TI,即 S2TI=1,向主机请求中断处理。 模式 1 的接收过程:当软件置位接收允许标志位 S2REN,即 S2REN=1 时,接收器便对 RxD2 端口 的信号进行检测,当检测到 RxD2 端口发送从“1”→“0”的下降沿跳变时就启动接收器准备接收数据, 并立即复位波特率发生器的接收计数器,将 1FFH 装入移位寄存器。接收的数据从接收移位寄存器的右 边移入,已装入的 1FFH 向左边移出,当起始位"0"移到移位寄存器的最左边时,使 RX 控制器作最后一 次移位,完成一帧的接收。若同时满足以下两个条件: ·S2RI=0; ·S2SM2=0 或接收到的停止位为 1。 则接收到的数据有效,实现装载入 S2BUF,停止位进入 S2RB8,S2RI 标志位被置 1,向主机请求 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 353 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 中断,若上述两条件不能同时满足,则接收到的数据作废并丢失,无论条件满足与否,接收器重又检测 RxD2 端口上的"1"→"0"的跳变,继续下一帧的接收。接收有效,在响应中断后,S2RI 标志位必须由软 件清 0。通常情况下,串行通信工作于模式 1 时,S2SM2 设置为"0"。 写S2BUF S2TxD Start D0 D1 D2 D3 D4 D5 D6 D7 Stop D7 Stop S2TI 发送数据(串口2模式1) 写S2CON RxD2 S2REN=1, S2RI=0 Start D0 D1 D2 D3 D4 D5 D6 S2RI 接收数据(串口2模式1) 串口 2 的波特率是可变的,其波特率固定由定时器 2 产生。当定时器采用 1T 模式时(12 倍速), 相应的波特率的速度也会相应提高 12 倍。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 354 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 2 模式 1 的波特率计算公式如下表所示:(SYSclk 为系统工作频率) 选择定时 定时器速 器 度 重装值计算公式 1T 定时器2重载值 = 65536 - 12T 定时器2重载值 = 65536 - 波特率 SYSclk 波特率 = 4 ×(65536 - 定时器重装数) SYSclk 4×波特率 定时器2 SYSclk 12×4×波特率 波特率 = SYSclk 12 ×4 ×(65536 - 定时器重装数) 下面为常用频率与常用波特率所对应定时器的重载值 定时器 2 频率 (MHz) 波特率 1T 模式 12T 模式 115200 FFE8H FFFEH 57600 FFD0H FFFCH 38400 FFB8H FFFAH 19200 FF70H FFF4H 9600 FEE0H FFE8H 115200 FFD8H - 57600 FFB0H - 38400 FF88H FFF6H 19200 FF10H FFECH 9600 FE20H FFD8H 115200 FFD0H FFFCH 57600 FFA0H FFF8H 38400 FF70H FFF4H 19200 FEE0H FFE8H 9600 FDC0H FFD0H 11.0592 18.432 22.1184 15.4.6 串口 2 模式 2,模式 2 波特率计算公式 当 S2SM0、S2SM1 两位为 10 时,串行口 2 工作在模式 2。串行口 2 工作模式 2 为 9 位数据异步通 信 UART 模式,其一帧的信息由 11 位组成:1 位起始位,8 位数据位(低位在先),1 位可编程位(第 9 位数据)和 1 位停止位。发送时可编程位(第 9 位数据)由 S2CON 中的 S2TB8 提供,可软件设置为 1 或 0,或者可将 PSW 中的奇/偶校验位 P 值装入 S2TB8(S2TB8 既可作为多机通信中的地址数据标志 位,又可作为数据的奇偶校验位)。接收时第 9 位数据装入 S2CON 的 S2RB8。TxD2 为发送端口,RxD2 为接收端口,以全双工模式进行接收/发送。 模式 2 的波特率固定为系统时钟的 64 分频或 32 分频(取决于 S2CFG 中 S2MOD 的值) 串口 2 模式 2 的波特率计算公式如下表所示(SYSclk 为系统工作频率): SMOD 波特率计算公式 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 355 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 0 波特率 = 1 波特率 = 技术支持: 19864585985 选型顾问: 13922805190 SYSclk 64 SYSclk 32 模式 2 和模式 1 相比,除波特率发生源略有不同,发送时由 S2TB8 提供给移位寄存器第 9 数据位 不同外,其余功能结构均基本相同,其接收/发送操作过程及时序也基本相同。 当接收器接收完一帧信息后必须同时满足下列条件: ·S2RI=0 ·S2SM2=0 或者 S2SM2=1 且接收到的第 9 数据位 S2RB8=1。 当上述两条件同时满足时,才将接收到的移位寄存器的数据装入 S2BUF 和 S2RB8 中,S2RI 标志 位被置 1,并向主机请求中断处理。如果上述条件有一个不满足,则刚接收到移位寄存器中的数据无效 而丢失,也不置位 S2RI。无论上述条件满足与否,接收器又重新开始检测 RxD2 输入端口的跳变信息, 接收下一帧的输入信息。在模式 2 中,接收到的停止位与 S2BUF、S2RB8 和 S2RI 无关。 通过软件对 S2CON 中的 S2SM2、S2TB8 的设置以及通信 Ð 议的约定,为多机通信提供了方便。 写S2BUF TxD2 Start D0 D1 D2 D3 D4 D5 D6 D7 D6 D7 TB8 Stop S2TI 发送数据(串口2模式2) 写S2CON RxD2 S2REN=1,S2RI=0 Start D0 D1 D2 D3 D4 D5 RB8 Stop S2RI 接收数据(串口2模式2) 15.4.7 串口 2 模式 3,模式 3 波特率计算公式 当 S2SM0、S2SM1 两位为 11 时,串行口 2 工作在模式 3。串行通信模式 3 为 9 位数据异步通信 UART 模式,其一帧的信息由 11 位组成:1 位起始位,8 位数据位(低位在先),1 位可编程位(第 9 位数据)和 1 位停止位。发送时可编程位(第 9 位数据)由 S2CON 中的 S2TB8 提供,可软件设置为 1 或 0,或者可将 PSW 中的奇/偶校验位 P 值装入 S2TB8(S2TB8 既可作为多机通信中的地址数据标志位, 又可作为数据的奇偶校验位)。接收时第 9 位数据装入 S2CON 的 S2RB8。TxD2 为发送端口,RxD2 为接收端口,以全双工模式进行接收/发送。 模式 3 和模式 1 相比,除发送时由 S2TB8 提供给移位寄存器第 9 数据位不同外,其余功能结构均 基本相同,其接收‘发送操作过程及时序也基本相同。 当接收器接收完一帧信息后必须同时满足下列条件: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 356 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 ·S2RI=0 ·S2SM2=0 或者 S2SM2=1 且接收到的第 9 数据位 S2RB8=1。 当上述两条件同时满足时,才将接收到的移位寄存器的数据装入 S2BUF 和 S2RB8 中,S2RI 标志 位被置 1,并向主机请求中断处理。如果上述条件有一个不满足,则刚接收到移位寄存器中的数据无效 而丢失,也不置位 S2RI。无论上述条件满足与否,接收器又重新开始检测 RxD2 输入端口的跳变信息, 接收下一帧的输入信息。在模式 3 中,接收到的停止位与 S2BUF、S2RB8 和 S2RI 无关。 通过软件对 S2CON 中的 S2SM2、S2TB8 的设置以及通信协议的约定,为多机通信提供了方便。 写S2BUF TxD2 Start D0 D1 D2 D3 D4 D5 D6 D7 TB8 Stop D6 D7 RB8 Stop S2TI 发送数据(串口2模式3) ? S2CON S2REN=1,S2RI=0 RxD2 Start D0 D1 D2 D3 D4 D5 S2RI ? ? ? ? ( ? ? 2? ? 3) 串口 2 模式 3 的波特率计算公式与模式 1 是完全相同的。请参考模式 1 的波特率计算公式。 15.4.8 串口 2 自动地址识别 15.4.9 串口 2 从机地址控制寄存器(S2ADDR,S2ADEN) 符号 地址 S2ADDR 7EFDB5H S2ADEN 7EFDB6H B7 B6 B5 B4 B3 B2 B1 B0 S2ADDR:从机地址寄存器 S2ADEN:从机地址屏蔽位寄存器 自动地址识别功能典型应用在多机通讯领域,其主要原理是从机系统通过硬件比较功能来识别来自 于主机串口 2 数据流中的地址信息,通过寄存器 S2ADDR 和 S2ADEN 设置的本机的从机地址,硬件自 动对从机地址进行过滤,当来自于主机的从机地址信息与本机所设置的从机地址相匹配时,硬件产生串 口 2 中断;否则硬件自动丢弃串口 2 数据,而不产生中断。当众多处于空闲模式的从机链接在一起时, 只有从机地址相匹配的从机才会从空闲模式唤醒,从而可以大大降低从机 MCU 的功耗,即使从机处于 正常工作状态也可避免不停地进入串口 2 中断而降低系统执行效率。 要使用串口 2 的自动地址识别功能,首先需要将参与通讯的 MCU 的串口 2 通讯模式设置为模式 1, 并开启从机的 S2CON 的 S2SM2 位。对于串口 2 模式 1 的 9 位数据位中,第 9 位数据(存放在 S2RB8 中)为地址/数据的标志位,当第 9 位数据为 1 时,表示前面的 8 位数据(存放在 S2BUF 中)为地址信 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 357 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 息。当 S2SM2 被设置为 1 时,从机 MCU 会自动过滤掉非地址数据(第 9 位为 0 的数据),而对 S2BUF 中的地址数据(第 9 位为 1 的数据)自动与 S2ADDR 和 S2ADEN 所设置的本机地址进行比较,若地址 相匹配,则会将 S2RI 置“1”,并产生中断,否则不予处理本次接收的串口 2 数据。 从机地址的设置是通过 S2ADDR 和 S2ADEN 两个寄存器进行设置的。S2ADDR 为从机地址寄存器, 里面存放本机的从机地址。S2ADEN 为从机地址屏蔽位寄存器,用于设置地址信息中的忽略位,设置 方法如下: 例如 S2ADDR = 11001010 S2ADEN = 10000001 则匹配地址为 1xxxxxx0 即,只要主机送出的地址数据中的 bit0 为 0 且 bit7 为 1 就可以和本机地址相匹配 再例如 S2ADDR = 11001010 S2ADEN = 00001111 则匹配地址为 xxxx1010 即,只要主机送出的地址数据中的低 4 位为 1010 就可以和本机地址相匹配,而高 4 为被忽略,可 以为任意值。 主机可以使用广播地址(FFH)同时选中所有的从机来进行通讯。 15.4.10 串口 2 同步模式控制寄存器 1(USART2CR1) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 USART2CR1 7EFDC8H LINEN DORD CLKEN SPMOD SPIEN SPSLV CPOL CPHA LINEN:LIN 模式使能位 0:禁止 LIN 模式 1:使能 LIN 模式 DORD:SPI 模式数据位发送/接收的顺序 0:先发送/接收数据的高位(MSB) 1:先发送/接收数据的低位(LSB) CLKEN:SmartCard 模式时钟输出控制位 0:禁止时钟输出 1:使能时钟输出 SPMOD:SPI 模式使能位 0:禁止 SPI 模式 1:使能 SPI 模式 SPIEN:SPI 使能位 0:禁止 SPI 功能 1:使能 SPI 功能 SPSLV:SPI 从机模式使能位 0:SPI 为主机模式 1:SPI 为从机模式 CPOL:SPI 时钟极性控制 0:SCLK 空闲时为低电平,SCLK 的前时钟沿为上升沿,后时钟沿为下降沿 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 358 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 1:SCLK 空闲时为高电平,SCLK 的前时钟沿为下降沿,后时钟沿为上升沿 CPHA:SPI 时钟相位控制 0:数据 SS 管脚为低电平驱动第一位数据并在 SCLK 的后时钟沿改变数据,前时钟沿采样数据 1:数据在 SCLK 的前时钟沿驱动,后时钟沿采样 15.4.11 串口 2 同步模式控制寄存器 2(USART2CR2) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 USART2CR2 7EFDC9H IREN IRLP SCEN NACK HDSEL PCEN PS PE B1 B0 IREN:IrDA 模式使能位 0:禁止 IrDA 模式 1:使能 IrDA 模式 IRLP:IrDA 低电模式控制位 0:IrDA 为普通模式 1:IrDA 为低电模式 SCEN:SmartCard 模式使能位 0:禁止 SmartCard 模式 1:使能 SmartCard 模式 NACK:SmartCard 模式 NACK 输出使能位 0:禁止输出 NACK 信号 1:使能输出 NACK 信号 HDSEL:单线半双工模式使能位 0:禁止单线半双工模式 1:使能单线半双工模式 PCEN:校验位控制使能 0:禁止校验位控制功能 1:使能校验位控制功能 PS:校验位模式选择 0:偶检验 1:奇校验 PE:校验位错误标志(必须软件清零) 0:无检验错误 1:有校验错误 15.4.12 串口 2 同步模式控制寄存器 3(USART2CR3) 符号 地址 USART2CR3 7EFDCAH B7 B6 B5 B4 B3 B2 IrDA_LPBAUD[7:0] IrDA_LPBAUD:IrDA 低电模式波特率控制寄存器 IrDA_LPBAUD[7:0] IrDA 低电模式波特率 0 SYSclk/16/256 1 SYSclk/16/1 2 SYSclk/16/2 ... ... 255 SYSclk/16/255 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 359 - STC32G 系列技术手册 15.4.13 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 2 同步模式控制寄存器 4(USART2CR4) 符号 地址 B7 B6 B5 B4 USART2CR4 7EFDCBH - - - - B3 B2 B1 SCCKS[1:0] B0 SPICKS[1:0] SCCKS[1:0]:SmartCard 模式时钟选择 SCCKS[1:0] SmartCard 模式时钟 00 SYSclk/64 01 SYSclk/32 10 SYSclk/16 11 SYSclk/8 SPICKS[1:0]:SPI 模式时钟选择 SPICKS[1:0] SPI 模式时钟 00 SYSclk/4 01 SYSclk/8 10 SYSclk/16 11 SYSclk/2 15.4.14 串口 2 同步模式控制寄存器 5(USART2CR5) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 USART2CR5 7EFDCCH BRKDET HDRER SLVEN ASYNC TXCF SENDBK HDRDET SYNC BRKDET:LIN 从模式间隔场(BREAK)检测标志 0:未检测到 LIN 间隔场 1:检测到 LIN 间隔场,需要软件清零 HDRER:LIN 从模式报文头(HEADER)错误 0:未检测到 LIN 报文头错误 1:检测到 LIN 报文头错误,需要软件清零 SLVEN:LIN 从机模式使能位 0:LIN 为主机模式 1:LIN 为从机模式 ASYNC:LIN 自动同步功能使能位 0:禁止自动同步 1:使能自动同步 TXCF:传输冲突标志位。单线半双工模式、LIN 模式和 SmartCard 模式有效 0:未检测到传输冲突(发送的数据与接收的数据相同) 1:检测到传输冲突(发送的数据与接收的数据不同) SENDBK:发送间隔场。软件写 1 触发发送间隔场,发送完成后硬件自动清 0 HDRDET:LIN 从模式报文头(HEADER)检测标志 0:未检测到 LIN 报文头 1:检测到 LIN 报文头,需要软件清零 SYNC:LIN 从模式同步场检测标志。 正确分析到同步场后,硬件将 SYNC 标志为置 1。在接收标志符场时硬件会自动清零 SYNC 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 360 - STC32G 系列技术手册 15.4.15 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 2 同步模式保护时间寄存器(USART2GTR) 符号 地址 USART2GTR 7EFDCDH B7 B6 B5 B4 B3 B2 B1 B0 USARTGTR 寄存器仅在 SmartCard 模式有效。该寄存器是根据波特率时钟数给出保护时间值。S2TI 标 志在 SmartCard 发送的数据位等于 USARTGTR 寄存器所设置的保护时间值时被硬件置 1。注: USARTGTR 寄存器的值应大于 11 15.4.16 串口 2 同步模式波特率寄存器(USART2BR) 符号 地址 USART2BRH 7EFDCEH USART2BR[15:8] USART2BRL 7EFDCFH USART2BR[7:0] B7 B6 B5 B4 B3 B2 B1 B0 LIN 模式、IrDA 模式和 SmartCard 模式时的波特率计算公式 同步波特率 = SYSclk 16 * USART2BR[15:0] 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 361 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 15.5 范例程序 15.5.1 串口 1 使用定时器 2 做波特率发生器 选型顾问: 13922805190 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 void UartIsr() interrupt 4 { if (TI) { TI = 0; busy = 0; } if (RI) { RI = 0; buffer[wptr++] = SBUF; wptr &= 0x0f; } } void UartInit() { SCON = 0x50; T2L = BRT; T2H = BRT >> 8; S1BRT = 1; T2x12 = 1; T2R = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void UartSend(char dat) { while (busy); busy = 1; SBUF = dat; } void UartSendStr(char *p) { 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 362 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 while (*p) { UartSend(*p++); } } void main() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; UartInit(); ES = 1; EA = 1; UartSendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { UartSend(buffer[rptr++]); rptr &= 0x0f; } } } 15.5.2 串口 1 使用定时器 1(模式 0)做波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; 深圳国芯人工智能有限公司 //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 363 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 void UartIsr() interrupt 4 { if (TI) { TI = 0; busy = 0; } if (RI) { RI = 0; buffer[wptr++] = SBUF; wptr &= 0x0f; } } void UartInit() { SCON = 0x50; TMOD = 0x00; TL1 = BRT; TH1 = BRT >> 8; TR1 = 1; T1x12 = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void UartSend(char dat) { while (busy); busy = 1; SBUF = dat; } void UartSendStr(char *p) { while (*p) { UartSend(*p++); } } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 364 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; UartInit(); ES = 1; EA = 1; UartSendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { UartSend(buffer[rptr++]); rptr &= 0x0f; } } } 15.5.3 串口 1 使用定时器 1(模式 2)做波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (256 - FOSC / 115200 / 32) //定义为无符号长整型,避免计算溢出 void UartIsr() interrupt 4 { if (TI) { TI = 0; busy = 0; } if (RI) { RI = 0; buffer[wptr++] = SBUF; wptr &= 0x0f; } } void UartInit() { SCON = 0x50; TMOD = 0x20; TL1 = BRT; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 365 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 TH1 = BRT; TR1 = 1; T1x12 = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void UartSend(char dat) { while (busy); busy = 1; SBUF = dat; } void UartSendStr(char *p) { while (*p) { UartSend(*p++); } } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; UartInit(); ES = 1; EA = 1; UartSendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { UartSend(buffer[rptr++]); rptr &= 0x0f; } } } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 366 - STC32G 系列技术手册 15.5.4 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 2 使用定时器 2 做波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 void Uart2Isr() interrupt 8 { if (S2TI) { S2TI = 0; busy = 0; } if (S2RI) { S2RI = 0; buffer[wptr++] = S2BUF; wptr &= 0x0f; } } void Uart2Init() { P_SW2 = 0x80; S2CFG = 0x01; S2CON = 0x10; T2L = BRT; T2H = BRT >> 8; T2x12 = 1; T2R = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void Uart2Send(char dat) { while (busy); busy = 1; S2BUF = dat; } void Uart2SendStr(char *p) { while (*p) { 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 367 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 Uart2Send(*p++); } } void main() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; Uart2Init(); IE2 = 0x01; EA = 1; Uart2SendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { Uart2Send(buffer[rptr++]); rptr &= 0x0f; } } } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 368 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 异步串口通信(UART3、UART4) 16 STC32G 系列单片机具有 2 个全双工异步串行通信接口(UART3 和 UART4)。每个串行口由 2 个 数据缓冲器、一个移位寄存器、一个串行控制寄存器和一个波特率发生器等组成。每个串行口的数据缓 冲器由 2 个互相独立的接收、发送缓冲器构成,可以同时发送和接收数据。 STC32G 系列单片机的串口 3/串口 4 都有两种工作方式,这两种方式的波特率都是可变的。用户可 用软件设置不同的波特率和选择不同的工作方式。主机可通过查询或中断方式对接收/发送进行程序处 理,使用十分灵活。 串口 3、串口 4 的通讯口均可以通过功能管脚的切换功能切换到多组端口,从而可以将一个通讯口 分时复用为多个通讯口。 串口功能脚切换 16.1 符号 地址 B7 B6 P_SW2 BAH EAXFR - B5 B4 I2C_S[1:0] B3 B2 B1 B0 CMPO_S S4_S S3_S S2_S 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 16.2 串口相关寄存器 位地址与符号 符号 描述 地址 S3CON 串口 3 控制寄存器 ACH S3BUF 串口 3 数据寄存器 ADH S4CON 串口 4 控制寄存器 FDH S4BUF 串口 4 数据寄存器 FEH 深圳国芯人工智能有限公司 复位值 B7 B6 B5 B4 B3 B2 B1 B0 S3SM0 S3ST3 S3SM2 S3REN S3TB8 S3RB8 S3TI S3RI 0000,0000 0000,0000 S4SM0 S4ST4 S4SM2 国内分销商电话: 0513-5501 2928/2929/2966 S4REN S4TB8 S4RB8 S4TI S4RI 0000,0000 0000,0000 传真: 0513-5501 2926/2956/2947 - 369 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 16.3 串口 3(异步串口 UART3) 16.3.1 串口 3 控制寄存器(S3CON) 选型顾问: 13922805190 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 S3CON ACH S3SM0 S3ST3 S3SM2 S3REN S3TB8 S3RB8 S3TI S3RI S3SM0:指定串口3的通信工作模式,如下表所示: S3SM0 串口3工作模式 功能说明 0 模式0 可变波特率8位数据方式 1 模式1 可变波特率9位数据方式 S3ST3:选择串口 3 的波特率发生器 0:选择定时器 2 为串口 3 的波特率发生器 1:选择定时器 3 为串口 3 的波特率发生器 S3SM2:允许串口 3 在模式 1 时允许多机通信控制位。在模式 1 时,如果 S3SM2 位为 1 且 S3REN 位为 1,则接收机处于地址帧筛选状态。此时可以利用接收到的第 9 位(即 S3RB8)来筛选地址帧: 若 S3RB8=1,说明该帧是地址帧,地址信息可以进入 S3BUF,并使 S3RI 为 1,进而在中断服务 程序中再进行地址号比较;若 S3RB8=0,说明该帧不是地址帧,应丢掉且保持 S3RI=0。在模式 1 中,如果 S3SM2 位为 0 且 S3REN 位为 1,接收收机处于地址帧筛选被禁止状态。不论收到的 S3RB8 为 0 或 1,均可使接收到的信息进入 S3BUF,并使 S3RI=1,此时 S3RB8 通常为校验位。 模式 0 为非多机通信方式,在这种方式时,要设置 S3SM2 应为 0。 S3REN:允许/禁止串口接收控制位 0:禁止串口接收数据 1:允许串口接收数据 S3TB8:当串口 3 使用模式 1 时,S3TB8 为要发送的第 9 位数据,一般用作校验位或者地址帧/数据帧 标志位,按需要由软件置位或清 0。在模式 0 中,该位不用。 S3RB8:当串口 3 使用模式 1 时,S3RB8 为接收到的第 9 位数据,一般用作校验位或者地址帧/数据帧 标志位。在模式 0 中,该位不用。 S3TI:串口 3 发送中断请求标志位。在停止位开始发送时由硬件自动将 S3TI 置 1,向 CPU 发请求中断, 响应中断后 S3TI 必须用软件清零。 S3RI:串口 3 接收中断请求标志位。串行接收到停止位的中间时刻由硬件自动将 S3RI 置 1,向 CPU 发 中断申请,响应中断后 S3RI 必须由软件清零。 16.3.2 串口 3 数据寄存器(S3BUF) 符号 地址 S3BUF ADH B7 B6 B5 B4 B3 B2 B1 B0 S3BUF:串口 1 数据接收/发送缓冲区。S3BUF 实际是 2 个缓冲器,读缓冲器和写缓冲器,两个操作分 别对应两个不同的寄存器,1 个是只写寄存器(写缓冲器),1 个是只读寄存器(读缓冲器)。 对 S3BUF 进行读操作,实际是读取串口接收缓冲区,对 S3BUF 进行写操作则是触发串口开始发 送数据。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 370 - STC32G 系列技术手册 16.3.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 3 模式 0,模式 0 波特率计算公式 串行口 3 的模式 0 为 8 位数据位可变波特率 UART 工作模式。此模式一帧信息为 10 位:1 位起始 位,8 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD3 为数据 发送口,RxD3 为数据接收口,串行口全双工接受/发送。 写S3BUF TxD3 Start D0 D1 D2 D3 D4 D5 D6 D7 Stop S3TI 发送数据(串口3模式0) 写S3CON RxD3 S3REN=1, S3RI=0 Start D0 D1 D2 D3 D4 D5 D6 D7 Stop S3RI 接收数据(串口3模式0) 串口 3 的波特率是可变的,其波特率可由定时器 2 或定时器 3 产生。当定时器采用 1T 模式时(12 倍速),相应的波特率的速度也会相应提高 12 倍。 串口 3 模式 0 的波特率计算公式如下表所示:(SYSclk 为系统工作频率) 选择定时 定时器速 器 度 重装值计算公式 1T 定时器2重载值 = 65536 - 12T 定时器2重载值 = 65536 - 1T 定时器3重载值 = 65536 - 12T 定时器3重载值 = 65536 - SYSclk 4×波特率 波特率 SYSclk 波特率 = 4 ×(65536 - 定时器重装数) 定时器2 SYSclk 12×4×波特率 SYSclk 4×波特率 波特率 = SYSclk 12 ×4 ×(65536 - 定时器重装数) SYSclk 波特率 = 4 ×(65536 - 定时器重装数) 定时器3 16.3.4 SYSclk 12×4×波特率 波特率 = SYSclk 12 ×4 ×(65536 - 定时器重装数) 串口 3 模式 1,模式 1 波特率计算公式 串行口 3 的模式 1 为 9 位数据位可变波特率 UART 工作模式。此模式一帧信息为 11 位:1 位起始 位,9 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD3 为数据 发送口,RxD3 为数据接收口,串行口全双工接受/发送。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 371 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 写S3BUF TxD3 Start D0 D1 D2 D3 D4 D5 D6 D7 TB8 Stop D6 D7 RB8 Stop S3TI 发送数据(串口3模式1) 写S3CON RxD3 S3REN=1,S3RI=0 Start D0 D1 D2 D3 D4 D5 S3RI 接收数据(串口3模式1) 串口 3 模式 1 的波特率计算公式与模式 0 是完全相同的。请参考模式 0 的波特率计算公式。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 372 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 16.4 串口 4(异步串口 UART4) 16.4.1 串口 4 控制寄存器(S4CON) 选型顾问: 13922805190 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 S4CON FDH S4SM0 S4ST4 S4SM2 S4REN S4TB8 S4RB8 S4TI S4RI S4SM0:指定串口4的通信工作模式,如下表所示: S4SM0 串口4工作模式 功能说明 0 模式0 可变波特率8位数据方式 1 模式1 可变波特率9位数据方式 S4ST4:选择串口 4 的波特率发生器 0:选择定时器 2 为串口 4 的波特率发生器 1:选择定时器 4 为串口 4 的波特率发生器 S4SM2:允许串口 4 在模式 1 时允许多机通信控制位。在模式 1 时,如果 S4SM2 位为 1 且 S4REN 位为 1,则接收机处于地址帧筛选状态。此时可以利用接收到的第 9 位(即 S4RB8)来筛选地址帧: 若 S4RB8=1,说明该帧是地址帧,地址信息可以进入 S4BUF,并使 S4RI 为 1,进而在中断服务 程序中再进行地址号比较;若 S4RB8=0,说明该帧不是地址帧,应丢掉且保持 S4RI=0。在模式 1 中,如果 S4SM2 位为 0 且 S4REN 位为 1,接收收机处于地址帧筛选被禁止状态。不论收到的 S4RB8 为 0 或 1,均可使接收到的信息进入 S4BUF,并使 S4RI=1,此时 S4RB8 通常为校验位。 模式 0 为非多机通信方式,在这种方式时,要设置 S4SM2 应为 0。 S4REN:允许/禁止串口接收控制位 0:禁止串口接收数据 1:允许串口接收数据 S4TB8:当串口 4 使用模式 1 时,S4TB8 为要发送的第 9 位数据,一般用作校验位或者地址帧/数据帧 标志位,按需要由软件置位或清 0。在模式 0 中,该位不用。 S4RB8:当串口 4 使用模式 1 时,S4RB8 为接收到的第 9 位数据,一般用作校验位或者地址帧/数据帧 标志位。在模式 0 中,该位不用。 S4TI:串口 4 发送中断请求标志位。在停止位开始发送时由硬件自动将 S4TI 置 1,向 CPU 发请求中断, 响应中断后 S4TI 必须用软件清零。 S4RI:串口 4 接收中断请求标志位。串行接收到停止位的中间时刻由硬件自动将 S4RI 置 1,向 CPU 发 中断申请,响应中断后 S4RI 必须由软件清零。 16.4.2 串口 4 数据寄存器(S4BUF) 符号 地址 S4BUF FEH B7 B6 B5 B4 B3 B2 B1 B0 S4BUF:串口 1 数据接收/发送缓冲区。S4BUF 实际是 2 个缓冲器,读缓冲器和写缓冲器,两个操作分 别对应两个不同的寄存器,1 个是只写寄存器(写缓冲器),1 个是只读寄存器(读缓冲器)。 对 S4BUF 进行读操作,实际是读取串口接收缓冲区,对 S4BUF 进行写操作则是触发串口开始发 送数据。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 373 - STC32G 系列技术手册 16.4.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 4 模式 0,模式 0 波特率计算公式 串行口 4 的模式 0 为 8 位数据位可变波特率 UART 工作模式。此模式一帧信息为 10 位:1 位起始 位,8 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD4 为数据 发送口,RxD4 为数据接收口,串行口全双工接受/发送。 写S4BUF TxD4 Start D0 D1 D2 D3 D4 D5 D6 D7 Stop S4TI 发送数据(串口4模式0) 写S4CON RxD4 S4REN=1, S4RI=0 Start D0 D1 D2 D3 D4 D5 D6 D7 Stop S4RI 接收数据(串口4模式0) 串口 4 的波特率是可变的,其波特率可由定时器 2 或定时器 4 产生。当定时器采用 1T 模式时(12 倍速),相应的波特率的速度也会相应提高 12 倍。 串口 4 模式 0 的波特率计算公式如下表所示:(SYSclk 为系统工作频率) 选择定时 定时器速 器 度 重装值计算公式 1T 定时器2重载值 = 65536 - 12T 定时器2重载值 = 65536 - 1T 定时器4重载值 = 65536 - 12T 定时器4重载值 = 65536 - SYSclk 4×波特率 波特率 SYSclk 波特率 = 4 ×(65536 - 定时器重装数) 定时器2 SYSclk 12×4×波特率 SYSclk 4×波特率 波特率 = SYSclk 12 ×4 ×(65536 - 定时器重装数) SYSclk 波特率 = 4 ×(65536 - 定时器重装数) 定时器4 16.4.4 SYSclk 12×4×波特率 波特率 = SYSclk 12 ×4 ×(65536 - 定时器重装数) 串口 4 模式 1,模式 1 波特率计算公式 串行口 4 的模式 1 为 9 位数据位可变波特率 UART 工作模式。此模式一帧信息为 11 位:1 位起始 位,9 位数据位(低位在先)和 1 位停止位。波特率可变,可根据需要进行设置波特率。TxD4 为数据 发送口,RxD4 为数据接收口,串行口全双工接受/发送。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 374 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 写S4BUF TxD4 Start D0 D1 D2 D3 D4 D5 D6 D7 TB8 Stop D6 D7 RB8 Stop S4TI 发送数据(串口4模式1) 写S4CON S4REN=1,S4RI=0 RxD4 Start D0 D1 D2 D3 D4 D5 S4RI 接收数据(串口4模式1) 串口 4 模式 1 的波特率计算公式与模式 0 是完全相同的。请参考模式 0 的波特率计算公式。 16.5 串口注意事项 关于串口中断请求有如下问题需要注意:(串口 1、串口 2、串口 3、串口 4 均类似,下面以串口 1 为例进行说明) 8 位数据模式时,发送完成整个停止位后产生 TI 中断请求,如下图所示: 写SBUF TxD Start D0 D1 D2 D3 D4 D5 D6 D7 Stop TI 发送数据(8位数据) 8 位数据模式时,接收完成一半个停止位后产生 RI 中断请求,如下图所示: 写SCON RxD REN=1, RI=0 Start D0 D1 D2 D3 D4 D5 D6 D7 Stop RI 接收数据(8位数据) 9 位数据模式时,发送完成整个第 9 位数据位后产生 TI 中断请求,如下图所示: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 375 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 写SBUF TxD Start D0 D1 D2 D3 D4 D5 D6 D7 TB8 Stop TI 发送数据(9位数据) 9 位数据模式时,接收完成一半个第 9 位数据位后产生 RI 中断请求,如下图所示: 写SCON RxD REN=1,RI=0 Start D0 D1 D2 D3 D4 D5 D6 D7 RB8 Stop RI 接收数据(9位数据) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 376 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 16.6 范例程序 16.6.1 串口 3 使用定时器 2 做波特率发生器 选型顾问: 13922805190 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 void Uart3Isr() interrupt 17 { if (S3TI) { S3TI = 0; busy = 0; } if (S3RI) { S3RI = 0; buffer[wptr++] = S3BUF; wptr &= 0x0f; } } void Uart3Init() { S3CON = 0x10; T2L = BRT; T2H = BRT >> 8; T2x12 = 1; T2R = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void Uart3Send(char dat) { while (busy); busy = 1; S3BUF = dat; } void Uart3SendStr(char *p) { while (*p) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 377 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 { Uart3Send(*p++); } } void main() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; Uart3Init(); ES3 = 1; EA = 1; Uart3SendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { Uart3Send(buffer[rptr++]); rptr &= 0x0f; } } } 16.6.2 串口 3 使用定时器 3 做波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; 深圳国芯人工智能有限公司 //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 378 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 void Uart3Isr() interrupt 17 { if (S3TI) { S3TI = 0; busy = 0; } if (S3RI) { S3RI = 0; buffer[wptr++] = S3BUF; wptr &= 0x0f; } } void Uart3Init() { S3CON = 0x50; T3L = BRT; T3H = BRT >> 8; T3x12 = 1; T3R = 1; 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() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 379 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P5M1 = 0x00; Uart3Init(); ES3 = 1; EA = 1; Uart3SendStr("Uart Test !\r\n"); while (1) { if (rptr != wptr) { Uart3Send(buffer[rptr++]); rptr &= 0x0f; } } } 16.6.3 串口 4 使用定时器 2 做波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 void Uart4Isr() interrupt 18 { if (S4TI) { S4TI = 0; busy = 0; } if (S4RI) { S4RI = 0; buffer[wptr++] = S4BUF; wptr &= 0x0f; } } void Uart4Init() { S4CON = 0x10; T2L = BRT; T2H = BRT >> 8; T2x12 = 1; T2R = 1; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 380 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 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() { EAXFR = 1; //使能访问 XFR WTST = 0x00; //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; Uart4Init(); ES4 = 1; 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 - 381 - STC32G 系列技术手册 16.6.4 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 串口 4 使用定时器 4 做波特率发生器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT bit char char char busy; wptr; rptr; buffer[16]; //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) //定义为无符号长整型,避免计算溢出 void Uart4Isr() interrupt 18 { if (S4TI) { S4TI = 0; busy = 0; } if (S4RI) { S4RI = 0; buffer[wptr++] = S4BUF; wptr &= 0x0f; } } void Uart4Init() { S4CON = 0x50; T4L = BRT; T4H = BRT >> 8; T4x12 = 1; T4R = 1; wptr = 0x00; rptr = 0x00; busy = 0; } void Uart4Send(char dat) { while (busy); busy = 1; S4BUF = dat; } void Uart4SendStr(char *p) { while (*p) { Uart4Send(*p++); } } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 382 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com void main() { EAXFR = 1; //使能访问 XFR WTST = 0x00; 技术支持: 19864585985 选型顾问: 13922805190 //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; Uart4Init(); ES4 = 1; 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 - 383 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 比较器,掉电检测,内部固定比较电压 17 STC32G 系列单片机内部集成了一个比较器。比较器的正极可以是 P3.7 端口、P5.0 端口、P5.1 端 口或者 ADC 的模拟输入通道,而负极可以 P3.6 端口或者是内部 BandGap 经过 OP 后的 REFV 电压(内 部固定比较电压)。通过多路选择器和分时复用可实现多个比较器的应用。 比较器内部有可程序控制的两级滤波:模拟滤波和数字滤波。模拟滤波可以过滤掉比较输入信号中 的毛刺信号,数字滤波可以等待输入信号更加稳定后再进行比较。比较结果可直接通过读取内部寄存器 位获得,也可将比较器结果正向或反向输出到外部端口。将比较结果输出到外部端口可用作外部事件的 触发信号和反馈信号,可扩大比较的应用范围。 比较器内部结构图 17.1 P3.7 P5.0 P5.1 ADCIN 0 1 2 3 CMPRES 模拟滤波 0.1us 0 CMPPS LCC 1 数字滤波 DISFLT P3.6 0 内部REFV(1.19V) 1 延时LCDTY个 CPU 时钟 CMPO E PIE 0 P3.4 1 P4.1 CMPO_S CMPIF CMPNS 注意:当比较器正极选择ADC输入通道时, 请务必要打开ADC_CONTR寄存器 中的ADC电源控制位ADC_POWER 和ADC通道选择位ADC_CHS 比较器内部结构 NIE 比较器功能脚切换 17.2 符号 地址 B7 B6 P_SW2 BAH EAXFR - B5 B4 I2C_S[1:0] B3 B2 B1 B0 CMPO_S S4_S S3_S S2_S CMPO_S:比较器输出脚选择位 CMPO_S CMPO 0 P3.4 1 P4.1 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 384 - STC32G 系列技术手册 17.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 比较器相关的寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 PIE NIE - - CMPCR1 比较器控制寄存器 1 E6H CMPEN CMPIF CMPCR2 比较器控制寄存器 2 E7H INVCMPO DISFLT CMPEXCFG 比较器扩展配置寄存器 7EFEAEH 17.3.1 CHYS[1:0] B1 B0 CMPOE CMPRES 0000,xx00 LCDTY[5:0] - - - CMPNS 0000,0000 CMPPS[1:0] 00xx,x000 比较器控制寄存器 1(CMPCR1) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 CMPCR1 E6H CMPEN CMPIF PIE NIE - - CMPOE CMPRES CMPEN:比较器模块使能位 0:关闭比较功能 1:使能比较功能 CMPIF:比较器中断标志位。当 PIE 或 NIE 被使能后,若产生相应的中断信号,硬件自动将 CMPIF 置 1,并向 CPU 提出中断请求。此标志位必须用户软件清零。 PIE:比较器上升沿中断使能位。 0:禁止比较器上升沿中断。 1:使能比较器上升沿中断。使能比较器的比较结果由 0 变成 1 时产生中断请求。 NIE:比较器下降沿中断使能位。 0:禁止比较器下降沿中断。 1:使能比较器下降沿中断。使能比较器的比较结果由 1 变成 0 时产生中断请求。 CMPOE:比较器结果输出控制位 0:禁止比较器结果输出 1:使能比较器结果输出。比较器结果输出到 P3.4 或者 P4.1(由 P_SW2 中的 CMPO_S 进行设定) CMPRES:比较器的比较结果。此位为只读。 0:表示 CMP+的电平低于 CMP-的电平 1:表示 CMP+的电平高于 CMP-的电平 CMPRES 是经过数字滤波后的输出信号,而不是比较器的直接输出结果。 17.3.2 比较器控制寄存器 2(CMPCR2) 符号 地址 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 时钟数不发生变化,才认为数据变化是有效的;否 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 385 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 则将视同信号无变化。 注意:当使能数字滤波功能后,芯片内部实际的等待时钟需额外增加两个状态机切换时间,即若 LCDTY 设置为 0 时,为关闭数字滤波功能;若 LCDTY 设置为非 0 值 n(n=1~63)时,则实际 的数字滤波时间为(n+2)个系统时钟 比较器输出 CMPRES (LCDTY[5:0]+2) 个CPU时钟 比较器输出 CMPRES 17.3.3 比较器扩展配置寄存器(CMPEXCFG) 符号 地址 CMPEXCFG 7EFEAEH B7 B6 CHYS[1:0] B5 B4 B3 B2 - - - CMPNS B1 B0 CMPPS[1:0] CHYS[1:0]:比较器 DC 迟滞输入选择 CHYS [1:0] 比较器 DC 迟滞输入选择 00 0mV 01 10mV 10 20mV 11 30mV CMPNS:比较器负端输入选择 0:P3.6 1:选择内部 BandGap 经过 OP 后的电压 REFV 作为比较器负极输入源 (芯片在出厂时,内部参 考电压调整为 1.19V) CMPPS[1:0]:比较器正端输入选择 CMPPS[1:0] 比较器正端 00 P3.7 01 P5.0 10 P5.1 11 ADCIN (注意 1:当比较器正极选择 ADC 输入通道时,请务必要打开 ADC_CONTR 寄存器中的 ADC 电 源控制位 ADC_POWER 和 ADC 通道选择位 ADC_CHS) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 386 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 17.4 范例程序 17.4.1 比较器的使用(中断方式) 选型顾问: 13922805190 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void CMP_Isr() interrupt 21 { CMPIF = 0; if (CMPRES) { P10 = !P10; } else { P11 = !P11; } } void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //清中断标志 //下降沿中断测试端口 //上升沿中断测试端口 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // // // // // CMPEXCFG = 0x00; CMPEXCFG |= 0x40; CMPEXCFG &= ~0x03; CMPEXCFG |= 0x01; CMPEXCFG |= 0x02; CMPEXCFG |= 0x03; CMPEXCFG &= ~0x04; CMPEXCFG |= 0x04; //比较器 DC 迟滞输入选择 //0:0mV; 0x40:10mV; 0x80:20mV; 0xc0:30mV //P3.7 为 CMP+输入脚 //P5.0 为 CMP+输入脚 //P5.1 为 CMP+输入脚 //ADC 输入脚为 CMP+输入脚 //P3.6 为 CMP-输入脚 //内部 1.19V 参考电压为 CMP-输入脚 CMPCR1 = 0x00; CMPCR2= 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 387 - STC32G 系列技术手册 // // // // // // // // 官方网站: www.STCMCUDATA.com INVCMPO = 0; INVCMPO = 1; DISFLT = 0; DISFLT = 1; CMPCR2 &= ~0x3f; CMPCR2 |= 0x10; PIE = NIE = 1; PIE = 0; PIE = 1; NIE = 0; NIE = 1; CMPOE = 0; CMPOE = 1; CMPEN = 1; 技术支持: 19864585985 选型顾问: 13922805190 //比较器正向输出 //比较器反向输出 //使能 0.1us 滤波 //禁止 0.1us 滤波 //比较器结果直接输出 //比较器结果经过 16 个去抖时钟后输出 //使能比较器边沿中断 //禁止比较器上升沿中断 //使能比较器上升沿中断 //禁止比较器下降沿中断 //使能比较器下降沿中断 //禁止比较器输出 //使能比较器输出 //使能比较器模块 EA = 1; while (1); } 17.4.2 比较器的使用(查询方式) //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; // CMPEXCFG = 0x00; CMPEXCFG |= 0x40; // // // CMPEXCFG &= ~0x03; CMPEXCFG |= 0x01; CMPEXCFG |= 0x02; CMPEXCFG |= 0x03; 深圳国芯人工智能有限公司 //比较器 DC 迟滞输入选择 //0:0mV; 0x40:10mV; 0x80:20mV; 0xc0:30mV //P3.7 为 CMP+输入脚 //P5.0 为 CMP+输入脚 //P5.1 为 CMP+输入脚 //ADC 输入脚为 CMP+输入脚 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 388 - STC32G 系列技术手册 // // // // // // // // // 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 CMPEXCFG &= ~0x04; CMPEXCFG |= 0x04; //P3.6 为 CMP-输入脚 //内部 1.19V 参考电压为 CMP-输入脚 CMPCR1 = 0x00; CMPCR2= 0x00; INVCMPO = 0; INVCMPO = 1; DISFLT = 0; DISFLT = 1; CMPCR2 &= ~0x3f; CMPCR2 |= 0x10; PIE = NIE = 1; PIE = 0; PIE = 1; NIE = 0; NIE = 1; CMPOE = 0; CMPOE = 1; CMPEN = 1; //比较器正向输出 //比较器反向输出 //使能 0.1us 滤波 //禁止 0.1us 滤波 //比较器结果直接输出 //比较器结果经过 16 个去抖时钟后输出 //使能比较器边沿中断 //禁止比较器上升沿中断 //使能比较器上升沿中断 //禁止比较器下降沿中断 //使能比较器下降沿中断 //禁止比较器输出 //使能比较器输出 //使能比较器模块 while (1) { P10 = CMPRES; } //读取比较器比较结果 } 17.4.3 比较器的多路复用应用(比较器+ADC 输入通道) 由于比较器的正极可以选择 ADC 的模拟输入通道,因此可以通过多路选择器和分时复用可实现多个比 较器的应用。 注意:当比较器正极选择 ADC 输入通道时,请务必要打开 ADC_CONTR 寄存器中的 ADC 电源控制 位 ADC_POWER 和 ADC 通道选择位 ADC_CHS //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" void main() { EAXFR = 1; WTST = 0x00; //头文件见下载软件 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 389 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P5M1 = 0x00; //设置 P1.0 为输入口 P1M0 &= 0xfe; P1M1 |= 0x01; ADC_CONTR = 0x80; // // // // //使能 ADC 模块并选择 P1.0 为 ADC 输入脚 CMPEXCFG = 0x00; CMPEXCFG &= ~0x03; CMPEXCFG |= 0x01; CMPEXCFG |= 0x02; CMPEXCFG |= 0x03; CMPEXCFG &= ~0x04; CMPEXCFG |= 0x04; //P3.7 为 CMP+输入脚 //P5.0 为 CMP+输入脚 //P5.1 为 CMP+输入脚 //ADC 输入脚为 CMP+输入脚 //P3.6 为 CMP-输入脚 //内部 1.19V 参考电压为 CMP-输入脚 CMPCR2 = 0x00; CMPCR1 = 0x00; CMPOE = 1; CMPEN = 1; //使能比较器输出 //使能比较器模块 while (1); } 比较器作外部掉电检测(掉电过程中应及时保存用户数据 17.4.4 到 EEPROM 中) Vcc 7805 Vin 470u 104 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P1.0 P1.1 P1.4 P1.5 P1.6 P1.7 P1.3 UCap P5.4 Vcc Vref+ Gnd P4.5 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P4.4 P4.2 P4.1 CMP+ / P3.7 CMP- / 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 R1 100K以上 R2 ? STC32G12K128 上图中电阻 R1 和 R2 对稳压块 7805 的前端电压进行分压,分压后的电压作为比较器 CMP+的外部 输入与内部 1.19V 参考信号源进行比较。 一般当交流电在 220V 时,稳压块 7805 前端的直流电压为 11V,但当交流电压降到 160V 时,稳压 块 7805 前端的直留电压为 8.5V。当稳压块 7805 前端的直留电压低于或等于 8.5V 时,该前端输入的直 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 390 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 留电压被电阻 R1 和 R2 分压到比较器正极输入端 CMP+,CMP+端输入电压低于内部 1.19V 参考信号源, 此时可产生比较器中断,这样在掉电检测时就有充足的时间将数据保存到 EEPROM 中。当稳压块 7805 前端的直留电压高高于 8.5V 时,该前端输入的直流电压被电阻 R1 和 R2 分压到比较器正极输入端 CMP+,CMP+端输入电压高于内部 1.19V 参考信号源,此时 CPU 可继续正常工作。 17.4.5 比较器检测工作电压(电池电压) R0 100K Vcc 47u C? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P1.0 P1.1 P1.4 P1.5 P1.6 P1.7 P1.3 UCap P5.4 Vcc Vref+ Gnd P4.5 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P4.4 P4.2 P4.1 CMP+ / P3.7 CMP- / 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 R6 31K (约5.0V) R5 35K (约4.5V) R4 42K (约4.0V) R3 51K (约3.5V) R2 65K (约3.0V) R1 90K (约2.5V) STC323G12K128 C? 系统时钟10MHz 103(0.01uF) 上图中,利用电阻分压的原理可以近似的测量出 MCU 的工作电压(选通的通道,MCU 的 IO 口输 出低电平,端口电压值接近 Gnd,未选通的通道,MCU 的 IO 口输出开漏模式的高,不影响其他通道)。 比较器的负端选择内部 1.19V 参考信号源,正端选择通过电阻分压后输入到 CMP+管脚的电压值。 初始化时 P2.5~P2.0 口均设置为开漏模式,并输出高。首先 P2.0 口输出低电平,此时若 Vcc 电压 低于 2.5V 则比较器的比较值为 0,反之若 Vcc 电压高于 2.5V 则比较器的比较值为 1; 若确定 Vcc 高于 2.5V,则将 P2.0 口输出高,P2.1 口输出低电平,此时若 Vcc 电压低于 3.0V 则比 较器的比较值为 0,反之若 Vcc 电压高于 3.0V 则比较器的比较值为 1; 若确定 Vcc 高于 3.0V,则将 P2.1 口输出高,P2.2 口输出低电平,此时若 Vcc 电压低于 3.5V 则比 较器的比较值为 0,反之若 Vcc 电压高于 3.5V 则比较器的比较值为 1; 若确定 Vcc 高于 3.5V,则将 P2.2 口输出高,P2.3 口输出低电平,此时若 Vcc 电压低于 4.0V 则比 较器的比较值为 0,反之若 Vcc 电压高于 4.0V 则比较器的比较值为 1; 若确定 Vcc 高于 4.0V,则将 P2.3 口输出高,P2.4 口输出低电平,此时若 Vcc 电压低于 4.5V 则比 较器的比较值为 0,反之若 Vcc 电压高于 4.5V 则比较器的比较值为 1; 若确定 Vcc 高于 4.5V,则将 P2.4 口输出高,P2.5 口输出低电平,此时若 Vcc 电压低于 5.0V 则比 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 391 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 较器的比较值为 0,反之若 Vcc 电压高于 5.0V 则比较器的比较值为 1。 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" //头文件见下载软件 void delay () { char i; for (i=0; i3.0V //P2.2 输出 0 //电压>3.5V //P2.3 输出 0 //电压>4.0V //P2.4 输出 0 //电压>4.5V //P2.5 输出 0 //电压>5.0V ShowVol: P2 = 0xff; P0 = ~v; } } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 393 - STC32G 系列技术手册 18 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 IAP/EEPROM STC32G 系列单片机内部集成了大容量的 EEPROM。利用 ISP/IAP 技术可将内部 Data Flash 当 EEPROM,擦写次数在 10 万次以上。EEPROM 可分为若干个扇区,每个扇区包含 512 字节。 注意:EEPROM 的写操作只能将字节中的 1 写为 0,当需要将字节中的 0 写为 1,则必须执行扇区 擦除操作。EEPROM 的读/写操作是以 1 字节为单位进行,而 EEPROM 擦除操作是以 1 扇区(512 字节) 为单位进行,在执行擦除操作时,如果目标扇区中有需要保留的数据,则必须预先将这些数据读取到 RAM 中暂存,待擦除完成后再将保存的数据和需要更新的数据一起再写回 EEPROM/DATA-FLASH。 所以在使用 EEPROM 时,建议同一次修改的数据放在同一个扇区,不是同一次修改的数据放在不 同的扇区,不一定要用满。数据存储器的擦除操作是按扇区进行的(每扇区 512 字节)。 EEPROM 可用于保存一些需要在应用过程中修改并且掉电不丢失的参数数据。在用户程序中,可 以对 EEPROM 进行字节读/字节编程/扇区擦除操作。在工作电压偏低时,建议不要进行 EEPROM 操作, 以免发送数据丢失的情况。 18.1 EEPROM 操作时间   读取 1 字节:4 个系统时钟(使用 MOVC 指令读取更方便快捷) 编程 1 字节:约 30~40us(实际的编程时间为 6~7.5us,但还需要加上状态转换时间和各种控 制信号的 SETUP 和 HOLD 时间)  擦除 1 扇区(512 字节):约 4~6ms EEPROM 操作所需时间是硬件自动控制的,用户只需要正确设置 IAP_TPS 寄存器即可。 IAP_TPS=系统工作频率/1000000(小数部分四舍五入进行取整) 例如:系统工作频率为 12MHz,则 IAP_TPS 设置为 12 系统工作频率为 22.1184MHz,则 IAP_TPS 设置为 22 系统工作频率为 5.5296MHz,则 IAP_TPS 设置为 6 18.2 EEPROM 相关的寄存器 位地址与符号 符号 描述 地址 复位值 B7 B6 B5 B4 B3 B2 B1 B0 IAP_DATA IAP 数据寄存器 C2H DATA[7:0] 0000,0000 IAP_DATA1 IAP 数据寄存器 D9H DATA[15:8] 0000,0000 IAP_DATA2 IAP 数据寄存器 DAH DATA[23:16] 0000,0000 IAP_DATA3 IAP 数据寄存器 DBH DATA[31:24] 0000,0000 IAP_ADDRE IAP 扩展地址寄存器 F6H ADDR[23:16] 1111,1111 IAP_ADDRH IAP 高地址寄存器 C3H ADDR[15:8] 0000,0000 IAP_ADDRL IAP 低地址寄存器 C4H ADDR[7:0] 0000,0000 IAP_CMD IAP 命令寄存器 C5H IAP_TRIG IAP 触发寄存器 C6H IAP_CONTR IAP 控制寄存器 C7H 深圳国芯人工智能有限公司 - - - - - CMD[2:0] xxxx,x000 0000,0000 IAPEN SWBS SWRST 国内分销商电话: 0513-5501 2928/2929/2966 CMD_FAIL - - - 传真: 0513-5501 2926/2956/2947 - 0000,xxxx - 394 - STC32G 系列技术手册 IAP_TPS 18.2.1 官方网站: www.STCMCUDATA.com IAP 等待时间控制寄存器 F5H - 技术支持: 19864585985 - 选型顾问: 13922805190 IAP_TPS[5:0] xx00,0000 EEPROM 数据寄存器(IAP_DATA) 符号 地址 IAP_DATA C2H DATA[7:0] IAP_DATA1 D9H DATA[15:8] IAP_DATA2 DAH DATA[23:16] IAP_DATA3 DBH DATA[31:24] B7 B6 B5 B4 B3 B2 B1 B0 在进行 EEPROM 的读操作时,命令执行完成后读出的 EEPROM 数据保存在 IAP_DATA 寄存器中。 在进行 EEPROM 的写操作时,在执行写命令前,必须将待写入的数据存放在 IAP_DATA 寄存器中,再 发送写命令。擦除 EEPROM 命令与 IAP_DATA 寄存器无关。 注:STC32G12K128 系列和 STC32G8K64 系列只支持单字节读写操作,数据寄存器只有 IAP_DATA 有效。STC32F12K60 系列支持 4 字节读写操作,数据寄存器 IAP_DATA、IAP_DATA1、IAP_DATA2、 IAP_DATA3 均有效 18.2.2 EEPROM 地址寄存器(IAP_ADDR) 符号 地址 IAP_ADDRE F6H ADDR[23:16] IAP_ADDRH C3H ADDR[15:8] IAP_ADDRL C4H ADDR[7:0] B7 B6 B5 B4 B3 B2 B1 B0 EEPROM 进行读、写、擦除操作的目标地址寄存器。IAP_ADDRH 保存地址的高字节,IAP_ADDRL 保存地址的低字节 18.2.3 EEPROM 命令寄存器(IAP_CMD) 符号 地址 B7 B6 B5 B4 B3 IAP_CMD C5H - - - - - B2 B1 B0 CMD[2:0] CMD[2:0]:发送EEPROM操作命令 000(CMD0):空操作 001(CMD1):读 EEPROM 字节命令。读取目标地址 ADDR[23:0]所在的 1 字节。 010(CMD2):写 EEPROM 字节命令。写目标地址 ADDR[23:0]所在的 1 字节。 011(CMD3):擦除 EEPROM 扇区。擦除目标地址 ADDR[23:9]所在的 1 扇区(512 字节)。 100(CMD4):空操作 101(CMD5):写 EEPROM 字(4 字节)命令。写目标地址 ADDR[23:2]所在的 4 字节。 110(CMD6):擦除 EEPROM 半扇区(256 字节)。擦除目标地址 ADDR[23:8]所在的 0.5 扇区(256 字节)。 111(CMD7):擦除 EEPROM 块。擦除目标地址 ADDR[23:15]所在的 32 扇区(16K 字节)。 注:STC32G12K128 系列和 STC32G8K64 系列只支持 CMD0、CMD1、CMD2、CMD3。STC32F12K60 系列支持全部的命令。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 395 - STC32G 系列技术手册 18.2.4 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 EEPROM 触发寄存器(IAP_TRIG) 符号 地址 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 指令。 18.2.5 EEPROM 控制寄存器(IAP_CONTR) 符号 地址 B7 B6 B5 B4 B3 B2 B1 B0 IAP_CONTR C7H IAPEN SWBS SWRST CMD_FAIL - - - - IAPEN:EEPROM操作使能控制位 0:禁止 EEPROM 操作 1:使能 EEPROM 操作 SWBS:软件复位选择控制位,(需要与SWRST配合使用) 0:软件复位后从用户代码开始执行程序 1:软件复位后从系统 ISP 监控代码区开始执行程序 SWRST:软件复位控制位 0:无动作 1:产生软件复位 CMD_FAIL:EEPROM操作失败状态位,需要软件清零 0:EEPROM 操作正确 1:EEPROM 操作失败 18.2.6 EEPROM 擦除等待时间控制寄存器(IAP_TPS) 符号 地址 B7 B6 IAP_TPS F5H - - B5 B4 B3 B2 B1 B0 IAP_TPS[5:0] 需要根据工作频率进行设置 若工作频率为12MHz,则需要将IAP_TPS设置为12;若工作频率为24MHz,则需要将IAP_TPS设置为24, 其他频率以此类推。 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 396 - STC32G 系列技术手册 18.3 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 EEPROM 大小及地址 STC32G 系列单片机内部均有用于保存用户数据的 EEPROM。内部的 EEPROM 有 3 操作方式:读、 写和擦除,其中擦除操作是以扇区为单位进行操作,每扇区为 512 字节,即每执行一次擦除命令就会擦 除一个扇区,而读数据和写数据都是以字节为单位进行操作的,即每执行一次读或者写命令时只能读出 或者写入一个字节。 STC32G 系列单片机内部的 EEPROM 的访问方式有两种:IAP 方式和 MOV 方式。IAP 方式可对 EEPROM 执行读、写、擦除操作,但 MOV 只能对 EEPROM 进行读操作,而不能进行写和擦除操作。 无论是使用 IAP 方式还是使用 MOV 方式访问 EEPROM,首先都需要设置正确的目标地址。使用 IAP 方式时,地址数据为 EEPROM 的目标地址,地址从 0000 开始,若使用 MOV 指令读取 EEPROM 数据, 则地址数据为基地址(FE:0000)加上 EEPROM 的目标地址。下面以 STC32G12K128 这个型号为例, 对目标地址进行详细说明: STC32G12K128 的 EEPROM 大小是需要在 ISP 下载时进行设置的,如下图所示,将 EEPROM 设 置为 64K 则 EEPROM 在 128K 的 Flash 存储空间中位于 FE:0000h~FE:FFFFh(注意:无论 EEPROM 设置为多少, EEPROM 在 Flash 存储空间中始终从 FE:0000h 开始),如下图所示: 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 397 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 FF:FFFFh ROM FF:0000h FE:FFFFh EEPROM FE:1234h FE:0000h STC32G12K128 现在需要对 EEPROM 物理地址 1234h 的单元进行读、写、擦除时,若使用 IAP 方式进行访问时, 设置的目标地址为 1234h,即 IAP_ADDRE 设置为 00h,IAP_ADDRH 设置 12h,IAP_ADDRL 设置 34h, 然后设置相应的触发命令即可对 1234h 单元进行正确操作了。但若是使用 MOV 方式读取 EEPROM 的 1234h 单元,则目标地址为基地址 FE:0000h 加上 1234h,即必须将 32 位寄存器 DRx 设置为 FE:1234h, 才能使用 MOV 指令正确读取(注意:STC32G 系列和 STC8 系列不一样,不能使用 MOVC 读取 EEPROM)。 下表列出了设置不同 EEPROM 大小时,IAP 方式和 MOV 方式访问 EEPROM 的情况 型号 STC32G12K128 深圳国芯人工智能有限公司 大小 扇区数 1K 2 2K IAP方式读/写/擦除 MOV读取 起始地址 结束地址 起始地址 结束地址 0:03FFh FE:0000h FE:03FFh 4 0:0000h 0:0000h 0:07FFh FE:0000h FE:07FFh 4K 8 0:0000h 0:0FFFh FE:0000h FE:0FFFh 8K 16 0:0000h 0:1FFFh FE:0000h FE:1FFFh 16K 32 0:0000h 0:3FFFh FE:0000h FE:3FFFh 32K 64 0:0000h 0:7FFFh FE:0000h FE:7FFFh 64K 128 0:0000h 0:FFFFh FE:0000h FE:FFFFh 96K 192 0:0000h 1:7FFFh FE:0000h FF:7FFFh 128K 256 0:0000h 1:FFFFh FE:0000h FF:FFFFh 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 398 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 18.4 范例程序 18.4.1 EEPROM 基本操作 技术支持: 19864585985 选型顾问: 13922805190 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" //头文件见下载软件 void IapIdle() { IAP_CONTR = 0; IAP_CMD = 0; IAP_TRIG = 0; IAP_ADDRE = 0x00; IAP_ADDRH = 0x00; IAP_ADDRL = 0x00; } //关闭 IAP 功能 //清除命令寄存器 //清除触发寄存器 char IapRead(unsigned long addr) { char dat; //使能 IAP //设置等待参数 12MHz //设置 IAP 读命令 //设置 IAP 低地址 //设置 IAP 高地址 //设置 IAP 最高地址 //写触发命令(0x5a) //写触发命令(0xa5) IAP_CONTR = 0x80; IAP_TPS = 12; IAP_CMD = 1; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_ADDRE = addr >> 16; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); _nop_(); _nop_(); _nop_(); dat = IAP_DATA; IapIdle(); //读 IAP 数据 //关闭 IAP 功能 return dat; } void IapProgram(unsigned long addr, char dat) { IAP_CONTR = 0x80; IAP_TPS = 12; IAP_CMD = 2; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_ADDRE = addr >> 16; IAP_DATA = dat; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); _nop_(); 深圳国芯人工智能有限公司 //使能 IAP //设置等待参数 12MHz //设置 IAP 写命令 //设置 IAP 低地址 //设置 IAP 高地址 //设置 IAP 最高地址 //写 IAP 数据 //写触发命令(0x5a) //写触发命令(0xa5) 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 399 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com _nop_(); _nop_(); IapIdle(); 技术支持: 19864585985 选型顾问: 13922805190 //关闭 IAP 功能 } void IapErase(unsigned long addr) { IAP_CONTR = 0x80; IAP_TPS = 12; IAP_CMD = 3; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_ADDRE = addr >> 16; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); _nop_(); _nop_(); _nop_(); IapIdle(); } //使能 IAP //设置等待参数 12MHz //设置 IAP 擦除命令 //设置 IAP 低地址 //设置 IAP 高地址 //设置 IAP 最高地址 //写触发命令(0x5a) //写触发命令(0xa5) // //关闭 IAP 功能 void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; IapErase(0x0400); P0 = IapRead(0x0400); IapProgram(0x0400, 0x12); P1 = IapRead(0x0400); //P0=0xff //P1=0x12 while (1); } 18.4.2 使用 MOV 读取 EEPROM //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" 深圳国芯人工智能有限公司 //头文件见下载软件 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 400 - STC32G 系列技术手册 #define IAP_BASE 官方网站: www.STCMCUDATA.com //关闭 IAP 功能 //清除命令寄存器 //清除触发寄存器 char IapRead(unsigned long addr) { Addr = (addr & 0x1ffff) | IAP_BASE; return *(char far *)(addr); } void IapProgram(unsigned long addr, char dat) { IAP_CONTR = 0x80; IAP_TPS = 12; IAP_CMD = 2; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_ADDRE = addr >> 16; IAP_DATA = dat; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); _nop_(); _nop_(); _nop_(); IapIdle(); } void IapErase(unsigned long addr) { IAP_CONTR = 0x80; IAP_TPS = 12; IAP_CMD = 3; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_ADDRE = addr >> 16; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); _nop_(); _nop_(); _nop_(); IapIdle(); } 深圳国芯人工智能有限公司 选型顾问: 13922805190 0xfe0000 void IapIdle() { IAP_CONTR = 0; IAP_CMD = 0; IAP_TRIG = 0; IAP_ADDRE = 0x00; IAP_ADDRH = 0x00; IAP_ADDRL = 0x00; } void main() { EAXFR = 1; WTST = 0x00; 技术支持: 19864585985 //使用 MOV 读取 EEPROM 需要加上基地址 //使用 MOV 读取数据 //使能 IAP //设置等待参数 12MHz //设置 IAP 写命令 //设置 IAP 低地址 //设置 IAP 高地址 //设置 IAP 最高地址 //写 IAP 数据 //写触发命令(0x5a) //写触发命令(0xa5) //关闭 IAP 功能 //使能 IAP //设置等待参数 12MHz //设置 IAP 擦除命令 //设置 IAP 低地址 //设置 IAP 高地址 //设置 IAP 最高地址 //写触发命令(0x5a) //写触发命令(0xa5) // //关闭 IAP 功能 //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 401 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; IapErase(0x0400); P0 = IapRead(0x0400); IapProgram(0x0400, 0x12); P1 = IapRead(0x0400); //P0=0xff //P1=0x12 while (1); } 18.4.3 使用串口送出 EEPROM 数据 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #include "intrins.h" #define #define FOSC BRT //头文件见下载软件 11059200UL (65536 - FOSC / 115200 / 4) void UartInit() { SCON = 0x5a; T2L = BRT; T2H = BRT >> 8; S1BRT = 1; T2x12 = 1; T2R = 1; } void UartSend(char dat) { while (!TI); TI = 0; SBUF = dat; } void IapIdle() { IAP_CONTR = 0; IAP_CMD = 0; IAP_TRIG = 0; IAP_ADDRE = 0x00; 深圳国芯人工智能有限公司 //关闭 IAP 功能 //清除命令寄存器 //清除触发寄存器 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 402 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 IAP_ADDRH = 0x00; IAP_ADDRL = 0x00; } char IapRead(unsigned long addr) { char dat; //使能 IAP //设置等待参数 12MHz //设置 IAP 读命令 //设置 IAP 低地址 //设置 IAP 高地址 //设置 IAP 最高地址 //写触发命令(0x5a) //写触发命令(0xa5) IAP_CONTR = 0x80; IAP_TPS = 12; IAP_CMD = 1; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_ADDRE = addr >> 16; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); _nop_(); _nop_(); _nop_(); dat = IAP_DATA; IapIdle(); //读 IAP 数据 //关闭 IAP 功能 return dat; } void IapProgram(unsigned long addr, char dat) { IAP_CONTR = 0x80; IAP_TPS = 12; IAP_CMD = 2; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_ADDRE = addr >> 16; IAP_DATA = dat; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); _nop_(); _nop_(); _nop_(); IapIdle(); } void IapErase(unsigned long addr) { IAP_CONTR = 0x80; IAP_TPS = 12; IAP_CMD = 3; IAP_ADDRL = addr; IAP_ADDRH = addr >> 8; IAP_ADDRE = addr >> 16; IAP_TRIG = 0x5a; IAP_TRIG = 0xa5; _nop_(); _nop_(); _nop_(); _nop_(); IapIdle(); 深圳国芯人工智能有限公司 //使能 IAP //设置等待参数 12MHz //设置 IAP 写命令 //设置 IAP 低地址 //设置 IAP 高地址 //设置 IAP 最高地址 //写 IAP 数据 //写触发命令(0x5a) //写触发命令(0xa5) //关闭 IAP 功能 //使能 IAP //设置等待参数 12MHz //设置 IAP 擦除命令 //设置 IAP 低地址 //设置 IAP 高地址 //设置 IAP 最高地址 //写触发命令(0x5a) //写触发命令(0xa5) // //关闭 IAP 功能 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 403 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 } void main() { EAXFR = 1; WTST = 0x00; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; UartInit(); IapErase(0x0400); UartSend(IapRead(0x0400)); IapProgram(0x0400, 0x12); UartSend(IapRead(0x0400)); while (1); } 18.4.4 串口 1 读写 EEPROM-带 MOV 读 (main.c) //测试工作频率为 11.0592MHz /* 本程序经过测试完全正常, 不提供电话技术支持, 如不能理解, 请自行补充相关基础. */ /************* 本程序功能说明 ************** STC32G 系列 EEPROM 通用测试程序. 请先别修改程序, 直接下载测试.,下载时选择主频 11.0592MHZ. PC 串口设置: 波特率 115200,8,n,1. 对 EEPROM 做扇区擦除、写入 64 字节、读出 64 字节的操作。 命令例子: E0 对 EEPROM 进行扇区擦除操作,E 表示擦除, 数字 0 为 0 扇区(十进制, 0~126, 看具体 IC). W0 对 EEPROM 进行写入操作,W 表示写入, 数字 0 为 0 扇区(十进制, 0~126, 看具体 IC). 从扇区的开始地址连续 写 64 字节. R0 对 EEPROM 进行 IAP 读出操作,R 表示读出, 数字 0 为 0 扇区(十进制, 0~126, 看具体 IC). 从扇区的开始地址 连续读 64 字节. M0 对 EEPROM 进行 MOVC 读出操作(操作地址为扇区*512+偏移地址),数字 0 为 0 扇区(十进制, 0~126, 看具体 IC). 从扇区的开始地址连续读 64 字节. 注意:为了通用,程序不识别扇区是否有效,用户自己根据具体的型号来决定。 日期: 2019-6-10 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 404 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 ******************************************/ #include #include "config.H" "EEPROM.h" #define #define #define #define Baudrate1 UART1_BUF_LENGTH EEADDR_OFFSET TimeOutSet1 115200L 10 0xfe0000 5 //定义 EEPROM 用 MOV 访问时加的基地址, /************* 本地常量声明 **************/ u8 code T_Strings[]={"去年今日此门中,人面桃花相映红。人面不知何处去,桃花依旧笑春风。"}; /************* 本地变量声明 **************/ u8 xdata tmp[70]; u8 xdata RX1_Buffer[UART1_BUF_LENGTH]; u8 RX1_Cnt; u8 RX1_TimeOut; bit B_TX1_Busy; /************* 本地函数声明 void UART1_config(void); void TX1_write2buff(u8 dat); void PrintString1(u8 *puts); /************* **************/ //写入发送缓冲 //发送一个字符串 外部函数和变量声明 *****************/ /**********************************************/ u8 { CheckData(u8 dat) if((dat >= '0') && (dat = 'A') && (dat = 'a') && (dat ADC_result; temp--) { ADC_result = (ADC_Convert(RV09_CH)/4); PWMA_CCR1H = (u8)(temp >> 8); PWMA_CCR1L = (u8)(temp); PWMA_CCR2H = (u8)(temp >> 8); PWMA_CCR2L = (u8)(temp); PWMA_CCR3H = (u8)(temp >> 8); PWMA_CCR3L = (u8)(temp); DelayXms(10); } break; case RUN: SPEED_ADJ(); //马达调速 if((BRK_occur == TRUE)) Motor_sta = STOP; break; case STOP: MOTOR_STOP(); Motor_sta = IDLE; break; case IDLE: if(KEY_detect()==1) Motor_sta = START; //启动马达 BRK_occur = FALSE; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 //开环启动 传真: 0513-5501 2926/2956/2947 - 555 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 Motor_speed = 0; CAP1_avg = 0; CAP1_cnt = 0; CAP1_sum = 0; break; } } } void TIM0_ISR() interrupt 1 { if(Motor_sta == START) { if(Timer0_cnt>7); CAP1_sum = 0; Motor_speed = 5000000/CAP1_avg; } PWMA_SR1 &=~0x20; } if((PWMA_SR1 & 0x80)) { BRK_occur = TRUE; PWMA_SR1 &=~0x80; } } //清零 //BRK //清零 void PWMB_ISR() interrupt 27 { unsigned char ccr_tmp=0; 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 557 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 if((PWMB_SR1 & 0X02)) { ccr_tmp = PWMB_CCR5H; if(ccr_tmp>1) //软件滤波 { PWMB_CAP1_v = ccr_tmp; PWMB_CAP1_v = (PWMB_CAP1_v9); } } PWMB_SR1 &=~0X02; } } void UART_INIT() { SCON = 0x50; AUXR = 0x40; TMOD = 0x20; // //8 位可变波特率 //定时器 1 为 1T 模式 //定时器 1 为模式 0(16 位自动重载) TL1 = 254; TH1 = 254; ET1 = 0; TR1 = 1; } void DelayXus(unsigned char delayTime) { int i = 0; while( delayTime--) { for( i = 0 ; i < 1 ; i++); } } void DelayXms( unsigned char delayTime ) { int i = 0; while( delayTime--) { for( i = 0 ; i < 2 ; i++) { DelayXus(100); } } } unsigned int ADC_Convert(u8 ch) { u16 res=0; ADC_CONTR &= ~0x0f; ADC_CONTR |= ch; ADC_CONTR |= 0x40; DelayXus(1); while (!(ADC_CONTR & 0x20)); 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 558 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 ADC_CONTR &= ~0x20; res = ADC_RES; res = (res6); if (res < 360) res=360; if (res > 900) res=900; return res; } void SPEED_ADJ() { u16 ADC_result; ADC_result = (ADC_Convert(RV09_CH)/4); PWMA_CCR1H = (u8)(ADC_result >> 8); PWMA_CCR1L = (u8)(ADC_result); PWMA_CCR2H = (u8)(ADC_result >> 8); PWMA_CCR2L = (u8)(ADC_result); PWMA_CCR3H = (u8)(ADC_result >> 8); PWMA_CCR3L = (u8)(ADC_result); //调速旋钮 ADC 采样 //计数器比较值 } //读霍尔传感器 unsigned char RD_HALL() { unsigned char Hall_sta = 0; DelayXus(40); (P17)? (Hall_sta|=0x01) : (Hall_sta&=~0x01); (P54)? (Hall_sta|=0x02) : (Hall_sta&=~0x02); (P33)? (Hall_sta|=0x04) : (Hall_sta&=~0x04); return Hall_sta; } void MOTOR_START() { PWMA_CCR1H = (u8)(PWMA_STPulse >> 8); PWMA_CCR1L = (u8)(PWMA_STPulse); PWMA_CCR2H = (u8)(PWMA_STPulse >> 8); PWMA_CCR2L = (u8)(PWMA_STPulse); PWMA_CCR3H = (u8)(PWMA_STPulse >> 8); PWMA_CCR3L = (u8)(PWMA_STPulse); PWMA_BKR |= 0x80; PWMA_IER = 0x00; TR0 = 1; //计数器比较值 //主输出使能相当于总开关 //使能中断 while (HA < 6*20); PWMA_IER = 0xa0; //使能中断 } void MOTOR_STOP() { PWMA_BKR &= ~0x80; PWMA_IER &= ~0x20; } 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 559 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 unsigned char KEY_detect() { if(!P37) { DelayXms(10); if(!P37) { return 1; } else return 0; } else if(!P03) { DelayXms(10); if(!P03) { return 2; } else return 0; } else return 0; } 23.8.3 使用高级 PWM 实现编码器 //测试工作频率为 11.0592MHz //#include "stc8h.h" #include "stc32g.h" #define MAIN_Fosc //头文件见下载软件 11059200L //定义主时钟 /************* 功能说明 ************** PWMA 模块工作于编码器模式. PWMA 模块只能接一个编码器. 串口 1(RXD-->P3.0 TXD-->P3.1)返回读数结果, 串口设置 115200,8,n,1; 编码器 A 相输入: PWM1P (P1.0) 编码器 B 相输入: PWM2P (P1.2) 编码器模式, 模式 1: 每个脉冲两个边沿加减 2. 模式 2: 每个脉冲两个边沿加减 2. 模式 3: 每个脉冲两个边沿加减 4. ******************************************/ unsigned int bit pulse; B_Change; //编码器脉冲 //编码器计数改变 bit B_TX1_Busy; // 发送忙标志 void void void PWMA_config(void); UART1_config(unsigned long brt); UART1_TxByte(unsigned char dat); // brt: 通信波特率 void main(void) 深圳国芯人工智能有限公司 国内分销商电话: 0513-5501 2928/2929/2966 传真: 0513-5501 2926/2956/2947 - 560 - STC32G 系列技术手册 官方网站: www.STCMCUDATA.com 技术支持: 19864585985 选型顾问: 13922805190 { unsigned int j; //使能访问 XFR //设置程序代码等待参数, //赋值为 0 可将 CPU 执行程序的速度设置为最快 EAXFR = 1; WTST = 0x00; P1M1 = 0x00; P1M0 = 0x00; // brt: 通信波特率 UART1_config(115200UL); EA = 1; PWMA_config(); pulse = 10; while (1) { if(B_Change) { B_Change = 0; j = pulse; UART1_TxByte(j/10000+'0'); UART1_TxByte((j%10000)/1000+'0'); UART1_TxByte((j%1000)/100+'0'); UART1_TxByte((j%100)/10+'0'); UART1_TxByte( j%10+'0'); UART1_TxByte(0x0d); UART1_TxByte(0x0a); } } //转成十进制文本并发送 } //======================================================================== // 函数: void PWMA_config(void) // 描述: PPWM 配置函数。 // 参数: noe. // 返回: none. // 版本: V1.0, 2021-5-10 // 备注: //======================================================================== void PWMA_config(void) { PWMA_PSCR = 0; //预分频 Fck_cnt = Fck_psc/(PSCR[15:0]+1), //边沿对齐 PWM 频率 =SYSclk/((PSCR+1)*(AAR+1)), //中央对齐频率 =SYSclk/((PSCR+1)*(AAR+1)*2). PWMA_ARR = 0xffff; //自动重装载寄存器,控制 PWM 周期 PWMA_CNTR = 0; //清零编码器计数器值 PWMA_ENO = 0; //IO 禁止输出 PWM PWMA_CCMR1 = 0x01+(10
STC32G12K128-BETA-LQFP64 价格&库存

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

免费人工找货
STC32G12K128-BETA-LQFP64
  •  国内价格
  • 1+6.19875
  • 30+5.98500
  • 100+5.55750
  • 500+5.13000
  • 1000+4.91625

库存:2