3#if defined(NATIVE_BOARD)
8#include "../lib/ArduinoFake/SoftwareTimer.h"
25constexpr auto ticksToMicros = software_timer_t::ticksToMicros;
27#define FPU_MAX_SIZE 32
30#if !defined(IGN_CHANNELS)
31#warning Using default IGN_CHANNELS
34#if !defined(INJ_CHANNELS)
35#warning Using default INJ_CHANNELS
38#define TS_SERIAL_BUFFER_SIZE 517
40#define BOARD_MAX_DIGITAL_PINS NUM_DIGITAL_PINS
41#define BOARD_MAX_IO_PINS NUM_DIGITAL_PINS
45#define PWM_FAN_AVAILABLE
51#define DEFINE_TIMER_VARS(Prefix, index, array) \
52 static inline void Prefix##index##_TIMER_ENABLE(void) { array[index-1].enableTimer(); } \
53 static inline void Prefix##index##_TIMER_DISABLE(void) { array[index-1].disableTimer(); } \
54 static std::atomic<software_timer_t::counter_t>& Prefix##index##_COUNTER = array[index-1].counter; \
55 static std::atomic<software_timer_t::counter_t>& Prefix##index##_COMPARE = array[index-1].compare;
113#define ENABLE_BOOST_TIMER() boostTimer.enableTimer()
114#define DISABLE_BOOST_TIMER() boostTimer.disableTimer()
115#define BOOST_TIMER_COMPARE boostTimer.compare
116#define BOOST_TIMER_COUNTER boostTimer.counter
119#define ENABLE_VVT_TIMER() vvtTimer.enableTimer()
120#define DISABLE_VVT_TIMER() vvtTimer.disableTimer()
121#define VVT_TIMER_COMPARE vvtTimer.compare
122#define VVT_TIMER_COUNTER vvtTimer.counter
125#define ENABLE_FAN_TIMER() fanTimer.enableTimer()
126#define DISABLE_FAN_TIMER() fanTimer.disableTimer()
127#define FAN_TIMER_COMPARE fanTimer.compare
128#define FAN_TIMER_COUNTER fanTimer.counter
135#define IDLE_TIMER_ENABLE() idleTimer.enableTimer()
136#define IDLE_TIMER_DISABLE() idleTimer.disableTimer()
137#define IDLE_COUNTER idleTimer.counter
138#define IDLE_COMPARE idleTimer.compare
142 struct { TickEventGuard guard; uint8_t done = 1; } loopGuard; \
143 loopGuard.done; loopGuard.done = 0U )
146template<
typename _Tp>
155template<
typename _Tp>
168#define SECONDARY_SERIAL_T decltype(Serial)
170#define RTC_LIB_H <time.h>
uint16_t COMPARE_TYPE
The timer overflow type.
Definition board_avr2560.h:32
static bool pinIsReserved(uint8_t pin)
Definition board_avr2560.h:62
constexpr uint16_t BLOCKING_FACTOR
Definition board_avr2560.h:60
static constexpr uint32_t ticksToMicros(COMPARE_TYPE ticks)
Convert timer ticks to µS.
Definition board_avr2560.h:48
constexpr uint8_t SERIAL_BUFFER_THRESHOLD
When the serial buffer is filled to greater than this threshold value, the serial processing operatio...
Definition board_avr2560.h:185
constexpr uint8_t ANALOG_PINS[]
Analog pin mapping.
Definition board_avr2560.h:179
constexpr uint16_t TABLE_BLOCKING_FACTOR
Definition board_avr2560.h:61
static constexpr COMPARE_TYPE uS_TO_TIMER_COMPARE(uint32_t micros)
Convert µS to timer ticks.
Definition board_avr2560.h:40
A class for output pin operations that is faster than standard Arduino digitalWrite()
Definition fastOutputPin.h:10
A class for output pin operations. Must have same signature as fastOutputPin_t to allow for interchan...
Definition outputPin.h:9
constexpr array()=default