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

标签: #Allwinner

// 10条目
2026-10-14

F101 Zephyr LVGL 列表滚动优化

F101 上运行 Zephyr,屏幕分辨率 1024x614。应用是一个电视端的 B 站客户端,主界面是一个列表,最多 100 张卡片,每张卡片包含封面和若干文字控件,滚动由 LVGL 处理。 问题优化前,滚动一步的 CPU 时间为 250 ~ 350 ms,帧率约 3 fps。 LVGL 的滚动流程:手指移动后,容器内所有子对象的坐标整体平移,整个容器区域被…

#RISC-V #Allwinner #Zephyr
访问
2026-10-05

全志 F101 移植 ESP-IDF 记录

前言F101 是一颗单核 RISC-V SoC,参数如下: 核心为 T-Head 玄铁 C907,rv32imac,带 FPU,带 MMU,MMU 不启用 16 MB PSRAM,映射在 0x40000000 中断:CLINT 0x14000000(定时器),PLIC 0x10000000(外设中断) 板载 4.3 寸 RGB 屏(1024x600)、SD 卡槽、SPI NOR flash、片上音频 codec、USB,以及若干…

#RISC-V #Allwinner #F101
访问
2026-10-04

没有 SBI 的 RISC-V 上给 Zephyr 加 MMU 和请求调页

开发板为 YuzukiNeko,SoC 核心为平头哥 C907(rv32imafdcv),16 MB PSRAM,没有 SBI,内核直接运行在 M 态。 目标是让 mGBA 把一个 16 MiB 的 GBA 游戏 ROM 当作 16 MiB 的内存读取,而板子的内存总量只有 16 MB。 实现方式是在 Zephyr 中为 RISC-V 增加 Sv32 MMU 和请求调页(demand paging),以 SD…

#RISC-V #Allwinner #Zephyr
访问
2026-10-02

在 Zephyr 上跑 Arduino:预编译 Core 的链接魔法

起因:Arduino 想要“秒级编译”,Zephyr 给不了Arduino 的体验是:点一下“上传”,几秒钟后板子就在跑你的 .ino。IDE 背后只按 platform.txt 里的 recipe 调 gcc 编译、链接,再调上传工具把固件写进去。没有配置系统,没有依赖树,就是几条命令行。 Zephyr 是另一个世界。west + CMake + Ninja,几千个 Kconfig 符号,devicetree 先被编译成 C…

#RISC-V #Allwinner #Zephyr
访问
2026-09-28

记一次 T-Head C907 上 FreeRTOS "上电即崩" 的排查

背景一块 YuzukiNeko 板(SoC 是 Allwinner F101,核是 T-Head C907,RV32),跑 FreeRTOS。开发时不用 boot0/SPL 从 flash 启动,而是直接用 xfel(FES) 和 GDB + CKLink…

#RISC-V #Allwinner #FreeRTOS
访问
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 代码执行实现源码位置:…

#Embedded #Allwinner #Firmware
访问
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 #Embedded #Allwinner
访问
2026-04-30

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

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

#Embedded #Allwinner #Firmware
访问
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]; …

#USB #Embedded #Allwinner
访问
2026-04-26

OpenixCLI Firmware 模块深度解析:IMAGEWTY 固件格式解析

概述固件解析是嵌入式刷写工具的核心功能。全志(Allwinner)芯片使用一种名为 IMAGEWTY 的专有固件格式,将多个组件(FES、U-Boot、MBR、DTB、分区数据等)打包成单一文件。OpenixCLI 的 Firmware 模块负责解析这种二进制格式,提取各组件数据供刷写流程使用。 模块结构src/firmware/├── mod.rs # 模块导出├── types.rs #…

#Embedded #Allwinner #Rust
访问
1/3
目录