您尚未登录。

楼主 # 2023-02-17 17:21:06

谢图图
会员
注册时间: 2023-02-15
已发帖子: 7
积分: 7

V3S串口921600波特率使用

使用全志V3S,需要使用串口波特率921600,最后发现波特率只有750000,无法继续上调。经过学习了解到应该是uboot中时钟选择问题,按照之前大佬们的讨修改u-boot/arch/arm/macg-sunxi/clock_sun6i.c中:

void clock_init_uart(void)
{
#if CONFIG_CONS_INDEX < 5
	struct sunxi_ccm_reg *const ccm =
		(struct sunxi_ccm_reg *)SUNXI_CCM_BASE;

	/* uart clock source is apb2 */
	writel(APB2_CLK_SRC_PLL6|	//原本为APB2_CLK_SRC_OSC24M
	       APB2_CLK_RATE_N_1|
	       APB2_CLK_RATE_M(1),
	       &ccm->apb2_div);

	/* open the clock for uart */
	setbits_le32(&ccm->apb2_gate,
		     CLK_GATE_OPEN << (APB2_GATE_UART_SHIFT +
				       CONFIG_CONS_INDEX - 1));

	/* deassert uart reset */
	setbits_le32(&ccm->apb2_reset_cfg,
		     1 << (APB2_RESET_UART_SHIFT +
			   CONFIG_CONS_INDEX - 1));
#else
	/* enable R_PIO and R_UART clocks, and de-assert resets */
	prcm_apb0_enable(PRCM_APB0_GATE_PIO | PRCM_APB0_GATE_UART);
#endif
}

和/u-boot/include/configs/sunxi-common.h中的

/* Serial & console */
#define CONFIG_SYS_NS16550_SERIAL
/* ns16550 reg in the low bits of cpu reg */
#define CONFIG_SYS_NS16550_CLK		600000000   //原本为24000000
#ifndef CONFIG_DM_SERIAL
# define CONFIG_SYS_NS16550_REG_SIZE	-4
# define CONFIG_SYS_NS16550_COM1		SUNXI_UART0_BASE
# define CONFIG_SYS_NS16550_COM2		SUNXI_UART1_BASE
# define CONFIG_SYS_NS16550_COM3		SUNXI_UART2_BASE
# define CONFIG_SYS_NS16550_COM4		SUNXI_UART3_BASE
# define CONFIG_SYS_NS16550_COM5		SUNXI_R_UART_BASE
#endif

修改后串口终于能以921600波特率发送数据了,但不知道为何V3S变得十分卡顿。是否是由于修改APB时钟导致其他功能异常?有没有大佬能帮忙解答下或者有无大佬成功修改过v3s串口波特率为921600?非常需要帮助

离线

楼主 #1 2023-02-22 10:30:31

谢图图
会员
注册时间: 2023-02-15
已发帖子: 7
积分: 7

Re: V3S串口921600波特率使用

有没有大佬指点一下呢

离线

#2 2023-02-24 22:13:22

Alexey_77
会员
注册时间: 2019-11-03
已发帖子: 8
积分: 11

Re: V3S串口921600波特率使用

for 921600 baud 15MHz clock is enough....

离线

楼主 #3 2023-03-02 17:45:50

谢图图
会员
注册时间: 2023-02-15
已发帖子: 7
积分: 7

Re: V3S串口921600波特率使用

Alexey_77 说:

for 921600 baud 15MHz clock is enough....

是指设置15Mhz就够了吗?那请问需要选择哪个时钟?麻烦能告知下吗?

离线

#4 2024-05-17 11:21:56

游侠TT
会员
注册时间: 2024-04-24
已发帖子: 9
积分: 9

Re: V3S串口921600波特率使用

你有没有解决。一样的问题

离线

楼主 #5 2024-05-17 12:25:04

谢图图
会员
注册时间: 2023-02-15
已发帖子: 7
积分: 7

Re: V3S串口921600波特率使用

游侠TT 说:

你有没有解决。一样的问题

没有解决,我们用来连接无人机的,这个问题解决不了换芯片了

离线

#6 2024-05-17 13:57:23

游侠TT
会员
注册时间: 2024-04-24
已发帖子: 9
积分: 9

Re: V3S串口921600波特率使用

谢图图 说:
游侠TT 说:

你有没有解决。一样的问题

没有解决,我们用来连接无人机的,这个问题解决不了换芯片了

巧了,我也是,你最后用的什么芯片

离线

楼主 #7 2024-05-20 14:23:46

谢图图
会员
注册时间: 2023-02-15
已发帖子: 7
积分: 7

Re: V3S串口921600波特率使用

游侠TT 说:
谢图图 说:
游侠TT 说:

你有没有解决。一样的问题

没有解决,我们用来连接无人机的,这个问题解决不了换芯片了

巧了,我也是,你最后用的什么芯片

改用全志的V851SE,那个系统时钟配置后波特率921600串口能够正常使用,系统不会卡死。后面就转给其他人调了。

离线

#8 2024-05-21 13:55:40

游侠TT
会员
注册时间: 2024-04-24
已发帖子: 9
积分: 9

Re: V3S串口921600波特率使用

@谢图图
我全志的v3s调成功了,csdn上搜它高速时钟的设置,u-boot和内核都得改,串口0使用115200和串口2使用921600不会卡死了

离线

#9 2024-05-21 14:03:26

ubuntu
会员
注册时间: 2020-03-30
已发帖子: 243
积分: 221

Re: V3S串口921600波特率使用

游侠TT 说:

@谢图图
我全志的v3s调成功了,csdn上搜它高速时钟的设置,u-boot和内核都得改,串口0使用115200和串口2使用921600不会卡死了

请问最后具体是怎么解决的呢?

离线

#10 2024-06-05 17:20:49

游侠TT
会员
注册时间: 2024-04-24
已发帖子: 9
积分: 9

Re: V3S串口921600波特率使用

ubuntu 说:
游侠TT 说:

@谢图图
我全志的v3s调成功了,csdn上搜它高速时钟的设置,u-boot和内核都得改,串口0使用115200和串口2使用921600不会卡死了

请问最后具体是怎么解决的呢?

重新按照csdn上的方法修改uboot和内核,重新编译后放进SD卡就好了

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn