找回密码
 立即注册
查看: 32|回复: 2

HID键盘,控制状态灯,usb_out_ep1触发

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2025-08-22 09:08:59
已绑定手机

1

主题

0

回帖

17

积分

新手上路

积分
17
发表于 昨天 09:08 | 显示全部楼层 |阅读模式
在使用hid键盘例程的时候,发现经过测试,usb_out_ep1函数无法通过PC端切换numLock等状态来触发,但是经过检查,发现desc等配置无误。更换多个例程仍然有该问题。
截图202508220904527461.jpg
截图202508220908405906.jpg
回复

使用道具 举报 送花

3

主题

2031

回帖

910

积分

等待验证会员

积分
910
发表于 昨天 09:12 | 显示全部楼层
尊敬的用户:

您好!感谢您对国芯人工智能产品的关注与支持。关于您在使用HID键盘例程时遇到的“usboutep1无法通过PC端切换NumLock等状态灯”的问题,我们已收到并高度重视。以下为针对该问题的专业分析及建议。

首先,HID(Human Interface Device)协议中,状态灯(如NumLock、CapsLock、ScrollLock)通常通过HID报告中的特定字段进行控制。在标准HID设备中,这些状态信息一般通过HID报告描述符(Report Descriptor)定义,并由主机(如PC)通过控制传输(Control Transfer)发送命令来改变状态灯的状态。

在USB通信中,usboutep1通常用于接收来自主机的数据。若该端点未能正确响应主机发送的状态变更指令,则可能导致状态灯无法正常切换。

根据您的描述,已确认HID描述符配置无误,说明问题可能出现在以下方面:

1. HID报告结构不匹配  
   检查HID报告描述符是否正确定义了状态灯字段。例如,NumLock状态应位于特定的输入报告中,且需确保其位宽和位置符合HID规范。若报告结构未正确映射,即使主机发送了状态变更数据,设备也无法识别。

2. USB OUT端点处理逻辑缺失或错误  
   usboutep1需要具备接收主机发送的HID控制命令的能力。若未正确实现该端点的数据处理逻辑,或未将接收到的数据映射到对应的HID报告字段,则状态变更指令将被忽略。

3. HID报告更新机制未触发  
   在HID设备中,状态灯的变化通常通过发送一个完整的HID报告来实现。若未在接收到状态变更后主动发送更新后的报告,状态灯可能不会发生变化。请检查是否在处理完主机指令后调用了usbhidsendreport()等相关函数。

4. 固件版本兼容性问题  
   若您使用的是第三方例程或较旧版本的固件,可能存在兼容性或功能限制。建议参考官方提供的HID键盘示例代码,确保使用最新版SDK及驱动。

5. PC端驱动或系统设置问题  
   有时,PC端的驱动程序或操作系统设置可能影响HID设备的响应。建议尝试在其他PC上测试,或更新相关驱动程序,以排除外部因素干扰。

综上所述,建议您按照以下步骤进行排查与修复:
核对HID报告描述符是否完整且符合规范;
确保usboutep1能够正确接收并解析主机发送的HID控制指令;
验证是否在接收到状态变更后,及时更新并发送HID报告;
使用官方推荐的例程进行对比测试,确认是否存在代码逻辑差异;
如仍无法解决,建议提供相关代码片段及HID描述符内容,以便进一步分析。

如需进一步协助,欢迎联系国芯人工智能技术支持团队,我们将竭诚为您服务。

祝工作顺利!

国芯人工智能技术团队  
2025年4月

[本文内容由国芯人工智能辅助生成,仅供参考]
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:276
  • 最近打卡:2025-08-23 14:05:57
已绑定手机

80

主题

2983

回帖

6363

积分

荣誉版主

无情的代码机器

积分
6363
发表于 昨天 09:20 | 显示全部楼层

都测试了哪些例程?试下擎天柱例程19,这个测过的

看下这个测试视频:


https://www.stcaimcu.com/forum.p ... 2839&pid=131887
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-8-23 23:59 , Processed in 0.120288 second(s), 65 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表