Без описания |
Поиск в теме | Версия для печати |
lamakazzz |
Отправлено: 18 Апреля, 2011 - 15:16:05
|

Главнокомандующий

Сообщений всего: 328
Дата рег-ции: Янв. 2010
|
Пусть есть два МК: PRIMARY и BACKUP.
PRIMARY после старта инициализируется и если всё хорошо, то берет управление на себя, делает программу и заполняет собственную диагностику и передаёт её в BACKUP.
BACKUP после старта инициализируется и если всё хорошо,начинает выполнять такую же программу как и PRIMARY, но не управлять, и еще прослушивать диагностику PRIMARY.
Соответственно, если диагностика не была принята, то BACKUP становится PRIMARY, это значит что первый МК завис и его нужно сбросить.
Выбор между PRIMARY и BACKUP по первому старту, например, сделать с помощью задержки, а аппаратно (с помощью перемычки на ножках) определить это первый МК или второй.
А если МК взлетел после сброса, то нужно прослушать, есть ли диагностика. Если есть, то мы BACKUP, если нет - PRIMARY.
Синхронизация двух МК получится за два цикла основной программы.
ПО в обоих МК будет одинаковое. |
|
|
|
Поиск в теме | Версия для печати |
Страниц (2): « 1 [2] |
« Микроконтроллеры » |
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
|
  |
|
|
|