[an error occurred while processing this directive] [an error occurred while processing this directive]
Честно говоря, самому приходилось когда-то в программе для 51-го специально пины на вход/выход конфигурировать в фоне - после этого программа заработала, а до этого иногда "не реагировала" на вход (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено Беня 17 апреля 2002 г. 16:57
В ответ на: Применяю подобную стратегию повсеместно, неукоснительно и успешно. Никогда не верю регистрам/триггерам/ОЗУ как местам хранения констант. отправлено BLACKEAGLE 17 апреля 2002 г. 16:30

Это были какие-то советские 51-е процессоры.
А еще был проект с использованием внешнего ОЗУ (данные были в энергонезависимой памяти и к ним довольно долго доступаться - при старте переписывались во внешнее ОЗУ, куда к ним было намного быстрее доступаться), то приходилось данные во внешнем ОЗУ защищать контрольной суммой и иногда проверять - при несовпадении я их снова перечитывал (иногда слетало :-((( ). Ну а что касается внутреннего ОЗУ и регистров, то мне кажется что если они слетят, то это будет фатальной ошибкой (это и указатель стека и адреса возврата функций и служебные регистры, задающие режим работы всей периферии - и таймеров и UART и др.). В этом случае WatchDog сработает. А до проверок и переинициализации скорее всего ваша программа просто не дойдет - слетит раньше.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru