【教程】Ra-01SC/Ra-01SCH模组驱动

[复制链接]
查看1769 | 回复2 | 2023-7-21 14:37:32 | 显示全部楼层 |阅读模式
一、简介
本文档主要介绍Ra-01SC/Ra-01SCH模组驱动例程使用方法。

二、硬件准备
· 设备清单

1.png

· 接线说明

2.png
3.png
三、重要函数说明
整个工程主要由两个部分组成:接收配置与处理以及发送配置与处理;

1. 数据接收部分的配置:

4.png

数据接收部分的配置主要参数为:

· 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. 数据发送部分的配置:

5.png

数据接收部分的配置主要参数为:

· 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. 回调函数部分的设置:

6.png

发射完成中断 “LLCC68OnTxDone” ,该回调函数主要用于处理数据发送完成以后需要处理的逻辑内容;
接收完成中断 “LLCC68OnRxDone” ,该回调函数主要用于对接收到的数据进行处理;
发射超时中断 “LLCC68OnTxTimeout” ,该回调函数主要用于处理数据发送超时后的逻辑内容;
接收完成中断 “LLCC68OnRxTimeout” ,该回调函数主要用于处理数据接收超时后的逻辑内容;
接收数据校验出错中断 “LLCC68OnRxTimeout” ,该回调函数主要用于处理接收到的数据校验失败后的逻辑内容;

4. 配置接收超时:

7.png

配置参数说明:

· timeout :设置接收超时
注:若是从发送模式切换为接收模式,需事先设置模组进入待机模式,即调用函数 “Radio.Standby();”,之后再设置进入接收模式 。

5. 配置数据发送:

8.png

配置参数说明:

· buffer:发送数据;
· size:发送数据长度;

四、调试

1. 在文档 “project_config.h” 中设置各个射频参数,无论启用发送模式还是接收模式,这些参数均一致;

9.png

2. 在文档 “main.c” 中设置模组启动进入接收或是设置循环发送数据;若是设置接收,则调用函数 “ExampleLLCC68ReciveDemo();”
函数,若是设置不断发送,则调用 “ExampleLLCC68SendDemo();” 函数;

3. 完成配置以后,一套设备烧录接收固件,另一套设备烧录发送固件,最后复位启动设备,并通过串口查看数据收发是否成功;

4. 效果如下:

10.png

回复

使用道具 举报

iiv | 2023-8-25 23:25:12 | 显示全部楼层
插眼
回复

使用道具 举报

yangguoyi | 2024-7-30 18:12:09 | 显示全部楼层
当10块模组一块做发送其余九块做响应,会不会造成超时
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则