在 Raspberry pi 3 中将大量数据写入 USB 端口

Write bulk of data on USB port in Raspberry pi 3

我想通过树莓派 3 的 USB 端口以字节格式发送数据,使用 python.This 对我来说非常新 所以我无法理解我该怎么做 this.What 需要安装的软件包以及如果有的话工作示例代码是他们然后任何人都可以 share.How 我可以测试此数据是否正确写入 USB 端口或 not.Please 任何人都可以帮助我解决这个问题。

USB 不支持发送原始字节。这不是串行端口。 您必须连接一个声明自己为通信设备 Class 的设备。设备和主机将在 USB 协议中包装原始字节。

然后您的操作系统会将其关联到端点。 在 Linux 下,第一个设备关联到 /dev/ttyACM0。 您所要做的就是写入此端点。 在 bash 下:echo some byte > /dev/ttyACM0.

这是一个例子。我有一个 arduino uno 连接到我的 Linux 笔记本电脑。 这是内核所说的:

[37850.628522] usb 3-2: new full-speed USB device number 9 using xhci_hcd
[37850.759206] usb 3-2: New USB device found, idVendor=2341, idProduct=0043
[37850.759215] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=220
[37850.759221] usb 3-2: Manufacturer: Arduino (www.arduino.cc)
[37850.759224] usb 3-2: SerialNumber: 12345678901234567890
[37850.759590] usb 3-2: ep 0x82 - rounding interval to 1024 microframes, ep desc says 2040 microframes
[37850.833630] cdc_acm 3-2:1.0: ttyACM0: USB ACM device
[37850.834040] usbcore: registered new interface driver cdc_acm
[37850.834044] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters                

重要的部分是:ttyACM0

在 python 控制台中,我可以:

with open("/dev/ttyACM0","w") as f:
    f.write("hello world")

Arduino 确认它接收到字节(RX LED 闪烁)并根据其内部程序运行。