Если про контроллер... лично я считаю применение ООП на контроллерах ну нето чтобы извращением, а не совсем оправданным. Ну, а при процедурном программировании и использование глобальных переменых для обмена данными между потоками или главным потоком(он же main) и прерывними нормальное явление.
Да, передачу сообщений можно организовать и без операционки к примеру так:
1 Организуете циклический буфер, обзываете его "очередь сообщений".
2 Предоперделяете какую то струтуру обзываете ее "message"(нужно предусмотреть поля ТИП СООБЩЕНИЯ ну и информационные поля)
3 если нужно передать сообщение то динамически (с помощью функции new iar, если достаточно памяти эту функцию поддерживает) создаете струтуру "message", а ссылку на нее записываете в "очередь сообщений"
4 дальше все и так ясно
E-mail: info@telesys.ru