Например TDA7294

Форум РадиоКот • Просмотр темы - Получение сигнала произвольной скважности.
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Ср авг 27, 2025 12:00:18

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 9 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Получение сигнала произвольной скважности.
СообщениеДобавлено: Вс окт 19, 2008 13:51:30 
Родился

Зарегистрирован: Пт сен 05, 2008 05:15:14
Сообщений: 16
Рейтинг сообщения: 0
Название темы взял со статьи Ридико Леонид Иванович. Генератор прямоугольных импульсов на основе AVR.Заинтересовался вот этим методом-
Рис. 10. Получение сигнала произвольной скважности.

Метод получения такого сигнала проиллюстрирован на рис. 10. Для примера рассматривается режим генерации положительных импульсов. В момент возникновения события совпадения переключается состояние выхода OC1, который настроен на переключение по совпадению (режим «toggle»). В данном примере он переключается с нуля в единицу. Перезагрузка регистра сравнения OCR1A осуществляется в обработчике прерывания, который вызывается с некоторой задержкой (эта задержка называется interrupt latency). Перезагрузка должна быть произведена обязательно до того момента, когда должно произойти новое совпадение. Именно время выполнения обработчика прерывания ограничивает минимальную длительность импульсов в данном режиме. Поэтому принят ряд мер для уменьшения этого времени. Перезагрузка осуществляется величиной, которая определяет длительность единицы, в данном примере это длительность импульса d. При следующем совпадении выход OC1 переключается из единицы в ноль и осуществляется перезагрузка регистра сравнения длительностью нуля, в данном примере это разность периода и длительности P-d. Никаких вычислений в прерывании не производится, длительности нуля и единицы основная программа передает сразу «готовыми к употреблению».

Вроде все понятно,но на деле сделать не получается,всегда получается только меандр,таймер2 сконфугировал вот так-
Код:
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: 125,000 kHz
// Mode: CTC top=OCR2
// OC2 output: Toggle on compare match
ASSR=0x00;
TCCR2=0x1A;
TCNT2=0x00;
OCR2=0x00;

Как сделать,чтобы длительность и паузу можно было как угодно менять,кто нибудь на примере может показать ?Для CVAVR.


Вложения:
Fig10.gif [6.75 KiB]
Скачиваний: 609
Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 19, 2008 14:44:01 
Э...
Аватар пользователя

Карма: 1
Рейтинг сообщений: 9
Зарегистрирован: Ср апр 04, 2007 08:39:14
Сообщений: 2792
Откуда: Москва
Рейтинг сообщения: 0
Только что была темпа про ШИМ

_________________
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 19, 2008 15:23:10 
Родился

Зарегистрирован: Пт сен 05, 2008 05:15:14
Сообщений: 16
Рейтинг сообщения: 0
Рисунок посмотрите,это не про шим,а другое


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 19, 2008 19:02:12 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
Нееет, уважаемый, это именно "про ШИМ". Так-что, как говорится, берите глаза в руки и читайте, пока не увидите, что ответ на оба ваших вопроса находится у вас перед глазами. :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 19, 2008 19:08:25 
Родился

Зарегистрирован: Пт сен 05, 2008 05:15:14
Сообщений: 16
Рейтинг сообщения: 0
Черт возми,когда нибудь кто нибудь нормально может обьяснить начинающему ,кроме посыланий на разные страницы,под...бок и т.д.
Просто написать 5 строк кода и все


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 19, 2008 19:17:22 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
Для начала, нужно было выложить свой код, а-то, мало ли, что там наконфигурено. Кроме того, нужно было сформулировать вопрос поточнее, а-то, в начале - "за здравие" (управление скважностью), а в конце - "за упокой" (длительностью импульса и паузы), и как понимать?

P.S. Да, и - чертыхаться не стоило, уверяю.

Добавлено:
Заглянул я в тему, о которой говорил Tych, - вижу, вы, молодой человек, задали этот вопрос еще 27 сентября. Там уже 5 страниц обсуждения - вы его не читали, что-ли? Тогда какой смысл снова задавать вопрос? Что-то я не пойму...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 19, 2008 20:12:06 
Родился

Зарегистрирован: Пт сен 05, 2008 05:15:14
Сообщений: 16
Рейтинг сообщения: 0
Все я прочитал,но в этой статье говорится про другое-необходимо производить перезагрузку регистра сравнения два раза за период.
Произошло событие совпадения-на выходе ОС2- 1,после этого я должен внутри прерывания поставить OCR2=10(0,08мс)например,через 0,08 мс произойдет еще одно совпадение и на выходе будет 0,после этого я должен загрузить в OCR2 другое значение.Еще пишется в рисунке про задержку обработки прерывания.Все это как на практике сделать,не могу додуматься со своей тупой головой


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 20, 2008 00:58:48 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
Хорошо, допустим, что на 5 страницах той темы вы не нашли ответа на свой вопрос (кстати, а чем примеры, выложенные в том топике не устраивают(?) - взять самый близкий пример в качестве отправной точки и вперед! ...???), но сформулировать-то его вы можете? :))
Есть длительность импульса, есть длительность паузы, есть их сумма - длительность периода, есть отношение длительности периода и импульса (скважность) - управление скважностью подразумевает неизменную длительность периода, управление длительностями импульса и/или паузы - подразумевает изменение длительности периода. Таким образом, решение этих двух задач - разное.
И наконец - какое место в коде не работает? Как она выглядит, эта неудавшаяся попытка?


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Сб окт 25, 2008 19:18:36 
Родился

Зарегистрирован: Чт дек 14, 2006 20:25:35
Сообщений: 4
Рейтинг сообщения: 0
кошак, выложил для вас рабочий проект тут
http://www.radiokot.ru/forum/viewtopic. ... &start=420


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y