Страница 1 из 1

Формирование сигналов с изменяемой длительностью импульсов

Добавлено: Вт дек 20, 2011 23:22:03
igorgis
Для управления устройством необходимо формировать signal1.gif. Картинка в аттаче.
Частота модуляции около 100кГц. 0 или 1 определяется длительностью импульса.
Это сигналы для передачи цифрового кода (управление устройством).
Длинна кода 24 байта.
Подскажите, пожалуйста, как лучше реализовать формирование такого сигнала.

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 00:31:07
Аlex
PWM ? :roll:

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 06:18:58
pyzhman
Лучше всего на мк. ШИМ здесь ни при чем, длительность импульс+пауза разные.

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 07:00:36
Kavka
Модуляция? То что на картинке заштриховано должно быть заполнено импульсами с бОльшей частотой?

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 11:18:38
igorgis
Kavka писал(а):Модуляция? То что на картинке заштриховано должно быть заполнено импульсами с бОльшей частотой?
Да. Это и есть модуляция. Частота около 100кГц.

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 11:29:25
igorgis
Аlex писал(а):PWM ? :roll:

PWM не подойдет.
Мне нужны сигналы для передачи цифрового кода (управление устройством).
Длинна кода 24 байта.

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 13:09:14
SERJ
igorgis писал(а): необходимо формировать signal1.gif. Картинка в аттаче.
Удивляюсь на Вас. Народ совсем обмельчал. :cry:
У Вас есть такой инструмент, как МК, а вы от элементарного вопроса "сдулись" и вошли в ступок. :cry:
Давайте я Вам за пять минут нарисую, то что Ваи нужно на транзисторах К315 и на десятке резисторов :)

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 13:14:03
pyzhman
14:14

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 13:19:01
Kavka
Если вам надо устройство как целое, то вам надо на "рассыпухе" или на ПЛИС его делать, чтобы оно само передавало 24 байта...

SERJ, согласен! Даже с МК воображение не работает.
И чем ШИМ не угодил?
Интервалы отмерять с помощью таймера и включать/выключать ШИМ для заполнения (100кГц).
Ещё подсказки нужны?

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 13:23:23
Jack_A
SERJ писал(а): Давайте я Вам за пять минут нарисую, то что Вас нужно на транзисторах К315? :)
Задача действительно тривиальная, но на транзисторах не получится - нужен буфер для хранения передаваемого кода и сдвиговый регистр, ящик транзисторов понадобится :)) Простейший вариант - генратор 100 кГц, выход модулирующего сигнала с МК + схема И. Если не катит ( препод не одобрит или нет пару кв.см. для схемы И ) , легко делается программно : таймер на 5мкс, а уж отсчитать количество импульсов в '0'-й и '1'-й пачке - задача плевая даже для среднего ума.
Предварительно нужно уяснить для себя : режим стартостопный или все 192 бита подряд ? Старшим или младшим битом вперед ? Контроль четности ?
И в результате нудной работы получим крайне непомехозащищенный радиовзрыватель.
ФСБ, ахтунг !

Судя по версии минских следователей, пара террористов в метро, слесарь и электрик, этот вопрос решили.

А ШИМ всамделе на фиг не нужен.
pyzhman писал(а): 14:14
Нет, такой хоккей нам не нужен.

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 13:39:05
pyzhman
А я думал, пацан сказал - пацан сделал.

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Ср дек 21, 2011 18:00:54
GRAF
Делается это на одном таймере, у которого есть компараторы. По прерыванию от одного компаратора осуществляется модуляция импульсов, значение в другом определяет ширину импульсов.

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Чт дек 22, 2011 14:00:49
Jack_A
GRAF писал(а):Делается это на одном таймере, у которого есть компараторы. По прерыванию от одного компаратора осуществляется модуляция импульсов, значение в другом определяет ширину импульсов.
Обычно в таких случаях спрашивают "Сам-то понял, что сказал ?" Но я этого не говорил :)

С каких это пор у таймеров появились прерывания ? Таймеры обзавелись личным процессором ? И где это в таймере хранится его "значение" ? Что это за зуперсекретный таймер ?

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Чт дек 22, 2011 14:59:40
ibiza11
Jack_A писал(а):Обычно в таких случаях спрашивают "Сам-то понял, что сказал ?" Но я этого не говорил :)
С каких это пор у таймеров появились прерывания ? Таймеры обзавелись личным процессором ? И где это в таймере хранится его "значение" ? Что это за зуперсекретный таймер ?
Язвите, сударь иль всерьез не поняли о чем говорил GRAF?

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Чт дек 22, 2011 19:10:17
GRAF
Jack_A писал(а):Обычно в таких случаях спрашивают "Сам-то понял, что сказал ?" Но я этого не говорил :)
С каких это пор у таймеров появились прерывания ? Таймеры обзавелись личным процессором ? И где это в таймере хранится его "значение" ? Что это за зуперсекретный таймер ?
Прочти название подраздела форума, может понятнее станет.

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Пт дек 23, 2011 01:48:37
Jack_A
GRAF писал(а):
Прочти название подраздела форума, может понятнее станет.
Долго и внимательно изучал название подраздела форума, и там ни слова не нашел про таймеры, имеющие прерывания и значения. Может, между строк ?
Ежели бы схемку в студию, хотя бы блочную - и вопросов бы не было.

ibiza11 : вы всерьез считаете, что мы с GRAFом не сможем понять друг друга без адвоката ?

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Пт дек 23, 2011 19:35:18
GRAF
Jack_A, невнимательно читал. Сделаю небольшую подсказку: "Микроконтроллеры".

Re: Формирование сигналов с изменяемой длительностью импульс

Добавлено: Пт дек 23, 2011 22:25:07
Барсик
igorgis писал(а):Картинка в аттаче.
На Вашей картинке не обозначены длительности пачки импульсов и паузы между пачками.
igorgis писал(а):Длинна кода 24 байта.
Хоть 24 мегабайта. :) Очевидно, что надо передавать побайтно...
igorgis писал(а):как лучше реализовать формирование такого сигнала.
Как лучше, не знаю. Какой у Вас микроконтроллер? Для AVR можно использовать таймер в режиме CTC, чтобы он генерил прерывания каждые 5 микросекунд. В прерывании считать число импульсов в пачке. И в паузе. В зависимости от этого подключать/отключать выход таймера.