跳转到主要内容

LoRa进行跳频扩频通信(FHSS)的原理

<p>FHSS,跳频扩频技术 (Frequency-Hopping Spread Spectrum)在同步、且同时的情况下,接受两端以特定型式的窄频载波来传送讯号,对于一个非特定的接受器,FHSS所产生的跳动讯号对它而言,也只算是脉冲噪声。</p>

<p>当单个数据包时间可能超过相关法规允许的最大信道停留时间,则会用FHSS技术。在LoRa中开启跳频模式,是操作RegHopPeriod和FreqHoppingPeriod寄存器设为非零值。</p>

<p><strong>1、原理</strong></p>

<p>FHSS跳频扩频方案的工作原理为:每个LoRa数据包的部分内容通过MCU管理设置的跳频信道,既所要“跳”的频率(根据频率查询表)发送出去,在预定的跳频周期结束后,既该部分数据发送完成,则发射机和接收机切换到跳频预定义列表的下一个信道,以便继续发送和接受数据包的下一部分内容。在任一信道内的驻留时间由FreqHoppingPeriod来决定,该值为符号长度的整数倍。</p>

<p>通过跳频发送和接受的过程从信道0开始。。所以前导码和报头部分首先会在信道0发送。。每次开始发送数据包时,信道计数器FhssPresentChannel(位于RegHopChannel)的读数会增加,并产生中断信号FhssChangeChannel以实现跳频。&nbsp;必须在跳频周期内设定新的频率,以 保证下次跳频时,会覆盖该新频率。</p>

<p>FHSS接收通常从信道0开始,在Check完前导码后,接收机就会开始上述跳频过程,这时候,如果Header的CRC不正确,接收机会自动请求信道0(数据包重发机制),并重新开始Check前导码。</p>

<p><strong>2、信道更新时间</strong></p>

<p>转到新频率后,会产生FhssChangeChannel中断,既改变信道的中断。。。如下图跳频成功时产生的中断信号:</p>

<p><img alt="跳频成功时产生的中断信号" data-entity-type="file" data-entity-uuid="9cd08cf1-b828-403c-8582-72fe2da918d9" height="344" src="/sites/default/files/inline-images/%E8%B7%B3%E9%A2%91%E6%88%90%E5%8A%9F%E6%97%B6%E4%BA%A7%E7%94%9F%E7%9A%84%E4%B8%AD%E6%96%AD%E4%BF%A1%E5%8F%B7.png" width="621" /></p>

<p>文章来源:<a href="http://blog.csdn.net/howiexue">HowieXue的博客</a></p&gt;