вопрос вот в чем: информация, которую я находил про частоту шима на атмеге16 всегда была привязана к разрядности таймера, делителя (прескаллер) и частоты основного генератора - то есть достаточно ограниченный диапазон частот.это навсегда или я знаю не всё ?
ну точно также можно напрячься и понять вопрос. вот формулы расчета частоты шим. здесь только несколько комбинаций. сюда можно подставить кварц 1-4-8 мгц. можно менять битность таймера, можно менять делитель и всё.
Заголовок сообщения: Re: atmega 16: можно получить любую частоту шим (pwm) или не
Добавлено: Пн июн 14, 2010 08:11:34
Открыл глаза
Зарегистрирован: Сб май 08, 2010 09:33:42 Сообщений: 79
Рейтинг сообщения:0
А еще можно почитать про режим CTC (очистка таймера по совпадению с заданным числом). С помощью этой функции можно повысить частоту ШИМ с одновременным снижением точности
Про "напрячься и понять вопрос" - это в корне не адекватное высказывание. Во-первых, тот, кто делает проект по определению должен больше "напрягаться", чем тот, кто помогает. Во-вторых, "помогать" давая готовые формулы - медвежья услуга. Так человек, требующей помощи не обретает никакого знания (а получает лишь частное следствие от требуемых знаний по вопросу), а также будет еще в большей степени обречен мучить своими вопросами более правильно образованных котов
А на чем еще самообразовываться, если не на готовых формулах и примерах исходников? Вы, когда все это изучали, не пользовались чужими готовыми примерами, формулами с проставленными в них числами? Я не прошу делать за меня проект! Я задал чисто теоретический вопрос и написал на чем он основывается, ответ на который "да" или "нет". Тебя это сильно замучает? Вот, например, нужно получить произвольную частоту 1,3,6,13,26 кгц шим от внутреннего генератора 8 мгц.Это возможно? Я даже не спрашиваю КАК это делать.Вопрос в том, ВОЗМОЖНО ли это? Это теоретический вопрос.
А на чем еще самообразовываться, если не на готовых формулах и примерах исходников? Вы, когда все это изучали, не пользовались чужими готовыми примерами, формулами с проставленными в них числами?
Есть ещё документация, в том числе даташиты.
zybex писал(а):
Вот, например, нужно получить произвольную частоту 1,3,6,13,26 кгц шим от внутреннего генератора 8 мгц.Это возможно?
Если есть возможность настроить делитель так чтобы он получал эту частоту, то можно. А частота может сначала делиться на степень двойки(прескалер), причём не на каждую(смотри даташит), и затем на любое целое число в от 2 до 2^разрядность таймера.
Так что 1кГц из 8МГц получить можно, а 3,6,13 и 26 кГц - нельзя. Хотя можно взять близкую частоту.
zybex писал(а):
от внутреннего генератора 8 мгц
Во-первых не забывай, что внутренний генерато не очень точный(без калибровки вполне может быть и +-10%). И во-вторых его частоту можно поменять, чтобы получить нужную частоту ШИМ.
Заголовок сообщения: Re: atmega 16: можно получить любую частоту шим (pwm) или не
Добавлено: Вт июн 15, 2010 15:12:10
Открыл глаза
Зарегистрирован: Сб май 08, 2010 09:33:42 Сообщений: 79
Рейтинг сообщения:0
Цитата:
а 3,6,13 и 26 кГц - нельзя.
Немного расшифрую фразу. На самом деле можно получить очень близкие частоты. Делаем так. делим частоту генератора на желаемую. Например, в килогерцах - 8000/26 = 307. Теперь мы знаем, что нужно делить на 307. Разделить режимом CTC в 8-разрядном ШИМ мы на столько не можем (а если применяем 16-разрядный счетчик, то можем - тогда получаем вообще ровно 26 кГц). применяем Prescaler на 2. 307/2 = 153. Отлично! Итак, при использовании предделителя на 2 и СТС по значению153, получаем частоту 8000/2/153=26.14 кГц. Для ШИМ о большей точности и мечтать нельзя!
Цитата:
Вы, когда все это изучали, не пользовались чужими готовыми примерами, формулами с проставленными в них числами?
как не странно, вообще не пользовался! Ни разу при освоении AVR я ни к кому не обратился за помощью, при том, что МК осваивал с нуля. Сейчас изучаю ARM, там без чужих библиотек просто нецелесообразно работать. Но вопросы я задаю только тогда, когда я изучил ВСЮ доступную литературу, которая по моему мнению связана с вопросом, и пришел к выводу,что на основании нее в принципе невозможно найти ответ на вопрос.
как не странно, вообще не пользовался! Ни разу при освоении AVR я ни к кому не обратился за помощью, при том, что МК осваивал с нуля.
Но я хочу сказать, что не все так могут... А если еще нет знаний английского - так вообще даташит похож на китайских шифр... Не все такие умные , учитывайте это.
Который раз гуглом ищу вопрос, нахожу его на форуме... а отвечают догадайтесь что? Иди в гугл, читай даташит... И так бесконечно. Никакой новой информации, никакого движения вперед. Сами подумайте...
_________________ Не променяю медь на ржавую несгорайку!
Заголовок сообщения: Re: atmega 16: можно получить любую частоту шим (pwm) или не
Добавлено: Вт июн 15, 2010 17:21:05
Открыл глаза
Зарегистрирован: Сб май 08, 2010 09:33:42 Сообщений: 79
Рейтинг сообщения:0
Читайте даташит, как работает ШИМ. Если проблемы с английским - есть товарищ, который занимается переводом даташитов и выдает их за книги по микроконтроллерам. К сожалению названия не могу привести, но найти думаю будет не сложно. Я понимаю, что разобраться с нуля в чем-то бывает сложно, ибо надо одновременно изучать разные вещи. Но с ШИМ думаю все просто - в даташите есть описание того, как он работает, последовательно и достаточно понятно вроде "считает до указанной цифры,выставляет 1 на выходе, по переполнению выход обнуляется". Данное предложение - уже почти что полное описание работы ШИМ, надо только разобраться в деталях. Про английский - мотивация понятна. Хочется сделать устройство, с минимумом затрат. Но стоит себя убедить, что цель не только устройство, но и повышение проф уровня - и все станет на свои места. Можно потихоньку, со словариком, переводить даташит. Это дольше, но если вытерпеть пару месяцев такого труда - потом все будет читаться само, ибо в даташитах инглиш - одно да потому. Москва не сразу строилась - мое знание Английского отнюдь не врожденное, к сожалению. Развивал также - сначала игры и винда нарочно установленные в английском варианте, потом даташиты и прочая литература.
Заголовок сообщения: Re: atmega 16: можно получить любую частоту шим (pwm) или не
Добавлено: Чт сен 16, 2010 08:15:52
Родился
Зарегистрирован: Ср май 26, 2010 13:48:40 Сообщений: 16
Рейтинг сообщения:0
Коротко, но достаточно понятно и с примерами, этот вопрос освещён в книге "Программирование на языке C для AVR и PIC микроконтроллеров" автор Ю.А. Шпак. Есть книжка "Микроконтроллеры AVR семейств Tiny и Mega фирмы Atmel" автор А.В. Евстифеев, всеми родинками похожая на собранные в кучу переводы даташитов. И книга "Микроконтроллеры семейства AVR фирмы Atmel" Гребнёв В.В. - сама не читала, но при беглом просмотре впечатление приятное осталось. Вот в этих книгах можете посмотреть и почитать, если с английским туго Сама только что решила проблему получения разных частот на выводах для Atmega329 и могу посоветовать для таких целей режим CTC - пару минут на подумать и посчитать, три строчки кода и вся работа выполняется аппаратно
Сейчас этот форум просматривают: eugenchen и гости: 1
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения