无线通信LORA-SX1278---笔记整理

本文努力在一点点更新中......

安信可的LORA模块价钱吸引,体积也很小巧美观。

但是,对于其提供的文档和例程......函数指针!回调!又长又难分辨的函数名称!最难受的是一个功能要各文件间绕来绕去.....

这篇文章,把安信可原厂商例程拆解,一点点梳理成清晰的操作步骤。

按操作顺序,拆分成9个部分,只解释记录需要实现的操作和方法,和实现操作无关的知识不提及。

  • 一、文章约定
  • 二、思维导图
  • 三、硬件连接
  • 四、主机和SX1278间通信的初始化(GPIO、SPI)
  • 五、SX1278参数初始化
  • 六、发送
  • 七、接收
  • 八、中断
  • 九、常见问题

一、文章约定

文中的LORA,或1278,按通俗约定,特指使用SPI通信+SX1278芯片+LORA调制方式的模块 。

这个三合一的组合在量产中最常用,下面分开解释一下:

先说说通信方式.  两种

  • 串口LORA,如:原子哥的LORA,   均价25元左右。 封装得很完善,配置简单,快速上手,但硬件成本高;
  • SPI的LORA,如:安信可的LORA, 均价15元左右。 配置参数较麻烦,但硬件成本低,体积小,多用于产品量产。

芯片,最常用的是sx1278,还有另一种也很常用sx1276,两者性能参数基本一致,两点不同:引脚布局不同,频段不同:

  • sx1276:137~1020MHz, 产品多走美国,欧洲。
  • sx1278:137~525MHz,   多用于中国,东欧。

调制方式,1278可以使用多种信号调制方式,常用的是两种LORA和FSK:

  • LORA:实现麻烦,但通信距离远。空旷地段3km~15km, 城市中实测2km左右,视障碍物而定,多用于物联网少数据量通信。
  • FSK: 实现容易,但通信距离短。比较少用,  因为,距离近的,不如用NRF24L01、SI24R1之类的,成本更合理,速率更快。

、本段最后,


九、常见问题及解决

1:无法连通,SPI读不出数据:

  • 检查线路的正确性,使用杜邦线时,由于线多,很易接错,或一两根线松动就无法连接
  • 通过的电流可以判断其工作状态,处在准备状态时电流在 2mA,处在接收状态时电流在 14mA 左右。
  • 检查SPI的设置参数

2:同一个程序,有时能正常通信,有时候又出错,如发送失败:

  • 设置频率通道时,最好将步进设置大于 2MHz,因为步进太小的话相互间的干扰比较大,并且还可能接收到邻道的信息。

3.  读到的数据、发送的数,尾部包含了上一包的旧数据:

  • 没有及时清FIFO,读完FIFO或发送成功,都要清理FIFO。后进的数据不会自动清理FIFO再写入的,只是覆盖旧数据。
  • 当读取到 CRC 校验错误后,最好复位接收 FIFO 然后再进入接收状态。

4.  通信距离短:

  • 加大链路预算(间接等价为通信距离)可通过降低数据传输速度来实现,具体操作是增大 SF 或者减小 BW。
发布了53 篇原创文章 · 获赞 27 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/zhouml_msn/article/details/104369037