UART 波特率上限
SDK 默认 UART 波特率上限为 1.5M,如果需要更高的波特率,需要修改设备树 UART 时钟配置
1. 方式一:补充 sclk/pclk 时钟源和 clock-frequency
给所有使用的 UART 补充 sclk/pclk 时钟源和 clock-frequency,使驱动将 apb-uart 切到 PLL 并提频到 32MHz,从而支持更高波特率。
以 UART3 为例
&uart3 {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&uart3_pins_active>;
pinctrl-1 = <&uart3_pins_sleep>;
clocks = <&ccu CLK_BUS_UART3_APB>, <&ccu CLK_APB_UART>, <&ccu CLK_PLL_PERI0_480M>;
clock-frequency = <32000000>;
status = "okay";
};需要所有使能的 UART 都增加这个配置
2. 方式二:ccu 节点统一配置
设备树新增 ccu 节点配置
&ccu {
assigned-clocks = <&ccu CLK_APB_UART>;
assigned-clock-parents = <&ccu CLK_PLL_PERI0_480M>;
assigned-clock-rates = <32000000>;
};作者:陈柏林 创建时间:2026-09-30 18:12
最后编辑:陈柏林 更新时间:2026-10-12 11:13
最后编辑:陈柏林 更新时间:2026-10-12 11:13