杰里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

目录
相关文章
|
10月前
|
Web App开发 前端开发 JavaScript
网页浏览和编辑DWG快速入门的方法(WEB CAD SDK)
MxDraw云图在线CAD解决方案,包括MxDraw、MxCAD开发包、图纸转换程序和后端服务。支持多种平台和CPU架构,推荐使用最新版Chrome或Edge浏览器。提供AutoCAD各版本dwg格式支持,具备三维和二维编辑功能。提供入门开发指南和功能丰富的示例。用户可下载开发包进行功能演示,包括在线预览和编辑CAD图纸。
网页浏览和编辑DWG快速入门的方法(WEB CAD SDK)
|
7月前
|
开发工具 vr&ar 图形学
Pico Neo 3教程☀️ 一、SDK的下载与快速入门
Pico Neo 3教程☀️ 一、SDK的下载与快速入门
|
10月前
|
人工智能 缓存 前端开发
下一代 AI 开发工具Vercel AI SDK 快速入门
下一代 AI 开发工具Vercel AI SDK 快速入门
486 0
|
开发工具
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(二)
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(二)
388 0
|
前端开发 开发工具 数据库
微信支付 & 退款 - 快速入门(第三方SDK)(二)
微信支付 & 退款 - 快速入门(第三方SDK)(二)
364 0
微信支付 & 退款 - 快速入门(第三方SDK)(二)
|
开发工具
微信支付 & 退款 - 快速入门(第三方SDK)(一)
微信支付 & 退款 - 快速入门(第三方SDK)(一)
1503 0
微信支付 & 退款 - 快速入门(第三方SDK)(一)
|
开发工具
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(一)
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(一)
820 0
微信授权 & 扫码登录 - 快速入门(手动 & 第三方SDK)(一)
|
开发工具
微信模板消息 - 快速入门(第三方SDK)(二)
微信模板消息 - 快速入门(第三方SDK)(二)
376 0
|
开发工具
微信模板消息 - 快速入门(第三方SDK)(一)
微信模板消息 - 快速入门(第三方SDK)(一)
446 0
|
1月前
|
前端开发 Java Shell
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
176 20
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex

热门文章

最新文章

  • 1
    【Azure Storage Account】利用App Service作为反向代理, 并使用.NET Storage Account SDK实现上传/下载操作
    21
  • 2
    【04】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-正确安装鸿蒙SDK-结构目录介绍-路由介绍-帧动画(ohos.animator)书写介绍-能够正常使用依赖库等-ArkUI基础组件介绍-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
    71
  • 3
    CompreFace:Star6.1k,Github上火爆的轻量化且强大的人脸识别库,api,sdk都支持
    50
  • 4
    【Azure Developer】编写Python SDK代码实现从China Azure中VM Disk中创建磁盘快照Snapshot
    28
  • 5
    【02】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-项目开发实战-准备工具安装-编译器DevEco Studio安装-arkts编程语言认识-编译器devco-鸿蒙SDK安装-模拟器环境调试-hyper虚拟化开启-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
    49
  • 6
    【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    174
  • 7
    【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    176
  • 8
    【01】完整开发即构美颜sdk的uni官方uts插件—让所有开发者可以直接使用即构美颜sdk的能力-优雅草卓伊凡
    80
  • 9
    AutoTalk第十三期-应知必会的自动化工具-阿里云SDK支持策略(一)
    63
  • 10
    自动化AutoTalk第十期:应知必会的自动化工具-阿里云SDK
    63