2010-07-15 109 views
0

我正在尝试读取串口上的数据。无法通过串口读取数据

我的设置

  • 操作系统:Ubuntu Linux操作系统
  • 设备1:BeagleBoard
  • 设备2:我的笔记本电脑

我使用的是串行USB转换器。在BeagleBoard上,串口设备是ttyS2。在笔记本电脑上,它是ttyUSB0

我做了一件简单的事情来测试连接,我在两台机器上都运行了Minicom。当我在BeagleBoard上键入内容时,我会收到笔记本电脑上的数据,但它不能以相反的方式工作。可能是什么原因?

用于在两个设备是

  • 波特率串行端口设置:115200
  • 数据大小:8
  • 奇偶:N
  • 停止位:1
  • 硬件流控制:否
+0

这个问题是超级用户比stackoverflow更多。 – 2010-07-15 20:32:33

+0

诚然,我说,给一些代码或您正在使用的程序。 – siranen 2011-01-31 18:00:35

+0

两端'cat/proc/tty/driver/serial'的输出会很有帮助。 – ninjalj 2011-01-31 18:39:22

回答

1

难道是你的文件权限太限制了在你的笔记本上?我在Ubuntu上有类似的问题,并通过更改文件权限来解决它。您可以通过这样做来测试:

sudo chmod 666 /dev/ttyUSB0 

请注意,这些权限将在您重置连接时恢复。对于长期解决方案,您必须通过编辑/etc/group将自己添加到dialout组。

+0

对于长期的解决方案,您应该让udev为您的用户设置一个ACL条目。基于组的权限过于陈旧(并且通常是不受欢迎的,因为它们会让您访问比您想象的更多内容)。 – user562374 2011-01-31 19:59:15