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
47#define BOARD_MAX_ADC_PINS 26
49 #define EEPROM_LIB_H "src/SPIAsEEPROM/SPIAsEEPROM.h"
50 class SPI_EEPROM_Class;
53 #define EEPROM_LIB_H <EEPROM.h>
58#define RTC_LIB_H "TimeLib.h"
59#define SD_CONFIG SdioConfig(FIFO_SDIO)
63#define PWM_FAN_AVAILABLE
79#define FUEL1_COUNTER FTM0_CNT
80#define FUEL2_COUNTER FTM0_CNT
81#define FUEL3_COUNTER FTM0_CNT
82#define FUEL4_COUNTER FTM0_CNT
83#define FUEL5_COUNTER FTM3_CNT
84#define FUEL6_COUNTER FTM3_CNT
85#define FUEL7_COUNTER FTM3_CNT
86#define FUEL8_COUNTER FTM3_CNT
88#define IGN1_COUNTER FTM0_CNT
89#define IGN2_COUNTER FTM0_CNT
90#define IGN3_COUNTER FTM0_CNT
91#define IGN4_COUNTER FTM0_CNT
92#define IGN5_COUNTER FTM3_CNT
93#define IGN6_COUNTER FTM3_CNT
94#define IGN7_COUNTER FTM3_CNT
95#define IGN8_COUNTER FTM3_CNT
97#define FUEL1_COMPARE FTM0_C0V
98#define FUEL2_COMPARE FTM0_C1V
99#define FUEL3_COMPARE FTM0_C2V
100#define FUEL4_COMPARE FTM0_C3V
101#define FUEL5_COMPARE FTM3_C0V
102#define FUEL6_COMPARE FTM3_C1V
103#define FUEL7_COMPARE FTM3_C2V
104#define FUEL8_COMPARE FTM3_C3V
106#define IGN1_COMPARE FTM0_C4V
107#define IGN2_COMPARE FTM0_C5V
108#define IGN3_COMPARE FTM0_C6V
109#define IGN4_COMPARE FTM0_C7V
110#define IGN5_COMPARE FTM3_C4V
111#define IGN6_COMPARE FTM3_C5V
112#define IGN7_COMPARE FTM3_C6V
113#define IGN8_COMPARE FTM3_C7V
155#define ENABLE_BOOST_TIMER() FTM1_C0SC |= FTM_CSC_CHIE
156#define DISABLE_BOOST_TIMER() FTM1_C0SC &= ~FTM_CSC_CHIE
158#define ENABLE_VVT_TIMER() FTM1_C1SC |= FTM_CSC_CHIE
159#define DISABLE_VVT_TIMER() FTM1_C1SC &= ~FTM_CSC_CHIE
161#define ENABLE_FAN_TIMER() FTM2_C1SC |= FTM_CSC_CHIE
162#define DISABLE_FAN_TIMER() FTM2_C1SC &= ~FTM_CSC_CHIE
164#define BOOST_TIMER_COMPARE FTM1_C0V
165#define BOOST_TIMER_COUNTER FTM1_CNT
166#define VVT_TIMER_COMPARE FTM1_C1V
167#define VVT_TIMER_COUNTER FTM1_CNT
168#define FAN_TIMER_COMPARE FTM2_C1V
169#define FAN_TIMER_COUNTER FTM2_CNT
175#define IDLE_COUNTER FTM2_CNT
176#define IDLE_COMPARE FTM2_C0V
178#define IDLE_TIMER_ENABLE() FTM2_C0SC |= FTM_CSC_CHIE
179#define IDLE_TIMER_DISABLE() FTM2_C0SC &= ~FTM_CSC_CHIE
185#define SECONDARY_SERIAL_T HardwareSerial
187#include <FlexCAN_T4.h>
188#define NATIVE_CAN_AVAILABLE
EEPROMClass EEPROM_t
Definition board_avr2560.h:63
uint16_t COMPARE_TYPE
The timer overflow type.
Definition board_avr2560.h:33
static void IGN1_TIMER_ENABLE(void)
Definition board_teensy35.h:133
static void IGN3_TIMER_DISABLE(void)
Definition board_teensy35.h:144
static void IGN1_TIMER_DISABLE(void)
Definition board_teensy35.h:142
static void FUEL2_TIMER_ENABLE(void)
Definition board_teensy35.h:116
static void FUEL1_TIMER_DISABLE(void)
Definition board_teensy35.h:124
static void FUEL4_TIMER_DISABLE(void)
Definition board_teensy35.h:127
static void IGN3_TIMER_ENABLE(void)
Definition board_teensy35.h:135
static void FUEL4_TIMER_ENABLE(void)
Definition board_teensy35.h:118
static void FUEL5_TIMER_DISABLE(void)
Definition board_teensy35.h:128
static void FUEL2_TIMER_DISABLE(void)
Definition board_teensy35.h:125
static void FUEL3_TIMER_DISABLE(void)
Definition board_teensy35.h:126
static void IGN5_TIMER_ENABLE(void)
Definition board_teensy35.h:137
static bool pinIsReserved(uint8_t pin)
Definition board_teensy35.h:64
static void FUEL7_TIMER_DISABLE(void)
Definition board_teensy35.h:130
constexpr uint16_t BLOCKING_FACTOR
Definition board_teensy35.h:60
static void FUEL7_TIMER_ENABLE(void)
Definition board_teensy35.h:121
static void FUEL3_TIMER_ENABLE(void)
Definition board_teensy35.h:117
static void FUEL6_TIMER_ENABLE(void)
Definition board_teensy35.h:120
static void IGN6_TIMER_DISABLE(void)
Definition board_teensy35.h:147
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:129
static void IGN7_TIMER_DISABLE(void)
Definition board_teensy35.h:148
static void IGN2_TIMER_DISABLE(void)
Definition board_teensy35.h:143
static void IGN8_TIMER_DISABLE(void)
Definition board_teensy35.h:149
static void IGN6_TIMER_ENABLE(void)
Definition board_teensy35.h:138
static void IGN2_TIMER_ENABLE(void)
Definition board_teensy35.h:134
static void IGN8_TIMER_ENABLE(void)
Definition board_teensy35.h:140
static void FUEL8_TIMER_DISABLE(void)
Definition board_teensy35.h:131
static void IGN4_TIMER_ENABLE(void)
Definition board_teensy35.h:136
static void IGN7_TIMER_ENABLE(void)
Definition board_teensy35.h:139
static void IGN5_TIMER_DISABLE(void)
Definition board_teensy35.h:146
static void IGN4_TIMER_DISABLE(void)
Definition board_teensy35.h:145
static void FUEL1_TIMER_ENABLE(void)
Definition board_teensy35.h:115
static void FUEL8_TIMER_ENABLE(void)
Definition board_teensy35.h:122
static void FUEL5_TIMER_ENABLE(void)
Definition board_teensy35.h:119
constexpr uint16_t TABLE_BLOCKING_FACTOR
Definition board_teensy35.h:61
static constexpr COMPARE_TYPE uS_TO_TIMER_COMPARE(uint32_t micros)
Convert µS to timer ticks.
Definition board_teensy35.h:29