我的代码如下,请各位帮我看看为什么接受数据的时候分段接收,我给它发的是“0003468055”他的接受结果是这样的
open ttyS0...
nread=8
buff=0003468
nread=6
buff=005
我想应该是我程序的问题请大家帮忙看看,下面我把程序给大家发一下:
int speed_arr[]={B38400,B19200,B9600,B4800,B2400,B1200,B300,B38400,B19200,B9600,B4800,B2400,B1200,B300,B115200};
int name_arr[]={38400,19200,9600,4800,2400,1200,300,38400,19200,9600,4800,2400,1200,300,115200};
int open_port(int fd,int comport)
{
if(comport==0)
{
fd=open("/dev/ttyS0",O_RDONLY|O_NOCTTY);
if(-1==fd)
{
perror("Can't open serial port0 ");
return (-1);
}
else
printf("open ttyS0........\n");
}
else if(comport==1)