发送一个HID数值的过程

该文章是基于onsemi_RSL10,如果想了解有关该板子的信息介绍,可以点击Onsemi低功耗蓝牙soc:RSL10介紹进行了解。

一.初始化

①在APP_GAPC_Handler函数中调用如下的函数,然后在里面调用Hogpd_EnableReq(conidx)函数;

 
 

②进入Hogpd_EnableReq函数,调用HOGPD_ENABLE_REQ函数(此API消息可以在与对端设备建立连接后使用,以便与对端设备建立连接恢复已知设备的BOND数据,该API会返回一个HOGPD_ENABLE_RSP)


③进入HOGPD_ENABLE_RSP:在里面调用Restart_Keystroke_Env函数,会把按键的状态设为初始化的状态,接着就等待按键的按下进入发送阶段;




二.发送过程

①按键触发回调函数:



②把按键值设为按下


③进入发送函数,判断按键值,开始发送第一个数字,并更行按键状态为KEY_REL;



④进入Hogpd_ReportUpdReq函数之后,发送HOGPD_REPORT_UPD_REQ的API,这个APl消息用于更新存储在数据库中的报告特性的值,并在启用了发送通知的情况下通知主机这个新值。



⑤HOGPD_REPORT_UPD_RSP:这个消息在接收到HOGPD_REPORT_UPD_REQ后被发送到应用程序,以通知它是否已经向主机发送了通知,或者是否引发了错误。

在发送HOGPD_REPORT_UPD_REQ这个API之后,就触发了HOGPD_REPORT_UPD_RSP这个API,然后开始执行里面的内容,判断其如果成功发送,就会触发Update_Keystroke_Env()函数,



⑥Update_Keystroke_Env()函数将key_state = KEY_UPDATE;


⑦.进入Send_Keystroke函数,并进入状态为KEY_UPDATE的行为,进去Restart_Keystroke_Env函数,将key_pushed状态设置为false,并stae设为KEY_IDLE;然后增加所发送的数组的坐标数字:act_key++;




⑧以上就完成了一次发送,然后按键事件一直在检测,下一次按下的时候,重复上面的操作;

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论