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