LoRa 学习之网络层(一) JOIN和LINK

    当之前的射频初始化之后,还需要网络层初始化。还是在SMPL_Init()中初始化。

                             LoRa 学习之网络层(一) JOIN和LINK

   下面是一些比较重要的函数

                     同样在SMPL_Init()中还初始化了网络层的一些参数

                     在nwk_nwkInit()中,对地址,队列,帧进行初始化以及一些入网,连接数据初始化

                     在nwk_join(),进行入网申请

                     SMPL_Ioctl()是通用接口,通过调用这个函数进行一些动作操作

 

          nwk_nwkInit()

                   此函数是初始化地址,初始化帧解析,收发队列的初始化及一些广播的参数

          nwk_join()

                  此函数是发送入网请求和等待回复。

                  首先对发送和接收的数据进行初始化,定义了一个结构体

                                                              LoRa 学习之网络层(一) JOIN和LINK

                  然后通过调用SMPL_Ioctl()函数进行相应动作,在这里就是发送数据。再通过之前说的中断接收函数进行数据接收。          在Dispatch函数中判断是否进行回复。若要进行回复。

                  再在Join函数中对recv的数据进行初始化并发送,而且存入LINKTOKEN之类的信息。

                  到这里就是入网操作已经成功。

           LoRa 学习之网络层(一) JOIN和LINK

 

             再接下来是LINK操作

                     LINK操作和之前JOIN差不多,还有就是把之前拿到的LINKTOKEN同时传过去。然后对接收到的帧进行校验。

 

 

         下面就是总结这个整个流程:

      LoRa 学习之网络层(一) JOIN和LINK