Вопрос по таймеру 1 в ATmega8L
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено vic44 16 октября 2003 г. 19:30

Не сталкивался ли кто со следующей проблемой установки Timer1 в mega8 для работы например в СТС mode для вывода меандра через вывод ОС1?
Судя по мануалу и заметкам по применению от Атмел, достаточно разом прописать TCCR1A и TCCR1B нужными битами делителя, режима СТС, СОМxx чтоб ОС1 работал по переключению, загрузить OCR1, разрешить выводу порта ОС1 работать на выход и все будет ОК. Фиг там, что-то не выходит. Складывается впечатление, что сначала нужно загрузить делитель, подождать, загрузить режим работы, подождать, установить СОМx, подождать и только потом разрешить порт на вывод? Это так или что-то не понимаю?
Например, подпрог-ма должна выдать 2 БИП ( т.е. меандр 1000гц (0.1сек) и пауза 0.1сек). Изначально таймер в нормальном режиме. Подпрог-ма делает все что описано выше для установки таймера и потом "играет" DDRB (вход-выход) через 0.1сек, после переводит таймер в нормальный режим. Так вот. При первом вызове этой проги (после подачи питания на контролер, на ОС1 вижу не два пакета меандра, а только два переключения 0-1-0-1-0 через 0.1сек. Но во время второго вызова уже "бипает". В чем может быть залипуха?

Спасибо за советы

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

Ответы



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

E-mail: info@telesys.ru