Организация программ

Все о микроконтроллерах: AVR, PIC, STM8, STM32, Arduino, Altera, Xilinx, все что угодно. Этот раздел для всего что клацает байтиками.
Аватара пользователя
N1X
Сообщения: 321
Откуда: Беларусь, Гомель

Сообщение N1X » 21 мар 2012, 18:09

Собственно захотелось поговорить об этом, обсудить и быть может почерпнуть для себя что-то полезное, ибо в программировании я пока ламер )
А вопрос вот в чем: к каких случаях стоит применять RTOS, а в каких нет, и во втором случае каким образом лучше выстроить программу... Какие нюансы бывают в тех, или иных ситуациях?..

Вот к примеру делал я таймер (ну скорее "будильник"), который имеет 16х2 ЖКИ, 4 кнопки, IIC RTC, и через UART должен рулить одной железкой. Мозг - STM8S105.
Тут, я думаю, RTOS применить было оправдано, но я решил написать программу с нуля по одной основной причине: лучше изучить язык, подучиться приемам программирования... В общем как основу выбрал систему конечных автоматов на switch-case. Ну с модулями работы с периферией я кое-как разобрался (не до конца еще, но всеже), но в кучу все это еще никак не связал...
На данный момент очевиден один нюанс: реализация обмена данными между частями программы. К примеру: нужно отправить данные по IIC. Обработчик принимает указатель на массив, запускает автомат, который будет обрабатывать процесс передачи, и завершается. Но нам то еще не мешало бы знать как прошла передача и когда она завершилась... Тут уже приходится вводить систему сообщений, которые сигнализируют об определенных событиях...
Собственно как это реализовано в RTOS? Непонятна сама суть, там насколько я понял есть диспетчер, который рулит всеми задачами, т.е. мы можем вызвать какую-то функцию, к примеру ту же отправку по IIC, а внутри, когда нужно ждать завершения работы передатчика она может отдать управление другим (точнее диспетчеру) на время ожидания, потом управление ей вернут и останется принять решение о том, как прошла передача и вернуть значение при завершении функции?

P.S. вопрос может и вообще тупой, я обычно предпочитаю сначала вникнуть, насколько возможно, потом уже спрашивать, но что-то на поговорить потянуло... И кстати если есть ссылки на материал, где основы RTOS хорошо расписаны - буду рад ознакомиться...

Вернуться в «Микроконтроллеры и ПЛИС»



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 7 гостей