linux串口操作函数
http://www.doczj.com/doc/21f21f0416fc700abb68fcca.html/art/200910/157599.htm
1.打开串口: fd = open("/dev/ttyf1", O_RDWR | O_NOCTTY | O_NDELAY); fcntl(fd, F_SETFL, 0); O_NOCTTY 选项防止程序受键盘控制中止操作键等影响. O_NDELAY 告诉 UNIX 不必另一端端口是否启用.(检测 DCD 信号线状态)
2.往串口发送数据n = write(fd, "ATZ\r", 4);
3.从串口读取数据当以原始数据模式(raw data mode)打开串口时,read 系统调用将不管串口输入缓存里有多少字符可读都返回.若没有数据,则阻塞直至有字符到来,或定时器超时.串口设置这个选项后,read 调用都是立即返回.没有数据可读时,read 返回 0 fcntl(fd, F_SETFL, FNDELAY);
解除这个功能是
fcntl(fd, F_SETFL, 0); 4.关闭串口
close(fd);
二.标准的 POSIX 配置串口参数串口收发数据主要是要做好端口配置工作,需要包含,定义终端控制结构以及
POSIX控制函数
termios结构
Table 3 - Termios Structure Members
Member Description
c_cflag Control options
c_lflag Line options
c_iflag Input options