0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【技术专栏】泰凌微电子USB HID 用户自定义设备应用及调试

泰凌微电子 来源:未知 2023-07-19 08:40 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文主要简单介绍USB HID Vendor Defined设备的应用和调试方法,结合Telink 8355 Dongle做简要说明。

1

USB HID Vendor Defined 设备概述

1、hid设备类型是由hid报告描述符中的用途页(USAGE PAGE)决定的,常见的有Generic Desktop Controls ,Keyboard/Keypad ,还有有厂商自定义(Vendor Defined Page)选项。常用的用途表如下:

382f2352-25cc-11ee-962d-dac502259ad0.png

2、借助USB HID Vendor Defined设备可以实现USB设备与上位机间的双向通信

2

新增一个USB HID Vendor Defined设备

1、修复报告描述符

开发者可以在已有的usb interface中新增一个vendor defined设备,也可以新增一个interface,把这个vendor defined设备挂在新增的接口下面。

38451d7e-25cc-11ee-962d-dac502259ad0.png

采用在一个单独的接口中添加Vendor Defined设备,report 描述符如下:

38507f8e-25cc-11ee-962d-dac502259ad0.png

通过上面的修改,usb设备枚举完成后,在bus hound中可以查看到两个Vendor Defined设备已经枚举成功。

386bec4c-25cc-11ee-962d-dac502259ad0.png

3

USB HID Vendor Defined设备的调试

1、Vendor Defined设备调试方法

根据第二章中的报告描述符,设置了两个usage page 并开辟了两个集合,分别对应两个Vendor Defined设备。第一个设备的usage page为0xFFEF,用来给dongle 升级使用。Report ID为6,既有输入也有输出,report长度都为63。第二个设备开发者可以自由决定他的用途,可以跟上位机做自定义的数据通信。设备2的Report ID,9,Report length为32。这两个设备都使用相同的输入输出端点,他们的数据通过不同的报告ID来进行区分。

38788f9c-25cc-11ee-962d-dac502259ad0.png

2、利用bus hound模拟上位机下发数据

对于上位机一般是通过指定的usage page来打开usb设备,然后进行数据读取和写入。使用bus hound可以简单的模拟上位机进行数据发送。

特别在发送数据的时候,要严格按照报告描述符中定义的report ID 和Report Length来发,否则可能出错。

双击上图中的USB Input Device,可以选Control Out 和 interrupt Out进行发送数据测试。如果接口里面有OUT端点,则set report命令下发数据和write file命令数据都是通过out端点下来,如果没有OUT端点,则set report命令数据是通过控制端点下发的。

01

通过Set report命令下发数据

Set report命令格式如下:

388c0c5c-25cc-11ee-962d-dac502259ad0.png

389fc8c8-25cc-11ee-962d-dac502259ad0.png

02

通过write file下发数据

38c0be7a-25cc-11ee-962d-dac502259ad0.png

03

MCU读取上位机发送的数据

  • 读取上位机set report命令数据

38d25784-25cc-11ee-962d-dac502259ad0.png

  • MCU读取上位机write file数据

38e4b91a-25cc-11ee-962d-dac502259ad0.png

04

Vendor Defined设备发送数据

上报数据就是通过往Vendor Defined设备所在接口的in端点里面写数据。

特别的,第一个字节需要为报告描述符指定的Report ID,数据长度需要为报告描述符指定的长度。

38f06102-25cc-11ee-962d-dac502259ad0.png

4

总结

USB HID Vendor Defined设备是一种非常常见的人机交互接口,可以方便的实现用户各种定制化的与上位机交互需求,广泛应用于固件升级、参数设置、命令收发等定制化场景。目前Telink 键鼠领域的各SDK均支持USB HID Vendor Defined 设备,用户只需简单调用接口便可以实现与上位机交互功能。

关 于 泰 凌

泰凌微电子致力于为客户提供一站式的低功耗高性能无线连接SoC芯片解决方案,包括经典蓝牙,蓝牙低功耗,蓝牙Mesh,Zigbee,Thread,Matter,Apple HomeKit,Apple“查找(Find My)”,和私有协议等低功耗2.4GHz多协议无线连接系统级芯片和丰富的固件协议栈。公司产品广泛应用于智能照明,智能家居/楼宇,智能遥控,无线外设,智能零售,穿戴设备,无线音频,智能玩具,物流追踪,智慧城市等各类消费和商业应用场景中。

官网:www.telink-semi.com

微信公众号:telink-semi

泰凌开发者论坛

https://developers.telink-semi.cn/

销售接洽:

中国大陆(华东、华北) :

+86-21-20281118-8213

中国大陆(华南、香港、音频) :

+86-0755-26614003

telinksales@telink-semi.com

390ec732-25cc-11ee-962d-dac502259ad0.gif


原文标题:【技术专栏】泰凌微电子USB HID 用户自定义设备应用及调试

文章出处:【微信公众号:泰凌微电子】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 泰凌微
    +关注

    关注

    8

    文章

    207

    浏览量

    12590

原文标题:【技术专栏】泰凌微电子USB HID 用户自定义设备应用及调试

文章出处:【微信号:telink-semi,微信公众号:泰凌微电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    使用Python/MyHDL创建自定义FPGA IP

    使用 Python/MyHDL 创建自定义 FPGA IP,与 Vivado 集成,并通过 PYNQ 进行控制——实现软件上的简单硬件设计。
    的头像 发表于 04-09 09:53 196次阅读
    使用Python/MyHDL创建<b class='flag-5'>自定义</b>FPGA IP

    极海APM32F427如何实现自定义USB HID设备与PC进行通信

    最近需要使用到 APM32F427 枚举成Custom HID设备进行用户自定义通信,但是官方的例程只有提供的HID枚举为鼠标或者键盘类型的
    的头像 发表于 03-30 09:30 2743次阅读
    极海APM32F427如何实现<b class='flag-5'>自定义</b><b class='flag-5'>USB</b> <b class='flag-5'>HID</b><b class='flag-5'>设备</b>与PC进行通信

    微电子Embedded World 2026精彩回顾

    ,成为现场关注的焦点。从真8K无线电竞的毫秒级操控,到跨障碍物场景的“永不失联”,微电子正以硬核技术实力重新定义无线连接的边界。
    的头像 发表于 03-26 15:29 365次阅读

    微电子邀您相约Embedded World 2026

    聚焦嵌入式与物联网前沿技术,全球知名行业盛会Embedded World 2026即将重磅启幕!微电子携全场景AIoT解决方案与核心技术
    的头像 发表于 02-09 16:13 1007次阅读

    极海APM32F427移植CherryUSB实现自定义USB HID设备

    最近需要使用到APM32F427枚举成Custom HID设备进行用户自定义通信,但我又不想要使用官方的USB中间件去做一个
    的头像 发表于 01-20 09:52 4017次阅读
    极海APM32F427移植CherryUSB实现<b class='flag-5'>自定义</b><b class='flag-5'>USB</b> <b class='flag-5'>HID</b><b class='flag-5'>设备</b>

    微电子以突破性创新多维定义AIoT无线连接边界

    Showcases登陆威尼斯会展中心。从真8K无线游戏解决方案到Edge AI智能降噪,从蓝牙信道探测到多设备音频同步技术微电子以突破
    的头像 发表于 01-14 10:37 545次阅读

    微电子深度参与蓝牙 ULL 新标准,助力HID设备实现高刷新低延时

    Latency)技术新标准——HID over ISO与 SCI(Shorter Connection Intervals),正为无线连接体验升级注入关键动力。
    的头像 发表于 12-12 11:03 3097次阅读

    微电子积极推进Matter 1.5落地

    智能家居领域再迎关键进展:Matter 1.5标准在近期正式发布,微电子第一时间同步支持,用硬核芯片方案解锁万物互联新可能!无论是针对开发者还是终端用户,这些升级都超有料。
    的头像 发表于 12-04 11:14 4306次阅读

    无图形界面模式下自定义检查工具的应用

    此前文章已介绍 ANSA 中的自定义检查工具。本文将探讨该功能在无图形界面(No-GUI)模式下的应用,旨在满足标准化工作流程的需求,适用于需要高度自动化的前处理场景。通过集成自定义检查,用户可实现工作流程的高效自动化运行。
    的头像 发表于 11-30 14:13 752次阅读
    无图形界面模式下<b class='flag-5'>自定义</b>检查工具的应用

    微电子邀您相约EAC 2025

    在科技迭代加速的当下,芯片设计创新是驱动行业趋势、支撑产业增长的关键。作为一家致力于研发高性能低功耗无线物联网SoC的芯片设计公司,微电子始终以技术为锚点,通过针对性解决方案为合作
    的头像 发表于 10-21 16:24 1152次阅读

    微电子荣获双碳节能领军企业奖

    在备受瞩目的 elexcon2025 第 22 届深圳国际电子展开幕之际,微电子凭借其在双碳节能领域的卓越表现,荣获“双碳节能领军企业”奖。这一荣誉不仅是对
    的头像 发表于 08-26 18:18 1550次阅读

    微电子邀您相约2025国际AI+IoT生态发展大会

    7月24日,深圳「2025(第六届)国际AI+IoT生态发展大会」上,微电子的主题演讲《 Matter + EdgeAI:赋能智能家
    的头像 发表于 07-21 10:11 1542次阅读
    <b class='flag-5'>泰</b><b class='flag-5'>凌</b><b class='flag-5'>微电子</b>邀您相约2025国际AI+IoT生态发展大会

    KiCad 中的自定义规则(KiCon 演讲)

    设计规则 展开,重点探讨了 那些复杂却强大的特性。 由于这些规则本质上是基于文本表达的,需要用户细致入微的理解。演讲的 核心目标 是引导用户有效实施这些规则,从而 规避布线问题、提升制造良率,并优化设计流程 。 讨论 始于对自定义
    的头像 发表于 06-16 11:17 2528次阅读
    KiCad 中的<b class='flag-5'>自定义</b>规则(KiCon 演讲)

    智能照明互联新突破:微电子邀您共探 Matter 技术前沿

      微电子将于2025年6月13日参加在广州举办的Matter开发者大会。此次参会,微电子
    发表于 06-05 15:06 2695次阅读
    智能照明互联新突破:<b class='flag-5'>泰</b><b class='flag-5'>凌</b><b class='flag-5'>微电子</b>邀您共探 Matter <b class='flag-5'>技术</b>前沿

    HarmonyOS应用自定义键盘解决方案

    自定义键盘是一种替换系统默认键盘的解决方案,可实现键盘个性化交互。允许用户结合业务需求与操作习惯,对按键布局进行可视化重构、设置多功能组合键位,使输入更加便捷和舒适。在安全防护层面,自定义键盘可以
    的头像 发表于 06-05 14:19 2588次阅读