杰里695N系列(soundbox)之 1.1 SDK快速入门(2)

简介: 杰里695N系列(soundbox)之 1.1 SDK快速入门(2)

一、任务流程详细说明(power on为例)


1.1 app模式设置

image.png

1.2 power on模式进入

image.png


1.3 切换任务消息

image.png


1.4 power on 模式退出

image.png


二、APP模式管理接口


路径:app_task_switch.c   \AC695N_soundbox_sdk_release_2.0.0\SDK\apps\soundbox\task_manager

image.png


2.1 模式退出检查函数

//*----------------------------------------------------------------------------*/
/**@brief    模式退出检查
   @param    curr_task:当前模式
   @return   TRUE可以退出, FALSE不可以退出
   @note
*/
/*----------------------------------------------------------------------------*/
static int app_task_switch_exit_check(u8 curr_task)


2.2 模式进入检查函数

//*----------------------------------------------------------------------------*/
/**@brief    模式进入检查
   @param    app_task:目标模式
   @return   TRUE可以进入, FALSE不可以进入
   @note     例如一些需要设备在线的任务(music/record/linein等),
                如果设备在线可以进入, 没有设备在线不进入可以在这里处理
*/
/*----------------------------------------------------------------------------*/
static int app_task_switch_check(u8 app_task)


2.3 切换到上一个模式函数

void app_task_switch_prev()

2.4 切换到下一个模式函数

void app_task_switch_next()

2.5 切换到指定模式函数

int app_task_switch_to(u8 app_task)

2.6 调回到原来模式函数

int app_task_switch_back()

2.7  模式切换退出检测函数

u8 app_task_exitting()

2.8 获取当前模式函数

u8 app_task_exitting()

2.9 通过指定id检查是否是当前模式函数

u8 app_check_curr_task(u8 app)


三、如何增加APP模式


以music为例。


第一步:在app_task.h中增加模式id


image.png


第二步:将模式id加入到app_task_switch.c的模式配置表app_task_list中


image.png


第三步:在task_key.c中添加模式按键转换表


第四步:在task_manager中添加对应的模式目录(对应头文件)


第五步:实现模式相关接口


1.实现以下基础必要接口

void app_music_task() 
int music_app_check(void) 
static int music_sys_event_handler(struct sys_event *event) 
static int music_key_event_opr(struct sys_event *event)


2. 模式主循环内完成基础操作(app_music_task)


  • 获取消息
  • 响应消息及事件
  • 响应模式内部消息及事件
  • 响应公共消息及事件

image.png


3.在 app_main.c 中调用对应的模式主循环接口(app_music_task)

image.png


4.app_check接口实现


app_check 其实是在切换模式的时候,是否满足条件进入该模式, music 模式进入条件是判 断是否有可以播放的设备在线,故接口实现如下

image.png

5.在 app_task_switch_check 调用 app_check

image.png

目录
相关文章
|
3月前
|
开发工具 vr&ar 图形学
Pico Neo 3教程☀️ 一、SDK的下载与快速入门
Pico Neo 3教程☀️ 一、SDK的下载与快速入门
|
6月前
|
Web App开发 前端开发 JavaScript
网页浏览和编辑DWG快速入门的方法(WEB CAD SDK)
MxDraw云图在线CAD解决方案,包括MxDraw、MxCAD开发包、图纸转换程序和后端服务。支持多种平台和CPU架构,推荐使用最新版Chrome或Edge浏览器。提供AutoCAD各版本dwg格式支持,具备三维和二维编辑功能。提供入门开发指南和功能丰富的示例。用户可下载开发包进行功能演示,包括在线预览和编辑CAD图纸。
网页浏览和编辑DWG快速入门的方法(WEB CAD SDK)
|
6月前
|
人工智能 缓存 前端开发
下一代 AI 开发工具Vercel AI SDK 快速入门
下一代 AI 开发工具Vercel AI SDK 快速入门
344 0
|
开发工具
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(二)
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(二)
377 0
|
前端开发 开发工具 数据库
微信支付 & 退款 - 快速入门(第三方SDK)(二)
微信支付 & 退款 - 快速入门(第三方SDK)(二)
334 0
微信支付 & 退款 - 快速入门(第三方SDK)(二)
|
开发工具
微信支付 & 退款 - 快速入门(第三方SDK)(一)
微信支付 & 退款 - 快速入门(第三方SDK)(一)
1419 0
微信支付 & 退款 - 快速入门(第三方SDK)(一)
|
开发工具
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(一)
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(一)
776 0
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(一)
|
开发工具
微信模板消息 - 快速入门(第三方SDK)(二)
微信模板消息 - 快速入门(第三方SDK)(二)
355 0
|
开发工具
微信模板消息 - 快速入门(第三方SDK)(一)
微信模板消息 - 快速入门(第三方SDK)(一)
429 0
|
3月前
|
JavaScript 前端开发 Java
[Android][Framework]系统jar包,sdk的制作及引用
[Android][Framework]系统jar包,sdk的制作及引用
82 0