RS232控制台通信 - 将Baudrate设置为1 MBAUD



在bash脚本中,我使用以下内容:

$ stty -F /dev/ttyUSB0 921600 raw
$ echo -n "some test data" >/dev/ttyUSB0

它可以按预期工作。使用PL2303 USB到RS232适配器:

$ lsusb
...
Bus 006 Device 010: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 006 Device 011: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port

现在,我尝试使用1MBD进行同样的操作,但有一个错误:

$ stty -F /dev/ttyUSB0 1000000 raw
stty: /dev/ttyUSB0: unable to perform all requested operations

我尝试使用500KBD时也会发出相同的消息。尝试250KBD错误消息是不同的:

$ stty -F /dev/ttyUSB0 250000 raw
stty: invalid argument `250000'
Try `stty --help' for more information.

如下所示,这是PL2303 Linux驱动程序中的问题。

我正在研究Kubuntu12.04,32bit。不幸的是,我不知道如何在系统上修复该驱动程序(获取驱动程序源,补丁,编译,安装...嗯,也许我学到了一些并尝试一下 - 欢迎建议)。

)。

但也许有一个更新的驱动程序可用,易于安装?

或者有人知道需要在1MBD上使用的RS232适配器(需要通过RTS/CTS进行硬件FlowControl,它与PL2303的效果很好)?

意识到»多产和ftdi是竞争对手«,我购买了FTDI US232R-10,这是一个基于FT232R的设备,并为1MBD传输率指定。

使用此适配器,我通过传输一些GIB数据而成功地测试了1MBD的通信(包括使用RTS/CTS硬件流量控制)。

使用Stty配置此设备,例如:

$ stty -F /dev/ttyUSB0 1000000 raw

成功工作。

最新更新