python - 重启电脑后Linux串口中的C乱码

标签 python c serial-port

我有一台主机和一台客户端 PC,我在其中运行串行链接。 主机在 CentOS 中运行 C,客户端在 Fedora 中运行 Python 脚本。 设置为:

Baudrate = 115200
parity  = Parity Odd
stopbits = 2
xonxoff = False
rtscts = False
dsrdtr = False

主机像这样调用串行:

rv = ioctl(SerialPortDesc, FIONREAD, &NumByte)

每当我重新启动客户端并第一次运行安装程序时,我都会不断收到 NumByte == 4095。 大多数时候双方都可以通过串行链路正常工作。 但是,当我重新启动运行 Python 脚本的客户端并尝试在主机上运行它时,主机端总是出现错误。

主持人收到一堆垃圾字符。当我第二次运行安装程序时,问题就消失了。有人遇到过类似的事情吗?

谢谢。

最佳答案

这被证明是 USB 串行转换器中的硬件缺陷。 尽可能使用带有 FTDI 芯片的芯片!更可靠。

关于python - 重启电脑后Linux串口中的C乱码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25842426/

相关文章:

c - 套接字文件系统与普通磁盘文件系统

matlab - 从 SerialForwarder 的套接字读取数据

python - Sphinx 和可重复使用的 Django 应用程序

python - 带有 PyDev 的 PIL 模块

c - 如何准确地调用 25 字节

c++ - 无法打开 UART。确保它没有被其他应用程序使用

Ruby 串口超时异常

python - 在 python pika 响应中领先 b

python - Matplotlib:未对齐的颜色条刻度线?

c - C中的两个进程从同一个文件读取问题