Main Page   Compound List   File List   Compound Members   File Members  

io1200.h

Go to the documentation of this file.
00001 /*
00002    io1200.h - internal register definitions for AT90S1200
00003 
00004    Contributors:
00005      Created by Marek Michalkiewicz <marekm@linux.org.pl>
00006 
00007    THIS SOFTWARE IS NOT COPYRIGHTED
00008 
00009    This source code is offered for use in the public domain.  You may
00010    use, modify or distribute it freely.
00011 
00012    This code is distributed in the hope that it will be useful, but
00013    WITHOUT ANY WARRANTY.  ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
00014    DISCLAIMED.  This includes but is not limited to warranties of
00015    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00016 
00017    Based on Atmel datasheet Rev. 0838E-04/99.
00018  */
00019 
00020 #ifndef __IO1200
00021 #define __IO1200
00022 
00023 #ifndef __ASSEMBLER__
00024 #  warning "MCU not supported by the C compiler"
00025 #endif
00026 
00027 /* I/O space addresses */
00028 
00029 /* 0x00..0x07 reserved */
00030 
00031 /* Analog Comparator Control and Status Register */
00032 #define ACSR    0x08
00033 
00034 /* 0x09..0x0F reserved */
00035 
00036 #define PIND    0x10
00037 #define DDRD    0x11
00038 #define PORTD   0x12
00039 
00040 /* 0x13..0x15 reserved */
00041 
00042 #define PINB    0x16
00043 #define DDRB    0x17
00044 #define PORTB   0x18
00045 
00046 /* 0x19..0x1B reserved */
00047 
00048 #define EECR    0x1C
00049 #define EEDR    0x1D
00050 #define EEARL   0x1E
00051 
00052 /* 0x1F..0x20 reserved */
00053 
00054 /* Watchdog Timer Control Register */
00055 #define WDTCR   0x21
00056 
00057 /* 0x22..0x31 reserved */
00058 
00059 #define TCNT0   0x32
00060 #define TCCR0   0x33
00061 
00062 /* 0x34 reserved */
00063 
00064 #define MCUCR   0x35
00065 
00066 /* 0x36..0x37 reserved */
00067 
00068 /* Timer/Counter Interrupt Flag Register */
00069 #define TIFR    0x38
00070 
00071 /* Timer/Counter Interrupt MaSK Register */
00072 #define TIMSK   0x39
00073 
00074 /* 0x3A reserved */
00075 
00076 #define GIMSK   0x3B
00077 
00078 /* 0x3C..0x3E reserved */
00079 
00080 #define SREG    0x3F
00081 
00082 /* Interrupt vectors (byte addresses) */
00083 #define RESET_vect              (0x00)
00084 #define INT0_vect               (0x02)
00085 #define TIMER0_OVF_vect         (0x04)
00086 #define ANA_COMP_vect           (0x06)
00087 
00088 #define INT_VECT_SIZE (0x08)
00089 
00090 /* Bit numbers */
00091 
00092 /* GIMSK */
00093 #define INT0    6
00094 
00095 /* TIMSK */
00096 #define TOIE0   1
00097 
00098 /* TIFR */
00099 #define TOV0    1
00100 
00101 /* MCUCR */
00102 #define SE      5
00103 #define SM      4
00104 #define ISC01   1
00105 #define ISC00   0
00106 
00107 /* TCCR0 */
00108 #define CS02    2
00109 #define CS01    1
00110 #define CS00    0
00111 
00112 /* WDTCR */
00113 #define WDE     3
00114 #define WDP2    2
00115 #define WDP1    1
00116 #define WDP0    0
00117 
00118 /* EECR */
00119 #define EEWE    1
00120 #define EERE    0
00121 
00122 /*
00123    PB7 = SCK
00124    PB6 = MISO
00125    PB5 = MOSI
00126    PB1 = AIN1
00127    PB0 = AIN0
00128  */
00129 
00130 /* PORTB */
00131 #define PB7     7
00132 #define PB6     6
00133 #define PB5     5
00134 #define PB4     4
00135 #define PB3     3
00136 #define PB2     2
00137 #define PB1     1
00138 #define PB0     0
00139 
00140 /* DDRB */
00141 #define DDB7    7
00142 #define DDB6    6
00143 #define DDB5    5
00144 #define DDB4    4
00145 #define DDB3    3
00146 #define DDB2    2
00147 #define DDB1    1
00148 #define DDB0    0
00149 
00150 /* PINB */
00151 #define PINB7   7
00152 #define PINB6   6
00153 #define PINB5   5
00154 #define PINB4   4
00155 #define PINB3   3
00156 #define PINB2   2
00157 #define PINB1   1
00158 #define PINB0   0
00159 
00160 /* PORTD */
00161 #define PD6     6
00162 #define PD5     5
00163 #define PD4     4
00164 #define PD3     3
00165 #define PD2     2
00166 #define PD1     1
00167 #define PD0     0
00168 
00169 /* DDRD */
00170 #define DDD6    6
00171 #define DDD5    5
00172 #define DDD4    4
00173 #define DDD3    3
00174 #define DDD2    2
00175 #define DDD1    1
00176 #define DDD0    0
00177 
00178 /* PIND */
00179 #define PIND6   6
00180 #define PIND5   5
00181 #define PIND4   4
00182 #define PIND3   3
00183 #define PIND2   2
00184 #define PIND1   1
00185 #define PIND0   0
00186 
00187 /* ACSR */
00188 #define ACD     7
00189 #define ACO     5
00190 #define ACI     4
00191 #define ACIE    3
00192 #define ACIS1   1
00193 #define ACIS0   0
00194 
00195 #define ZL r30
00196 
00197 /* Last memory addresses */
00198 #define RAMEND          0x1F
00199 #define XRAMEND         0x0
00200 #define E2END           0x3F
00201 #define FLASHEND        0x3FF
00202 
00203 #endif  /* __IO1200 */

Generated at Fri Jul 19 14:55:41 2002 for avrgcc by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001