+ -
当前位置:首页 → 问答吧 → 串口问题,求助!

串口问题,求助!

时间:2006-01-05

来源:互联网

linux下串口通信,用write()函数发一字符串,

是不是发送方只能设置为char *dev ="/dev/ttyS0";  fd = OpenDev(dev);

而不能设置成char *dev ="/dev/ttyS1"; fd = OpenDev(dev);

哪位大侠知道,望告诉,求助串口能同时收发的方法      

作者: danghaidong   发布时间: 2006-01-05

ttyS0 = com1
ttyS1 = com2
ttyS2 = com3
以读写的方式打开就可以了      

作者: windnuaa   发布时间: 2006-01-05

发送方主程序:

int main(int argc, char **argv){
        int fd;
        int write;
        char buff[512];
        char *dev  = "/dev/ttyS0"; //串口一
fd = OpenDev(dev);
        set_speed(fd,19200);
        if (set_Parity(fd,8,1,'N') == FALSE)  {
                printf("Set Parity Errorn");
                exit (0);
        }
write(fd,"nihao",5);
//close(fd);  
        // exit (0);
}



接收方主程序:

int main(int argc, char **argv){
        int fd;
        int nread;
        char buff[512];
        char *dev  = "/dev/ttyS1"; //串口二
        fd = OpenDev(dev);
        set_speed(fd,19200);
        if (set_Parity(fd,8,1,'N') == FALSE)  {
                printf("Set Parity Errorn");
                exit (0);
        }
while (1) //循环读取数据
{   
        while((nread = read(fd, buff, 512))>0)
        {
  printf( "%s\n", buff);   
        }
}
        //close(fd);  
        // exit (0);
}



发送方设为char *dev ="/dev/ttyS0";接收方设为char *dev ="/dev/ttyS1";在接收方的终端就能接收字符,但是发送方设为char *dev ="/dev/ttyS1";接收方设为char *dev ="/dev/ttyS0";就接收不到字符,郁闷      

作者: danghaidong   发布时间: 2006-01-05

急!!!!      

作者: danghaidong   发布时间: 2006-01-06

只用/dev/ttyS0,以读写方式打开就可以对它进行读写了,有点晕      

作者: windnuaa   发布时间: 2006-01-09

楼上的大侠,能说得更明白一些吗,拜托      

作者: danghaidong   发布时间: 2006-01-09

同对文本文件进行读写操作一样,还要怎么才能明白      

作者: windnuaa   发布时间: 2006-01-13

热门下载

更多