RV1126 调试串口更换

RV1126 调试串口更换

​ 根据项目需求 在结构设计完导致调试串口无法使用 因此采取更换可使用的串口。在网上看了许多博客最后都是导致我的系统启动失败了。根据阅读文档 Rockchip_Developer_Guide_UART_FAQ_CN 下面有三个步骤:

1. ddr loader 修改

首先我们要知道自己板子用的是哪个MINIALL.ini。

因此在单独编译uboot 执行 ./build.sh uboot 打印会出现 pack loader ok.(rv1126_spl_loader_v1.08.108.bin)(0.00) pack loader okay! Input: /home/alientek/work/rkbin/RKBOOT/RV1126MINIALL.ini

所以我的板子对应的ini 就是这个文件了 进去看看

 FlashData=bin/rv11/rv1126_ddr_924MHz_v1.08.bin
 FlashBoot=bin/rv11/rv1126_spl_v1.08.bin

原来是rv1126_ddr_924MHz_v1.08.bin 这个文件 找不到 find . -name rv1126_ddr_924MHz_v1.08.bin 下来我们将运行命令 到处这个.bin 文件 (如果以后还要修改的话建议 cp 一份备用)

ls rv1126_ddr_924MHz_v1.08.bin
rv1126_ddr_924MHz_v1.08.bin      rv1126_ddr_924MHz_v1.08.bin_bak

我是做了备份的

下面就要进行导出了.

进入 rkbin/tools 目录下 可以看一下 ddrbin_tool_user_guide.txt 文件

首先先touch 一个 rv1126_ddr_924MHz_v1.08.bin 不然会出错

./ddrbin_tool -g gen_param.txt rv1126_ddr_924MHz_v1.08.bin 导出文件 你也可以看一下其中的内容

之后进入 ddrbin_param.txt文件就行就该 注意 : 根据你自己的 去修改其他空的也不要管

 uart id=1   // 对应的uartx   x代表第几个 也就是你对应的ttySx 你的原理图的 uartx
 uart iomux=1  // 比如你是uart1m1 则填写1 如果是 uart1m0 填0
 uart baudrate=115200  //波特率

我就修改这三个

下来进行生成

./ddrbin_tool ddrbin_param.txt rv1126_ddr_924MHz_v1.08.bin 再把这个文件拷贝到 bin/rv11/ 目录下 。

最后一步直接编译 uboot 吧 u-boot目录下的 rv1126_spl_loader_v1.08.108.bin 烧录的时候替换掉那个MiniLoaderAll.bin

最后一个内核

chosen: chosen {
	bootargs = "earlycon=uart8250,mmio32,0xfe670000 console=ttyFIQ0 xxxxxxxxxxx";
}  这个0xfe670000 就是uart3 的寄存器基地址  

找到fiq-debugger节点,修改serial-id为3,修改UART3引脚复用配置。注意,同时需要将切换为打印串口
的UART3作为普通串口的节点禁用。

fiq-debugger {
compatible = "rockchip,fiq-debugger";
rockchip,serial-id = <3>;
rockchip,wake-irq = <0>;
/* If enable uart uses irq instead of fiq */
rockchip,irq-mode-enable = <1>;
rockchip,baudrate = <1500000>;
/* Only 115200 and 1500000 */
interrupts = <GIC_SPI 252 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&uart3m0_xfer>;
status = "okay";
};

最后编译内核 烧录 解决

要在RV1126调试ES8311 CODEC,您可以按照以下步骤进行: 1. 确保您的RV1126开发板已正确连接ES8311 CODEC芯片。 2. 在RV1126开发环境中打开音频驱动程序的源代码。 3. 确认您已正确配置了CODEC的I2C地址和其他相关参数。在RV1126上,您可能需要修改设备树(Device Tree)文件以配置I2C总线和CODEC设备。 4. 生成并烧录修改后的设备树文件到RV1126开发板上。确保设备树文件中正确设置了CODEC的I2C地址和其他参数。 5. 使用RV1126的I2C工具或命令行工具,例如`i2cset`和`i2cget`,通过I2C总线与ES8311 CODEC进行通信。 以下是一些常用的命令示例: - 使用`i2cset`命令写入寄存器的值: ``` i2cset -f -y <bus_number> <device_address> <register_address> <value> ``` 其中,`<bus_number>`是I2C总线的编号,通常为0;`<device_address>`是CODEC设备的I2C地址;`<register_address>`是要写入的寄存器地址;`<value>`是要写入的值。 - 使用`i2cget`命令读取寄存器的值: ``` i2cget -f -y <bus_number> <device_address> <register_address> ``` 其中,参数含义与上述相同。 6. 检查您的驱动程序是否正确地初始化了CODEC芯片,并正确设置了音频输入/输出等参数。 7. 使用适当的工具或API在您的应用程序中播放音频并监视CODEC的状态和输出。 请注意,具体的调试步骤可能因您使用的RV1126开发环境、驱动程序和工具而有所不同。确保参考相关文档和资源以获取更详细的指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值