- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * STM32W108嵌入式无线传感器网络 配套教材: 《STM32W108嵌入式无线传感器网络》 邱铁、夏锋、周玉编著. 清华大学出版社. 2014.5 Email: stm32w@ 第10章 802.15.4/ZigBee协议栈接口函数 本章内容提要: 10.1802.15.4/ZigBee协议栈 10.2STM32W108的802.15.4/ZigBee协议栈 10.3协议栈接口 10.4.3STM32W108协议栈实例解析 10.5思考与练习题 10.1 802.15.4/ZigBee协议栈 IEEE 802.15工作组于1998年成立,为了适应低功耗、低成本的无线网络需求,IEEE标准委员会在2000年正式批准并成立了802.15.4工作组,其主要职能是制定低数据率的WPAN(LR-WPAN)标准。 ZigBee协议从下到上分别为物理层(PHY)、媒体访问控制层(MAC)、传输层(TL)、网络层(NWK)、应用层(APL)等。 Zigbee协议栈完成对底层硬件及相应的协议的封装,提供相应的对外API接口,供用户调用开发,简化用户开发流程,提高用户开发效率。 10.2 STM32W108的802.15.4/ZigBee协议栈 MAC协议栈:实现基本的IEEE 802.15.4通信,在此基础上可以开发简单的WSN应用协议,如点对点网络、星型网络的组建及数据采集。 ZigBee Pro协议栈:用于较大规模、复杂WSN网络的组建及实现,如家庭的自动化、环境的监测、Mesh网的智能能源应用。 基于RF4CE协议栈:主要应用于消费类电子设备,实现无线网络遥控及通信,如机顶盒、智能家居等。 MAC库API命名规则: 前缀:MAC API函数前缀都是“ST_”,然后其后跟随着一般API名称,例如Radio、AES; 回调后缀:用户实现和MAC库内实现的回调函数的后缀都是“Callback”; ISR回调后缀:用户实现和MAC库内实现的中断服务子程序的回调函数的后缀是“IsrCallback”; ISR后缀:MAC库内实现的部分函数,由应用程序调用用于响应硬件事件的函数的后缀为“Isr”。 MAC库API分类 (1)、电源状态控制API函数,对无线电的初始化和电源状态的管理控制; (2)、信道API函数,对信道的选择和校准; (3)、电源API函数,对电源的控制; (4)、发送API函数,数据包的发送及控制; (5)、接收API函数,数据包的接收及控制; (6)、加密API函数,与硬件AES协处理器相结合,提供无线数据包加密; (7)、MAC定时器API函数,提供MAC的定时功能; (8)、其他API函数,实现对MAC的诊断和配置。 MAC子层主要功能 (1)、协调器产生并发送信标帧,其它普通设备通过协调器的信标帧与协调器保持同步; (2)、能够实现PAN网络的关联和取消关联; (3)、保证无线信道通信的安全性; (4)、支持CSMA-CA机制访问信道; (5)、提供时槽保障机制; (6)、保证不同设备的MAC层间可以进行可靠传输。 MAC帧格式 10.3 协议栈接口 1.函数ST_AesEncrypt: void ST_AesEncrypt(u8 * block) 协议栈接口 2.函数ST_AesGetKey: void ST_AesGetKey(u8 *key) 协议栈接口 3.函数ST_AesSetKey: void ST_AesSetKey(u8 *key) 协议栈接口 3.函数ST_AesSetKey: void ST_AesSetKey(u8 *key) 协议栈接口 4.函数ST_RadioAddressFilteringEnabled boolean ST_RadioAddressFilteringEnabled(void) 协议栈接口 5.函数ST_RadioAutoAckEnabled: boolean ST_RadioAutoAckEnabled(void) 协议栈接口 6.函数ST_RadioCalibrateCurrentChannel: void ST_RadioCalibrateCurrentChannel(void) 协议栈接口 7.函数ST_RadioChannelIsClear: boolean ST_RadioChannelIsClear(void) 协议栈接口 8.函数ST_RadioCheckRadio: boolean ST_RadioCheckRadio(void) 协议栈接口 9.函数ST_RadioDataPendingLongIdIsrCallback boolean ST_RadioDataPendingLongIdIsrCallback(u
文档评论(0)