TcMenu / TaskManagerIO

A task, event, scheduling, and interrupt marshalling library for Arduino and mbed boards.
Apache License 2.0
125 stars 14 forks source link

Get tasks / platform determination working for regular Arduino including AVR and SAMD #3

Closed davetcc closed 4 years ago

davetcc commented 4 years ago

This task is to ensure that the lower performing Arduino cores work properly with this change. We'll do this by using noInterrupts and interrupts where we cannot guarantee atomicity by word size. There's not really threading on these boards, by any stretch so the above combined with volatile and spin waiting should be more than enough to guarantee thread safety

davetcc commented 4 years ago

Tested on Mega2560 and MKR boards. This means we can support SAMD and AVR processors.