![]() |
Repetier-Firmware 0.2
|
00001 /* 00002 This code contibuted by Triffid_Hunter and modified by Kliment 00003 why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html 00004 */ 00005 #ifndef _ARDUINO_H 00006 #define _ARDUINO_H 00007 00008 #include <avr/io.h> 00009 00010 /* 00011 utility functions 00012 */ 00013 00014 #ifndef MASK 00015 00016 #define MASK(PIN) (1 << PIN) 00017 #endif 00018 00019 /* 00020 magic I/O routines 00021 00022 now you can simply SET_OUTPUT(STEP); WRITE(STEP, 1); WRITE(STEP, 0); 00023 */ 00024 00026 #define _READ(IO) ((bool)(DIO ## IO ## _RPORT & MASK(DIO ## IO ## _PIN))) 00027 00028 #define _WRITE(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0) 00029 00030 #define _TOGGLE(IO) do {DIO ## IO ## _RPORT = MASK(DIO ## IO ## _PIN); } while (0) 00031 00033 #define _SET_INPUT(IO) do {DIO ## IO ## _DDR &= ~MASK(DIO ## IO ## _PIN); } while (0) 00034 00035 #define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= MASK(DIO ## IO ## _PIN); } while (0) 00036 00038 #define _GET_INPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) == 0) 00039 00040 #define _GET_OUTPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) != 0) 00041 00042 // why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html 00043 00045 #define READ(IO) _READ(IO) 00046 00047 #define WRITE(IO, v) _WRITE(IO, v) 00048 00049 #define TOGGLE(IO) _TOGGLE(IO) 00050 00052 #define SET_INPUT(IO) _SET_INPUT(IO) 00053 00054 #define SET_OUTPUT(IO) _SET_OUTPUT(IO) 00055 00057 #define GET_INPUT(IO) _GET_INPUT(IO) 00058 00059 #define GET_OUTPUT(IO) _GET_OUTPUT(IO) 00060 00061 /* 00062 ports and functions 00063 00064 added as necessary or if I feel like it- not a comprehensive list! 00065 */ 00066 00067 #if defined (__AVR_ATmega168__) || defined (__AVR_ATmega328__) || defined (__AVR_ATmega328P__) 00068 // UART 00069 #define RXD DIO0 00070 #define TXD DIO1 00071 00072 // SPI 00073 #define SCK DIO13 00074 #define MISO DIO12 00075 #define MOSI DIO11 00076 #define SS DIO10 00077 00078 // TWI (I2C) 00079 #define SCL AIO5 00080 #define SDA AIO4 00081 00082 // timers and PWM 00083 #define OC0A DIO6 00084 #define OC0B DIO5 00085 #define OC1A DIO9 00086 #define OC1B DIO10 00087 #define OC2A DIO11 00088 #define OC2B DIO3 00089 00090 #define DEBUG_LED AIO5 00091 00092 /* 00093 pins 00094 */ 00095 00096 #define DIO0_PIN PIND0 00097 #define DIO0_RPORT PIND 00098 #define DIO0_WPORT PORTD 00099 #define DIO0_DDR DDRD 00100 #define DIO0_PWM NULL 00101 00102 #define DIO1_PIN PIND1 00103 #define DIO1_RPORT PIND 00104 #define DIO1_WPORT PORTD 00105 #define DIO1_DDR DDRD 00106 #define DIO1_PWM NULL 00107 00108 #define DIO2_PIN PIND2 00109 #define DIO2_RPORT PIND 00110 #define DIO2_WPORT PORTD 00111 #define DIO2_DDR DDRD 00112 #define DIO2_PWM NULL 00113 00114 #define DIO3_PIN PIND3 00115 #define DIO3_RPORT PIND 00116 #define DIO3_WPORT PORTD 00117 #define DIO3_DDR DDRD 00118 #define DIO3_PWM &OCR2B 00119 00120 #define DIO4_PIN PIND4 00121 #define DIO4_RPORT PIND 00122 #define DIO4_WPORT PORTD 00123 #define DIO4_DDR DDRD 00124 #define DIO4_PWM NULL 00125 00126 #define DIO5_PIN PIND5 00127 #define DIO5_RPORT PIND 00128 #define DIO5_WPORT PORTD 00129 #define DIO5_DDR DDRD 00130 #define DIO5_PWM &OCR0B 00131 00132 #define DIO6_PIN PIND6 00133 #define DIO6_RPORT PIND 00134 #define DIO6_WPORT PORTD 00135 #define DIO6_DDR DDRD 00136 #define DIO6_PWM &OCR0A 00137 00138 #define DIO7_PIN PIND7 00139 #define DIO7_RPORT PIND 00140 #define DIO7_WPORT PORTD 00141 #define DIO7_DDR DDRD 00142 #define DIO7_PWM NULL 00143 00144 #define DIO8_PIN PINB0 00145 #define DIO8_RPORT PINB 00146 #define DIO8_WPORT PORTB 00147 #define DIO8_DDR DDRB 00148 #define DIO8_PWM NULL 00149 00150 #define DIO9_PIN PINB1 00151 #define DIO9_RPORT PINB 00152 #define DIO9_WPORT PORTB 00153 #define DIO9_DDR DDRB 00154 #define DIO9_PWM NULL 00155 00156 #define DIO10_PIN PINB2 00157 #define DIO10_RPORT PINB 00158 #define DIO10_WPORT PORTB 00159 #define DIO10_DDR DDRB 00160 #define DIO10_PWM NULL 00161 00162 #define DIO11_PIN PINB3 00163 #define DIO11_RPORT PINB 00164 #define DIO11_WPORT PORTB 00165 #define DIO11_DDR DDRB 00166 #define DIO11_PWM &OCR2A 00167 00168 #define DIO12_PIN PINB4 00169 #define DIO12_RPORT PINB 00170 #define DIO12_WPORT PORTB 00171 #define DIO12_DDR DDRB 00172 #define DIO12_PWM NULL 00173 00174 #define DIO13_PIN PINB5 00175 #define DIO13_RPORT PINB 00176 #define DIO13_WPORT PORTB 00177 #define DIO13_DDR DDRB 00178 #define DIO13_PWM NULL 00179 00180 00181 #define DIO14_PIN PINC0 00182 #define DIO14_RPORT PINC 00183 #define DIO14_WPORT PORTC 00184 #define DIO14_DDR DDRC 00185 #define DIO14_PWM NULL 00186 00187 #define DIO15_PIN PINC1 00188 #define DIO15_RPORT PINC 00189 #define DIO15_WPORT PORTC 00190 #define DIO15_DDR DDRC 00191 #define DIO15_PWM NULL 00192 00193 #define DIO16_PIN PINC2 00194 #define DIO16_RPORT PINC 00195 #define DIO16_WPORT PORTC 00196 #define DIO16_DDR DDRC 00197 #define DIO16_PWM NULL 00198 00199 #define DIO17_PIN PINC3 00200 #define DIO17_RPORT PINC 00201 #define DIO17_WPORT PORTC 00202 #define DIO17_DDR DDRC 00203 #define DIO17_PWM NULL 00204 00205 #define DIO18_PIN PINC4 00206 #define DIO18_RPORT PINC 00207 #define DIO18_WPORT PORTC 00208 #define DIO18_DDR DDRC 00209 #define DIO18_PWM NULL 00210 00211 #define DIO19_PIN PINC5 00212 #define DIO19_RPORT PINC 00213 #define DIO19_WPORT PORTC 00214 #define DIO19_DDR DDRC 00215 #define DIO19_PWM NULL 00216 00217 #define DIO20_PIN PINC6 00218 #define DIO20_RPORT PINC 00219 #define DIO20_WPORT PORTC 00220 #define DIO20_DDR DDRC 00221 #define DIO20_PWM NULL 00222 00223 #define DIO21_PIN PINC7 00224 #define DIO21_RPORT PINC 00225 #define DIO21_WPORT PORTC 00226 #define DIO21_DDR DDRC 00227 #define DIO21_PWM NULL 00228 00229 00230 00231 #undef PB0 00232 #define PB0_PIN PINB0 00233 #define PB0_RPORT PINB 00234 #define PB0_WPORT PORTB 00235 #define PB0_DDR DDRB 00236 #define PB0_PWM NULL 00237 00238 #undef PB1 00239 #define PB1_PIN PINB1 00240 #define PB1_RPORT PINB 00241 #define PB1_WPORT PORTB 00242 #define PB1_DDR DDRB 00243 #define PB1_PWM NULL 00244 00245 #undef PB2 00246 #define PB2_PIN PINB2 00247 #define PB2_RPORT PINB 00248 #define PB2_WPORT PORTB 00249 #define PB2_DDR DDRB 00250 #define PB2_PWM NULL 00251 00252 #undef PB3 00253 #define PB3_PIN PINB3 00254 #define PB3_RPORT PINB 00255 #define PB3_WPORT PORTB 00256 #define PB3_DDR DDRB 00257 #define PB3_PWM &OCR2A 00258 00259 #undef PB4 00260 #define PB4_PIN PINB4 00261 #define PB4_RPORT PINB 00262 #define PB4_WPORT PORTB 00263 #define PB4_DDR DDRB 00264 #define PB4_PWM NULL 00265 00266 #undef PB5 00267 #define PB5_PIN PINB5 00268 #define PB5_RPORT PINB 00269 #define PB5_WPORT PORTB 00270 #define PB5_DDR DDRB 00271 #define PB5_PWM NULL 00272 00273 #undef PB6 00274 #define PB6_PIN PINB6 00275 #define PB6_RPORT PINB 00276 #define PB6_WPORT PORTB 00277 #define PB6_DDR DDRB 00278 #define PB6_PWM NULL 00279 00280 #undef PB7 00281 #define PB7_PIN PINB7 00282 #define PB7_RPORT PINB 00283 #define PB7_WPORT PORTB 00284 #define PB7_DDR DDRB 00285 #define PB7_PWM NULL 00286 00287 00288 #undef PC0 00289 #define PC0_PIN PINC0 00290 #define PC0_RPORT PINC 00291 #define PC0_WPORT PORTC 00292 #define PC0_DDR DDRC 00293 #define PC0_PWM NULL 00294 00295 #undef PC1 00296 #define PC1_PIN PINC1 00297 #define PC1_RPORT PINC 00298 #define PC1_WPORT PORTC 00299 #define PC1_DDR DDRC 00300 #define PC1_PWM NULL 00301 00302 #undef PC2 00303 #define PC2_PIN PINC2 00304 #define PC2_RPORT PINC 00305 #define PC2_WPORT PORTC 00306 #define PC2_DDR DDRC 00307 #define PC2_PWM NULL 00308 00309 #undef PC3 00310 #define PC3_PIN PINC3 00311 #define PC3_RPORT PINC 00312 #define PC3_WPORT PORTC 00313 #define PC3_DDR DDRC 00314 #define PC3_PWM NULL 00315 00316 #undef PC4 00317 #define PC4_PIN PINC4 00318 #define PC4_RPORT PINC 00319 #define PC4_WPORT PORTC 00320 #define PC4_DDR DDRC 00321 #define PC4_PWM NULL 00322 00323 #undef PC5 00324 #define PC5_PIN PINC5 00325 #define PC5_RPORT PINC 00326 #define PC5_WPORT PORTC 00327 #define PC5_DDR DDRC 00328 #define PC5_PWM NULL 00329 00330 #undef PC6 00331 #define PC6_PIN PINC6 00332 #define PC6_RPORT PINC 00333 #define PC6_WPORT PORTC 00334 #define PC6_DDR DDRC 00335 #define PC6_PWM NULL 00336 00337 #undef PC7 00338 #define PC7_PIN PINC7 00339 #define PC7_RPORT PINC 00340 #define PC7_WPORT PORTC 00341 #define PC7_DDR DDRC 00342 #define PC7_PWM NULL 00343 00344 00345 #undef PD0 00346 #define PD0_PIN PIND0 00347 #define PD0_RPORT PIND 00348 #define PD0_WPORT PORTD 00349 #define PD0_DDR DDRD 00350 #define PD0_PWM NULL 00351 00352 #undef PD1 00353 #define PD1_PIN PIND1 00354 #define PD1_RPORT PIND 00355 #define PD1_WPORT PORTD 00356 #define PD1_DDR DDRD 00357 #define PD1_PWM NULL 00358 00359 #undef PD2 00360 #define PD2_PIN PIND2 00361 #define PD2_RPORT PIND 00362 #define PD2_WPORT PORTD 00363 #define PD2_DDR DDRD 00364 #define PD2_PWM NULL 00365 00366 #undef PD3 00367 #define PD3_PIN PIND3 00368 #define PD3_RPORT PIND 00369 #define PD3_WPORT PORTD 00370 #define PD3_DDR DDRD 00371 #define PD3_PWM &OCR2B 00372 00373 #undef PD4 00374 #define PD4_PIN PIND4 00375 #define PD4_RPORT PIND 00376 #define PD4_WPORT PORTD 00377 #define PD4_DDR DDRD 00378 #define PD4_PWM NULL 00379 00380 #undef PD5 00381 #define PD5_PIN PIND5 00382 #define PD5_RPORT PIND 00383 #define PD5_WPORT PORTD 00384 #define PD5_DDR DDRD 00385 #define PD5_PWM &OCR0B 00386 00387 #undef PD6 00388 #define PD6_PIN PIND6 00389 #define PD6_RPORT PIND 00390 #define PD6_WPORT PORTD 00391 #define PD6_DDR DDRD 00392 #define PD6_PWM &OCR0A 00393 00394 #undef PD7 00395 #define PD7_PIN PIND7 00396 #define PD7_RPORT PIND 00397 #define PD7_WPORT PORTD 00398 #define PD7_DDR DDRD 00399 #define PD7_PWM NULL 00400 #endif /* _AVR_ATmega{168,328,328P}__ */ 00401 00402 #if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) 00403 // UART 00404 #define RXD DIO8 00405 #define TXD DIO9 00406 #define RXD0 DIO8 00407 #define TXD0 DIO9 00408 00409 #define RXD1 DIO10 00410 #define TXD1 DIO11 00411 00412 // SPI 00413 #define SCK DIO7 00414 #define MISO DIO6 00415 #define MOSI DIO5 00416 #define SS DIO4 00417 00418 // TWI (I2C) 00419 #define SCL DIO16 00420 #define SDA DIO17 00421 00422 // timers and PWM 00423 #define OC0A DIO3 00424 #define OC0B DIO4 00425 #define OC1A DIO13 00426 #define OC1B DIO12 00427 #define OC2A DIO15 00428 #define OC2B DIO14 00429 00430 #define DEBUG_LED DIO0 00431 /* 00432 pins 00433 */ 00434 00435 #define DIO0_PIN PINB0 00436 #define DIO0_RPORT PINB 00437 #define DIO0_WPORT PORTB 00438 #define DIO0_DDR DDRB 00439 #define DIO0_PWM NULL 00440 00441 #define DIO1_PIN PINB1 00442 #define DIO1_RPORT PINB 00443 #define DIO1_WPORT PORTB 00444 #define DIO1_DDR DDRB 00445 #define DIO1_PWM NULL 00446 00447 #define DIO2_PIN PINB2 00448 #define DIO2_RPORT PINB 00449 #define DIO2_WPORT PORTB 00450 #define DIO2_DDR DDRB 00451 #define DIO2_PWM NULL 00452 00453 #define DIO3_PIN PINB3 00454 #define DIO3_RPORT PINB 00455 #define DIO3_WPORT PORTB 00456 #define DIO3_DDR DDRB 00457 #define DIO3_PWM &OCR0A 00458 00459 #define DIO4_PIN PINB4 00460 #define DIO4_RPORT PINB 00461 #define DIO4_WPORT PORTB 00462 #define DIO4_DDR DDRB 00463 #define DIO4_PWM &OCR0B 00464 00465 #define DIO5_PIN PINB5 00466 #define DIO5_RPORT PINB 00467 #define DIO5_WPORT PORTB 00468 #define DIO5_DDR DDRB 00469 #define DIO5_PWM NULL 00470 00471 #define DIO6_PIN PINB6 00472 #define DIO6_RPORT PINB 00473 #define DIO6_WPORT PORTB 00474 #define DIO6_DDR DDRB 00475 #define DIO6_PWM NULL 00476 00477 #define DIO7_PIN PINB7 00478 #define DIO7_RPORT PINB 00479 #define DIO7_WPORT PORTB 00480 #define DIO7_DDR DDRB 00481 #define DIO7_PWM NULL 00482 00483 #define DIO8_PIN PIND0 00484 #define DIO8_RPORT PIND 00485 #define DIO8_WPORT PORTD 00486 #define DIO8_DDR DDRD 00487 #define DIO8_PWM NULL 00488 00489 #define DIO9_PIN PIND1 00490 #define DIO9_RPORT PIND 00491 #define DIO9_WPORT PORTD 00492 #define DIO9_DDR DDRD 00493 #define DIO9_PWM NULL 00494 00495 #define DIO10_PIN PIND2 00496 #define DIO10_RPORT PIND 00497 #define DIO10_WPORT PORTD 00498 #define DIO10_DDR DDRD 00499 #define DIO10_PWM NULL 00500 00501 #define DIO11_PIN PIND3 00502 #define DIO11_RPORT PIND 00503 #define DIO11_WPORT PORTD 00504 #define DIO11_DDR DDRD 00505 #define DIO11_PWM NULL 00506 00507 #define DIO12_PIN PIND4 00508 #define DIO12_RPORT PIND 00509 #define DIO12_WPORT PORTD 00510 #define DIO12_DDR DDRD 00511 #define DIO12_PWM NULL 00512 00513 #define DIO13_PIN PIND5 00514 #define DIO13_RPORT PIND 00515 #define DIO13_WPORT PORTD 00516 #define DIO13_DDR DDRD 00517 #define DIO13_PWM NULL 00518 00519 #define DIO14_PIN PIND6 00520 #define DIO14_RPORT PIND 00521 #define DIO14_WPORT PORTD 00522 #define DIO14_DDR DDRD 00523 #define DIO14_PWM &OCR2B 00524 00525 #define DIO15_PIN PIND7 00526 #define DIO15_RPORT PIND 00527 #define DIO15_WPORT PORTD 00528 #define DIO15_DDR DDRD 00529 #define DIO15_PWM &OCR2A 00530 00531 #define DIO16_PIN PINC0 00532 #define DIO16_RPORT PINC 00533 #define DIO16_WPORT PORTC 00534 #define DIO16_DDR DDRC 00535 #define DIO16_PWM NULL 00536 00537 #define DIO17_PIN PINC1 00538 #define DIO17_RPORT PINC 00539 #define DIO17_WPORT PORTC 00540 #define DIO17_DDR DDRC 00541 #define DIO17_PWM NULL 00542 00543 #define DIO18_PIN PINC2 00544 #define DIO18_RPORT PINC 00545 #define DIO18_WPORT PORTC 00546 #define DIO18_DDR DDRC 00547 #define DIO18_PWM NULL 00548 00549 #define DIO19_PIN PINC3 00550 #define DIO19_RPORT PINC 00551 #define DIO19_WPORT PORTC 00552 #define DIO19_DDR DDRC 00553 #define DIO19_PWM NULL 00554 00555 #define DIO20_PIN PINC4 00556 #define DIO20_RPORT PINC 00557 #define DIO20_WPORT PORTC 00558 #define DIO20_DDR DDRC 00559 #define DIO20_PWM NULL 00560 00561 #define DIO21_PIN PINC5 00562 #define DIO21_RPORT PINC 00563 #define DIO21_WPORT PORTC 00564 #define DIO21_DDR DDRC 00565 #define DIO21_PWM NULL 00566 00567 #define DIO22_PIN PINC6 00568 #define DIO22_RPORT PINC 00569 #define DIO22_WPORT PORTC 00570 #define DIO22_DDR DDRC 00571 #define DIO22_PWM NULL 00572 00573 #define DIO23_PIN PINC7 00574 #define DIO23_RPORT PINC 00575 #define DIO23_WPORT PORTC 00576 #define DIO23_DDR DDRC 00577 #define DIO23_PWM NULL 00578 00579 #define DIO24_PIN PINA7 00580 #define DIO24_RPORT PINA 00581 #define DIO24_WPORT PORTA 00582 #define DIO24_DDR DDRA 00583 #define DIO24_PWM NULL 00584 00585 #define DIO25_PIN PINA6 00586 #define DIO25_RPORT PINA 00587 #define DIO25_WPORT PORTA 00588 #define DIO25_DDR DDRA 00589 #define DIO25_PWM NULL 00590 00591 #define DIO26_PIN PINA5 00592 #define DIO26_RPORT PINA 00593 #define DIO26_WPORT PORTA 00594 #define DIO26_DDR DDRA 00595 #define DIO26_PWM NULL 00596 00597 #define DIO27_PIN PINA4 00598 #define DIO27_RPORT PINA 00599 #define DIO27_WPORT PORTA 00600 #define DIO27_DDR DDRA 00601 #define DIO27_PWM NULL 00602 00603 #define DIO28_PIN PINA3 00604 #define DIO28_RPORT PINA 00605 #define DIO28_WPORT PORTA 00606 #define DIO28_DDR DDRA 00607 #define DIO28_PWM NULL 00608 00609 #define DIO29_PIN PINA2 00610 #define DIO29_RPORT PINA 00611 #define DIO29_WPORT PORTA 00612 #define DIO29_DDR DDRA 00613 #define DIO29_PWM NULL 00614 00615 #define DIO30_PIN PINA1 00616 #define DIO30_RPORT PINA 00617 #define DIO30_WPORT PORTA 00618 #define DIO30_DDR DDRA 00619 #define DIO30_PWM NULL 00620 00621 #define DIO31_PIN PINA0 00622 #define DIO31_RPORT PINA 00623 #define DIO31_WPORT PORTA 00624 #define DIO31_DDR DDRA 00625 #define DIO31_PWM NULL 00626 00627 #define AIO0_PIN PINA0 00628 #define AIO0_RPORT PINA 00629 #define AIO0_WPORT PORTA 00630 #define AIO0_DDR DDRA 00631 #define AIO0_PWM NULL 00632 00633 #define AIO1_PIN PINA1 00634 #define AIO1_RPORT PINA 00635 #define AIO1_WPORT PORTA 00636 #define AIO1_DDR DDRA 00637 #define AIO1_PWM NULL 00638 00639 #define AIO2_PIN PINA2 00640 #define AIO2_RPORT PINA 00641 #define AIO2_WPORT PORTA 00642 #define AIO2_DDR DDRA 00643 #define AIO2_PWM NULL 00644 00645 #define AIO3_PIN PINA3 00646 #define AIO3_RPORT PINA 00647 #define AIO3_WPORT PORTA 00648 #define AIO3_DDR DDRA 00649 #define AIO3_PWM NULL 00650 00651 #define AIO4_PIN PINA4 00652 #define AIO4_RPORT PINA 00653 #define AIO4_WPORT PORTA 00654 #define AIO4_DDR DDRA 00655 #define AIO4_PWM NULL 00656 00657 #define AIO5_PIN PINA5 00658 #define AIO5_RPORT PINA 00659 #define AIO5_WPORT PORTA 00660 #define AIO5_DDR DDRA 00661 #define AIO5_PWM NULL 00662 00663 #define AIO6_PIN PINA6 00664 #define AIO6_RPORT PINA 00665 #define AIO6_WPORT PORTA 00666 #define AIO6_DDR DDRA 00667 #define AIO6_PWM NULL 00668 00669 #define AIO7_PIN PINA7 00670 #define AIO7_RPORT PINA 00671 #define AIO7_WPORT PORTA 00672 #define AIO7_DDR DDRA 00673 #define AIO7_PWM NULL 00674 00675 00676 00677 #undef PA0 00678 #define PA0_PIN PINA0 00679 #define PA0_RPORT PINA 00680 #define PA0_WPORT PORTA 00681 #define PA0_DDR DDRA 00682 #define PA0_PWM NULL 00683 00684 #undef PA1 00685 #define PA1_PIN PINA1 00686 #define PA1_RPORT PINA 00687 #define PA1_WPORT PORTA 00688 #define PA1_DDR DDRA 00689 #define PA1_PWM NULL 00690 00691 #undef PA2 00692 #define PA2_PIN PINA2 00693 #define PA2_RPORT PINA 00694 #define PA2_WPORT PORTA 00695 #define PA2_DDR DDRA 00696 #define PA2_PWM NULL 00697 00698 #undef PA3 00699 #define PA3_PIN PINA3 00700 #define PA3_RPORT PINA 00701 #define PA3_WPORT PORTA 00702 #define PA3_DDR DDRA 00703 #define PA3_PWM NULL 00704 00705 #undef PA4 00706 #define PA4_PIN PINA4 00707 #define PA4_RPORT PINA 00708 #define PA4_WPORT PORTA 00709 #define PA4_DDR DDRA 00710 #define PA4_PWM NULL 00711 00712 #undef PA5 00713 #define PA5_PIN PINA5 00714 #define PA5_RPORT PINA 00715 #define PA5_WPORT PORTA 00716 #define PA5_DDR DDRA 00717 #define PA5_PWM NULL 00718 00719 #undef PA6 00720 #define PA6_PIN PINA6 00721 #define PA6_RPORT PINA 00722 #define PA6_WPORT PORTA 00723 #define PA6_DDR DDRA 00724 #define PA6_PWM NULL 00725 00726 #undef PA7 00727 #define PA7_PIN PINA7 00728 #define PA7_RPORT PINA 00729 #define PA7_WPORT PORTA 00730 #define PA7_DDR DDRA 00731 #define PA7_PWM NULL 00732 00733 00734 #undef PB0 00735 #define PB0_PIN PINB0 00736 #define PB0_RPORT PINB 00737 #define PB0_WPORT PORTB 00738 #define PB0_DDR DDRB 00739 #define PB0_PWM NULL 00740 00741 #undef PB1 00742 #define PB1_PIN PINB1 00743 #define PB1_RPORT PINB 00744 #define PB1_WPORT PORTB 00745 #define PB1_DDR DDRB 00746 #define PB1_PWM NULL 00747 00748 #undef PB2 00749 #define PB2_PIN PINB2 00750 #define PB2_RPORT PINB 00751 #define PB2_WPORT PORTB 00752 #define PB2_DDR DDRB 00753 #define PB2_PWM NULL 00754 00755 #undef PB3 00756 #define PB3_PIN PINB3 00757 #define PB3_RPORT PINB 00758 #define PB3_WPORT PORTB 00759 #define PB3_DDR DDRB 00760 #define PB3_PWM &OCR0A 00761 00762 #undef PB4 00763 #define PB4_PIN PINB4 00764 #define PB4_RPORT PINB 00765 #define PB4_WPORT PORTB 00766 #define PB4_DDR DDRB 00767 #define PB4_PWM &OCR0B 00768 00769 #undef PB5 00770 #define PB5_PIN PINB5 00771 #define PB5_RPORT PINB 00772 #define PB5_WPORT PORTB 00773 #define PB5_DDR DDRB 00774 #define PB5_PWM NULL 00775 00776 #undef PB6 00777 #define PB6_PIN PINB6 00778 #define PB6_RPORT PINB 00779 #define PB6_WPORT PORTB 00780 #define PB6_DDR DDRB 00781 #define PB6_PWM NULL 00782 00783 #undef PB7 00784 #define PB7_PIN PINB7 00785 #define PB7_RPORT PINB 00786 #define PB7_WPORT PORTB 00787 #define PB7_DDR DDRB 00788 #define PB7_PWM NULL 00789 00790 00791 #undef PC0 00792 #define PC0_PIN PINC0 00793 #define PC0_RPORT PINC 00794 #define PC0_WPORT PORTC 00795 #define PC0_DDR DDRC 00796 #define PC0_PWM NULL 00797 00798 #undef PC1 00799 #define PC1_PIN PINC1 00800 #define PC1_RPORT PINC 00801 #define PC1_WPORT PORTC 00802 #define PC1_DDR DDRC 00803 #define PC1_PWM NULL 00804 00805 #undef PC2 00806 #define PC2_PIN PINC2 00807 #define PC2_RPORT PINC 00808 #define PC2_WPORT PORTC 00809 #define PC2_DDR DDRC 00810 #define PC2_PWM NULL 00811 00812 #undef PC3 00813 #define PC3_PIN PINC3 00814 #define PC3_RPORT PINC 00815 #define PC3_WPORT PORTC 00816 #define PC3_DDR DDRC 00817 #define PC3_PWM NULL 00818 00819 #undef PC4 00820 #define PC4_PIN PINC4 00821 #define PC4_RPORT PINC 00822 #define PC4_WPORT PORTC 00823 #define PC4_DDR DDRC 00824 #define PC4_PWM NULL 00825 00826 #undef PC5 00827 #define PC5_PIN PINC5 00828 #define PC5_RPORT PINC 00829 #define PC5_WPORT PORTC 00830 #define PC5_DDR DDRC 00831 #define PC5_PWM NULL 00832 00833 #undef PC6 00834 #define PC6_PIN PINC6 00835 #define PC6_RPORT PINC 00836 #define PC6_WPORT PORTC 00837 #define PC6_DDR DDRC 00838 #define PC6_PWM NULL 00839 00840 #undef PC7 00841 #define PC7_PIN PINC7 00842 #define PC7_RPORT PINC 00843 #define PC7_WPORT PORTC 00844 #define PC7_DDR DDRC 00845 #define PC7_PWM NULL 00846 00847 00848 #undef PD0 00849 #define PD0_PIN PIND0 00850 #define PD0_RPORT PIND 00851 #define PD0_WPORT PORTD 00852 #define PD0_DDR DDRD 00853 #define PD0_PWM NULL 00854 00855 #undef PD1 00856 #define PD1_PIN PIND1 00857 #define PD1_RPORT PIND 00858 #define PD1_WPORT PORTD 00859 #define PD1_DDR DDRD 00860 #define PD1_PWM NULL 00861 00862 #undef PD2 00863 #define PD2_PIN PIND2 00864 #define PD2_RPORT PIND 00865 #define PD2_WPORT PORTD 00866 #define PD2_DDR DDRD 00867 #define PD2_PWM NULL 00868 00869 #undef PD3 00870 #define PD3_PIN PIND3 00871 #define PD3_RPORT PIND 00872 #define PD3_WPORT PORTD 00873 #define PD3_DDR DDRD 00874 #define PD3_PWM NULL 00875 00876 #undef PD4 00877 #define PD4_PIN PIND4 00878 #define PD4_RPORT PIND 00879 #define PD4_WPORT PORTD 00880 #define PD4_DDR DDRD 00881 #define PD4_PWM NULL 00882 00883 #undef PD5 00884 #define PD5_PIN PIND5 00885 #define PD5_RPORT PIND 00886 #define PD5_WPORT PORTD 00887 #define PD5_DDR DDRD 00888 #define PD5_PWM NULL 00889 00890 #undef PD6 00891 #define PD6_PIN PIND6 00892 #define PD6_RPORT PIND 00893 #define PD6_WPORT PORTD 00894 #define PD6_DDR DDRD 00895 #define PD6_PWM &OCR2B 00896 00897 #undef PD7 00898 #define PD7_PIN PIND7 00899 #define PD7_RPORT PIND 00900 #define PD7_WPORT PORTD 00901 #define PD7_DDR DDRD 00902 #define PD7_PWM &OCR2A 00903 #endif /* _AVR_ATmega{644,644P,644PA}__ */ 00904 00905 #if defined (__AVR_ATmega1280__) || defined (__AVR_ATmega2560__) 00906 // UART 00907 #define RXD DIO0 00908 #define TXD DIO1 00909 00910 // SPI 00911 #define SCK DIO52 00912 #define MISO DIO50 00913 #define MOSI DIO51 00914 #define SS DIO53 00915 00916 // TWI (I2C) 00917 #define SCL DIO21 00918 #define SDA DIO20 00919 00920 // timers and PWM 00921 #define OC0A DIO13 00922 #define OC0B DIO4 00923 #define OC1A DIO11 00924 #define OC1B DIO12 00925 #define OC2A DIO10 00926 #define OC2B DIO9 00927 #define OC3A DIO5 00928 #define OC3B DIO2 00929 #define OC3C DIO3 00930 #define OC4A DIO6 00931 #define OC4B DIO7 00932 #define OC4C DIO8 00933 #define OC5A DIO46 00934 #define OC5B DIO45 00935 #define OC5C DIO44 00936 00937 // change for your board 00938 #define DEBUG_LED DIO21 00939 00940 /* 00941 pins 00942 */ 00943 #define DIO0_PIN PINE0 00944 #define DIO0_RPORT PINE 00945 #define DIO0_WPORT PORTE 00946 #define DIO0_DDR DDRE 00947 #define DIO0_PWM NULL 00948 00949 #define DIO1_PIN PINE1 00950 #define DIO1_RPORT PINE 00951 #define DIO1_WPORT PORTE 00952 #define DIO1_DDR DDRE 00953 #define DIO1_PWM NULL 00954 00955 #define DIO2_PIN PINE4 00956 #define DIO2_RPORT PINE 00957 #define DIO2_WPORT PORTE 00958 #define DIO2_DDR DDRE 00959 #define DIO2_PWM &OCR3BL 00960 00961 #define DIO3_PIN PINE5 00962 #define DIO3_RPORT PINE 00963 #define DIO3_WPORT PORTE 00964 #define DIO3_DDR DDRE 00965 #define DIO3_PWM &OCR3CL 00966 00967 #define DIO4_PIN PING5 00968 #define DIO4_RPORT PING 00969 #define DIO4_WPORT PORTG 00970 #define DIO4_DDR DDRG 00971 #define DIO4_PWM &OCR0B 00972 00973 #define DIO5_PIN PINE3 00974 #define DIO5_RPORT PINE 00975 #define DIO5_WPORT PORTE 00976 #define DIO5_DDR DDRE 00977 #define DIO5_PWM &OCR3AL 00978 00979 #define DIO6_PIN PINH3 00980 #define DIO6_RPORT PINH 00981 #define DIO6_WPORT PORTH 00982 #define DIO6_DDR DDRH 00983 #define DIO6_PWM &OCR4AL 00984 00985 #define DIO7_PIN PINH4 00986 #define DIO7_RPORT PINH 00987 #define DIO7_WPORT PORTH 00988 #define DIO7_DDR DDRH 00989 #define DIO7_PWM &OCR4BL 00990 00991 #define DIO8_PIN PINH5 00992 #define DIO8_RPORT PINH 00993 #define DIO8_WPORT PORTH 00994 #define DIO8_DDR DDRH 00995 #define DIO8_PWM &OCR4CL 00996 00997 #define DIO9_PIN PINH6 00998 #define DIO9_RPORT PINH 00999 #define DIO9_WPORT PORTH 01000 #define DIO9_DDR DDRH 01001 #define DIO9_PWM &OCR2B 01002 01003 #define DIO10_PIN PINB4 01004 #define DIO10_RPORT PINB 01005 #define DIO10_WPORT PORTB 01006 #define DIO10_DDR DDRB 01007 #define DIO10_PWM &OCR2A 01008 01009 #define DIO11_PIN PINB5 01010 #define DIO11_RPORT PINB 01011 #define DIO11_WPORT PORTB 01012 #define DIO11_DDR DDRB 01013 #define DIO11_PWM NULL 01014 01015 #define DIO12_PIN PINB6 01016 #define DIO12_RPORT PINB 01017 #define DIO12_WPORT PORTB 01018 #define DIO12_DDR DDRB 01019 #define DIO12_PWM NULL 01020 01021 #define DIO13_PIN PINB7 01022 #define DIO13_RPORT PINB 01023 #define DIO13_WPORT PORTB 01024 #define DIO13_DDR DDRB 01025 #define DIO13_PWM &OCR0A 01026 01027 #define DIO14_PIN PINJ1 01028 #define DIO14_RPORT PINJ 01029 #define DIO14_WPORT PORTJ 01030 #define DIO14_DDR DDRJ 01031 #define DIO14_PWM NULL 01032 01033 #define DIO15_PIN PINJ0 01034 #define DIO15_RPORT PINJ 01035 #define DIO15_WPORT PORTJ 01036 #define DIO15_DDR DDRJ 01037 #define DIO15_PWM NULL 01038 01039 #define DIO16_PIN PINH1 01040 #define DIO16_RPORT PINH 01041 #define DIO16_WPORT PORTH 01042 #define DIO16_DDR DDRH 01043 #define DIO16_PWM NULL 01044 01045 #define DIO17_PIN PINH0 01046 #define DIO17_RPORT PINH 01047 #define DIO17_WPORT PORTH 01048 #define DIO17_DDR DDRH 01049 #define DIO17_PWM NULL 01050 01051 #define DIO18_PIN PIND3 01052 #define DIO18_RPORT PIND 01053 #define DIO18_WPORT PORTD 01054 #define DIO18_DDR DDRD 01055 #define DIO18_PWM NULL 01056 01057 #define DIO19_PIN PIND2 01058 #define DIO19_RPORT PIND 01059 #define DIO19_WPORT PORTD 01060 #define DIO19_DDR DDRD 01061 #define DIO19_PWM NULL 01062 01063 #define DIO20_PIN PIND1 01064 #define DIO20_RPORT PIND 01065 #define DIO20_WPORT PORTD 01066 #define DIO20_DDR DDRD 01067 #define DIO20_PWM NULL 01068 01069 #define DIO21_PIN PIND0 01070 #define DIO21_RPORT PIND 01071 #define DIO21_WPORT PORTD 01072 #define DIO21_DDR DDRD 01073 #define DIO21_PWM NULL 01074 01075 #define DIO22_PIN PINA0 01076 #define DIO22_RPORT PINA 01077 #define DIO22_WPORT PORTA 01078 #define DIO22_DDR DDRA 01079 #define DIO22_PWM NULL 01080 01081 #define DIO23_PIN PINA1 01082 #define DIO23_RPORT PINA 01083 #define DIO23_WPORT PORTA 01084 #define DIO23_DDR DDRA 01085 #define DIO23_PWM NULL 01086 01087 #define DIO24_PIN PINA2 01088 #define DIO24_RPORT PINA 01089 #define DIO24_WPORT PORTA 01090 #define DIO24_DDR DDRA 01091 #define DIO24_PWM NULL 01092 01093 #define DIO25_PIN PINA3 01094 #define DIO25_RPORT PINA 01095 #define DIO25_WPORT PORTA 01096 #define DIO25_DDR DDRA 01097 #define DIO25_PWM NULL 01098 01099 #define DIO26_PIN PINA4 01100 #define DIO26_RPORT PINA 01101 #define DIO26_WPORT PORTA 01102 #define DIO26_DDR DDRA 01103 #define DIO26_PWM NULL 01104 01105 #define DIO27_PIN PINA5 01106 #define DIO27_RPORT PINA 01107 #define DIO27_WPORT PORTA 01108 #define DIO27_DDR DDRA 01109 #define DIO27_PWM NULL 01110 01111 #define DIO28_PIN PINA6 01112 #define DIO28_RPORT PINA 01113 #define DIO28_WPORT PORTA 01114 #define DIO28_DDR DDRA 01115 #define DIO28_PWM NULL 01116 01117 #define DIO29_PIN PINA7 01118 #define DIO29_RPORT PINA 01119 #define DIO29_WPORT PORTA 01120 #define DIO29_DDR DDRA 01121 #define DIO29_PWM NULL 01122 01123 #define DIO30_PIN PINC7 01124 #define DIO30_RPORT PINC 01125 #define DIO30_WPORT PORTC 01126 #define DIO30_DDR DDRC 01127 #define DIO30_PWM NULL 01128 01129 #define DIO31_PIN PINC6 01130 #define DIO31_RPORT PINC 01131 #define DIO31_WPORT PORTC 01132 #define DIO31_DDR DDRC 01133 #define DIO31_PWM NULL 01134 01135 #define DIO32_PIN PINC5 01136 #define DIO32_RPORT PINC 01137 #define DIO32_WPORT PORTC 01138 #define DIO32_DDR DDRC 01139 #define DIO32_PWM NULL 01140 01141 #define DIO33_PIN PINC4 01142 #define DIO33_RPORT PINC 01143 #define DIO33_WPORT PORTC 01144 #define DIO33_DDR DDRC 01145 #define DIO33_PWM NULL 01146 01147 #define DIO34_PIN PINC3 01148 #define DIO34_RPORT PINC 01149 #define DIO34_WPORT PORTC 01150 #define DIO34_DDR DDRC 01151 #define DIO34_PWM NULL 01152 01153 #define DIO35_PIN PINC2 01154 #define DIO35_RPORT PINC 01155 #define DIO35_WPORT PORTC 01156 #define DIO35_DDR DDRC 01157 #define DIO35_PWM NULL 01158 01159 #define DIO36_PIN PINC1 01160 #define DIO36_RPORT PINC 01161 #define DIO36_WPORT PORTC 01162 #define DIO36_DDR DDRC 01163 #define DIO36_PWM NULL 01164 01165 #define DIO37_PIN PINC0 01166 #define DIO37_RPORT PINC 01167 #define DIO37_WPORT PORTC 01168 #define DIO37_DDR DDRC 01169 #define DIO37_PWM NULL 01170 01171 #define DIO38_PIN PIND7 01172 #define DIO38_RPORT PIND 01173 #define DIO38_WPORT PORTD 01174 #define DIO38_DDR DDRD 01175 #define DIO38_PWM NULL 01176 01177 #define DIO39_PIN PING2 01178 #define DIO39_RPORT PING 01179 #define DIO39_WPORT PORTG 01180 #define DIO39_DDR DDRG 01181 #define DIO39_PWM NULL 01182 01183 #define DIO40_PIN PING1 01184 #define DIO40_RPORT PING 01185 #define DIO40_WPORT PORTG 01186 #define DIO40_DDR DDRG 01187 #define DIO40_PWM NULL 01188 01189 #define DIO41_PIN PING0 01190 #define DIO41_RPORT PING 01191 #define DIO41_WPORT PORTG 01192 #define DIO41_DDR DDRG 01193 #define DIO41_PWM NULL 01194 01195 #define DIO42_PIN PINL7 01196 #define DIO42_RPORT PINL 01197 #define DIO42_WPORT PORTL 01198 #define DIO42_DDR DDRL 01199 #define DIO42_PWM NULL 01200 01201 #define DIO43_PIN PINL6 01202 #define DIO43_RPORT PINL 01203 #define DIO43_WPORT PORTL 01204 #define DIO43_DDR DDRL 01205 #define DIO43_PWM NULL 01206 01207 #define DIO44_PIN PINL5 01208 #define DIO44_RPORT PINL 01209 #define DIO44_WPORT PORTL 01210 #define DIO44_DDR DDRL 01211 #define DIO44_PWM &OCR5CL 01212 01213 #define DIO45_PIN PINL4 01214 #define DIO45_RPORT PINL 01215 #define DIO45_WPORT PORTL 01216 #define DIO45_DDR DDRL 01217 #define DIO45_PWM &OCR5BL 01218 01219 #define DIO46_PIN PINL3 01220 #define DIO46_RPORT PINL 01221 #define DIO46_WPORT PORTL 01222 #define DIO46_DDR DDRL 01223 #define DIO46_PWM &OCR5AL 01224 01225 #define DIO47_PIN PINL2 01226 #define DIO47_RPORT PINL 01227 #define DIO47_WPORT PORTL 01228 #define DIO47_DDR DDRL 01229 #define DIO47_PWM NULL 01230 01231 #define DIO48_PIN PINL1 01232 #define DIO48_RPORT PINL 01233 #define DIO48_WPORT PORTL 01234 #define DIO48_DDR DDRL 01235 #define DIO48_PWM NULL 01236 01237 #define DIO49_PIN PINL0 01238 #define DIO49_RPORT PINL 01239 #define DIO49_WPORT PORTL 01240 #define DIO49_DDR DDRL 01241 #define DIO49_PWM NULL 01242 01243 #define DIO50_PIN PINB3 01244 #define DIO50_RPORT PINB 01245 #define DIO50_WPORT PORTB 01246 #define DIO50_DDR DDRB 01247 #define DIO50_PWM NULL 01248 01249 #define DIO51_PIN PINB2 01250 #define DIO51_RPORT PINB 01251 #define DIO51_WPORT PORTB 01252 #define DIO51_DDR DDRB 01253 #define DIO51_PWM NULL 01254 01255 #define DIO52_PIN PINB1 01256 #define DIO52_RPORT PINB 01257 #define DIO52_WPORT PORTB 01258 #define DIO52_DDR DDRB 01259 #define DIO52_PWM NULL 01260 01261 #define DIO53_PIN PINB0 01262 #define DIO53_RPORT PINB 01263 #define DIO53_WPORT PORTB 01264 #define DIO53_DDR DDRB 01265 #define DIO53_PWM NULL 01266 01267 #define DIO54_PIN PINF0 01268 #define DIO54_RPORT PINF 01269 #define DIO54_WPORT PORTF 01270 #define DIO54_DDR DDRF 01271 #define DIO54_PWM NULL 01272 01273 #define DIO55_PIN PINF1 01274 #define DIO55_RPORT PINF 01275 #define DIO55_WPORT PORTF 01276 #define DIO55_DDR DDRF 01277 #define DIO55_PWM NULL 01278 01279 #define DIO56_PIN PINF2 01280 #define DIO56_RPORT PINF 01281 #define DIO56_WPORT PORTF 01282 #define DIO56_DDR DDRF 01283 #define DIO56_PWM NULL 01284 01285 #define DIO57_PIN PINF3 01286 #define DIO57_RPORT PINF 01287 #define DIO57_WPORT PORTF 01288 #define DIO57_DDR DDRF 01289 #define DIO57_PWM NULL 01290 01291 #define DIO58_PIN PINF4 01292 #define DIO58_RPORT PINF 01293 #define DIO58_WPORT PORTF 01294 #define DIO58_DDR DDRF 01295 #define DIO58_PWM NULL 01296 01297 #define DIO59_PIN PINF5 01298 #define DIO59_RPORT PINF 01299 #define DIO59_WPORT PORTF 01300 #define DIO59_DDR DDRF 01301 #define DIO59_PWM NULL 01302 01303 #define DIO60_PIN PINF6 01304 #define DIO60_RPORT PINF 01305 #define DIO60_WPORT PORTF 01306 #define DIO60_DDR DDRF 01307 #define DIO60_PWM NULL 01308 01309 #define DIO61_PIN PINF7 01310 #define DIO61_RPORT PINF 01311 #define DIO61_WPORT PORTF 01312 #define DIO61_DDR DDRF 01313 #define DIO61_PWM NULL 01314 01315 #define DIO62_PIN PINK0 01316 #define DIO62_RPORT PINK 01317 #define DIO62_WPORT PORTK 01318 #define DIO62_DDR DDRK 01319 #define DIO62_PWM NULL 01320 01321 #define DIO63_PIN PINK1 01322 #define DIO63_RPORT PINK 01323 #define DIO63_WPORT PORTK 01324 #define DIO63_DDR DDRK 01325 #define DIO63_PWM NULL 01326 01327 #define DIO64_PIN PINK2 01328 #define DIO64_RPORT PINK 01329 #define DIO64_WPORT PORTK 01330 #define DIO64_DDR DDRK 01331 #define DIO64_PWM NULL 01332 01333 #define DIO65_PIN PINK3 01334 #define DIO65_RPORT PINK 01335 #define DIO65_WPORT PORTK 01336 #define DIO65_DDR DDRK 01337 #define DIO65_PWM NULL 01338 01339 #define DIO66_PIN PINK4 01340 #define DIO66_RPORT PINK 01341 #define DIO66_WPORT PORTK 01342 #define DIO66_DDR DDRK 01343 #define DIO66_PWM NULL 01344 01345 #define DIO67_PIN PINK5 01346 #define DIO67_RPORT PINK 01347 #define DIO67_WPORT PORTK 01348 #define DIO67_DDR DDRK 01349 #define DIO67_PWM NULL 01350 01351 #define DIO68_PIN PINK6 01352 #define DIO68_RPORT PINK 01353 #define DIO68_WPORT PORTK 01354 #define DIO68_DDR DDRK 01355 #define DIO68_PWM NULL 01356 01357 #define DIO69_PIN PINK7 01358 #define DIO69_RPORT PINK 01359 #define DIO69_WPORT PORTK 01360 #define DIO69_DDR DDRK 01361 #define DIO69_PWM NULL 01362 01363 01364 01365 #undef PA0 01366 #define PA0_PIN PINA0 01367 #define PA0_RPORT PINA 01368 #define PA0_WPORT PORTA 01369 #define PA0_DDR DDRA 01370 #define PA0_PWM NULL 01371 #undef PA1 01372 #define PA1_PIN PINA1 01373 #define PA1_RPORT PINA 01374 #define PA1_WPORT PORTA 01375 #define PA1_DDR DDRA 01376 #define PA1_PWM NULL 01377 #undef PA2 01378 #define PA2_PIN PINA2 01379 #define PA2_RPORT PINA 01380 #define PA2_WPORT PORTA 01381 #define PA2_DDR DDRA 01382 #define PA2_PWM NULL 01383 #undef PA3 01384 #define PA3_PIN PINA3 01385 #define PA3_RPORT PINA 01386 #define PA3_WPORT PORTA 01387 #define PA3_DDR DDRA 01388 #define PA3_PWM NULL 01389 #undef PA4 01390 #define PA4_PIN PINA4 01391 #define PA4_RPORT PINA 01392 #define PA4_WPORT PORTA 01393 #define PA4_DDR DDRA 01394 #define PA4_PWM NULL 01395 #undef PA5 01396 #define PA5_PIN PINA5 01397 #define PA5_RPORT PINA 01398 #define PA5_WPORT PORTA 01399 #define PA5_DDR DDRA 01400 #define PA5_PWM NULL 01401 #undef PA6 01402 #define PA6_PIN PINA6 01403 #define PA6_RPORT PINA 01404 #define PA6_WPORT PORTA 01405 #define PA6_DDR DDRA 01406 #define PA6_PWM NULL 01407 #undef PA7 01408 #define PA7_PIN PINA7 01409 #define PA7_RPORT PINA 01410 #define PA7_WPORT PORTA 01411 #define PA7_DDR DDRA 01412 #define PA7_PWM NULL 01413 01414 #undef PB0 01415 #define PB0_PIN PINB0 01416 #define PB0_RPORT PINB 01417 #define PB0_WPORT PORTB 01418 #define PB0_DDR DDRB 01419 #define PB0_PWM NULL 01420 #undef PB1 01421 #define PB1_PIN PINB1 01422 #define PB1_RPORT PINB 01423 #define PB1_WPORT PORTB 01424 #define PB1_DDR DDRB 01425 #define PB1_PWM NULL 01426 #undef PB2 01427 #define PB2_PIN PINB2 01428 #define PB2_RPORT PINB 01429 #define PB2_WPORT PORTB 01430 #define PB2_DDR DDRB 01431 #define PB2_PWM NULL 01432 #undef PB3 01433 #define PB3_PIN PINB3 01434 #define PB3_RPORT PINB 01435 #define PB3_WPORT PORTB 01436 #define PB3_DDR DDRB 01437 #define PB3_PWM NULL 01438 #undef PB4 01439 #define PB4_PIN PINB4 01440 #define PB4_RPORT PINB 01441 #define PB4_WPORT PORTB 01442 #define PB4_DDR DDRB 01443 #define PB4_PWM &OCR2A 01444 #undef PB5 01445 #define PB5_PIN PINB5 01446 #define PB5_RPORT PINB 01447 #define PB5_WPORT PORTB 01448 #define PB5_DDR DDRB 01449 #define PB5_PWM NULL 01450 #undef PB6 01451 #define PB6_PIN PINB6 01452 #define PB6_RPORT PINB 01453 #define PB6_WPORT PORTB 01454 #define PB6_DDR DDRB 01455 #define PB6_PWM NULL 01456 #undef PB7 01457 #define PB7_PIN PINB7 01458 #define PB7_RPORT PINB 01459 #define PB7_WPORT PORTB 01460 #define PB7_DDR DDRB 01461 #define PB7_PWM &OCR0A 01462 01463 #undef PC0 01464 #define PC0_PIN PINC0 01465 #define PC0_RPORT PINC 01466 #define PC0_WPORT PORTC 01467 #define PC0_DDR DDRC 01468 #define PC0_PWM NULL 01469 #undef PC1 01470 #define PC1_PIN PINC1 01471 #define PC1_RPORT PINC 01472 #define PC1_WPORT PORTC 01473 #define PC1_DDR DDRC 01474 #define PC1_PWM NULL 01475 #undef PC2 01476 #define PC2_PIN PINC2 01477 #define PC2_RPORT PINC 01478 #define PC2_WPORT PORTC 01479 #define PC2_DDR DDRC 01480 #define PC2_PWM NULL 01481 #undef PC3 01482 #define PC3_PIN PINC3 01483 #define PC3_RPORT PINC 01484 #define PC3_WPORT PORTC 01485 #define PC3_DDR DDRC 01486 #define PC3_PWM NULL 01487 #undef PC4 01488 #define PC4_PIN PINC4 01489 #define PC4_RPORT PINC 01490 #define PC4_WPORT PORTC 01491 #define PC4_DDR DDRC 01492 #define PC4_PWM NULL 01493 #undef PC5 01494 #define PC5_PIN PINC5 01495 #define PC5_RPORT PINC 01496 #define PC5_WPORT PORTC 01497 #define PC5_DDR DDRC 01498 #define PC5_PWM NULL 01499 #undef PC6 01500 #define PC6_PIN PINC6 01501 #define PC6_RPORT PINC 01502 #define PC6_WPORT PORTC 01503 #define PC6_DDR DDRC 01504 #define PC6_PWM NULL 01505 #undef PC7 01506 #define PC7_PIN PINC7 01507 #define PC7_RPORT PINC 01508 #define PC7_WPORT PORTC 01509 #define PC7_DDR DDRC 01510 #define PC7_PWM NULL 01511 01512 #undef PD0 01513 #define PD0_PIN PIND0 01514 #define PD0_RPORT PIND 01515 #define PD0_WPORT PORTD 01516 #define PD0_DDR DDRD 01517 #define PD0_PWM NULL 01518 #undef PD1 01519 #define PD1_PIN PIND1 01520 #define PD1_RPORT PIND 01521 #define PD1_WPORT PORTD 01522 #define PD1_DDR DDRD 01523 #define PD1_PWM NULL 01524 #undef PD2 01525 #define PD2_PIN PIND2 01526 #define PD2_RPORT PIND 01527 #define PD2_WPORT PORTD 01528 #define PD2_DDR DDRD 01529 #define PD2_PWM NULL 01530 #undef PD3 01531 #define PD3_PIN PIND3 01532 #define PD3_RPORT PIND 01533 #define PD3_WPORT PORTD 01534 #define PD3_DDR DDRD 01535 #define PD3_PWM NULL 01536 #undef PD4 01537 #define PD4_PIN PIND4 01538 #define PD4_RPORT PIND 01539 #define PD4_WPORT PORTD 01540 #define PD4_DDR DDRD 01541 #define PD4_PWM NULL 01542 #undef PD5 01543 #define PD5_PIN PIND5 01544 #define PD5_RPORT PIND 01545 #define PD5_WPORT PORTD 01546 #define PD5_DDR DDRD 01547 #define PD5_PWM NULL 01548 #undef PD6 01549 #define PD6_PIN PIND6 01550 #define PD6_RPORT PIND 01551 #define PD6_WPORT PORTD 01552 #define PD6_DDR DDRD 01553 #define PD6_PWM NULL 01554 #undef PD7 01555 #define PD7_PIN PIND7 01556 #define PD7_RPORT PIND 01557 #define PD7_WPORT PORTD 01558 #define PD7_DDR DDRD 01559 #define PD7_PWM NULL 01560 01561 #undef PE0 01562 #define PE0_PIN PINE0 01563 #define PE0_RPORT PINE 01564 #define PE0_WPORT PORTE 01565 #define PE0_DDR DDRE 01566 #define PE0_PWM NULL 01567 #undef PE1 01568 #define PE1_PIN PINE1 01569 #define PE1_RPORT PINE 01570 #define PE1_WPORT PORTE 01571 #define PE1_DDR DDRE 01572 #define PE1_PWM NULL 01573 #undef PE2 01574 #define PE2_PIN PINE2 01575 #define PE2_RPORT PINE 01576 #define PE2_WPORT PORTE 01577 #define PE2_DDR DDRE 01578 #define PE2_PWM NULL 01579 #undef PE3 01580 #define PE3_PIN PINE3 01581 #define PE3_RPORT PINE 01582 #define PE3_WPORT PORTE 01583 #define PE3_DDR DDRE 01584 #define PE3_PWM &OCR3AL 01585 #undef PE4 01586 #define PE4_PIN PINE4 01587 #define PE4_RPORT PINE 01588 #define PE4_WPORT PORTE 01589 #define PE4_DDR DDRE 01590 #define PE4_PWM &OCR3BL 01591 #undef PE5 01592 #define PE5_PIN PINE5 01593 #define PE5_RPORT PINE 01594 #define PE5_WPORT PORTE 01595 #define PE5_DDR DDRE 01596 #define PE5_PWM &OCR3CL 01597 #undef PE6 01598 #define PE6_PIN PINE6 01599 #define PE6_RPORT PINE 01600 #define PE6_WPORT PORTE 01601 #define PE6_DDR DDRE 01602 #define PE6_PWM NULL 01603 #undef PE7 01604 #define PE7_PIN PINE7 01605 #define PE7_RPORT PINE 01606 #define PE7_WPORT PORTE 01607 #define PE7_DDR DDRE 01608 #define PE7_PWM NULL 01609 01610 #undef PF0 01611 #define PF0_PIN PINF0 01612 #define PF0_RPORT PINF 01613 #define PF0_WPORT PORTF 01614 #define PF0_DDR DDRF 01615 #define PF0_PWM NULL 01616 #undef PF1 01617 #define PF1_PIN PINF1 01618 #define PF1_RPORT PINF 01619 #define PF1_WPORT PORTF 01620 #define PF1_DDR DDRF 01621 #define PF1_PWM NULL 01622 #undef PF2 01623 #define PF2_PIN PINF2 01624 #define PF2_RPORT PINF 01625 #define PF2_WPORT PORTF 01626 #define PF2_DDR DDRF 01627 #define PF2_PWM NULL 01628 #undef PF3 01629 #define PF3_PIN PINF3 01630 #define PF3_RPORT PINF 01631 #define PF3_WPORT PORTF 01632 #define PF3_DDR DDRF 01633 #define PF3_PWM NULL 01634 #undef PF4 01635 #define PF4_PIN PINF4 01636 #define PF4_RPORT PINF 01637 #define PF4_WPORT PORTF 01638 #define PF4_DDR DDRF 01639 #define PF4_PWM NULL 01640 #undef PF5 01641 #define PF5_PIN PINF5 01642 #define PF5_RPORT PINF 01643 #define PF5_WPORT PORTF 01644 #define PF5_DDR DDRF 01645 #define PF5_PWM NULL 01646 #undef PF6 01647 #define PF6_PIN PINF6 01648 #define PF6_RPORT PINF 01649 #define PF6_WPORT PORTF 01650 #define PF6_DDR DDRF 01651 #define PF6_PWM NULL 01652 #undef PF7 01653 #define PF7_PIN PINF7 01654 #define PF7_RPORT PINF 01655 #define PF7_WPORT PORTF 01656 #define PF7_DDR DDRF 01657 #define PF7_PWM NULL 01658 01659 #undef PG0 01660 #define PG0_PIN PING0 01661 #define PG0_RPORT PING 01662 #define PG0_WPORT PORTG 01663 #define PG0_DDR DDRG 01664 #define PG0_PWM NULL 01665 #undef PG1 01666 #define PG1_PIN PING1 01667 #define PG1_RPORT PING 01668 #define PG1_WPORT PORTG 01669 #define PG1_DDR DDRG 01670 #define PG1_PWM NULL 01671 #undef PG2 01672 #define PG2_PIN PING2 01673 #define PG2_RPORT PING 01674 #define PG2_WPORT PORTG 01675 #define PG2_DDR DDRG 01676 #define PG2_PWM NULL 01677 #undef PG3 01678 #define PG3_PIN PING3 01679 #define PG3_RPORT PING 01680 #define PG3_WPORT PORTG 01681 #define PG3_DDR DDRG 01682 #define PG3_PWM NULL 01683 #undef PG4 01684 #define PG4_PIN PING4 01685 #define PG4_RPORT PING 01686 #define PG4_WPORT PORTG 01687 #define PG4_DDR DDRG 01688 #define PG4_PWM NULL 01689 #undef PG5 01690 #define PG5_PIN PING5 01691 #define PG5_RPORT PING 01692 #define PG5_WPORT PORTG 01693 #define PG5_DDR DDRG 01694 #define PG5_PWM &OCR0B 01695 #undef PG6 01696 #define PG6_PIN PING6 01697 #define PG6_RPORT PING 01698 #define PG6_WPORT PORTG 01699 #define PG6_DDR DDRG 01700 #define PG6_PWM NULL 01701 #undef PG7 01702 #define PG7_PIN PING7 01703 #define PG7_RPORT PING 01704 #define PG7_WPORT PORTG 01705 #define PG7_DDR DDRG 01706 #define PG7_PWM NULL 01707 01708 #undef PH0 01709 #define PH0_PIN PINH0 01710 #define PH0_RPORT PINH 01711 #define PH0_WPORT PORTH 01712 #define PH0_DDR DDRH 01713 #define PH0_PWM NULL 01714 #undef PH1 01715 #define PH1_PIN PINH1 01716 #define PH1_RPORT PINH 01717 #define PH1_WPORT PORTH 01718 #define PH1_DDR DDRH 01719 #define PH1_PWM NULL 01720 #undef PH2 01721 #define PH2_PIN PINH2 01722 #define PH2_RPORT PINH 01723 #define PH2_WPORT PORTH 01724 #define PH2_DDR DDRH 01725 #define PH2_PWM NULL 01726 #undef PH3 01727 #define PH3_PIN PINH3 01728 #define PH3_RPORT PINH 01729 #define PH3_WPORT PORTH 01730 #define PH3_DDR DDRH 01731 #define PH3_PWM &OCR4AL 01732 #undef PH4 01733 #define PH4_PIN PINH4 01734 #define PH4_RPORT PINH 01735 #define PH4_WPORT PORTH 01736 #define PH4_DDR DDRH 01737 #define PH4_PWM &OCR4BL 01738 #undef PH5 01739 #define PH5_PIN PINH5 01740 #define PH5_RPORT PINH 01741 #define PH5_WPORT PORTH 01742 #define PH5_DDR DDRH 01743 #define PH5_PWM &OCR4CL 01744 #undef PH6 01745 #define PH6_PIN PINH6 01746 #define PH6_RPORT PINH 01747 #define PH6_WPORT PORTH 01748 #define PH6_DDR DDRH 01749 #define PH6_PWM &OCR2B 01750 #undef PH7 01751 #define PH7_PIN PINH7 01752 #define PH7_RPORT PINH 01753 #define PH7_WPORT PORTH 01754 #define PH7_DDR DDRH 01755 #define PH7_PWM NULL 01756 01757 #undef PJ0 01758 #define PJ0_PIN PINJ0 01759 #define PJ0_RPORT PINJ 01760 #define PJ0_WPORT PORTJ 01761 #define PJ0_DDR DDRJ 01762 #define PJ0_PWM NULL 01763 #undef PJ1 01764 #define PJ1_PIN PINJ1 01765 #define PJ1_RPORT PINJ 01766 #define PJ1_WPORT PORTJ 01767 #define PJ1_DDR DDRJ 01768 #define PJ1_PWM NULL 01769 #undef PJ2 01770 #define PJ2_PIN PINJ2 01771 #define PJ2_RPORT PINJ 01772 #define PJ2_WPORT PORTJ 01773 #define PJ2_DDR DDRJ 01774 #define PJ2_PWM NULL 01775 #undef PJ3 01776 #define PJ3_PIN PINJ3 01777 #define PJ3_RPORT PINJ 01778 #define PJ3_WPORT PORTJ 01779 #define PJ3_DDR DDRJ 01780 #define PJ3_PWM NULL 01781 #undef PJ4 01782 #define PJ4_PIN PINJ4 01783 #define PJ4_RPORT PINJ 01784 #define PJ4_WPORT PORTJ 01785 #define PJ4_DDR DDRJ 01786 #define PJ4_PWM NULL 01787 #undef PJ5 01788 #define PJ5_PIN PINJ5 01789 #define PJ5_RPORT PINJ 01790 #define PJ5_WPORT PORTJ 01791 #define PJ5_DDR DDRJ 01792 #define PJ5_PWM NULL 01793 #undef PJ6 01794 #define PJ6_PIN PINJ6 01795 #define PJ6_RPORT PINJ 01796 #define PJ6_WPORT PORTJ 01797 #define PJ6_DDR DDRJ 01798 #define PJ6_PWM NULL 01799 #undef PJ7 01800 #define PJ7_PIN PINJ7 01801 #define PJ7_RPORT PINJ 01802 #define PJ7_WPORT PORTJ 01803 #define PJ7_DDR DDRJ 01804 #define PJ7_PWM NULL 01805 01806 #undef PK0 01807 #define PK0_PIN PINK0 01808 #define PK0_RPORT PINK 01809 #define PK0_WPORT PORTK 01810 #define PK0_DDR DDRK 01811 #define PK0_PWM NULL 01812 #undef PK1 01813 #define PK1_PIN PINK1 01814 #define PK1_RPORT PINK 01815 #define PK1_WPORT PORTK 01816 #define PK1_DDR DDRK 01817 #define PK1_PWM NULL 01818 #undef PK2 01819 #define PK2_PIN PINK2 01820 #define PK2_RPORT PINK 01821 #define PK2_WPORT PORTK 01822 #define PK2_DDR DDRK 01823 #define PK2_PWM NULL 01824 #undef PK3 01825 #define PK3_PIN PINK3 01826 #define PK3_RPORT PINK 01827 #define PK3_WPORT PORTK 01828 #define PK3_DDR DDRK 01829 #define PK3_PWM NULL 01830 #undef PK4 01831 #define PK4_PIN PINK4 01832 #define PK4_RPORT PINK 01833 #define PK4_WPORT PORTK 01834 #define PK4_DDR DDRK 01835 #define PK4_PWM NULL 01836 #undef PK5 01837 #define PK5_PIN PINK5 01838 #define PK5_RPORT PINK 01839 #define PK5_WPORT PORTK 01840 #define PK5_DDR DDRK 01841 #define PK5_PWM NULL 01842 #undef PK6 01843 #define PK6_PIN PINK6 01844 #define PK6_RPORT PINK 01845 #define PK6_WPORT PORTK 01846 #define PK6_DDR DDRK 01847 #define PK6_PWM NULL 01848 #undef PK7 01849 #define PK7_PIN PINK7 01850 #define PK7_RPORT PINK 01851 #define PK7_WPORT PORTK 01852 #define PK7_DDR DDRK 01853 #define PK7_PWM NULL 01854 01855 #undef PL0 01856 #define PL0_PIN PINL0 01857 #define PL0_RPORT PINL 01858 #define PL0_WPORT PORTL 01859 #define PL0_DDR DDRL 01860 #define PL0_PWM NULL 01861 #undef PL1 01862 #define PL1_PIN PINL1 01863 #define PL1_RPORT PINL 01864 #define PL1_WPORT PORTL 01865 #define PL1_DDR DDRL 01866 #define PL1_PWM NULL 01867 #undef PL2 01868 #define PL2_PIN PINL2 01869 #define PL2_RPORT PINL 01870 #define PL2_WPORT PORTL 01871 #define PL2_DDR DDRL 01872 #define PL2_PWM NULL 01873 #undef PL3 01874 #define PL3_PIN PINL3 01875 #define PL3_RPORT PINL 01876 #define PL3_WPORT PORTL 01877 #define PL3_DDR DDRL 01878 #define PL3_PWM &OCR5AL 01879 #undef PL4 01880 #define PL4_PIN PINL4 01881 #define PL4_RPORT PINL 01882 #define PL4_WPORT PORTL 01883 #define PL4_DDR DDRL 01884 #define PL4_PWM &OCR5BL 01885 #undef PL5 01886 #define PL5_PIN PINL5 01887 #define PL5_RPORT PINL 01888 #define PL5_WPORT PORTL 01889 #define PL5_DDR DDRL 01890 #define PL5_PWM &OCR5CL 01891 #undef PL6 01892 #define PL6_PIN PINL6 01893 #define PL6_RPORT PINL 01894 #define PL6_WPORT PORTL 01895 #define PL6_DDR DDRL 01896 #define PL6_PWM NULL 01897 #undef PL7 01898 #define PL7_PIN PINL7 01899 #define PL7_RPORT PINL 01900 #define PL7_WPORT PORTL 01901 #define PL7_DDR DDRL 01902 #define PL7_PWM NULL 01903 01904 #endif 01905 01906 #if defined (__AVR_AT90USB1287__) 01907 // SPI 01908 #define SCK DIO9 01909 #define MISO DIO11 01910 #define MOSI DIO10 01911 #define SS DIO8 01912 01913 // change for your board 01914 #define DEBUG_LED DIO31 /* led D5 red */ 01915 01916 /* 01917 pins 01918 */ 01919 #define DIO0_PIN PINA0 01920 #define DIO0_RPORT PINA 01921 #define DIO0_WPORT PORTA 01922 #define DIO0_PWM NULL 01923 #define DIO0_DDR DDRA 01924 01925 #define DIO1_PIN PINA1 01926 #define DIO1_RPORT PINA 01927 #define DIO1_WPORT PORTA 01928 #define DIO1_PWM NULL 01929 #define DIO1_DDR DDRA 01930 01931 #define DIO2_PIN PINA2 01932 #define DIO2_RPORT PINA 01933 #define DIO2_WPORT PORTA 01934 #define DIO2_PWM NULL 01935 #define DIO2_DDR DDRA 01936 01937 #define DIO3_PIN PINA3 01938 #define DIO3_RPORT PINA 01939 #define DIO3_WPORT PORTA 01940 #define DIO3_PWM NULL 01941 #define DIO3_DDR DDRA 01942 01943 #define DIO4_PIN PINA4 01944 #define DIO4_RPORT PINA 01945 #define DIO4_WPORT PORTA 01946 #define DIO4_PWM NULL 01947 #define DIO4_DDR DDRA 01948 01949 #define DIO5_PIN PINA5 01950 #define DIO5_RPORT PINA 01951 #define DIO5_WPORT PORTA 01952 #define DIO5_PWM NULL 01953 #define DIO5_DDR DDRA 01954 01955 #define DIO6_PIN PINA6 01956 #define DIO6_RPORT PINA 01957 #define DIO6_WPORT PORTA 01958 #define DIO6_PWM NULL 01959 #define DIO6_DDR DDRA 01960 01961 #define DIO7_PIN PINA7 01962 #define DIO7_RPORT PINA 01963 #define DIO7_WPORT PORTA 01964 #define DIO7_PWM NULL 01965 #define DIO7_DDR DDRA 01966 01967 #define DIO8_PIN PINB0 01968 #define DIO8_RPORT PINB 01969 #define DIO8_WPORT PORTB 01970 #define DIO8_PWM NULL 01971 #define DIO8_DDR DDRB 01972 01973 #define DIO9_PIN PINB1 01974 #define DIO9_RPORT PINB 01975 #define DIO9_WPORT PORTB 01976 #define DIO9_PWM NULL 01977 #define DIO9_DDR DDRB 01978 01979 #define DIO10_PIN PINB2 01980 #define DIO10_RPORT PINB 01981 #define DIO10_WPORT PORTB 01982 #define DIO10_PWM NULL 01983 #define DIO10_DDR DDRB 01984 01985 #define DIO11_PIN PINB3 01986 #define DIO11_RPORT PINB 01987 #define DIO11_WPORT PORTB 01988 #define DIO11_PWM NULL 01989 #define DIO11_DDR DDRB 01990 01991 #define DIO12_PIN PINB4 01992 #define DIO12_RPORT PINB 01993 #define DIO12_WPORT PORTB 01994 #define DIO12_PWM NULL 01995 #define DIO12_DDR DDRB 01996 01997 #define DIO13_PIN PINB5 01998 #define DIO13_RPORT PINB 01999 #define DIO13_WPORT PORTB 02000 #define DIO13_PWM NULL 02001 #define DIO13_DDR DDRB 02002 02003 #define DIO14_PIN PINB6 02004 #define DIO14_RPORT PINB 02005 #define DIO14_WPORT PORTB 02006 #define DIO14_PWM NULL 02007 #define DIO14_DDR DDRB 02008 02009 #define DIO15_PIN PINB7 02010 #define DIO15_RPORT PINB 02011 #define DIO15_WPORT PORTB 02012 #define DIO15_PWM NULL 02013 #define DIO15_DDR DDRB 02014 02015 #define DIO16_PIN PINC0 02016 #define DIO16_RPORT PINC 02017 #define DIO16_WPORT PORTC 02018 #define DIO16_PWM NULL 02019 #define DIO16_DDR DDRC 02020 02021 #define DIO17_PIN PINC1 02022 #define DIO17_RPORT PINC 02023 #define DIO17_WPORT PORTC 02024 #define DIO17_PWM NULL 02025 #define DIO17_DDR DDRC 02026 02027 #define DIO18_PIN PINC2 02028 #define DIO18_RPORT PINC 02029 #define DIO18_WPORT PORTC 02030 #define DIO18_PWM NULL 02031 #define DIO18_DDR DDRC 02032 02033 #define DIO19_PIN PINC3 02034 #define DIO19_RPORT PINC 02035 #define DIO19_WPORT PORTC 02036 #define DIO19_PWM NULL 02037 #define DIO19_DDR DDRC 02038 02039 #define DIO20_PIN PINC4 02040 #define DIO20_RPORT PINC 02041 #define DIO20_WPORT PORTC 02042 #define DIO20_PWM NULL 02043 #define DIO20_DDR DDRC 02044 02045 #define DIO21_PIN PINC5 02046 #define DIO21_RPORT PINC 02047 #define DIO21_WPORT PORTC 02048 #define DIO21_PWM NULL 02049 #define DIO21_DDR DDRC 02050 02051 #define DIO22_PIN PINC6 02052 #define DIO22_RPORT PINC 02053 #define DIO22_WPORT PORTC 02054 #define DIO22_PWM NULL 02055 #define DIO22_DDR DDRC 02056 02057 #define DIO23_PIN PINC7 02058 #define DIO23_RPORT PINC 02059 #define DIO23_WPORT PORTC 02060 #define DIO23_PWM NULL 02061 #define DIO23_DDR DDRC 02062 02063 #define DIO24_PIN PIND0 02064 #define DIO24_RPORT PIND 02065 #define DIO24_WPORT PORTD 02066 #define DIO24_PWM NULL 02067 #define DIO24_DDR DDRD 02068 02069 #define DIO25_PIN PIND1 02070 #define DIO25_RPORT PIND 02071 #define DIO25_WPORT PORTD 02072 #define DIO25_PWM NULL 02073 #define DIO25_DDR DDRD 02074 02075 #define DIO26_PIN PIND2 02076 #define DIO26_RPORT PIND 02077 #define DIO26_WPORT PORTD 02078 #define DIO26_PWM NULL 02079 #define DIO26_DDR DDRD 02080 02081 #define DIO27_PIN PIND3 02082 #define DIO27_RPORT PIND 02083 #define DIO27_WPORT PORTD 02084 #define DIO27_PWM NULL 02085 #define DIO27_DDR DDRD 02086 02087 #define DIO28_PIN PIND4 02088 #define DIO28_RPORT PIND 02089 #define DIO28_WPORT PORTD 02090 #define DIO28_PWM NULL 02091 #define DIO28_DDR DDRD 02092 02093 #define DIO29_PIN PIND5 02094 #define DIO29_RPORT PIND 02095 #define DIO29_WPORT PORTD 02096 #define DIO29_PWM NULL 02097 #define DIO29_DDR DDRD 02098 02099 #define DIO30_PIN PIND6 02100 #define DIO30_RPORT PIND 02101 #define DIO30_WPORT PORTD 02102 #define DIO30_PWM NULL 02103 #define DIO30_DDR DDRD 02104 02105 #define DIO31_PIN PIND7 02106 #define DIO31_RPORT PIND 02107 #define DIO31_WPORT PORTD 02108 #define DIO31_PWM NULL 02109 #define DIO31_DDR DDRD 02110 02111 02112 #define DIO32_PIN PINE0 02113 #define DIO32_RPORT PINE 02114 #define DIO32_WPORT PORTE 02115 #define DIO32_PWM NULL 02116 #define DIO32_DDR DDRE 02117 02118 #define DIO33_PIN PINE1 02119 #define DIO33_RPORT PINE 02120 #define DIO33_WPORT PORTE 02121 #define DIO33_PWM NULL 02122 #define DIO33_DDR DDRE 02123 02124 #define DIO34_PIN PINE2 02125 #define DIO34_RPORT PINE 02126 #define DIO34_WPORT PORTE 02127 #define DIO34_PWM NULL 02128 #define DIO34_DDR DDRE 02129 02130 #define DIO35_PIN PINE3 02131 #define DIO35_RPORT PINE 02132 #define DIO35_WPORT PORTE 02133 #define DIO35_PWM NULL 02134 #define DIO35_DDR DDRE 02135 02136 #define DIO36_PIN PINE4 02137 #define DIO36_RPORT PINE 02138 #define DIO36_WPORT PORTE 02139 #define DIO36_PWM NULL 02140 #define DIO36_DDR DDRE 02141 02142 #define DIO37_PIN PINE5 02143 #define DIO37_RPORT PINE 02144 #define DIO37_WPORT PORTE 02145 #define DIO37_PWM NULL 02146 #define DIO37_DDR DDRE 02147 02148 #define DIO38_PIN PINE6 02149 #define DIO38_RPORT PINE 02150 #define DIO38_WPORT PORTE 02151 #define DIO38_PWM NULL 02152 #define DIO38_DDR DDRE 02153 02154 #define DIO39_PIN PINE7 02155 #define DIO39_RPORT PINE 02156 #define DIO39_WPORT PORTE 02157 #define DIO39_PWM NULL 02158 #define DIO39_DDR DDRE 02159 02160 #define AIO0_PIN PINF0 02161 #define AIO0_RPORT PINF 02162 #define AIO0_WPORT PORTF 02163 #define AIO0_PWM NULL 02164 #define AIO0_DDR DDRF 02165 02166 #define AIO1_PIN PINF1 02167 #define AIO1_RPORT PINF 02168 #define AIO1_WPORT PORTF 02169 #define AIO1_PWM NULL 02170 #define AIO1_DDR DDRF 02171 02172 #define AIO2_PIN PINF2 02173 #define AIO2_RPORT PINF 02174 #define AIO2_WPORT PORTF 02175 #define AIO2_PWM NULL 02176 #define AIO2_DDR DDRF 02177 02178 #define AIO3_PIN PINF3 02179 #define AIO3_RPORT PINF 02180 #define AIO3_WPORT PORTF 02181 #define AIO3_PWM NULL 02182 #define AIO3_DDR DDRF 02183 02184 #define AIO4_PIN PINF4 02185 #define AIO4_RPORT PINF 02186 #define AIO4_WPORT PORTF 02187 #define AIO4_PWM NULL 02188 #define AIO4_DDR DDRF 02189 02190 #define AIO5_PIN PINF5 02191 #define AIO5_RPORT PINF 02192 #define AIO5_WPORT PORTF 02193 #define AIO5_PWM NULL 02194 #define AIO5_DDR DDRF 02195 02196 #define AIO6_PIN PINF6 02197 #define AIO6_RPORT PINF 02198 #define AIO6_WPORT PORTF 02199 #define AIO6_PWM NULL 02200 #define AIO6_DDR DDRF 02201 02202 #define AIO7_PIN PINF7 02203 #define AIO7_RPORT PINF 02204 #define AIO7_WPORT PORTF 02205 #define AIO7_PWM NULL 02206 #define AIO7_DDR DDRF 02207 02208 #define DIO40_PIN PINF0 02209 #define DIO40_RPORT PINF 02210 #define DIO40_WPORT PORTF 02211 #define DIO40_PWM NULL 02212 #define DIO40_DDR DDRF 02213 02214 #define DIO41_PIN PINF1 02215 #define DIO41_RPORT PINF 02216 #define DIO41_WPORT PORTF 02217 #define DIO41_PWM NULL 02218 #define DIO41_DDR DDRF 02219 02220 #define DIO42_PIN PINF2 02221 #define DIO42_RPORT PINF 02222 #define DIO42_WPORT PORTF 02223 #define DIO42_PWM NULL 02224 #define DIO42_DDR DDRF 02225 02226 #define DIO43_PIN PINF3 02227 #define DIO43_RPORT PINF 02228 #define DIO43_WPORT PORTF 02229 #define DIO43_PWM NULL 02230 #define DIO43_DDR DDRF 02231 02232 #define DIO44_PIN PINF4 02233 #define DIO44_RPORT PINF 02234 #define DIO44_WPORT PORTF 02235 #define DIO44_PWM NULL 02236 #define DIO44_DDR DDRF 02237 02238 #define DIO45_PIN PINF5 02239 #define DIO45_RPORT PINF 02240 #define DIO45_WPORT PORTF 02241 #define DIO45_PWM NULL 02242 #define DIO45_DDR DDRF 02243 02244 #define DIO46_PIN PINF6 02245 #define DIO46_RPORT PINF 02246 #define DIO46_WPORT PORTF 02247 #define DIO46_PWM NULL 02248 #define DIO46_DDR DDRF 02249 02250 #define DIO47_PIN PINF7 02251 #define DIO47_RPORT PINF 02252 #define DIO47_WPORT PORTF 02253 #define DIO47_PWM NULL 02254 #define DIO47_DDR DDRF 02255 02256 02257 02258 #undef PA0 02259 #define PA0_PIN PINA0 02260 #define PA0_RPORT PINA 02261 #define PA0_WPORT PORTA 02262 #define PA0_PWM NULL 02263 #define PA0_DDR DDRA 02264 #undef PA1 02265 #define PA1_PIN PINA1 02266 #define PA1_RPORT PINA 02267 #define PA1_WPORT PORTA 02268 #define PA1_PWM NULL 02269 #define PA1_DDR DDRA 02270 #undef PA2 02271 #define PA2_PIN PINA2 02272 #define PA2_RPORT PINA 02273 #define PA2_WPORT PORTA 02274 #define PA2_PWM NULL 02275 #define PA2_DDR DDRA 02276 #undef PA3 02277 #define PA3_PIN PINA3 02278 #define PA3_RPORT PINA 02279 #define PA3_WPORT PORTA 02280 #define PA3_PWM NULL 02281 #define PA3_DDR DDRA 02282 #undef PA4 02283 #define PA4_PIN PINA4 02284 #define PA4_RPORT PINA 02285 #define PA4_WPORT PORTA 02286 #define PA4_PWM NULL 02287 #define PA4_DDR DDRA 02288 #undef PA5 02289 #define PA5_PIN PINA5 02290 #define PA5_RPORT PINA 02291 #define PA5_WPORT PORTA 02292 #define PA5_PWM NULL 02293 #define PA5_DDR DDRA 02294 #undef PA6 02295 #define PA6_PIN PINA6 02296 #define PA6_RPORT PINA 02297 #define PA6_WPORT PORTA 02298 #define PA6_PWM NULL 02299 #define PA6_DDR DDRA 02300 #undef PA7 02301 #define PA7_PIN PINA7 02302 #define PA7_RPORT PINA 02303 #define PA7_WPORT PORTA 02304 #define PA7_PWM NULL 02305 #define PA7_DDR DDRA 02306 02307 #undef PB0 02308 #define PB0_PIN PINB0 02309 #define PB0_RPORT PINB 02310 #define PB0_WPORT PORTB 02311 #define PB0_PWM NULL 02312 #define PB0_DDR DDRB 02313 #undef PB1 02314 #define PB1_PIN PINB1 02315 #define PB1_RPORT PINB 02316 #define PB1_WPORT PORTB 02317 #define PB1_PWM NULL 02318 #define PB1_DDR DDRB 02319 #undef PB2 02320 #define PB2_PIN PINB2 02321 #define PB2_RPORT PINB 02322 #define PB2_WPORT PORTB 02323 #define PB2_PWM NULL 02324 #define PB2_DDR DDRB 02325 #undef PB3 02326 #define PB3_PIN PINB3 02327 #define PB3_RPORT PINB 02328 #define PB3_WPORT PORTB 02329 #define PB3_PWM NULL 02330 #define PB3_DDR DDRB 02331 #undef PB4 02332 #define PB4_PIN PINB4 02333 #define PB4_RPORT PINB 02334 #define PB4_WPORT PORTB 02335 #define PB4_PWM NULL 02336 #define PB4_DDR DDRB 02337 #undef PB5 02338 #define PB5_PIN PINB5 02339 #define PB5_RPORT PINB 02340 #define PB5_WPORT PORTB 02341 #define PB5_PWM NULL 02342 #define PB5_DDR DDRB 02343 #undef PB6 02344 #define PB6_PIN PINB6 02345 #define PB6_RPORT PINB 02346 #define PB6_WPORT PORTB 02347 #define PB6_PWM NULL 02348 #define PB6_DDR DDRB 02349 #undef PB7 02350 #define PB7_PIN PINB7 02351 #define PB7_RPORT PINB 02352 #define PB7_WPORT PORTB 02353 #define PB7_PWM NULL 02354 #define PB7_DDR DDRB 02355 02356 #undef PC0 02357 #define PC0_PIN PINC0 02358 #define PC0_RPORT PINC 02359 #define PC0_WPORT PORTC 02360 #define PC0_PWM NULL 02361 #define PC0_DDR DDRC 02362 #undef PC1 02363 #define PC1_PIN PINC1 02364 #define PC1_RPORT PINC 02365 #define PC1_WPORT PORTC 02366 #define PC1_PWM NULL 02367 #define PC1_DDR DDRC 02368 #undef PC2 02369 #define PC2_PIN PINC2 02370 #define PC2_RPORT PINC 02371 #define PC2_WPORT PORTC 02372 #define PC2_PWM NULL 02373 #define PC2_DDR DDRC 02374 #undef PC3 02375 #define PC3_PIN PINC3 02376 #define PC3_RPORT PINC 02377 #define PC3_WPORT PORTC 02378 #define PC3_PWM NULL 02379 #define PC3_DDR DDRC 02380 #undef PC4 02381 #define PC4_PIN PINC4 02382 #define PC4_RPORT PINC 02383 #define PC4_WPORT PORTC 02384 #define PC4_PWM NULL 02385 #define PC4_DDR DDRC 02386 #undef PC5 02387 #define PC5_PIN PINC5 02388 #define PC5_RPORT PINC 02389 #define PC5_WPORT PORTC 02390 #define PC5_PWM NULL 02391 #define PC5_DDR DDRC 02392 #undef PC6 02393 #define PC6_PIN PINC6 02394 #define PC6_RPORT PINC 02395 #define PC6_WPORT PORTC 02396 #define PC6_PWM NULL 02397 #define PC6_DDR DDRC 02398 #undef PC7 02399 #define PC7_PIN PINC7 02400 #define PC7_RPORT PINC 02401 #define PC7_WPORT PORTC 02402 #define PC7_PWM NULL 02403 #define PC7_DDR DDRC 02404 02405 #undef PD0 02406 #define PD0_PIN PIND0 02407 #define PD0_RPORT PIND 02408 #define PD0_WPORT PORTD 02409 #define PD0_PWM NULL 02410 #define PD0_DDR DDRD 02411 #undef PD1 02412 #define PD1_PIN PIND1 02413 #define PD1_RPORT PIND 02414 #define PD1_WPORT PORTD 02415 #define PD1_PWM NULL 02416 #define PD1_DDR DDRD 02417 #undef PD2 02418 #define PD2_PIN PIND2 02419 #define PD2_RPORT PIND 02420 #define PD2_WPORT PORTD 02421 #define PD2_PWM NULL 02422 #define PD2_DDR DDRD 02423 #undef PD3 02424 #define PD3_PIN PIND3 02425 #define PD3_RPORT PIND 02426 #define PD3_WPORT PORTD 02427 #define PD3_PWM NULL 02428 #define PD3_DDR DDRD 02429 #undef PD4 02430 #define PD4_PIN PIND4 02431 #define PD4_RPORT PIND 02432 #define PD4_WPORT PORTD 02433 #define PD4_PWM NULL 02434 #define PD4_DDR DDRD 02435 #undef PD5 02436 #define PD5_PIN PIND5 02437 #define PD5_RPORT PIND 02438 #define PD5_WPORT PORTD 02439 #define PD5_PWM NULL 02440 #define PD5_DDR DDRD 02441 #undef PD6 02442 #define PD6_PIN PIND6 02443 #define PD6_RPORT PIND 02444 #define PD6_WPORT PORTD 02445 #define PD6_PWM NULL 02446 #define PD6_DDR DDRD 02447 #undef PD7 02448 #define PD7_PIN PIND7 02449 #define PD7_RPORT PIND 02450 #define PD7_WPORT PORTD 02451 #define PD7_PWM NULL 02452 #define PD7_DDR DDRD 02453 02454 #undef PE0 02455 #define PE0_PIN PINE0 02456 #define PE0_RPORT PINE 02457 #define PE0_WPORT PORTE 02458 #define PE0_PWM NULL 02459 #define PE0_DDR DDRE 02460 #undef PE1 02461 #define PE1_PIN PINE1 02462 #define PE1_RPORT PINE 02463 #define PE1_WPORT PORTE 02464 #define PE1_PWM NULL 02465 #define PE1_DDR DDRE 02466 #undef PE2 02467 #define PE2_PIN PINE2 02468 #define PE2_RPORT PINE 02469 #define PE2_WPORT PORTE 02470 #define PE2_PWM NULL 02471 #define PE2_DDR DDRE 02472 #undef PE3 02473 #define PE3_PIN PINE3 02474 #define PE3_RPORT PINE 02475 #define PE3_WPORT PORTE 02476 #define PE3_PWM NULL 02477 #define PE3_DDR DDRE 02478 #undef PE4 02479 #define PE4_PIN PINE4 02480 #define PE4_RPORT PINE 02481 #define PE4_WPORT PORTE 02482 #define PE4_PWM NULL 02483 #define PE4_DDR DDRE 02484 #undef PE5 02485 #define PE5_PIN PINE5 02486 #define PE5_RPORT PINE 02487 #define PE5_WPORT PORTE 02488 #define PE5_PWM NULL 02489 #define PE5_DDR DDRE 02490 #undef PE6 02491 #define PE6_PIN PINE6 02492 #define PE6_RPORT PINE 02493 #define PE6_WPORT PORTE 02494 #define PE6_PWM NULL 02495 #define PE6_DDR DDRE 02496 #undef PE7 02497 #define PE7_PIN PINE7 02498 #define PE7_RPORT PINE 02499 #define PE7_WPORT PORTE 02500 #define PE7_PWM NULL 02501 #define PE7_DDR DDRE 02502 02503 #undef PF0 02504 #define PF0_PIN PINF0 02505 #define PF0_RPORT PINF 02506 #define PF0_WPORT PORTF 02507 #define PF0_PWM NULL 02508 #define PF0_DDR DDRF 02509 #undef PF1 02510 #define PF1_PIN PINF1 02511 #define PF1_RPORT PINF 02512 #define PF1_WPORT PORTF 02513 #define PF1_PWM NULL 02514 #define PF1_DDR DDRF 02515 #undef PF2 02516 #define PF2_PIN PINF2 02517 #define PF2_RPORT PINF 02518 #define PF2_WPORT PORTF 02519 #define PF2_PWM NULL 02520 #define PF2_DDR DDRF 02521 #undef PF3 02522 #define PF3_PIN PINF3 02523 #define PF3_RPORT PINF 02524 #define PF3_WPORT PORTF 02525 #define PF3_PWM NULL 02526 #define PF3_DDR DDRF 02527 #undef PF4 02528 #define PF4_PIN PINF4 02529 #define PF4_RPORT PINF 02530 #define PF4_WPORT PORTF 02531 #define PF4_PWM NULL 02532 #define PF4_DDR DDRF 02533 #undef PF5 02534 #define PF5_PIN PINF5 02535 #define PF5_RPORT PINF 02536 #define PF5_WPORT PORTF 02537 #define PF5_PWM NULL 02538 #define PF5_DDR DDRF 02539 #undef PF6 02540 #define PF6_PIN PINF6 02541 #define PF6_RPORT PINF 02542 #define PF6_WPORT PORTF 02543 #define PF6_PWM NULL 02544 #define PF6_DDR DDRF 02545 #undef PF7 02546 #define PF7_PIN PINF7 02547 #define PF7_RPORT PINF 02548 #define PF7_WPORT PORTF 02549 #define PF7_PWM NULL 02550 #define PF7_DDR DDRF 02551 #endif 02552 02553 #ifndef DIO0_PIN 02554 #error pins for this chip not defined in arduino.h! If you write an appropriate pin definition and have this firmware work on your chip, please submit a pull request 02555 #endif 02556 02557 #endif /* _ARDUINO_H */