串口
struct termio{
unsigned short c_iflag;/*输入模式标志*/
unsigned short c_oflag;/*输出模式标志*/
unsigned short c_cflag/*控制模式标志*/
unsigned short c_lflag;/*本地模式标志*/
unsigned short c_line
unsigned short c_cc[NCC]
}
tcgetattr(fd,&oldtio);/*使用串口前先保存串口原来配置,&oldtio
是termio的变量;*/
/*设置输入输出的波特率函数,成功返回0,失败返回-1*/
cfsetispeed(&newtio,B115200);
cfsetospeed(&newtio,B115200);
/*打开串口*/
fd=open("/dev/ttyS0",O_RDWR|O_NOCCTY|O_NDELAY);
fcntl(fd,F_SETFL,0);阻塞串口,等待串口数据读入
isattty(STDIN_FILENO);确认串口是否打开
tcsetattr(fd,OPTION,&newtio);激活配置的串口
OPTION:TCSANOW;改变配置马上生效
TCSADRAIN;在所有写入fd的输出都结束后生效
TCSAFLUSH;所有写入fd引用对象的输出都被结束后生效,所有已接受但
未读入的输入都在改变发生前丢弃;