|
我也碰到了问题,我是在TQ2440上开发短信猫程序,写了一个简单的测试,但是结果不正确
高手帮下忙啊。
环境:短信猫本身肯定是好的,在window下用超级终端测试通过
串口属性是:9600,数据位8,无流控制,停止位1,无奇偶效验
代码如下:
struct termios term;
tcgetattr(fd_g,&term);
bzero(&term,sizeof(term));
term.c_cc[VTIME]=0;
term.c_cc[VMIN]=0;
term.c_cflag |= CS8;
term.c_cflag &= ~PARENB;
term.c_cflag &=~CSTOPB;
term.c_cflag &=~CRTSCTS;
term.c_oflag =0;
term.c_oflag &=~OPOST;
term.c_lflag |=0;
cfsetispeed(&term,B9600);
cfsetospeed(&term,B9600);
tcflush(fd_g,TCIFLUSH);
if (tcsetattr(fd_g,TCSANOW,&term)!=0){
return -1;
}
int i=-2;
i= write(fd_g,"AT+CMGF=1\r",strlen("AT+CMGF=1\r"));
printf("write:"+QString::number(i));
char readChar[10];
usleep(10000);
i = read(fd_g,readChar,strlen(readChar));
printf("read:"+QString::number(i));
输入结果:writ:10 read:0
为什么read不到数据啊??? |
|