home *** CD-ROM | disk | FTP | other *** search
- /*
- * 80C517/537 Port definitions
- *
- * Written by: Clyde P. Smith-Stubbs
- * February 1993
- *
- * Copyright (C) 1993 HI-TECH Software
- */
-
- /* SFR definitions for the 80C517/537 */
-
-
- static unsigned char ADCON0 @ 0xD8;
- static unsigned char ADCON1 @ 0xDC;
- static unsigned char ADDAT @ 0xD9;
- static unsigned char DAPR @ 0xDA;
- static unsigned char CCEN @ 0xC1;
- static unsigned char CC4EN @ 0xC9;
- static unsigned char CCHl @ 0xC3;
- static unsigned char CCH2 @ 0xC5;
- static unsigned char CCH3 @ 0xC7;
- static unsigned char CCH4 @ 0xCF;
- static unsigned char CCLl @ 0xC2;
- static unsigned char CCL2 @ 0xC4;
- static unsigned char CCL3 @ 0xC6;
- static unsigned char CCL4 @ 0xCE;
- static unsigned char CMEN @ 0xF6;
- static unsigned char CMH0 @ 0xD3;
- static unsigned char CMHl @ 0xD5;
- static unsigned char CMH2 @ 0xD7;
- static unsigned char CMH3 @ 0xE3;
- static unsigned char CMH4 @ 0xE5;
- static unsigned char CMH5 @ 0xE7;
- static unsigned char CMH6 @ 0xF3;
- static unsigned char CMH7 @ 0xF5;
- static unsigned char CML0 @ 0xD2;
- static unsigned char CMLl @ 0xD4;
- static unsigned char CML2 @ 0xD6;
- static unsigned char CML3 @ 0xE2;
- static unsigned char CML4 @ 0xE4;
- static unsigned char CML5 @ 0xE6;
- static unsigned char CML6 @ 0xF2;
- static unsigned char CML7 @ 0xF4;
- static unsigned char CMSEL @ 0xF7;
- static unsigned char CRCH @ 0xCB;
- static unsigned char CRCL @ 0xCA;
- static unsigned char CTRELH @ 0xDF;
- static unsigned char CTRELL @ 0xDE;
- static unsigned char TH2 @ 0xCD;
- static unsigned char TL2 @ 0xCC;
- static unsigned char T2CON @ 0xC8;
- static unsigned char IEN0 @ 0xA8;
- static unsigned char CTCON @ 0xE1;
- static unsigned char IEN1 @ 0xBB;
- static unsigned char IEN2 @ 0x9A;
- static unsigned char IP0 @ 0xA9;
- static unsigned char IP1 @ 0xB9;
- static unsigned char IRCON @ 0xC0;
- static unsigned char TCON @ 0x88;
- static unsigned char ARCON @ 0xEF;
- static unsigned char MD0 @ 0xE9;
- static unsigned char MD1 @ 0xEA;
- static unsigned char MD2 @ 0xEB;
- static unsigned char MD3 @ 0xEC;
- static unsigned char MD4 @ 0xED;
- static unsigned char MD5 @ 0xEE;
- static unsigned char P0 @ 0x80;
- static unsigned char Pl @ 0x90;
- static unsigned char P2 @ 0xA0;
- static unsigned char P3 @ 0xB0;
- static unsigned char P4 @ 0xE8;
- static unsigned char P5 @ 0xF8;
- static unsigned char P6 @ 0xFA;
- static unsigned char P7 @ 0xDB;
- static unsigned char P8 @ 0xDD;
- static unsigned char PCON @ 0x87;
- static unsigned char S0BUF @ 0x99;
- static unsigned char S0CON @ 0x98;
- static unsigned char S1BUF @ 0x9C;
- static unsigned char S1CON @ 0x9B;
- static unsigned char S1REL @ 0x9D;
- static unsigned char TH0 @ 0x8C;
- static unsigned char THl @ 0x8D;
- static unsigned char TL0 @ 0x8A;
- static unsigned char TLl @ 0x8B;
- static unsigned char TMOD @ 0x89;
- static unsigned char IENI @ 0xBB;
- static unsigned char WDTREL @ 0x86;
-
- /* the bit addressable locations */
-
- typedef struct {
- unsigned B7:1; /* this is the most significant bit */
- unsigned B6:1;
- unsigned B5:1;
- unsigned B4:1;
- unsigned B3:1;
- unsigned B2:1;
- unsigned B1:1;
- unsigned B0:1;
- } SFR_BITS;
-
- static SFR_BITS ADCON0_BITS @ 0xD8;
- static SFR_BITS T2CON_BITS @ 0xC8;
- static SFR_BITS IRCON_BITS @ 0xC0;
- static SFR_BITS P0_BITS @ 0x80;
- static SFR_BITS Pl_BITS @ 0x90;
- static SFR_BITS P2_BITS @ 0xA0;
- static SFR_BITS P3_BITS @ 0xB0;
- static SFR_BITS P4_BITS @ 0xE8;
- static SFR_BITS P5_BITS @ 0xF8;
- static SFR_BITS S0CON_BITS @ 0x98;
- static SFR_BITS TCON_BITS @ 0x88;
- static SFR_BITS IEN0_BITS @ 0xA8;
-
- /* Standard bit names */
-
- static bit unsigned char BD @ 0xDF;
- static bit unsigned char CLK @ 0xDE;
- static bit unsigned char ADEX @ 0xDD;
- static bit unsigned char BSY @ 0xDC;
- static bit unsigned char ADM @ 0xDB;
- static bit unsigned char MX2 @ 0xDA;
- static bit unsigned char MX1 @ 0xD9;
- static bit unsigned char MX0 @ 0xD8;
- static bit unsigned char T2PS @ 0xCF;
- static bit unsigned char T2R1 @ 0xCC;
- static bit unsigned char T2R0 @ 0xCB;
- static bit unsigned char T2CM @ 0xCA;
- static bit unsigned char T2L1 @ 0xC9;
- static bit unsigned char T2L0 @ 0xC8;
- static bit unsigned char EXF2 @ 0xC7;
- static bit unsigned char TF2 @ 0xC6;
- static bit unsigned char IEX6 @ 0xC5;
- static bit unsigned char IEX5 @ 0xC4;
- static bit unsigned char IEX4 @ 0xC3;
- static bit unsigned char IEX3 @ 0xC2;
- static bit unsigned char IEX2 @ 0xC1;
- static bit unsigned char IADC @ 0xC0;
- static bit unsigned char TF1 @ 0x8F;
- static bit unsigned char TR1 @ 0x8E;
- static bit unsigned char TF0 @ 0x8D;
- static bit unsigned char TR0 @ 0x8C;
- static bit unsigned char IE1 @ 0x8B;
- static bit unsigned char IT1 @ 0x8A;
- static bit unsigned char IE0 @ 0x89;
- static bit unsigned char IT0 @ 0x88;
- static bit unsigned char EAL @ 0xAF;
- static bit unsigned char WOT @ 0xAE;
- static bit unsigned char ET2 @ 0xAD;
- static bit unsigned char ES0 @ 0xAC;
- static bit unsigned char ET1 @ 0xAB;
- static bit unsigned char EX1 @ 0xAA;
- static bit unsigned char ET0 @ 0xA9;
- static bit unsigned char EX0 @ 0xA8;
- static bit unsigned char EXEN2 @ 0xBF;
- static bit unsigned char SWDT @ 0xBE;
- static bit unsigned char EX6 @ 0xBD;
- static bit unsigned char EX5 @ 0xBC;
- static bit unsigned char EX4 @ 0xBB;
- static bit unsigned char EX3 @ 0xBA;
- static bit unsigned char EX2 @ 0xB9;
- static bit unsigned char EADC @ 0xB8;
- static bit unsigned char SM0 @ 0x9F;
- static bit unsigned char SM1 @ 0x9E;
- static bit unsigned char SM20 @ 0x9D;
- static bit unsigned char REN0 @ 0x9C;
- static bit unsigned char TB80 @ 0x9B;
- static bit unsigned char RB80 @ 0x9A;
- static bit unsigned char TI0 @ 0x99;
- static bit unsigned char RI0 @ 0x98;
-
-
-
-
- /* Interrupt vectors */
-
- #define RESET 0x00
- #define EXTI0 0x03
- #define TIMER0 0x0B
- #define EXTI1 0x13
- #define TIMER1 0x1B
- #define SINT0 0x23
- #define TIMER2 0x2B
- #define ADCINT 0x43
- #define EXTI2 0x4B
- #define EXTI3 0x53
- #define EXTI4 0x5B
- #define EXTI5 0x63
- #define EXTI6 0x6B
- #define SINT1 0x83
- #define CTIMER 0x8B
-