自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

习惯就好zz的专栏

学问之道无他 求其放心而已矣

  • 博客(515)
  • 资源 (6)
  • 收藏
  • 关注

原创 安卓12开机启动定制软件会闪烁显示壁纸

本文详细解析了针对嵌入式设备的AOSP开机体验优化方案。该方案通过11个文件的修改(新增7个/修改4个),从多个层面消除开机过程中的视觉瑕疵,实现平滑过渡: 设备配置:启用开机动画等待机制,确保动画在桌面完全就绪后才退出 资源替换:将默认壁纸替换为纯黑色图片 框架调整:禁用壁纸服务,消除1秒额外延迟和潜在闪烁 界面优化:设置FallbackHome使用纯黑背景,避免壁纸闪现 动态覆盖:通过RRO机制强制应用图标使用黑色背景 时序控制:精确把控开机动画退出时机 所有改动协同工作,确保开机过程保持一致的黑色背景

2026-07-17 13:48:46 43

原创 让 Neovim 的 clang-tidy 诊断和命令行完全一致

Neovim 中使用 clang-tidy 的完整解决方案 核心问题 Neovim (LazyVim + clangd) 中 clang-tidy 诊断与命令行工具不一致,主要由于四个独立问题: clangd 和 clang-tidy 分离:clangd 内嵌的 clang-tidy 不读取 .clang-tidy 配置,而是依赖 .clangd 文件 配置误解:ClangTidy: {} 实际表示禁用而非使用默认配置 Windows 路径解析问题:nvim-lint 的默认解析器无法正确处理 Window

2026-07-15 17:44:11 264

原创 记一次 Windows 串口工具 `SimpleCom` 启动卡死问题的排查实录

作为一个嵌入式开发者,SimpleCom一直是我在 Windows 下调试串口设备的得力工具——轻量、简洁、与 Windows Terminal 集成良好。然而某天重启电脑后,它突然“罢工”了:双击无反应、重装无效、删配置也不行。折腾一番后终于找到元凶并解决,特此记录,希望能帮到遇到类似问题的朋友。排查方向结论程序文件损坏❌ 排除(重装无效)用户配置残留❌ 排除(注册表/AppData 无残留)串口设备驱动❌ 排除(拔掉设备后仍卡死)COM 端口分配表异常✅ 确认并解决关键经验。

2026-06-17 14:03:45 235

原创 3D 打印投影链路 CRC 校验探索记:从 SPR/PNG 到 SurfaceFlinger

3D 打印投影链路 CRC 校验探索 核心发现 PNG 文件 CRC 无法直接与下游环节对比,因为: 应用层获取的是解码后的 Bitmap 内核处理的是显存原始字节流 应用层与内核 CRC 对比不可行,因为: 数据流经过 GPU 绘制、合成、格式转换 显存包含 stride 填充等额外信息 可行方案 最终采用 App ↔ SurfaceFlinger 两段对比: App 侧:对送显前的 Bitmap 计算 CRC32 SF 侧:对收到的 GraphicBuffer 按 Bitmap 字节序计算 CRC32

2026-06-02 15:52:56 83

原创 Windows 11 双系统环境下的本地磁盘隔离与隐私防护实践

本文介绍了一种Windows 11双系统隔离方案,通过物理磁盘分区实现个人隐私与工作环境的严格隔离。方案采用固态硬盘安装两个独立系统(个人系统和工作系统),配合机械硬盘存储个人数据。关键步骤包括:压缩分区创建工作系统空间、配置单向共享文件夹、隐藏个人分区盘符并使用Diskpart锁定属性。该方案能有效防御监控软件扫描,避免加密导致的性能损耗,同时通过共享文件夹保持必要的数据传递。虽然不能完全防止人工深度排查,但对自动化审计软件具有出色的防护效果,特别适合需要同时兼顾隐私保护和工作需求的用户。

2026-05-28 16:58:43 525

原创 RK3588 多板卡编译 DTB 串用导致黑屏问题排查

摘要: RK3588多板卡项目出现设备A刷机后黑屏问题,排查发现是内核编译缓存导致DTB文件串用。根因在于多板卡共享内核源码目录,切换板卡编译时未清理缓存,导致复用之前设备B的DTB文件。修复方案包括:1)构建脚本增加板卡切换检测自动清理内核;2)确保编译android时检查内核产物;3)修正内核条件编译宏错误。同时修复了Gallery3D后台服务崩溃问题。经验教训:多板卡项目必须建立编译隔离机制,避免缓存复用导致硬件配置错配。

2026-05-22 11:42:19 63

原创 在 Qt Creator 19.0.0 中配置 GitHub Copilot 的完整记录

版本兼容性是最大坑点Qt Creator 的 Copilot 插件对的版本敏感。目前已知v1.33.x 系列兼容性最好。不要使用最新版(除非你确定 Qt Creator 已更新适配)。注意文件名差异旧版语言服务器文件名为agent.js,新版为。配置时需确认对应版本的实际文件名。代理环境需配置国内网络访问 GitHub Copilot 服务可能不稳定,建议在 Qt Creator 中设置 Proxy,并取消(如使用 HTTPS 代理且证书不受信任时)。Node.js 必须可用。

2026-05-12 11:58:04 521

原创 记一次 Android 系统深度定制:为 RK3588 设备打造统一导航栏与深色主题

本文记录了为RK3588设备定制Android系统的过程,重点实现了系统设置界面的统一导航栏和深色主题适配。通过资源叠加和运行时配置开关确保改动仅作用于目标设备。导航栏采用跨进程视觉对齐方案,通过等比缩放解决不同进程的密度差异问题。同时优化了Wi-Fi配置页面的交互体验,修复了Spinner点击问题,并实现了输入法的深色主题适配。文中详细介绍了布局结构、样式适配和具体实现逻辑,包括动态显示USB入口、隔离策略等技术细节,为类似需求提供了可参考的解决方案。

2026-05-09 14:38:08 154

原创 记一次 Android Settings Wi‑Fi 定制:从功能隐藏到深色主题全覆盖

本文记录了为OK3588平板定制Android系统设置应用Wi-Fi界面的全过程。主要内容包括:1)通过设备资源叠加隐藏不必要的Wi-Fi数据用量和修复连接选项;2)优化密码输入页面,添加返回按钮并调整横屏显示;3)全面应用深色主题,包括覆盖主题样式、修复属性缺失导致的崩溃问题;4)统一键盘和开关按钮的配色方案。所有改动均通过overlay实现,不影响其他设备。文章详细描述了每个技术细节的实现方法和关键注意事项,特别强调了覆盖系统样式时的风险控制策略。

2026-04-29 17:15:14 217

原创 Git 交互式 rebase 实战:将后续修改合并到历史提交

本文详细介绍了如何使用Git交互式rebase将后续修改合并到历史提交中的实战操作。主要内容包括:通过创建临时提交开始rebase过程;使用edit标记目标提交;将临时提交中的文件修改合并到历史提交;处理rebase过程中出现的冲突和空提交情况。文章特别强调了操作注意事项,如确保工作区干净、正确处理冲突、备份分支等风险控制措施。这种技术能有效保持Git历史的整洁性,特别适用于代码评审后需要修正历史提交的场景,帮助开发者维护更清晰、更有逻辑性的版本控制记录。

2026-04-29 17:00:53 534

原创 RK3588 Android 12 修改 NTP 服务器:从资源覆盖到时间同步验证

验证系统修改不能仅依赖日志,通过。

2026-04-14 14:26:24 574

原创 记一次 Mac SSH 免密登录 Windows 的踩坑与修复

《Mac SSH免密登录Windows全攻略:从失败到成功》 本文详细记录了在Mac与Windows 10之间配置SSH免密登录的全过程。作者首先在Windows上安装OpenSSH服务并测试密码登录成功,但在配置公钥认证时遭遇"Permission denied"错误。通过分析SSH日志,发现是Windows严格的权限机制导致服务无法读取authorized_keys文件。文章提供了完整的修复方案:包括重置.ssh目录权限、精确设置authorized_keys文件权限,以及处理管理员

2026-04-02 15:45:11 513

原创 告别代码仓库“污染”:Android 编译系统中版本号自动生成的终极方案

本文针对嵌入式开发中版本号文件污染代码仓库的问题,提出了一种基于Android编译系统的自动化解决方案。通过将静态维护的version.h改为动态生成,采用模板文件version.h.template配合genversion.sh脚本和Android.bp的genrule模块,实现了编译时自动生成版本信息而不再修改源码。该方法解决了Git状态污染、多分支冲突等问题,同时符合现代构建系统的规范要求。方案实施后,版本信息能正确生成且源码仓库保持整洁,体现了自动化构建流程优化对开发效率的提升作用。

2026-03-30 11:53:04 234

原创 【Android Framework 实战】记一次 SurfaceFlinger 黑屏死机惨案:一个 static 解决的性能血案

摘要:本文记录了在Android Framework开发中遇到的一个因系统属性读取导致SurfaceFlinger渲染线程阻塞的黑屏死机问题。作者在修复横屏设备开机动画裁剪问题时,发现高频调用的属性读取方法GetBoolProperty成为了性能瓶颈,导致主线程严重超时。通过使用C++的static const关键字缓存属性值,实现了"一次读取,多次复用"的优化,成功解决了黑屏问题。文章强调了在Android系统高频路径中避免耗时操作的重要性,并提供了性能优化的实践指导。

2026-03-27 10:45:22 96

原创 VS Code 与 Neovim 深度融合:打造 WSL 下的高效开发环境

本文介绍了在VS Code中深度集成Neovim(LazyVim)的配置方案,适用于WSL环境下的高效开发。通过vscode-neovim扩展实现Neovim作为编辑引擎,保留Vim键位的同时享受VS Code的扩展生态。配置要点包括:1)在WSL中安装Neovim;2)通过环境标志区分VS Code模式;3)禁用不兼容的UI插件;4)添加VS Code专用键位映射;5)优化CMake等开发工具配置。文章还提供了常见问题解决方案,如VS Code Server下载失败的处理方法。该方案实现了终端与IDE编辑

2026-03-24 15:47:21 555

原创 Qt Quick 系统托盘完整实践

本文介绍了在Qt Quick桌面应用中实现系统托盘功能的完整实践方案。文章首先分析了使用QApplication而非QGuiApplication的必要性,指出QApplication能确保Windows平台上托盘菜单的正常运行。然后详细说明了代码修改要点:在C++中改用QApplication,在QML中解决Menu类型冲突和窗口状态管理问题。文章还提供了最小化到托盘、恢复窗口状态和右键退出等核心功能的实现方法,并介绍了不使用Qt.labs.platform的替代方案。最后总结出在Windows平台上实现

2026-03-16 15:08:13 530

原创 Android系统卡顿排查实战:当system_server卡在io_schedule(二)

摘要: i.MX8MM Android 9.0系统启动时界面卡死,排查发现system_server等进程因I/O等待阻塞。问题源于内核4.14.78中dm-verity与eMMC CQE功能冲突,导致文件系统死锁。关闭CQE后问题解决,虽略微降低eMMC性能,但系统稳定性显著提升。建议同步调整CPU电压配置以增强可靠性。该方案已通过测试验证,适用于同类硬件平台。

2026-03-11 15:03:34 147

原创 Git LFS 处理大文件推送失败的完整记录

本文记录了使用Git LFS解决大文件推送失败的完整过程。当331MB的APK文件超过GitHub的100MB限制时,通过安装Git LFS、配置追踪规则、撤销原有提交、从索引移除大文件并重新添加等步骤,成功将大文件转为LFS指针。关键点包括:使用**匹配子目录、强制触发LFS转换需先git rm --cached、验证Git对象大小确认转换成功。文中还提供了常用Git LFS命令速查表,并总结了规则匹配、文件转换等常见踩坑点,为处理类似问题提供了实用参考。

2026-03-09 17:01:58 549

原创 深度解密 i.MX8MM 显示链路:从 DSI -19 报错到 DRM 拓扑优化

本文记录了i.MX8MM平台显示驱动开发中遇到的MIPI DSI启动崩溃问题(-19错误)的分析与修复过程。通过详细分析内核崩溃日志和设备树拓扑结构(OF-Graph),发现该偶发性错误源于DRM桥接器分离时的异常。文章展示了完整的错误堆栈信息,包括寄存器状态和内存内容,并通过U-Boot动态修改逻辑成功解决了这一致命Bug。该案例为类似嵌入式显示驱动问题提供了有价值的调试思路和解决方案。

2026-03-09 15:57:05 266

原创 Android9 默认通知音「死链」自动修复记录

摘要: Android9系统中存在默认通知音效「死链」问题,表现为首次烧录后设置界面显示数字ID而非预期音效名称。问题根源在于MediaScanner首次扫描时若写入错误URI(如content://media/internal/audio/media/9999),系统缺乏自动恢复机制。解决方案在RingtoneManager.java中新增URI有效性校验:当读取默认铃声时,若当前URI无效则自动从ro.config.notification_sound属性重新解析正确URI并修复设置。该方法通过集中校验

2026-03-02 17:40:56 132

原创 Android系统卡顿排查实战:当system_server卡在io_schedule

本文记录了Android系统卡顿问题的完整排查过程,通过分析system_server进程卡在io_schedule状态的现象,揭示了eMMC存储性能瓶颈导致系统响应变慢的根本原因。文章从进程状态、文件描述符、调用栈和系统资源四个视角深入分析,建立了完整的证据链,并提出了从紧急缓解到长期优化的多级解决方案。同时提供了系统化排查流程和监控指标建议,为Android系统性能调优提供了实用参考。

2026-02-04 15:23:31 157

原创 [Android/Linux] 实战记录:利用 Kconfig 精确控制 i.MX8MM 特定 DTB 的编译生成

摘要: 本文介绍了在嵌入式Android/Linux开发中,如何通过修改Kconfig和Makefile实现精确控制i.MX8MM平台特定设备树(DTB)的编译生成。针对NXP i.MX系列默认编译所有DTB导致的问题,提出了三层解决方案:1)在Kconfig中定义可见的配置选项;2)修改DTS Makefile将特定DTB与配置选项绑定;3)在产品配置文件中启用对应选项。重点强调了Kconfig选项必须包含提示字符串才能使defconfig赋值生效,并提供了详细的代码修改示例和验证方法。该方案成功解决了多

2026-02-04 11:33:52 1232

原创 解决VMware Ubuntu端口映射SSH连接失败问题:无需重启服务器的快速修复方案

通过重启VMware NAT和DHCP服务解决端口映射问题,比重启整个Windows服务器更加高效和安全。快速:只需几秒钟完成安全:不影响其他Windows服务可自动化:可以通过脚本实现自动监控和修复可预防:通过服务自动恢复和定期检查减少故障发生建议将自动化脚本部署到生产环境中,并设置监控告警,确保VMware虚拟机的远程访问稳定性。相关资源VMware官方文档:配置NAT网络PowerShell服务管理命令Windows端口转发配置指南。

2026-01-22 09:09:38 1032

原创 [实战笔记] 从 Qt 5.12.9 跨越到 Qt 6.x 完美迁移指南 (Windows + VS)

Qt 5.12.9到Qt 6迁移实战指南 本文详细记录了从Qt 5.12.9升级到Qt 6.x的全过程,重点解决跨版本迁移中的常见问题。关键步骤包括:安装Qt 6时勾选兼容模块,修改.pro文件强制使用C++17并引入必要模块,调整构建路径解决编译错误。在代码层面,需注意容器类的const限制、网络模块变动和字符串编码安全。QML部分需重写被移除的控件,调整Connections语法,并解决Windows下的UI样式问题。通过关注核心变更点,项目最终在Qt 6环境下获得性能提升。

2026-01-21 15:09:20 1723

原创 从奶牛NPC到完整场景构建

本教程详细介绍了如何使用Godot 4引擎构建一个生动的2D游戏世界。主要内容包括:创建随机移动的奶牛NPC,通过状态机和动画系统实现智能行为;添加静态与可交互物体如宝箱和床铺;利用多层瓦片地图构建复杂场景,包括图层管理、碰撞设置和建筑技巧;以及相机系统与游戏体验优化。教程提供了完整的代码示例和可视化指导,帮助开发者从基础到进阶逐步构建一个功能完善的2D游戏原型。

2026-01-20 09:42:47 918

原创 使用Confluence REST API v2自动创建Jira传统模式表格页面并集成到GitHub Actions CI/CD

本文介绍了如何通过Confluence REST API v2自动创建包含Jira传统模式表格的页面,并将其集成到GitHub Actions CI/CD流程中。主要内容包括:1) 获取必要的Confluence认证信息;2) API测试过程中遇到的挑战及解决方案,如Space ID类型、JSON格式、Jira宏serverId等问题;3) 最终实现的Bash脚本,可从GitHub Release Notes中提取VUL编号并构建JQL查询;4) 如何将该脚本集成到GitHub Actions工作流中。该方

2026-01-19 09:03:16 225

原创 地图编辑部分教程总结

本教程介绍了如何使用Godot 4的TileMap系统构建游戏地图。主要内容包括:创建TileMap节点并配置TileSet资源;导入素材并自动切分瓦片;通过多层(Layers)实现深度效果,利用Z-index控制渲染顺序;为瓦片添加碰撞体实现物理阻挡;使用随机工具增强地图自然感;锁定TileMap防止误操作;以及添加跟随相机实现动态视角。这些步骤共同构建了一个具有视觉层次和物理交互的完整游戏世界。相关素材和脚本资源链接已提供。

2026-01-17 23:24:44 1126

原创 Godot Player CharacterBody2D 移动和停止配置

本文介绍了在Godot 4中实现2D角色八方向移动动画系统的详细步骤。主要内容包括:基础节点结构配置(CharacterBody2D、Sprite2D等)、精灵图导入与动画制作、AnimationTree状态机设置(使用BlendSpace2D节点)、脚本控制动画切换逻辑。关键点在于通过Discrete模式保持像素动画清晰度,利用blend_position根据输入方向混合动画,实现idle和walk状态的平滑过渡。文末提供了完整的GDScript代码示例,可实现角色根据WASD输入自动切换对应方向动画的功

2026-01-15 11:34:31 1263

原创 Linux Kernel 4.4 `printk` 源码分析与使用详解

本文分析了Linux Kernel 4.4中printk的实现机制与使用方法。重点介绍了printk的8个日志级别及其控制策略,通过/proc/sys/kernel/printk可动态调整打印级别。文章详细剖析了printk的数据流架构,包括驱动层调用、内核缓冲区存储、控制台过滤和硬件输出四个阶段。在源码层面,解析了printk入口函数、NMI安全机制、核心处理函数vprintk_emit以及控制台输出逻辑console_unlock的实现细节,揭示了消息过滤和分发的底层机制。

2026-01-07 21:45:48 987

原创 在 Ubuntu 18.04 (WSL) 上配置 LazyVim

摘要: 在Ubuntu 18.04(WSL)上配置LazyVim面临GLIBC版本过低(2.27)和Tree-sitter依赖问题。解决方案包括:1)使用Homebrew替代apt管理软件包,安装新版Neovim(≥0.10);2)通过Rust手动编译兼容的Tree-sitter-cli(v0.22.6),并创建软链接覆盖Mason自动安装的版本;3)安装LazyVim并修复Locale和字体设置。该方法成功绕过了系统限制,实现了现代化Neovim体验,尽管checkhealth可能显示版本警告,但功能完全

2026-01-07 19:09:49 854

原创 【嵌入式开发】WSL2 终极环境搭建:Windows TFTP + WSL NFS 挂载指南

摘要:WSL2嵌入式开发环境搭建指南(Windows TFTP + WSL NFS) 本文介绍了一种高效的嵌入式Linux开发方案,利用Windows 11的WSL2"镜像网络模式"实现混合架构开发环境: 内核传输:通过Windows端的Tftpd64实现TFTP服务 根文件系统:通过WSL2(Ubuntu)搭建NFS服务器,保持完整Linux权限 网络配置:详细说明了镜像网络设置、防火墙配置和IP共享方法 开发板配置:提供完整的U-Boot环境变量设置方案 问题排查:总结了常见问题的解

2026-01-07 11:57:29 960

原创 在 Ubuntu 18.04 旧系统上部署新版 GitHub Actions Runner 的终极方案

本文分享了在Ubuntu 18.04旧系统上部署新版GitHub Actions Runner的解决方案。针对GLIBC版本冲突问题,采用Docker+SSH分离架构:Runner运行在Ubuntu 20.04容器中,通过SSH连接宿主机执行编译任务。文章详细记录了网络配置、容器化部署、SSH免密登录、脚本化管理及内存优化等关键步骤,最终实现了旧编译环境与新Runner的兼容共存,解决了嵌入式项目CI/CD的部署难题。该方案无需重构项目或升级硬件,通过容器化和资源优化实现了低成本自动化。

2026-01-06 17:21:09 1007

原创 Android 12 RK3588平台电源菜单深度定制指南

Android 12 RK3588电源菜单定制指南摘要 本文详细介绍了在Android 12 RK3588平台上深度定制电源菜单的全过程。首先分析了定制电源菜单的必要性(品牌差异化、功能扩展等)和技术挑战(系统组件修改复杂度)。通过逆向工程定位到核心源码文件GlobalActionsDialogLite.java和布局文件global_actions_grid_lite.xml。

2025-12-26 15:37:34 1372

原创 在安卓设备上测试 AWS S3 下载速度的完整指南

本文详细介绍了在安卓设备上测试AWS S3下载速度的方法。通过Termux和AWS CLI的组合,无需Root即可搭建轻量级测试环境。步骤包括:安装Termux、配置AWS CLI、编写测速脚本、执行测试并分析结果。文章还提供了常见问题解决方法及优化建议,如使用大文件测试、多次运行取平均值等。该方法成本低、易复现,适用于移动开发、边缘计算和网络性能调优等场景,能有效验证特定网络环境下AWS S3的实际访问性能。

2025-12-19 09:41:34 784

原创 Godot GDExtension 4.5 windows编译记录

本文记录了将Godot GDExtension插件从Mac移植到Windows(MSVC)时遇到的编译问题及解决方案。主要问题包括:1) reinterpret_cast转换失败和_gde_UnexistingClass报错,原因是MSVC成员指针优化;2) Windows头文件污染;3) 链接器找不到库文件。解决方案:1) 使用PIMPL模式隔离核心逻辑;2) 添加MSVC的/vmg编译选项解决成员指针问题;3) 调整SCons构建脚本处理库文件名。最终提供了精简的SConstruct配置、采用PIMPL

2025-12-15 10:57:58 1094

原创 画画抓型学习总结

抓型艺术是绘画的基础技能,本文总结了从工具使用到进阶技巧的完整方法。关键点包括:利用九宫格和转折点简化形状,按一二三级型逐步细化,采用红线检查等纠错方法,并强调手臂发力绘制长线条。建议通过2-4小时的日常练习,结合正确的心理预期,循序渐进地提升抓型能力。持续实践是掌握这项核心技能的关键。

2025-12-11 11:42:30 431

原创 在 RK3588 上彻底禁用 HDMI 音频输出

摘要: 本文详细介绍了在RK3588平台上彻底禁用HDMI音频输出的完整解决方案。首先通过分析audio_policy_configuration.xml文件定位问题根源,手动修改验证后删除HDMI相关配置。随后将修改固化到AOSP源码,重点说明了正确的编译刷机方法(必须使用update.img而非fastboot)。文章总结了常见错误及解决方法,并强调该方案仅影响音频输出,不影响HDMI视频功能。这套从临时调试到源码固化的完整流程,特别适用于数字标牌等需要强制使用板载喇叭的嵌入式场景。

2025-12-11 08:21:12 1366

原创 如何解包 Android boot.img 并检查 UART 是否启用

本文详细介绍了如何解包 Android 设备的 boot.img 并检查 UART 是否启用(以 RK3588 为例)。主要内容包括:使用 AOSP 工具 unpack_bootimg 解包 boot.img

2025-12-10 14:38:44 994

原创 修复 macOS 下 Godot-CPP 链接丢失 TLS 符号 (__ZTW) 问题记录

记录修复 macOS 下 Godot-CPP 插件因 TLS 符号缺失导致的加载崩溃问题。当使用 Clang 编译 Godot 4.5.1 GDExtension 插件时,静态库优化会剔除未显式调用的 TLS Wrapper 函数(__ZTW符号),导致动态库加载失败。

2025-12-03 21:29:58 1230

原创 AOSP多板卡配置修改过程记录

本文介绍了基于同一AOSP代码仓库适配多款硬件设备的策略。核心思路是通过构建系统的"配置三角"机制实现差异化定制:1)通过AndroidProducts.mk注册新产品;2)在BoardConfig.mk中定义硬件参数;3)在产品配置.mk文件中定制软件内容。该方案通过继承通用配置并覆盖差异化配置,避免了代码重复维护,特别适用于同平台不同外设的硬件变种。文中以RK3588平台为例,展示了如何通过修改设备树、WiFi驱动等关键配置来适配新硬件Apollo。

2025-11-26 19:31:21 124

arm gicv3的相关架构资料

arm gicv3的相关架构资料

2022-05-26

极客班C++设计模式课件资料.zip

极客班C++设计模式课件资料,网易公开课C++设计模式相关资料。各类模式的PPT,和一个项目PDF手册

2020-06-27

0024-qt5.11.3_linuxfb_rotation.patch

qt支持界面旋转,在启动时可以增加roration=90

2021-12-20

STM32F4xx_DSP_StdPeriph_Lib_V1.4.0.zip

\8,STM32 参考资料\STM32F4xx 固件库\stm32f4_dsp_stdperiph_lib.zip

2020-07-26

template_FWLib.zip

STM32F429使用标准库的模板工程,不是HAL库。正点原子没有提供标准库,就自己搞了一个。主要是配置了工程的一些选项,然后把标准库放进去了,构建了一个普通的工程。

2020-07-26

swt-3.5.2-gtk-linux-x86_64

swt-4.2.2-win32-win32-x86_64.zip

2014-11-22

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除