ATTiny13+PWM(f)

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 28
Зарегистрирован: Вс май 24, 2009 22:25:36
Откуда: Russia

Сообщение fox15 »

Привет вам господа Кошаки ! 8)


ATTiny13, использую внутренний генератор 4.8МГц, фьюз CKDIV8, стало быть частота 600 кГц

Собственно ШИМ !
DDRB = 0x1;
TCCR0A=0x83;
TCCR0B=0x04;
OCR0A=0x07;

получаю сигнал с частотой 9.470 Hz, (f=fclk/N*256)

А мне надо 10,79 Hz
Есть ли способ не прибегая к внешнему генератору получить эти заветные 10,79 герц :?

Премного благодарен за любую помощь в этом деле :beer:
Контактная информация:
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

fox15 писал(а): Есть ли способ не прибегая к внешнему генератору получить эти заветные 10,79 герц :?
Есть. Программный шим, через прерывания по совпадению, вам в руки.
PS: Но точно 10,79 Hz Вы всё равно не получите. Либо ~10,85Гц либо ~10,75Гц
PPS: Хотя, можно будет скорректировать частоту через delay в прерывании. Но это не есть гуд.
Контактная информация:
Реклама
Опытный кот
Аватара пользователя
Сообщения: 890
Зарегистрирован: Вт янв 20, 2009 14:49:08
Откуда: Гондурас, Мурманск

Сообщение DrWatson »

Можно и аппаратный: очистка TCNT по совпадению с OCR0A, а ШИМ получать с выхода OCR0B, надо-то в TCCR0B записать 0x0C, в TCCR0A записать 0x23, в OCR0A записать 0xD8, ну а в OCR0B - какой там надо ШИМ (главное меньше 0xD8) - получится те же 600 000/(256*(0xD8+1))~10,8Гц.
А для более точной установки придется поиграться с калибровочным регистром встроенного RC-генератора OSCCAL.
Хотя нет, он даст мигимальное изменение частоты примерно на 1%, что в данном случае не позволит достичь желаемого результата.
В таком случае поможет только внешний кварцевый генератор.
- Если вы такие умные, то почему тогда строем не ходите?
ἓν οἶδα ὅτι οὐδὲν οἶδα (с) Σωκράτης
GP1
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград

Сообщение GP1 »

DrWatson писал(а):Можно и аппаратный: очистка TCNT по совпадению с OCR0A
в режиме СТС - счетчик обнуляется автоматически.
Чем дальше, тем больше становлюсь занудой...
Изображение
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Опытный кот
Аватара пользователя
Сообщения: 890
Зарегистрирован: Вт янв 20, 2009 14:49:08
Откуда: Гондурас, Мурманск

Сообщение DrWatson »

И в режиме FAST PWM TOP=OCR0A, который я предложил, счетчик обнуляется при совпадении с OCR0A.
- Если вы такие умные, то почему тогда строем не ходите?
ἓν οἶδα ὅτι οὐδὲν οἶδα (с) Σωκράτης
Реклама
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»