当前文档版本为 v0.3.0,您可以访问当前页面的 开发中 版本以获取最近可能的更新。

rf_rx例程

1 功能概述

rf_rx演示了RF在PAN028b1_evb上的使用方法,主要包括:

  • 297普通型接收

  • 297增强型接收

  • 蓝牙BLE白名单接收

  • 24L01普通型接收

  • 24L01增强型接收

2 环境准备

  • Board: PAN028b1_evb两块(另一块烧录发送程序)

  • Micro USB线 用于供电和查看串口打印Log

  • 硬件接线:

    • 将 J20 开关拔至TX侧,将P3_1与uart的TX引脚相连

3 编译和烧录

例程位置:pan028_dk\01_SDK\example_basic\rf\rf_rx

打开目录下keil下的Rx.uvprojx工程,编译整个代码工程。

4 演示说明

PAN028b1_evb接收数据,可以通过串口打印出接收的内容

rx

5 开发说明

通过开放main.c 的pan_mode、Nordic_mode、BLE_mode来实现不同协议的数据包的接收。

#define RF_297L_MODE 1  
#define RF_2401_MODE 0
#define RF_BLE_MODE 0

通过RF_SetBleWhitelist和filter数组的结合可以实现对空中指定内容的蓝牙包的过滤;通过RF_SetBleLenFilter可以实现对空中指定长度的蓝牙包的过滤。具体设置方法可参考数据手册。

u8 filter[2] = {0x42, 0x25};
u8 filter[6] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66};
u8 filter[2] = {0x1e, 0xff};
	     
RF_SetBleLenFilter(37, RF_BLE_LEN_FILTER_EQUAL);
RF_SetBleWhitelist(3, filter, 6);

另外有以下接口可以设置发送的基础参数。注意收端也要一致才能收到数据包。

RF_SetChannel(10);//设置频率为2400+10=2410M
RF_SetCrc(RF_CRC_OFF);//设置CRC验证规则
RF_SetRate(RF_DR_1Mbps); //设置速率为1M
RF_SetNoAck(TRUE);//设置自动应答的开关(增强型使用)
RF_SetAckPayload(TRUE);//设置ACK是否携带内容(增强型使用)

6 RAM/Flash资源使用情况

Program Size: data=49.1 xdata=128 const=55 code=5993