创龙瑞芯微RK3568参数修改(调试口波特率和rootfs文件)

2023-10-19 14:04

本文主要是介绍创龙瑞芯微RK3568参数修改(调试口波特率和rootfs文件),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

    前面写了基本的文件编译、系统编译和系统烧写,差不多前期工作就准备的差不多了。目前的东西能解决大部分入门级的需求。当然如果需要开发的话,还需要修改其他东西,下面一步一步的给小伙伴介绍关键参数怎么修改。

给定波特率

    拿到开发板的时候,按照给的文档一步一步的来,达到烧写系统的程度并不是很难,但是调试的时候又遇到了问题。第一个就是连接调试串口的时候,这个挺麻烦。

    串口波特率:1500000。

    连接的软件:SecureCRT 7.3,必须用这个,其他的试过,好像都出不来,没办法,只能用跟这个,给的软件里面有,可以直接安装。

    进去之后按照步骤去改就行,至于怎么设置,这个就不多介绍了,很多网页都可以搜到。唯一需要告诉的就是1500000怎么设置。开始的很迷茫,串口波特率都是选择的,咋有1500000呢?

    没有办法选择这个波特率,下拉菜单里面没有。双击115200,直接写进去就好。

    注:这个方法搜了半天,可能是大家都感觉比较好弄。或者是用这个波特率的比较少,没人介绍。反正自己是弄了好久,没办法,知道了就很简单了,不知道就很麻烦。

题外话

    很多东西知道之后就很简单,不知道的时候就很难。有的小伙伴看了文章后感觉,你写的太简单了,不久这里修改一下么?但是如果你不知道是修改哪里呢,那就很困难了。就和密码一样,知道了规律肯定很简单,直接破译就好,但是如果不知道规律呢?举个例子,我写了3031,能猜出来是什么么?如果不说的话,肯定很困难,如果告诉你是ascii码,对应的就是01,是不是就简单了?其实嘛,术业有专攻,学会了就很简单了。

修改波特率

    先说一下:一共需要修改3个地方。

    按照我的理解先说下系统起的顺序,不一定对哈,根据观察到的现象说的。

    miniloaderall文件,uboot文件,boot文件(设备树和系统文件),rootfs文件。

    其实开发板一上电就开始打印了,系统使用手册里面介绍了,miniloaderall文件放的是 DDR 初始化镜像和 uboot spl 镜像,也就是说上电的时候的调试串口波特率就是1500000,那么这个1500000是怎么来的,肯定是系统有个地方设置给传输进去的。 

    然后是uboot启动,这个时候也会打印东西,当然波特率也是1500000。这个地方也会涉及到波特率参数的传输。

    然后是boot启动,也就是设备树和内核启动,这个时候也会打印东西,波特率依旧是1500000。至于后面的顶层文件系统,已经不涉及到具体的调试串口波特率了。能打印的已经打印完毕了。

    (1)ddr文件

    这个地方的波特率是对应的uboot启动前的打印。具体修改步骤:

    第一步:查看ddr使用类型

    位置:/home/wang/RK3568/rk356x_linux_release_v1.3.1_20221120/rkbin/RKBOOT/

    文件名:RK3568MINIALL.ini 

    打开后寻找参数,path的内容,发现里面使用的文件:rk3568_ddr_1560MHz_v1.16.bin

    第二步:修改参数

    位置:/home/wang/RK3568/rk356x_linux_release_v1.3.1_20221120/rkbin/tools/

    文件名:ddrbin_param.txt 

    打开后添加115200,当然打开后一脸懵逼,里面都是=号。其实慢慢的找到uart baudrate后面的=号,后面添加上115200。

    第三步:编译

    在tools的这个文件夹里,打开终端,执行命令:

./ddrbin_tool ddrbin_param.txt ../bin/rk35/rk3568_ddr_1560MHz_v1.16.bin

    具体的bin文件存放在/home/wang/RK3568/rk356x_linux_release_v1.3.1_20221120/rkbin/bin/rk35/里面,这个应该和ini文件里面是对应的,应该不用管。

    编译之后,有2个重要参数输出:version,波特率。如果输出正确的话,应该可以看到:

    届时,启动文件里面的参数已经修改正确了。

    (2)uboot文件

    位置:/home/wang/RK3568/rk356x_linux_release_v1.3.1_20221120/u-boot/configs/

   文件名:rk3568_defconfig

    打开之后找到CONFIG_BAUDRATE,将1500000改为115200。

    (3)设备树文件

     位置:

/home/wang/RK3568/rk356x_linux_release_v1.3.1_20221120/kernel/arch/arm64/boot/dts/rockchip/

    文件名:rk3568-linux.dtsi 

    打开之后找到:rockchip,baudrate = <1500000>;将里面的1500000修改为115200。

    至此,波特率修改参数已经修改完毕。直接按照前面文章介绍的全部编译,然后烧写就行了。具体怎么弄,按照前面的步骤就行。

现象

    我自己修改的时候,没有全部修改,而是一步一步修改的,中间出现了好多问题,感兴趣的小伙伴可以一个文件一个文件的修改,试试会出现啥现象,反正也不会坏,如果实在出不来就重新烧写最初的update文件,还原成开始的状态。

    (测试1)uboot文件和内核文件修改,这两个是同时修改的。这两个修改很好理解,uboot必须打印,内核也必须打印。如果这两个修改了,而ddr不修改,分步烧录这两个文件,其他的变化的不烧录,程序还是按照1500000跑。

    (测试2)uboot文件和内核文件修改,ddr不修改,其他的编译后的文件,看哪个修改了,也一起分步烧录。发现程序卡在一个地方不动了。前面的还能打印,后面的不打印了。停在了:

cryptd:max_cpu_qlen set to 1000

    到这里其实我的调试串口软件的波特率还是1500000,打印到这里就不往下了。当时感觉肯定是没有设置对,没办法,只能还原系统。

    注:其实到这里,波特率已经变了,但是软件却不显示,因为波特率已经改变为115200了。这个是后来发现的。后面我又搞了ddr文件后,才发现的这个问题。波特率1500000的时候,上层软件采用115200波特率通讯的时候,开始不是115200,是不打印的。如果开始的时候就把上层软件调成115200是有乱码出现的。但是如果开发板开始是1500000,后来变为115200,上层软件是打印不出来的。这个就比较奇怪了,没弄明白为啥。可能是因为文件需要全部烧录进去,而我仅仅烧写了一部分,没有改变全部需要改变的文件。

    (测试3)ddr不修改,uboot修改,boot修改。整体烧录,也就是update文件整体烧录,发现如果上层软件设置为1500000,那么前半段打印正常,后面变成乱码。如果上层软件设置为115200.那么前半段打印乱码,后面变成正常。到这里我才发现测试2中出现的问题。原来是已经打印了,只是设置的波特率没有改变,打印不出来。

    (测试4)ddr修改,uboot不修改,boot不修改。整体烧录,现象和测试3一样。都是到一定的时候出现乱码。

    测试内容全部都是自己测试的,搞正确后,自己又回去将思路整理了一遍,希望能知道在哪里修改能出现什么现象,然后解释为啥会不对,最后发现都能对上了。

rootfs文件

    想在开发板上能有个自己的文件夹,试了好多地方没有找到。以为只能用他们最好的的rootfs文件,或者必须自己用其他软件制作。

    位置:

/home/wang/RK3568/rk356x_linux_release_v1.3.1_20221120/buildroot/output/rockchip_rk3568/target/

    在这个里面添加自己需要的东西就行了。然后更改分步烧写rootfs文件就好,不用整体烧录,也仅仅编译rootfs就行。然后烧写之后,就会在开发板上发现自己需要的文件夹了。

结语

    以上就是怎么修改波特率和文件系统的步骤,需要的小伙伴可以试试。也可以添加公众号,在以前的文章里,因为csdn没有办法上传公众号的二维码,所以只能看前面的文章里面的二维码,最新的文章都是同步更新。

这篇关于创龙瑞芯微RK3568参数修改(调试口波特率和rootfs文件)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/240279

相关文章

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

Linux中修改Apache HTTP Server(httpd)默认端口的完整指南

《Linux中修改ApacheHTTPServer(httpd)默认端口的完整指南》ApacheHTTPServer(简称httpd)是Linux系统中最常用的Web服务器之一,本文将详细介绍如何... 目录一、修改 httpd 默认端口的步骤1. 查找 httpd 配置文件路径2. 编辑配置文件3. 保存

IDEA如何实现远程断点调试jar包

《IDEA如何实现远程断点调试jar包》:本文主要介绍IDEA如何实现远程断点调试jar包的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录问题步骤总结问题以jar包的形式运行Spring Boot项目时报错,但是在IDEA开发环境javascript下编译

Nginx 413修改上传文件大小限制的方法详解

《Nginx413修改上传文件大小限制的方法详解》在使用Nginx作为Web服务器时,有时会遇到客户端尝试上传大文件时返回​​413RequestEntityTooLarge​​... 目录1. 理解 ​​413 Request Entity Too Large​​ 错误2. 修改 Nginx 配置2.1

Python对PDF书签进行添加,修改提取和删除操作

《Python对PDF书签进行添加,修改提取和删除操作》PDF书签是PDF文件中的导航工具,通常包含一个标题和一个跳转位置,本教程将详细介绍如何使用Python对PDF文件中的书签进行操作... 目录简介使用工具python 向 PDF 添加书签添加书签添加嵌套书签Python 修改 PDF 书签Pytho

一文详解PostgreSQL复制参数

《一文详解PostgreSQL复制参数》PostgreSQL作为一款功能强大的开源关系型数据库,其复制功能对于构建高可用性系统至关重要,本文给大家详细介绍了PostgreSQL的复制参数,需要的朋友可... 目录一、复制参数基础概念二、核心复制参数深度解析1. max_wal_seChina编程nders:WAL

Python MCPInspector调试思路详解

《PythonMCPInspector调试思路详解》:本文主要介绍PythonMCPInspector调试思路详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录python-MCPInspector调试1-核心知识点2-思路整理1-核心思路2-核心代码3-参考网址

Linux高并发场景下的网络参数调优实战指南

《Linux高并发场景下的网络参数调优实战指南》在高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃,本文基于真实案例分析,从参数解读、问题诊断到优... 目录一、问题背景:当并发连接遇上性能瓶颈1.1 案例环境1.2 初始参数分析二、深度诊断:连接状态与

Linux系统调试之ltrace工具使用与调试过程

《Linux系统调试之ltrace工具使用与调试过程》:本文主要介绍Linux系统调试之ltrace工具使用与调试过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、ltrace 定义与作用二、ltrace 工作原理1. 劫持进程的 PLT/GOT 表2. 重定