[MCU] 【沁恒CH582】7 求助沁恒---控制USB键盘指示灯

tagetage   2022-4-9 17:04 楼主

CH582开发板上有一个USB接口,可以接键盘鼠标等外设,我想用CH582控制USB键盘的LED指示灯,在实践中遇到问题,希望沁恒官方人员帮忙。
基础知识:
一般的键盘有三个指示灯,分别是Num Lock指示灯、Caps lock指示灯、scroll lock指示灯。
Num Lock指示灯-----点击小键盘左上角的Num Lock键即可开启,开启后可以输入小键盘上的数字。
Caps lock指示灯-----点击Caps Lock键可以开启该指示灯,该键的作用是大小写转换。
scroll lock指示灯-----点击键盘上的ScrollLock键即可开启该指示灯,它是滚动锁定键。

键值:
Num Lock-----83---0X53
Caps lock-----57---0X39
scroll lock-----71---0X47
Locking Caps Lock-----130---0X82
Locking Num Lock-----131---0X83
Locking Scroll Lock-----132---0X84

遇到的问题:
1,我使用官方的例程HostU2Enum可以正确打印键值,按一下Num Lock键,Num Lock指示灯可以点亮,但是再按一下就不熄灭,程序名字是SETorOFFNumLock,应该是可以设定Num Lock灯的亮和灭,但我看了好半天也不知道在哪里修改。
2,我还需要控制Caps Lock和Scroll Lock指示灯的亮灭,其中OUT的数据在哪里修改,我也没有找到。
3,OUT数据是下面程序中tmp[] = {0x21, 0x09, 0x00, 0x02, 0x00, 0x00, 0x01, 0x00};倒数第二个字节的0X01吗?

CH58x_usb2hostClass.c中/*********************************************************************
 * @fn      U2SETorOFFNumLock
 *
 * @brief   NumLock的点灯判断
 *
 * @param   buf     - 点灯键值
 *
 * @return  错误码
 */
uint8_t U2SETorOFFNumLock(uint8_t *buf)
{
    uint8_t tmp[] = {0x21, 0x09, 0x00, 0x02, 0x00, 0x00, 0x01, 0x00};
    uint8_t len, s;
    if((buf[2] == 0x53) & (buf[0] | buf[1] | buf[3] | buf[4] | buf[5] | buf[6] | buf[7] == 0))
    {
        for(s = 0; s != sizeof(tmp); s++)
        {
            ((uint8_t *)pU2SetupReq) = tmp;
        }
        s = U2HostCtrlTransfer(U2Com_Buffer, &len); // 执行控制传输
        if(s != ERR_SUCCESS)
        {
            return (s);
        }
    }
    return (ERR_SUCCESS);
}

回复评论 (6)

我贴的程序后面怎么有横线?????

点赞  2022-4-9 17:07
引用: tagetage 发表于 2022-4-9 17:07 我贴的程序后面怎么有横线?????

别急 我问问技术:)

加油!在电子行业默默贡献自己的力量!:)
点赞  2022-4-9 17:13

4楼 nmg 

这个问题是不是还没解决?

点赞  2022-4-27 17:44
引用: nmg 发表于 2022-4-27 17:44 这个问题是不是还没解决?

前2天已经将问题反馈给soso,soso和技术已经有沟通并正在处理,具体情况你单聊soso。

点赞  2022-4-27 20:22

6楼 nmg 

引用: tagetage 发表于 2022-4-27 20:22 前2天已经将问题反馈给soso,soso和技术已经有沟通并正在处理,具体情况你单聊soso。

说的不是一件事情,这个帖子不是求助沁恒吗,问题我看沁恒还没回复,想问你是不是解决了,需要再找沁恒帮忙看看吧

点赞  2022-4-28 10:07
引用: nmg 发表于 2022-4-28 10:07 说的不是一件事情,这个帖子不是求助沁恒吗,问题我看沁恒还没回复,想问你是不是解决了,需要再找沁恒帮 ...

我求助的问题还没有解决,沁恒作为厂家不着急回复,我就更一点也不急了。

点赞  2022-4-28 10:18
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复