LoraWAN源码学习(2)--数据发送流程

LoraWAN源码学习2--数据发送流程


协议栈版本: v4.4.2
官方源码下载链接
CSDN下载

SendFrame( ) //lorwan 主程序中,调用该接口开启一次数据发送请求,包括是否需要下行确认,指定应用数据,重发次数等
	->LoRaMacMcpsRequest() //向协议栈中请求发送数据,包括确认协议栈是否处于Busy状态/端口合法性/应用数据长度检查
		->Send() //调用PrepareFrame()打包LoRaWAN数据包,并发起发送调度
			->ScheduleTx()
				->RegionNextChannel()  // 随机设置可使用通道 =>RegionCN470NextChannel()
				->SecureFrame()  		//加密  keil在PrepareFrame()里	
					->LoRaMacCryptoSecureMessage()
    					->LoRaMacSerializerData() //打包PHY数据
    			->SendFrameOnChannel()
					->RegionTxConfig()
						->RegionCN470TxConfig()
							RegionCommonComputeTxPower()  //计算发送功率
							Radio.SetChannel()  //根据通道设置发送频率 => SX1276SetChannel()
							Radio.SetTxConfig()  //设置最大荷载长度
							Radio.SetMaxPayloadLength()  //设置发送配置
					->Radio.Send()  //向sx1278数据缓冲区FIFO填写payload,设置超时时间
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值