Android 10 DEBUG UART 更改为普通串口使用

基于展锐SL8541E平台设计的SU806-CN智能模组 DEBUG UART 关闭打印调试信息


目的:串口数目满足不了项目的使用需求,关闭 DEBUG UART 调试信息的打印做普通串口使用,使用adb工具发指令的方式进行串口收发数据进行测试

1、删除设备树部分内容,修改路径和文件bsp\kernel\kernel4.14\arch\arm\boot\dts\su806-v2-evk\su806-native.dts
修改内容:

-	chosen {
-		stdout-path = &uart0;
-		bootargs = "earlycon=sprd_serial,0x508d0000,115200n8
-			console=ttyS0,115200n8 loglevel=4 init=/init root=/dev/ram0 rw
-			androidboot.hardware=sl8541e_su806_v2 vmalloc=360M androidboot.dtbo_idx=0 -printk.devkmsg=on androidboot.boot_devices=soc/soc:ap-ahb/20600000.sdio";
-	};
	
+	chosen {		
+		bootargs = "init=/init root=/dev/ram0 rw
+			androidboot.hardware=sl8541e_su806_v2 vmalloc=360M androidboot.dtbo_idx=0 +printk.devkmsg=on androidboot.boot_devices=soc/soc:ap-ahb/20600000.sdio";
+	};

2、下载完成后,重启模块,通过 cmd 进入 PC 端控制台,进入adb shell,进入./dev目录,输入su打开root权限
3、ls ttyS* //查看是否生成 UART 设备节点
4、busybox stty -F /dev/ttyS0 ispeed 115200 ospeed 115200 cs8 //设置debug串口波特率为115200,最大设置不能超过921600bps
5、busybox stty -F /dev/ttyS1 ispeed 30000000 ospeed 30000000 cs8 //设置流控UART波特率为3M/s,最大设置不超过3000000bps
6、在 PC 端打开任意一个 PC 串口调试工具(如 SSCOM),采用高速串口线(传输速率大于 3M)连接模块和 PC 端,对 debug 串口和硬件流控串口,通过以下互发指令进行验证。

echo XXX > dev/ttyS0 //向 debug 串口发送 XXX 数据
echo XXX > dev/ttyS1 //向硬件流控串口发送数据
cat /dev/ttyS0 & //接收从 debug 串口传来的数据
cat /dev/ttyS1 & //接收从硬件流控 UART 串口传来的数据
stty -F /dev/ttyS1 crtscts //开启硬件流控 UART 的硬件流控功能,只有将 RTS 引脚接地置为低电平时,才允许数据从模块发往 PC 端
stty -F /dev/ttyS1 -crtscts //关闭硬件控制,关闭后即为普通的 UART,收发

版权声明:本文为CSDN博主「Numeral_Life」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Numeral_Life/article/details/122989243

生成海报
点赞 0

Numeral_Life

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

QM2150平台 配置SPI死机

项目场景: 由于在该平台上需要调试一个spi设备,但是在调试过程发现:一旦在spi总线下挂载设备节点就会出现死机。 问题描述: 首先我们打开spi-log: kernel/msm-4.