Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы
Непрочитано 22.10.2013, 14:12  
Janush
Частый гость
 
Регистрация: 09.11.2012
Сообщений: 46
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Janush на пути к лучшему
По умолчанию Программный ШИМ. Теоретический вопрос

Всем доброго времени.
Помогите разрешить задачу. Возникла чисто случайно. Меня попросили объяснить по аппаратному ному шиму, и честно говоря я понял что несколько затрудняюсь ответить. Есть сомнения.


Попытаюсь объяснить суть как можно внятнее ))). Даже нашел пример.
http://avrlab.com/node/90

При OCR1A=TCNT1 на на выводе OC1A в зависимости от битов COM1A0, COM1A1 (в регистре TCCR1A), устанавливается нолик или единица. Как в примере, если то, у нас при возрастании счетчика(и естественно при пересечении с OCR1A) на выходе будут в каждом такте "0". При обратном счете поменяется на "1".

Так вот что будет на самом деле на выходе при OCR1A=0 (постоянно=0)?

По идее в первый проход (с начала "первого выполнения" последовательности) , у нас OCR1A=TCNT1=0, и в первый такт (при условии что за один такт OC1A успевает менять состояние с "0" в "1" и обратно, естественно) у нас на OCR1A будет "0".
Далее таймер считает до 255, и у нас также на протяжении этих 255-ти тактов на OCR1A будет "0". Теперь таймер считает в обратном направлении до "нуля", при этом все такты до "0"(не включительно)на OCR1A будет также "0".
Так вот вопрос: когда таймер дойдет до "нуля" будет опять условие OCR1A=TCNT1=0. Что произойдет? Вроде как поменяется на "1" (ведь условие пересечения есть) или все-таки не поменяется? Тут как бы неопределенное состояние. Ведь дальше он опять начнет считать до 255. И непонятно какое это пересечение, то ли при счете вверх, то ли счете вниз. Или он дважды это воспримет, т.е. на OCR1A дать "1" и тут же "0"?

Еще такой вопрос правильно ли я понял, что по сути "полный такт ШИМА"(счетчик досчитал до 255 и назад) будет составлять 512 тактов. То есть получается по времени "разрешение по уровням" будет -512 ? Нет под рукой осциллографа посмотреть.

Надеюсь я достаточно четко задал вопрос ))). Жду разрешения вопроса.
Реклама:

Последний раз редактировалось Janush; 22.10.2013 в 14:36.
Janush вне форума  
Непрочитано 22.10.2013, 14:24  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Программный ШИМ. Теоретический вопрос

В даташите четко написано, что будет при предельных значениях. Специально целый абзац выделили
niXto вне форума  
Непрочитано 22.10.2013, 14:30  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,018
Сказал спасибо: 936
Сказали Спасибо 2,270 раз(а) в 1,565 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Программный ШИМ. Теоретический вопрос

Сообщение от Janush Посмотреть сообщение
Меня попросили объяснить по программному шиму
Спрашивали программный , далее везде аппаратный .
__________________
Осторожно , злой кот
dosikus вне форума  
Сказали "Спасибо" dosikus
Janush (22.10.2013)
Непрочитано 22.10.2013, 14:36  
Janush
Частый гость
 
Регистрация: 09.11.2012
Сообщений: 46
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Janush на пути к лучшему
По умолчанию Re: Программный ШИМ. Теоретический вопрос

Сообщение от dosikus Посмотреть сообщение
Спрашивали программный , далее везде аппаратный .
Извиняюсь. Аппаратный. Поправил...
Janush вне форума  
Непрочитано 22.10.2013, 14:38  
Janush
Частый гость
 
Регистрация: 09.11.2012
Сообщений: 46
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Janush на пути к лучшему
По умолчанию Re: Программный ШИМ. Теоретический вопрос

Сообщение от niXto Посмотреть сообщение
В даташите четко написано, что будет при предельных значениях. Специально целый абзац выделили
niXto
Почетный разоблачитель лентяев . )) У меня голова туго соображает в последнее время. Скорее поэтому на форум зашел.

Последний раз редактировалось Janush; 22.10.2013 в 14:43.
Janush вне форума  
Непрочитано 22.10.2013, 14:47  
Janush
Частый гость
 
Регистрация: 09.11.2012
Сообщений: 46
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Janush на пути к лучшему
По умолчанию Re: Программный ШИМ. Теоретический вопрос

Поглядел в даташит . Ниче не понял.
Janush вне форума  
Непрочитано 22.10.2013, 15:34  
Wugluscr
Почётный гражданин KAZUS.RU
 
Аватар для Wugluscr
 
Регистрация: 27.09.2010
Адрес: 6 светофоров до Майдана
Сообщений: 2,557
Сказал спасибо: 2,256
Сказали Спасибо 2,820 раз(а) в 1,196 сообщении(ях)
Wugluscr на пути к лучшему
По умолчанию Re: Программный ШИМ. Теоретический вопрос

Вот доходчиво по программной реализации ШИМ.
(я на практике занимался ШИМ очень давно и только на рассыпухе - генератор на аналоге однопереходника + компаратор. Так что флаг Вам в руки).
__________________
По просьбе адекватного россиянина изменил подпись. Но "дятлы" в игноре остались.
Wugluscr вне форума  
Непрочитано 22.10.2013, 15:35  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Программный ШИМ. Теоретический вопрос



То есть при 0 в регистре OCRxA на выходе будут короткие иголки (длительностью менее 1 такта генератора) после каждого переполнения таймера. При максимальном значении в этом регистре - на выходе будет постоянный 0 или 1 в зависимости от битов полярности
niXto вне форума  
Непрочитано 22.10.2013, 20:40  
Janush
Частый гость
 
Регистрация: 09.11.2012
Сообщений: 46
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Janush на пути к лучшему
По умолчанию Re: Программный ШИМ. Теоретический вопрос

В общем разобрался вроде как. Пришлось все таки даташит несколько раз перечитывать, а то англицкий такой, что не сразу понимаешь что имеется в виду.

niXto -это не тот режим. я на рассмотрение дал не "быстрый режим", а с фазовой коррекцией. по поводу нее как раз и спрашивали меня.

Вообще опирался я на "http://avrlab.com/node/90"

В моем случае(рассматривается то что по ссылке) получилось следующее::
1. по данной ссылке сбивающее с толку объяснение инициализации ШИМа.

Цитата:
В нашем случае COM1A1=1,COM1A0=0. И это означает, что при начале счета, на выводе OC1A устанавливается высокий уровень.
Нифига он там не устанавливается. Однозначно будет "0". Что и указано в даташите.

В итоге действительно выяснилось что:

Цитата:
The extreme values for the OCR1x Register represent special cases when generating a PWM
waveform output in the phase correct PWM mode. If the OCR1x is set equal to BOTTOM the
output will be continuously low and if set equal to TOP the output will be continuously high for
non-inverted PWM mode. For inverted PWM the output will have the opposite logic values.
Оно из вышеуказанной таблици прямо таки логично.
Janush вне форума  
Непрочитано 22.10.2013, 21:59  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Программный ШИМ. Теоретический вопрос

Сообщение от Janush Посмотреть сообщение
это не тот режим. я на рассмотрение дал не "быстрый режим", а с фазовой коррекцией.
А где это написано в первом посте?

И я ведь подсказал
Сообщение от niXto Посмотреть сообщение
предельных значениях
что переводится как extreme values)))
niXto вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
мега8 программный 8и канальный ШИМ? Sany81 AVR 12 18.10.2013 19:35
Управление Сервой Mg995 Через Аппаратный Шим Vyazikov Микроконтроллеры, АЦП, память и т.д 16 06.04.2012 21:06
AtTiny2313 ШИМ на два плеча Classic001 Микроконтроллеры, АЦП, память и т.д 44 10.04.2010 17:37
Драйвер мостовой схемы ШИМ andronio Аудиотехника 0 04.09.2007 07:05
Управление блоком питания с помощью ШИМ AndrySivolap Источники питания и свет 17 11.08.2006 08:01


Часовой пояс GMT +4, время: 05:59.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot