Yo iría a por la programación cooperativa.
Teóricamente con este método o con cualquier RTOS se crea aplicaciones con mas confiables si haces un buen estudio completo de tus funciones y los requerimientos en términos de tiempo puedes tener ticks de ?-segundos.
En esta web Telmtron tienes un ejemplo para AVR y Arduino.