键盘例程中,修改描述符 后重启后CCC值读出错误

使用键盘例程,自己添加了CONSUMER的描述符和全键无冲的描述符,测试可以运行,但是在第二次上电或者重启后无法输出CONSUMER按键和全键无冲按键,排查发现是在hidDevSendReport函数的一个判断处获取ccc值错误,第一次把固件刷入的时候可以读取到value为1,第二次上电后就是0了,导致无法输出,把这个判断注释掉后可以正常输出,但是不理解具体原因。

Snipaste_2023-10-14_03-36-05.png

找到问题了,每次发送前要先设置,上图的注释地方去掉,并且加入要发送的别的gattCharCfg_t 的写入。

      extern gattCharCfg_t hidReportkeyConsumeInClientCharCfg[GATT_MAX_NUM_CONN];

      GATTServApp_WriteCharCfg(gapConnHandle, hidReportkeyConsumeInClientCharCfg, 0x0001);


那么有没有可以初始化就设置好的方法呀


只有登录才能回复,可以选择微信账号登录