標題: LoRa-官方例程移植(白衣盡濕) [打印本頁]
作者: 白兔 時間: 2018-7-4 11:21
標題: LoRa-官方例程移植(白衣盡濕)
X1278芯片上移植Semtech官方PING-PONG例程
移植環(huán)境:keil5.20
硬件平臺:stm32f051+sx1278
1、下載源碼:Semtech官網(wǎng)下載最新例程鏈接:
2、準備文件: SX12xxDrivers-V2.1.0文件夾下只有src為我們需要使用的文件夾,src文件夾下有platform文件夾、radio文件夾和一個文件main.c,platform文件夾存放的是不同硬件平臺的驅(qū)動,我們只需要sx12xxEiger文件夾和platform.h;另外,由于我用的是STM32F0,所以sx12xxEiger文件夾里面有關(guān)其他STM32硬件平臺的文件也都不要,LoRa芯片使用的是SX1278,關(guān)于sx1272、sx1276、sx1232、sx1509的文件也都不要,還有一個radio文件夾,里面關(guān)于sx1272、sx1276、sx1232、sx1509的文件也都不要。
3、在KEIL里建工程,直接拿官方的固件庫來建就行了,不再贅述。把步驟2整理后的文件加到工程中,基本框架就搭好了。
4、啥都不說,先編譯一下,數(shù)不清的錯誤。從main.c文件開始捋一捋,程序過程很簡單,先初始化stm32f0的時鐘,初始化SPI,初始化LED等,初始化systick,接著再初始化6個GPIO口作為sx1278中斷的檢測口,STM32F0的初始化完成了;
5、再復(fù)位LoRa芯片sx1278,復(fù)位完成,然后是初始化LoRa模塊;設(shè)置LoRa工作方式為睡眠模式,設(shè)置射頻通信方式為LoRa模式,設(shè)置工作方式為待機模式,讀取LoRa所有寄存器(111個寄存器,一共112個寄存器,0x00寄存器是讀接收緩存區(qū)的,沒收到數(shù)據(jù),不用讀)的值,這些值是LoRa寄存器的上電缺省值,有些在后面會用到,這里一次性讀了;然后繼續(xù)初始化,設(shè)置LoRa的參數(shù),如:LNA放大增益、通信主頻率、擴頻因子、帶寬、編碼率、超時閾值、天線發(fā)射功率等等等等,了解全部參考datasheet即可。
6、初始化完成后,設(shè)置LoRa為接收模式,然后進入while循環(huán),循環(huán)里面運行函數(shù)SX1276LoRaProcess(),這個函數(shù)最為重要,是整個程序的核心,函數(shù)里面類似于一個狀態(tài)機,LoRa的個個狀態(tài)下都有相應(yīng)的實現(xiàn)代碼,完成動作(比如完成一次接受)后,返回相應(yīng)的值,通過調(diào)用這個函數(shù),判斷它的返回值,來確定下一步動作。
7、整個例程的工作流程到這里就結(jié)束了。例程有地方不太明白,就多看幾遍,基本就理解了。
8、分析完了程序的工作流程,開始調(diào)試;先試一試SPI通信是否正常,SX1276ReadBuffer( REG_LR_OPMODE, &buff, 1 );,讀取當前工作模式,通過查看返回值判斷通信是否正常;然后就切換到接收模式,發(fā)送一個字符串;發(fā)送完成,切換到接收模式,接收到數(shù)據(jù),再切換到發(fā)送模式,發(fā)送一個字符串,如此循環(huán);
9、為了方便調(diào)試,用串口把接收到的數(shù)據(jù)打印出來,同時,接收到數(shù)據(jù)后,讓LED1燈狀態(tài)翻轉(zhuǎn)一下,發(fā)送完成后,讓LED2狀態(tài)翻轉(zhuǎn)一下。移植到此就完成了。
10、debug小技巧,官方給的源文件里面,有很多代碼你都沒有用到,建議把他們都屏蔽掉,還有宏也是,這樣報錯會少很多。
貼一下我的工程目錄:
也有沒用到的.c文件,把里面的內(nèi)容注釋了。
已上,完!
作者: 1185928523 時間: 2018-8-19 20:51
不錯,好資料,51黑有你更精彩!!!
作者: ontheroad 時間: 2019-3-27 09:24
太好了,多謝樓主提供了對Lora官方例程的分析。這下才能理解很多為什么。
歡迎光臨 (http://www.zg4o1577.cn/bbs/) |
Powered by Discuz! X3.1 |
主站蜘蛛池模板:
久久久国产一区二区三区
|
99国产视频
|
午夜精品一区二区三区在线视
|
激情三区
|
欧美h|
亚洲免费在线
|
国产成人免费在线
|
亚洲综合无码一区二区
|
福利片在线观看
|
久草网址
|
在线观看国产视频
|
欧美日韩专区
|
99亚洲综合|
亚洲精品日韩在线
|
99re视频在线观看
|
jav成人av免费播放
|
天天干夜夜操
|
91国内外精品自在线播放
|
国产高清视频
|
免费一级片
|
国产伦精品一区二区三区高清
|
国产日韩精品在线
|
中文一区二区视频
|
国产午夜精品一区二区三区在线观看
|
免费性视频
|
97免费视频在线观看
|
久久精品99|
国产黄色在线观看
|
av黄色在线|
米奇7777狠狠狠狠视频
|
成人精品在线
|
久久久久久精
|
精品国产一区二区三区久久久久久
|
午夜影院在线观看版
|
精品小视频
|
精品亚洲永久免费精品
|
精品国产乱码一区二区三
|
国产精品久久久久久网站
|
一级黄a视频
|
综合九九
|
中文字幕精品一区二区三区精品
|