安信可SX1278LORA通讯试验

2023-10-29

LoRa 的名字是远距离无线电(Long Range Radio),作为一种线性调频扩频的调制技术,最早由法
国几位年轻人创立的一家创业公司 Cycleo 推出,2012 年 Semtech 收购了这家公司,并将这一调制技术
封装到芯片中,基于 LoRa 技术开发出一整套 LoRa 通信芯片解决方案,包括用于网关和终端上不同款的
LoRa 芯片,开启了 LoRa 芯片产品化之路。
LoRa 是低功耗局域网无线标准,它最大特点就是在同样的功耗条件下比其他无线方式传播的距离更
远,实现了低功耗和远距离的统一,它在同样的功耗下比传统的无线射频通信距离扩大 3-5 倍。
我们在实验中使用的 LoRa 模块是安信可的 Ra01,该模组用于超长距离扩频通信,其射频芯片 SX1278
主要采用 LoRa™远程调制解调器,用于超长距离扩频通信,抗干扰性强,能够最大限度降低电流消耗。借
助 SEMTECH 的 LoRa™专利调制技术,SX1278 具有超过-148dBm 的高灵敏度,+20dBm 的功率输出,传输
距离远,可靠性高。
 
 
注意:需要做本章实验,需要 2 LoRa 开发板,才能实现一对一 LoRa 通信;三块或者以上开发板,
才能实现一对多通信。
LoRa 模块是接到 STM32 开发板的 SPI 2 上的,通过 STM32 SPI2 可以实现数据交互,同时通过
STM32 IO 可以读取 LoRa 模块的状态,电路图的接口图如下:
    9,LoRa模块,接在spi2上,RESET:PA1,NSS:PB12,SCK:PB13,MISO:PB14,MOSI:PB15,
                           IO0:PC4,IO1:PB11,IO2:空,IO3:PB10,IO4:PC3,IO5:空
 

 

 

LED2_OFF;

    //发送部分
    while (1)
    {
        switch(Radio->Process())//LoRa数据处理
        {
        	case RF_TX_DONE://发送完成
        		printf("tx done.\r\n");

            //闪灯LED2,表示数据发送成功
        		LED2=!LED2;
        		break;
          case RF_TX_TIMEOUT://发送超时
            printf("tx timeout.\r\n");
            break;
        }

        delay_ms(1);
        if(counter++>=1000)
        {
          //一秒闪灯一次,表示程序在运行
        	LED1=!LED1;


          //一秒发送一次递增的数据

        	counter=0;
        	tx_index++;
					
					//LCD显示
        	sprintf(tbuf, "发送:%d", tx_index);

          //无线发送数据
					sprintf(tbuf, "%d", tx_index);
          Radio->SetTxPacket( tbuf, strlen(tbuf));
        }
    }
    //接收部分
		Radio->StartRx();//启动接收
    while (1)
    {
        switch(Radio->Process())//LoRa数据处理
        {
        	case RF_RX_TIMEOUT://接收超时
        		printf("RF_RX_TIMEOUT.\r\n");
        		Radio->StartRx();
        		break;
        	case RF_RX_DONE://接收完成
        		printf("RF_RX_DONE.\r\n");

            //闪灯LED3,表示收到数据
        		LED2=!LED2;

            //取出接收的数据
        		Radio->GetRxPacket(rbuf,&rlen);

            //如果收到数据
            if(rlen>0)
            {
							rbuf[rlen]=0;
              //LCD显示接收的数据
							sprintf(display_buff, "接收:%s", rbuf);

              //串口显示接收的数据
              printf("RX:%s.\r\n", rbuf);

              //显示接收的到的信号强度
          	  sprintf(display_buff, "rssi:%d", (int)SX1276GetPacketRssi());

            }
        	  break;

        }

        delay_ms(1);
        if(counter++>=1000)
        {
          //一秒闪灯一次,表示程序在运行
        	LED1=!LED1;
					counter=0;
        }
    }

下面代码链接:https://pan.baidu.com/s/1Re5-sowRpLD1HHPquex5Cw 
提取码:vz0q 
复制这段内容后打开百度网盘手机App,操作更方便哦

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

安信可SX1278LORA通讯试验 的相关文章

  • can only concatenate list (not "str") to list 解决

    我的代码 info item title n item content n 写python代码出现这个提示的时候 can only concatenate list not str to list 该提示字面意思是 只能将list类型和li
  • ubuntu 相关命令记录

    检查ssh 是否可用 ssh 安装curl apt install curl 进入root 进入root 账号 sudo i 修改密码 sodo passwd 开启root 可远程连接 修改SSH配置文件 可以通过SSH配置文件更改包括端口

随机推荐

  • git clone出错问题解决

    一 git clone 报错 错误截图如下 原因分析 可能是数据太大了 http协议不支持 二 改用ssh方式检出代码 第一步 Git Bash工具生成ssh key ssh keygen o t rsa C your email exam
  • 江河湖库水系连通及水美乡村监测系统解决方案

    一 方案背景 随着我国城市规模化的扩张 城市水系统面积萎缩 水生态系统衰退 水环境质量恶化 河道淤塞甚至被侵占为建筑用地等问题日益凸显 河湖水系连通在城市河道治理中占据举足轻重的位置 水系连通及水美乡村建设项目 是水利部 财政部为解决农村水
  • JavaScript 算法系列---动态规划

    很久之前接触过这样一道题目 总共有十层阶梯 从1层开始往上爬 每次可以上1层或者2层 问到10层总共有多少种方法 思路 这个问题就是动态规划的一个经典例子 所谓动态规划 就是把复杂的问题进行拆解 拆解成一个个子问题 而这类问题最后非常适合使
  • C++ 学习之内建函数对象 - 算术仿函数(加减乘除、取反、取余)

    算数仿函数原型 template
  • 自定义图标iconfont

    阿里iconfont的使用 ui切好图上传到蓝狐 我们下载svg格式的图片 登陆iconfont官网 然后将自己取的iconfont的昵称也就是用户名给你们负责人说 叫他把你拉入图标管理库 这样才能共同开发 全部人各自定义自己的图标 不冲突
  • MySQL实操(四)——使用Haproxy+keeplived实现Mycat高可用

    MySQL实操系列 MySQL实操 一 CentOS7安装MySQL5 7及基础配置 DreamEhome的博客 CSDN博客 centos7 中安装mysql5 7配置表名忽略大小写 MySQL实操 二 MySQL主从同步实战 Dream
  • Labview操作串口-----------通过VISA驱动

    本篇文章将会详细介绍如何通过labview的VISA驱动模块来操作PC的串口 基于LABVIEW2012 VISA530full exe 1 首先需要安装LABVIEW 接下里安装VISA530驱动模块 否则编译本代码时会出现缺少VISA驱
  • STM32 四轴无人机设计——PPM控制无人机动作

    1 前言 前面两次我们成功的将PPM信号的读取 储存和油门处理完成了 这次我们要开始真正的控制无人机 首先我们要了解无人机前后 左右 旋转 升降的原理 2 动作原理 引用 https blog csdn net weixin 3570379
  • flutter get 命令行工具

    mac终端执行 flutter pub global activate get cli 这个安装完以后会提示英文提示你要把一个 目录添加到mac环境变量中 下面的目录是你安装完以后提示你放到环境变量里的目录 export PATH PATH
  • [MacOs]用外置硬盘制作MacOs系统盘

    文章目录 背景 设备 步骤 下载指定系统 制作启动盘 安装系统 背景 最近我的mac air出了点问题 经检查应该是硬盘问题 由于最近得待在老家没办法维修又需要用 只能用外置的硬盘做个系统盘来将就一下使用 设备 需要两个存储设备 不小于32
  • 马上:头疼:安卓黑屏,白屏,网卡,sdcard挂载等问题深入分析解决

    白屏 设备一段时间使用后 白屏 需要重启 经线上日志和以下相关代码初步分析是AMS 窗口显示问题 检查相关业务代码 发现Activity有可能被finish多次 导致失败 还有多次startActivity if isFinishing r
  • MySQL数据库误删回滚

    某次一不小心 用了delete from xxx 删除了几条重要数据 在网上找了很多方法 但都比较零散 打算记录本次数据找回的过程 大致分为以下几步 1 查看binlog是否开启 log bin是ON 就说明打开了 OFF就是关闭状态 以下
  • linux查看nginx安装路径

    linux查看nginx安装路径 有几种方法可以查看nginx的安装路径 使用which命令 which nginx 这个命令会返回nginx的二进制文件路径 一般也是安装路径 查看nginx的进程 得到安装路径 ps aux grep n
  • python爬虫高级教程,JS逆向之百度翻译

    环境 python版本号 系统 游览器 python 3 7 2 win7 google chrome 关于本文 本文将会通过爬虫的方式实现简单的百度翻译 本文中的代码只供学习 不允许作为于商务作用 商务作用请前往api fanyi bai
  • 浅谈控制反转(IoC)

    Inversion of Control 什么是控制反转 程序的流程控制权相对于传统的面向过程编程而言发生了反转 下面是维基百科的描述 In software engineering inversion of control IoC is
  • jest测试ajax,搭建Jest前端测试框架总结

    先说一下我要使用Jest的原因 由于开发提测了一个js的公共组件 需要测试人员对此组件的功能进行测试 因为提测的直接就是js文件 所以我们也就只能对其中的方法进行类白盒测试 知道了为什么测 那接下来就是怎么测 很容易的想到了需要一个测试框架
  • 60-200-040-使用-命令-MySQL查看引擎的命令

    文章目录 1 查看存储引擎 2 MySAM 和 InnoDB对比 1 查看存储引擎 mysql gt show ENGINES Engine Support
  • 调制与解调(1)——初认识

    在深入项目前 还需要对调制解调做深入学习 1 基本概念 调制 调制就是使一个信号 如光 高频电磁振荡等 的某些参数 如振幅 频率等 按照另一个欲传输的信号 如声音 图像等 的特点变化的过程 调制是通过改变高频载波的幅度 相位或者频率 使其随
  • 基于VS2019配置opencv4.0

    文章目录 1 前言 2 不说废话 直接上图干净利落 2 1 创建新空白项目 2 2 添加一个主文件 2 3 配置opencv环境 2 4 链接器配置 2 5 将opencv添加到计算机环境中 2 6 文件复制 3 运行测试环境 1 前言 不
  • 安信可SX1278LORA通讯试验

    LoRa 的名字是远距离无线电 Long Range Radio 作为一种线性调频扩频的调制技术 最早由法 国几位年轻人创立的一家创业公司 Cycleo 推出 2012 年 Semtech 收购了这家公司 并将这一调制技术 封装到芯片中 基