Firefly开源社区

12
发表新贴

[Linux] RV1126开发板 UART通信问题

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2021-6-28 15:43:54     
通过杜邦线短接RV1126开发版, EXTENSION  3RX 3TX 1RX 1TX 4RX 4TX三组线,用echo命令输出 只有写 没有读,短接不成功无法通信。

[root@RV1126_RV1109:~]# echo 'test' > /dev/ttyS0 && cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A mmio:0xFF560000 irq:32 tx:12 rx:0
[root@RV1126_RV1109:~]# echo 'test' > /dev/ttyS0 && cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A mmio:0xFF560000 irq:32 tx:18 rx:0
[root@RV1126_RV1109:~]# echo 'test' > /dev/ttyS0 && cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A mmio:0xFF560000 irq:32 tx:24 rx:0






回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11135

优秀版主

发表于 2021-6-29 09:19:47     
ttyS0 是串口0,用来和板载蓝牙通信。你要使用的是串口 3、1、4,请自行修改内核开启 对应串口功能编译烧写,然后操控对应的 ttySx 设备。参考文档:sdk/docs/Kernel/UART
回复

使用道具 举报

25

积分

0

威望

0

贡献

技术小白

积分
25
发表于 2021-7-11 09:58:40     
板蓝根 发表于 2021-6-29 09:19
ttyS0 是串口0,用来和板载蓝牙通信。你要使用的是串口 3、1、4,请自行修改内核开启 对应串口功能编译烧写 ...

您好,我们按照文档,修改了kernel/arch/arm/boot/dts/rv1126-firefly-jd4.dts文件,增加了如下内容:
&uart1 {
        status = "okay";
};

&uart3 {
        status = "okay";
};

&uart4 {
        status = "okay";
};
然后发现,ttyS1、ttyS3、ttyS4设备都有,但是短接后,只有ttyS1有数据,ttyS3、ttyS4没有数据。
这是什么情况,如何排查呢?
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11135

优秀版主

发表于 2021-7-12 09:22:24     
排查有没有初始化成功,引脚有没有被设备树其他功能复用
回复

使用道具 举报

25

积分

0

威望

0

贡献

技术小白

积分
25
发表于 2021-7-12 13:13:44     
板蓝根 发表于 2021-7-12 09:22
排查有没有初始化成功,引脚有没有被设备树其他功能复用

我们排查下来,没有占用。
可否提供具体的检测方法,或者检查工具?
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11135

优秀版主

发表于 2021-7-12 14:47:54     
没有工具,串口是比较简单的接口,一般都是直接从 Soc 出来没有经过什么外部电路。我们如果出现调试不通的状况基本上都是引脚复用问题,如果您完全确认没有引脚复用,那么只能挨个查寄存器的值对不对 了。
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11135

优秀版主

发表于 2021-7-12 14:51:06     
还有引脚复用的通道要选对喔,比如 uart3 有 m0/m1/m2 通道,要看你硬件使用的是哪个通道
回复

使用道具 举报

25

积分

0

威望

0

贡献

技术小白

积分
25
发表于 2021-7-12 15:01:12     
板蓝根 发表于 2021-7-12 14:51
还有引脚复用的通道要选对喔,比如 uart3 有 m0/m1/m2 通道,要看你硬件使用的是哪个通道

请教一下,这个怎么查?
我们SDK里的dtsi文件没改过,只是在板级dts里把uart3和4打开了而已。
默认的SDK里的dtsi文件配置不是正确的吗?
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11135

优秀版主

发表于 2021-7-13 09:13:14     
本帖最后由 板蓝根 于 2021-7-13 09:39 编辑

你用的是我们的套板,还是核心板自己设计底板?我们的套板 uart3/uart4 硬件链接的是 m1 通道
回复

使用道具 举报

25

积分

0

威望

0

贡献

技术小白

积分
25
发表于 2021-7-13 16:41:31     
板蓝根 发表于 2021-7-13 09:13
你用的是我们的套板,还是核心板自己设计底板?我们的套板 uart3/uart4 硬件链接的是 m1 通道

用的是你们的套板
回复

使用道具 举报

返回列表
12
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表