Driver Development Kit(驱动开发服务)

news/2025/3/13 14:29:18/

文章目录

    • 一、Driver Development Kit 简介
    • 二、外设扩展驱动客户端开发指导

在这里插入图片描述
在这里插入图片描述


一、Driver Development Kit 简介

Driver Development Kit(驱动开发套件)为外设驱动开发者提供高效、安全、丰富的外设扩展驱动开发解决方案C-API,支持外设驱动开发者为消费者带来外设即插即用的极致体验。

  1. 支持开发者开发外设配件的高阶功能,满足消费者高阶使用场景诉求。

  2. 扩展驱动框架支持外设扩展驱动生命周期管理,面向扩展设备应用提供扩展外设查询绑定能力接口。

使用场景

支持开发者高效、安全开发专业外设或外设扩展增强能力:

  1. 面向专业专用办公外设驱动开发场景。
    例如:银行柜台、企业办公、医疗检测等领域专业专用外设,如:高拍仪、身份证扫描仪、指纹识别仪、血氧血糖监测设备。

  2. 面向非标外设扩展增强能力开放场景。
    例如:厂商私有非标HID外设增强能力开放场景,如:手写板快捷键定制、压感/绘图区域设置、扩展增强能力设置、鼠标灯光效果设置、鼠标扩展按键定制、DPI及X/Y轴等高阶能力设置。

框架原理

HDF扩展驱动框架为外设扩展驱动开发,提供稳定统一的外设驱动开发接口,支撑用户态外设扩展驱动开发者基于DDK能力开发用户态外设扩展驱动。

扩展外设管理服务作为用户态扩展外设管理的核心服务,实现对扩展外设和外设扩展驱动的生命周期管理,同时面向扩展设备应用开发提供标准ArkTS API接口,支持扩展外设查询、绑定及解绑能力接口。

图1 扩展外设驱动原理图

在这里插入图片描述

模块功能

● 扩展外设应用:查询驱动并绑定驱动,自定义驱动与设备之间的通信方式以及数据处理方式等,即外设扩展驱动客户端。
● 外设扩展驱动(应用):基于DDK能力开发的专业专用外设扩展驱动或外设扩展增强驱动,即外设扩展驱动。
● 扩展外设管理服务(Driver Extension SA):扩展设备管理,驱动包全生命周期管理等。
● AMS :用于拉起和关闭扩展驱动能力DriverExtensionAbility。

流程说明

用户插入外设时,外设与驱动的匹配流程如图2所示。

图2 扩展外设及外设扩展驱动匹配时序图


http://www.ppmy.cn/news/1578806.html

相关文章

【Godot4.4】写入和读取ZIP文件

概述 Godot提供了ZIPPacker类型来读写ZIP压缩包文件。本文是简单的写入和读取文件操作测试笔记。 写入纯文本文件 extends Buttonfunc _ready():write_zip_file("1.zip",func(zip_packer):write_txt_file_to_zippack(zip_packer,"1.txt","hhhhh&qu…

clickhouse源码分析

《ClickHouse源码分析》 当我们谈论数据库时,ClickHouse是一个不容忽视的名字。它是一个用于联机分析处理(OLAP)的列式数据库管理系统(DBMS),以其快速的数据查询能力而闻名。对于想要深入了解这个高效工具…

Hyper-YOLO: When Visual Object Detection Meets Hypergraph Computation

简介: 时间:2025 期刊:TPAMI 作者:Yifan Feng, Jiangang Huang, Shaoyi Du, Shihui Ying, Jun-Hai Yong 摘要: ①Hyper-YOLO引入一种新的目标检测方法,结合超图计算捕捉视觉特征中的复杂高阶相关性 ②…

AI浪潮下嵌入式软件开发如何拥抱AI:VSCODE + MarscodeAI插件+Embedded IDE

一、引言 AI浪潮席卷各个领域,各领域都在探索与AI技术深度融合以创新并提升效率。嵌入式软件开发领域同样面临此机遇与挑战。VSCODE作为流行的开源代码编辑器,与MarscodeAI插件、eide相结合,为嵌入式软件开发的AI融合提供了新思路与方法。 二…

Diffusion-Probabilistic-Models环境配置

1、相关地址 代码地址:https://github.com/Sohl-Dickstein/Diffusion-Probabilistic-Models 论文地址:https://arxiv.org/abs/2006.11239 2、python2.7 环境安装 conda create -n theano python2.7 -y conda activate theano3、包安装 下载合适的版本,也就是201…

简要分析NETLINK_USER参数

NETLINK_USER是Linux Netlink协议族的一个预留类型,允许开发者自定义用户空间与内核空间(或用户空间进程间)的通信协议。它提供了一种高度灵活的IPC机制,适合于需要高效、结构化、双向通信的场景,尤其是当现有Netlink …

Docker基础入门(一)

初识Docker 什么是Docker Docker是一个快速交付应用、运行应用的技术: 可以将程序及其依赖、运行环境一起打包为一个镜像,可以迁移到任意Linux操作系统运行时利用沙箱机制形成隔离容器,各个应用互不干扰启动、移除都可以通过一行命令完成&…

VSCode 配置优化

Visual Studio Code(VSCode)是一款功能强大且高度可定制的代码编辑器。通过合理的配置和优化,可以显著提升开发效率。以下是一份详细的 VSCode 配置优化指南,涵盖常用设置、扩展推荐、快捷键优化等内容。 1. 基本设置优化 通过修…