当前位置: 技术问答>linux和unix
嵌入式linux,串口初始化时,无法设置串口属性
来源: 互联网 发布时间:2017-01-30
本文导语: 本帖最后由 eggking1102 于 2011-11-01 15:24:04 编辑 各位好,请教大家一个问题, 在arm板子上写一个串口通讯的代码 在初始化串口的时候,一旦进行设置,就会死在设置函数中 比如这么做: int fd; struct termios options; fd =...
在arm板子上写一个串口通讯的代码
在初始化串口的时候,一旦进行设置,就会死在设置函数中
比如这么做:
int fd;
struct termios options;
fd = open("/dev/ttyAMA0", O_RDWR | O_NOCTTY);
tcgetattr(fd, &options);
tcsetattr(fd,TCSANOW,&options);
这样运行的话,就会死在tcsetattr函数里面不出来
这个到底是什么原因呢?
请大家指教,谢谢
|
open时,增加|O_NDELAY 属性
tcsetattr前边增加:
试试看
tcsetattr前边增加:
options.c_cflag |= (CLOCAL | CREAD);
tcflush( fd , FLUSHMETHOD);
试试看
|
或者用tcflush(fd,TCIOFLUSH);