180 lines
5.3 KiB
C
180 lines
5.3 KiB
C
#ifndef _STC15_H_
|
|
#define _STC15_H_
|
|
|
|
#include <8051.h>
|
|
|
|
#ifdef REG8051_H
|
|
#undef REG8051_H
|
|
#endif
|
|
|
|
/* P4 */
|
|
__sfr __at (0xC0) P4 ;
|
|
__sbit __at (0xC0) P4_0 ;
|
|
__sbit __at (0xC1) P4_1 ;
|
|
__sbit __at (0xC2) P4_2 ;
|
|
__sbit __at (0xC3) P4_3 ;
|
|
__sbit __at (0xC4) P4_4 ;
|
|
__sbit __at (0xC5) P4_5 ;
|
|
__sbit __at (0xC6) P4_6 ;
|
|
__sbit __at (0xC7) P4_7 ;
|
|
|
|
__sfr __at 0x94 P0M0;
|
|
__sfr __at 0x93 P0M1;
|
|
__sfr __at 0x92 P1M0;
|
|
__sfr __at 0x91 P1M1;
|
|
__sfr __at 0x96 P2M0;
|
|
__sfr __at 0x95 P2M1;
|
|
__sfr __at 0xB2 P3M0;
|
|
__sfr __at 0xB1 P3M1;
|
|
__sfr __at 0xB4 P4M0;
|
|
__sfr __at 0xB3 P4M1;
|
|
__sfr __at 0xCA P5M0;
|
|
__sfr __at 0xC9 P5M1;
|
|
__sfr __at 0xCC P6M0;
|
|
__sfr __at 0xCB P6M1;
|
|
__sfr __at 0xE2 P7M0;
|
|
__sfr __at 0xE1 P7M1;
|
|
|
|
__sfr __at 0x8E AUXR;
|
|
__sfr __at 0xA2 AUXR1;
|
|
__sfr __at 0xA2 P_SW1;
|
|
__sfr __at 0x97 CLK_DIV;
|
|
__sfr __at 0xA1 BUS_SPEED;
|
|
__sfr __at 0x9D P1ASF;
|
|
__sfr __at 0xBA P_SW2;
|
|
|
|
/* IE */
|
|
__sbit __at 0xAE ELVD;
|
|
__sbit __at 0xAD EADC;
|
|
|
|
/* IP */
|
|
__sbit __at 0xBF PPCA;
|
|
__sbit __at 0xBE PLVD;
|
|
__sbit __at 0xBD PADC;
|
|
|
|
__sfr __at 0xAF IE2;
|
|
__sfr __at 0xB5 IP2;
|
|
__sfr __at 0x8F INT_CLKO;
|
|
|
|
__sfr __at 0xD1 T4T3M;
|
|
__sfr __at 0xD1 T3T4M;
|
|
__sfr __at 0xD2 T4H;
|
|
__sfr __at 0xD3 T4L;
|
|
__sfr __at 0xD4 T3H;
|
|
__sfr __at 0xD5 T3L;
|
|
__sfr __at 0xD6 T2H;
|
|
__sfr __at 0xD7 T2L;
|
|
__sfr __at 0xAA WKTCL;
|
|
__sfr __at 0xAB WKTCH;
|
|
__sfr __at 0xC1 WDT_CONTR;
|
|
|
|
__sfr __at 0x9A S2CON;
|
|
__sfr __at 0x9B S2BUF;
|
|
__sfr __at 0xAC S3CON;
|
|
__sfr __at 0xAD S3BUF;
|
|
__sfr __at 0x84 S4CON;
|
|
__sfr __at 0x85 S4BUF;
|
|
__sfr __at 0xA9 SADDR;
|
|
__sfr __at 0xB9 SADEN;
|
|
|
|
//ADC
|
|
__sfr __at 0xBC ADC_CONTR;
|
|
__sfr __at 0xBD ADC_RES;
|
|
__sfr __at 0xBE ADC_RESL;
|
|
|
|
//SPI
|
|
__sfr __at 0xCD SPSTAT;
|
|
__sfr __at 0xCE SPCTL;
|
|
__sfr __at 0xCF SPDAT;
|
|
|
|
//IAP/ISP
|
|
__sfr __at 0xC2 IAP_DATA;
|
|
__sfr __at 0xC3 IAP_ADDRH;
|
|
__sfr __at 0xC4 IAP_ADDRL;
|
|
__sfr __at 0xC5 IAP_CMD;
|
|
__sfr __at 0xC6 IAP_TRIG;
|
|
__sfr __at 0xC7 IAP_CONTR;
|
|
|
|
//PCA/PWM
|
|
__sfr __at 0xD8 CCON;
|
|
__sbit __at 0xDF CF;
|
|
__sbit __at 0xDE CR;
|
|
__sbit __at 0xDA CCF2;
|
|
__sbit __at 0xD9 CCF1;
|
|
__sbit __at 0xD8 CCF0;
|
|
|
|
__sfr __at 0xD9 CMOD;
|
|
__sfr __at 0xE9 CL;
|
|
__sfr __at 0xF9 CH;
|
|
__sfr __at 0xDA CCAPM0;
|
|
__sfr __at 0xDB CCAPM1;
|
|
__sfr __at 0xDC CCAPM2;
|
|
__sfr __at 0xEA CCAP0L;
|
|
__sfr __at 0xEB CCAP1L;
|
|
__sfr __at 0xEC CCAP2L;
|
|
__sfr __at 0xF2 PCA_PWM0;
|
|
__sfr __at 0xF3 PCA_PWM1;
|
|
__sfr __at 0xF4 PCA_PWM2;
|
|
__sfr __at 0xFA CCAP0H;
|
|
__sfr __at 0xFB CCAP1H;
|
|
__sfr __at 0xFC CCAP2H;
|
|
|
|
__sfr __at 0xE6 CMPCR1;
|
|
__sfr __at 0xE7 CMPCR2;
|
|
|
|
//PWM
|
|
__sfr __at 0xf1 PWMCFG;
|
|
__sfr __at 0xf5 PWMCR;
|
|
__sfr __at 0xf6 PWMIF;
|
|
__sfr __at 0xf7 PWMFDCR;
|
|
|
|
#define PWMC (*(unsigned int volatile xdata *)0xfff0)
|
|
#define PWMCH (*(unsigned char volatile xdata *)0xfff0)
|
|
#define PWMCL (*(unsigned char volatile xdata *)0xfff1)
|
|
#define PWMCKS (*(unsigned char volatile xdata *)0xfff2)
|
|
#define PWM2T1 (*(unsigned int volatile xdata *)0xff00)
|
|
#define PWM2T1H (*(unsigned char volatile xdata *)0xff00)
|
|
#define PWM2T1L (*(unsigned char volatile xdata *)0xff01)
|
|
#define PWM2T2 (*(unsigned int volatile xdata *)0xff02)
|
|
#define PWM2T2H (*(unsigned char volatile xdata *)0xff02)
|
|
#define PWM2T2L (*(unsigned char volatile xdata *)0xff03)
|
|
#define PWM2CR (*(unsigned char volatile xdata *)0xff04)
|
|
#define PWM3T1 (*(unsigned int volatile xdata *)0xff10)
|
|
#define PWM3T1H (*(unsigned char volatile xdata *)0xff10)
|
|
#define PWM3T1L (*(unsigned char volatile xdata *)0xff11)
|
|
#define PWM3T2 (*(unsigned int volatile xdata *)0xff12)
|
|
#define PWM3T2H (*(unsigned char volatile xdata *)0xff12)
|
|
#define PWM3T2L (*(unsigned char volatile xdata *)0xff13)
|
|
#define PWM3CR (*(unsigned char volatile xdata *)0xff14)
|
|
#define PWM4T1 (*(unsigned int volatile xdata *)0xff20)
|
|
#define PWM4T1H (*(unsigned char volatile xdata *)0xff20)
|
|
#define PWM4T1L (*(unsigned char volatile xdata *)0xff21)
|
|
#define PWM4T2 (*(unsigned int volatile xdata *)0xff22)
|
|
#define PWM4T2H (*(unsigned char volatile xdata *)0xff22)
|
|
#define PWM4T2L (*(unsigned char volatile xdata *)0xff23)
|
|
#define PWM4CR (*(unsigned char volatile xdata *)0xff24)
|
|
#define PWM5T1 (*(unsigned int volatile xdata *)0xff30)
|
|
#define PWM5T1H (*(unsigned char volatile xdata *)0xff30)
|
|
#define PWM5T1L (*(unsigned char volatile xdata *)0xff31)
|
|
#define PWM5T2 (*(unsigned int volatile xdata *)0xff32)
|
|
#define PWM5T2H (*(unsigned char volatile xdata *)0xff32)
|
|
#define PWM5T2L (*(unsigned char volatile xdata *)0xff33)
|
|
#define PWM5CR (*(unsigned char volatile xdata *)0xff34)
|
|
#define PWM6T1 (*(unsigned int volatile xdata *)0xff40)
|
|
#define PWM6T1H (*(unsigned char volatile xdata *)0xff40)
|
|
#define PWM6T1L (*(unsigned char volatile xdata *)0xff41)
|
|
#define PWM6T2 (*(unsigned int volatile xdata *)0xff42)
|
|
#define PWM6T2H (*(unsigned char volatile xdata *)0xff42)
|
|
#define PWM6T2L (*(unsigned char volatile xdata *)0xff43)
|
|
#define PWM6CR (*(unsigned char volatile xdata *)0xff44)
|
|
#define PWM7T1 (*(unsigned int volatile xdata *)0xff50)
|
|
#define PWM7T1H (*(unsigned char volatile xdata *)0xff50)
|
|
#define PWM7T1L (*(unsigned char volatile xdata *)0xff51)
|
|
#define PWM7T2 (*(unsigned int volatile xdata *)0xff52)
|
|
#define PWM7T2H (*(unsigned char volatile xdata *)0xff52)
|
|
#define PWM7T2L (*(unsigned char volatile xdata *)0xff53)
|
|
#define PWM7CR (*(unsigned char volatile xdata *)0xff54)
|
|
|
|
#endif
|
|
|