社区导航

 

搜索
查看: 173|回复: 0

[资料分享] CC2640软件架构

[复制链接]

306

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2020-3-20 19:31 | 显示全部楼层 |阅读模式

       在最高层级,CC2640蓝牙软件环境由三部分组成:一个实时操作系统(RTOS),一个应用映射,一个栈映射。TI-RTOS是一个实时的,抢占式的,多线程的操作系统,可以利用软件保证任务同步。应用和蓝牙协议栈作为单独的任务存在RTOS中,但是蓝牙协议栈具有更高的优先级。消息机制架构,直接调用被用来使用为了确保应用和协议栈之间线程安全同步。具体架构如下所示:

image.png

1.       协议栈映射,包含内容,上文已提到过。

2.       应用映射,包含相关配置文件,应用代码,驱动,直接调用模型。

标准工程任务层次

所有的工程最少包含三个RTOS任务。按照优先级列出,其中优先级数目越大,优先级越高。像simpleBLEPeripheral工程,他们的任务是:

1:蓝牙协议栈任务

2:GapRole任务

3:应用任务(simpleBLEPeripheral)

int main()

{

  PIN_init(BoardGpioInitTable);

#ifndef POWER_SAVING

    /* Set constraints for Standby, powerdown and idle mode */

    Power_setConstraint(Power_SB_DISALLOW);

    Power_setConstraint(Power_IDLE_PD_DISALLOW);

#endif // POWER_SAVING

    /* Initialize ICall module */

    ICall_init();

    /* Start tasks of external images - Priority 5 */

    ICall_createRemoteTasks();

    /* Kick off profile - Priority 3 */

GAPRole_createTask();

/* Kick off profile - Priority 1*/

    //这个是SimpleBLEPeripheral.c中的函数,建立SimpleBLEPeripheral任务所有的任务均//在此处建立

SimpleBLEPeripheral_createTask();

BIOS_start();       //操作系统开始跑

return 0;

}

本主函数就是一个典型代表。

此帖出自无线连接论坛


回复

使用道具 举报

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

关闭

站长推荐上一条 1/4 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2020-4-6 06:53 , Processed in 0.088000 second(s), 19 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表