0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

應(yīng)用開發(fā)筆記 | 米爾MYD-YA15XC-T LoRa無線通訊實(shí)例

米爾電子 ? 2021-08-06 15:12 ? 次閱讀

?1.概述

本文主要基于LoRa調(diào)制功能的無線串口模塊的樹莓派擴(kuò)展板,講述在M4核LoRa的調(diào)試過程。

2.硬件資源

?Typec Debug線1根

?Micro usb線1根

?MYD-15XC-T開發(fā)板

?樹莓派接口SX1262 868M LoRa HAT模塊2個(gè)

3.軟件資源

?Linux 5.4.31

?STM32CubeIDE 1.5.0

?LInux虛擬機(jī)

?米爾提供的SDK

4.環(huán)境準(zhǔn)備

預(yù)先安裝好CubeIDE等開發(fā)軟件并搭建好Linux虛擬機(jī)環(huán)境,具體環(huán)境搭建請參考米爾的軟件開發(fā)手冊《MYD-YA15XC-T_Linux軟件開發(fā)指南》。

5.操作步驟

5.1.硬件介紹與設(shè)置

1)硬件介紹

關(guān)于樹莓派接口SX1262 868M LoRa HAT模塊的硬件介紹與設(shè)置請參考微雪官網(wǎng):

https://www.waveshare.net/wiki/SX1262_868M_LoRa_HAT

2)接線與設(shè)置

需要兩個(gè)LoRa模塊,一個(gè)LoRa模塊通過Micro USB連接至PC,跳帽置于A,M1和M0連接GND,打開SSCOM串口軟件連接LoRa模塊。另外一個(gè)LoRa模塊跳帽連接B,M0、M1跳帽移除改用MYD-YA15XC-T開發(fā)板的GPIO使用,如下圖所示:

poYBAGEM3zSAeoEfAArC5pDF_LY175.png

圖5-1. 連接與配置

5.2.CubeMX配置

設(shè)置時(shí)鐘為209M,如下圖只需要在紅色框輸入209M,按“Enter”,會自動設(shè)置時(shí)鐘參數(shù):

poYBAGEM30GAFAm5AAClo0QsK90560.png

圖 5-1.時(shí)鐘設(shè)置

由于該模塊通訊接口使用的是串口,所以還需要設(shè)置usart外設(shè),并使能中斷:

pYYBAGEM31iAf1wPAAFojqVaL2Q756.png

圖 5-2.串口設(shè)置

接著勾選串口中斷,通過中斷收發(fā):

pYYBAGEM32mAHZ7GAAEBrHHDY1Y795.png

圖5-3.串口中斷

5.3.軟件設(shè)計(jì)

由5.2節(jié)生成代碼之后,在工程目錄新建“LoRa”目錄,用來存放LoRa的配置代碼(微雪官網(wǎng)有該模塊設(shè)置源碼,用戶可以直接移植):

pYYBAGEM33WAA8tpAADNY7ApY_s838.png

設(shè)置寄存器配置模式,這里首先需要設(shè)置模式2進(jìn)行寄存器配置:

void cfg_sx126x_io(uint8_t status)

{

if(CFG_REGISTER == status){

M0_RESET();

M1_SET();

HAL_Delay(5);

}else if(NORMAL_STATUS == status){

M0_RESET();

M1_RESET();

HAL_Delay(5);

}else if(WOR_STATUS == status){

M0_SET();

M1_RESET();

HAL_Delay(5);

}else if(SLEEP_STATUS == status){

M0_SET();

M1_SET();

HAL_Delay(5);

}

}

配置寄存器,設(shè)置波特率9600,廣播監(jiān)聽地址:

/******************************************************************************

sx126x mode :broadcast & monitor mode

parameter:

address_high:0xff

address_low:0xff

net_id: 0x00

serial:0x62

power: 0x00

channel: 0x12

transmission_mode: 0x03

crypt_high: 0x00

crypt_low: 0x00

******************************************************************************/

lora_para_t transparent_mode = {

.address_high = BROADCAST_ADDH_VALUE,

.address_low = BROADCAST_ADDL_VALUE,

.net_id = BROADCAST_NETID_VALUE,

.serial = BROADCAST_SERIAL_VALUE,

.power = BROADCAST_POWER_VALUE,

.channel = BROADCAST_CHANNEL_VALUE,

.transmission_mode = BROADCAST_TRANSIMISSION_VALUE,

.crypt_high = BROADCAST_CRYPTH_VALUE,

.crypt_low = BROADCAST_CRYPTL_VALUE

};

設(shè)置寄存器:

uint8_t sx126x_write_register(lora_para_t para)

{

int8_t i;

buffer[0] = CFG_HEADER;

buffer[1] = REG_START;

buffer[2] = REG_NUMBER;

for(i=3;i<12;i++){

buffer[i] = *(?.address_high + i - 3);

}

HAL_UART_Transmit_IT(&huart3,(uint8_t *)buffer,12);

HAL_UART_Receive_IT(&huart3,(uint8_t *)buffer,12);

HAL_Delay(500);

if(CFG_RETURN == buffer[0]){

buffer[0] = 0;

init_cplt_flag = SUCCESS;

return SUCCESS;

}

return ERROR;

}

定義發(fā)送的信息

/* USER CODE BEGIN 1 */

uint8_t transparent_string[] = "Helloworld";//"This is a transparent message\r\n";

uint32_t delay;

/* USER CODE END 1 */

主函數(shù)里,使用串口中斷進(jìn)行發(fā)送和接收處理:

/* Infinite loop */

/* USER CODE BEGIN WHILE */

while (1)

{

/* USER CODE END WHILE */

/* USER CODE BEGIN 3 */

if(delay++>18000000){

HAL_UART_Transmit_IT(&huart3,transparent_string,strlen((const char *)transparent_string));

delay = 0;

}

if(SUCCESS == over_flag){

HAL_UART_Transmit_IT(&huart3,buffer,strlen((const char *)buffer));

over_flag = ERROR;

rece_count = 0;

HAL_UART_Receive_IT(&huart3,(uint8_t *)&rece_buff,1);

}

}

5.4.測試

1)量產(chǎn)模式啟動m4固件

啟動開發(fā)板,并啟動m4固件,如下:

root@myir-ya151c-t-4e512d:~# cp LoRa_CM4.elf /lib/firmware/

root@myir-ya151c-t-4e512d:~# echo LoRa_CM4.elf > /sys/class/remoteproc/remotepro

c0/firmware

root@myir-ya151c-t-4e512d:~# echo start > /sys/class/remoteproc/remoteproc0/stat

e

[ 82.845983] remoteproc remoteproc0: powering up m4

[ 82.859219] remoteproc remoteproc0: Booting fw image LoRa_CM4.elf, size 2532532

[ 82.865319] remoteproc remoteproc0: header-less resource table

[ 82.870883] remoteproc remoteproc0: no resource table found for this firmware

[ 82.884297] remoteproc remoteproc0: header-less resource table

[ 82.888689] remoteproc remoteproc0: remote processor m4 is now up

2)信息接收

打開sscom,可以看到usb控制的LoRa模塊能接收到數(shù)據(jù),如下圖所示:

poYBAGEM35aALJ4uAAGKmoVxTcM661.png

圖 5-2.數(shù)據(jù)接收

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    4834

    瀏覽量

    96820
收藏 人收藏

    評論

    相關(guān)推薦

    Openharmony軟件評估指南-米爾瑞芯微RK3568開發(fā)

    的快速入門指南 《MYD-LR3568 量產(chǎn)指導(dǎo)文檔》 量產(chǎn)指導(dǎo)文檔 應(yīng)用筆記 案例開發(fā)筆記(暫無) 原廠資料 MYD-image-OpenHarmony4.img 全功能
    發(fā)表于 09-06 20:06

    基于LORA無線通訊技術(shù)的XKCON祥控多點(diǎn)溫度監(jiān)測系統(tǒng)支持用戶根據(jù)實(shí)際監(jiān)測需求,進(jìn)行靈活布置

    中的必要指標(biāo),針對多點(diǎn)溫度監(jiān)測,濟(jì)南祥控自動化設(shè)備有限公司開發(fā)了基于LORA無線通訊技術(shù)的多點(diǎn)溫度監(jiān)測系統(tǒng),該系統(tǒng)主要由多點(diǎn)溫度檢測儀、無線通訊網(wǎng)關(guān)與監(jiān)管軟件組成,與傳統(tǒng)的有線監(jiān)測系統(tǒng)
    的頭像 發(fā)表于 07-18 17:45 ?252次閱讀
    基于<b class='flag-5'>LORA</b><b class='flag-5'>無線通訊</b>技術(shù)的XKCON祥控多點(diǎn)溫度監(jiān)測系統(tǒng)支持用戶根據(jù)實(shí)際監(jiān)測需求,進(jìn)行靈活布置

    國產(chǎn)PLC能否使用無線通訊終端來實(shí)現(xiàn)無線通訊?讓我們一探究竟

    PLC無線通訊設(shè)備來解決該問題。本方案以匯川H5U PLC為例,驗(yàn)證測試兩臺匯川PLC之間在ModbusTCP/IP通訊協(xié)議下,快速實(shí)現(xiàn)自組網(wǎng)無線通訊的解決方案。在本方案中采用了達(dá)泰日系PLC
    的頭像 發(fā)表于 07-09 17:37 ?1330次閱讀
    國產(chǎn)PLC能否使用<b class='flag-5'>無線通訊</b>終端來實(shí)現(xiàn)<b class='flag-5'>無線通訊</b>?讓我們一探究竟

    米爾基于NXP iMX.93開發(fā)板的M33處理器應(yīng)用開發(fā)筆記

    資源MYD-LMX9X開發(fā)板(米爾基于NXPiMX.93開發(fā)板)3.軟件資源Windows7及以上版本軟件:IAREmbeddedWorkbench4.板載固件調(diào)試
    的頭像 發(fā)表于 06-29 08:01 ?1137次閱讀
    <b class='flag-5'>米爾</b>基于NXP iMX.93<b class='flag-5'>開發(fā)</b>板的M33處理器應(yīng)用<b class='flag-5'>開發(fā)筆記</b>

    米爾T527系列加推工控板和工控機(jī),更多工業(yè)場景DEMO

    更靈活地開發(fā)各種創(chuàng)新應(yīng)用。米爾為滿足不同的客戶需求,推出基于全志T527的全系列的產(chǎn)品:米粉派T527、MYD-LT527-SX商顯板等等。
    發(fā)表于 06-21 17:54

    米爾T527系列加推工控板和工控機(jī),更多工業(yè)場景DEMO

    更靈活地開發(fā)各種創(chuàng)新應(yīng)用。米爾為滿足不同的客戶需求,推出基于全志T527的全系列的產(chǎn)品:米粉派T527、MYD-LT527-SX商顯板等等。
    的頭像 發(fā)表于 06-21 08:01 ?313次閱讀
    <b class='flag-5'>米爾</b><b class='flag-5'>T</b>527系列加推工控板和工控機(jī),更多工業(yè)場景DEMO

    PLC無線通訊模塊在觸摸屏與臺達(dá)PLC之間的應(yīng)用教程

    本方案可以作為信捷觸摸屏與臺達(dá)PLC之間在臺達(dá)專用協(xié)議下將有線通訊改為無線通訊的應(yīng)用實(shí)例。此方案中信捷TG765觸摸屏作為主站,臺達(dá)DVP-32EH PLC作為從站,采用西安達(dá)泰電子日系PLC
    的頭像 發(fā)表于 05-27 09:57 ?1048次閱讀
    PLC<b class='flag-5'>無線通訊</b>模塊在觸摸屏與臺達(dá)PLC之間的應(yīng)用教程

    AEW110系列無線通訊轉(zhuǎn)換器

    產(chǎn)品簡介 功能: AEW110系列無線通訊轉(zhuǎn)換器主要用于輔助RS485設(shè)備進(jìn)行無線組網(wǎng),通過將通訊數(shù)據(jù)在RS485信號與無線信號之間互轉(zhuǎn),完成普通RS485設(shè)備的
    的頭像 發(fā)表于 02-29 13:13 ?470次閱讀
    AEW110系列<b class='flag-5'>無線通訊</b>轉(zhuǎn)換器

    plc無線通訊模塊怎么用 PLC編程的注意事項(xiàng)

    的應(yīng)用場景和需求,選擇適合的無線通信技術(shù),例如Wi-Fi、藍(lán)牙、LoRa、Zigbee等。每種無線通信技術(shù)都有其自身的特點(diǎn)和適用范圍,需要根據(jù)實(shí)際情況進(jìn)行選擇。 熟悉PLC無線通訊模塊
    的頭像 發(fā)表于 02-19 15:36 ?1027次閱讀

    plc無線通訊模塊怎么用 plc無線通訊模塊怎么編程

    PLC無線通訊模塊是一種可以將PLC與其他設(shè)備無線連接的模塊,使得PLC可以與其他設(shè)備進(jìn)行數(shù)據(jù)交流和控制。本文將介紹PLC無線通訊模塊的基本原理、使用方法以及編程開發(fā)的步驟。 一、PL
    的頭像 發(fā)表于 01-25 16:15 ?1768次閱讀

    安科瑞數(shù)據(jù)中心AMB智能小母線監(jiān)控解決方案 RS485有線或LORA無線通訊

    安科瑞數(shù)據(jù)中心AMB智能小母線監(jiān)控解決方案 RS485有線或LORA無線通訊
    的頭像 發(fā)表于 01-17 08:59 ?480次閱讀
    安科瑞數(shù)據(jù)中心AMB智能小母線監(jiān)控解決方案 RS485有線或<b class='flag-5'>LORA</b><b class='flag-5'>無線通訊</b>

    無線通訊干擾源分析及解決辦法

    無線通訊設(shè)備穩(wěn)定不穩(wěn)定?”這個(gè)問題若是被工廠的技術(shù)人員提出的話,99%的人都希望得到一個(gè)關(guān)于無線產(chǎn)品可靠性的答案。如果單從技術(shù)層面來說明,由實(shí)驗(yàn)室出具的產(chǎn)品可靠性數(shù)據(jù)分析報(bào)告就可回答這個(gè)問題。但
    的頭像 發(fā)表于 12-27 09:07 ?570次閱讀
    <b class='flag-5'>無線通訊</b>干擾源分析及解決辦法

    基于RS232的無線通訊終端系統(tǒng)設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于RS232的無線通訊終端系統(tǒng)設(shè)計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 11-08 15:03 ?0次下載
    基于RS232的<b class='flag-5'>無線通訊</b>終端系統(tǒng)設(shè)計(jì)

    PLC無線通訊模塊_GRM110系列

    GRM110 系列PLC無線通訊模塊由廣州巨控科技開發(fā)。它采用 LORA 無線通訊方式,相對傳統(tǒng)的數(shù)傳電臺,距 離增加 2 倍以上。能適應(yīng)點(diǎn)對點(diǎn)、點(diǎn)對多點(diǎn)的
    的頭像 發(fā)表于 10-30 09:30 ?860次閱讀
    PLC<b class='flag-5'>無線通訊</b>模塊_GRM110系列

    觸摸屏與施耐德PLC之間MODBUS無線通訊

    觸摸屏與施耐德PLC之間MODBUS無線通訊
    的頭像 發(fā)表于 10-25 09:03 ?1362次閱讀
    觸摸屏與施耐德PLC之間MODBUS<b class='flag-5'>無線通訊</b>