4G连网串口初始化函数

4 提交 / 0个新回复
最新回复
4G连网串口初始化函数

/*

*@brief:config_com 初始化串口,设置波特率,停止位,数据位,校验位

*@param:fd 文件描述符

*@return:void

*/

void config_com(int  fd)

{

   struct termios opt;

   tcgetattr(fd, &opt);                 //获取原先配置的信息

   cfsetispeed(&opt, B115200);  //设置输入波特率是115200

   cfsetospeed(&opt, B115200);//设置输出波特率是115200

   opt.c_cflag &= ~CSIZE;         //屏蔽其他标志

   opt.c_cflag |= CS8;                //数据位是8bit

   opt.c_cflag &= ~PARENB;    //无校验位

   opt.c_cflag &= ~CSTOPB;    //设置一个停止位

   opt.c_iflag &= ~INPCK;        //不允许输入奇偶校验

   if(tcsetattr(fd,  TCSANOW,  &opt) != 0)

   {

        fprintf(stderr,  "set com failure :%s\n", strerror(errno));

        exit(EXIT_FAILURE);

   }

   tcflush(fd,  TCIOFLUSH);

}