在 RK3568 Linux 系统中修改串口(UART)波特率通常涉及到修改设备树(Device Tree)中的 UART 节点配置或在启动时通过内核命令行参数进行配置。以下是两种常见的方法:
方法一:修改设备树
-
定位 UART 节点: 找到设备树源文件(
.dts
)中对应的 UART 节点。 -
设置波特率属性: 在 UART 节点中设置
baudrate
属性为所需的波特率值,例如115200
。 -
&uart0 { status = "okay"; baudrate = <115200>; // 设置波特率为 115200 // 其他 UART 配置... };
-
编译设备树: 修改完成后,编译设备树源文件以生成新的设备树二进制文件(
.dtbo
)。 -
加载新的设备树: 将生成的
.dtbo
文件放置在适当的目录,如/boot/overlays/
或/lib/firmware/
,并在启动时通过引导加载器加载它。
方法二:通过内核命令行参数
设置内核启动参数: 在启动时,通过添加或修改内核启动参数来设置 UART 波特率。这可以通过修改 /boot/cmdline.txt
文件或通过引导加载器(如 U-Boot)进行。
在 cmdline.txt
文件中添加或修改以下行:
console=ttyS0,115200n8
-
这里
ttyS0
是 UART 设备的设备名,115200
是波特率,n8
表示 8 个数据位,无奇偶校验。 -
重启系统: 修改启动参数后,重启系统以应用更改
-
方法三:运行时修改(无需重启)
- 使用
stty
命令: 如果您只是想在当前会话中更改波特率,可以使用stty
命令。 -
stty -F /dev/ttyS0 115200
这里 /dev/ttyS0
是 UART 设备的设备文件,115200
是波特率,cs8
表示 8 个数据位,-cstopb
表示 1 个停止位,-parenb
表示无奇偶校验。
检查更改: 使用 stty
命令查看当前串口的配置,确保波特率已正确设置
stty -F /dev/ttyS0
请注意,具体的设备树节点名称、设备文件名和启动参数可能会根据您的系统配置和 RK3568 开发板的型号而有所不同。