文档详情

微处理器系统结构与嵌入式系统-第十一章_基于ARM微处理器的软件件系统设计资料.ppt

发布:2016-04-13约9.43千字共36页下载文档
文本预览下载声明
数据格式设置函数 int set_Parity(int fd,int databits,int stopbits,int parity) { struct termios options; if ( tcgetattr( fd,options) != 0) { perror(SetupSerial 1); return(FALSE); } options.c_cflag = ~CSIZE; switch (databits) //设置数据位个数 { case 7: options.c_cflag |= CS7; //设置数据位为7位 break; case 8: options.c_cflag |= CS8; //设置数据位为8位 break; default: fprintf(stderr,Unsupported data sizen); return (FALSE); } 数据格式设置函数 switch (stopbits) //设置停止位个数 { case 1: options.c_cflag = ~CSTOPB; //设置停止位为1位 break; case 2: options.c_cflag |= CSTOPB; //设置停止位为2位 break; default: fprintf(stderr,Unsupported stop bitsn); return (FALSE); } switch (parity) //设置校验位属性 { case n: case N: options.c_cflag = ~PARENB; //关闭奇偶校验 options.c_iflag = ~INPCK; //关闭输入奇偶校验检测 break; case o: case O: options.c_cflag |= (PARODD | PARENB); //设置为奇效验 options.c_iflag |= INPCK; //打开输入奇偶校验检测 break; case e: case E: options.c_cflag |= PARENB; //打开奇偶校验 options.c_cflag = ~PARODD; //设置为偶效验 options.c_iflag |= INPCK; //打开输入奇偶校验检测 break; default: fprintf(stderr,Unsupported parityn);//不能识别的校验类型 return (FALSE); } (3)读写串口实现数据传输 从串口发送数据: 使用文件操作write函数实现数据发送,示例程序如下: char buffer[1024]; int Length; int writeByte; writeByte = write(fd, buffer ,Length); 功能:将发送缓冲区buffer中Length大小的数据从串口发出。 从串口接收数据: 使用文件操作read函数实现数据接收,示例程序如下: char buffer[1024]; int Length; int readByte; readByte= read(fd,buffer,Length); 功能:读取串口接
显示全部
相似文档