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

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

Отправлено Ralex 01 апреля 2005 г. 11:40
В ответ на: Люди подскажите начинающему на AVR отправлено Sotnikovsa 01 апреля 2005 г. 11:13

Читай про таймеры. Нужно настроить пределитель таймера 1 на деление на 64 и выбрать режим CTC с обнулением по сравнению (наиболее удобно) - это всё регистр TCCR1B, определить OCR1A=62500. Далее, если работать без прерываний, ждать пока не установится флаг OCF1A в регистре TIFR, как установится - сбросить его записью в него единицы и считать, что от того момента, как ты в последний раз его ждал и сбрасывал, прошла секунда.
В цикле кроме анализа флага таймера нужно анализировать входную ножку, к которой у Вас подключен источник импульсов, и считать их в программном счётчике.
Есть и более прогрессивные методы - например, для подсчёта импульсов использовать таймер 0 (ножка T0), а для измерения времени - таймер 1. Тогда подсчёт импульсов будет вестись автоматически, а Вам нужно будет только по флагу таймера 1 забирать число импульсов из таймера 0 и обнулять таймер 0 (и флаг таймера 1).

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

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


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

E-mail: info@telesys.ru