imx6q 串口设置

本文档介绍了如何使用C语言函数打开、关闭并配置imx6q平台的串口,包括设置波特率、流控制、数据位、停止位和校验位。通过UART_Open()函数打开串口,UART_Set()函数进行详细设置,如波特率匹配、控制模式选择等,最后UART_Init()初始化串口。
摘要由CSDN通过智能技术生成


int UART_Open(char * port)  

int uartfd;
    uartfd = open(port, O_RDWR|O_NOCTTY|O_NDELAY);  
    if (-1 == uartfd)  
    { 
        perror("Can't Open Serial Port");  
        return -1;  
    }                                   
    if(fcntl(uartfd, F_SETFL, 0) < 0)  
    {  
        printf("fcntl failed!\n");  
        return -1;  
    }       
    else  
    {  
          printf("fcntl=%d\n",fcntl(uartfd, F_SETFL,FNDELAY));  
    }       
   /* if(0 == isatty(STDIN_FILENO))  
    {  
         printf("standard input is not a terminal device\n");  
         return -1;  
    }  
    else  
    {  
         printf("isatty success!\n");  
    }        */        
    printf("fd->open=%d\n",uartfd);  
    return uartfd;  
}  


void UART_Close(int uartfd)  
{  
    close(uartfd);  
}    


int UART_Set(int uartfd,int speed,int flow_ctrl,int databits,int stopbits,int parity)  

     int   i;  
     int   speed_arr[] = { B115200, B19200, B9600, B4800, B2400, B1200, B300};  
     int  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值