Эти коды были собраны из другого репозитория, чтобы улучшить его использование, так что единственный сценарий, который обрабатывается как книжный магазин Loraría.py, будет улучшен со временем. Ссылка: https://github.com/lemariva/upylora
В репозитории вы можете найти:
Коды: содержит все сценарии, используемые для использования чипа SX1276
Conf_lora.py
Controller.py
CONTROLLER_ESP32.PY
Esp32lora.bin
Sx127x.py
Lora.py
Из которых мы концентрируемся, - это класс Lora.py, который имеет класс с его методами, облегчая использование чипа. В этом случае было указано, что используемая частота составляет 915 МГц, настроенную в файле sx127x.py , в случае, если требуется другая частота, необходимо изменить в сценарии, а затем возвращается сформировать .bin или просто ввести необходимые сценарии в ESP.
Примеры: он содержит примеры того, как следует использовать класс, для отправки и получения данных, в дополнение к загрузке данных в веб -службу, такой как UBIDOTS.
В основном этот файл был создан для мгновенного указанного как Lora, который будет иметь все необходимые методы для отправки и получения кода. Контакты, которые используются для связи с чипом LORA, являются одинаковыми в документации Heltec и TTGO, которые делают пластины для развития с микроконтроллером ESP32, добавив чип SX127X с антенной. Тогда вы найдете, как использовать книжный магазин со своими методами:
Сценарий содержит 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 () отвечает за получение сообщения в определенное время, только один раз и обратный вызов выполняется при появлении сообщения.
Upylora Стивена Сильва имеет лицензию по международной лицензии Creative Commons Commonition-Compartyrygual 4.0.
Создан из работы на https://github.com/lemariva/upylora.