AVR-LibC  2.3.0git
Standard C library for AVR-GCC
 

AVR-LibC Documen­tation

AVR-LibC Development Pages

Main Page

User Manual

Library Refe­rence

FAQ

Example Projects

File List

Index

Loading...
Searching...
No Matches
portpins.h
1/* Copyright (c) 2003 Theodore A. Roth
2 All rights reserved.
3
4 Redistribution and use in source and binary forms, with or without
5 modification, are permitted provided that the following conditions are met:
6
7 * Redistributions of source code must retain the above copyright
8 notice, this list of conditions and the following disclaimer.
9
10 * Redistributions in binary form must reproduce the above copyright
11 notice, this list of conditions and the following disclaimer in
12 the documentation and/or other materials provided with the
13 distribution.
14
15 * Neither the name of the copyright holders nor the names of
16 contributors may be used to endorse or promote products derived
17 from this software without specific prior written permission.
18
19 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 POSSIBILITY OF SUCH DAMAGE. */
30
31#ifndef _AVR_PORTPINS_H_
32#define _AVR_PORTPINS_H_ 1
33
34/* This file should only be included from <avr/io.h>, never directly. */
35
36#ifndef _AVR_IO_H_
37# error "Include <avr/io.h> instead of this file."
38#endif
39
40/* Define Generic PORTn, DDn, and PINn values. */
41
42/* Port Data Register (generic) */
43#define PORT7 7
44#define PORT6 6
45#define PORT5 5
46#define PORT4 4
47#define PORT3 3
48#define PORT2 2
49#define PORT1 1
50#define PORT0 0
51
52/* Port Data Direction Register (generic) */
53#define DD7 7
54#define DD6 6
55#define DD5 5
56#define DD4 4
57#define DD3 3
58#define DD2 2
59#define DD1 1
60#define DD0 0
61
62/* Port Input Pins (generic) */
63#define PIN7 7
64#define PIN6 6
65#define PIN5 5
66#define PIN4 4
67#define PIN3 3
68#define PIN2 2
69#define PIN1 1
70#define PIN0 0
71
72/* Define PORTxn an Pxn values for all possible port pins if not defined already by io.h. */
73
74/* PORT A */
75
76#if defined(PA0) && !defined(PORTA0)
77# define PORTA0 PA0
78#elif defined(PORTA0) && !defined(PA0)
79# define PA0 PORTA0
80#endif
81#if defined(PA1) && !defined(PORTA1)
82# define PORTA1 PA1
83#elif defined(PORTA1) && !defined(PA1)
84# define PA1 PORTA1
85#endif
86#if defined(PA2) && !defined(PORTA2)
87# define PORTA2 PA2
88#elif defined(PORTA2) && !defined(PA2)
89# define PA2 PORTA2
90#endif
91#if defined(PA3) && !defined(PORTA3)
92# define PORTA3 PA3
93#elif defined(PORTA3) && !defined(PA3)
94# define PA3 PORTA3
95#endif
96#if defined(PA4) && !defined(PORTA4)
97# define PORTA4 PA4
98#elif defined(PORTA4) && !defined(PA4)
99# define PA4 PORTA4
100#endif
101#if defined(PA5) && !defined(PORTA5)
102# define PORTA5 PA5
103#elif defined(PORTA5) && !defined(PA5)
104# define PA5 PORTA5
105#endif
106#if defined(PA6) && !defined(PORTA6)
107# define PORTA6 PA6
108#elif defined(PORTA6) && !defined(PA6)
109# define PA6 PORTA6
110#endif
111#if defined(PA7) && !defined(PORTA7)
112# define PORTA7 PA7
113#elif defined(PORTA7) && !defined(PA7)
114# define PA7 PORTA7
115#endif
116
117/* PORT B */
118
119#if defined(PB0) && !defined(PORTB0)
120# define PORTB0 PB0
121#elif defined(PORTB0) && !defined(PB0)
122# define PB0 PORTB0
123#endif
124#if defined(PB1) && !defined(PORTB1)
125# define PORTB1 PB1
126#elif defined(PORTB1) && !defined(PB1)
127# define PB1 PORTB1
128#endif
129#if defined(PB2) && !defined(PORTB2)
130# define PORTB2 PB2
131#elif defined(PORTB2) && !defined(PB2)
132# define PB2 PORTB2
133#endif
134#if defined(PB3) && !defined(PORTB3)
135# define PORTB3 PB3
136#elif defined(PORTB3) && !defined(PB3)
137# define PB3 PORTB3
138#endif
139#if defined(PB4) && !defined(PORTB4)
140# define PORTB4 PB4
141#elif defined(PORTB4) && !defined(PB4)
142# define PB4 PORTB4
143#endif
144#if defined(PB5) && !defined(PORTB5)
145# define PORTB5 PB5
146#elif defined(PORTB5) && !defined(PB5)
147# define PB5 PORTB5
148#endif
149#if defined(PB6) && !defined(PORTB6)
150# define PORTB6 PB6
151#elif defined(PORTB6) && !defined(PB6)
152# define PB6 PORTB6
153#endif
154#if defined(PB7) && !defined(PORTB7)
155# define PORTB7 PB7
156#elif defined(PORTB7) && !defined(PB7)
157# define PB7 PORTB7
158#endif
159
160/* PORT C */
161
162#if defined(PC0) && !defined(PORTC0)
163# define PORTC0 PC0
164#elif defined(PORTC0) && !defined(PC0)
165# define PC0 PORTC0
166#endif
167#if defined(PC1) && !defined(PORTC1)
168# define PORTC1 PC1
169#elif defined(PORTC1) && !defined(PC1)
170# define PC1 PORTC1
171#endif
172#if defined(PC2) && !defined(PORTC2)
173# define PORTC2 PC2
174#elif defined(PORTC2) && !defined(PC2)
175# define PC2 PORTC2
176#endif
177#if defined(PC3) && !defined(PORTC3)
178# define PORTC3 PC3
179#elif defined(PORTC3) && !defined(PC3)
180# define PC3 PORTC3
181#endif
182#if defined(PC4) && !defined(PORTC4)
183# define PORTC4 PC4
184#elif defined(PORTC4) && !defined(PC4)
185# define PC4 PORTC4
186#endif
187#if defined(PC5) && !defined(PORTC5)
188# define PORTC5 PC5
189#elif defined(PORTC5) && !defined(PC5)
190# define PC5 PORTC5
191#endif
192#if defined(PC6) && !defined(PORTC6)
193# define PORTC6 PC6
194#elif defined(PORTC6) && !defined(PC6)
195# define PC6 PORTC6
196#endif
197#if defined(PC7) && !defined(PORTC7)
198# define PORTC7 PC7
199#elif defined(PORTC7) && !defined(PC7)
200# define PC7 PORTC7
201#endif
202
203/* PORT D */
204
205#if defined(PD0) && !defined(PORTD0)
206# define PORTD0 PD0
207#elif defined(PORTD0) && !defined(PD0)
208# define PD0 PORTD0
209#endif
210#if defined(PD1) && !defined(PORTD1)
211# define PORTD1 PD1
212#elif defined(PORTD1) && !defined(PD1)
213# define PD1 PORTD1
214#endif
215#if defined(PD2) && !defined(PORTD2)
216# define PORTD2 PD2
217#elif defined(PORTD2) && !defined(PD2)
218# define PD2 PORTD2
219#endif
220#if defined(PD3) && !defined(PORTD3)
221# define PORTD3 PD3
222#elif defined(PORTD3) && !defined(PD3)
223# define PD3 PORTD3
224#endif
225#if defined(PD4) && !defined(PORTD4)
226# define PORTD4 PD4
227#elif defined(PORTD4) && !defined(PD4)
228# define PD4 PORTD4
229#endif
230#if defined(PD5) && !defined(PORTD5)
231# define PORTD5 PD5
232#elif defined(PORTD5) && !defined(PD5)
233# define PD5 PORTD5
234#endif
235#if defined(PD6) && !defined(PORTD6)
236# define PORTD6 PD6
237#elif defined(PORTD6) && !defined(PD6)
238# define PD6 PORTD6
239#endif
240#if defined(PD7) && !defined(PORTD7)
241# define PORTD7 PD7
242#elif defined(PORTD7) && !defined(PD7)
243# define PD7 PORTD7
244#endif
245
246/* PORT E */
247
248#if defined(PE0) && !defined(PORTE0)
249# define PORTE0 PE0
250#elif defined(PORTE0) && !defined(PE0)
251# define PE0 PORTE0
252#endif
253#if defined(PE1) && !defined(PORTE1)
254# define PORTE1 PE1
255#elif defined(PORTE1) && !defined(PE1)
256# define PE1 PORTE1
257#endif
258#if defined(PE2) && !defined(PORTE2)
259# define PORTE2 PE2
260#elif defined(PORTE2) && !defined(PE2)
261# define PE2 PORTE2
262#endif
263#if defined(PE3) && !defined(PORTE3)
264# define PORTE3 PE3
265#elif defined(PORTE3) && !defined(PE3)
266# define PE3 PORTE3
267#endif
268#if defined(PE4) && !defined(PORTE4)
269# define PORTE4 PE4
270#elif defined(PORTE4) && !defined(PE4)
271# define PE4 PORTE4
272#endif
273#if defined(PE5) && !defined(PORTE5)
274# define PORTE5 PE5
275#elif defined(PORTE5) && !defined(PE5)
276# define PE5 PORTE5
277#endif
278#if defined(PE6) && !defined(PORTE6)
279# define PORTE6 PE6
280#elif defined(PORTE6) && !defined(PE6)
281# define PE6 PORTE6
282#endif
283#if defined(PE7) && !defined(PORTE7)
284# define PORTE7 PE7
285#elif defined(PORTE7) && !defined(PE7)
286# define PE7 PORTE7
287#endif
288
289/* PORT F */
290
291#if defined(PF0) && !defined(PORTF0)
292# define PORTF0 PF0
293#elif defined(PORTF0) && !defined(PF0)
294# define PF0 PORTF0
295#endif
296#if defined(PF1) && !defined(PORTF1)
297# define PORTF1 PF1
298#elif defined(PORTF1) && !defined(PF1)
299# define PF1 PORTF1
300#endif
301#if defined(PF2) && !defined(PORTF2)
302# define PORTF2 PF2
303#elif defined(PORTF2) && !defined(PF2)
304# define PF2 PORTF2
305#endif
306#if defined(PF3) && !defined(PORTF3)
307# define PORTF3 PF3
308#elif defined(PORTF3) && !defined(PF3)
309# define PF3 PORTF3
310#endif
311#if defined(PF4) && !defined(PORTF4)
312# define PORTF4 PF4
313#elif defined(PORTF4) && !defined(PF4)
314# define PF4 PORTF4
315#endif
316#if defined(PF5) && !defined(PORTF5)
317# define PORTF5 PF5
318#elif defined(PORTF5) && !defined(PF5)
319# define PF5 PORTF5
320#endif
321#if defined(PF6) && !defined(PORTF6)
322# define PORTF6 PF6
323#elif defined(PORTF6) && !defined(PF6)
324# define PF6 PORTF6
325#endif
326#if defined(PF7) && !defined(PORTF7)
327# define PORTF7 PF7
328#elif defined(PORTF7) && !defined(PF7)
329# define PF7 PORTF7
330#endif
331
332/* PORT G */
333
334#if defined(PG0) && !defined(PORTG0)
335# define PORTG0 PG0
336#elif defined(PORTG0) && !defined(PG0)
337# define PG0 PORTG0
338#endif
339#if defined(PG1) && !defined(PORTG1)
340# define PORTG1 PG1
341#elif defined(PORTG1) && !defined(PG1)
342# define PG1 PORTG1
343#endif
344#if defined(PG2) && !defined(PORTG2)
345# define PORTG2 PG2
346#elif defined(PORTG2) && !defined(PG2)
347# define PG2 PORTG2
348#endif
349#if defined(PG3) && !defined(PORTG3)
350# define PORTG3 PG3
351#elif defined(PORTG3) && !defined(PG3)
352# define PG3 PORTG3
353#endif
354#if defined(PG4) && !defined(PORTG4)
355# define PORTG4 PG4
356#elif defined(PORTG4) && !defined(PG4)
357# define PG4 PORTG4
358#endif
359#if defined(PG5) && !defined(PORTG5)
360# define PORTG5 PG5
361#elif defined(PORTG5) && !defined(PG5)
362# define PG5 PORTG5
363#endif
364#if defined(PG6) && !defined(PORTG6)
365# define PORTG6 PG6
366#elif defined(PORTG6) && !defined(PG6)
367# define PG6 PORTG6
368#endif
369#if defined(PG7) && !defined(PORTG7)
370# define PORTG7 PG7
371#elif defined(PORTG7) && !defined(PG7)
372# define PG7 PORTG7
373#endif
374
375/* PORT H */
376
377#if defined(PH0) && !defined(PORTH0)
378# define PORTH0 PH0
379#elif defined(PORTH0) && !defined(PH0)
380# define PH0 PORTH0
381#endif
382#if defined(PH1) && !defined(PORTH1)
383# define PORTH1 PH1
384#elif defined(PORTH1) && !defined(PH1)
385# define PH1 PORTH1
386#endif
387#if defined(PH2) && !defined(PORTH2)
388# define PORTH2 PH2
389#elif defined(PORTH2) && !defined(PH2)
390# define PH2 PORTH2
391#endif
392#if defined(PH3) && !defined(PORTH3)
393# define PORTH3 PH3
394#elif defined(PORTH3) && !defined(PH3)
395# define PH3 PORTH3
396#endif
397#if defined(PH4) && !defined(PORTH4)
398# define PORTH4 PH4
399#elif defined(PORTH4) && !defined(PH4)
400# define PH4 PORTH4
401#endif
402#if defined(PH5) && !defined(PORTH5)
403# define PORTH5 PH5
404#elif defined(PORTH5) && !defined(PH5)
405# define PH5 PORTH5
406#endif
407#if defined(PH6) && !defined(PORTH6)
408# define PORTH6 PH6
409#elif defined(PORTH6) && !defined(PH6)
410# define PH6 PORTH6
411#endif
412#if defined(PH7) && !defined(PORTH7)
413# define PORTH7 PH7
414#elif defined(PORTH7) && !defined(PH7)
415# define PH7 PORTH7
416#endif
417
418/* PORT J */
419
420#if defined(PJ0) && !defined(PORTJ0)
421# define PORTJ0 PJ0
422#elif defined(PORTJ0) && !defined(PJ0)
423# define PJ0 PORTJ0
424#endif
425#if defined(PJ1) && !defined(PORTJ1)
426# define PORTJ1 PJ1
427#elif defined(PORTJ1) && !defined(PJ1)
428# define PJ1 PORTJ1
429#endif
430#if defined(PJ2) && !defined(PORTJ2)
431# define PORTJ2 PJ2
432#elif defined(PORTJ2) && !defined(PJ2)
433# define PJ2 PORTJ2
434#endif
435#if defined(PJ3) && !defined(PORTJ3)
436# define PORTJ3 PJ3
437#elif defined(PORTJ3) && !defined(PJ3)
438# define PJ3 PORTJ3
439#endif
440#if defined(PJ4) && !defined(PORTJ4)
441# define PORTJ4 PJ4
442#elif defined(PORTJ4) && !defined(PJ4)
443# define PJ4 PORTJ4
444#endif
445#if defined(PJ5) && !defined(PORTJ5)
446# define PORTJ5 PJ5
447#elif defined(PORTJ5) && !defined(PJ5)
448# define PJ5 PORTJ5
449#endif
450#if defined(PJ6) && !defined(PORTJ6)
451# define PORTJ6 PJ6
452#elif defined(PORTJ6) && !defined(PJ6)
453# define PJ6 PORTJ6
454#endif
455#if defined(PJ7) && !defined(PORTJ7)
456# define PORTJ7 PJ7
457#elif defined(PORTJ7) && !defined(PJ7)
458# define PJ7 PORTJ7
459#endif
460
461/* PORT K */
462
463#if defined(PK0) && !defined(PORTK0)
464# define PORTK0 PK0
465#elif defined(PORTK0) && !defined(PK0)
466# define PK0 PORTK0
467#endif
468#if defined(PK1) && !defined(PORTK1)
469# define PORTK1 PK1
470#elif defined(PORTK1) && !defined(PK1)
471# define PK1 PORTK1
472#endif
473#if defined(PK2) && !defined(PORTK2)
474# define PORTK2 PK2
475#elif defined(PORTK2) && !defined(PK2)
476# define PK2 PORTK2
477#endif
478#if defined(PK3) && !defined(PORTK3)
479# define PORTK3 PK3
480#elif defined(PORTK3) && !defined(PK3)
481# define PK3 PORTK3
482#endif
483#if defined(PK4) && !defined(PORTK4)
484# define PORTK4 PK4
485#elif defined(PORTK4) && !defined(PK4)
486# define PK4 PORTK4
487#endif
488#if defined(PK5) && !defined(PORTK5)
489# define PORTK5 PK5
490#elif defined(PORTK5) && !defined(PK5)
491# define PK5 PORTK5
492#endif
493#if defined(PK6) && !defined(PORTK6)
494# define PORTK6 PK6
495#elif defined(PORTK6) && !defined(PK6)
496# define PK6 PORTK6
497#endif
498#if defined(PK7) && !defined(PORTK7)
499# define PORTK7 PK7
500#elif defined(PORTK7) && !defined(PK7)
501# define PK7 PORTK7
502#endif
503
504/* PORT L */
505
506#if defined(PL0) && !defined(PORTL0)
507# define PORTL0 PL0
508#elif defined(PORTL0) && !defined(PL0)
509# define PL0 PORTL0
510#endif
511#if defined(PL1) && !defined(PORTL1)
512# define PORTL1 PL1
513#elif defined(PORTL1) && !defined(PL1)
514# define PL1 PORTL1
515#endif
516#if defined(PL2) && !defined(PORTL2)
517# define PORTL2 PL2
518#elif defined(PORTL2) && !defined(PL2)
519# define PL2 PORTL2
520#endif
521#if defined(PL3) && !defined(PORTL3)
522# define PORTL3 PL3
523#elif defined(PORTL3) && !defined(PL3)
524# define PL3 PORTL3
525#endif
526#if defined(PL4) && !defined(PORTL4)
527# define PORTL4 PL4
528#elif defined(PORTL4) && !defined(PL4)
529# define PL4 PORTL4
530#endif
531#if defined(PL5) && !defined(PORTL5)
532# define PORTL5 PL5
533#elif defined(PORTL5) && !defined(PL5)
534# define PL5 PORTL5
535#endif
536#if defined(PL6) && !defined(PORTL6)
537# define PORTL6 PL6
538#elif defined(PORTL6) && !defined(PL6)
539# define PL6 PORTL6
540#endif
541#if defined(PL7) && !defined(PORTL7)
542# define PORTL7 PL7
543#elif defined(PORTL7) && !defined(PL7)
544# define PL7 PORTL7
545#endif
546
547#endif /* _AVR_PORTPINS_H_ */