linux中的串行通信c

时间:2013-01-18 14:09:06

标签: c linux

急!!! 我是学生,参加我的最后一年项目。谁在上述标题上寻求帮助。

任务:

  • PC(1)打开Hyperterminal,输入一些要发送的文本(Transmitter,Tx)给...
  • PC(2)通过Null Modem电缆打开linux c,程序接收(Receiver,Rx)已发送的超级终端输入文本......

如何做到这一点?

经过进一步研究,具有相同通信设置的终端必须设置在相同的bps,数据位,奇偶校验,停止位和流量控制下。

当我通过超级终端发送一些文本时我真正想要的是它将通过程序显示在另一台PC(linux)中。

但我在如何在linux c中编写程序方面寻求帮助? 因为我是新的linux c。

1 个答案:

答案 0 :(得分:1)

在Google中试试这个“串行通信linux的例子”。在这里,我会为你做的:

First hit: How to
Second hit: Serial programming guide
Third hit: Serial Programming guide wiki book

那里有一些很棒的资源。

一般来说,你需要:

  • 打开一个端口(类似于/dev/ttyS0
    • 请务必检查open()的选项(我通常最终使用O_RDWR | O_NOCTTY | O_SYNC
  • 设置您的波特率cfsetospeed / cfsetispeed
  • 设置struct termios选项
  • 确保两边都匹配
  • 然后,您可以使用write() / read()来回发送文字。
祝你好运。