python - 如何使用 C 或 Python 将 CR/LF 行结尾写入串口?

标签 python serial-port newline pyserial

我使用 python 和 C 与我的天平进行通信,但我无法将 CR/LF 行结尾写入其中。为什么?

import serial
bal = serial.Serial("/dev/ttyUSB0",9600,timeout=0)
bal.write('P\r\n')
print bal.readline()

我可以通过cutecom获取值,但是为什么我不能通过这段代码获取值?

我正在使用 Linux,为什么程序无法识别行尾?

最佳答案

如果您有 timeout=0 并在发送后立即执行 readline(),则可能尚未收到答复。

最好尝试 timeout=.5 并根据您的观察调整值。

在这种情况下,也可能是天平没有写出正确的“线”。在这些情况下尝试 bal.read(100)。一旦没有其他字符出现,超时将立即停止。

关于python - 如何使用 C 或 Python 将 CR/LF 行结尾写入串口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20403257/

相关文章:

c++ - Qt C++ 和 QSerialDevice : Windows 7 USB->Serial Port Reading/Writing

windows - 使用虚拟桌面时串行鼠标设备崩溃

linux - 将 (ruby) 程序中的两个串行端口实例连接到物理串行端口 (usb0)

batch-file - 如何从批处理变量中删除换行符

python - 有效地将每一行的元素相乘

python - 创建一个实用程序函数来检索用户执行的脚本的目录

python - NO_CALLBACK 在不应该被调用的情况下被调用

c - 汇编中没有换行符的 Printf

php - 在 PHP 中向文件写入新行(换行)

python - 通过pywin32将pandas数据框写入word文档表