linux串口编程

基本概念及流程分析

什么叫做串口通信:串口通信是指一次只传送一个数据位。虽然在通信的时候串口有 8 位或者 9 位等,但是在物理层面传输的时候,它仍然是以单个 bit 的方式传输的。

什么是串口:串口一般特指 RS232 标准的接口。虽然以太网以及 USB 等等也是以串行的方式发送数据,但不是串口。

什么是RS232:RS-232 是 EIA(Electronic Industries Association)定义的串行通信的电器接口。最被广泛使用的是RS-232C,它将 mark(on)比特的电压定义为-3V 到-12V 之间,而将 space(off)的电压定义到+3V 到+12V 之间。
RS232 有两种标准定义,25 针和 8 针的。不过即使是 8 针,在大多数场合工程师也觉得太多了,绝大多数情况下都是只使用 TX,RX 针脚发送和接收信号,再加上一个 GND
地脚。

在这里插入图片描述
打开串口,一般使用 open 函数,打开之后会返回句柄,这个句柄就可以提供给发送和接收函数使用。串口本质上也是字符设备,但是串口是属于一种比较特殊的字符设备。

初始化串口,串口需要配置波特率,数据位,校验位等等一系列的参数,初始化的过程掌握了,发送和接收都比较容易实现。虽然初始化比较麻烦,但是无论是在 window 下还是在 linux下,串口的初始化都是很容易找到例程的。个人建议只要能够读懂代码,根据实际需求进行验证和配置即可。

发送和接收数据,前面提到过串口是属于字符设备的,可以使用 read 函数和 write 函数实现。

关闭,使用函数 close 即可关闭串口。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值