Чувствую, что вопрос был с подъ..бкой, поэтому сразу отвечу
не было подъ..бки - я просто уже неделю бьюсь над вопросом программного "ТОЧНОГО" изменения частоты ШИМ
Цитата:
Например, в ATtiny2313 для таймера0 в режимах FastPWM(режим5) или PWM, FaseCorrect(режим7) это регистр OCR0A.
извините, но этот регистр отвечает за скважность, а не за частоту; при неинвертированном сигнале получим
OCR0A=0x40 //25% ШИМ
OCR0A=0x7f //50% ШИМ
OCR0A=0xC0 //75% ШИМ
применительно к практике - нужно создать маленький проектик ШИМ генератора со скважностью 50%, где была бы возможность изменения частоты без замены кварца в пределах 30-40 кГц
Карма: 1
Рейтинг сообщений: 3
Зарегистрирован: Пн сен 01, 2008 14:49:03 Сообщений: 151 Откуда: Казахстан
Рейтинг сообщения:0
day177 писал(а):
...извините, но этот регистр отвечает за скважность, а не за частоту; при неинвертированном сигнале получим OCR0A=0x40 //25% ШИМ
Ну да. OCR0A - это скважность для канала А. А мы берём сигнал с канала В. Я же зацепил выше примерчик..
Есть ещё режимы, когда значение ТОР берётся из регистра ICRn. Но не во всех Мк. В 2313 такого нету. А, например в Мега16 этот режим есть для 16-битного таймера 1 (режимы 8, 10, 12, 14 по табличке 47 в даташите).
Зарегистрирован: Вт сен 30, 2008 09:23:14 Сообщений: 209 Откуда: Краснодарский край
Рейтинг сообщения:0
Ничего себе вы тут накрутили. Даже незнаю вставлять дальше свой вопрос или нет. Пожалуй вставлю.
Вывел 3 ШИМ на Attiny2313 !!!! Ну надо же их кудато девать... В генераторе кода установил кристалл 4 Мгц, разделил его на 256
В настройках таймеров указал что использовать нужно полученный сигнал
без доп делений. Т.е. по идее я должен был получить на всех выходах частоту
15 Кгц, что мне как бы достаточно для управлением мотрчиками.
Но! В Протеусе 7.4 получилась такая картина. На выходах Таймера 1 есть 15 Кгц
А на выходе таймера 0 - 62 Кгц. Т.е на таймер 0 поступает тактовый сигнал СК/64.
Откуда?
Ведь генератор кода четко указал
CLKPR=0x80; //0b10000000 - тут, как я думаю мы разрешаем работу 10 бит делителя. Правильно?
CLKPR=0x08; - //0b00001000 - Тут все ясно, делим кварц на 256
Тогда почему сразу нельзя было загнать в этот регистр, сразу ?
CLKPR=0b10001000
Я пробовал так, но тогда мы получали просто тактирование СК.
Протеус уже на выходе Таймера 0 выдавал частоту 15 Мгц.
Непонятно, глючит он что-ли или модель МК кривая?
Кстати лекартво которое я скачал для версии 7.4 не лечит. Он все так же Демо и не может сохранить проект
Карма: 1
Рейтинг сообщений: 3
Зарегистрирован: Пн сен 01, 2008 14:49:03 Сообщений: 151 Откуда: Казахстан
Рейтинг сообщения:0
tych писал(а):
Еще сильней глаза протрите !
Успокойтесь, зоркий Вы наш! Смотри на тему топика и первый пост. Где М16?? У Вас, батенька, галюцинации...
tych писал(а):
Разговор шел о том что 2 ШИМ уже сделали на таймере 1 и проблема возникла с выводом ШИМ на КОНКРЕТНУЮ НОГУ OC2 !
По идее разговор должен идти о том, что хотел топикстартер, а то, что дальше по ходу дела вообще отошли от темы, и стали обсуждать сколько где ШИМов и как их включить, - это всего лишь побочные проблемы на грани флуда. Причём упоминались всякие МК, от Tiny2313 до Мега128. Тем не менее, я со своей стороны, признаю, что рулить частотой 2-го таймера в Меге16 действительно можно только по-вашему. Но считаю, что если уж приспичело менять частоту, то надо или использовать 1-й таймер или другой МК.
А Вы, тыч, только и умеете "стрелки переводить", да дерзить... некрасиво однако!
Использование модульных источников питания открытого типа широко распространено в современных устройствах. Присущие им компактность, гибкость в интеграции и высокая эффективность делают их отличным решением для систем промышленной автоматизации, телекоммуникационного оборудования, медицинской техники, устройств «умного дома» и прочих приложений. Рассмотрим подробнее характеристики и особенности трех самых популярных вариантов AC/DC-преобразователей MW открытого типа, подходящих для применения в промышленных устройствах - серий EPS, EPP и RPS представленных на Meanwell.market.
Успокойтесь, зоркий Вы наш! Смотри на тему топика и первый пост. Где М16 ??
А что мега16 это не мега ? и я не про ШИМ на меге писал ?
YurkaM писал(а):
У Вас, батенька, галюцинации...
Дак это вы в треморе лепите про ТИНИ сами же напоминая что топик про МЕГУ ! Глючит дружок ? Бывает.
YurkaM писал(а):
По идее разговор должен идти о том, что хотел топикстартер
Он хотел про ШИМ в Меге - я про это и пишу. вы ЛЕЗЕТЕ с ТИНИ ! супротив вашей же ИДЕИ.
YurkaM писал(а):
признаю, что рулить частотой 2-го таймера в Меге16 действительно можно только по-вашему.
Ну и славненько !
YurkaM писал(а):
А Вы, тыч, только и умеете "стрелки переводить", да дерзить...
Опять проглючило вас ? только что выше вы признали ято я дал человеку рабочий код, а теперь ришите ято я ТОЛЬКО стрелочник.
YurkaM писал(а):
некрасиво однако!
Вы только пришли на форум и вы как раз и ведете себя не красиво ИМХО. За других не знаю.
Где вы в рунете или интернете видели форум чтоб весь многостраничный топик обсуждал то что написал автор топика ?
( топикстартер - это не для рускоязычного форума явно)
Это нормальное дело когда по ходу обсуждения разговор остается в теме топика но обсуждаются вопросы других участников заданые в топике.
А флуд - это как раз ваше выдумавыние бреда не сужествующего в даташите и обвинение по сути авторов компиляторов ICC CVAVR IAR в незнании МК под которые они создают программы.
_________________ Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Карма: 1
Рейтинг сообщений: 3
Зарегистрирован: Пн сен 01, 2008 14:49:03 Сообщений: 151 Откуда: Казахстан
Рейтинг сообщения:0
tych писал(а):
Дак это вы в треморе лепите про ТИНИ сами же напоминая что топик про МЕГУ ! Глючит дружок ? Бывает.
tych писал(а):
Он хотел про ШИМ в Меге - я про это и пишу. вы ЛЕЗЕТЕ с ТИНИ ! супротив вашей же ИДЕИ.
Тини взят для простоты написания и понимания. Переделать мой пример под мега не трудно. Ну хорошо. ATmega48 это Мега надеюсь? Для таймера2 там есть режимы, которые можно использовать для изменения частоты (5 и 7 в таблице 16-8 даташита).
tych писал(а):
Вы только пришли на форум и вы как раз и ведете себя не красиво ИМХО. За других не знаю.
Зато я не гордый и не страдаю манией величия, ошибки признаю. Грешен, терпелки не хватает, на грубости плохо реагирую..
tych писал(а):
топикстартер - это не для рускоязычного форума явно
А Вы у нас образец русского языка: "Позырьте, зырте, ТочнА, адназначна, готовая библа, Ужас нах, в треморе..." - это Ваше, навскидку с одного лишь топика.
tych писал(а):
Это нормальное дело когда по ходу обсуждения разговор остается в теме топика но обсуждаются вопросы других участников заданые в топике.
Тема была весьма конкретная, про изменение частоты ШИМ.
tych писал(а):
Вы только пришли на форум и вы как раз и ведете себя не красиво ИМХО. За других не знаю.
Зато Вы много где засветились, и от этого у Вас, похоже, неадекватно возросла самооценка.
Подозреваю, что Вы вообще не знали о возможности менять значение TOP в ШИМах, т.к. не вспомнить про это при вопросе о частоте просто невозможно.
Короче, давайте закончим бодаться. (Можете вставить последнее слово, Вы ж не допустите, что бы оно было не Ваше?..)
Лучше вот подскажите day177, ему нужен меандр с изменяемой частотой 30-40кГц. А то я тут со своими асемблерами никому не понятен... То ли дело Си - пару кликов мышкой, и готово.
Ну хорошо. ATmega48 это Мега надеюсь? Для таймера2 там есть режимы, которые можно использовать для изменения частоты (5 и 7 в таблице 16-8 даташита).
А я писал что нет ? или кто-то другой оспаривал сей ФАКТ ???
Вопрошающий ПОМОЩИ пишет - "на Меге16 2 ШИМ УЖЕ работают, как мне запустить ШИМ на OC2"
Вы ему отвечаете: "выкинь мегу16 возьми мегу48"
Это нормально по-вашему ?
Или нормально сделать то что я сделал - пояснил как запустить 3-й шим на меге16.
YurkaM писал(а):
tych писал(а):
топикстартер - это не для рускоязычного форума явно
А Вы у нас образец русского языка: "Позырьте, зырте, ТочнА, адназначна, готовая библа, Ужас нах, в треморе..." - это Ваше, навскидку с одного лишь топика..
и ЧЁ тут не русское ? Тремор мед. термин.
YurkaM писал(а):
Тема Тема была весьма конкретная, про изменение частоты ШИМ.
а я не про нее писал ?
YurkaM писал(а):
Подозреваю, что Вы вообще не знали о возможности менять значение TOP в ШИМах, т.к. не вспомнить про это при вопросе о частоте просто невозможно.
КОНЕЧНО НЕ ЗНАЛ !!! откель ? Я ж 6 задачу курса выдамал всю - а про мастер ICC ни сном ни духом !
YurkaM писал(а):
не вспомнить про это при вопросе о частоте просто невозможно.
Только нафига вспоминать ТО ЧЕГО НЕТУ в конкретном случае. а конкретный случай я скриншотом большим на прошлой страниче подкрепил.
YurkaM писал(а):
Лучше вот подскажите day177, ему нужен меандр с изменяемой частотой 30-40кГц. А то я тут со своими асемблерами никому не понятен... Толи дело в Си - пару кликов мышкой .
Зарегистрирован: Вт сен 30, 2008 09:23:14 Сообщений: 209 Откуда: Краснодарский край
Рейтинг сообщения:0
А вы демо версией ICC пользуетесь? или есть где то ломаная?
Image Craft седьмую версию предлагает, я так понял 42 дня полнофункционал, а дальше ограничение кода.
Зарегистрирован: Вт сен 30, 2008 09:23:14 Сообщений: 209 Откуда: Краснодарский край
Рейтинг сообщения:0
Ну с формированием ШИМ разобрались. Теперь хотелось бы узнать что с ним делать дальше. Как качать нагрузку постояным напряжением - это понятно. А вот по тому как это делать в сети с переменным напряжением не совсем ясно. Вобщем проблема такая - водяной насос при старте, нереально просаживает напругу в доме. Я переделал штатное защитное утройство для плавного пуска ламп, под более мощную нагрузку, но оно все равно потом сгорало, так как не предназначено для таких нагрузок, но проседаний не было.
Я понимаю что на выходе ШИМ должен стоять Триак который и будет коммутировать нагрузку. Но как правильно им управлять ШИМ?
Я так же знаю, что импульсы ШИМ нужно как-то синхронизировать с сетью 50 Гц. Но как это нужно делать? Ловить момент перехода через 0? Нужно ли использовать для этого АЦП? или просто формировать внешнее прерывание.
Зарегистрирован: Вт сен 30, 2008 09:23:14 Сообщений: 209 Откуда: Краснодарский край
Рейтинг сообщения:0
Вот я и хочу сделать диммер помощнее. Мой то сгорел. А какой там мотор - неизвестно. Глубоко в колодце и насмерть прикручено все.
Я вот это к чему. Если всетаки использовать Триак (старая схема так и работала), то как делать сонхронизацию (начало полож полуволны, переход через ноль или что-то еще)? В той схеме сигал через делитель поступал на некий вход МК, наверняка не зря. МК это PIC509. Ни прошивки не программы. Вот я и хочу сам сделать свой диммер и еще что нибудь М16-большой! Волнует только вот что если не запариваться по поводу синхронизации триака с сетевым напряжением - не пойдет ли он вразнос. Хотя на включениу режима ШИМ всего то нужно 3 сек.
Карма: 1
Рейтинг сообщений: 3
Зарегистрирован: Пн сен 01, 2008 14:49:03 Сообщений: 151 Откуда: Казахстан
Рейтинг сообщения:0
AndyWorld писал(а):
если не запариваться по поводу синхронизации триака с сетевым напряжением - не пойдет ли он вразнос.
Без синхронизации на триаке вряд-ли что-то получится. Тут только ключ на 2-х полевиках, как сказал tych или диодный мостик и 1 полевик.
А ноль сети выловить не трудно. Если не нужна гальваническая развязка (рискованый вариант если будут кнопки/ручки управления!), то можно тупо завести синус питания с любого провода вторички трансформатора через ограничительный резистор на вход INT. И не помешает подстраховаться стабилитроном на 4.7В. Для данного случая этого вполне достаточно, но если хочется более точно, то можно использовать встроенный компаратор, заведя сигнал с обоих концов вторички на его входы + и -. Через резисторы, естественно.
Зарегистрирован: Вт сен 30, 2008 09:23:14 Сообщений: 209 Откуда: Краснодарский край
Рейтинг сообщения:0
Нет трансформатор тут не пойдет, схема питания без него. На схеме GP5 GP4 это OSC1-2, запараллеленые наверное для увеличения токовой способности выходов МК. Вход GP0-GP1 в ДШ не описан. Можно конечно скачать прошивку (исходников нет)и тупо наштамповать этих диммеров, но это не интересно. Интересно сделать аналогичную схеу на АВР, поиграться с ШИМ в деле, изменять время включения диммера и т.д.
Схема диммера на копараторе, таймере LM555, оптомимисторе MOC3022 и симисторе MAC9 (вам помощней наверно нужен) есть в апноуте AN8011-D на сайте http://onsemi.com
Карма: 1
Рейтинг сообщений: 3
Зарегистрирован: Пн сен 01, 2008 14:49:03 Сообщений: 151 Откуда: Казахстан
Рейтинг сообщения:0
tych, автор хочет сам чего-то сотворить, ему готовое неинтересно..
tych писал(а):
А старая провереная мной схемка на МК вот
Прикольно, схема-то у обоих одна и та же. Ну можно её взять за образец и переделать на AVR. Только вот Мега16 тут как-то монстроидально будет смотреться..
AndyWorld писал(а):
Нет трансформатор тут не пойдет
Ну и не надо. Заводи напрямую через 1М с сетевого провода на вход прерывания. Только если резистор 0.125, то лучше 2 по 500к последовательно, ибо они на такие напряжения не рассчитаны. Стабилитрон 4.7В между входом INT и землей тоже поставь (хоть внутри МК и есть ограничительные диоды, но страховка не помешает).
И не забывай, что получаешь гальваническую связь с сетью.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения