第一節硬件解讀
說明:以下內容為藍橋杯官方提供的資料,公子只對其進行整理發布:
ZM433/470SX-M 模塊是廣州致遠電子有限公司自主研發的一款工業級射頻無線產品。模塊采用源自軍用戰術通信系統的 LoRa 調制技術設計,完美解決了小數據量 在復雜環境中的超遠距通信問題。相較傳統調制技術, ZM433/470SX-M 模塊在抑制同頻干擾具有明顯優勢,解決了傳統設計方案無法同時兼顧距離、抗擾和功耗的弊端。另外,芯片集成了+20dBm的可調功率放大器,可獲得超過-148dBm 的接收靈敏度,鏈路預算達到了行業領先水平,針對應用于遠距離傳輸且對可靠性要求極高的場合,該方案是不二之選。
而藍橋杯物聯網的開發板板載的Lord原理圖如下:
從圖中可以看出,該Lora是采用SPI的方式。有人問,為什么還有USART?因為串口的2個引腳是支持編程的。這從官方提供的手冊中可以看出。
第二節環境配置
本次例程還是在OLED的例程上修改,修改的唯一一處是勾選Debug,其他的配置不需要修改。
第三節編寫代碼
1,打開官方提供的賽點資源包,直接打開LoRa_STM32L0_API這個文件夾,如下圖:
2,將文件夾中的.c文件復值并添加到STM32CubeMX生成的項目的Src這個文件夾中,如下圖:
3,將文件夾中的.h文件復值并添加到STM32CubeMX生成的項目的Inc這個文件夾中,如下圖:
4,打開項目,對項目進行編譯,會提示0錯錯誤,0警告。
5,對項目添加.h文件,選擇文件的時候要選擇Inc這個文件夾。如下圖:
6,對項目添加.c文件,選擇文件的時候要選擇Src這個文件夾下所有的.c文件。如下圖:
7,我們選中spi.c文件,修改如下兩處,原因是藍橋杯官方提供是LL庫,我們學習的是HAL庫。具體改動如下:
8,將Lora.c文件全部注釋掉。
9,同樣的道理,由于藍橋杯官方提供是LL庫,我們學習的是HAL庫。所以需要改動三處,具體改動如下:
10,最后,所有的底層都搞好了,開始編寫頂層函數。
11,項目需要的頭文件,變量,宏定義如下圖:
12,還是需要初始化OLED,具體函數如下:
13,所有函數的初始化,局部變量,如下圖:
14,while里面的函數如下圖:
15,編譯代碼,配置下載器并開始下載。
第四節 實驗現象
實驗注意事項:
1,程序語句需要位于程序的BEGIN與END之間。
3,CN4所有撥碼開關必須選擇ON DP檔,否則無法下載程序。
實驗現象:
LD1,LD4常亮。按下按鍵,OLED第一行顯示“TX:11”,此時另外一塊開發板的OLED第二行顯示“OLED:ON”,并且LD5常亮;再次按下按鍵,OLED第一行顯示“TX:10”,此時另外一塊開發板的OLED第二行顯示“OLED:OFF”,并且LD5常滅。
宗旨:
免費的服務,永遠的開源
說明:
1.本教程免費,開源,禁止用于任何商業用途,違者必究。
2.本教程版權所屬為東莞市東城墨竹公子電子工作室,盜版必究。
3.資料下載請通過以下方式:
微信公眾號:撞上電子
CSDN:撞上電子
掘金:撞上電子
今日頭條:撞上電子
淘寶企業店:撞上電子
--東莞市東城墨竹公子電子工作室
--墨竹公子
--2021.12.25
-
模塊
+關注
關注
7文章
2717瀏覽量
47546
發布評論請先 登錄
相關推薦
評論