Go to the documentation of this file.
7#ifndef TASKMANAGERIO_PLATFORMDETERMINATION_H
8#define TASKMANAGERIO_PLATFORMDETERMINATION_H
24#if defined __has_include
25# if __has_include ("zio_local_definitions.h")
26# include "zio_local_definitions.h"
31#if defined(BUILD_FOR_PICO_CMAKE)
32#include <pico/stdlib.h>
34#elif !defined(__MBED__) && !defined(BUILD_FOR_STM32CUBE_CMAKE) && !defined(BUILD_FOR_NATIVE_PLATFORM)
38#if (defined(__MBED__) || defined(ARDUINO_ARCH_MBED) || defined(TMIOA_FORCE_ARDUINO_MBED)) && !defined(ARDUINO_PICO_REVISION)
39#include "platform/mbedCas.h"
41#undef BOARD_SUPPORTS_PROPER_CAS
42#define IOA_USE_ARDUINO
43typedef uint8_t pintype_t;
44#include "platform/wrapAtomic.h"
46typedef uint8_t pintype_t;
47#define IOA_USE_ARDUINO
48#define BOARD_SUPPORTS_PROPER_CAS
49#include "platform/wrapAtomic.h"
50#elif defined(BUILD_FOR_PICO_CMAKE) || defined(ARDUINO_PICO_REVISION)
51#include "platform/picosdkSupport.h"
52#elif defined(BUILD_FOR_STM32CUBE_CMAKE)
53#include "platform/stmCubeCas.h"
54#elif defined(ARDUINO_ARCH_STM32)
55typedef uint8_t pintype_t;
56#define IOA_USE_ARDUINO
57#define BOARD_SUPPORTS_PROPER_CAS
58#include "platform/wrapAtomic.h"
59#elif defined(BUILD_FOR_NATIVE_PLATFORM)
60#include "platform/nativePlatform.h"
62#include "platform/arduinoFallback.h"
67#if defined(TM_ENABLE_CAPTURED_LAMBDAS) && defined(ARDUINO_ARCH_SAMD)
68# define TM_ALLOW_CAPTURED_LAMBDA
78#if defined(TM_FORCE_16BIT_SCHEDULER)
79typedef uint16_t sched_t;
81typedef uint32_t sched_t;
90#ifndef DEFAULT_TASK_SIZE
91#ifdef __AVR_ATmega2560__
92# define DEFAULT_TASK_SIZE 12
93# define DEFAULT_TASK_BLOCKS 8
95# define DEFAULT_TASK_SIZE 6
96# define DEFAULT_TASK_BLOCKS 4
98# define DEFAULT_TASK_SIZE 16
99# define DEFAULT_TASK_BLOCKS 16
102#ifndef DEFAULT_TASK_BLOCKS
103#define DEFAULT_TASK_BLOCKS 8
112#if defined(ESP8266) || defined(ESP32)
113# define ISR_ATTR IRAM_ATTR
122# if !defined(TM_ALLOW_CAPTURED_LAMBDA) && defined(TM_ENABLE_CAPTURED_LAMBDAS) && __GNUC__ >= 5
123#if __has_include(<functional>)
124# define TM_ALLOW_CAPTURED_LAMBDA
129#define internal_min(a, b) ((a) > (b) ? (b) : (a))
133#define internal_max(a, b) ((a) < (b) ? (b) : (a))
Definition TaskTypes.h:163