Loading
柚木鉉の空間
0%
INITIALIZING
首页 文章 标签 归档 关于 友链 推广 搜索
YUZUKITSURU_SPACE YUZUKITSURU_SPACE YUZUKITSURU_SPACE YUZUKITSURU_SPACE YUZUKITSURU_SPACE YUZUKITSURU_SPACE YUZUKITSURU_SPACE

标签: #嵌入式

// 10条目
2026-04-30

libefex 模块架构深度解析:分层设计与核心数据结构

libefex 模块架构层级架构libefex 采用清晰的分层架构设计,从底层 USB 驱动到高层 API 逐层抽象: graph TB subgraph Application["应用层"] A1[CLI Tools] A2[Test Programs] A3[Rust Bindings] end subgraph API["API 层"] …

#USB #嵌入式 #C
访问
2026-04-30

libefex FEL 模式操作详解:内存读写与代码执行

libefex FEL 模式操作FEL 模式简介FEL (Firmware Extraction Level) 是全志芯片 BootROM 中内置的低级子程序模式。在 FEL 模式下,主机可以通过 USB 直接访问设备内存,实现: 内存读取 (sunxi_efex_fel_read) 内存写入 (sunxi_efex_fel_write) 代码执行 (sunxi_efex_fel_exec) FEL 代码执行实现源码位置:…

#嵌入式 #C #libefex
访问
2026-04-30

libefex FES 模式操作详解:闪存访问与数据传输

libefex FES 模式操作FES 模式简介FES (Firmware Extraction Stage) 是 FEL 模式的升级版本,提供更高级的闪存操作能力。FES 模式需要先在 FEL 模式下加载特定固件才能进入。 FES vs FEL 对比 特性 FEL 模式 FES…

#嵌入式 #C #libefex
访问
2026-04-30

libefex Payload 技术:ARM 与 RISC-V 机器码注入

libefex 架构 PayloadPayload 技术概述Payload 是一种机器码注入技术,用于在 FEL 模式下执行复杂的硬件操作。由于 FEL 只提供基础的内存读写和代码执行能力,要实现寄存器读写等高级操作,需要将特定的机器码写入设备内存并执行。 flowchart TD A[需要硬件操作] --> B[选择 CPU 架构] B --> C{架构类型?} C…

#RISC-V #ARM #嵌入式
访问
2026-04-30

libefex 跨平台 USB 后端:libusb 与 WinUSB 实现

libefex 跨平台 USB 后端USB 后端概述libefex 需要跨平台支持 Linux、macOS 和 Windows。由于不同平台的 USB 驱动接口不同,项目采用后端抽象层设计: libusb: 开源跨平台 USB 库(Linux、macOS、可选 Windows) WinUSB: Windows 专用 USB 驱动框架 graph TB subgraph Application["应用层"] …

#嵌入式 #C #libefex
访问
2026-04-30

libefex USB 协议层详解:数据包结构与通信流程

libefex USB 协议层USB 数据包结构libefex 使用特定的数据包格式与 Sunxi 设备通信。所有通信基于 USB 批量传输。 请求包结构 (sunxi_usb_request_t)源码位置: includes/efex-protocol.h:115-127 EFEX_PACKED_BEGINstruct sunxi_usb_request_t { union { char magic[4]; …

#嵌入式 #C #libefex
访问
2026-04-26

OpenixCLI CLI 模块深度解析:命令行接口设计

概述命令行接口(CLI)是嵌入式工具与用户交互的第一道关卡。OpenixCLI 使用 Rust 最流行的 CLI 解析库 clap(Command Line Argument Parser),通过 derive 宏模式实现声明式的命令定义,让开发者专注于业务逻辑而非参数解析细节。 模块结构src/├── cli.rs # CLI 定义(derive 宏)├── main.rs #…

#Rust #嵌入式 #OpenixCLI
访问
2026-04-26

OpenixCLI Commands 模块深度解析:设备扫描与刷写命令

概述Commands 模块是 CLI 与核心刷写逻辑之间的桥梁。它实现了 scan 和 flash 两个主要命令,负责设备检测、固件加载、参数转换等准备工作,然后将任务交给 Flash 模块执行实际的刷写流程。 模块结构src/commands/├── mod.rs # 模块导出├── scan.rs # 设备扫描命令├── flash.rs # 固件刷写命令└── types.rs #…

#Rust #嵌入式 #OpenixCLI
访问
2026-04-26

OpenixCLI Flash 模块深度解析:FEL/FES 双模式刷写引擎

概述Flash 模块是 OpenixCLI 的核心刷写引擎,负责协调 FEL(USB Boot)和 FES(U-Boot)两种模式的固件刷写流程。它处理设备检测、DRAM 初始化、U-Boot 下载、设备重连、分区刷写、Boot 写入等完整流程,是嵌入式固件刷写的典型实现。 模块结构src/flash/├── mod.rs # Flasher 主控制器├── fel_handler/ …

#Rust #嵌入式 #OpenixCLI
访问
2026-04-26

OpenixCLI Config 模块深度解析:Boot 头、MBR 与配置解析

概述嵌入式固件刷写涉及多种配置格式的解析:Boot 头(boot0/U-Boot)、分区表(MBR/GPT)、系统配置(sys_config)等。OpenixCLI 的 Config 模块负责解析这些与硬件初始化密切相关的数据结构,为刷写流程提供存储类型、分区信息、DRAM 参数等关键数据。 模块结构src/config/├── mod.rs # 模块导出├── boot_header.rs #…

#Rust #嵌入式 #OpenixCLI
访问
1/2
目录