- 博客(115)
- 资源 (3)
- 收藏
- 关注
原创 解析U-Boot中的OP-TEE安全等级选择机制
的核心作用,是根据:执行download命令,然后返回。:输出安全等级选择成功的调试信息。:输出当前实现不支持安全等级的提示。其他返回值:调用panic()处理异常。这段代码体现了 U-Boot 对安全等级相关操作的分支控制,但真正的安全策略取决于底层函数实现和整个启动链的设计。尤其要注意,执行了安全等级检查,不代表所有安全存储、密钥校验和启动镜像认证都已经完成。只有继续追踪底层函数和download命令的实现,才能准确判断该机制对设备安全启动、异常恢复和固件升级的实际影响。
2026-10-16 09:06:12
原创 解析 CONFIG_OPTEE_SECURITY_LEVEL:U-Boot安全策略开关
在嵌入式 Linux 系统中,U-Boot 负责初始化硬件、加载内核,并完成操作系统启动前的一系列工作。如果系统集成了 OP-TEE(Open Portable Trusted Execution Environment),启动过程还可能涉及可信执行环境初始化、安全密钥管理以及安全存储访问等操作。是某些厂商定制 SDK 中使用的配置宏。从名称来看,它与 OP-TEE 安全等级或安全策略有关,可能用于控制启动流程中的安全检查行为。
2026-10-16 08:57:09
13
原创 RK3588等SDK编译报错:Cryptodome模块缺失怎么办?
通常不是目标开发板硬件故障,而是开发主机缺少对应Python依赖,或者Python环境配置不正确。对于明确使用Cryptodome更值得重视的是,部分旧版SDK可能存在编译失败却没有终止整体构建的问题。因此,解决依赖缺失只是第一步,还必须确认相关组件真正编译成功,并检查最终固件是否包含所需程序。记住:编译流程执行结束,不等于所有组件编译成功。对于嵌入式Linux和TEE项目,及时发现并处理被忽略的编译错误,才能减少固件功能异常和后期排查问题的成本。
2026-10-16 08:55:09
259
原创 ARM中断嵌套:CPSIE与CPSID解析
这段汇编代码的核心目的,是在中断处理函数执行期间开放普通 IRQ,使满足 GIC 抢占条件的更高优先级中断能够及时响应;而在处理函数返回后重新关闭 IRQ,为后续异常退出流程提供受控环境。其中,CPSIE i和CPSID i决定普通 IRQ 的屏蔽状态,DSB 和 ISB 用于满足相关同步要求,BLX r1则负责调用真正的中断处理入口。理解这段代码,不能只看某一条指令,而要把 CPU 异常机制、CPSR 中断屏蔽位、GIC 优先级仲裁、现场保存和 FreeRTOS 内核约束结合起来分析。
2026-10-13 10:49:07
137
原创 ARM GIC中断优先级映射函数解析
是一个 HAL 层与 GIC 底层之间的优先级转换函数,主要承担以下工作:检查中断号、转换模式和指针参数。将 HAL 优先级等级0~3映射为抢占优先级15、10、5、0。将抢占优先级反向转换为 HAL 优先级等级。在正向转换中将子优先级设置为0。对不支持的输入返回-1,避免产生无效的映射结果。理解这段代码的关键,是区分HAL 抽象优先级、GIC 抢占优先级和子优先级。只有结合实际的 GIC 分组配置和中断处理流程,才能进一步确定它们对嵌套中断及 RTOS 实时响应的影响。
2026-10-13 10:02:41
149
原创 GIC中断优先级分组配置详解
GIC 通常使用数值表示中断优先级。在常见的 8 位优先级模型中,数值越小,表示优先级越高。例如:优先级0x20:优先级较高。优先级0x80:优先级较低。优先级0xE0:优先级更低。但是,优先级数值并不只是简单地决定哪个中断先执行。组优先级(Group Priority):用于判断一个新到来的中断能否抢占当前正在处理的中断。子优先级(Subpriority):用于多个待处理中断之间的优先级排序,但不能单独使中断抢占另一个具有相同组优先级的活动中断。二进制点寄存器就是用来控制这两部分如何划分的。
2026-10-13 09:59:11
204
原创 GIC为什么要配置BPR为0?
这行代码的核心目的,是配置 GIC 的优先级分界点,让尽可能多的已实现优先级位参与抢占优先级判断。它有助于系统建立明确的中断优先级层级,使高优先级中断能够在满足其他条件时抢占低优先级中断。BPR决定优先级如何划分,CPU中断屏蔽状态和GIC的其他配置决定中断是否能够实际发生抢占。两者配合正确,才能实现可靠的中断嵌套。关注我,持续分享 ARM、GIC、FreeRTOS 和嵌入式底层开发知识!
2026-10-12 09:20:10
289
原创 从手机选购视角,聊聊 5G N79 频段到底是不是必需品
结论可以归纳为三点: 第一,不存在 “没有 N79 就是假 5G 手机” 的说法,主力频段 N41、N78 完整,就可以正常使用国内 5G;第二,电信联通用户不用考虑 N79;移动广电普通日常用户 N79 属于锦上添花;第三,经常出入校园、大型场馆、繁华商圈的移动、广电用户,N79 会实实在在改善高峰期上网体验,购机时尽量优先带上。说到底,评判一个频段有没有必要,核心还是看自己平时的活动场景,而不是网上的参数舆论。
2026-10-08 08:33:29
187
原创 票房沉沦,我陈平牛唯有一计:零宣发、裸映、糙模、出圈、涨排片、爆火、屠榜、封神!
当所有路都走不通的时候,不妨试试最野的路。票房沉沦?不怕。牛来!!!(本文纯属虚构,如有雷同,那咱们可能就是下一个传奇。
2026-08-15 22:46:45
189
原创 x11与weston对比,优先选哪个
新项目、触控屏、低延迟 → Wayland (weston)老软件、调试工具、ssh 图形转发 → X11。
2026-08-10 10:37:30
230
原创 窗口系统x11 wayland简介
表格项目X11(Xorg)Wayland服务模型客户端→独立 X 服务器客户端→合成器一体化窗口渲染服务端绘图客户端自行渲染缓冲区输入路径X 服务器中转合成器直接分发事件撕裂问题需要合成扩展原生页面翻转,不易撕裂高分缩放补丁支持原生小数缩放安全性差程序可抓取全部窗口窗口隔离远程 Xssh -X 原生支持依靠 PipeWire/RDP。
2026-08-10 10:28:15
247
原创 optee是什么
OP-TEE 是 ARM TrustZone 里的安全操作系统,用来提供安全服务,并在你这个 Allwinner 平台上负责控制 AMP 多核(包括可能的 E907 启动)。
2026-06-01 11:39:26
225
原创 一文看懂 CAN FD 与 CAN FD 扩展帧的区别与应用场景
数据长度限制传统 CAN:最多 8 字节CAN FD:最多 64 字节传输速率限制传统 CAN:通常 1 MbpsCAN FD:仲裁阶段低速,数据阶段可提升到 2~8 Mbps 甚至更高👉 简单来说:CAN FD = 更快 + 能传更多数据标准帧(Standard Frame)ID 长度:11 位扩展帧(Extended Frame)ID 长度:29 位👉 本质区别:扩展帧只是“ID 更长”,用于更复杂的网络标识对比项CAN FDCAN FD 扩展帧本质协议升级版本。
2026-05-04 09:40:45
251
原创 贾政的五个孩子:藏在名字里的家族密码
贾政在《红楼梦》里是个不太讨喜的父亲。他总是板着脸,动辄呵斥宝玉“作死的孽障”,对儿子们似乎永远不满意。可如果细数他的五个孩子——贾珠、贾元春、贾宝玉、贾探春、贾环,会发现这五个人的人生轨迹几乎涵盖了贾府从极盛到崩塌的全部面向。贾政自己或许从未意识到,他的五个子女拼在一起,就是一部完整的家族衰败史。
2026-05-02 09:16:37
331
原创 红楼梦中16把交椅,真的是大明16位皇帝吗?
红楼梦》里的贾府,祠堂中密密麻麻排着先辈的画像与牌位,每逢祭祖大典,宁荣二府上下齐聚,焚香跪拜,仪式之隆重、等级之森严,俨然一个微缩版的皇家太庙。细心的读者翻开贾府族谱会发现,从宁国公贾演、荣国公贾源算起,到贾蓉、贾兰这一辈,贾府直系中能在祠堂拥有正式牌位、享受子孙香火的男性祖先,恰好可以一一对应到祠堂两侧依次排开的交椅之上。这个数字如果真与大明16位皇帝形成对应,那么曹雪芹想要隐去的“真事”,恐怕远比我们想象的更为惊人。
2026-05-02 09:13:38
283
原创 贾府的秘密:《红楼梦》里藏着一个前朝
红楼梦》开篇便说“无朝代年纪可考”,曹雪芹似乎打定主意要让故事悬在时间的真空里。可四百年来,无数读者都在书页缝隙中嗅到了同一种气息——那是属于明朝的记忆。从服饰器物到制度礼仪,从人物命运到家族兴衰,这部“清朝人写的小说”里,明朝的影子无处不在。这些被后世称为“隐喻”的巧合,是曹雪芹的无心之笔,还是他刻意留下的密码?
2026-05-02 09:01:23
386
原创 金庸:他走后,世间再无真正的江湖
如果有人问,二十世纪华语世界最畅销的作家是谁?答案不是某位纯文学大师,而是一个用一支笔构建了整个江湖的人——金庸。从1955年《书剑恩仇录》连载开始,到1972年《鹿鼎记》封笔,他用17年、15部作品,让几亿中国人共同拥有了一个名为“江湖”的精神故乡。
2026-05-02 08:58:50
329
原创 Windows 11 双网卡桥接抓包方案解析:可行性与局限性
Windows 提供的“网络桥接(Network Bridge)”功能,本质上是将两个物理网卡 объедин为一个逻辑网络设备,使数据可以在两个网口之间进行二层转发。典型结构如下:设备A ←→ 网卡1 [PC桥接] 网卡2 ←→ 设备B在这个结构中,PC 类似一个“透明交换机”,可以插入到通信链路中间。双网口透明转发同时复制数据到内存或存储定制协议解析(如 EtherCAT)这种方案适合深入开发和高性能需求场景。✔ 可用于简单调试❌ 无法保证全流量捕获❌ 不适合工业协议分析。
2026-04-22 15:32:32
493
原创 pcb中临界长度是什么意思
因为信号在 PCB 上传播需要时间,如果信号上升沿很快,而走线又比较长,那么在线路另一端还没来得及稳定时,反射、振铃、过冲等问题就会出现。PCB 中的“临界长度”是指:当一段走线长度超过某个值之后,就不能再把它当成“普通导线”处理,而要把它当成传输线处理。之所以除以 10,是因为工程上一般认为:当信号在线路上的传播延时超过上升时间的 1/10 时,就需要考虑传输线效应。因此,PCB 中临界长度的本质,就是“这段线是否已经长到足以让信号传播延迟不可忽略”。
2026-04-02 14:17:30
83
原创 pcb走线上信号传播速度
对于低速信号,这种延时几乎可以忽略;但对于 DDR、USB、PCIe、千兆网、LVDS、高速 ADC 等高速接口,几百 ps 到几 ns 的差异就可能影响时序,所以需要严格做等长处理。PCB 走线上的信号传播速度,并不是电子“移动”的速度,而是电磁波沿着铜线和介质传播的速度。
2026-04-02 14:13:20
150
原创 T153 PWMCS 配置代码解析:单次脉冲输出是如何工作的
这段代码最终会生成一个:周期 5us频率 200kHz占空比约 47%正常极性单次模式输出的 PWM 波形。如果后续你在 T153 上继续调试 PWMCS,建议重点关注:pulse_num 为 0 的实际行为是否需要调用 enable/start 接口PWMCS 是否独占某一路 PWM 通道单次模式下是否需要手动重复触发输出引脚是否已经正确复用到 PWM 功能关注我,后续继续分享更多 T153、PWM、GPADC、GPIO 和底层驱动开发经验。
2026-04-02 10:08:55
236
原创 ARMv7 JTAG 调试软件推荐:如何选择最适合你的工具
→ 性能与稳定性首选OpenOCD→ 开源灵活方案Ozone→ 高级调试分析→ 官方专业级工具Keil / IAR→ 更适合 Cortex-M如果只给一个建议:👉ARMv7-A 开发优先选 J-Link + GDB,其次再考虑 OpenOCD如果你对 ARM 架构、底层调试、JTAG 原理或者嵌入式 Linux 感兴趣,欢迎持续关注我,后续会分享更多实战经验与踩坑总结 🚀。
2026-03-27 16:05:07
422
原创 深入解析:DAP、APBIC 与触发逻辑在芯片调试中的作用
DAP:提供外部调试入口APBIC:实现总线访问调度CTM / CTI:增强事件捕获与自动化能力掌握这些模块的原理与协作方式,对于嵌入式开发、芯片调试以及系统优化都有重要意义。如果你对嵌入式开发、芯片架构或底层调试技术感兴趣,欢迎持续关注我,后续会带来更多实战与深度解析内容 👍。
2026-03-27 15:57:35
194
原创 JTAG调试原理
JTAG调试的原理可以概括为:利用TAP状态机切换指令和数据路径,通过边界扫描链获得对芯片引脚的物理控制权,再通过调试访问端口映射到芯片内部的总线(如AHB、APB),从而实现对CPU内核、内存和外设的暂停、单步、读写和监控。相比于SWD(Serial Wire Debug,串行线调试),JTAG的优点是功能强大、支持链式多设备;缺点是引脚较多(5根),速度在极高频下可能受PCB布线影响。
2026-03-27 15:43:05
225
原创 lumenpnp校准–连接至 LumenPnP 并配置底部相机
既然 OpenPnP 已安装并且 LumenPnP 配置文件已放置在隐藏的系统文件夹中,OpenPnP 可以使用一些基本的预配置设置启动了。下一步是连接您的 LumenPnP 并熟悉 OpenPnP 的用户界面。。然后,我们将安装 N045 和 N24 吸嘴头来帮助我们进行校准。最后,我们将通过建立与底部相机的连接并设置正确的曝光来配置您的底部相机。在启动 OpenPnP 之前,请遵循以下指南以确保连接顺畅:按顺序执行以下步骤:在 OpenPnP 可以与 LumenPnP 通信之前,我们需要设置正确的串行端
2026-03-26 18:43:57
662
原创 am6442 启动流程
Texas Instruments AM6442 的启动流程是,从芯片内部 ROM 开始,一步步加载外部存储中的程序。整体流程可以分为(或 RTOS / Baremetal)。下面按顺序解释。
2026-03-09 09:45:48
298
原创 全志科技 T153 处理器特性解析 —— Local Bus Controller(LBC)详解
Local Bus Controller(LBC)基于私有 Localbus 同步传输协议设计,主要面向工业级数据通信应用。Direct CPU Access(CPU 直接访问)Indirect CPU Access(CPU 间接访问)Private DMA Access(私有 DMA 访问)通过多种访问方式的组合,LBC 可以兼顾实时性与系统负载均衡需求。更灵活的复用方式频率较低更适合兼容传统异步存储或低速外设✔ 高达 150 MHz 本地总线接口✔ 最大 128 beat 突发传输。
2026-03-05 08:39:33
799
原创 全志t153简介
全志T153是一款专为工业应用设计的高性能、高集成度四核处理器。它最大的特点是采用了,并配备了3路千兆网口、2路CAN-FD以及LocalBus等丰富的工业接口,主要面向可编程逻辑控制器(PLC)、人机界面(HMI)、工业网关和机器人等场景。
2026-02-25 14:27:34
536
原创 canfd扩展帧简介
CAN FD(Flexible Data-rate)是在经典 CAN 基础上的增强协议,扩展帧则是在 CAN/CAN FD 中使用 29 位标识符的帧格式。两者结合后,就是 CAN FD 扩展帧(29-bit ID + FD 特性)。CAN FD 扩展帧 = 用 29 位 ID 做“协议头”,用 64 字节 DATA 做“负载”,再用高速数据段保证实时性。如果你需要,我可以再给你一份SPI↔CANFD 网关里,扩展帧 ID 规划的工业级设计模板,直接可用于你现在的项目。
2026-01-26 08:42:25
584
原创 全面解析CAN FD扩展帧:技术演进与应用优势
CAN FD扩展帧是CAN FD协议中用于传输数据的一种帧格式。它建立在传统CAN扩展帧的基础上,但进行了关键的性能强化。其核心特征在于可变的数据场传输速率和更大的数据负载。简单来说,传统的CAN扩展帧数据场最多容纳8字节,且在整个传输过程中波特率固定。而CAN FD扩展帧在仲裁段(用于决定总线访问权的部分)仍使用标准的波特率(通常≤1 Mbps),一旦仲裁获胜,切换到数据场时,传输速率可以显著提升(最高可达5 Mbps甚至更高),同时数据场长度也扩展至最多64字节。
2026-01-26 08:39:02
654
原创 从多仓库到单仓库:如何高效迁移并统一管理多个Git项目
从多仓库向单仓库迁移是一项系统工程,需要精心规划和细致执行。通过合理使用Git高级工具(如subtree),可以在保留历史的同时实现平滑过渡。迁移后,团队将享受统一依赖管理、跨项目重构便利和标准化流程带来的长期收益。记住:充分测试是成功迁移的关键。如果您觉得这篇迁移指南有帮助,想获取更多Git高级技巧、 DevOps实践和工程效能提升的深度内容,请关注我!我将持续分享一线实战经验,助您构建更高效的开发工作流。
2026-01-22 09:11:53
738
原创 git add . 是否会包含.o、.so、.ko文件?深度解析与避坑指南
git add .确实会包含.o、.so和.ko文件,但这并非Git的设计缺陷,而是灵活性的体现。始终为项目配置.gitignore文件:根据语言或框架(如GitHub提供的模板),定制忽略规则。谨慎使用git add .:在运行前,可先用git status查看更改,或使用git add -u仅添加已跟踪文件的修改。定期检查仓库内容:避免二进制文件意外提交,保持仓库精简。通过合理使用.gitignore,您可以充分发挥git add .的便利性,同时避免不必要的文件干扰。
2026-01-22 09:08:46
357
原创 Git强制添加的真相:当 git add . -f 遇上 .gitignore
在 Git 的世界里,.gitignore文件扮演着的角色,而中的-f(force)标志则是一把。这把钥匙能打开守卫者把守的大门,让本应被忽略的文件强行进入暂存区。
2026-01-22 08:54:00
1011
原创 CAN FD帧类型详解:数据帧、远程帧、错误帧与过载帧
CAN FD通过四种帧类型的协同工作,构建了一个可靠、高效的车载网络通信体系。数据帧承担高效数据传输,远程帧实现数据请求,错误帧和过载帧则共同保障了通信的可靠性与实时性。理解这些帧类型的功能与交互,是设计和调试CAN FD网络的基础。
2026-01-06 14:12:00
792
原创 DRM 设备 简介
DRM 是一个重要的图形渲染层,提供了对 GPU 的高级管理和资源分配。它在现代 Linux 图形栈中扮演着关键角色,使得开发者能够创建高性能的图形应用和游戏。通过抽象和优化硬件资源,DRM 确保了图形和视频的流畅播放。
2025-12-25 08:42:35
386
原创 Mali-G610 简介
Mali-G610 GPU 的引入使得 ARM 在图形处理领域进一步增强了竞争力,适合需要强大图形性能的移动应用和嵌入式设备。其优化的性能和能效,为用户提供了出色的使用体验。
2025-12-25 08:31:19
582
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅