LoRa 学习之网络层(一) JOIN和LINK
当之前的射频初始化之后,还需要网络层初始化。还是在SMPL_Init()中初始化。
下面是一些比较重要的函数
同样在SMPL_Init()中还初始化了网络层的一些参数
在nwk_nwkInit()中,对地址,队列,帧进行初始化以及一些入网,连接数据初始化
在nwk_join(),进行入网申请
SMPL_Ioctl()是通用接口,通过调用这个函数进行一些动作操作
nwk_nwkInit()
此函数是初始化地址,初始化帧解析,收发队列的初始化及一些广播的参数
nwk_join()
此函数是发送入网请求和等待回复。
首先对发送和接收的数据进行初始化,定义了一个结构体
然后通过调用SMPL_Ioctl()函数进行相应动作,在这里就是发送数据。再通过之前说的中断接收函数进行数据接收。 在Dispatch函数中判断是否进行回复。若要进行回复。
再在Join函数中对recv的数据进行初始化并发送,而且存入LINKTOKEN之类的信息。
到这里就是入网操作已经成功。
再接下来是LINK操作
LINK操作和之前JOIN差不多,还有就是把之前拿到的LINKTOKEN同时传过去。然后对接收到的帧进行校验。
下面就是总结这个整个流程: