当前位置: 技术问答>linux和unix
linux串口读取read函数始终返回值为1,没有返回读到的字符数
来源: 互联网 发布时间:2016-11-21
本文导语: 我把读函数放在一个线程里边,代码如下: char buf[1024]; while(a=read(c,buf,6)>0) buf[a+1]=0; 照道理是read返回读到的字符数,我用这个字符数,给buf一个结尾。。之前用也是好的,read字符也能读到,读10个,20个都没有...
我把读函数放在一个线程里边,代码如下:
照道理是read返回读到的字符数,我用这个字符数,给buf一个结尾。。之前用也是好的,read字符也能读到,读10个,20个都没有问题。。。但是返回值就是1 请高手指教为什么这样了
我串口是 :O_RDWR |0_NONBLOCK打开的 ,raw模式
char buf[1024];
while(a=read(c,buf,6)>0)
buf[a+1]=0;
照道理是read返回读到的字符数,我用这个字符数,给buf一个结尾。。之前用也是好的,read字符也能读到,读10个,20个都没有问题。。。但是返回值就是1 请高手指教为什么这样了
我串口是 :O_RDWR |0_NONBLOCK打开的 ,raw模式
|
扫了一眼,这个死循环是干啥的??
while(1)
p=buf;
while(1)
p=buf;