/*-------------------------------------------------------------------------- REG504.H Header file for the C504 Processor. Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc. All rights reserved. --------------------------------------------------------------------------*/ #ifndef __REG504_H__ #define __REG504_H__ /* BYTE Register */ sfr P0 = 0x80; /* Bit-addressable SFR */ sfr SP = 0x81; sfr DPL = 0x82; sfr DPH = 0x83; sfr WDTREL = 0x86; sfr PCON = 0x87; sfr TCON = 0x88; /* Bit-addressable SFR */ sfr PCON1 = 0x88; /* Bit-addressable SFR, in mapped SFR area */ sfr TMOD = 0x89; sfr TL0 = 0x8A; sfr TL1 = 0x8B; sfr TH0 = 0x8C; sfr TH1 = 0x8D; sfr P1 = 0x90; /* Bit-addressable SFR */ sfr P1ANA = 0x90; /* Bit-addressable SFR, in mapped SFR area */ sfr SCON = 0x98; /* Bit-addressable SFR */ sfr SBUF = 0x99; sfr ITCON = 0x9A; sfr P2 = 0xA0; /* Bit-addressable SFR */ sfr IEN0 = 0xA8; /* Bit-addressable SFR */ sfr IEN1 = 0xA9; sfr SRELL = 0xAA; sfr P3 = 0xB0; /* Bit-addressable SFR */ sfr P3ANA = 0xB0; /* Bit-addressable SFR, in mapped SFR area */ sfr SYSCON = 0xB1; sfr IP0 = 0xB8; /* Bit-addressable SFR */ sfr IP1 = 0xB9; sfr WDCON = 0xC0; /* Bit-addressable SFR */ sfr CT2CON = 0xC1; sfr CCL0 = 0xC2; sfr CCH0 = 0xC3; sfr CCL1 = 0xC4; sfr CCH1 = 0xC5; sfr CCL2 = 0xC6; sfr CCH2 = 0xC7; sfr T2CON = 0xC8; /* Bit-addressable SFR */ sfr T2MOD = 0xC9; sfr RC2L = 0xCA; sfr RC2H = 0xCB; sfr TL2 = 0xCC; sfr TH2 = 0xCD; sfr TRCON = 0xCF; sfr PSW = 0xD0; /* Bit-addressable SFR */ sfr CP2L = 0xD2; sfr CP2H = 0xD3; sfr CMP2l = 0xD4; sfr CMP2H = 0xD5; sfr CCIE = 0xD6; sfr BCON = 0xD7; sfr ADCON0 = 0xD8; /* Bit-addressable SFR */ sfr ADDATH = 0xD9; sfr ADDATL = 0xDA; sfr ADCON1 = 0xDC; sfr CCPL = 0xDE; sfr CCPH = 0xDF; sfr ACC = 0xE0; /* Bit-addressable SFR */ sfr CT1CON = 0xE1; sfr COINI = 0xE2; sfr CMSEL0 = 0xE3; sfr CMSEL1 = 0xE4; sfr CCIR = 0xE5; sfr CT1OFL = 0xE6; sfr CT1OFH = 0xE7; sfr B = 0xF0; /* Bit-addressable SFR */ /* 16-Bit SFR's for CC?? registers */ sfr16 CC0 = 0xC2; sfr16 CC1 = 0xC4; sfr16 CC2 = 0xC6; sfr16 RC2 = 0xCA; sfr16 T2 = 0xCC; /*******************************************/ /* BIT-addressable registers */ /* TCON */ sbit TF1 = 0x8F; sbit TR1 = 0x8E; sbit TF0 = 0x8D; sbit TR0 = 0x8C; sbit IE1 = 0x8B; sbit IT1 = 0x8A; sbit IE0 = 0x89; sbit IT0 = 0x88; sbit EWPD = 0x88; /* in mapped SFR area */ /* SCON */ sbit SM0 = 0x9F; sbit SM1 = 0x9E; sbit SM2 = 0x9D; sbit REN = 0x9C; sbit TB8 = 0x9B; sbit RB8 = 0x9A; sbit TI = 0x99; sbit RI = 0x98; /* P1, P1ANA */ sbit EAN3 = 0x93; /* in mapped SFR area */ sbit EAN2 = 0x92; /* in mapped SFR area */ sbit EAN1 = 0x91; /* in mapped SFR area */ sbit T2EX = 0x91; sbit EAN0 = 0x90; /* in mapped SFR area */ sbit _T2 = 0x90; /* T2 (Timer#2)defined as 16 Bit SFR */ /* IEN0 */ sbit EA = 0xAF; sbit ET2 = 0xAD; sbit ES = 0xAC; sbit ET1 = 0xAB; sbit EX1 = 0xAA; sbit ET0 = 0xA9; sbit EX0 = 0xA8; /* IP0 */ sbit PT2 = 0xBD; sbit PS = 0xBC; sbit PT1 = 0xBB; sbit PX1 = 0xBA; sbit PT0 = 0xB9; sbit PX0 = 0xB8; /* P3, P3ANA */ sbit RD = 0xB7; sbit WR = 0xB6; sbit T1 = 0xB5; sbit EAN7 = 0xB5; /* in mapped SFR area */ sbit T0 = 0xB4; sbit EAN6 = 0xB4; /* in mapped SFR area */ sbit INT1 = 0xB3; sbit EAN5 = 0xB3; /* in mapped SFR area */ sbit INT0 = 0xB2; sbit EAN4 = 0xB2; /* in mapped SFR area */ sbit TXD = 0xB1; sbit RXD = 0xB0; /* T2CON */ sbit TF2 = 0xCF; sbit EXF2 = 0xCE; sbit RCLK = 0xCD; sbit TCLK = 0xCC; sbit EXEN2 = 0xCB; sbit TR2 = 0xCA; sbit C = 0xC9; /* also /T2 */ sbit CP = 0xC8; /* also /RL2 */ /* WDCON */ sbit OWDS = 0xC3; sbit WDTS = 0xC2; sbit WDT = 0xC1; sbit SWDT = 0xC0; /* ADCON0 */ sbit IADC = 0xDD; sbit BSY = 0xDC; sbit ADM = 0xDB; sbit MX2 = 0xDA; sbit MX1 = 0xD9; sbit MX0 = 0xD8; /* PSW */ sbit CY = 0xD7; sbit AC = 0xD6; sbit F0 = 0xD5; sbit RS1 = 0xD4; sbit RS0 = 0xD3; sbit OV = 0xD2; sbit F1 = 0xD1; sbit P = 0xD0; #endif