RF433R Unit

这个库是 Unit RF433R 的驱动

支持以下产品:

Unit RF433R

备注

目前尚不支持与 ESP32-S3 相关的设备,如 CoreS2 和 AtomS3。

UiFlow2 应用示例:

接收数据。

在 UiFlow2 上打开 basic_rf433r_recv_example.m5f2 项目。

示例程序演示使用 RF433TUnit 和 RF433RUnit 进行通信,发送数据端请查看 RF433TUnit

UiFlow2 代码块:

basic_rf433r_recv_example.png

示例输出:

MicroPython 应用示例:

接收数据。

示例程序演示使用 RF433TUnit 和 RF433RUnit 进行通信,发送数据端请查看 RF433TUnit

MicroPython 代码块:

 1# SPDX-FileCopyrightText: 2025 M5Stack Technology CO LTD
 2#
 3# SPDX-License-Identifier: MIT
 4
 5import os, sys, io
 6import M5
 7from M5 import *
 8from unit import RF433RUnit
 9
10
11title0 = None
12label_cnt = None
13rf433r_0 = None
14rf433r_data = None
15cnt = None
16
17
18def rf433r_0_receive_event(received_data):
19    global title0, label_cnt, rf433r_0, rf433r_data, cnt
20    rf433r_data = received_data
21    cnt = rf433r_data[-1]
22    label_cnt.setText(str((str("Count: ") + str(cnt))))
23    print(rf433r_data)
24
25
26def setup():
27    global title0, label_cnt, rf433r_0, rf433r_data, cnt
28    M5.begin()
29    title0 = Widgets.Title("RF433R Recv Data", 3, 0xFFFFFF, 0x0000FF, Widgets.FONTS.DejaVu24)
30    label_cnt = Widgets.Label("Count", 115, 118, 1.0, 0x00FF00, 0x000000, Widgets.FONTS.DejaVu18)
31    rf433r_0 = RF433RUnit((36, 26))
32    rf433r_0.set_recv_callback(rf433r_0_receive_event)
33    rf433r_0.start_recv()
34
35
36def loop():
37    global title0, label_cnt, rf433r_0, rf433r_data, cnt
38    M5.update()
39
40
41if __name__ == "__main__":
42    try:
43        setup()
44        while True:
45            loop()
46    except (Exception, KeyboardInterrupt) as e:
47        try:
48            from utility import print_error_msg
49
50            print_error_msg(e)
51        except ImportError:
52            print("please update to latest firmware")

示例输出:

API应用

RF433RUnit

class unit.rf433r.RF433RUnit(port=None)

基类:object

创建一个 RF433RUnit 对象。

参数:

port (list|tuple) – 包含 grove 端口引脚的 Tuple。

UiFlow2 代码块:

init.png

MicroPython 代码块:

from unit import RF433RUnit

unit_rf433r = RF433RUnit(port=(36, 26))
read()

读取数据。

返回:

接收数据。

返回类型:

bytes | None

未接收到数据,则返回 None。

UiFlow2 代码块:

read.png

MicroPython 代码块:

unit_rf433r.read()
set_recv_callback(callback)

设置接收数据回调函数。

参数:

callback – 当接收到数据时将调用的函数。

UiFlow2 代码块:

set_recv_callback.png

MicroPython 代码块:

def unit_rf433r_receive_event(received_data):
    rf433r_data = received_data

unit_rf433r.set_recv_callback(unit_rf433r_receive_event)
start_recv()

开始接收数据。

UiFlow2 代码块:

start_recv.png

MicroPython 代码块:

unit_rf433r.start_recv()
返回类型:

None

stop_recv()

停止接收数据。

UiFlow2 代码块:

stop_recv.png

MicroPython 代码块:

unit_rf433r.stop_recv()
返回类型:

None