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

服务于中小企业建网站提供网站设计方案公司

服务于中小企业建网站,提供网站设计方案公司,响应式网站cms,建立什么本地网站赚钱开发板#xff1a;ROC-RK3588S-PC 官方链接#xff1a;Welcome to ROC-RK3588S-PC Manual — Firefly Wiki (t-firefly.com) 串口调试配置 一、产品介绍 — Firefly Wiki (t-firefly.com)#xff0c;可以按照官方链接的说明在个人PC上使用串口。这个串口会输出rk3588的日…开发板ROC-RK3588S-PC 官方链接Welcome to ROC-RK3588S-PC Manual — Firefly Wiki (t-firefly.com) 串口调试配置 一、产品介绍 — Firefly Wiki (t-firefly.com)可以按照官方链接的说明在个人PC上使用串口。这个串口会输出rk3588的日志信息同时也可以允许用户输入shell命令进行调试。但是还不能互相传文件。 我们使用串口可以查询到包括内核名称、节点名称、内核发行版本、内核版本、机器类型、处理器类型、硬件平台和操作系统。aarch64是ARMv8架构下的64位指令集架构的官方名称有时也被人们称为ARM64。 注作者在使用过程中碰到过串口不能输入shell命令的情况只能查看日志信息。最终发现是USB转串口模块的问题更换一个就好了。作者使用的是CH340型号的不是开发板随带的。 ADB调式配置 除了上述使用串口调试外我们还可以使用ADB它是Android的命令行调试工具但是我们编译的是buildroot系统其实也可以使用ADB这一点后面再解释。 连接OTG端口也就是Type-C的USB口这一个端口在烧录固件的时候也会用到 安装RK-USB驱动。注意如果正确进入loader模式但一直找不到设备可以尝试更换USB线。下载安装ADB工具。 打开命令行窗口进入ADB根目录。执行adb shell命令即可输入shell命令了。 交叉编译环境 通常情况下我们会把编译环境搭建在Linux服务器或者虚拟机上在那个上面进行编译然后把编译的文件用在RK3588平台上。显然Linux服务器或者虚拟机肯定不是和RK3399平台使用相同的架构。例如我们使用的服务器为 服务器上是x86架构RK3588是ARM64架构。这个时候就需要交叉编译其实就是在x86机器上编译的东西放在arm64机器上用。所以后需的代码工作都是在x86服务器上展开的。关于怎么登录访问服务器这里就不展开了。。。 服务器环境啥的都提前配置好了这里暂时不介绍。 获取SDK 1. 编译 Linux 固件 — Firefly Wiki (t-firefly.com) 我们的计划是编译buildroot系统那么需要厂商的Linuxsdk压缩包文件为rk3588_firefly-1.4.0b.tar.gz我们使用的是方式一首先获取的是SDK repo压缩包将该包解压后再使用命令 .repo/repo/repo sync -l导出源代码。 解压之后其实就一个 .repo的隐藏文件夹。然后执行导出源代码命令。 最后还需要同步代码 以后我们就可以使用第二个命令进行代码更新了。 Linux SDK 配置介绍 配置文件介绍 在 device/rockchip/rk3588/ 目录下有不同板型的配置文件(xxxx.mk)用于管理 SDK 每个环节的编译配置可以查看一下 显然根据名称我们要使用的是roc-rk3588s-pc-buildroot.mk因为我们要编译buildroot系统。 #**roc-rk3588s-pc-buildroot.mk**文件内容如下CMDrealpath $BASH_SOURCE CUR_DIRdirname $CMDsource $CUR_DIR/itx-3588j-buildroot.mk# Kernel dts export RK_KERNEL_DTSroc-rk3588s-pc-mipi101-M101014-BE45-A1# PRODUCT MODEL export RK_PRODUCT_MODELROC_RK3588S_PC前3行代码使用 source 命令来执行位于当前脚本同一目录下的 itx-3588j-buildroot.mk 文件。该文件内容如下 CMDrealpath $BASH_SOURCE CUR_DIRdirname $CMDsource $CUR_DIR/BoardConfig.mk# Kernel defconfig fragment export RK_KERNEL_DEFCONFIG_FRAGMENT$RK_KERNEL_DEFCONFIG_FRAGMENT firefly-linux.config# Uboot_defconfig_fragment export RK_UBOOT_DEFCONFIG_FRAGMENTfirefly-linux.config# parameter for GPT table export RK_PARAMETERparameter-ubuntu-fit.txt# Kernel dts export RK_KERNEL_DTSrk3588-firefly-itx-3588j-mipi101-M101014-BE45-A1# Set userdata partition type export RK_USERDATA_FS_TYPEext4# Set extboot export FF_EXTBOOTtrueexport FF_EXTBOOT_SIZE256M# PRODUCT MODEL export RK_PRODUCT_MODELITX_3588J# recovery ramdisk export RK_RECOVERY_RAMDISKrk3588-recovery-arm64.cpio.gz# Recovery config export RK_CFG_RECOVERY# Buildroot config export RK_CFG_BUILDROOTfirefly_rk3588export RK_EXTRA_PARTITIONS# packagefile for make update image export RK_PACKAGE_FILErk3588-ubuntu-package-file前3行代码使用 source 命令来执行位于当前脚本同一目录下的 BoardConfig.mk 文件该文件内容如下 #!/bin/bash# Target arch export RK_ARCHarm64 # Uboot defconfig export RK_UBOOT_DEFCONFIGrk3588 # Uboot image format type: fit(flattened image tree) export RK_UBOOT_FORMAT_TYPEfit # Kernel defconfig export RK_KERNEL_DEFCONFIGrockchip_linux_defconfig # Kernel defconfig fragment export RK_KERNEL_DEFCONFIG_FRAGMENTrk3588_linux.config # Kernel dts export RK_KERNEL_DTSrk3588-evb3-lp5-v10-linux # boot image type export RK_BOOT_IMGboot.img # kernel image path export RK_KERNEL_IMGkernel/arch/arm64/boot/Image # kernel image format type: fit(flattened image tree) export RK_KERNEL_FIT_ITSboot.its # parameter for GPT table export RK_PARAMETERparameter.txt # Buildroot config export RK_CFG_BUILDROOTrockchip_rk3588 # Recovery config export RK_CFG_RECOVERYrockchip_rk3588_recovery # Recovery image format type: fit(flattened image tree) export RK_RECOVERY_FIT_ITSboot4recovery.its # ramboot config export RK_CFG_RAMBOOT # Pcba config export RK_CFG_PCBArockchip_rk3588_pcba # Build jobs export RK_JOBS12 # target chip export RK_TARGET_PRODUCTrk3588 # Set rootfs type, including ext2 ext4 squashfs export RK_ROOTFS_TYPEext4 # debian version (debian10: buster, debian11: bullseye) export RK_DEBIAN_VERSIONbullseye # yocto machine export RK_YOCTO_MACHINErockchip-rk3588-evb # rootfs image path export RK_ROOTFS_IMGrockdev/rootfs.${RK_ROOTFS_TYPE} # Set ramboot image type export RK_RAMBOOT_TYPE # dev:mount point:fs type:mount flags:source dir:image size(M|K|auto):[options] export RK_EXTRA_PARTITIONS \oem:/oem:ext2:defaults:oem_normal:auto:resizeuserdata:/userdata:ext2:defaults:userdata_normal:auto:resize# OEM build on buildroot #export RK_OEM_BUILDIN_BUILDROOTYES #misc image export RK_MISCwipe_all-misc.img #choose enable distro module export RK_DISTRO_MODULE # Define pre-build script for this board export RK_BOARD_PRE_BUILD_SCRIPTapp-build.sh # Define package-file export RK_PACKAGE_FILErk3588-package-file # Define WiFi BT chip # Compatible with Realtek and AP6XXX WiFi : RK_WIFIBT_CHIPALL_AP # Compatible with Realtek and CYWXXX WiFi : RK_WIFIBT_CHIPALL_CY # Single WiFi configuration: AP6256 or CYW43455: RK_WIFIBT_CHIPAP6256 export RK_WIFIBT_CHIPALL_AP # Define BT ttySX export RK_WIFIBT_TTYttyS8 配置文件指定了DTS文件和分区表文件等其他文件。上述配置文件中是 RK_KERNEL_DTS roc-rk3588s-pc-mipi101-M101014-BE45-A1 RK_PARAMETER parameter-ubuntu-fit.txt 分区说明 parameter.txt 文件中包含了固件的分区信息以 parameter-ubuntu-fit.txt 为例 路径device\rockchip\rk3588\parameter-ubuntu-fit.txt FIRMWARE_VER: 1.0 MACHINE_MODEL: RK3588 MACHINE_ID: 007 MANUFACTURER: RK3588 MAGIC: 0x5041524B ATAG: 0x00200800 MACHINE: 0xffffffff CHECK_MASK: 0x80 PWR_HLD: 0,0,A,0,1 TYPE: GPT CMDLINE: mtdpartsrk29xxnand:0x000040000x00004000(uboot),0x000020000x00008000(misc),0x000800000x0000a000(boot:bootable),0x000400000x0008a000(recovery),0x000100000x000ca000(backup),0x00c000000x000da000(rootfs),-0x00cda000(userdata:grow) uuid:rootfs614e0000-0000-4b53-8000-1d28000054a9 CMDLINE 属性是我们关注的地方以 misc 为例 0x000020000x00008000(uboot) 中 0x00008000 为uboot 分区的起始位置0x00002000 为分区的大小以此类推。 package-file 文件用于打包固件时确定需要的分区镜像和镜像路径同时它需要与 parameter.txt 文件保持一致。 路径tools/linux/Linux_Pack_Firmware/rockdev/rk3588-package-file 编译Buildroot固件 说一句题外话可以使用如下命令查询SDK版本 zhudkvm1:/expand/zhudk/rk3588_firefly$ readlink -f .repo/manifest.xml /expand/zhudk/rk3588_firefly/.repo/manifests/rk3588/rk3588_linux_release_20240517_v1.4.0b.xml编译前配置 在 device/rockchip/rk3588/ 目录下有不同板型的配置文件选择配置文件 全自动编译 全自动编译会执行上述编译、打包操作生成 RK 固件。 ./build.sh打包固件生成的完整固件会保存到 rockdev/pack/ 目录。 部分编译 编译 u-boot ./build.sh uboot编译 kernel ./build.sh extboot编译 recovery ./build.sh recovery编译 buildroot ./build.sh rootfs更新各部分镜像链接到 rockdev/ 目录 ./mkfirmware.sh打包固件生成的完整固件会保存到 rockdev/pack/ 目录。 ./build.sh updateimg编译完成后 rockdev/ 目录如下 使用USB线缆升级固件 USB驱动和烧录工具不做解释如果遇到问题可以尝试更换工具版本或者USB线缆。 进入升级模式 通常我们升级固件的模式有两种分别是Loader模式和MaskRom模式。烧写固件前我们需要连接好设备并让板子进入到可升级模式。 MaskRom 模式是设备变砖的最后一条防线。强行进入 MaskRom 涉及硬件操作有一定风险因此仅在设备进入不了 Loader 模式的情况下方可尝试 MaskRom 模式。进入 MaskRom 的原理是人为的把 EMMC 的数据脚与地线短接系统会认为 EMMC 数据出错从而清除 EMMC 数据。可以按maskrom 按键然后进行上电此时设备就会进入 MaskRom 模式。 进入Loader模式也有几种方式 在串口调试终端或adb shell给板子运行以下命令reboot loader。保持板子上电先按住RECOVERY键并保持再按住RESET按键大约两秒钟其实可以看日志后松开RECOVERY键。 烧写统一固件 统一固件是由分区表、bootloader、uboot、kernel、system等所有文件打包合并成的单个文件。Firefly正式发布的固件都是采用统一固件格式升级统一固件将会更新主板上所有分区的数据和分区表并且擦除主板上所有数据。 烧写分区镜像 即各个功能独立的文件如分区表、bootloader、kernel等在开发阶段生成。独立分区镜像可以只更新指定的分区而保持其它分区数据不被破坏在开发过程中会很方便调试。 如果我们做驱动开发其实可以仅烧录boot.img。
http://www.pierceye.com/news/644895/

相关文章:

  • 如何添加网站关键词天津建设工程信息网官罿
  • 医疗网站的建设设计要注意什么做网站赚钱吗 怎么赚
  • 创造有价值的网站建设银行网站上改手机
  • 商城网站租服务器安全不怎么做和美团一样的网站
  • 网站建设 sql 模版做网站的工具 论坛
  • 万网虚拟主机两个网站权重域名做网站有用么
  • 门户网站是指六盘水做网站
  • 自助建站系统免费加盟设计用哪些网站有哪些
  • 太原制作公司网站无锡网站优化公司
  • html5 wap网站模板动画广州网站建设 信科公司
  • 西安门户网站开发wordpress如何在文章底部添加目录
  • 设计婚纱网站宁波网站优化服务
  • 建设电子商务网站的花费那些公司做网站比较厉害
  • 桂林建站平台哪家好东莞百度快速排名提升
  • 网页设计框架哈尔滨网络优化推广公司
  • 深圳专业做网站技术西安网站设计报价
  • 做电影资源网站动图制作网站
  • 网站域名免费申请深圳龙华怎么样
  • 织梦建设手机网站wordpress中portfolio
  • 网站开发的检索速度在啥范围之内设计网站大全网
  • 外国人学做中国菜的网站php购物网站开发成品
  • 手机网站专题网站建设私活
  • 自建网站 备案视频号广告推广
  • 青岛网站优化东莞市场监督管理局官网
  • 深圳珠宝网站设计临沂seo优化
  • 东莞网站建项目代理
  • 心理咨询网站开发营销型网站的建设要求都有什么
  • 优化网站要怎么做中国外协机械加工订单网
  • 运动健身型网站开发永久网站空间
  • 好的网站建设公司排名小程序怎么引流推广