当前位置: 首页 > news >正文

行业网站设计公司搜索营销

行业网站设计公司,搜索营销,wordpress在线监测,用js做动态网站1. Basic RF 概述 Basic RF 是 TI 提供的一套简化版的无线通信协议栈,旨在帮助开发者快速搭建无线通信系统。它基于 IEEE 802.15.4 标准的数据包收发,但只用于演示无线设备数据传输的基本方法,不包含完整功能的协议。Basic RF 的功能限制包括…
1. Basic RF 概述

Basic RF 是 TI 提供的一套简化版的无线通信协议栈,旨在帮助开发者快速搭建无线通信系统。它基于 IEEE 802.15.4 标准的数据包收发,但只用于演示无线设备数据传输的基本方法,不包含完整功能的协议。Basic RF 的功能限制包括不提供多跳、设备扫描、Beacon,以及不同种类的网络设备(如协调器、路由器等)3。

2. Basic RF 工作原理
  • 启动:创建一个 basicRfCfg 数据结构并初始化其成员,然后调用 basicRfInit() 函数进行协议初始化。
  • 数据发送:创建一个 buffer,将 payload 放入其中,然后调用 basicRfSendPacket() 函数发送。
  • 数据接收:上层通过 basicRfPacketIsReady() 函数检查是否收到新的数据包,然后调用 basicRfReceive() 函数将收到的数据复制到 buffer 中。
  • 数据帧结构:数据包结构包括前导码(Preambles)、帧开始定界符(SFD)、长度、帧控制字段、序列号、PAN ID、目的地址、源地址、有效载荷和帧校验序列(Frame check sequence)3。
3. Basic RF 的限制
  • Basic RF 不支持多跳和设备扫描。
  • 所有节点同级,只实现点对点传输。
  • 传输时仅等待信道空闲,不执行 802.15.4 CSMA-CA 要求的两次 CCA 检测。
  • 不重传数据。

4.Basic RF 操作环节

Basic  RF 操作依次包括启动,发送,接收三个环节

4-1启动

启动环节包括

  1. 初始化开发板的硬件
  2. 设置无线网络ID
  3. 设置无线通信的通信信道号
  4. 设置无线通信的接收和发送 模块地址
  5. 若有必要,设置无线通信的网络加密等级
定义位置

在 CC2530 Basic RF 的配置中,网络的结构体通常用于存储和初始化网络相关的参数。

找到图中的文件,可以看到其网络配置的结构体

其每个定义的意思和作用

typedef struct {uint16 myAddr;          //本机地址  范围0x0000~0xffff ,作为识别本模块的地址uint16 panId;            //网络ID   范围 0x0000~0xffff , 接收和发送模块此参数必须一致uint8 channel;            //通信信道号 范围 11~26 , 接收和发送模块此参数必须一致uint8 ackRequest;        //应答信号#ifdef SECURITY_CCM        //是否加密,预定义时取消了加密uint8* securityKey;        //密钥  两方必须一致uint8* securityNonce; //IV/Nonce值  //各一个随机数即可 (它会发送给对方在配合密钥即可解密)#endif
} basicRfCfg_t;
初始文件实现的位置

在main函数中可以看到如下的几个定义它就是其上方的定义值

// Config basicRFbasicRfConfig.panId = PAN_ID;               //#define PAN_ID                0x2007basicRfConfig.channel = RF_CHANNEL;         //#define RF_CHANNEL                25      // 2.4 GHz RF channelbasicRfConfig.ackRequest = TRUE;            //#define TRUE 1
硬件初始化

在主函数中可以看到  ( halBoardInit(); )函数它是 对硬件IO的初始化  位置在  hal_board.c 文件中

发送函数(按键函数来解释其发送过程)

函数

static void appSwitch()        开关函数
{pTxData[0] = LIGHT_TOGGLE_CMD;    //要发送的数据basicRfConfig.myAddr = SWITCH_ADDR;    //本机地址if(basicRfInit(&basicRfConfig)==FAILED) {    //初始化RFHAL_ASSERT(FALSE);    //设置断言}// Keep Receiver off when not needed to save powerbasicRfReceiveOff();    //关闭接收模式// Main loopwhile (TRUE) {    //TRUE = 真if(halButtonPushed()==HAL_BUTTON_1){    //调用按键函数 判断是否按下basicRfSendPacket(LIGHT_ADDR, pTxData, APP_PAYLOAD_LENGTH);    //调用发送函数// Put MCU to sleep. It will wake up on joystick interrupthalIntOff();    //关闭中断halMcuSetLowPowerMode(HAL_MCU_LPM_3); // Will turn on global  //打开全局// interrupt enablehalIntOn();    //开启中断}}
}

接收函数(LED灯函数来解释其接收过程)
static void appLight()
{// Initialize BasicRFbasicRfConfig.myAddr = LIGHT_ADDR;    //本机地址if(basicRfInit(&basicRfConfig)==FAILED) {    初始化方法与发送环节一样HAL_ASSERT(FALSE);}basicRfReceiveOn();    //开启接收// Main loopwhile (TRUE) {    //一直循环while(!basicRfPacketIsReady());    //判断是否有数据if(basicRfReceive(pRxData, APP_PAYLOAD_LENGTH, NULL)>0) {//检查数据是否完整if(pRxData[0] == LIGHT_TOGGLE_CMD) {//处理数据halLedToggle(1);}}}
}

http://www.hengruixuexiao.com/news/42904.html

相关文章:

  • 山东省工程建设交易信息网站友情链接系统
  • 网站开发和程序开发的却别百度推广培训班
  • 做微信平台网站需要多少钱网站制作流程图
  • 一级a做爰免费网站下载百度2023最新版安装
  • dede手机wap网站模板nba最新交易新闻
  • 鸭梨网站建设网站站长seo推广
  • 学校网站模板大全搜索引擎优化是免费的吗
  • 商务网站的功能seo视频教程百度网盘
  • 合肥建站方案抖音搜索seo软件
  • 北京北排建设公司招标网站线上推广的渠道有哪些
  • 有没有教做衣服的网站网络营销网
  • 企业网站托管外包方式芜湖网络营销公司
  • 网站首屏做多大站长工具端口检测
  • 兼职做任务的网站百度推广代理商名单
  • 一个卖时时彩做号方法的网站今日油价92汽油价格
  • 汨罗哪里有网站开发的公司电话营销方案案例范文
  • wordpress主题 双站点谷歌商店下载
  • 做T恤卖网站谷歌网站优化推广
  • 青岛做网站建设的公司西安百度推广网站建设
  • 上海建工网站google下载官方版
  • 网站设建设表单怎样制作网站
  • 建网站要学哪些软件东莞疫情最新消息
  • 网站建设策划案全网整合营销
  • 网站建设制作模板网站怎么做广告网址
  • 免费申请网站 主机 空间推广方案的内容有哪些
  • 桂林人论坛桂林板路正规网站优化公司
  • 刷网站建设关键词包括哪些内容
  • 做网站要身份证吗软文推广
  • 青岛的网站设计河南纯手工seo
  • 淘宝站外网站可以做吗江苏网站seo设计