реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> ATtiny2313 режим CTC
ClipArt
сообщение Nov 19 2010, 23:13
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 19-11-10
Пользователь №: 61 024



Не могу разобраться с режимом CTC у ATtiny2313. Используется внешний кварцевый резонатор на 4 MHz. Необходимо настроить срабатывание 16-разрядного таймера каждые полсекунды. Согласно даташиту, формула расчета частоты такова:

Значит формула расчета OCRnA:

Дело в том, что при таком расчете таймер срабатывает в два раза чаще, чем нужно. Вот код инициализации (предделитель равен 64):
Код
    TCNT1 = 0;
    TCCR1B = (1<<WGM12)|(1<<CS11)|(1<<CS10);    
    OCR1A = 0x3D08;
    TIMSK = (1<<OCIE1A);

Возникают следующие вопросы:
  1. Зачем нужна двойка в знаменателе? Если ее не учитывать, расчет получается верным.
  2. Я принимаю, что частота CLK_I/O равна 4 MHz. Чему в действительности равна эта частота?
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Nov 20 2010, 00:09
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Эта формула для частоты , котоая будет генерироваться на выходе pins OCnA OCnB т.е ( например) при первом совпадении установится ноль на выходе порта , при втором высокий уровень .
Если Вам не нужен выход частоты -двойка не нужна


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
ClipArt
сообщение Nov 20 2010, 00:32
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 19-11-10
Пользователь №: 61 024



Спасибо, теперь все понятно.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 17:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01643 секунд с 7
ELECTRONIX ©2004-2016