一、前言
本文用于学习交流,如有不完整或者错误之处,请留言指出。如果在阅读过程中有不理解的地方可能是我没写清楚。也可能是其他原因。本文假定你的具备但不限于以下相关知识:
1、MCU的基础知识。
2、操作系统的概念。
3、知道OSAL的任务调度是怎样实现的。
二、关于OSAL
OSAL中文直译过来叫”操作系统抽象层”,由此可以看出它并不是一个真正意思上的操作系统。它是TI公司开发用于构建蓝牙和ZigBee协议栈和基于其上的应用框架、应用。主要的任务调度是基于一个死循环轮询任务数组或基于定时器查询,不支持任务优先级抢占,因此它实时性较差。具体更多信息www.ti.com/ble-stack
三、按键流程剖析
本部分内容基于TI CC2540系列蓝牙芯片之上运行OSAL进行按键流程分析。如下图所示是OSAL中关于按键的流程时序图。
图1:完整
图2:上部