]> git.llucax.com Git - z.facultad/66.09/etherled.git/blob - src/reg51sdcc.h
Arregla macros para que no hagan lío evaluando cosas más de una vez.
[z.facultad/66.09/etherled.git] / src / reg51sdcc.h
1 #ifndef _REG51SDCC_H_
2 #define _REG51SDCC_H_
3
4 /*  BYTE Register  */
5 sfr at 0x80 P0;
6 sfr at 0x90 P1;
7 sfr at 0xA0 P2;
8 sfr at 0xB0 P3;
9 sfr at 0xD0 PSW;
10 sfr at 0xE0 ACC;
11 sfr at 0xF0 B;
12 sfr at 0x81 SP;
13 sfr at 0x82 DPL;
14 sfr at 0x83 DPH;
15 sfr at 0x87 PCON;
16 sfr at 0x88 TCON;
17 sfr at 0x89 TMOD;
18 sfr at 0x8A TL0;
19 sfr at 0x8B TL1;
20 sfr at 0x8C TH0;
21 sfr at 0x8D TH1;
22 sfr at 0xA8 IE;
23 sfr at 0xB8 IP;
24 sfr at 0x98 SCON;
25 sfr at 0x99 SBUF;
26
27 /*  BIT Register  */
28 /*  PSW   */
29 sbit at 0xD7 CY;
30 sbit at 0xD6 AC;
31 sbit at 0xD5 F0;
32 sbit at 0xD4 RS1;
33 sbit at 0xD3 RS0;
34 sbit at 0xD2 OV;
35 sbit at 0xD0 P;
36
37 /*  TCON  */
38 sbit at 0x8F TF1;
39 sbit at 0x8E TR1;
40 sbit at 0x8D TF0;
41 sbit at 0x8C TR0;
42 sbit at 0x8B IE1;
43 sbit at 0x8A IT1;
44 sbit at 0x89 IE0;
45 sbit at 0x88 IT0;
46
47 /*  IE   */
48 sbit at 0xAF EA;
49 sbit at 0xAC ES;
50 sbit at 0xAB ET1;
51 sbit at 0xAA EX1;
52 sbit at 0xA9 ET0;
53 sbit at 0xA8 EX0;
54
55 /*  IP   */ 
56 sbit at 0xBC PS;
57 sbit at 0xBB PT1;
58 sbit at 0xBA PX1;
59 sbit at 0xB9 PT0;
60 sbit at 0xB8 PX0;
61
62 /*  P3  */
63 sbit at 0xB7 RD;
64 sbit at 0xB6 WR;
65 sbit at 0xB5 T1;
66 sbit at 0xB4 T0;
67 sbit at 0xB3 INT1;
68 sbit at 0xB2 INT0;
69 sbit at 0xB1 TXD;
70 sbit at 0xB0 RXD;
71
72 /*  SCON  */
73 sbit at 0x9F SM0;
74 sbit at 0x9E SM1;
75 sbit at 0x9D SM2;
76 sbit at 0x9C REN;
77 sbit at 0x9B TB8;
78 sbit at 0x9A RB8;
79 sbit at 0x99 TI;
80 sbit at 0x98 RI;
81
82 #endif /* _REG51SDCC_H_ */