слушай а есть вариант ну самого ниебически минимальной реализации диспетчера задач с вытеснениями
я когда то себе написал обработчик задач в главном цикле с поддержкой системного таймера,(все как обычно но на макросах с извратом), всего хватает, но чет без вытеснения уже тяжеловато.
ставить монстра типа фриртоса не хочется, а самому хуевертить акробатику со с прыжками по коду и стеками вызовов вот совсем не охота