📄 kfsst89e554rc.h
字号:
//Header file for 8-bit SST microcontrollers,and special for SST89E554RC.
//Auther: korfi
//Data: 20/12/2005
//Updata: 05/03/2006,add interrupt source number
// 12/04/2006,confirm that it the lasted version before auto robocons' real software,
// though some test programs written.I did not think those should be a AUTOMATIC
// machines' software.I can work,but not achieve.
#ifndef __KFSST89E554_H__
#define __KFSST89E554_H__
////////////////////////////////////////////////////////////////////
//These definitions are based on SST8x5x4.h,and those not in SST8x5x4.h are added by korfi,marked by 'kf'.
/* BYTE Registers */
sfr P0 = 0x80;
sfr P1 = 0x90;
sfr P2 = 0xA0;
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;
/* 8052 Extensions */
sfr T2CON = 0xC8;
sfr T2MOD = 0xC9;
sfr RCAP2L = 0xCA;
sfr RCAP2H = 0xCB;
sfr TL2 = 0xCC;
sfr TH2 = 0xCD;
/* 89E564 Extensions */
sfr IPA = 0xF8;
sfr IEA = 0xE8;
sfr SADEN = 0xA9;
sfr SPSR = 0xAA;
sfr AUXR1 = 0xA2;
sfr AUXR = 0x8E;
sfr WDTD = 0x85;
sfr SPDR = 0x86;
sfr SFCF = 0xB1;
sfr SFCM = 0xB2;
sfr SFAL = 0xB3;
sfr SFAH = 0xB4;
sfr SFDT = 0xB5;
sfr SFST = 0xB6;
sfr IPH = 0xB7;
sfr SPCR = 0xD5;
sfr IPAH = 0xF7;
/* 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 F1 = PSW^1;//kf
sbit P = PSW^0; //8052 only
/* 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;
/* IE */
sbit EA = IE^7;
sbit ET2 = IE^5; //8052 only
sbit ES = IE^4;
sbit ET1 = IE^3;
sbit EX1 = IE^2;
sbit ET0 = IE^1;
sbit EX0 = IE^0;
/* IP */
sbit PPC = IP^6;//kf
sbit PT2 = IP^5;
sbit PS = IP^4;
sbit PT1 = IP^3;
sbit PX1 = IP^2;
sbit PT0 = IP^1;
sbit PX0 = IP^0;
/* P3 */
sbit RD = P3^7;
sbit WR = P3^6;
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;
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 T2EX = P1^1; // 8052 only
sbit T2 = P1^0; // 8052 only
/* T2CON */
sbit TF2 = T2CON^7;
sbit EXF2 = T2CON^6;
sbit RCLK = T2CON^5;
sbit TCLK = T2CON^4;
sbit EXEN2 = T2CON^3;
sbit TR2 = T2CON^2;
sbit C_T2 = T2CON^1;
sbit CP_RL2 = T2CON^0;
////////////////////////////////////////////////////////
////////////////////////////////////////////////////////
//below is added by korfi.
sfr CH = 0xF9;
sfr CL = 0xE9;
sfr CMOD = 0xD9;
sfr CCON = 0xD8;
sfr CCAP0H = 0xFA;
sfr CCAP1H = 0xFB;
sfr CCAP2H = 0xFC;
sfr CCAP3H = 0xFD;
sfr CCAP4H = 0xFE;
sfr CCAP0L = 0xEA;
sfr CCAP1L = 0xEB;
sfr CCAP2L = 0xEC;
sfr CCAP3L = 0xED;
sfr CCAP4L = 0xEE;
sfr CCAPM0 = 0xDA;
sfr CCAPM1 = 0xDB;
sfr CCAPM2 = 0xDC;
sfr CCAPM3 = 0xDD;
sfr CCAPM4 = 0xDE;
sfr WDTC = 0xC0;
sfr SADDR = 0xA9;
///////////
/*WDTC*/
sbit WDOUT = WDTC^4;
sbit WDRE = WDTC^3;
sbit WDTS = WDTC^2;
sbit WDT = WDTC^1;
sbit SWDT = WDTC^0;
/*CCON*/
sbit CF = CCON^7;
sbit CR = CCON^6;
sbit CCF4 = CCON^4;
sbit CCF3 = CCON^3;
sbit CCF2 = CCON^2;
sbit CCF1 = CCON^1;
sbit CCF0 = CCON^0;
/*IEA*/
sbit EBO = IEA^3;
/*IPA*/
sbit PBO = IPA^3;
//////////////////definition for C programming////////////////
//一些设置的预定义
#define INT_SOURCE_EX0 0//external interrupt 0
#define INT_SOURCE_T0 1//timer 0
#define INT_SOURCE_EX1 2//external interrupt 1
#define INT_SOURCE_T1 3//timer 1
#define INT_SOURCE_SERIAL 4//serial interrupt
#define INT_SOURCE_T2 5//timer 2
#define INT_SOURCE_PCA 6//PCA interrupt
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -