Linux串口通信的一些基础问题

23 views
Skip to first unread message

刘滔

unread,
Sep 20, 2011, 7:15:00 AM9/20/11
to gz...@googlegroups.com
在这里http://digilander.libero.it/robang/rubrica/serial.htm看的英文文档当中看到了打开、读写串口的方法,

虽然我手头没有RS-232的线,但是我也照着其中打开和读写的方法试了一下,结果可以打开,但是不能

读写,系统调用read和write都返回-1报错。接下来就有几个问题了,不知道组里有没有会的人可以帮忙解答一下

● /dev/ttyS0是否真的可以由普通用户打开?因为我在上面那个地址里面的内容似乎看到可能需要权限,不过

我用open系统调用打开没问题

● 电脑上面的网线是否属于串口,是否可以通过读写/dev/ttyS0来通信?

● 如果串口没有插线,那么读写串口是否都会失败?

--
Liutos Love Linux LaTeX Lisp Ling

我的博客,纪念我死去的GAE

forest chen

unread,
Sep 20, 2011, 7:43:04 AM9/20/11
to gz...@googlegroups.com
2011/9/20 刘滔 <mat.l...@gmail.com>

在这里http://digilander.libero.it/robang/rubrica/serial.htm看的英文文档当中看到了打开、读写串口的方法,

虽然我手头没有RS-232的线,但是我也照着其中打开和读写的方法试了一下,结果可以打开,但是不能

读写,系统调用read和write都返回-1报错。接下来就有几个问题了,不知道组里有没有会的人可以帮忙解答一下

● /dev/ttyS0是否真的可以由普通用户打开?因为我在上面那个地址里面的内容似乎看到可能需要权限,不过

我用open系统调用打开没问题

● 电脑上面的网线是否属于串口,是否可以通过读写/dev/ttyS0来通信?

● 如果串口没有插线,那么读写串口是否都会失败?


  1. 可以由普通用户打开。
  2. 不可以,电脑上的有线网卡设备是eth0,而且驱动类型也不一样。
  3. 串口(rs-232)通讯不需要应答,所以不需要连线即可使用。
  • 如果不是主板上的串口,而是用USB转的,就要使用ttyUSB0设备。
  • 如果返回-1,可以通过errno来查看真正的错误代码,或者用strerrno来打印出错信息。

刘滔

unread,
Sep 20, 2011, 10:25:44 AM9/20/11
to gz...@googlegroups.com
应该是主板上的吧,我是笔记本,不知道里面构造如何,我是读写/dev/ttyS0这个文件的

其实我是用perror()来打开错误信息的,不过貌似除了我自己给perror()的字符串,没看到其它错误信息

--
您收到此邮件是因为您订阅了 Google 网上论坛的“广州 GNU/Linux 用户组”论坛。
要向此网上论坛发帖,请发送电子邮件至 gz...@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 gzlug+un...@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/gzlug?hl=zh-CN 访问此网上论坛。

Kin Leung

unread,
Sep 20, 2011, 1:57:52 PM9/20/11
to gz...@googlegroups.com
記得之前玩 2440 的板時,由於電腦主板沒有串口,後來時通過 J-Link 讀寫串口的。

2011/9/20 刘滔 <mat.l...@gmail.com>
Reply all
Reply to author
Forward
0 new messages