[an error occurred while processing this directive] [an error occurred while processing this directive]
глюк с таймером 2 у AVR 90s8535
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено Yuta 09 октября 2001 г. 13:37

Интересный факт.
Сделал устройство на 8535 avr. Не очень сложное: измеряет время, измеряет сигнал, пишет во Flash, по UART отдаёт, из устройств индикации только пищалка. Все замечательно, все работает. Сделали 8 штук - все хорошо. Еще 8 все зашибись.

Со следующей восьмеркой началось интересное:
5 работают нормально, 3 вроде бы работают, но пищат не так, как должны, хотя все одинакого. Замена на одном из них контроллера помогла. Временно забили. Потом сделали ещё 16, из них не заработали 12 штук. Стали разбираться.

AVR генерирует определенную последовательность, по 4-м ногам необходимую для работы интегратора и автоподстройки коэффициента усиления.

Последовательность формируется на асинхронном таймере 2,таймере 1 и АЦП. Таймер 2 отсчитывает интервалы 20 и 10 мс со внешнего источника 1 кГц. OCR2 переписывается в обработчике. В нем же, при 10 мс интервале, запускается таймер1 на 8 мс от system clk. В обработчике таймера 1 запускается АЦП и останавливается таймер 1. Обработчик АЦП пихает померенный сигнал в буфер, легко успевает все сделать до окончания 10 мс. Тактовая частота 1.8432 МГц. За буфером следим из основной програмы.

На неправильно работающих последовательность генерировалась неправильная. Выяснилось, что таймер 2 отсчитывает интервалы не 20 и 10, а 10 и 5. Навешивание резистора на TOSC2 не помогло, аналогичный результат от резисторов и RC цепочек по входу TOSC1. Увеличение значений, записываемых в OCR2 привело в выправлению последовательности, но это же просто не спортивно.

Может быть кто сталкивался с подобными проблемами. Для сильно заинтересовавшихся, могу выслать СИшный код этого куска.

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

Ответы



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

E-mail: info@telesys.ru