一、简介
本文档主要介绍Ra-01SC/Ra-01SCH模组驱动例程使用方法。
二、硬件准备
· 设备清单
· 接线说明
三、重要函数说明
整个工程主要由两个部分组成:接收配置与处理以及发送配置与处理;
1. 数据接收部分的配置:
数据接收部分的配置主要参数为:
· modem:配置射频模式,[0: FSK, 1: LoRa]
· bandwidth:带宽配置;
FSK : 0
LoRa: [0: 125 kHz, 1: 250 kHz, 2: 500 kHz, 3: Reserved]
· datarate:数据速率;
FSK : 600…300000 bits/s
LoRa: [6: 64, 7: 128, 8: 256, 9: 512, 10: 1024, 11: 2048, 12: 4096 chips]
· coderate:编码率
FSK:设置为0
LoRa:[1: 4/5, 2: 4/6, 3: 4/7, 4: 4/8]
· bandwidthAfc:设置AFC带宽
FSK:数值 >= 2600 并且 <= 250000 Hz
LoRa:无效位,设置0
· preambleLen:前导码长度
FSK:字节数
LoRa:前导码长度(单位是:symbols)
· symbTimeout:设置单接收超时时间
FSK:超时时间(单位为:字节数)
LoRa:超时时间(单位是:symbol说)
· fixLen:设置数据包是否固定长度(0:表长度为变量;1:固定)
· payloadLen:负载长度,当启用fixLen时
· crcOn:是否开启CRC校验(0:关闭;1:开启)
· FreqHopOn:使能/不使能跳频功能
FSK:无效位,设置0
LoRa:(0:关闭;1:开启)
· HopPeriod:设置跳频周期
FSK:无效位,设置0
LoRa:跳频周期(单位是:symbols)
· iqInverted:是否开启IQ转换功能
FSK:无效位,设置0
LoRa:(0:关闭;1:开启)
· rxContinuous:设置是否启动连续接收模式
(0:设置单次接收模式;1:设置连续接收模式)
2. 数据发送部分的配置:
数据接收部分的配置主要参数为:
· modem:配置射频模式,[0: FSK, 1: LoRa]
· bandwidth:带宽配置;
FSK : 0
LoRa: [0: 125 kHz, 1: 250 kHz, 2: 500 kHz, 3: Reserved]
· datarate:数据速率;
FSK : 600…300000 bits/s
LoRa: [6: 64, 7: 128, 8: 256, 9: 512, 10: 1024, 11: 2048, 12: 4096 chips]
· coderate:编码率
FSK:设置为0
LoRa:[1: 4/5, 2: 4/6, 3: 4/7, 4: 4/8]
· preambleLen:前导码长度
FSK:字节数
LoRa:前导码长度(单位是:symbols)
fixLen:设置数据包是否固定长度(0:表长度为变量;1:固定)
crcOn:是否开启CRC校验(0:关闭;1:开启)
FreqHopOn:使能/不使能跳频功能
FSK:无效位,设置0
LoRa:(0:关闭;1:开启)
HopPeriod:设置跳频周期
FSK:无效位,设置0
LoRa:跳频周期(单位是:symbols)
iqInverted:是否开启IQ转换功能
FSK:无效位,设置0
LoRa:(0:关闭;1:开启)
timeout:发送超时检测时间
3. 回调函数部分的设置:
发射完成中断 “LLCC68OnTxDone” ,该回调函数主要用于处理数据发送完成以后需要处理的逻辑内容;
接收完成中断 “LLCC68OnRxDone” ,该回调函数主要用于对接收到的数据进行处理;
发射超时中断 “LLCC68OnTxTimeout” ,该回调函数主要用于处理数据发送超时后的逻辑内容;
接收完成中断 “LLCC68OnRxTimeout” ,该回调函数主要用于处理数据接收超时后的逻辑内容;
接收数据校验出错中断 “LLCC68OnRxTimeout” ,该回调函数主要用于处理接收到的数据校验失败后的逻辑内容;
4. 配置接收超时:
配置参数说明:
· timeout :设置接收超时
注:若是从发送模式切换为接收模式,需事先设置模组进入待机模式,即调用函数 “Radio.Standby();”,之后再设置进入接收模式 。
5. 配置数据发送:
配置参数说明:
· buffer:发送数据;
· size:发送数据长度;
四、调试
1. 在文档 “project_config.h” 中设置各个射频参数,无论启用发送模式还是接收模式,这些参数均一致;
2. 在文档 “main.c” 中设置模组启动进入接收或是设置循环发送数据;若是设置接收,则调用函数 “ExampleLLCC68ReciveDemo();”
函数,若是设置不断发送,则调用 “ExampleLLCC68SendDemo();” 函数;
3. 完成配置以后,一套设备烧录接收固件,另一套设备烧录发送固件,最后复位启动设备,并通过串口查看数据收发是否成功;
4. 效果如下:
|