1 /*-------------------------------------------------------------------------
2 Register Declarations for ATMEL 89x52 Processors
4 Written By - Bernd Bartmann
5 Bernd.Bartmann@picard.isdn.cs.tu-berlin.de (1999)
6 based on reg51.h by Sandeep Dutta sandeep.dutta@usa.net
7 KEIL C compatible definitions are included
9 This program is free software; you can redistribute it and/or modify it
10 under the terms of the GNU General Public License as published by the
11 Free Software Foundation; either version 2, or (at your option) any
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
23 In other words, you are welcome to use, share and improve this program.
24 You are forbidden to forbid anyone else to use, share and improve
25 what you give them. Help stamp out software-hoarding!
26 -------------------------------------------------------------------------*/
31 /* BYTE addressable registers */
62 /* BIT addressable registers */
153 sbit at 0xC8 T2CON_0 ;
154 sbit at 0xC9 T2CON_1 ;
155 sbit at 0xCA T2CON_2 ;
156 sbit at 0xCB T2CON_3 ;
157 sbit at 0xCC T2CON_4 ;
158 sbit at 0xCD T2CON_5 ;
159 sbit at 0xCE T2CON_6 ;
160 sbit at 0xCF T2CON_7 ;
162 sbit at 0xC8 CP_RL2 ;
182 /* BIT definitions for bits that are not directly accessible */
227 #define T0_GATE_ 0x08
231 #define T1_GATE_ 0x80
236 #define T0_MASK_ 0x0F
237 #define T1_MASK_ 0xF0
247 /* Interrupt numbers: address = (number * 8) + 3 */
248 #define IE0_VECTOR 0 /* 0x03 external interrupt 0 */
249 #define TF0_VECTOR 1 /* 0x0b timer 0 */
250 #define IE1_VECTOR 2 /* 0x13 external interrupt 1 */
251 #define TF1_VECTOR 3 /* 0x1b timer 1 */
252 #define SI0_VECTOR 4 /* 0x23 serial port 0 */
253 #define TF2_VECTOR 5 /* 0x2B timer 2 */
254 #define EX2_VECTOR 5 /* 0x2B external interrupt 2 */