TI中文支持网
TI专业的中文技术问题搜集分享网站

AM3358使用TI的SDK来操作串口 不能正常工作

       您好,我使用的SDK是ti-processor-sdk-linux-am335x-evm-04.02.00.09-Linux-x86-Install.bin ,使用make all生成的系统镜像,然后按照Linux的文件读写的方式来操作ttyS1,但是有多个函数会返回错误值。串口操作程序和很多资料的比对过,没发现什么异常。

       请问,AM3358的SDK使用uart1,在编译时需要什么配置吗?还是在程序里需要特殊设置? 能否给一份参考程序?非常感谢各位的解答!

 

下面是我的部分程序(到了tcgetattr();函数就返回错误值了,之后的函数也有返回错误值):

if((fd = open("/dev/ttyS1", O_RDWR | O_NOCTTY | O_NDELAY)) == -1)
{
  printf("Open /dev/ttyS1 error.\n");
  exit(1);
}

tcgetattr(fd, &options); 

 

baoqing yan:

初次接触AM335x,想不出来是什么原因。

Denny%20Yang99373:

回复 baoqing yan:

排查一下看看DEVICE TREE里面有没有把UART1给定义了。可以对比UART0检查一下。

yongqing wang:

回复 Denny%20Yang99373:

装个MINCOM成熟的串口工具看看可不可以,看看这个端口是否可用

baoqing yan:

回复 yongqing wang:

刚刚试了一下,打印出 microcom: can't tcsetattr for /dev/ttyS1: Input/output error ,和我的程序结果相似。

我刚刚查看SDK中的am335x-boneblack.dts文件,感觉只定义了UART0的引脚,没有定义UART1的,是不是这个原因?

baoqing yan:

回复 Denny%20Yang99373:

请问是不是SDK中的am335x-boneblack.dts文件? 我查看了这个文件,好像只对UART0引脚定义了 ,其余的都没定义,该如何去修改此文件?

yongqing wang:

回复 baoqing yan:

没有配置,可以参考uart0的配置

赞(0)
未经允许不得转载:TI中文支持网 » AM3358使用TI的SDK来操作串口 不能正常工作
分享到: 更多 (0)