Ra-05/Ra-05U模组驱动说明

描述

文章目录

一、简介

二、硬件准备

设备清单

接线说明

三、重要函数说明

四、调试

五、联系我们

简介

Ra-05、Ra-05U 是由安信可科技开发的 2.4GHz LoRa射频收发模组,该模组搭载Semtech 公司的 SX1281 射频芯片作为核心处理器,支持多种调制方式如LoRa、FLRC、GFSK 并可兼容蓝牙协议。该模块是纯射频收发模块,需要使用MCU 驱动或使用专用的SPI调试工具。 

Ra-05/Ra-05U亮点概括:

●支持免许可 ISM 2.4GHz 频段。

●接收灵敏度LoRa 模式可达-132dBm(根据芯片手册数据)。

●支持多种调制模式(GFSK Mode ,FLRC Mode,LoRa Mode,FSK调制)。

●速率可调,FLRC 调制方式下最高可达 1.3Mbps。

●支持 1.8~3.6VDC 宽电压供电。

●Ra-05U天线接口采用 IPEX 座子,支持多种外接天线;Ra-05采用板载天线兼容IPEX座子。

 

01

硬件准备

设备清单

 

硬件 数量
Ra-05/Ra-05U 模组 2个
杜邦线 若干
USB转TTL模块 2个
STM32F103C8T6开发板 2个
MicroUSB线(安卓数据线) 2根

 

接线说明

 

Ra-05/Ra-05U 模组 STM32F103C8T6主控
NSS PB7
MISO PA6
MOSI PA7
SCK PA5
BUSY PB5
DIO1 PA1
NRESET PB15
STM32F103C8T6主控 USB转TTL模块
GND GND
PA_9 Rx

 

02

重要函数说明

整个工程主要由两个部分组成:接收配置与处理以及发送配置与处理。

RF部分的配置

 

 

  ModulationParams_t modulationParams;
  modulationParams.PacketType = PACKET_TYPE_LORA;
  modulationParams.Params.LoRa.SpreadingFactor = LORA_SF10;
  modulationParams.Params.LoRa.Bandwidth = LORA_BW_1600;
  modulationParams.Params.LoRa.CodingRate = LORA_CR_4_7;


  packetParams.PacketType = PACKET_TYPE_LORA;
  packetParams.Params.LoRa.PreambleLength = 20;
  packetParams.Params.LoRa.HeaderType = LORA_PACKET_VARIABLE_LENGTH;
  packetParams.Params.LoRa.PayloadLength = BUFFER_SIZE;
  packetParams.Params.LoRa.CrcMode = LORA_CRC_ON;
  packetParams.Params.LoRa.InvertIQ = LORA_IQ_NORMAL;
  
  Radio.SetStandby( STDBY_XOSC );
  Radio.WriteRegister(0x093C,0x1);
  
      switch(modulationParams.Params.LoRa.SpreadingFactor){
        case LORA_SF5:
        case LORA_SF6:
            Radio.WriteRegister(0x0925,0x1E);
            break;
        case LORA_SF7:
        case LORA_SF8:
            Radio.WriteRegister(0x0925,0x37);
            break;
        case LORA_SF9:
        case LORA_SF10:
        case LORA_SF11:
        case LORA_SF12:
            Radio.WriteRegister(0x0925,0x32);
            break;
    }
      
  Radio.SetPacketType( modulationParams.PacketType );
  Radio.SetModulationParams( &modulationParams );
  Radio.SetPacketParams( &packetParams );
  Radio.SetRfFrequency( RF_FREQUENCY );
  Radio.SetBufferBaseAddresses( 0x00, 0x00 );
  Radio.SetTxParams( TX_OUTPUT_POWER, RADIO_RAMP_02_US );

 

 

射频部分主要配置参数有:

●PacketType :配置射频模式,[PACKET_TYPE_LORA:LoRa调制方式]

●Bandwidth :带宽配置;

LoRa: [LORA_BW_1600: 1600 kHz, LORA_BW_0800: 800kHz, LORA_BW_0400: 400kHz, LORA_BW_0200: 200 kHz]

●SpreadingFactor:扩频因子;

LoRa: [LORA_SF5 ~ LORA_SF12]

●CodingRate:编码率

LoRa:[LORA_CR_4_5: 4/5, LORA_CR_4_6: 4/6, LORA_CR_4_7: 4/7, LORA_CR_4_8: 4/8]

●PreambleLength:设置前导码

LoRa:范围 0~255

●HeaderType:头部字类型

LORA_PACKET_VARIABLE_LENGTH:数据带头部字

LORA_PACKET_FIXED_LENGTH:数据不带头部字

●PayloadLength:有效数据长度

●CrcMode:是否开启CRC校验(LORA_CRC_OFF:关闭;LORA_CRC_ON:开启)

●iqInverted:是否开启IQ转换功能(LORA_IQ_INVERTED:关闭;LORA_IQ_NORMAL:开启)

●SetRfFrequency:配置频点(范围是:2400~2500)

●SetBufferBaseAddresses:设置发送与接收的基地址

●SetTxParams:配置发送参数

配置数据发送

 

 

Radio.SetDioIrqParams(TxIrqMask,IRQ_RADIO_NONE,IRQ_RADIO_NONE,IRQ_RADIO_NONE);
Radio.SendPayload(Buffer, BufferSize, (TickTime_t){RX_TIMEOUT_TICK_SIZE, TX_TIMEOUT_VALUE});

 

 

●TxIrqMask:开启发送中断掩码

●Buffer:要发送的有效数据

●BufferSize:要发送的有效数据的长度

配置数据接收

 

 

Radio.SetDioIrqParams(RxIrqMask,IRQ_RADIO_NONE,IRQ_RADIO_NONE,IRQ_RADIO_NONE);
Radio.SetRx( ( TickTime_t ) { RX_TIMEOUT_TICK_SIZE, 0xFFFF } );

 

 

●RxIrqMask:开启接收中断掩码

●0xFFFF :配置连续接收模式

回调函数部分的设置

 

 

static void OnTxDone( void );
static void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr );
static void OnTxTimeout( void );
static void OnRxTimeout( void );
static void OnRxError( void );

 

 

●发射完成中断 “OnTxDone” ,该回调函数主要用于处理数据发送完成以后需要处理的逻辑内容。

●接收完成中断 “OnRxDone” ,该回调函数主要用于对接收到的数据进行处理。

●发射超时中断 “OnTxTimeout” ,该回调函数主要用于处理数据发送超时后的逻辑内容。

●接收完成中断 “OnRxTimeout” ,该回调函数主要用于处理数据接收超时后的逻辑内容。

●接收数据校验出错中断 “OnRxError” ,该回调函数主要用于处理接收到的数据校验失败后的逻辑内容。

03

调试

套件1,在文档 “main.c” 中设置SEND_MODE为1,则模组工作在发送状态,编译发送固件。

套件2,在文档 “main.c” 中设置SEND_MODE为0,则模组工作在接收状态,编译接收固件。

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

效果如下:

驱动

04

联系我们

以上就是本期分享的内容,目的在于让大家快速适应新品方案的开发,更多资料可从我们官网上获取。

官方官网:https://www.ai-thinker.com

开发资料:https://docs.ai-thinker.com/

官方论坛:http://bbs.ai-thinker.com

技术支持:support@aithinker.com

原贴地址:【2.4G LoRa】Ra-05/Ra-05U模组驱动说明

 

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分