鍵盤 AK35I Pro V2 分析

文章目錄

  • 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…