nana77 Ответов: 2

Отправка сигнала на usb-порт


Привет
Есть ли какой-то способ использовать Python для отправки данных через USB-порт и
контролировать данные в режиме реального времени?. Я уже реализовал PyUSB и могу видеть устройство и взаимодействовать с ним.

(Например, я могу сделать звуковой сигнал заданной спецификации и хотел бы отправить его через USB и получить его через приемник, который я построил. Как я могу отправить оцифрованную форму этого массива через USB-порт, а затем преобразовать ее обратно (демодулировать?))

Вторая часть есть ли способ обнаружения непреднамеренных электромагнитных излучений от usb-порта?

Спасибо!

Что я уже пробовал:

Hi

Is there some way I can use Python to send data through a USB port and
control the data in real-time?. I have already implemented PyUSB and I can see and interact with the device.  

(For instance, I can make a sound signal of a given specification and would like to send it through the USB and received it via a receive I built. How can I send the digitized form of this array through a USB port, and then convert it back by (demodulate?))

Second part is there way of detecting the unintentional electromagnetic emissions from the usb port?

Thanks!

[no name]

Ваш вопрос слишком расплывчат. Если вы уже используете PyUSB для "взаимодействия" с вашим устройством, то в чем ваша проблема? Есть ли у вас технический документ для устройства, описывающий интерфейсы, которые оно реализует? Является ли устройство чем-то вроде Arduino, в этом случае оно реализует RS232, и Вам не нужен PyUSB.

2 Ответов

Рейтинг:
16

Dave Kreskowiak

Как и если вы можете это сделать, полностью зависит от используемой вами библиотеки USB.

Вы также, кажется, неправильно понимаете USB. Это не порт в том смысле или последовательный порт, как вы, кажется, думаете. USB-это шина расширения, мало чем отличающаяся от слотов на материнской плате. Разница в том, что USB общается по последовательным линиям передачи данных, а не по параллельным линиям.

Нет никакого отношения к USB - "порту", как если бы это был последовательный порт. Вы должны разговаривать с устройством в автобусе, а не с самим автобусом. Если ваш "приемник" - это USB-устройство, отлично, оно должно быть перечислено и перечислено как устройство в диспетчере устройств любого используемого вами O/S.

Теперь то, как вы общаетесь с устройством, зависит от типа интерфейса устройства. Если он отображается как последовательный порт, то вы можете разговаривать с ним, используя обычные функции последовательного ввода-вывода, вообще не беспокоясь о USB. Если он отображается как какой-то другой тип интерфейса, используйте методы, соответствующие этому типу.


Рейтинг:
0

Member 10317286

USB-порт-это последовательное устройство. Вы получаете доступ к нему с помощью пакета pyserial. Вот ссылка на документацию.

https://pythonhosted.org/pyserial/

Найдите "python USB examples" или "pyserial examples", и вы получите много вещей, которые помогут вам. Что касается" непреднамеренных электромагнитных излучений", то если ваше устройство(устройства) сертифицировано FCC класса А или в в США или эквивалентно ему в других странах, вам не нужно беспокоиться об этом. Если нет, то вам понадобится внешнее оборудование для тестирования/обнаружения.


Dave Kreskowiak

USB-порт последовательного устройства

Нет, это не так. Это шина расширения, а не Порт. Чтобы использовать обычные методы последовательного ввода-вывода, устройство, с которым вы пытаетесь поговорить, должно выставить себя на шине как устройство последовательного порта COM1, COM2 ...

То, как вы разговариваете с целевым устройством, полностью зависит от того, как это устройство раскрывает свой интерфейс.

[no name]

Дэйв Кресковяк отметил, что USB-устройство не является RS232, если только устройство не реализовало этот интерфейс, а это делают немногие. ОП нуждается в технических характеристиках рассматриваемого устройства, чтобы увидеть, какие интерфейсы реализованы.