osal_start_timerEx(Lock_TaskID,SBP_START_DEVICE_EVT,SBP_PERIODIC_EVT_PERIOD)与osal_set_event(Music_TaskID,event)的区别是osal_start_timerEx周期性的一直推送事件周期时间由SBP_PERIODIC_EVT_PERIOD决定,而osal_set_event是只推送一次。osal_start_timerEx开始周期性推送以后由osal_stop_timerEx(Lock_TaskID,SBP_START_DEVICE_EVT);停止周期性推送事件。

应用例子:

if ( events & SBP_START_DEVICE_EVT )
{
/*检查是否从消息队列中收到数据*/
if(1==lock_task()) //判断是否位空闲任务
{
osal_stop_timerEx(Lock_TaskID,SBP_START_DEVICE_EVT);
}
else
{
osal_start_timerEx(Lock_TaskID,SBP_START_DEVICE_EVT,SBP_PERIODIC_EVT_PERIOD);
}
return ( events ^ SBP_START_DEVICE_EVT );
}

转载于:https://www.cnblogs.com/yygsj/p/5468026.html

osal_start_timerEx(Lock_TaskID,SBP_START_DEVICE_EVT,SBP_PERIODIC_EVT_PERIOD)的理解相关推荐

  1. CC2540 OSAL 学习其中原理,以及 给任务 添加 一个事件(定时发送串口消息)

    参考学习大神博客: http://blog.csdn.net/feilusia/article/details/51083953 : http://blog.csdn.net/xiaoleiacmer ...

  2. Zigbee协议栈中OSAL的运行机理

    OSAL的运行机理 事件表 函数表 使用查表法来取得事件所对应函数 taskCnt  任务总数 taskEvents 指向事件表首地址的指针 taskArr 事件处理函数数组,每一项都是一个函数指针 ...

  3. CC2540/CC2541/CC254x之OSAL操作系统抽象层

    测试环境 协议栈版本:BLE-CC254x-1.4.0 开发环境IAR版本:IAR 8.20 硬件设备:CC2540/CC2541开发板 示例测试Demo工程:simpleBLEPeripheral工 ...

  4. ble学习笔记九----------ble协议栈之OSAL的运行机理

    OSAL的运行机理 事件表 函数表 使用查表法来取得事件所对应函数 taskCnt  任务总数 taskEvents 指向事件表首地址的指针 taskArr 事件处理函数数组,每一项都是一个函数指针 ...

  5. CC2541 BLE源码阅读知识积累之OSAL小结

    最近一段时间由于项目需要,便开始在阅读TI的cc2541的BLE Stack源码,对于蓝牙4.0这块知识基本是小白,所以几乎从0开始.在没接触蓝牙之前,就知道该部分的内容较为复杂(涉及到通信等协议栈) ...

  6. 蓝牙BLEBLEcc2540开启广播的过程

    转自大香瓜的博客 一.简介 本篇介绍在应用层如何开启广播,且解析协议栈在此操作后做了什么. 二.开启广播 在应用层开启广播功能其实非常简单,只要把TRUE传给GAPRole_SetParameter函 ...

  7. TI-BLE 协议栈(CC2541)peripheral的执行流程分析

      BLE 技术是 Bluetooth SIG 规定的一套通信协议, 在协议变成具体的代码之前, 都只存在文档中, TI. Nordic. CSR 等厂商, 根据 SIG 发布的 BLE 技术协议, ...

  8. BLE协议栈学习2——OSAL

    OSAL简介 BLE 协议栈包含了 BLE 协议所规定的基本功能,这些功能是以函数的形式实现的,为了便于管理 这些函数集,BLE 协议栈内加入了实时操作系统(并非真正意义上的操作系统),称为 OSAL ...

  9. BLE:CC2540学习笔记

    文章转载参考:http://blog.sina.com.cn/s/articlelist_5617273496_0_1.html BLE:CC2540与CC2541相关寄存器一览 一.关于普通IO操作 ...

最新文章

  1. SQL Server 2008(三) T-SQL(常用全局变量)
  2. 如何卸载安装有问题的devexpress组件?
  3. 几种简单的滤波方式(未完)
  4. 为什么`malloc`出来的内存也能当成对象正常使用
  5. JavaScript数据结构与算法——栈详解
  6. linux知识(一) 程序、进程与线程
  7. 现实中简单配置路由器
  8. 大数据时代激活数据管理新思路
  9. Linux shell配置环境变量
  10. 常规投放vs. static_cast与dynamic_cast [重复]
  11. python3 urllib模块
  12. Vue指令之v-show
  13. oracle rman optimization,关于RMAN中的优化(Optimization)
  14. 视频分析服务器作用,如何选择合适的视频分析解决方案?
  15. JAVA项目中遇到URLEncoder URLDecoder编码解码问题
  16. Unity3D资源加载Resources
  17. java 服务器程序部署环境搭建
  18. windows QT+VS201环境安装
  19. 牛客网华为机试在线训练JavaScript版解答
  20. 关于集成网卡怎么设置pxe网卡启动

热门文章

  1. 【Codeforces - 378C】Maze(dfs,思维)
  2. 第九大陆服务器未找到文件,第九大陆服务器优化规则说明 拍卖行和寄售功能关闭公告...
  3. 腾讯 tars java_腾讯TARS开源团队郑苏波:腾讯微服务开发框架的源码剖析
  4. 尼康d7200拍照_为什么尼康和佳能的全画幅旗舰单反却只有2000多万像素?
  5. linux新建samba账户,ubuntu上创建账户和samba用户
  6. mysql命令参数_MySQL命令行参数完整版
  7. 在Spring + Hibernate中使用二级缓存配置步骤
  8. AWS的VPC使用经验(二)
  9. 机器学习问题总结(05)
  10. 大数据学习(08)--Hadoop中的数据仓库Hive