找回密码
 立即注册
查看: 294|回复: 4

USB键盘发回的LED有8个字节程序该如何处理

[复制链接]

1

主题

3

回帖

17

积分

等待验证会员

积分
17
发表于 2024-8-30 15:23:22 | 显示全部楼层 |阅读模式
这个是原始的USB键盘的程序,是对的。可以驱动NUM灯,也只有一个字节,我现在通过驱动下发了8个字节的数据,但是始终有问题。
/*原来STC的例子
if (usb_bulk_intr_out(UsbBuffer, 1) == 1)
    {
        P4M0 &= ~0x01;
        P4M1 &= ~0x01;
        P6M0 &= ~0xe0;
        P6M1 &= ~0xe0;
        P40 = 0;     
        led = UsbBuffer[0];
        LED_NUM = !(led & 0x01);
        LED_CAPS = !(led & 0x02);
        LED_SCROLL = !(led & 0x04);
    }   
*/
下面是我改的,因为收不到数据,把i 通过LED灯显示出来了。

  i = usb_bulk_intr_out(UsbBuffer, 1);

    Led[0]= UsbBuffer[0];
    这里i只有1;而且第一个数据UsbBuffer[0]也不对

请问 usb_bulk_intr_out(UsbBuffer, 1) 这个函数有说明吗,接受8个字节和1个自己都是一样的写法吗



回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:456
  • 最近打卡:2025-05-02 08:26:53
已绑定手机

27

主题

341

回帖

1691

积分

金牌会员

机长

积分
1691
发表于 2024-8-30 18:49:52 | 显示全部楼层
首先得改描述符,表明你能接收8个字节的数据才行……
业余撸代码,专业开飞机
回复 支持 反对

使用道具 举报 送花

1

主题

3

回帖

17

积分

等待验证会员

积分
17
发表于 2024-8-31 11:36:47 | 显示全部楼层
请问描述符是哪一个?现在是PC发过来8个字节,STC单片机处理成一个个的字节接收了。
回复 支持 反对

使用道具 举报 送花

1

主题

3

回帖

17

积分

等待验证会员

积分
17
发表于 2024-8-31 16:50:15 | 显示全部楼层
0x05,0x08,              //  USAGE_PAGE(LEDs);
    0x19,0x01,              //  USAGE_MINIMUM(1);
    0x29,0x03,              //  USAGE_MAXIMUM(3);
    0x15,0x00,              //  LOGICAL_MINIMUM(0);
    0x25,0x01,              //  LOGICAL_MAXIMUM(1);
    0x75,0x01,              //  REPORT_SIZE(1);
    0x95,0x03,              //  REPORT_COUNT(3);
    0x91,0x02,              //  OUTPUT(Data,Variable,Absolute);
   
    0x75,0x05,              //  REPORT_SIZE(5);
    0x95,0x01,              //  REPORT_COUNT(1);
    0x91,0x01,              //  OUTPUT(Constant);
   
楼上的高人能不能帮我看看这个改如如何修改才能收到8个字节。我试过很多都不行
回复 支持 反对

使用道具 举报 送花

1

主题

3

回帖

17

积分

等待验证会员

积分
17
发表于 2024-8-31 17:56:40 | 显示全部楼层
搞定了,不是改这里,需要改前面的配置
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 09:02 , Processed in 0.118372 second(s), 69 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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