[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
В качестве подтверждения предлагаю в 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