Всем привет!
Моя задача заключается в том, что необходимо генерировать TTL сигналы длиной 40 мкс с частотой 10 Гц
Для этого собрана схема на микросхеме MAX232A и подключена к Com порту.
Для генерации TTL сигнала я отправляю через VISA число FF в шестнадцатеричном коде. Все роаботает как надо, но есть одна засада:
посмотрев на осцилографе, длина сигнала чуть меньше чем мне нужна. Например 35 мкс, против 40. Все другие сочетания символов, кроме "00" дают двойной сигнал, что меня не устраивает. Если отправлять "00", то сигнал получается слишком длинный, около 150 мкс.
Отсюда возникает вопрос: можно ли как то увеличить длину сигнала? На просторах интернета нашел генератор прямоугольных сигналов, написанный на Labview (http://mylab.wmsite.ru/moi-uvlechenija/ ... 2rs485-i2c) Но к сожалению, там предоставлен только exe-файл. Из этой программы я сделал вывод, что в Labview можно как-то генерировать импульсы нужной длины через ком-порт. Но вот как?
Подскажите пожалуйста.
Генератор TTL сигналов с COM порта
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Генератор TTL сигналов с COM порта
MAX232A это преобразователь логических уровней и ничего генерировать он не может и как правило используется при подключении к RS-232 микросхем TTL.
Я подразумеваю, что вы используете RS-232 немного нестандартно. Для изменения частоты и скважности можно изменить скорость передачи. На форуме были подобные примеры, поищите.
Нарисуйте схему Вашего устройства и схему подключения.
Выкладывайте исходники программы.
Я подразумеваю, что вы используете RS-232 немного нестандартно. Для изменения частоты и скважности можно изменить скорость передачи. На форуме были подобные примеры, поищите.
Нарисуйте схему Вашего устройства и схему подключения.
Выкладывайте исходники программы.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Re: Генератор TTL сигналов с COM порта
Да, действительно я использую RS232 немного нестандартно. Я его использую чтобы отслеживать импульсы которые генерирует лазер. В программе у меня вываливаются нули, с определенной частотой, их я считаю, затем например после 20 импульсов-нулей, я даю сигнал на открытие шуттера лазера, посредством отправления символа FF на RS232, который преобразуется опять в TTL посредством микросхемы MAX232.
Т.е. мне не важно какие символы ко мне приходят на ПК, и какие символы отправлять, главное посчитать импульсы, и отправить синхронизированные импульсы с той же частотой.
Т.е. мне не важно какие символы ко мне приходят на ПК, и какие символы отправлять, главное посчитать импульсы, и отправить синхронизированные импульсы с той же частотой.
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Генератор TTL сигналов с COM порта
У Вас наверное MAX переведен в режим инверсии, по этому FF равносильно восьми "0", а 00 восьми "1".Pervu писал(а):Для этого собрана схема на микросхеме MAX232A и подключена к Com порту.
Для генерации TTL сигнала я отправляю через VISA число FF в шестнадцатеричном коде. Все роаботает как надо, но есть одна засада:
посмотрев на осцилографе, длина сигнала чуть меньше чем мне нужна. Например 35 мкс, против 40. Все другие сочетания символов, кроме "00" дают двойной сигнал, что меня не устраивает. Если отправлять "00", то сигнал получается слишком длинный, около 150 мкс.
Отсюда возникает вопрос: можно ли как то увеличить длину сигнала?
Почитайте: https://ru.wikipedia.org/wiki/%D0%A3%D0 ... 0%B8%D0%BA
Там есть рисунок:
Это и есть Ваш сигнал.
Попробуйте передать 80 или 7F. По идее 80, но при инверсии может быть и 7F.
Посмотрите что вы подаете в порт с учетом Start - "0" и Stop - "1". Разберитесь с "физикой" процесса.
К тому же у меня большие сомнения по поводу 10Гц.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Re: Генератор TTL сигналов с COM порта
Сегодня попробовал изменить скорость передачи и импульс стал длиннее. Спасибо большое за совет.IvanLis писал(а):Для изменения частоты и скважности можно изменить скорость передачи.
Судя по всему и здесь вы были правы. :) И спасибо за ссылку на статью.IvanLis писал(а):У Вас наверное MAX переведен в режим инверсии, по этому FF равносильно восьми "0", а 00 восьми "1".
В принципе, результат который мне нужен, уже достигнут, я просто уменьшил скорость передачи. Мне этого достаточно.
Но теперь у меня появился один вопрос: почему у вас возникли сомнения по поводу частоты?
IvanLis писал(а):К тому же у меня большие сомнения по поводу 10Гц.
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Генератор TTL сигналов с COM порта
Посудите сами, у меня осциллографа сейчас нет под рукой, а Вы можете подключиться и посмотреть.Pervu писал(а):Но теперь у меня появился один вопрос: почему у вас возникли сомнения по поводу частоты?
10 Гц, это 10 периодов в секунду.
Один период это 10 посылок (бод), т.е. у Вас должна вестись передача на скорости 100 бод.
С другой стороны 1/10=100 мс (длительность периода), длительность сигнала 40 мс, т.е. 40% заполнения.
Получается, что при скорости 100 бод необходимо передавать E0 или 07, а для инверсного сигнала F8 или 1F. Надеюсь там start/stop не инвертируются, но это тоже на осциллографе видно должно быть.
Так что пытайтесь перейти на скорость 100 бод.
В Вашем примере установлена скорость 57600, это получается 5,76 кГц.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 0 Ответы
- 97 Просмотры
-
Последнее сообщение tamperplay
-
- 0 Ответы
- 503 Просмотры
-
Последнее сообщение Juri
-
- 3 Ответы
- 347 Просмотры
-
Последнее сообщение IvanLis
-
- 3 Ответы
- 626 Просмотры
-
Последнее сообщение Artem.spb
-
- 0 Ответы
- 552 Просмотры
-
Последнее сообщение Pavlusik