這些代碼是從另一個存儲庫中收集的,以改善其使用,因此隨著時間的推移,唯一處理為loraría.py書店的腳本將得到改善。參考:https://github.com/lemariva/upylora
在存儲庫中,您可以找到:
代碼:包含用於使用SX1276芯片的所有腳本
conc_lora.py
controler.py
controller_esp32.py
ESP32LORA.BIN
sx127x.py
lora.py
我們集中精力的是Lora.py,其中具有其方法的類別,從而促進了芯片的使用。在這種情況下,已經指定使用的頻率為915 MHz,在sx127x.py文件中配置為915 MHz,如果需要不同的頻率,則有必要在腳本中更改,然後返回必須形成.bin或僅在ESP中輸入必要的腳本。
示例:它包含有關如何使用類,發送和接收數據的示例,除了將數據上傳到Web服務(例如Ubidots)之外。
該文件主要是為了立即指定為LORA的,該文件將具有發送和接收代碼的所有必要方法。用於與Lora芯片通信的引腳與HELTEC和TTGO文檔中指定的引腳相同,該文件通過添加帶有天線的SX127X芯片,使ESP32微控制器與ESP32微控制器形成開發板。然後,您將找到如何使用您的方法使用書店:
該腳本包含Lora,這是一個初始化SX127X芯片使用的類。它可以初始化如下:
from lora import LoRa
lora = LoRa ()
#si se desea un filtrado de los mensajes
lora = LoRa ( header = 'header' )除了接受WAIT_MSG()方法處理的周期數據外,還可以指定一個週期,以便在消息到達後,指定您要通過多長時間直到收到新的,如下:
#sin header
lora = LoRa ( period = 2 )
#con header
lora = LoRa ( header = 'header' , period = 2 )這是發送數據的指定方法,因此第一個參數是指定要發送數據,而第二個參數則是要使用特定標頭髮送的第二個參數。
#sin header especifico
lora . send ( 'hola' )
#con header especifico
lora . send ( 'hola' , spheader = 'headersp' )如果有必要發送帶有不同或特定標頭的消息,則已經添加了特定標頭的變量。
就像訂閱的MQTT對像一樣,我們將相同的概念用於回調,因此一旦建立了Lora的對象,就可以指定在消息到達時需要執行函數:
#cb corresponde al nombre de la funcion usada como callback
#que debe tener como parametro una variable que sera el mensaje
lora . set_callback ( cb ) lora . wait_msg ()一旦指定了我們的回調,wait_msg便負責傳入消息,並且我們的回調將在後台執行。如果實例化LORA類時,則指定了該期間變量的值,一旦接收到消息,則指定的時間是通過(以秒為單位)通過,以便接受另一條消息。
lora . receive_msg ()類似於wait_msg()負責在特定時間接收消息,僅一次並在消息到達時執行回調。
史蒂芬·席爾瓦(Steven Silva)撰寫的Upylora獲得了創意共享認可 - 坎帕特里(Compartyrigual)4.0國際許可證的許可。
由https://github.com/lemariva/upylora上的工作創建。