一:串口概述
UART的操作主要可分为以下几个部分:数据发送,数据接收,产生中断,设置波特率,Loopback模式,红外模式以及硬软流控模式。在Linux中,所有的设备文件一般都是位于“/dev”下,其中串口1和串口2对应的设备名依次为“/dev/ttyS0”和“/dev/ttyS1”,而且USB转串口的设备名通常为“/dev/ttyUSB0”和“/dev/ttyUSB1”,可以查看在“/dev”下的文件以确认,在Linux下对设备的操作方法与对文件的操作方法是一样的,因此对串口的读写就可以使用简单的read()和write()函数来完成,所不同只是需要对串口的其他参数另做配置。
二:串口设置
串口的设置主要是设置 struct termios 结构体的各成员值:
#include<termios.h>
struct termios
{
unsigned short c_iflag; /* 输入模式标志 */
unsigned short c_oflag; /* 输出模式标志 */
unsigned short c_cflag; /* 控制模式标志*/
unsigned short c_lflag; /* 本地模式标志 */
unsigned char c_line; /* 线路规程 */
unsigned char c_cc[NCC]; /* 控制特性 */
speed_t c_ispeed; /* 输入速度 */
speed_t c_ospeed; /* 输出速度 */
};
termios 是在 POSIX 规范中定义的标准接口,表示终端设备(包括虚拟终端、串口等)。口是一种终端设备,一般通过终端编程接口对其进