Ну, здесь Вы не правы. Извините, это Вы поторопились.dandan писал(а): Странно, у Вас
1E это 00010110 - это не режим СТС (судя по даташиту это режим NORMAL, считает до 0хFF)
у меня 00011110.
AVR Mega8 Timer2 в режиме генератора частоты
- aleksey_gregul
- Встал на лапы
- Сообщения: 130
- Зарегистрирован: Ср дек 29, 2010 17:30:34
Re: AVR Mega8 Timer2 в режиме генератора частоты
Последний раз редактировалось aleksey_gregul Ср фев 09, 2011 12:27:14, всего редактировалось 1 раз.
- Реклама
- DX168B
- Друг Кота
- Сообщения: 4468
- Зарегистрирован: Вс янв 24, 2010 19:19:52
- Откуда: Главный Улей России (Moscow)
- Контактная информация:
Re: AVR Mega8 Timer2 в режиме генератора частоты
Интересно, а почему на пятом такте? Чтобы успеть сменить значение в OCR?
I am DX168B and this is my favourite forum on internet!
- aleksey_gregul
- Встал на лапы
- Сообщения: 130
- Зарегистрирован: Ср дек 29, 2010 17:30:34
Re: AVR Mega8 Timer2 в режиме генератора частоты
Не понял вопроса. Про пятый я просто к примеру.
- DX168B
- Друг Кота
- Сообщения: 4468
- Зарегистрирован: Вс янв 24, 2010 19:19:52
- Откуда: Главный Улей России (Moscow)
- Контактная информация:
Re: AVR Mega8 Timer2 в режиме генератора частоты
Я тогда тоже не догнал. То есть событие происходит на следующем такте?
Ну, как Вы привели пример OCR=5.
Но событие произойдёт только в следующий такт, то есть когда OCR станет равным шести. Так?
Ну, как Вы привели пример OCR=5.
Но событие произойдёт только в следующий такт, то есть когда OCR станет равным шести. Так?
I am DX168B and this is my favourite forum on internet!
- aleksey_gregul
- Встал на лапы
- Сообщения: 130
- Зарегистрирован: Ср дек 29, 2010 17:30:34
Re: AVR Mega8 Timer2 в режиме генератора частоты
А изменить при Вашем прескаллере Вы обязательно успеете. Вы же не будете в прерывании выполнять какой-то длинный цикл, более 256 тактов. И лишь потом менять OCR.
Не OCR, а ТСНТ2! <-Это я к предыдущему сообщению.
Грубо говоря, по аналогии со схемотехникой, по заднему фронту.
Не OCR, а ТСНТ2! <-Это я к предыдущему сообщению.
Грубо говоря, по аналогии со схемотехникой, по заднему фронту.
Последний раз редактировалось aleksey_gregul Ср фев 09, 2011 12:38:11, всего редактировалось 1 раз.
- Реклама
- DX168B
- Друг Кота
- Сообщения: 4468
- Зарегистрирован: Вс янв 24, 2010 19:19:52
- Откуда: Главный Улей России (Moscow)
- Контактная информация:
Re: AVR Mega8 Timer2 в режиме генератора частоты
Я просто запускал таймер в режиме СТС и он сам чистил TCNT после сравнения с OCR, но это в другом МК. Частоту менял, изменяя содержимое OCR. Ну а если мне надо было менять в широких диапазонах, то менял уже и прескаллер. Есть ещё у некоторых МК такой бит Prescaller Reset.
При его установке в единицу, счётчик подделителя сбрасывается. Полезно при включенном подделителе. Тоже можно попасть в спад (задний фронт) То есть можно так сделать:
1. По прерыванию отправим новое значение в OCR
2. Дернем бит PSR2 и сбросим счётчик подделителя.
Теперь прескаллер будет считать такты заново.
При его установке в единицу, счётчик подделителя сбрасывается. Полезно при включенном подделителе. Тоже можно попасть в спад (задний фронт) То есть можно так сделать:
1. По прерыванию отправим новое значение в OCR
2. Дернем бит PSR2 и сбросим счётчик подделителя.
Теперь прескаллер будет считать такты заново.
I am DX168B and this is my favourite forum on internet!


