@@ -184,13 +184,30 @@ EXTERN volatile irparams_t irparams;
184
184
#define IR_USE_TIMER2 // tx = pin 1
185
185
//#define IR_USE_TIMER3 // tx = pin 16
186
186
187
- // Sanguino
188
- #elif defined(__AVR_ATmega644P__ ) || defined(__AVR_ATmega644__ )
187
+ // MightyCore - ATmega1284
188
+ #elif defined(__AVR_ATmega1284__ ) || defined(__AVR_ATmega1284P__ )
189
+ //#define IR_USE_TIMER1 // tx = pin 13
190
+ #define IR_USE_TIMER2 // tx = pin 14
191
+ //#define IR_USE_TIMER3 // tx = pin 6
192
+
193
+ // MightyCore - ATmega164, ATmega324, ATmega644
194
+ #elif defined(__AVR_ATmega644__ ) || defined(__AVR_ATmega644P__ ) \
195
+ || defined(__AVR_ATmega324P__ ) || defined(__AVR_ATmega324A__ ) \
196
+ || defined(__AVR_ATmega324PA__ ) || defined(__AVR_ATmega164A__ ) \
197
+ || defined(__AVR_ATmega164P__ )
189
198
//#define IR_USE_TIMER1 // tx = pin 13
190
199
#define IR_USE_TIMER2 // tx = pin 14
200
+
201
+ //MegaCore - ATmega64, ATmega128
202
+ #elif defined(__AVR_ATmega64__ ) || defined(__AVR_ATmega128__ )
203
+ #define IR_USE_TIMER1 // tx = pin 13
204
+
205
+ // MightyCore - ATmega8535, ATmega16, ATmega32
206
+ #elif defined(__AVR_ATmega8535__ ) || defined(__AVR_ATmega16__ ) || defined(__AVR_ATmega32__ )
207
+ #define IR_USE_TIMER1 // tx = pin 13
191
208
192
209
// Atmega8
193
- #elif defined(__AVR_ATmega8P__ ) || defined( __AVR_ATmega8__ )
210
+ #elif defined(__AVR_ATmega8__ )
194
211
#define IR_USE_TIMER1 // tx = pin 9
195
212
196
213
// ATtiny84
@@ -255,8 +272,12 @@ EXTERN volatile irparams_t irparams;
255
272
# define TIMER_PWM_PIN CORE_OC2B_PIN // Teensy
256
273
#elif defined(__AVR_ATmega1280__ ) || defined(__AVR_ATmega2560__ )
257
274
# define TIMER_PWM_PIN 9 // Arduino Mega
258
- #elif defined(__AVR_ATmega644P__ ) || defined(__AVR_ATmega644__ )
259
- # define TIMER_PWM_PIN 14 // Sanguino
275
+ #elif defined(__AVR_ATmega1284__ ) || defined(__AVR_ATmega1284P__ ) \
276
+ || defined(__AVR_ATmega644__ ) || defined(__AVR_ATmega644P__ ) \
277
+ || defined(__AVR_ATmega324P__ ) || defined(__AVR_ATmega324A__ ) \
278
+ || defined(__AVR_ATmega324PA__ ) || defined(__AVR_ATmega164A__ ) \
279
+ || defined(__AVR_ATmega164P__ )
280
+ # define TIMER_PWM_PIN 14 // MightyCore
260
281
#else
261
282
# define TIMER_PWM_PIN 3 // Arduino Duemilanove, Diecimila, LilyPad, etc
262
283
#endif
@@ -271,7 +292,9 @@ EXTERN volatile irparams_t irparams;
271
292
#define TIMER_DISABLE_PWM (TCCR1A &= ~(_BV(COM1A1)))
272
293
273
294
//-----------------
274
- #if defined(__AVR_ATmega8P__ ) || defined(__AVR_ATmega8__ )
295
+ #if defined(__AVR_ATmega8__ ) || defined(__AVR_ATmega8535__ ) \
296
+ || defined(__AVR_ATmega16__ ) || defined(__AVR_ATmega32__ ) \
297
+ || defined(__AVR_ATmega64__ ) || defined(__AVR_ATmega128__ )
275
298
# define TIMER_ENABLE_INTR (TIMSK |= _BV(OCIE1A))
276
299
# define TIMER_DISABLE_INTR (TIMSK &= ~_BV(OCIE1A))
277
300
#else
@@ -302,10 +325,17 @@ EXTERN volatile irparams_t irparams;
302
325
# define TIMER_PWM_PIN CORE_OC1A_PIN // Teensy
303
326
#elif defined(__AVR_ATmega1280__ ) || defined(__AVR_ATmega2560__ )
304
327
# define TIMER_PWM_PIN 11 // Arduino Mega
305
- #elif defined(__AVR_ATmega644P__ ) || defined(__AVR_ATmega644__ )
306
- # define TIMER_PWM_PIN 13 // Sanguino
328
+ #elif defined(__AVR_ATmega64__ ) || defined(__AVR_ATmega128__ )
329
+ # define TIMER_PWM_PIN 13 // MegaCore
330
+ #elif defined(__AVR_ATmega1284__ ) || defined(__AVR_ATmega1284P__ ) \
331
+ || defined(__AVR_ATmega644__ ) || defined(__AVR_ATmega644P__ ) \
332
+ || defined(__AVR_ATmega324P__ ) || defined(__AVR_ATmega324A__ ) \
333
+ || defined(__AVR_ATmega324PA__ ) || defined(__AVR_ATmega164A__ ) \
334
+ || defined(__AVR_ATmega164P__ ) || defined(__AVR_ATmega32__ ) \
335
+ || defined(__AVR_ATmega16__ ) || defined(__AVR_ATmega8535__ )
336
+ # define TIMER_PWM_PIN 13 // MightyCore
307
337
#elif defined(__AVR_ATtiny84__ )
308
- # define TIMER_PWM_PIN 6
338
+ # define TIMER_PWM_PIN 6
309
339
#else
310
340
# define TIMER_PWM_PIN 9 // Arduino Duemilanove, Diecimila, LilyPad, etc
311
341
#endif
@@ -342,6 +372,8 @@ EXTERN volatile irparams_t irparams;
342
372
# define TIMER_PWM_PIN CORE_OC3A_PIN // Teensy
343
373
#elif defined(__AVR_ATmega1280__ ) || defined(__AVR_ATmega2560__ )
344
374
# define TIMER_PWM_PIN 5 // Arduino Mega
375
+ #elif defined(__AVR_ATmega1284__ ) || defined(__AVR_ATmega1284P__ )
376
+ # define TIMER_PWM_PIN 6 // MightyCore
345
377
#else
346
378
# error "Please add OC3A pin number here\n"
347
379
#endif
0 commit comments