安信可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。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章