22 constexpr auto TICK_RESOLUTION = 2.13333333333333;
25 constexpr uint32_t TICK_CONVERTER_PRECISION = 8UL;
31 constexpr uint32_t MULTIPLIER = (uint32_t)((1UL<<TICK_CONVERTER_PRECISION)/TICK_RESOLUTION);
32 return (
COMPARE_TYPE)((micros * MULTIPLIER) >> TICK_CONVERTER_PRECISION);
38 constexpr uint32_t MULTIPLIER = (uint32_t)((1UL<<TICK_CONVERTER_PRECISION)*TICK_RESOLUTION);
39 return (ticks * MULTIPLIER) >> TICK_CONVERTER_PRECISION;
42#define TS_SERIAL_BUFFER_SIZE 517
43#define FPU_MAX_SIZE 32
45#define BOARD_MAX_DIGITAL_PINS 57
46#define BOARD_MAX_IO_PINS 57
48#define RTC_LIB_H "TimeLib.h"
49#define SD_CONFIG SdioConfig(FIFO_SDIO)
53#define PWM_FAN_AVAILABLE
69#define FUEL1_COUNTER FTM0_CNT
70#define FUEL2_COUNTER FTM0_CNT
71#define FUEL3_COUNTER FTM0_CNT
72#define FUEL4_COUNTER FTM0_CNT
73#define FUEL5_COUNTER FTM3_CNT
74#define FUEL6_COUNTER FTM3_CNT
75#define FUEL7_COUNTER FTM3_CNT
76#define FUEL8_COUNTER FTM3_CNT
78#define IGN1_COUNTER FTM0_CNT
79#define IGN2_COUNTER FTM0_CNT
80#define IGN3_COUNTER FTM0_CNT
81#define IGN4_COUNTER FTM0_CNT
82#define IGN5_COUNTER FTM3_CNT
83#define IGN6_COUNTER FTM3_CNT
84#define IGN7_COUNTER FTM3_CNT
85#define IGN8_COUNTER FTM3_CNT
87#define FUEL1_COMPARE FTM0_C0V
88#define FUEL2_COMPARE FTM0_C1V
89#define FUEL3_COMPARE FTM0_C2V
90#define FUEL4_COMPARE FTM0_C3V
91#define FUEL5_COMPARE FTM3_C0V
92#define FUEL6_COMPARE FTM3_C1V
93#define FUEL7_COMPARE FTM3_C2V
94#define FUEL8_COMPARE FTM3_C3V
96#define IGN1_COMPARE FTM0_C4V
97#define IGN2_COMPARE FTM0_C5V
98#define IGN3_COMPARE FTM0_C6V
99#define IGN4_COMPARE FTM0_C7V
100#define IGN5_COMPARE FTM3_C4V
101#define IGN6_COMPARE FTM3_C5V
102#define IGN7_COMPARE FTM3_C6V
103#define IGN8_COMPARE FTM3_C7V
145#define ENABLE_BOOST_TIMER() FTM1_C0SC |= FTM_CSC_CHIE
146#define DISABLE_BOOST_TIMER() FTM1_C0SC &= ~FTM_CSC_CHIE
148#define ENABLE_VVT_TIMER() FTM1_C1SC |= FTM_CSC_CHIE
149#define DISABLE_VVT_TIMER() FTM1_C1SC &= ~FTM_CSC_CHIE
151#define ENABLE_FAN_TIMER() FTM2_C1SC |= FTM_CSC_CHIE
152#define DISABLE_FAN_TIMER() FTM2_C1SC &= ~FTM_CSC_CHIE
154#define BOOST_TIMER_COMPARE FTM1_C0V
155#define BOOST_TIMER_COUNTER FTM1_CNT
156#define VVT_TIMER_COMPARE FTM1_C1V
157#define VVT_TIMER_COUNTER FTM1_CNT
158#define FAN_TIMER_COMPARE FTM2_C1V
159#define FAN_TIMER_COUNTER FTM2_CNT
165#define IDLE_COUNTER FTM2_CNT
166#define IDLE_COMPARE FTM2_C0V
168#define IDLE_TIMER_ENABLE() FTM2_C0SC |= FTM_CSC_CHIE
169#define IDLE_TIMER_DISABLE() FTM2_C0SC &= ~FTM_CSC_CHIE
175#define SECONDARY_SERIAL_T HardwareSerial
177#include <FlexCAN_T4.h>
178#define NATIVE_CAN_AVAILABLE
186constexpr uint8_t
ANALOG_PINS[] = { _ANALOG_PINS_A0_A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25 };
194#define MC33810_SUPPORT
uint16_t COMPARE_TYPE
The timer overflow type.
Definition board_avr2560.h:32
fastInputPin_t boardInputPin_t
Definition board_avr2560.h:174
fastOutputPin_t boardOutputPin_t
Definition board_avr2560.h:176
static void IGN1_TIMER_ENABLE(void)
Definition board_teensy35.h:123
static void IGN3_TIMER_DISABLE(void)
Definition board_teensy35.h:134
static void IGN1_TIMER_DISABLE(void)
Definition board_teensy35.h:132
static void FUEL2_TIMER_ENABLE(void)
Definition board_teensy35.h:106
static void FUEL1_TIMER_DISABLE(void)
Definition board_teensy35.h:114
static void FUEL4_TIMER_DISABLE(void)
Definition board_teensy35.h:117
static void IGN3_TIMER_ENABLE(void)
Definition board_teensy35.h:125
static void FUEL4_TIMER_ENABLE(void)
Definition board_teensy35.h:108
static void FUEL5_TIMER_DISABLE(void)
Definition board_teensy35.h:118
static void FUEL2_TIMER_DISABLE(void)
Definition board_teensy35.h:115
static void FUEL3_TIMER_DISABLE(void)
Definition board_teensy35.h:116
static void IGN5_TIMER_ENABLE(void)
Definition board_teensy35.h:127
static bool pinIsReserved(uint8_t pin)
Definition board_teensy35.h:54
static void FUEL7_TIMER_DISABLE(void)
Definition board_teensy35.h:120
constexpr uint16_t BLOCKING_FACTOR
Definition board_teensy35.h:50
static void FUEL7_TIMER_ENABLE(void)
Definition board_teensy35.h:111
static void FUEL3_TIMER_ENABLE(void)
Definition board_teensy35.h:107
static void FUEL6_TIMER_ENABLE(void)
Definition board_teensy35.h:110
static void IGN6_TIMER_DISABLE(void)
Definition board_teensy35.h:137
static constexpr uint32_t ticksToMicros(COMPARE_TYPE ticks)
Convert timer ticks to µS.
Definition board_teensy35.h:36
static void FUEL6_TIMER_DISABLE(void)
Definition board_teensy35.h:119
static void IGN7_TIMER_DISABLE(void)
Definition board_teensy35.h:138
static void IGN2_TIMER_DISABLE(void)
Definition board_teensy35.h:133
static void IGN8_TIMER_DISABLE(void)
Definition board_teensy35.h:139
static void IGN6_TIMER_ENABLE(void)
Definition board_teensy35.h:128
static void IGN2_TIMER_ENABLE(void)
Definition board_teensy35.h:124
static void IGN8_TIMER_ENABLE(void)
Definition board_teensy35.h:130
static void FUEL8_TIMER_DISABLE(void)
Definition board_teensy35.h:121
static void IGN4_TIMER_ENABLE(void)
Definition board_teensy35.h:126
static void IGN7_TIMER_ENABLE(void)
Definition board_teensy35.h:129
static void IGN5_TIMER_DISABLE(void)
Definition board_teensy35.h:136
static void IGN4_TIMER_DISABLE(void)
Definition board_teensy35.h:135
constexpr uint8_t SERIAL_BUFFER_THRESHOLD
When the serial buffer is filled to greater than this threshold value, the serial processing operatio...
Definition board_teensy35.h:192
static void FUEL1_TIMER_ENABLE(void)
Definition board_teensy35.h:105
static void FUEL8_TIMER_ENABLE(void)
Definition board_teensy35.h:112
static void FUEL5_TIMER_ENABLE(void)
Definition board_teensy35.h:109
constexpr uint8_t ANALOG_PINS[]
Analog pin mapping.
Definition board_teensy35.h:186
constexpr uint16_t TABLE_BLOCKING_FACTOR
Definition board_teensy35.h:51
static constexpr COMPARE_TYPE uS_TO_TIMER_COMPARE(uint32_t micros)
Convert µS to timer ticks.
Definition board_teensy35.h:29