linux 串口通信-配置与实例

本文详细介绍了在Linux环境下如何进行串口通信,重点讲解了如何打开/dev/ttyS0和/dev/ttyS1这两个串口,并提供了相关配置实例,适合嵌入式开发者和Linux系统管理员参考。

打开串口

在 Linux 下串口文件是位于 /dev 下的串口一 为 /dev/ttyS0,串口二 为 /dev/ttyS1

打开串口是通过使用标准的文件打开函数操作:

fd = open("/dev/ttyS1", O_RDWR | O_NOCTTY | O_NDELAY);
其中O_RDWR:提供可读可写权限
    O_NOCTTY:不将此设备分配作为此进程的控制终端
    O_NDELAY:通知linux系统不关心DCD信号线所处的状态

设置串口

最基本的设置就是波特率,数据位,奇偶校验位,停止位的设置
串口的设置主要是设置 struct termios 结构体的各成员值。

struct termio

{       unsignedshort  c_iflag;       /* 输入模式标志 */    

        unsignedshort  c_oflag;       /* 输出模式标志 */    

        unsignedshort  c_cflag;       /* 控制模式标志*/     

        unsignedshort  c_lflag;       /* local mode flags */

        unsignedchar  c_line;         /* line discipline*/     

        unsignedchar  c_cc[NCC];    /* control characters */

};该结构体中c_cflag最为重要,可设置波特率、数据位、校验位、停止位。

创建结构体:
        struct  termios   newtio, oldtio;
        if(tcgetattr(fd,&oldtio) !=0)   //保存原来的串口设置
        {
    &n
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值