我想设置一个Prolite LED标志,以显示来自Apache日志和其他有趣统计信息的滚动搜索查询。问题是,我的G5没有串行端口,因此我必须使用USB来串行加密狗。它显示为/dev/cu.usbserial和/dev/tty.usbserial。当我这样做时,一切似乎都是笨拙的:stty -f /dev/cu.usbserialspeed 9600 baud;lflags: -icanon -isig -iexten -echoiflags: -icrnl -ixon -ixany -imaxbel -brkintoflags: -opost -onlcr -oxtabscflags: cs8 -parenb当我使用串行端口工具与之通信时,一切也正常。如果我在上面提到的串行端口工具上运行这段代码,那么一切都可以。但是,一旦我断开工具的连接,连接就会丢失。#!/usr/bin/pythonimport serialser = serial.Serial('/dev/cu.usbserial', 9600, timeout=10) ser.write("<ID01><PA> \r\n") read_chars = ser.read(20)print read_charsser.close()因此,问题是,在不使用串行端口工具的情况下开始与串行端口通信时,我需要执行哪些操作?这是权限问题吗?另外,/ dev / cu.usbserial和/dev/tty.usbserial有什么区别?不,没有序列号。事实是,即使使用sudo运行python脚本,问题仍然存在,并且如果我在提到的gui工具中打开连接,唯一的问题就解决了。
2 回答

慕盖茨4494581
TA贡献1850条经验 获得超11个赞
/dev/cu.xxxxx
是“标注”设备,它是您与串行设备建立连接并开始与之交谈时使用的设备。/dev/tty.xxxxx
是“ dialin”设备,用于监视端口的传入呼叫,例如传真侦听器。

FFIVE
TA贡献1797条经验 获得超6个赞
您是否尝试过观察GUI和串行端口之间的流量,以查看是否发送了某种特殊命令?同样奇怪的是,Python正在发送ASCII而不是UTF-8或其他内容,对吗?我问的原因是因为我注意到您的字符串和某些语言的引号更改实际上是ASCII和UTF-8之间的区别。
添加回答
举报
0/150
提交
取消