📄 stc12cx052.h
字号:
1 0 0 0 0 1 0 8位PWM 0x42 */
sfr CL = 0xE9; //16位PCA定时记数寄存器低八位
sfr CCAP0L = 0xEA; //捕获寄存器低八位
sfr CCAP1L = 0xEB; //捕获寄存器低八位
sfr CH = 0xF9; //16位PCA定时记数寄存器高八位
sfr CCAP0H = 0xFA; //捕获寄存器高八位
sfr CCAP1H = 0xFB; //捕获寄存器高八位
sfr PCA_PWM0 = 0xF2; //
//#define EPC0H 0x02 //PWM第九位
//#define EPC0L 0x01 //PWM第九位
sfr PCA_PWM1 = 0xF3; //
//#define EPC1H 0x02 //PWM第九位
//#define EPC1L 0x01 //PWM第九位
/* Above is STC additional SFR or change */
/*--------------------------------------------------------------------------
REG51F.H
Header file for 8xC31/51, 80C51Fx, 80C51Rx+
Copyright (c) 1988-1999 Keil Elektronik GmbH and Keil Software, Inc.
All rights reserved.
Modification according to DataSheet from April 1999
- SFR's AUXR and AUXR1 added for 80C51Rx+ derivatives
--------------------------------------------------------------------------*/
/* BYTE Registers */
sfr P1 = 0x90;
sfr P3 = 0xB0;
sfr PSW = 0xD0;
sfr ACC = 0xE0;
sfr B = 0xF0;
sfr SP = 0x81;
sfr DPL = 0x82;
sfr DPH = 0x83;
sfr PCON = 0x87;
sfr TCON = 0x88;
sfr TMOD = 0x89;
sfr TL0 = 0x8A;
sfr TL1 = 0x8B;
sfr TH0 = 0x8C;
sfr TH1 = 0x8D;
sfr IE = 0xA8;
sfr IP = 0xB8;
sfr SCON = 0x98;
sfr SBUF = 0x99;
/* 80C51Fx/Rx Extensions */
sfr AUXR = 0x8E;
#define T0x12 0x80 //定时器0,1T模式
#define T1x12 0x40 //定时器1,1T模式
//#define UART0_M0x6 0x20 //串口2分频
#define EADCI 0x10 //ADC中断使能位
#define ESPI 0x08 //SPI中断使能位
#define ELVDI 0x04 //LVDI中断使能位
sfr SADDR = 0xA9;
sfr IPH = 0xB7;
sfr SADEN = 0xB9;
/* BIT Registers */
/* PSW */
sbit CY = PSW^7;
sbit AC = PSW^6;
sbit F0 = PSW^5;
sbit RS1 = PSW^4;
sbit RS0 = PSW^3;
sbit OV = PSW^2;
sbit FL = PSW^1;
sbit P = PSW^0;
/*------------------------------------------------
PCON Bit Values
------------------------------------------------*/
#define IDL_ 0x01
#define STOP_ 0x02
#define PD_ 0x02 /* Alternate definition */
#define GF0_ 0x04
#define GF1_ 0x08
#define POF_ 0x10
#define LVDF_ 0x20 //电源检测
#define SMOD0_ 0x40
#define SMOD_ 0x80
/* TCON */
sbit TF1 = TCON^7;
sbit TR1 = TCON^6;
sbit TF0 = TCON^5;
sbit TR0 = TCON^4;
sbit IE1 = TCON^3;
sbit IT1 = TCON^2;
sbit IE0 = TCON^1;
sbit IT0 = TCON^0;
/* P3 */
sbit P3_7 = P3^7;
//sbit P3_6 = P3^6;
sbit P3_5 = P3^5;
sbit P3_4 = P3^4;
sbit P3_3 = P3^3;
sbit P3_2 = P3^2;
sbit P3_1 = P3^1;
sbit P3_0 = P3^0;
sbit T1 = P3^5;
sbit T0 = P3^4;
sbit INT1 = P3^3;
sbit INT0 = P3^2;
sbit TXD = P3^1;
sbit RXD = P3^0;
/* SCON */
sbit SM0 = SCON^7; // alternatively "FE"
sbit FE = SCON^7;
sbit SM1 = SCON^6;
sbit SM2 = SCON^5;
sbit REN = SCON^4;
sbit TB8 = SCON^3;
sbit RB8 = SCON^2;
sbit TI = SCON^1;
sbit RI = SCON^0;
/* P1 */
sbit P1_7 = P1^7;
sbit P1_6 = P1^6;
sbit P1_5 = P1^5;
sbit P1_4 = P1^4;
sbit P1_3 = P1^3;
sbit P1_2 = P1^2;
sbit P1_1 = P1^1;
sbit P1_0 = P1^0;
/* PCA Pin */
sbit CEX1 = P3^5;
sbit CEX0 = P3^7;
sbit ECI = P3^4;
/* IE */
sbit EA = IE^7;
sbit EPCA_LVD = IE^6;
sbit EADC_SPI = IE^5;
sbit ES = IE^4;
sbit ET1 = IE^3;
sbit EX1 = IE^2;
sbit ET0 = IE^1;
sbit EX0 = IE^0;
/* IP */
sbit PPCA_LVD = IP^6;
sbit PADC_SPI = IP^5;
sbit PS = IP^4;
sbit PT1 = IP^3;
sbit PX1 = IP^2;
sbit PT0 = IP^1;
sbit PX0 = IP^0;
/* IPH */
#define PPCA_LVDH 0x40
#define PADC_SPIH 0x20
#define PSH 0x10
#define PT1H 0x08
#define PX1H 0x04
#define PT0H 0x02
#define PX0H 0x01
/*------------------------------------------------
Interrupt Vectors:
Interrupt Address = (Number * 8) + 3
------------------------------------------------*/
#define IE0_VECTOR 0 /* 0x03 External Interrupt 0 */
#define TF0_VECTOR 1 /* 0x0B Timer 0 */
#define IE1_VECTOR 2 /* 0x13 External Interrupt 1 */
#define TF1_VECTOR 3 /* 0x1B Timer 1 */
#define SIO_VECTOR 4 /* 0x23 Serial port */
#define ADC_VECTOR 5 /* 0x2B ADC/SPI */
#define SPI_VECTOR 5 /* 0x2B ADC/SPI */
#define PCA_VECTOR 6 /* 0x33 PCA/LVD */
#define LVD_VECTOR 6 /* 0x33 PCA/LVD */
/*------------------------------------------------
------------------------------------------------*/
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -