pdf-icon

UIFlow 上手教程

UiFlow1 Blockly

Event

Unit

UiFlow1 项目配置

Unit LoRa E220-433

案例程序

注册 LoRaE220-433 并发送和接收数据

from m5stack import *
from m5ui import *
from uiflow import *
import unit

setScreenColor(0x404040)
lorae220_433_0 = unit.get(unit.LORA_E220_433, unit.PORTC)

lorae220_data1 = None
lorae220_rssi1 = None
rand = None

import random

def lorae220433_Zsicmcb(received_data, rssi):
  global lorae220_data1, lorae220_rssi1, rand
  try:
    lorae220_data1 = received_data.decode()
  except:
    lorae220_data1 = str(received_data)
  lorae220_rssi1 = rssi
  print((str('receive:') + str(lorae220_data1)))
  print((str('rssi:') + str(lorae220_rssi1)))
  pass

def buttonA_wasPressed():
  global lorae220_data1, lorae220_rssi1, rand
  rand = str(random.randint(1000000, 9999999))
  print((str('send random no:') + str(rand)))
  lorae220_433_0.send(0x0020, 0, ((str('0x0020:  ') + str(rand))))
  pass
btnA.wasPressed(buttonA_wasPressed)

def buttonC_wasPressed():
  global lorae220_data1, lorae220_rssi1, rand
  rand = str(random.randint(1000000, 9999999))
  print((str('send random no:') + str(rand)))
  lorae220_433_0.send(0x0025, 0, ((str('0x0025:  ') + str(rand))))
  pass
btnC.wasPressed(buttonC_wasPressed)

lorae220_433_0.uart_setup(1, 9600, None)
lorae220_433_0.enable_receive_callback(lorae220433_Zsicmcb)

功能说明

print((str('available of data:') + str((lorae220_433_0.available_data()))))
  • 返回一个整数,用于计算在不阻塞的情况下可以读取的字节数。 如果没有可用字节,它将返回 0,如果有字节,则返回正数。
print((str('address:') + str((lorae220_433_0.read_configure_param()[0]))))
  • 获取LoRa E200设备的设备地址参数
print((str('receive data:') + str((lorae220_433_0.receive(1000)))))
  • 使用阻塞方式接收数据。 用于设置接收超时,单位为 ms
lorae220_433_0.enable_receive_callback(lorae220433_nFWKgcb)
  • 使用非阻塞模式接收数据
lorae220_433_0.send(0x0000, 0, [0x10, 0x20])
  • 向指定的目标地址和频道发送数据(send raw data)
lorae220_433_0.send(0x0000, 0, 1000)
  • 向指定的目标地址和频道发送数据
lorae220_433_0.setup(0x0000, 0, encryption_key=0x0000)
  • 设置模块参数
    • address:本地地址
    • channel:本机频道
    • encryption_key:加密密钥
lorae220_433_0.uart_setup(1, 9600, None)
  • 设置 UART ID /波特率/奇偶校验
lorae220_433_0.disable_receive_callback()
  • 停止在非阻塞模式下接收数据
On This Page