久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
SX1276_EasyLink_按鍵源碼 lora資料
[打印本頁]
作者:
丁后莊
時間:
2018-10-21 15:05
標題:
SX1276_EasyLink_按鍵源碼 lora資料
sx1276可以參考下
0.png
(37.68 KB, 下載次數: 29)
下載附件
2018-10-22 17:34 上傳
單片機源程序如下:
////////////////////////////////////////////////////////////////////////////////
// 文件名: main_tx/rx
// 版本: v1.0
// 工作環境: IAR v5.30
// 作者: 于海波
// 生成日期: 2013.12
// 功能: A發送包給B,黃燈閃爍,B模塊接到數據紅燈閃爍,B將數據回傳給A模塊,
// A接到數據后紅燈閃爍, 循環次操作,
// 相關文件:
// 修改日志:
////////////////////////////////////////////////////////////////////////////////
#include <string.h>
#include <stdint.h>
#include <stdbool.h>
#include "driver.h"
#include "sx1276-f4152-Hal.h"
#include "LSD_RF_SX1276.h"
#include "LSD_RF_APPrf.h"
#include "clock.h"
//===================================定義變量===================================================
long SysTick = 0;
uint8_t TXbuffer[30]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29};
uint8_t WakeAddr[8]={5,6,7,8,9,10,11,7};
uint8_t Rxbuffer[64];
//===================================函數聲明===================================================
//===============================================================================================
////////////////////////////////////////////////////////////////////////////////
// 功能描述 : 主函數
// 輸入參數 : 無
// 返回參數 : 無
// 說明 :
////////////////////////////////////////////////////////////////////////////////
typedef enum{
Nope,
B1080bps,//BW = 125KHz SF = 9 CR = 4_6
B4000bps,//BW = 125KHz SF = 7 CR = 4_5
B14000bps,//BW = 500KHz SF = 7 CR = 4_6
}t_Baudrate;
t_Baudrate Baudrate = Nope;
unsigned char *point;
unsigned char LCD_p[9] = {0,0,0,0,0,8,0,1,0xff};
int T_Cnt = 0;
int R_Cnt = 0;
bool RESET_Flag = false;
void main( void )
{
WDTCTL = WDTPW + WDTHOLD; // 關閉看門狗
platform_init(); //測試底板初始化
LEDONBAND(LEDALL); //初始化過程點亮所有LED燈
KEYBOARD_DIR &=~ (KEY_S1+KEY_S2);
KEYBOARD_IFG &=~ (KEY_S1+KEY_S2);
KEYBOARD_IES |= (KEY_S1+KEY_S2);
KEYBOARD_IE |= (KEY_S1+KEY_S2);
point = (unsigned char *)(&(G_LoRaConfig.BandWidth));
flash_read(FLASH_ADDRESS_D,point,3*2);
if(G_LoRaConfig.BandWidth>BW500KHZ){
G_LoRaConfig.BandWidth=BW125KHZ;
G_LoRaConfig.SpreadingFactor = SF09;
G_LoRaConfig.CodingRate = CR_4_6;
flash_seg_clear(FLASH_ADDRESS_D);//寫之前必清除
flash_write(FLASH_ADDRESS_D,point,3*2);
}
if(G_LoRaConfig.BandWidth==BW500KHZ){
Baudrate = B14000bps;
LCD_p[8] = 1;
LCD_p[7] = 4;
LCD_p[6] = 0;
LCD_p[5] = 0;
LCD_p[4] = 0;
}
else{
if(G_LoRaConfig.SpreadingFactor==SF07){
Baudrate = B4000bps;
LCD_p[8] =0xff;
LCD_p[7] = 4;
LCD_p[6] = 0;
LCD_p[5] = 0;
LCD_p[4] = 0;
}
else{
Baudrate = B1080bps;
LCD_p[8] =0xff;
LCD_p[7] = 1;
LCD_p[6] = 0;
LCD_p[5] = 8;
LCD_p[4] = 0;
}
}
lcd_init();
LCD_Disp_ALL_Num(LCD_p);
//配置各個參數
G_LoRaConfig.LoRa_Freq = 470000000; //中心頻點470MHz
//G_LoRaConfig.BandWidth = BW125KHZ; //BW = 125KHz
//G_LoRaConfig.SpreadingFactor = SF09; //SF = 9
//G_LoRaConfig.CodingRate = CR_4_6; //CR = 4/6
G_LoRaConfig.PowerCfig = 15; //19±dBm
G_LoRaConfig.MaxPowerOn = true;
G_LoRaConfig.CRCON = true; //CRC開啟
G_LoRaConfig.ExplicitHeaderOn = true; //Header開啟
G_LoRaConfig.PayloadLength = 20; //數據包長度
if(SX127x_init()!=NORMAL) WDTCTL=0; //無線模塊初始化失敗復位
KEYBOARD_IE |= (KEY_S1+KEY_S2);
_EINT(); //開總中斷
LEDOFFBIT(LEDALL); //初始化完畢關閉所有LED燈
ON_Timerout(); //開啟定時器,1s一發數據
while(1)
{
LPM3;
if(RESET_Flag==true){
flash_seg_clear(FLASH_ADDRESS_D);//寫之前必清除
flash_write(FLASH_ADDRESS_D,point,3*2);
WDTCTL = 0;//RESET
}
LSD_RF_RXmode(); //每次發送一包數據后,進入接收狀態,等待B模塊應答
LCD_p[0] = T_Cnt%10;
LCD_p[1] = T_Cnt/10%10;
LCD_p[2] = R_Cnt%10;
LCD_p[3] = R_Cnt/10%10;
LCD_Disp_ALL_Num(LCD_p);
if(T_Cnt>=100)
T_Cnt = 0;
if(R_Cnt>=100)
R_Cnt = 0;
}
}
////////////////////////////////////////////////////////////////////////////////
// 功能描述 : 無線接收數據中斷入口
// 輸入參數 : 無
// 返回參數 : 無
// 說明 :
////////////////////////////////////////////////////////////////////////////////
#pragma vector = PORT1_VECTOR
__interrupt void port1_isr(void)
{
if(KEYBOARD_IFG&(KEY_ALL)){
char Keys_Flag = KEYBOARD_IFG&(KEY_ALL);
switch(Keys_Flag&(KEY_S1|KEY_S2)){
case KEY_S1:
switch(Baudrate){
case B1080bps:
G_LoRaConfig.BandWidth = BW125KHZ; //BW = 125KHz
G_LoRaConfig.SpreadingFactor = SF07; //SF = 9
G_LoRaConfig.CodingRate = CR_4_5; //CR = 4/6
Baudrate = B4000bps;
break;
case B4000bps:
G_LoRaConfig.BandWidth = BW500KHZ; //BW = 125KHz
G_LoRaConfig.SpreadingFactor = SF07; //SF = 9
G_LoRaConfig.CodingRate = CR_4_6; //CR = 4/6
Baudrate = B14000bps;
break;
case B14000bps:
default:
G_LoRaConfig.BandWidth = BW125KHZ; //BW = 125KHz
G_LoRaConfig.SpreadingFactor = SF09; //SF = 9
G_LoRaConfig.CodingRate = CR_4_6; //CR = 4/6
Baudrate = B1080bps;
break;
}
RESET_Flag = true;
LPM3_EXIT;
break;
case KEY_S2:
T_Cnt = 0;
R_Cnt = 0;
break;
default:
break;
}
KEYBOARD_IFG &= ~KEY_ALL;
return;
}
if(DIO0_IFG) //判斷是否是DIO0引起的中斷
{
DIO0_IFG = 0; //清除DIO0中斷標志位
LSD_RF_RxPacket(Rxbuffer); //接收數據包
if((Rxbuffer[2]==2)&&(Rxbuffer[5]==5))
{
LEDONBIT(LED1); //狀態指示燈
DelayMs(60);
LEDOFFBIT(LED1); //狀態指示燈
R_Cnt++;
}
LPM3_EXIT;
}
P1IFG=0;
}
////////////////////////////////////////////////////////////////////////////////
// 功能描述 : 超時定時器
// 輸入參數 : 無
// 返回參數 : 無
// 說明 : 用于誤喚醒,或喚醒失敗后超時時間到后重新進入WOR
////////////////////////////////////////////////////////////////////////////////
#pragma vector = TIMER1_A0_VECTOR
__interrupt void Timer1_A0_ISR()
{
LEDONBIT(LED3);//發送狀態指示燈
G_LoRaConfig.PayloadLength = 20;
LSD_RF_SendPacket(TXbuffer);//發送30個字節數據測試
T_Cnt++;
LEDOFFBIT(LED3);//發送狀態指示燈
LPM3_EXIT;
}
復制代碼
所有資料51hei提供下載:
SX1276_EasyLink_2F717NXX按鍵.zip
(398.45 KB, 下載次數: 18)
2018-10-21 15:04 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
超碰av免费
|
综合五月
|
一级a性色生活片久久毛片 午夜精品在线观看
|
国产亚洲精品一区二区三区
|
精产国产伦理一二三区
|
亚洲一二三区精品
|
91av导航
|
最新黄色毛片
|
操到爽
|
超碰在线网站
|
久久久久久久av麻豆果冻
|
国产亚洲成av人片在线观看桃
|
久久国产99
|
一二三四在线视频观看社区
|
国产精品精品视频一区二区三区
|
超碰人人人人
|
国产美女在线播放
|
中文字幕一区在线观看视频
|
一级aaaa毛片
|
五月婷婷中文
|
国产精品一区二区av
|
91精品国产综合久久婷婷香蕉
|
亚洲一二三区精品
|
少妇一级淫片免费播放
|
久久国产综合
|
国产午夜精品一区二区三区
|
青青草综合网
|
亚洲 成人 在线
|
2018天天干天天操
|
欧美精品久久久
|
国产精品美女久久久久久免费
|
国产玖玖
|
国产日韩欧美在线
|
欧美日韩国产一区二区三区
|
日本天堂视频在线观看
|
精品久久99
|
亚洲精品一区在线观看
|
欧美日韩综合视频
|
国产精品久久久久国产a级 欧美日本韩国一区二区
|
亚洲精品日韩综合观看成人91
|
日本精品视频在线
|