杰里695N系列(soundbox)之 2.1-APP消息管理

2021-12-07 13:14:54 浏览数 (1)

1.系统消息管理

系统事件分为 系统按键事件 、 系统设备事件 以及 系统蓝牙事件 ,为了更好管理,还把这

三大事件分为 模式里的系统事件类 和每个模式都有的 公共系统事件类 。流程图如下:

特别说明:

①系统产生事件后,会 先到模式里的系统事件查询 是否有匹配的事件,如有,则执行相

应的函数并且 不再执行公共系统事件类 ,然后结束事件,如无,则到 公共系统事件查询

是否有匹配的事件,如有,则执行相应的函数,然后结束事件,如无,则视为 事件作废 ,

结束事件 。

②蓝牙模式的 设备事件 如果不做处理,那么会把事件丢到公共事件中的 公共蓝牙事件 去

处理,而不是丢到公共事件的 公共设备事件 去处理。

以下为系统事件的管理机制

2. 提供的 APP 消息处理函数说明

2.1 提供的消息函数接口(app_msg.h)

代码语言:javascript复制
//app自定义消息发送接口
int app_task_put_usr_msg(int msg, int arg_num, ...);

//app消息获取接口(block参数为0表示内部pend,1直接返回)
void app_task_get_msg(int *msg, int msg_size, int block);

//app按键消息发送接口
int app_task_put_key_msg(int msg, int value);

//app清理按键消息接口
void app_task_clear_key_msg();

2.2 消息处理机制

获取消息

app按键处理消息(非物理按键触发)

3.3 app自定义消息发送接口

消息定义(app_task.h)

消息处理

以蓝牙模式为例(如果消息其他模式都需要处理,就要在需要处理的模式都添加)。

0 人点赞