Yet another set of classes supporting cooperative multitasking for the Arduino. Designed for memory-constrained applications. Includes classes for oneshot, fixed and capped rate tasks, as well as pin pulsers and debounced switches. Also includes a "blockable" task, which supports timed sleep, conditional wait, non-nested looping, and timeouts. Times are specified in microseconds, to achieve better than millisecond resolution (depends on processor speed and task work). Does not use interrupt handling, making classes easy to modify and extend.
Documentation for usage and implementation is provided in the .h files of the library. JonbTask.ino demonstrates usage and the various features of the library. Note that the F() macro is used for strings as memory conservation was a primary development constraint.
This project includes all dependent libraries.
Features
- Arduino library
- cooperative multitasking
- repetitive tasks
- blockable tasks
- switch debounce
- sub-millisecond resolution