27,511
社区成员




//9600,8数据位,无校验位,1停止位--9600,8,1,'n'
static Set_Port(int fd)
{
int baudrate;
struct termios newtio;
//波特率
baudrate=B9600;
tcgetattr(fd,&newtio);
bzero(&newtio,sizeof(newtio));
//setting c_cflag
newtio.c_cflag &=~CSIZE;
//设置数据位--8位
newtio.c_cflag |= CS8;
//设置校验--无校验位
newtio.c_cflag &= ~PARENB; /* Clear parity enable */
newtio.c_iflag &= ~INPCK; /* Enable parity checking */
//停止位--1
newtio.c_cflag &= ~CSTOPB;
newtio.c_cc[VTIME] = 0;
newtio.c_cc[VMIN] = 0;
newtio.c_cflag |= (CLOCAL|CREAD);
//newtio.c_oflag|=OPOST;
////输出模式:原始数据输出
newtio.c_oflag &= ~(OPOST);
newtio.c_iflag &=~(IXON|IXOFF|IXANY);
cfsetispeed(&newtio,baudrate);
cfsetospeed(&newtio,baudrate);
tcflush(fd, TCIFLUSH);
//配置立即生效
if (tcsetattr(fd,TCSANOW,&newtio) != 0){
perror("SetupSerial 3");
return -1;
}
return 0;
}