当前位置: 首页 > news >正文

创龙瑞芯微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文件)

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

VMware——VMware17安装WindowServer2012R2环境(图解版)

目录 一、WindowServer2012R2镜像百度云下载二、安装 一、WindowServer2012R2镜像百度云下载 下载链接&#xff1a;https://pan.baidu.com/s/1TWnSRJTk0ruGNn4YinzIgA 提取码&#xff1a;e7u0 二、安装 打开虚拟机&#xff0c;点击【创建新的虚拟机】&#xff0c;如下图&…...

ModuleNotFoundError: No module named ‘torch‘

目录 情况1,真的没有安装pytorch情况2(安装了与CUDA不对应的pytorch版本导致无法识别出torch) 情况1,真的没有安装pytorch 虚拟环境里面真的是没有torch,这种情况就easy job了,点击此链接直接安装与CUDA对应的pytorch版本,CTRLF直接搜索对应CUDA版本即可查找到对应的命令.按图…...

采用Spring Boot框架开发的医院预约挂号系统3e3g0+vue+java

本医院预约挂号系统有管理员&#xff0c;医生和用户。管理员功能有个人中心&#xff0c;用户管理&#xff0c;医生管理&#xff0c;科室信息管理&#xff0c;预约挂号管理&#xff0c;用户投诉管理&#xff0c;投诉处理管理&#xff0c;通知公告管理&#xff0c;科室分类管理。…...

Jmeter性能测试(压力测试)

1.先保存 2.添加请求&#xff08;即添加一个线程组&#xff09; 3.添加取样器&#xff08;在线程组下面添加一个http请求&#xff09; 场景1&#xff1a;模拟半小时之内1000个用户访问服务器资源&#xff0c;要求平均响应时间在3000毫秒内&#xff0c;且错误率为0&#xff0…...

NetCore/Net8下使用Redis的分布式锁实现秒杀功能

目的 本文主要是使用NetCore/Net8加上Redis来实现一个简单的秒杀功能&#xff0c;学习Redis的分布式锁功能。 准备工作 1.Visual Studio 2022开发工具 2.Redis集群&#xff08;6个Redis实例&#xff0c;3主3从&#xff09;或者单个Redis实例也可以。 实现思路 1.秒杀开始…...

openGauss学习笔记-102 openGauss 数据库管理-管理数据库安全-客户端接入之查看数据库连接数

文章目录 openGauss学习笔记-102 openGauss 数据库管理-管理数据库安全-客户端接入之查看数据库连接数102.1 背景信息102.2 操作步骤 openGauss学习笔记-102 openGauss 数据库管理-管理数据库安全-客户端接入之查看数据库连接数 102.1 背景信息 当用户连接数达到上限后&#…...

lspci源码

lspci 显示Linux系统的pci设备最简单的方法就是使用lspci命令&#xff0c;前提是要安装pciutils包&#xff08;centos在最小化安装时不会自带该包&#xff0c;需要自己下载安装&#xff09; pciutils包的源码github地址为&#xff1a; https://github.com/pciutils/pciutils …...

CMake教程-第 8 步:添加自定义命令和生成文件

CMake教程-第 8 步&#xff1a;添加自定义命令和生成文件 1 CMake教程介绍2 学习步骤Step 1: A Basic Starting PointStep 2: Adding a LibraryStep 3: Adding Usage Requirements for a LibraryStep 4: Adding Generator ExpressionsStep 5: Installing and TestingStep 6: Ad…...

快速入门:Spring Cache

目录 一:Spring Cache简介 二:Spring Cache常用注解 2.1:EnableCaching 2.2: Cacheable 2.3:CachePut 2.4:CacheEvict 三:Spring Cache案例 3.1:先在pom.xml中引入两个依赖 3.2:案例 3.2.1:构建数据库表 3.2.2:构建User类 3.2.3:构建Controller mapper层代码 3.…...

探索音频传输系统:数字声音的无限可能 | 百能云芯

音频传输系统是一项关键的技术&#xff0c;已经在数字时代的各个领域中广泛应用&#xff0c;从音乐流媒体到电话通信&#xff0c;再到多媒体制作。本文将深入探讨音频传输系统的定义、工作原理以及在现代生活中的各种应用&#xff0c;以帮助您更好地了解这一重要技术。 音频传输…...

【C++】-c++的类型转换

&#x1f496;作者&#xff1a;小树苗渴望变成参天大树&#x1f388; &#x1f389;作者宣言&#xff1a;认真写好每一篇博客&#x1f4a4; &#x1f38a;作者gitee:gitee✨ &#x1f49e;作者专栏&#xff1a;C语言,数据结构初阶,Linux,C 动态规划算法&#x1f384; 如 果 你 …...

《论文阅读28》OGMM

一、论文 研究领域&#xff1a; 点云配准 | 有监督 部分重叠论文&#xff1a;Overlap-guided Gaussian Mixture Models for Point Cloud Registration WACV 2023 二、概述 概率3D点云配准方法在克服噪声、异常值和密度变化方面表现出有竞争力的性能。本文将点云对的配准问题…...

忆联分布式数据库存储解决方案,助力MySQL实现高性能、低时延

据艾瑞咨询研究院《2022 年中国数据库研究报告》显示&#xff0c;截止2021年&#xff0c;中国分布式数据库占比达到 20%左右&#xff0c;主要以 MySQL 和 PostgreSQL 为代表的开源数据库为主。MySQL 作为备受欢迎的开源数据库&#xff0c;当前已广泛应用于互联网、金融、交通、…...

网络安全内网渗透之信息收集--systeminfo查看电脑有无加域

systeminfo输出的内容很多&#xff0c;包括主机名、OS名称、OS版本、域信息、打的补丁程序等。 其中&#xff0c;查看电脑有无加域可以快速搜索&#xff1a; systeminfo|findstr "域:" 输出结果为WORKGROUP&#xff0c;可见该机器没有加域&#xff1a; systeminfo…...

MySQL高可用架构学习

MHA&#xff08;Master HA&#xff09;是一款开源的由Perl语言开发的MySQL高可用架构方案。它为MySQL 主从复制架构提供了 automating master failover 功能。MHA在监控到 master 节点故障时&#xff0c;会提升其中拥有最新数据的 slave 节点成为新的 master 节点&#xff0c;在…...

seata的AT模式分析

&#xff08;1&#xff09;AT模式的核心组件&#xff1a; 事务协调器 TC 维护全局和分支事务的状态&#xff1b; 维护全局锁的状态&#xff1b; 接受TM的提交或者回滚命令&#xff0c;联系RM进行分支事务的提交或者回滚。 事务管理者 TM 开启全局事务&#xff0c;向TC申请…...

【算法练习Day22】 组合总和 III电话号码的字母组合

​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;练题 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 文章目录 组合总和 III剪枝 电话号码…...

react-------JS对象、数组方法实际应用集合

目录 1、向空对象里添加键值对 2、js在数组对象中添加和删除键值对&#xff08;对象属性&#xff09;的方法 2.1 添加 3、对已有的数据更换键值对的属性名 4、js字符串拼接、数组转字符串 5、从数组中提取元素 1、向空对象里添加键值对 对象的属性可以使用[ ] 或者 . 而…...

AWS SAP-C02教程6--安全

云的安全是一个重要的问题,很多企业不上云的原因就认为云不安全,特别是对安全性要求较高的企业,所以云安全是一个非常广泛且重要的话题,其实在之前章节中的组件都会或多或少讲述与其相关的安全问题,这里也会详细讲一下。本章主要通过讲述一些独立或与安全有关的组件以及网…...

Qwen3.5-9B生产环境实践:高并发请求处理+响应延迟优化策略

Qwen3.5-9B生产环境实践&#xff1a;高并发请求处理响应延迟优化策略 1. 项目概述与核心能力 Qwen3.5-9B是一款拥有90亿参数的开源大语言模型&#xff0c;在多个领域展现出卓越的性能。这个模型特别适合需要处理复杂任务的生产环境&#xff0c;因为它具备以下核心能力&#x…...

成都宠博会的发展历程

1.背景与起源创办背景&#xff1a;随着国内宠物经济的蓬勃发展&#xff0c;成都以其浓厚的宠物文化和“宠物友好城市”的定位&#xff0c;为宠博会的诞生提供了沃土。展会旨在满足中西部地区日益增长的行业交流与消费需求。首届信息&#xff1a;根据文档提及的“从2012年到2025…...

OpenClaw跨平台控制:Kimi-VL-A3B-Thinking远程执行多模态任务方案

OpenClaw跨平台控制&#xff1a;Kimi-VL-A3B-Thinking远程执行多模态任务方案 1. 为什么需要跨平台远程控制&#xff1f; 上周五晚上11点&#xff0c;我正躺在沙发上刷手机&#xff0c;突然想起有个紧急的竞品分析报告需要处理。电脑在书房&#xff0c;实在懒得起身。这时我意…...

SEO_10个提升网站排名的SEO技巧与实战方法

SEO:10个提升网站排名的SEO技巧与实战方法 在当今数字化时代&#xff0c;网站排名不仅关乎网站的曝光率&#xff0c;更影响到业务的发展。因此&#xff0c;提升网站排名&#xff08;SEO&#xff09;成为了每一个网站主的首要任务。有哪些SEO技巧能够帮助提升网站的排名呢&…...

G-Helper终极指南:华硕笔记本轻量级控制工具完全教程

G-Helper终极指南&#xff1a;华硕笔记本轻量级控制工具完全教程 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Strix, Sca…...

STM32电位器驱动库:轻量级ADC封装与中值滤波实现

1. 项目概述MentorBit-Potenciometro 是一款专为 MentorBit 系统设计的轻量级电位器&#xff08;Potentiometer&#xff09;模块驱动库&#xff0c;面向 STM32 平台&#xff08;典型为 STM32F4/F7/H7 系列&#xff09;的嵌入式固件开发。该库并非通用 ADC 抽象层&#xff0c;而…...

MCP3302/MCP3304 13位差分ADC驱动开发与硬件协同设计指南

1. MCP330X库深度解析&#xff1a;面向嵌入式工程师的13位差分ADC驱动开发指南MCP330X系列Arduino库是专为Microchip MCP3302与MCP3304高精度模数转换器设计的底层驱动框架。该库并非简单封装&#xff0c;而是基于对SPI协议时序、ADC采样原理及嵌入式资源约束的深刻理解所构建的…...

STM32自动循迹小车设计与实现

1. 项目概述2016年TI杯电子设计竞赛中&#xff0c;我们团队设计了一款基于STM32的自动循迹小车系统。这个项目获得了省级一等奖&#xff0c;也是我职业生涯的重要转折点。作为控制类题目&#xff0c;系统需要实现沿预定轨迹自动行驶&#xff0c;并能检测轨迹旁的金属硬币。核心…...

GD32F407标准库工程创建全流程:从官网固件库下载到Keil5编译通过

GD32F407标准库工程创建全流程&#xff1a;从官网固件库下载到Keil5编译通过 第一次接触GD32F407开发板时&#xff0c;最让人头疼的就是如何快速搭建开发环境。与STM32不同&#xff0c;GD32的官方资源分散&#xff0c;标准库文件结构复杂&#xff0c;新手很容易在文件复制和工程…...

嵌入式StatsD客户端:轻量级指标上报库设计与实践

1. statsdclient&#xff1a;嵌入式系统中轻量级指标上报的通用通信库1.1 设计定位与工程价值statsdclient是一个面向资源受限嵌入式环境设计的通用指标采集与上报库&#xff0c;其核心目标并非替代完整的监控栈&#xff0c;而是为 MCU 级设备提供一种零依赖、低开销、协议可选…...