До тех пор, пока не нарвешься Рассмотрим обычную передачу по ком-порту без RTOS. Зачем основному циклу лазить в регистры ком-порта, это дело прерывания.
Это если очень упрощенно. А давайте-ка рассмотрим обычную передачу по софтовому ком-порту? А на этом же порту контроллера еще и ЖКИ висит...
Да и с аппаратным тоже не все так просто, они разные бывают
Избавление от возможного конфликта (не писать в прерывании, разнести во времени) требуют тоже мозговых усилий. И не всегда получается так сделать. А тут и усилий никаких не нужно.
Вообще, если используется RTOS можно полностью отказаться от глобальных переменных и использовать для синхронизации и передачи данных только сервисы RTOS. Но вот с периферией всегда засада.