Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.76/17: Рейтинг темы: голосов - 17, средняя оценка - 4.76
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
1

atmega32A Timer1

04.05.2013, 21:13. Просмотров 3066. Ответов 5
Метки нет (Все метки)

возможно ли получить две разных частоты (меиндр) на выводах OC1A и OC1B?
чего-то туплю, как для этого настроить Timer1?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.05.2013, 21:13
Ответы с готовыми решениями:

Atmega32A и АЦП
Подскажите, где у меня ошибка в инициализации? Пытаюсь настроить АЦП в режим непрерывного...

ATmega8a, ATmega32a и т.д.
Доброго времени суток! Компания атмель вместо родных нам мег восьмых, шестнадцатых и т.д. стала...

Atmega32a перестал отзываться
Собственно, суть в теме. Прошиваю самодельным программатором APU-2, тот, который на FT232. На ПК...

Не заводится DS2480B от AtMega32a
Всем доброго времени суток! Чтобы завести эту микросхему, даташит рекомендует послать следующую...

Atmega32A - чем программировать?
Всем привет! Имею программатор USB ASP, Amego32A, AVR Studyo 4.19. При создании проекта Atmega с...

5
Stiit.mi
0 / 0 / 0
Регистрация: 26.04.2010
Сообщений: 1,445
04.05.2013, 21:38 2
нет. Таймер-то один. Можно получить разное заполнение ШИМ при одной частоте.
0
OtixPM
0 / 0 / 0
Регистрация: 11.01.2013
Сообщений: 5,483
04.05.2013, 21:44 3
Цитата Сообщение от hixir
возможно ли получить две разных частоты (меиндр) на выводах OC1A и OC1B?
чего-то туплю, как для этого настроить Timer1?
Можно получить кратные частоты, если в обработчике ISR OCR-канала с большей частотой программно перестраивать параметры OCR.
Например, OC1A считает до 1000, а OC1B до 100. В oc1b_isr() переносим значение OC1A на 200, потом на 300, и т.п. Получим две частоты в соотношении 1:10.
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
04.05.2013, 21:46 4
Цитата Сообщение от Stiit.mi
Можно получить разное заполнение ШИМ при одной частоте.
это мне доступно, я понимаю. спасибо.
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
04.05.2013, 21:48 5
Цитата Сообщение от OtyxPM
Можно получить кратные частоты, если в обработчике ISR OCR-канала с большей частотой программно перестраивать параметры OCR.
Например, OC1A считает до 1000, а OC1B до 100. В oc1b_isr() переносим значение OC1A на 200, потом на 300, и т.п. Получим две частоты в соотношении 1:10.
примерно в этом направлении и мыслю.
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
05.05.2013, 20:55 6
Цитата Сообщение от hixir
возможно ли получить две разных частоты (меиндр) на выводах OC1A и OC1B?
эксперимент показал - да, можно.
идея такая: в обработчике ISR OCR-каналов к Output Compare Register прибавляется константа, которая и определяет генерируемую частоту. осциллоскопа не было, проверял "на слух" :))
опыты ставились при работе Timer1 в режиме Normal, без прескалера, режим Compare Output - Toggle по совпадению.
например OCR1A+0x1000, OCR1B+0x1003 дает вполне себе бинауральное звучание (все мозги высвистел, сволачь)
ps. собственно идея не моя - в MSP430 этот метод используется в bsl для софтового последовательного приёмопередатчика.
pps. step forth
0
05.05.2013, 20:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.05.2013, 20:55

Atmega32A, где ошибка?
Есть вот такая схема, на Atmega8 порт В нормально работал, но здесь,на Atmego32A, почему-то не...

проблема прошивки atmega32a
Здравствуйте. Шью ATmego32A через программатор ABR910 и SinaProk. Код программы: .include...

Прием и передача данных через UART интерфейс. Atmega32A
Итак, написал очень простой код для МК мега32. #define F_CPU 12000000UL #define BAUDRATE 9600 ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru