вопрос вот в чем: информация, которую я находил про частоту шима на атмеге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 - пару минут на подумать и посчитать, три строчки кода и вся работа выполняется аппаратно
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения