• 技术文章 >运维 >linux运维

    linux串口是什么意思

    长期闲置长期闲置2022-05-07 16:08:13原创259

    linux串口是串行接口的简称,是采用串行通信方式的扩展接口;串口是计算机一种常用的接口,具有连接线少、通信简单的特点,只要一对传输线就可以实现双向通信,linux可以使用系统调用open()或close()来打开或关闭串口。

    本教程操作环境:linux7.3系统、Dell G3电脑。

    linux串口是什么意思

    串行接口 (Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。

    一条信息的各位数据被逐位 按顺序传送的通讯方式称为串行通讯。

    串行通讯的特点是:

    串口是计算机上的串行通讯的物理接口。计算机历史上,串口曾经被广泛用于连接计算机和终端设备和各种外部设备。虽然以太网接口和USB接口也是以一个串行流进行数据传送的,但是串口连接通常特指那些与RS-232标准兼容的硬件或者调制解调器的接口。

    串行接口简称串口(通常指COM接口),是采用串行通信方式的扩展接口。串口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用。串口的特点是通信线路简单,只要一对传输线就可以实现双向通信从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。在Linux中,同样存在着大量的串口,本文我们就来聊聊Linux下的串口。

    一、串口需要的头文件

    二、打开关闭串口

    对于串口设备文件的操作与其他文件操作基本相同。可以使用系统调用open(), close()打开或关闭串口。

    在Linux下串口文件是在/dev下的,例如串口一为/dev/ttyS0,串口二为/dev/ttyS1。

    open(),close()系统调用的原型

    1: #include
    2: #include
    3: #include
    4: int open(const char *path, int oflags);
    5: int open(const char *path, int oflags, mode_t mode);
    6: #include
    7: int close(int fildes);
    8: 实例:打开串口ttyS0。
    9: int fd;
    10: /*以读写方式打开串口*/
    11: fd = open( "/dev/ttyS0", O_RDWR);
    12: if (-1 == fd){ 
    13: /* 不能打开串口一*/ 
    14: perror("open serial port error");
    15: }

    三、设置串口

    设置串口包括波特率设置、校验位、停止位设置。在串口设置中主要是设置struct termios结构体成员的值。

    struct termios结构如下

    1: #include
    2: struct termio
    3: {
    4: unsigned short c_iflag; /* input options输入模式标志 */
    5: unsigned short c_oflag; /* output options输出模式标志 */
    6: unsigned short c_cflag; /* control options控制模式标志*/
    7: unsigned short c_lflag; /* local mode flags */
    8: unsigned char c_line; /* line discipline */
    9: unsigned char c_cc[NCC]; /* control characters */
    10: };

    相关推荐:《Linux视频教程

    以上就是linux串口是什么意思的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:linux
    上一篇:linux中m4是什么 下一篇:dos命令与linux命令的区别是什么
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• linux下安装zip的命令有哪些• linux怎么关闭selinux• linux怎么查询mac地址• linux怎么安装mongodb• php在windows和linux中有什么区别吗
    1/1

    PHP中文网