标题:
STM32实现SX1278 LORA通信源码与资料
[打印本页]
作者:
czx814
时间:
2018-5-20 21:43
标题:
STM32实现SX1278 LORA通信源码与资料
一个特别不错的STM32实现LORA通信的资料
SX1278芯片的中文资料下载:
http://www.51hei.com/bbs/dpj-119513-1.html
简单基本收发功能测试,大部分照搬原参考程序,增加部分注释。
LORA只是工程一部分,现并未完善,跟LORA不相关的可直接忽视。
A板:收到数据后 回传ABCDE;
B板:收到数据后 回传VHELL!
硬件注意:只需最小系统,串口测试使用USART1;晶振都为外部12M..
仅供参考!
0.png
(44.65 KB, 下载次数: 129)
下载附件
2018-5-23 03:55 上传
单片机源程序如下:
#include "X_02.h"
u32 error0,error_i,crc,EMM,BE_EN,xx0;
u32 BE_EN0,BE_EN2;
int main(void)
{
init();
gSendBuffer[0] = *"V";
gSendBuffer[1] = *"H";
gSendBuffer[2] = *"e";
gSendBuffer[3] = *"l";
gSendBuffer[4] = *"l";
gSendBuffer[5] = *"!";
gSendBuffer[6] = *" ";
while(1)
{
LORA_BOX(); //处理空闲模式,发射接收都在里面,主要的就是这个函数
if(vvi502%40==0)
{
vvi502++;
EN_ROLA=1; //发射
TES0=1;
delay_ms(40);
TES0=0;
}
}
}
void init(void)
{
Stm32_Clock_Init(SYSCLK_i/HSE_i); //系统时钟设置 //12MHz*6=72M
GPIOX_init(); //初始化通用硬件接口
delay_ms(200);
// ATMCxx_init();
LORA_int();
// DMA_init(); //注意DMA与ADC初始顺序,否则规则传输顺序有误!?
// ADC_init();
EXTIX_Init();
PVD_init();
Ci();
TIM2_Int_Init(20,719); //1us/data 200us
TIM3_Int_Init(64000,35); //500ns/data 32ms //预分频器35,重装载64000,溢出 32MS
}
void GPIOX_init(void)
{
//AFIO寄存器操作异于其它寄存器;配置某位 其余位默认0配置
//关闭JTAG/SWD;PB3,4;PA13,14,15;PE2,3,4,5,6;引脚重定义,I/O可用;TIME3_CHX1~3完全重映射;
RCC->APB2ENR|=1<<0;//使能AFIO时钟
AFIO->MAPR&=0x00fff3ff;
AFIO->MAPR|=0x04000c00;
delay_us(20);
RCC->APB2ENR&=~(1<<0);
/* RCC->APB2ENR|=1<<2; //使能PORTA时钟 设置PA13/14/15 上拉输入 PA2/3 推挽输出 2M .max
GPIOA->CRH&=0X000FFFFF;
GPIOA->CRH|=0X88800000;
GPIOA->CRL&=0XFFFF00FF;
GPIOA->CRL|=0X00002200;
RCC->APB2ENR|=1<<3; //使能PORTB时钟 设置PB3/4/5 上拉输入 PB0/1/6/7/12~15 推挽输出 2M .max
GPIOB->CRH&=0X0000FFFF;
GPIOB->CRH|=0X22220000;
GPIOB->CRL&=0X00000F00;
GPIOB->CRL|=0X22888022;
RCC->APB2ENR|=1<<4; //使能PORTC时钟 设置PC12 上拉输入 P4/5 推挽输出 2M .max
GPIOC->CRH&=0XFFF0FFFF;
GPIOC->CRH|=0X00080000;
GPIOC->CRL&=0XFF00FFFF;
GPIOC->CRL|=0X00220000;
RCC->APB2ENR|=1<<5; //使能PORTD时钟 设置PD2 上拉输入
GPIOD->CRL&=0XFFFFF0FF;
GPIOD->CRL|=0X00000800;*/
RCC->APB2ENR|=1<<3; //使能PORTB时钟 设置PB3/4/5 上拉输入 PB0/1/6/7/12~15 推挽输出 2M .max
GPIOB->CRL&=0X0FFFFFFF;
GPIOB->CRL|=0X20000000;
TES0=0;
BE_i=0;
SK1=0;
SK2=0;
DOUT1=0;
DOUT2=0;
DOUT3=0;
DOUT4=0;
DOUT5=0;
DOUT6=0;
DOUT7=0;
DOUT8=0;
}
void PVD_init(void)//低压中断设置
{
RCC->APB1ENR|=1<<28; //使能PWR时钟
EXTI->IMR|=1<<16; //使能EXTI线16:PVD中断
// EXTI->EMR|=1<<16; //使能EXTI线16:PVD事件
EXTI->RTSR|=1<<16; //使能EXTI线16:PVD上升沿中断 WHY!!
// EXTI->FTSR|=1<<16; //使能EXTI线16:PVD下降沿中断
PWR->CR|=0X90; //使能PVD 监测电压:2.6V
MY_NVIC_Init(1,1,PVD_IRQChannel,2);//抢占1,子优先级1,组2
}
void BOX(void)
{}
void ERR_x(void)
{
if(error0||error_i)
{
EMM++;
if(EMM%10)
{
BE_EN=1;
}
else
{
BE_EN=0;
}
if(EMM>4)
{
EMM=0;
BE_EN=0;
error0=0;
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
LORA FOR STM32_TES1.1.7z
(2.56 MB, 下载次数: 712)
2024-1-2 22:04 上传
点击文件名下载附件
lora stm32
下载积分: 黑币 -5
作者:
szkalwa
时间:
2018-6-11 11:59
感谢分享!
作者:
sulapon
时间:
2018-10-23 16:56
謝謝分享
作者:
小胖波波
时间:
2018-10-23 21:42
是数据打包发送吗
作者:
123zl
时间:
2018-11-7 15:09
嗨喽,占个楼
作者:
zhaozhao88
时间:
2018-11-7 16:38
謝謝分享
作者:
axibag
时间:
2018-11-12 16:22
是啥啊 没看懂啊
作者:
tanpingsea
时间:
2018-11-15 16:52
下载来看看,可能怕没币
作者:
cshxy
时间:
2018-11-25 21:28
感谢分享
作者:
443904894
时间:
2018-12-5 10:35
谢谢分享
作者:
maoweiwei1995
时间:
2018-12-17 16:51
感谢帮顶
作者:
lorabbitve
时间:
2019-1-25 10:05
謝謝分享
作者:
ontheroad
时间:
2019-2-14 11:23
谢谢分享,主要想学习下Lora。
作者:
ccajax
时间:
2019-3-6 22:24
搜藏了额
作者:
astonzorro
时间:
2019-3-8 17:00
谢谢分享,主要想学习下Lora。
作者:
帝凌峰
时间:
2019-3-8 22:46
好像学习一下楼主的编程方法!!!
作者:
ontheroad
时间:
2019-3-12 15:37
SX1278 STM32, 这个太给力了。
作者:
tsljy
时间:
2019-4-8 06:07
感谢分享!黑币不够呀
作者:
smartpilot
时间:
2019-4-9 10:18
感谢分享
作者:
lzq365
时间:
2019-4-13 16:28
多谢楼主分享
作者:
luotaim
时间:
2019-5-17 10:09
我刚看完手册,真的挺不错
作者:
123433054
时间:
2019-6-4 14:56
在多加些说明就更好了
作者:
xiaokancheng
时间:
2019-7-9 16:20
已收藏,谢谢分享
作者:
hbsjz
时间:
2019-7-15 17:48
感谢分享
作者:
yanglongyu123
时间:
2019-7-16 08:54
这个是stm32和SX1278相连的吗???
作者:
zzyzuibang
时间:
2019-7-31 16:10
学习学习
作者:
jianfeii
时间:
2019-7-31 23:00
lora确实是挺好用的
作者:
烟花泪
时间:
2019-9-16 14:15
在学习中,多谢楼主分享
作者:
xzh5508
时间:
2019-10-29 11:07
谢谢分享!
作者:
llz930714
时间:
2019-12-3 21:50
感谢分享
作者:
pillhe
时间:
2019-12-10 22:50
感謝分享
作者:
l雷厉风行l
时间:
2019-12-13 15:56
如果能说明下各个管脚的作用就更好了
作者:
lmusic
时间:
2020-2-2 11:35
官方只给1276没有1278原理图
作者:
lmusic
时间:
2020-2-8 17:49
下载研究lora谢谢
作者:
Alan_Wu
时间:
2020-2-24 22:22
感谢分享
作者:
jiajia86
时间:
2020-3-9 14:32
谢谢分享。
作者:
yby97
时间:
2020-4-3 12:54
谢谢分享
作者:
大漠落日
时间:
2020-4-8 13:38
谢谢分享,正在做开发,参考一下
作者:
voica2008
时间:
2020-6-1 09:08
非常感谢你的分享
作者:
chenziqiang
时间:
2020-6-1 21:33
非常感谢你的分享
作者:
xiaoshigua
时间:
2020-10-18 21:49
lmusic 发表于 2020-2-2 11:35
官方只给1276没有1278原理图
sx1276和sx1278都一样驱动都是通用的
作者:
pcf2000
时间:
2021-7-15 13:56
测试板的电路原理图呢,留半截不分享?!
作者:
pcf2000
时间:
2021-7-15 13:57
可不可以分享一下电路原理图?!感谢
作者:
993347045
时间:
2021-11-2 23:54
好的东西,多谢分享。楼主给力~~~
作者:
993347045
时间:
2021-11-2 23:54
激动,再次感谢楼主
作者:
antyme
时间:
2024-1-2 21:30
不带中文手册
!!!!!
作者:
cliang223
时间:
2024-1-2 23:11
想学习下Lora
作者:
YYZZ052
时间:
2024-4-22 15:31
我想问,,这个怎么实现一对多配对????
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1