En este caso, ¿STM32 requiere un sistema operativo en tiempo real?
Los sistemas operativos como uCOSII y RTX implementan principalmente funciones de subprocesos múltiples mediante conmutación de temporizador.
La programación básica a menudo requiere llamar a funciones de retardo para esperar. En este punto, la CPU está mayoritariamente inactiva (por ejemplo, la ejecución de un bucle for está retrasada). Cuando se agrega un sistema operativo en tiempo real, el RTOS utilizará temporizadores para el cambio de tareas. Al llamar a la función de retardo del sistema, en lugar de dejar que la CPU realice un ciclo, determina si hay otras tareas que deben realizarse. Esto mejora la eficiencia de ejecución de la CPU. Pero RTOS necesita ocupar el temporizador. Y provocará graves problemas como consumo de RAM y reducción del rendimiento en tiempo real.
El uso o no de un RTOS es una cuestión de opinión. Pero desde una perspectiva de aprendizaje, saber un poco sobre RTOS es muy útil para mejorar tu nivel de código