文章目录

  • AK35I Pro V2
    • 1. MCU SN32F299
      • SN32F299 内存映射
    • 2. Bootloader
    • 3. TFT 135x240 1.14inch
    • 4. 键盘
    • 5. Flash PY25Q128HA
    • 6. 蓝牙 CH582F
    • 7. 扩展板
    • 8. 电池 606090 3.7V 4000mAh

AK35I Pro V2

AK35I Pro V2 测评视频
键盘外壳使用卡扣固定, 外壳没有螺丝, 将外框向外翘起, 用撬棒进行脱扣即可打开

【看键】1我常见键盘主控都有啥 提到华奋达是常见键盘主控之一, HFD 芯片就是华奋达的芯片
主控为 HFD80CP100 229GNWD0a

1. MCU SN32F299

FPB/AJAZZ-AK820-PRO 提到 HFD80CP100 就是 SN32F299
工作频率 48MHz


SonixQMK/sonix_dumper 提到了利用 SWD 接口读取程序 Flash 的方法
如何安装 - SonixQMK Docs 提到了如何向 HFD 写入程序的方法, 实际利用 Bootloader 的自举能力覆写程序 Flash

SN32F299 内存映射

地址下界地址上界大小名称注释
00000000H00040000H256KBon-chip FLASH用户程序
1FFF0000H1FFF1000H4KBBoot ROMBootloader
1FFF2000H1FFF2800H2KBInformation Block
20000000H20008000H32KBSRAM内存
40000000H40064000H400KBPeripheral外设功能寄存器
60000000H70000000H256MBEBI BANK
A0000000HB0000000H256MBSPI FLASH
E000E000HE000ED00H3.25KBNVIC
E000ED00HE000F000H768BDebug Control

2. Bootloader


空格下方藏有引出的 Boot 引脚和 GND, 短接后冷启动进入 Bootloader 模式
Bootloader 模式启动 USB 外设, 提供 USB HID 接口进行通信

将键盘连接到电脑后, 对 USB 数据进行抓包可得到如下参数
设备 DEVICE

含义
idVendor(VID)0x0C45(Sonix Technology Co., Ltd)生产商ID, 由厂商向 USB-IF 申请
idProduct(PID)0x7140(SN299)
bcdDevice(REV)0x0121

接口 INTERFACE

NumberClassSubClassProtocol
03 (HID)0 (No Subclass)0

暂时未找到有 Sonix 官方文档对 Bootloader 的功能进行描述, 不过 sonixflasher.c 给出了通过 libusb/hidapi 与 Bootloader 通信的方法

3. TFT 135x240 1.14inch


其中 #3 和 #4 通过二极管后再接到MCU

淘宝上"类似产品"接口定义如下, 替换后可直接点亮
主控 ST7789V, 采用 SPI 协议通信, SCL 上使用 24MHz 的方波, 通过 SDA 进行半双工通信(实际疑为单工, 只写不读)

NO.SymbolDescription
1LEDALED Anode
2GNDPower Ground.
3RESETThis signal will reset the device,Signal is active low.
4RSDisplay data/command selection pin in 4-line serial interface.
5SDASPI interface input/output pin.
6SCLThis pin is sed to be serial interface clock.
7VDDPower Supply for Analog
8CSChip selection pin. Low enable, High disable.


值得一提的是该 TFT 的显示区域的显存地址不是从 (0, 0) 到 (135, 240), 而是从 (52, 40) 开始到 (187, 280)

4. 键盘

5. Flash PY25Q128HA



PY25Q128HA_H 容量 16MB(用满 24 位地址的全部空间), 采用 SPI Flash/EEPROM 协议, 与其他类似Flash芯片的操作方式相同, 如 MX25L1605D

地址 0x330100~0x559C60 3888000B=60x240x135x2B≈3.70MB 为开机动画, 下面是提取数据后重制的 GIF 图

  • 共 60 帧, 帧率 20Hz, 每 50ms 一帧
  • 每帧大小 648000B, 宽 240 高 135
  • 每像素 2B, 颜色编码 RGB565
    • RRRRRGGG GGGBBBBB
    • R: 低字节高5位
    • G: 低字节低3位 + 高字节高3位
    • B: 高字节低5位
  • 每帧读取用时 21.5ms

6. 蓝牙 CH582F



CH582F 采用QFN28封装, 底部有一大片 #0 引脚用于接地, 其余引脚围绕边缘铺开, 外接一个有源 32MHz 晶振

7. 扩展板


在这里插入图片描述
开关拨向 BT 时, BT 引脚接地
开关拨向 RF 时, RF 引脚接地
开关拨向 Win 时, Win 引脚接地

8. 电池 606090 3.7V 4000mAh


板载 2 块 606090 电池

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/87903.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/87903.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/87903.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

11. TypeScript 工具类型

TypeScript 提供了一系列内置的“工具类型”(Utility Types),它们是对已有类型进行变换的便捷方式。通过这些工具类型,开发者可以更灵活、可维护地进行类型设计,避免重复定义类型逻辑。 工具类型的作用主要有&#xf…

Kafka性能调优全攻略:从JVM参数到系统优化

前言 在大数据处理领域,Kafka以其高吞吐、高并发的特性成为消息队列的首选。然而,随着业务规模的扩大和数据量的激增,若配置不当,Kafka的性能和稳定性会受到严重影响。其中,JVM参数的调整是优化Kafka性能的关键一环&a…

HarmonyOS 5 NPU支持哪些AI框架?

以下是HarmonyOS 5 NPU支持的AI框架及适配方案,结合关键技术和实测数据: 一、原生支持框架 MindSpore Lite‌ ‌核心特性‌: 原生适配昇腾达芬奇架构,支持INT8/FP16混合量化自动算子融合优化(实测推理速度提升3.2倍…

鸿蒙uvc预览

简单查看流程,如有错误请指出。 CameraNativePreview.ets--> 这里开始进入uvc_camera库 (CameraDevice.ets/CameraManager.ets) --> CameraUtils.ets--> -->CameraNativeMethods(index.d.ts文件,路径: uvc_camera\src\main\cpp\types\…

PHP的打印语句

文章目录 环境总结打印语句换行符括号数组(对象)和字符串之间的相互转换 打印语句echoprint括号print_rvar_dump 数组(对象)和字符串之间的转换json_encodejson_decodeimplodeexplode 环境 PHP 8.4.5 总结 如果不想看详细介绍&…

功率MOSFET的SOA曲线

功率MOSFET的SOA曲线 SOA区指的是MOSFET的安全工作区,英文表示为Safe Operating Area,是指MOSFET(金属氧化物半导体场效应晶体管)的安全操作范围。在线性模式运行的情况下,SOA特别有用。但开关模式下,一般…

Stacking集成BP神经网络/RF/SVM和遗传算法的煤炭配比优化

一、煤炭配比优化的问题本质与技术路线 煤炭配比需同时满足煤质指标(灰分、挥发分、热值)、燃烧特性(着火温度、燃尽指数)、经济成本等多目标优化。传统方法依赖经验公式,难以处理非线性关系: 核心难点&a…

Unity Shader开发-着色器变体(2)-定义着色器变体

一.定义着色器变体 定义一个着色器变体(Shader Variant)从概念和实现上讲,主要包括以下几个核心部分 1.使用预编译指令来声明变体关键字 关键字是驱动变体生成的“开关”。它们是简单的字符串标识符,用于在 Shader 代码中标记不…

sql server耗时模拟

REATE PROCEDURE SimulateDelay AS BEGINPRINT 开始耗时操作...;-- 模拟等待 5 秒WAITFOR DELAY 00:00:05;PRINT 耗时操作完成。; END 方法二:使用忙循环(不推荐,CPU 占用高) CREATE PROCEDURE SimulateBusyLoop AS BEGINDECLARE start DATETIME GETDAT…

Zookeeper的典型应用场景?

大家好,我是锋哥。今天分享关于【Zookeeper的典型应用场景?】面试题。希望对大家有帮助; Zookeeper的典型应用场景? 超硬核AI学习资料,现在永久免费了! Zookeeper 是一个分布式协调服务,广泛应用于需要高可用性、分…

STM32F103_LL库+寄存器学习笔记12.3 - 串口DMA高效收发实战3:支持多实例化的版本

导言 《STM32F103_LL库寄存器学习笔记12.2 - 串口DMA高效收发实战2:进一步提高串口接收的效率》基于上一个版本,进一步提升代码的模块化水平,支持多实例化。 如上所示,收发大量的数据,没有丢包。 项目地址&#xff1a…

跨平台的重构版Notepad++文本编辑器

跨平台 Notepad 替代方案 Notepad 是 Windows 平台上的流行文本编辑器,但其原生版本不支持跨平台。以下是功能相似且支持多平台的替代工具: Notepadqq(Linux/macOS/Windows) Notepadqq 是 Notepad 的开源跨平台版本&#xff0c…

意法STM32F103C8T6 单片机ARM Cortex-M3 国民MCU 电机控制到物联网专用

STM32F103C8T6 单片机全面解析 1. 产品定位 STM32F103C8T6 是意法半导体(ST)推出的 经典ARM Cortex-M3内核单片机,采用 LQFP48封装,以 高性能、丰富外设和超高性价比 成为嵌入式开发领域的"国民MCU"。 2. 核心功能特…

Sui 技术如何助力 Claynosaurz 成功推出 Popkins NFT

像 Claynosaurz 这样的品牌利用 Sui 推动链上创新的边界,展示了 Web3 如何结合互动娱乐并带来独特全新的体验。Claynosaurz 最近在 Sui 上推出的 Popkins NFT 系列及其大型抽奖活动,不仅在社区参与度上取得了成功,也有力地展示了 Sui 独特的技…

OpenCV CUDA模块设备层-----反正弦运算函数asin()

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 对一个 uchar 类型的像素值(范围 [0, 255]),先归一化到浮点范围 [0.0, 1.0],然后计算其反正弦值 …

PixiJS 中 HTMLText 富文本渲染问题探究与优化思考​

起因 在使用 PixiJS 进行富文本渲染开发过程中,遭遇 HTMLText 组件处理中文字体加载时出现显著卡顿现象。针对此问题,在开源社区提交 issue 并附上相关技术细节与运行表现,期望获得解决方案。 提issues 从 issue 反馈内容来看,项目…

五、Redis的IO模型

简介 在谈及Redis为什么快的时候,很多人都只能回答redis是基于内存,所以快。但他们往往不知道,决定redis快的因素,还有它的IO模型-Reactor模型。谈及Redis的IO模型之前,先补充一下IO模型的基础知识。 IO模型演化 1.堵塞…

Cesium、ThreeWebGL详解(二)渲染引擎向GPU传数据、性能优化、引擎对比

下面从 API 定位、坐标体系、性能表现、面试常问点几个维度详细对比 Cesium、Three.js 与原生 WebGL 的绘制差异。 🧭 1. API 定位与典型应用 Cesium 聚焦全地球 GIS 场景,支持地形、影像、时空动态等地理信息功能,是专业级地图应用首选。 T…

单点登录(SSO)系统

设计一个 Java 单点登录(SSO)系统需要解决跨系统认证和会话共享问题。以下是核心设计和实现方案,包含关键组件和代码示例: 一、核心概念 认证中心 (Auth Center):中央身份验证服务令牌 (Token):用户身份凭…

《信息技术》科技核心期刊推荐

【科研必看】《信息技术》——科技核心期刊,助力你发表高影响力论文! 如果你是一位科研工作者、学者或者在校学生,正在为发表论文而努力,那么《信息技术》期刊无疑是你不可错过的选择!这本期刊以其卓越的学术影响力&am…