linux调试串口改为普通串口使用

一、介绍
一般一个linux开发板的串口0默认作为调试串口使用,也就是linux的shell调试终端,如果要作为普通串口使用需要相应的设置,这里以应用层修改的方法介绍怎么使用

二、使用方法
1、切换调试终端到其他串口

//将shell切换到其他串口终端
int change_cosole(char *tty)
{
    int fp = 0;

    fp = open(tty, O_RDONLY); 
    if(fp == -1)
    {
        printf("切换调试串口失败\n");
        return -1;
    }
    ioctl(fp,TIOCCONS);// 改变console到当前串口
    close(fp);

    return 0;
}

2、将其他串口(可以是虚拟串口)设置成终端

int main(void)
{
	int fd;
	char buffer[256]={0};

    change_cosole("/dev/tty1");//将终端切换到tty1
	fd = open_uart();//打开串口
	set_opt(fd,115200,8,'N',1);//配置串口参数 波特率 数据位8 校验无 停止位1位

	printf("serial opened,wait rcv\n");//打印提示语

	while(1)
	{
			memset(buffer,0,256);//接收数组清零
			while (read(fd,buffer,sizeof(buffer)) == 0);//等待电脑串口调试助手发送数据
			printf("rcved %s\n",buffer);//将收到的数据打印出来
			write(fd,buffer,strlen(buffer));//将收到的数据发送回去

	}
	close(fd);//关闭串口
    change_cosole("/dev/ttyS0");//将终端切换到ttyS0
    
	return 0;
}  

然后就可以像普通串口一样操作了。

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值