ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
26 ноября
74346
xanoy (21.11.2006 12:26, просмотров: 4668)
Такой вопрос: Автоматическое определение кварца. Вернулся к программированию после большого перерыва. Нужно было сделать повторно партию девайсов. В прошлой партии я поставил на тактирование Меги 7.3728 MHz кварц. В данной партии стоит кварц 11.0592 MHz. Но так как это было давно я упустил этот момент, и вчера потратил кучу времени пока вышел на проблемму. Мега отказывалась общятся по UART с другим девасиком. (из за кварца не та скорость передачи). Такие нуансы возникают и у других разработчиков.(в основном отдел поставки виноват - не смогли достать то - ставь это). Из за этого меняются версии прошивок, и следствие - услажняется ремонт и тестирование а также обновление девайсов. Собственно вопрос: Кто и как програмно решал данную проблему? Как лутше всего программно определить при первом включении девайса частоту тактирования? На ум приходит только использование всторенного сторожевого таймера. При включении девайса входить в функцию и таймером считать тики, и потом количество тиков в ячейку оперативки. После срабатывания сторожевого таймера девайс перегружается и таже функция определяет по значению ячейки в оперативке определяет какой кварц установлен. Ну а дальше значение кварца пишется в ячейку памяти, от значения которой пляшет вся остальная переферия.