[an error occurred while processing this directive] [an error occurred while processing this directive]
Ответ: Сорри, все равно не согласен.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено Сергей Борщ 22 ноября 2001 г. 17:39
В ответ на: Объясняю ситуацию. отправлено Alexandr 22 ноября 2001 г. 14:02

В качестве подтверждения предлагаю в MainLoop проверять OFIFG и выводить его состояние в порт. Вы увидите, что в случае сбоев OFIFG установлен, следовательно система тактируется от DCO и ожидать от нее интервалов, рассчитанных под кварц не приходится.

Видать, при старте возник момент, который система определила ка "кварц колеблется", Вы его отловили и пошли дальше. А кварц еще не устаканился, попал в положение, которое система посчитала за сбой и переключилась на DCO. А Вы уже ушли...
В SLAU049a (стр. 7-7) указано, что The XT_OscFault signal becomes inactive when XT2CLK and/or LFXT1CLK have been oscillating for approximately 50 µs. XT_OscFault becomes active after XT2CLK and/or LFXT1CLK stop oscillating.
---> The delay associated with the XT_OscFault signal is approximately 50 µs.

А процесс выхода в устойчивый режим вашего кварца может быть несколько больше.
Подобной ситуации не возникнет, если использовать прерывание по OFIFG.

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

Ответы



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

E-mail: info@telesys.ru