注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
huanghai381的个人空间 https://home.eeworld.com.cn/space-uid-480041.html [收藏] [复制] [分享] [RSS]
日志

CSR8670蓝牙开发笔记

热度 4已有 14414 次阅读2014-12-16 16:46 |个人分类:CSR蓝牙开发| 蓝牙, 开发

1、应用程序由许多task组成,每个task就是一个消息轮询函数。其中一个优先级最高的application task ,控制整个应用程序消息。(个人觉得整个消息机制应该类似ucos,待后续验证)。

2、消息机制。task与task之间通过message发送消息。基本结构Task t, MessageId id, Message payload(任务号、消息 ID、消息内容)。

message ID num的取值:

ƒ  1、Messages send by a task to itself start at  0x00.
ƒ  2、 System messages start at  0x8000.
ƒ  3、Messages sent by specific profile libraries to tasks have been assigned base values e.g. the connection
       library messages start at base  0x7000 and the SPP library messages start at  0x6f00. See  Appendix B. 

3、软件开发架构

    第一层:The Application Task (用户应用层)

    第二层:Profile and Support Tasks (协议和支持库)

             用以下方式初始化一个蓝牙协议task.

       

         注意:在添加蓝牙协议前connect library必须第一个初始化

    第三层 Firmware(固件层)

        用户应用程序与蓝牙底层通过connection task 接口通信。用户只需handler message from connection task 就OK了。


4、task初始化示例,以SPP为例

     1、 定义一个状态结构体

     2、声明task常量

       

   3、初始化task hanlder

      

   4、初始化task

       

发表评论 评论 (4 个评论)
回复 love2008 2015-1-26 08:00
请问,你这个ADK什么版本?好像ADK3.0以后都没sppInit这个API了
回复 huanghai381 2015-1-26 16:44
love2008: 请问,你这个ADK什么版本?好像ADK3.0以后都没sppInit这个API了
我目前使用的是ADK3.5的,这个我只是看着官方文档翻译的。
回复 哪吒要结婚 2015-3-2 10:34
您好,请问8670板子能同时连多个设备吗?
回复 gaozan 2018-1-19 13:34
第一天的笔记吧?

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章