12#include "src/stdlib/type_traits.h"
13#include "src/stdlib/limits.h"
49#define _ANALOG_PINS_A0_A8 A0, A1, A2, A3, A4, A5, A6, A7, A8
50#define _ANALOG_PINS_A0_A14 _ANALOG_PINS_A0_A8, A9, A10, A11, A12, A13, A14
54#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega2561__)
56#elif defined(CORE_TEENSY)
57 #if defined(__MK64FX512__) || defined(__MK66FX1M0__)
59 #elif defined(__IMXRT1062__)
62#elif defined(STM32_MCU_SERIES) || defined(ARDUINO_ARCH_STM32) || defined(STM32)
64#elif defined(__SAME51J19A__)
65 #include "board_same51.h"
67#elif defined(EXTERNAL_BOARD_H)
68 #include EXTERNAL_BOARD_H
70 #error Incorrect board selected. Please select the correct board (Usually Mega 2560) and upload again
73#if defined(RTC_ENABLED)
75void boardInitRTC(
void);
80#define SET_COMPARE(compare, value) (compare) = (COMPARE_TYPE)(value)
static constexpr uint32_t ticksToMicros(COMPARE_TYPE ticks)
Convert timer ticks to µS.
Definition board_avr2560.h:50
uint8_t getSystemTemp(void)
Get the board temp for display in TunerStudio (optional)
constexpr uint32_t MAX_TIMER_PERIOD
The longest period of time (in uS) that the timer can permit.
Definition board_definition.h:83
storage_api_t getBoardStorageApi(void)
Get the storage API for the board.
void boardInitPins(uint8_t boardID)
Pin specific initialisation (optional - can be empty)
void jumpToBootloader(void)
Trigger the boot loader (optional)
void initBoard(uint32_t baudRate)
Initialise the board, including USB comms.
void doSystemReset(void)
Reset the board (optional)
uint16_t freeRam(void)
Calculate free RAM for display in TunerStudio.
Defines the required external storage API plus some convenience functions built around that API.
The external storage API. This must be supported by any storage system. E.g. EEPROM,...
Definition storage_api.h:18