реклама на сайте
подробности

 
 
> Формирование сигнала определенного вида длительностью 1,5 мкс
Sprite
сообщение Jun 6 2008, 19:07
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 173
Регистрация: 11-05-08
Пользователь №: 37 414



Доброго всем времени суток! Программирую atmga8535 с кварцем на 16 Мгц.
Возникла такая задача:

Имеется входной сигнал вида 1.
Нужно получить сигнал вида 2:

Прикрепленное изображение


Длительность нулевых уровней сигнала 2 - строго фиксированная и составляет 1,5 мкс. Нулевой уровень сигнала 2 должен заканчивается в момент смены фронта сигнала 1.
Проблема в том, что частота сигнала 1 заранее не известна и может меняться в пределах 10-20 кГц.
Думаю, что придется использовать таймер 1 и захватывать сигнал по ICP.
Уважаемые эксперты, какой режим таймера выбрать?
Буду очень признателен за изложение алгоритма (хотя бы на словах)!
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
DRUID3
сообщение Jun 6 2008, 22:07
Сообщение #2


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



По маразму задачи, я так понимаю, что это ВУЗовское задание? Ну если входной сигнал заранее не известен но стационарен то...

По внешнему прерыванию начинаем считать тики "таймера". Первый перепад ничего не делаем - просто считаем, дальше работаем - уже знаем сколько "тиков" период. Смотря какой контроллер - вычитываем из DATA SHEET - что выставлять для какого таймера, Ваш не знаю и там ничего сложного, сами разберетесь. Таймер должен сосчитать и успеть сгенерить прерывание. При приходе такого-то тика выдаем импульс длительностью столько-то (опять же, меряем таймером)...

P.S.: кстати, так сразу и не посмотрел - очень короткое время этих маленьких переключений, контроллер может и не успевать (скорее всего).


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Sprite   Формирование сигнала определенного вида длительностью 1,5 мкс   Jun 6 2008, 19:07
- - Flasher   Алгоритм простой- берем гадалку и пусть она говори...   Jun 6 2008, 19:26
|- - singlskv   Цитата(Flasher @ Jun 6 2008, 23:26) Алгор...   Jun 6 2008, 19:54
- - Flasher   Итак в рамках темы обсуждаем как писать гадалок. О...   Jun 6 2008, 20:00
|- - singlskv   Цитата(Flasher @ Jun 7 2008, 00:00) Итак ...   Jun 6 2008, 20:09
- - domowoj   Что-то подобное делал на частоте 100Гц. В вашем сл...   Jun 7 2008, 01:35
|- - Sprite   Цитата(domowoj @ Jun 7 2008, 08:35) Что-т...   Jun 7 2008, 04:29
- - rv3dll(lex)   на сколько я понимаю что автор не понял что говоря...   Jun 7 2008, 04:15
- - INT1   Если бы знал, где упаду(отрицательный перепад) , т...   Jun 7 2008, 04:25
- - otrog   Для работы с временами порядка микросекунд просто ...   Jun 7 2008, 04:47
|- - Sprite   Цитата(otrog @ Jun 7 2008, 11:47) Для раб...   Jun 7 2008, 06:35
|- - rv3dll(lex)   Цитата(Sprite @ Jun 7 2008, 10:35) После ...   Jun 7 2008, 07:05
|- - Sprite   Цитата(rv3dll(lex) @ Jun 7 2008, 14...   Jun 7 2008, 07:50
- - Ledmaster   Цитата(Sprite @ Jun 7 2008, 01:07) Доброг...   Jun 7 2008, 07:44
|- - rv3dll(lex)   Цитата(Ledmaster @ Jun 7 2008, 11:44) Пац...   Jun 7 2008, 08:12
|- - Ledmaster   Цитата(rv3dll(lex) @ Jun 7 2008, 14...   Jun 7 2008, 09:40
- - MrYuran   Я знаю как надо поступить. 1. засекаем входной ...   Jun 7 2008, 08:44
- - Sprite   Цитата(MrYuran @ Jun 7 2008, 15:44) Я зна...   Jun 9 2008, 14:35


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 10:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01392 секунд с 7
ELECTRONIX ©2004-2016