【STC头文件】STC8系列之STC8G头文件寄存器注释


特殊功能寄存器介绍

定时器/计数器工作方式寄存器(TMOD )
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
TMOD(定时器模式寄存器) 89H GATE C/T M1 M0 GATE C/T M1 M0
  • GATE:用于控制定时器启动是否受外部中断源的影响.
    – 当GATE=0时,只要用软件使TR0或TR1等于1,就可以启动T0或T1定时/计数器工作。
    – 当GATE=1时,除了用软件使TR0或TR1等于1外,还要使外部中断引脚INT0/1为高电平,这样定时/计数器才能启动工作。
    == 注意:GATE=0表示控制定时器启动不受外部中断源的影响. ==
  • C/T( 定时/计数模式选择位): C/T=0为定时模式,C/T=1为计数模式。
  • M1,M0(工作方式设置位):方式选择功能。由于有2位,因此有4种工作方式:
  ================================================================M1M0 工作方式 计数器模式 TMOD(设置定时器模式)0 0 方式0 13位计数器 TMOD=0x000 1 方式1 16位计数器 TMOD=0x011 0 方式2 自动重装8位计数器 TMOD=0x021 1 方式3 T0分为2个8位计数器,T1为波特率发生器 TMOD=0x03================================================================
程序状态寄存器(PSW)
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
PSW D0H CY AC F0 RS1 RS0 OV F1 P
  • CY:进/借位标志位。
  • AC:辅组进/借位标志位。
  • F0:用户标志位 0,用户定义的一个状态标志,可以通过软件对它置位或清零。
  • RS1,RS0:工作寄存器选择位,一个寄存器组有8字节,有四组寄存器,一共32字节。在片内数据存储区中的00H~1FH
  • OV: 当进行有符号(signed)数加减法运算时,由硬件自动置位或清零。当OV=1时,表示一个数字已经超出了累加器以补码形式表示一个有符号数的范围,即超出了-128~+127的范围.
  • F1:用户标志位 1
  • P: 奇偶标志位.每执行一条汇编指令,单片机都能根据ALU运算中1的个数的奇偶自动令P置位或清零,奇为1,偶为0。
    此标志位对串行通信的数据传输非常有用,通过就校验可以检验传输的可靠性。
辅助寄存器(AUXR)
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
AUXR 8EH T0x12 T1x12 UART_M0x6 T2R T2_C/T T2x12 EXTRAM S1ST2

EXTRAM:扩展 RAM 访问控制

  • 0:访问内部扩展 RAM。
  • 1:内部扩展 RAM 被禁用。
中断使能寄存器(中断允许位)(IE)
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
IE A8H EA ELVD EADC ES ET1 EX1 ET0 EX0
  • EA (IE.7):EA=0时,所有中断禁止(即不产生中断);EA=1时,各中断的产生由个别的允许位决定,0:CPU 屏蔽所有的中断申请,1:CPU 开放中断
  • ELVD:低压检测中断允许位。0:禁止低压检测中断,1:允许低压检测中断
  • EADC:A/D 转换中断允许位。0:禁止 A/D 转换中断,1:允许 A/D 转换中断
  • ES:串行口中断允许(ES=1允许,ES=0禁止)
  • ET1:定时1中断允许
  • EX1:外中断INT1中断允许
  • ET0:定时器0中断允许
  • EX0:外部中断INT0的中断允许
中断请求寄存器(中断标志位)
定时器控制寄存器(TCON)
符号 地址 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中断请求标志。中断服务程序中,硬件自动清零。
扩展外部中断标志辅助寄存器(AUXINTIF)
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
AUXINTIF EFH - INT4IF INT3IF INT 2IF - T4IF T3IF T2IF
  • INT4IF:外部中断4中断请求标志。中断服务程序中,硬件自动清零。
  • INT3IF:外部中断3中断请求标志。中断服务程序中,硬件自动清零。
  • INT2IF:外部中断2中断请求标志。中断服务程序中,硬件自动清零。
  • T4IF:定时器4溢出中断标志。中断服务程序中,硬件自动清零。
  • T3IF:定时器3溢出中断标志。中断服务程序中,硬件自动清零。
  • T2IF:定时器2溢出中断标志。中断服务程序中,硬件自动清零。
通讯相关,串口和USB控制寄存器
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
SCON 98H SM0/FE SM1 SM2 REN TB8 RB8 TI RI
串口2控制寄存器 (S2CON) 9AH S2SM0 - S2SM2 S2REN S2TB8 S2RB8 S2TI S2RI
串口3控制寄存器 (S3CON) ACH S3SM0 S3ST4 S3SM2 S3REN S3TB8 S3RB8 S3TI S3RI
USB控制寄存器(USBCON ) F4H ENUSB USBRST PS2M PUEN PDEN DFREC DP DM
  • TI:串口1发送完成中断请求标志。需要软件清零。
  • RI:串口1接收完成中断请求标志。需要软件清零。
  • S2TI:串口2发送完成中断请求标志。需要软件清零。
  • S2RI:串口2接收完成中断请求标志。需要软件清零。
  • S3TI:串口3发送完成中断请求标志。需要软件清零。
  • S3RI:串口3接收完成中断请求标志。需要软件清零。
  • S4TI:串口4发送完成中断请求标志。需要软件清零。
  • S4RI:串口4接收完成中断请求标志。需要软件清零。
电源控制寄存器(PCON)
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
PCON 87H SMOD SMOD0 LVDF POF GF1 GF0 PD IDL
  • LVDF:低压检测中断请求标志。需要软件清零。
ADC 控制寄存器(ADC_CONTR)
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
ADC_CONTR BCH ADC_POWER ADC_START ADC_FLAG ADC_EPWMT ADC_CHS[4-3] [4-2] [4-1] [4-0]
  • ADC_FLAG:ADC转换完成中断请求标志。需要软件清零。
SPI 状态寄存器(SPSTAT)
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
SPSTAT CDH SPIF WCOL - - - - - -
  • ADC_FLAG:ADC转换完成中断请求标志。需要软件清零。
PCA 控制寄存器
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
CCON D8H CF CR - - CCF3 CCF2 CCF1 CCF0
  • CF:PCA计数器中断请求标志。需要软件清零。
  • CCF3:PCA模块3中断请求标志。需要软件清零。
  • CCF2:PCA模块2中断请求标志。需要软件清零。
  • CCF1:PCA模块1中断请求标志。需要软件清零。
  • CCF0:PCA模块0中断请求标志。需要软件清零。
比较器控制寄存器 1
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
CMPCR1 E6H CMPEN CMPIF PIE NIE PIS NIS CMPOE CMPRES
  • CMPIF:比较器中断请求标志。需要软件清零。
I2C 状态寄存器
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
I2CMSST FE82H MSBUSY MSIF - - - - MSACKI MSACKO
I2CSLST FE84H SLBUSY STAIF RXIF TXIF STOIF TXING SLACKI SLACKO
  • MSIF:I2C主机模式中断请求标志。需要软件清零。
  • ESTAI:I2C从机接收START事件中断请求标志。需要软件清零。
  • ERXI:I2C从机接收数据完成事件中断请求标志。需要软件清零。
  • ETXI:I2C从机发送数据完成事件中断请求标志。需要软件清零。
  • ESTOI:I2C从机接收STOP事件中断请求标志。需要软件清零。
增强型 PWM 配置寄存器
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
PWMCFG01 F6H PWM1CBIF EPWM1CBI FLTPS0 PWM1CEN PWM0CBIF EPWM0CBI ENPWM0TA PWM0CEN
PWMCFG23 F7H PWM3 CBIF EPWM3 CBI FLTPS1 PWM3 CEN PWM2CBIF EPWM2CBI ENPWM2TA PWM2CEN
PWMCFG45 FEH PWM5 CBIF EPWM5 CBI FLTPS2 PWM5 CEN PWM4CBIF EPWM4CBI ENPWM4TA PWM4CEN
  • PWM0CBIF:增强型PWM0计数器中断请求标志。需要软件清零。
  • PWM1CBIF:增强型PWM1计数器中断请求标志。需要软件清零。
  • PWM2CBIF:增强型PWM2计数器中断请求标志。需要软件清零。
  • PWM3CBIF:增强型PWM3计数器中断请求标志。需要软件清零。
  • PWM4CBIF:增强型PWM4计数器中断请求标志。需要软件清零。
  • PWM5CBIF:增强型PWM5计数器中断请求标志。需要软件清零。
增强型 PWM 中断标志寄存器
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
PWM0IF FF05H C7IF C6IF C5IF C4IF C3IF C2IF C1IF C0IF
PWM1IF FF55H C7IF C6IF C5IF C4IF C3IF C2IF C1IF C0IF
PWM2IF FFA5H C7IF C6IF C5IF C4IF C3IF C2IF C1IF C0IF
PWM3IF FC05H C7IF C6IF C5IF C4IF C3IF C2IF C1IF C0IF
PWM4IF FC55H C7IF C6IF C5IF C4IF C3IF C2IF C1IF C0IF
PWM5IF FCA5H C7IF C6IF C5IF C4IF C3IF C2IF C1IF C0IF
  • C7IF:增强型PWM通道7中断请求标志。需要软件清零。
  • C6IF:增强型PWM通道6中断请求标志。需要软件清零。
  • C5IF:增强型PWM通道5中断请求标志。需要软件清零。
  • C4IF:增强型PWM通道4中断请求标志。需要软件清零。
  • C3IF:增强型PWM通道3中断请求标志。需要软件清零。
  • C2IF:增强型PWM通道2中断请求标志。需要软件清零。
  • C1IF:增强型PWM通道1中断请求标志。需要软件清零。
  • C0IF:增强型PWM通道0中断请求标志。需要软件清零。
增强型 PWM 异常检测控制寄存器
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
PWM0FDCR FF06H INVCMP INVIO ENFD FLTFLIO EFDI FDCMP FDIO FDIF
PWM1FDCR FF56H INVCMP INVIO ENFD FLTFLIO - FDCMP FDIO FDIF
PWM2FDCR FFA6H INVCMP INVIO ENFD FLTFLIO EFDI FDCMP FDIO FDIF
PWM3FDCR FC06H INVCMP INVIO ENFD FLTFLIO - FDCMP FDIO FDIF
PWM4FDCR FC56H INVCMP INVIO ENFD FLTFLIO EFDI FDCMP FDIO FDIF
PWM5FDCR FCA6H INVCMP INVIO ENFD FLTFLIO - FDCMP FDIO FDIF
  • FDIF:增强型PWM异常检测中断请求标志。需要软件清零。
触摸按键状态寄存器 2
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
  • TSIF:触摸按键中断标志。需软件写1清零。
中断优先级寄存器:IP,IPH,IP2,IP2H,IP3,IP3H,
符号 地址 B7 B6 B5 B4 B3 B2 B1 B0
中断优先级控制寄存器 B8H - PLVD PADC PS PT1 PX1 PT0 PX0
IPH高中断优先级控制寄存器 B7H - PLVDH PADCH PSH PT1H PX1H PT0H PX0H
中断优先级控制寄存器2 B5H PUSB/PTKSU PI2C PCMP PX4 PPWMB PPWMA PSPI PS2
IP2H高中断优先级控制寄存器2 B6H PUSBH/PTKSUH PI2CH PCMPH PX4H PPWMBH PPWMAH PSPIH PS2H
IP3中断优先级控制寄存器3 DFH PPWM4FD PPWM5 PPWM4 PPWM3 PPWM2 PPWM1 PS4 PS3
IP3H高中断优先级控制寄存器3 EEH PPWM4FDH PPWM5H PPWM4H PPWM3H PPWM2H PPWM1H PS4H PS3H
  • PX0H,PX0:外部中断0中断优先级控制位
    – 00:INT0 中断优先级为 0 级(最低级)
    – 01:INT0 中断优先级为 1 级(较低级)
    – 10:INT0 中断优先级为 2 级(较高级)
    – 11:INT0 中断优先级为 3 级(最高级)
  • PT0H,PT0:定时器0中断优先级控制位
    – 00:定时器 0 中断优先级为 0 级(最低级)
    – 01:定时器 0 中断优先级为 1 级(较低级)
    – 10:定时器 0 中断优先级为 2 级(较高级)
    – 11:定时器 0 中断优先级为 3 级(最高级)

  • PX1H,PX1:外部中断1中断优先级控制位
    – 00:INT1 中断优先级为 0 级(最低级)
    – 01:INT1 中断优先级为 1 级(较低级)
    – 10:INT1 中断优先级为 2 级(较高级)
    11:INT1 中断优先级为 3 级(最高级)

  • PT1H,PT1:定时器1中断优先级控制位
    00:定时器 1 中断优先级为 0 级(最低级)
    01:定时器 1 中断优先级为 1 级(较低级)
    10:定时器 1 中断优先级为 2 级(较高级)
    11:定时器 1 中断优先级为 3 级(最高级)

  • PSH,PS:串口1中断优先级控制位
    00:串口 1 中断优先级为 0 级(最低级)
    01:串口 1 中断优先级为 1 级(较低级)
    10:串口 1 中断优先级为 2 级(较高级)
    11:串口 1 中断优先级为 3 级(最高级)

  • PADCH,PADC:ADC中断优先级控制位
    00:ADC 中断优先级为 0 级(最低级)
    01:ADC 中断优先级为 1 级(较低级)
    10:ADC 中断优先级为 2 级(较高级)
    11:ADC 中断优先级为 3 级(最高级)

  • PLVDH,PLVD:低压检测中断优先级控制位
    00:LVD 中断优先级为 0 级(最低级)
    01:LVD 中断优先级为 1 级(较低级)
    10:LVD 中断优先级为 2 级(较高级)
    11:LVD 中断优先级为 3 级(最高级)

  • PPCAH,PPCA:CCP/PCA/PWM中断优先级控制位
    00:CCP/PCA/PWM 中断优先级为 0 级(最低级)
    01:CCP/PCA/PWM 中断优先级为 1 级(较低级)
    10:CCP/PCA/PWM 中断优先级为 2 级(较高级)
    11:CCP/PCA/PWM 中断优先级为 3 级(最高级)

  • PS2H,PS2:串口2中断优先级控制位
    00:串口 2 中断优先级为 0 级(最低级)
    01:串口 2 中断优先级为 1 级(较低级)
    10:串口 2 中断优先级为 2 级(较高级)
    11:串口 2 中断优先级为 3 级(最高级)

  • PSPIH,PSPI:SPI中断优先级控制位
    00:SPI 中断优先级为 0 级(最低级)
    01:SPI 中断优先级为 1 级(较低级)
    10:SPI 中断优先级为 2 级(较高级)
    11:SPI 中断优先级为 3 级(最高级)

  • PX4H,PX4:外部中断4中断优先级控制位
    00:INT4 中断优先级为 0 级(最低级)
    01:INT4 中断优先级为 1 级(较低级)
    10:INT4 中断优先级为 2 级(较高级)
    11:INT4 中断优先级为 3 级(最高级)

  • PCMPH,PCMP:比较器中断优先级控制位
    00:CMP 中断优先级为 0 级(最低级)
    01:CMP 中断优先级为 1 级(较低级)
    10:CMP 中断优先级为 2 级(较高级)
    11:CMP 中断优先级为 3 级(最高级)

  • PI2CH,PI2C:I2C中断优先级控制位
    00:I2C 中断优先级为 0 级(最低级)
    01:I2C 中断优先级为 1 级(较低级)
    10:I2C 中断优先级为 2 级(较高级)
    11:I2C 中断优先级为 3 级(最高级)

  • PPWM0H,PPWM0:增强型PWM0中断优先级控制位
    00:增强型 PWM0 中断优先级为 0 级(最低级)
    01:增强型 PWM0 中断优先级为 1 级(较低级)
    10:增强型 PWM0 中断优先级为 2 级(较高级)
    11:增强型 PWM0 中断优先级为 3 级(最高级)

  • PPWM1H,PPWM1:增强型PWM1中断优先级控制位
    00:增强型 PWM1 中断优先级为 0 级(最低级)
    01:增强型 PWM1 中断优先级为 1 级(较低级)
    10:增强型 PWM1 中断优先级为 2 级(较高级)
    11:增强型 PWM1 中断优先级为 3 级(最高级)

  • PPWM2H,PPWM2:增强型PWM2中断优先级控制位
    00:增强型 PWM2 中断优先级为 0 级(最低级)
    01:增强型 PWM2 中断优先级为 1 级(较低级)
    10:增强型 PWM2 中断优先级为 2 级(较高级)
    11:增强型 PWM2 中断优先级为 3 级(最高级)

  • PPWM3H,PPWM3:增强型PWM3中断优先级控制位
    00:增强型 PWM3 中断优先级为 0 级(最低级)
    01:增强型 PWM3 中断优先级为 1 级(较低级)
    10:增强型 PWM3 中断优先级为 2 级(较高级)
    11:增强型 PWM3 中断优先级为 3 级(最高级)

  • PPWM4H,PPWM4:增强型PWM4中断优先级控制位
    00:增强型 PWM4 中断优先级为 0 级(最低级)
    01:增强型 PWM4 中断优先级为 1 级(较低级)
    10:增强型 PWM4 中断优先级为 2 级(较高级)
    11:增强型 PWM4 中断优先级为 3 级(最高级)

  • PPWM5H,PPWM5:增强型PWM5中断优先级控制位
    00:增强型 PWM5 中断优先级为 0 级(最低级)
    01:增强型 PWM5 中断优先级为 1 级(较低级)
    10:增强型 PWM5 中断优先级为 2 级(较高级)
    11:增强型 PWM5 中断优先级为 3 级(最高级)

  • PPWM0FDH,PPWM0FD:增强型PWM0异常检测中断优先级控制位
    00:PWM0FD 中断优先级为 0 级(最低级)
    01:PWM0FD 中断优先级为 1 级(较低级)
    10:PWM0FD 中断优先级为 2 级(较高级)
    11:PWM0FD 中断优先级为 3 级(最高级)

  • PPWM2FDH,PPWM2FD:增强型PWM2异常检测中断优先级控制位
    00:PWM2FD 中断优先级为 0 级(最低级)
    01:PWM2FD 中断优先级为 1 级(较低级)
    10:PWM2FD 中断优先级为 2 级(较高级)
    11:PWM2FD 中断优先级为 3 级(最高级)

  • PPWM4FDH,PPWM4FD:增强型PWM4异常检测中断优先级控制位
    00:PWM4FD 中断优先级为 0 级(最低级)
    01:PWM4FD 中断优先级为 1 级(较低级)
    10:PWM4FD 中断优先级为 2 级(较高级)
    11:PWM4FD 中断优先级为 3 级(最高级)

  • PTKSUH,PTKSU:触摸按键中断优先级控制位
    00:触摸按键中断优先级为 0 级(最低级)
    01:触摸按键中断优先级为 1 级(较低级)
    10:触摸按键中断优先级为 2 级(较高级)
    11:触摸按键中断优先级为 3 级(最高级)

  • STC8G.h头文件

  • 说明:不包含特殊功能寄存器位于扩展RAM区域的内容

#ifndef     __STC8G_H__
#define     __STC8G_H__
//包含本头文件后,不用另外再包含"REG51.H"
sfr         P0          =           0x80;//P0端口
sbit        P00         =           P0^0;
sbit        P01         =           P0^1;
sbit        P02         =           P0^2;
sbit        P03         =           P0^3;
sbit        P04         =           P0^4;
sbit        P05         =           P0^5;
sbit        P06         =           P0^6;
sbit        P07         =           P0^7;
sfr         SP          =           0x81;//堆栈指针
sfr         DPL         =           0x82;//数据地址指针(低8位)
sfr         DPH         =           0x83;//    数据地址指针(高8位)
sfr         S4CON       =           0x84;//串口4控制寄存器
sfr         S4BUF       =           0x85;//串行口4锁存器
sfr         PCON        =           0x87;//电源控制寄存器
sfr         TCON        =           0x88;//T0、T1定时器/计数器控制寄存器
sbit        TF1         =           TCON^7;//T1溢出中断标志
sbit        TR1         =           TCON^6;//定时器T1的运行控制位
sbit        TF0         =           TCON^5;//T0溢出中断标志
sbit        TR0         =           TCON^4;//定时器T0的运行控制位
sbit        IE1         =           TCON^3;//外部中断1请求源(INT1/P3.3)标志
sbit        IT1         =           TCON^2;//外部中断源1触发控制位
sbit        IE0         =           TCON^1;//外部中断0请求源(INT0/P3.2)标志
sbit        IT0         =           TCON^0;//外部中断源0触发控制位
sfr         TMOD        =           0x89;//定时器模式寄存器
sfr         TL0         =           0x8A;//定时器/计数器0(低8位)
sfr         TL1         =           0x8B;//定时器/计数器1(低8位)
sfr         TH0         =           0x8C;//定时器/计数器0(高8位)
sfr         TH1         =           0x8D;//定时器/计数器1(高8位)
sfr         AUXR        =           0x8E;//辅助寄存器
sfr         INTCLKO     =           0x8F;//中断与时钟输出控制寄存器
sfr         P1          =           0x90;//P1端口
sbit        P10         =           P1^0;
sbit        P11         =           P1^1;
sbit        P12         =           P1^2;
sbit        P13         =           P1^3;
sbit        P14         =           P1^4;
sbit        P15         =           P1^5;
sbit        P16         =           P1^6;
sbit        P17         =           P1^7;
sfr         P1M1        =           0x91;
sfr         P1M0        =           0x92;
sfr         P0M1        =           0x93;
sfr         P0M0        =           0x94;
sfr         P2M1        =           0x95;
sfr         P2M0        =           0x96;
sfr         SCON        =           0x98;//串行口控制寄存器
sbit        SM0         =           SCON^7;//串口1的通信工作模式控制0
sbit        SM1         =           SCON^6;//串口1的通信工作模式控制1
sbit        SM2         =           SCON^5;//串口1的通信工作模式控制2
sbit        REN         =           SCON^4;//允许/禁止串口接收控制位
sbit        TB8         =           SCON^3;//当串口1使用模式2或模式3时,TB8为要发送的第9位数据,按需要由软件置位或清0。在模式0和模式1中,该位不用。
sbit        RB8         =           SCON^2;//当串口1使用模式2或模式3时,RB8为接收到的第9位数据,一般用作校验位或者地址帧/数据帧标志位。在模式 0 和模式 1 中,该位不用
sbit        TI          =           SCON^1;//发送中断标志位
sbit        RI          =           SCON^0;//串口1接收中断请求标志位
sfr         SBUF        =           0x99;//串行口锁存器
sfr         S2CON       =           0x9A;//串口2控制寄存器
sfr         S2BUF       =           0x9B;//串口2数据寄存器
sfr         IRCBAND     =           0x9D;//IRC频段选择检测
sfr         LIRTRIM     =           0x9E;//IRC频率微调寄存器
sfr         IRTRIM      =           0x9F;//IRC频率调整寄存器
sfr         P2          =           0xA0;//P2端口
sbit        P20         =           P2^0;
sbit        P21         =           P2^1;
sbit        P22         =           P2^2;
sbit        P23         =           P2^3;
sbit        P24         =           P2^4;
sbit        P25         =           P2^5;
sbit        P26         =           P2^6;
sbit        P27         =           P2^7;
sfr         P_SW1       =           0xA2;//PCA功能管脚切换寄存器
sfr         IE          =           0xA8;//中断允许控制寄存器
sbit        EA          =           IE^7;//总中断允许控制位
sbit        ELVD        =           IE^6;//低压检测中断允许位
sbit        EADC        =           IE^5;//A/D转换中断允许位
sbit        ES          =           IE^4;//串行口1中断允许位
sbit        ET1         =           IE^3;//定时/计数器T1的溢出中断允许位
sbit        EX1         =           IE^2;//外部中断1中断允许位
sbit        ET0         =           IE^1;//定时/计数器T0的溢出中断允许位
sbit        EX0         =           IE^0;//外部中断0中断允许位
sfr         SADDR       =           0xA9;//串口1从机地址寄存器
sfr         WKTCL       =           0xAA;//掉电唤醒定时器低字节
sfr         WKTCH       =           0xAB;//掉电唤醒定时器高字节
sfr         S3CON       =           0xAC;//串口3控制寄存器
sfr         S3BUF       =           0xAD;//串口3数据寄存器
sfr         TA          =           0xAE;//DPTR时序控制寄存器
sfr         IE2         =           0xAF;//中断允许寄存器2
sfr         P3          =           0xB0;//P3端口
sbit        P30         =           P3^0;
sbit        P31         =           P3^1;
sbit        P32         =           P3^2;
sbit        P33         =           P3^3;
sbit        P34         =           P3^4;
sbit        P35         =           P3^5;
sbit        P36         =           P3^6;
sbit        P37         =           P3^7;
sfr         P3M1        =           0xB1;//P3口配置寄存器1
sfr         P3M0        =           0xB2;//P3口配置寄存器0
sfr         P4M1        =           0xB3;//P4口配置寄存器1
sfr         P4M0        =           0xB4;//P4口配置寄存器0
sfr         IP2         =           0xB5;//中断优先级控制寄存器2
sfr         IP2H        =           0xB6;//高中断优先级控制寄存器2
sfr         IPH         =           0xB7;//高中断优先级控制寄存器
sfr         IP          =           0xB8;//中断优先级控制寄存器
sbit        PPCA        =           IP^7;//CCP/PCA中断优先级控制位
sbit        PLVD        =           IP^6;//低压检测中断优先级控制位
sbit        PADC        =           IP^5;//ADC中断优先级控制位
sbit        PS          =           IP^4;//串口1中断优先级控制位
sbit        PT1         =           IP^3;//定时器1中断优先级控制位
sbit        PX1         =           IP^2;//外部中断1中断优先级控制位
sbit        PT0         =           IP^1;//定时器0中断优先级控制位
sbit        PX0         =           IP^0;//外部中断0中断优先级控制位
sfr         SADEN       =           0xB9;//串口1从机地址屏蔽寄存器
sfr         P_SW2       =           0xBA;//PCA功能管脚切换寄存器
sfr         ADC_CONTR   =           0xBC;//ADC控制寄存器(8bit寄存器)
sfr         ADC_RES     =           0xBD;//ADC转换结果高位寄存器
sfr         ADC_RESL    =           0xBE;//ADC转换结果低位寄存器
sfr         P4          =           0xC0;//P4端口
sbit        P40         =           P4^0;
sbit        P41         =           P4^1;
sbit        P42         =           P4^2;
sbit        P43         =           P4^3;
sbit        P44         =           P4^4;
sbit        P45         =           P4^5;
sbit        P46         =           P4^6;
sbit        P47         =           P4^7;
sfr         WDT_CONTR   =           0xC1;//看门狗控制寄存器
sfr         IAP_DATA    =           0xC2;//IAP数据寄存器
sfr         IAP_ADDRH   =           0xC3;//IAP高地址寄存器
sfr         IAP_ADDRL   =           0xC4;//IAP低地址寄存器
sfr         IAP_CMD     =           0xC5;//IAP命令寄存器
sfr         IAP_TRIG    =           0xC6;//IAP触发寄存器
sfr         IAP_CONTR   =           0xC7;//IAP控制寄存器
sfr         P5          =           0xC8;//P5端口
sbit        P50         =           P5^0;
sbit        P51         =           P5^1;
sbit        P52         =           P5^2;
sbit        P53         =           P5^3;
sbit        P54         =           P5^4;
sbit        P55         =           P5^5;
sbit        P56         =           P5^6;
sbit        P57         =           P5^7;
sfr         P5M1        =           0xC9;//P5口配置寄存器1
sfr         P5M0        =           0xCA;//P5口配置寄存器0
sfr         P6M1        =           0xcb;//P6口配置寄存器1
sfr         P6M0        =           0xcc;//P6口配置寄存器0
sfr         SPSTAT      =           0xCD;//SPI状态寄存器
sfr         SPCTL       =           0xCE;//SPI控制寄存器
sfr         SPDAT       =           0xCF;//数据寄存器
sfr         PSW         =           0xD0;//程序状态存储器
sbit        CY          =           PSW^7;//加减法进借标志位
sbit        AC          =           PSW^6;//进位辅助位,也叫半进位标志。用于表示Acc.3有否向Acc.4进位
sbit        F0          =           PSW^5;//用户标志位,由(编程人员)决定什么时候用,什么时候不用。
sbit        RS1         =           PSW^4;//工作寄存器组选择位
sbit        RS0         =           PSW^3;//工作寄存器组选择位
sbit        OV          =           PSW^2;//溢出标志位, 表示Acc在有符号数算术运算中的溢出
sbit        F1          =           PSW^1;//用户标志位1
sbit        P           =           PSW^0;//奇偶校验位:它用来表示ALU运算结果中二进制数位“1”的个数的奇偶性。若为奇数,则P=1,不然为0。
sfr         T4T3M       =           0xD1;//定时器4/3控制寄存器
sfr         T4H         =           0xD2;//定时器4高字节
sfr         T4L         =           0xD3;//定时器4低字节
sfr         T3H         =           0xD4;//定时器3高字节
sfr         T3L         =           0xD5;//定时器3低字节
sfr         T2H         =           0xD6;//定时器2高字节
sfr         T2L         =           0xD7;//定时器2低字节
sfr         CCON        =           0xD8;//PCA控制寄存器(8bit寄存器)
sbit        CF          =           CCON^7;//PCA定时器溢出标志(1bit寄存器)
sbit        CR          =           CCON^6;//PCA定时器运行控制位(1bit寄存器)
sbit        CCF2        =           CCON^2;//PCA模块2中断标志,出现匹配或者捕获时该位由硬件置位,需通过软件清零。(1bit寄存器)
sbit        CCF1        =           CCON^1;//PCA模块1中断标志,出现匹配或者捕获时该位由硬件置位,需通过软件清零。(1bit寄存器)
sbit        CCF0        =           CCON^0;//PCA模块0中断标志,出现匹配或者捕获时该位由硬件置位,需通过软件清零。(1bit寄存器)
sfr         CMOD        =           0xD9;//PCA模式寄存器(8bit寄存器)
sfr         CCAPM0      =           0xDA;//PCA模块0模式寄存器(8bit寄存器)
sfr         CCAPM1      =           0xDB;//PCA模块1模式寄存器(8bit寄存器)
sfr         CCAPM2      =           0xDC;//PCA模块2模式寄存器(8bit寄存器)
sfr         ADCCFG      =           0xDE;//ADC配置寄存器
sfr         IP3         =           0xDF;//中断优先级控制寄存器3
sfr         ACC         =           0xE0;//累加器
sfr         P7M1        =           0xe1;//P7口配置寄存器1
sfr         P7M0        =           0xe2;//P7口配置寄存器0
sfr         DPS         =           0xE3;//DPTR指针选择器
sfr         DPL1        =           0xE4;//第二组数据指针(低字节)
sfr         DPH1        =           0xE5;//第二组数据指针(高字节)
sfr         CMPCR1      =           0xE6;//比较器控制寄存器1
sfr         CMPCR2      =           0xE7;//比较器控制寄存器2
sfr         P6          =           0xe8;//P6端口
sfr         CL          =           0xE9;//PCA定时器低字节
sfr         CCAP0L      =           0xEA;//PCA模块0捕获寄存器 LOW
sfr         CCAP1L      =           0xEB;//PCA模块1捕获寄存器 LOW
sfr         CCAP2L      =           0xEC;//PCA模块2捕获寄存器 LOW
sfr         IP3H        =           0xEE;//高中断优先级控制寄存器3
sfr         AUXINTIF    =           0xEF;//扩展外部中断标志寄存器
sfr         B           =           0xF0;//B寄存器,在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。
sfr         PWMSET      =           0xF1;//增强型 PWM 全局配置寄存器
sfr         PCA_PWM0    =           0xF2;//PCA0的PWM模式寄存器
sfr         PCA_PWM1    =           0xF3;//PCA1的PWM模式寄存器
sfr         PCA_PWM2    =           0xF4;//PCA1的PWM模式寄存器
sfr         IAP_TPS     =           0xF5;//IAP等待时间控制寄存器
sfr         PWMCFG01    =           0xF6;//增强型 PWM 配置寄存器
sfr         PWMCFG23    =           0xF7;//增强型 PWM 配置寄存器
sfr         P7          =           0xf8;//P7端口
sfr         CH          =           0xF9;//PCA计数器高字节
sfr         CCAP0H      =           0xFA;//PCA模块0高字节
sfr         CCAP1H      =           0xFB;//PCA模块1高字节
sfr         CCAP2H      =           0xFC;//PCA模块2高字节
sfr         PWMCFG45    =           0xFE;//增强型 PWM 配置寄存器
sfr         RSTCFG      =           0xFF;//复位配置寄存器//如下特殊功能寄存器位于扩展RAM区域
//访问这些寄存器,需先将P_SW2的BIT7设置为1,才可正常读写
#endif

【STC头文件】STC8系列之STC8G头文件寄存器注释相关推荐

  1. 【VSCode PlatformIO】STC8系列SDCC专用头文件内容分享

    [VSCode PlatformIO]STC8单片机开发专用头文件内容分享 相关篇<[VSCode PlatformIO]STC15单片机开发专用头文件内容分享> 如果使用VSCode P ...

  2. PE文件学习系列二 DOS头分析

    合肥程序员群:49313181.    合肥实名程序员群 :128131462 (不愿透露姓名和信息者勿加入) Q  Q:408365330     E-Mail:egojit@qq.com PE文件 ...

  3. 51单片机c语言编程的头文件,51单片机编程的头文件reg51.h详解

    我们在用c语言编程时往往第一行就是头文件,51单片机为reg51.h或reg52.h,51单片机相对来说比较简单,头文件里面内容不多,像飞思卡尔.ARM系列的单片机头文件往往内容就非常多,尽管如此,对 ...

  4. 基于F28335的Simulink代码生成(四)——如何链接可以访问底层文件的外部源文件和头文件

    基于F28335的Simulink代码生成系列文章目录 基于F28335的Simulink代码生成(一)--搞懂模型的运行逻辑 基于F28335的Simulink代码生成(二)--EPWM模块同步设置 ...

  5. 用STC一箭双雕之USB转双串口仿真STC8系列MCU

    先简单介绍下一箭双雕之USB转双串口工具 1.一箭双雕之USB转双串口工具外观图: 2.一箭双雕之USB转双串口工具几种常用连接线: 3. 一箭双雕用SIP7-USB-TypeC对STC8系列MCU进 ...

  6. PE文件(一)PE头

    PE文件结构(一)PE头 12/100 发布文章 qq_63329753 未选择任何文件 new PE文件结构 PE(Portble Executable File Format,可移植的执行体文件格 ...

  7. c语言头文件命名规则,C语言头文件规则.doc

    C语言头文件规则.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文档所得收 ...

  8. 【错误记录】Visual Studio 中配置 NDK 头文件路径 ( NDK 的三个头文件路径 | 与 CPU 架构相关 asm 头文件路径选择 )

    文章目录 一.报错信息 二.解决方案 1.NDK 的三个头文件路径 2.与 CPU 架构相关 asm 头文件路径选择 一.报错信息 参考 [Android 逆向]Android 进程注入工具开发 ( ...

  9. python文件是怎么写_python头文件怎么写

    本文主要以python2为例.首先介绍一下Python头文件的编程风格,然后再给大家详细介绍import部分的基本用法.这两个部分就是Python中头文件的组成模块. 编程风格#!/usr/bin/e ...

最新文章

  1. 【BZOJ 4565】 [Haoi2016]字符合并 区间dp+状压
  2. layout-maxWidth属性用法
  3. STL 之remove,remove_if,remove_copy,remove_copy_if
  4. 物理层协议有哪四大特性
  5. Docker 清理命令 删除所有的镜像和容器
  6. shell 脚本字符串 分割或截取
  7. Python+OpenGL实现物体快速运动时的模糊效果
  8. MySQL 服务的启动与停止
  9. 从零基础入门Tensorflow2.0 ----二、5.2实战sklearn封装keras模型(超参数搜索)
  10. App Store审核标准
  11. 【PageHelper】实现拦截pageNum和pageSize
  12. 【爬虫】谷歌、必应、百度图片爬取用于深度学习
  13. 如何学习计算机网络——学习方法
  14. 蚁人2:黄蜂女现身全集百度云资源
  15. 【云游戏】携手云流送,让普通终端也可畅享高端游戏画质
  16. linux 目录 特殊符号,Linux常见特殊符号
  17. php格林威治时间,时间戳与格林威治时间互相转换
  18. Springboot美妆网站的设计与实现毕业设计-附源码211539
  19. 【Opencv】【C++】 Opencv之calcHist() 计算直方图
  20. android新闻客户端实验报告,Android 新闻客户端学习笔记

热门文章

  1. leetcode刷题记录--数据结构;深度优先搜索算法;二叉树;平衡树;1020. 飞地的数量;1669. 合并两个链表;108. 将有序数组转换为二叉搜索树
  2. Java运算符(1)
  3. 软件项目管理 6.10.成本预算
  4. 生物类实验室安全管理
  5. 谷歌浏览器Chrome中文乱码(已解决)
  6. 13.4.2 查询某列数据的总和
  7. matlab中如何读写txt,Matlab中读取txt文件的几种方法
  8. 【练习题】python集合练习
  9. 向量的导数运算和向量叉乘以及点乘的导数运算
  10. 计算机考研基础必考知识点,2020考研计算机数学49个基础知识点