~ubuntu-branches/ubuntu/gutsy/avr-libc/gutsy

« back to all changes in this revision

Viewing changes to include/iotn22.h

  • Committer: Bazaar Package Importer
  • Author(s): Hakan Ardo
  • Date: 2005-03-19 11:16:14 UTC
  • mfrom: (1.1.1 upstream) (2.1.2 hoary)
  • Revision ID: james.westby@ubuntu.com-20050319111614-4g01s2ftv5x5nxf3
Tags: 1:1.2.3-3
* Added build depends on netpbm
* Added build depends on tetex-extra

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*            - iotn22.h -
2
 
 
3
 
   This file #defines the internal register addresses for ATtiny22L.
4
 
*/
5
 
 
6
 
#ifndef __IOTN22
7
 
#define __IOTN22 1
8
 
 
9
 
 
10
 
/*==========================*/
11
 
/* Predefined SFR Addresses */
12
 
/*==========================*/
13
 
 
14
 
/* Input Pins, Port B */
15
 
#define PINB     0x16
16
 
 
17
 
/* Data Direction Register, Port B */
18
 
#define DDRB     0x17
19
 
 
20
 
/* Data Register, Port B */
21
 
#define PORTB     0x18
22
 
 
23
 
/* EEPROM Control Register */
24
 
#define EECR     0x1C
25
 
 
26
 
/* EEPROM Data Register */
27
 
#define EEDR     0x1D
28
 
 
29
 
/* EEPROM Address Register Low */
30
 
#define EEARL    0x1E
31
 
 
32
 
/* Watchdog Timer Control Register */
33
 
#define WDTCR     0x21
34
 
 
35
 
/* Timer/Counter 0 */
36
 
#define TCNT0     0x32
37
 
 
38
 
/* Timer/Counter 0 Control Register */
39
 
#define TCCR0     0x33
40
 
 
41
 
/* MCU Status Register */
42
 
#define MCUSR     0x34
43
 
 
44
 
/* MCU general Control Register */
45
 
#define MCUCR     0x35
46
 
 
47
 
/* Timer/Counter Interrupt Flag register */
48
 
#define TIFR     0x38
49
 
 
50
 
/* Timer/Counter Interrupt MaSK register */
51
 
#define TIMSK     0x39
52
 
 
53
 
/* General Interrupt Flag register */
54
 
#define GIFR     0x3A
55
 
 
56
 
/* General Interrupt MaSK register */
57
 
#define GIMSK     0x3B
58
 
 
59
 
/* Stack Pointer */
60
 
#define SPL     0x3D
61
 
 
62
 
/* Status REGister */
63
 
#define SREG    0x3F
64
 
 
65
 
 
66
 
/*==============================*/
67
 
/* Interrupt Vector Definitions */
68
 
/*==============================*/
69
 
 
70
 
/* NB! vectors are specified as byte addresses */
71
 
 
72
 
#define SIG_INTERRUPT0          _vector_1
73
 
#define SIG_OVERFLOW0           _vector_2
74
 
 
75
 
#define END_VECTOR              (2)
76
 
#define INT_VECT_SIZE (0x06)
77
 
 
78
 
/*
79
 
   The Register Bit names are represented by their bit number (0-7).
80
 
 */
81
 
 
82
 
/* General Interrupt MaSK register */
83
 
#define    INT0    6
84
 
#define    INTF0   6
85
 
 
86
 
/* General Interrupt Flag Register */
87
 
#define    TOIE0   1
88
 
#define    TOV0    1
89
 
 
90
 
/* MCU general Control Register */
91
 
#define    SE      5
92
 
#define    SM      4
93
 
#define    ISC01   1
94
 
#define    ISC00   0
95
 
 
96
 
/* Timer/Counter 0 Control Register */
97
 
#define    CS02    2
98
 
#define    CS01    1
99
 
#define    CS00    0
100
 
 
101
 
/* Watchdog Timer Control Register */
102
 
#define    WDTOE   4
103
 
#define    WDE     3
104
 
#define    WDP2    2
105
 
#define    WDP1    1
106
 
#define    WDP0    0
107
 
 
108
 
/* EEPROM Control Register */
109
 
#define    EEMWE   2
110
 
#define    EEWE    1
111
 
#define    EERE    0
112
 
 
113
 
/*
114
 
   PB2 = SCK/T0
115
 
   PB1 = MISO/INT0
116
 
   PB0 = MOSI
117
 
 */
118
 
 
119
 
/* Data Register, Port B */
120
 
#define    PB4     4
121
 
#define    PB3     3
122
 
#define    PB2     2
123
 
#define    PB1     1
124
 
#define    PB0     0
125
 
 
126
 
/* Data Direction Register, Port B */
127
 
#define    DDB4    4
128
 
#define    DDB3    3
129
 
#define    DDB2    2
130
 
#define    DDB1    1
131
 
#define    DDB0    0
132
 
 
133
 
/* Input Pins, Port B */
134
 
#define    PINB4   4
135
 
#define    PINB3   3
136
 
#define    PINB2   2
137
 
#define    PINB1   1
138
 
#define    PINB0   0
139
 
 
140
 
/* Pointer definition   */
141
 
#define    XL     r26
142
 
#define    XH     r27
143
 
#define    YL     r28
144
 
#define    YH     r29
145
 
#define    ZL     r30
146
 
#define    ZH     r31
147
 
 
148
 
/* Constants */
149
 
#define    RAMEND    0xDF
150
 
#define    XRAMEND   0xDF
151
 
#define    E2END     0x7F
152
 
#define    FLASHEND  0x07FF
153
 
 
154
 
#endif
155