2773|12

1403

帖子

1

TA的资源

纯净的硅(中级)

楼主
 

【KW41Z设计大赛】 基于MCUXpresso工程 分析一下BLE项目结构 [复制链接]

 
大赛日程已过一大半, 进度好像扯到脖子了,承蒙 柠檬哥 亲自电话点醒, 觉得再不法帖就该....
好了,废话不多说, 如果你也跟我一样, 打开一个例程, 却不知道从何看起的话, 你并不孤单!

今天我们就来基于 Freertos版 BLE Beacon项目简单的分析一下吧.

项目导入之后,就是这个样子的啦. ble 上层的代码都放在了source目录下,那么我们应该从何看起了?这里我简单的画了一下结构组成


  • cmsis属于arm规定的一些东西,
  • 然后就是驱动层,提供外设驱动,这里我参考nxp官方的文档,把rtos放在了这层,因为它同driver一起为上层服务。
  • 然后再上层是Framework层,这层比较有意思,他对OS和Driver都做了一层封装,而且很有意思,后面详细说明。这里,bsp也为它提供服务。也许应该将bsp放在下面?
  • 接下来就是 BLE协议栈,这部分基本都是通过 静态lib库提供.a文件,并不开源。
  • 最后就是我们需要编写的应用代码了,包括比如数据采集,ble协议相关实现等。




接下来通过代码走向再具体一下:
先从Framework开始吧,因为main函数在这里面哦

这一层抽象了很多东西,基于driver封装的一些功能,方便使用。LED提供了开关、闪烁等功能。keyboard用于管理按键。osa抽象封装了os层,前面说了,由于应用代码是基于framework之上的,所以如果你更换新的os,那你应用层的代码可以不需要做什么修改。从main里面的代码可以知道,虽然整个工程使用的freertos系统,但是我们却不直接调用freertos的任务创建方法。

main函数做完hardware init之后,就直接去跑任务了,流程是这样的:main ->startup_task->main_task
这里就正式进入应用代码了,也就是项目的主任务,beacon工程的所有功能都在这里面实现。包括用户实现的BLE service & characteristc,这些代码都放在了source目录下,如下图


最后再说一下ble stack,相关的有两个部分:lib库和公开接口。

在bluetooth目录下还实现了3个service,都放在profile文件夹下,这个可以说不属于ble stack的内容,而是ble应用层,也许放在source目录下会更合适?




此内容由EEWORLD论坛网友shinykongcn原创,如需转载或用于商业用途需征得作者同意并注明出处

此帖出自NXP MCU论坛

最新回复

我来看热闹,快快告诉我怎么玩BLE我就想两块板自己搞通讯,搞不清白……   详情 回复 发表于 2017-7-2 20:37
点赞 关注
个人签名HELLO_WATER
 

回复
举报

2700

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 
不懂帮顶
此帖出自NXP MCU论坛

点评

感谢玉老深夜前来抢沙发  详情 回复 发表于 2017-6-29 10:56
 
个人签名作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵
 
 

回复

7671

帖子

2

TA的资源

五彩晶圆(高级)

板凳
 
早几天就让你把板子5块出掉,现在被追作业了吧。。。
此帖出自NXP MCU论坛

点评

快屎回来。  详情 回复 发表于 2017-6-29 10:51
逃兵憋竖划  详情 回复 发表于 2017-6-29 10:42
快屎回来  详情 回复 发表于 2017-6-29 10:05
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复

1239

帖子

68

TA的资源

纯净的硅(中级)

4
 
提示: 该帖被管理员或版主屏蔽
 
 
 

回复

3416

帖子

0

TA的资源

纯净的硅(高级)

5
 
freebsder 发表于 2017-6-29 08:53
早几天就让你把板子5块出掉,现在被追作业了吧。。。

快屎回来
此帖出自NXP MCU论坛

点评

屎拉出去了,再回来就比较难了  详情 回复 发表于 2017-6-29 10:56
 
个人签名

So TM what......?

 

 

回复

1403

帖子

1

TA的资源

纯净的硅(中级)

6
 
freebsder 发表于 2017-6-29 08:53
早几天就让你把板子5块出掉,现在被追作业了吧。。。

逃兵憋竖划
此帖出自NXP MCU论坛
 
个人签名HELLO_WATER
 
 

回复

613

帖子

2

TA的资源

纯净的硅(初级)

7
 
我出10块,你不卖,后悔了吧
此帖出自NXP MCU论坛

点评

等等,这玩意涨价起来跟房价一样,不能慌  详情 回复 发表于 2017-6-29 10:57
 
个人签名我是一头搞电子的猪,猪是一种好色的动物,猪八戒就是代表.       
 
 

回复

613

帖子

2

TA的资源

纯净的硅(初级)

8
 
freebsder 发表于 2017-6-29 08:53
早几天就让你把板子5块出掉,现在被追作业了吧。。。

快屎回来。
此帖出自NXP MCU论坛
 
个人签名我是一头搞电子的猪,猪是一种好色的动物,猪八戒就是代表.       
 
 

回复

1403

帖子

1

TA的资源

纯净的硅(中级)

9
 

感谢玉老深夜前来抢沙发
此帖出自NXP MCU论坛
 
个人签名HELLO_WATER
 
 

回复

1403

帖子

1

TA的资源

纯净的硅(中级)

10
 

屎拉出去了,再回来就比较难了
此帖出自NXP MCU论坛
 
个人签名HELLO_WATER
 
 

回复

1403

帖子

1

TA的资源

纯净的硅(中级)

11
 
long521 发表于 2017-6-29 10:47
我出10块,你不卖,后悔了吧

等等,这玩意涨价起来跟房价一样,不能慌
此帖出自NXP MCU论坛
 
个人签名HELLO_WATER
 
 

回复

7671

帖子

2

TA的资源

五彩晶圆(高级)

12
 
屎不出来,没有比我更能装的,这是多么无敌多么寂寞,没有榜样的地方就没有情趣。
此帖出自NXP MCU论坛
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复

2774

帖子

8

TA的资源

版主

13
 
我来看热闹,快快告诉我怎么玩BLE我就想两块板自己搞通讯,搞不清白……
此帖出自NXP MCU论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表