-
CARNEIRO--GILLET Alexandre authoredCARNEIRO--GILLET Alexandre authored
main.py 1.59 KiB
import time
from machine import UART, Pin
uart = UART(2, baudrate=9600, tx=17, rx=16)
# Initialisation de la LED intégrée (souvent sur GPIO 2)
led = Pin(2, Pin.OUT) # GPIO 2 pour la LED intégrée
def send_at_command(command):
uart.write((command + "\r\n").encode()) # Envoie la commande AT au module LoRa
time.sleep(0.3) # Attendre la réponse du module
while uart.any():
response = uart.read().decode('utf-8') # Lire la réponse
print(response)
def blink_led(times, interval):
for _ in range(times):
led.value(0) # Éteindre la LED
time.sleep(interval) # Attendre un certain temps
led.value(1) # Rallumer la LED
time.sleep(interval) # Attendre un certain temps
# Initialisation du module LoRa
led.value(1) # Allumer la LED (rouge)
time.sleep(2)
print("Initialisation du module LoRa-E5...")
send_at_command("AT")
send_at_command("AT+MODE=TEST")
send_at_command("AT+DR=SF12BW125") # Définir le débit de données (ex: SF12BW125)
send_at_command("AT+TEST=RXLRPKT") # Commencer la réception des paquets LoRa
print("Module LoRa-E5 initialisé. En attente de messages...")
while True:
if uart.any(): # Si des données sont disponibles sur le port série
message = uart.read().decode('utf-8').strip() # Lire le message reçu
print(f"Message reçu : {message}")
# Clignotement de la LED une fois pour indiquer la réception
led.value(0) # Éteindre la LED
time.sleep(0.1) # Attendre un peu
led.value(1) # Rallumer la LED
time.sleep(0.01) # Petite pause pour éviter de saturer la boucle