硬件设备:
硬件设备(两个正点原子lora模组)
两块STM32F103开发板
快速上手,你必须要了解的相关知识:
模块引脚分布,拿到一个模块先弄清如何连接线路十分重要。
引脚号 | 功能 |
1.MOD | 1、 配置进入参数设置 |
2.AUX | 1、 用于指示模块工作状态, 用户唤醒外部 MCU |
3.RXD | TTL 串口输入, 连接到外部 TXD 输出引脚 |
4.TXD | TTL 串口输出, 连接到外部 RXD 输入引脚 |
5.GND | 地线 |
6.VCC | 3.3V~5V 电源输入 |
对于RXD、TXD、GND、VCC引脚不再赘述,重点关注一下MOD和AUX引脚,具体有什么用呢?
状态 | 模式 |
AUX = 0; MOD = 1; | 配置模式(AT指令配置) |
AUX = 0; MOD = 0; | 无线通信模式 |
AUX = 1; MOD = 1;(一起持续1S时间) | 固件升级模式 |
对于固件升级模式我们暂且不与研究,毕竟还不会走,别想着跑了,那叫自不量力。先来研究一下无线通信模式具体包括哪些呢?有些同学想一个Lora节点接收好多点的数据,觉得这样很有成就感,哈哈哈。当然,我想着都感觉美滋滋,那么来仔细看一下:
01.透明传输:(针对设备相同地址,相同信道的之间通信)。
02.定向传输: (针对地址不同,信道不同的设备之间通信),假如A设备地址为0x1400 信道为0x17 ,B设备地址为0x1234 信道为0x10,则通讯格式如下图,数据形式为:高地址+低地址+信道+用户数据
03.广播与数据监听:完全可以在此模式下实现一对多检测,满足您的好奇心。模块地址设置为0XFFFF,可以监听相同信道上所有的数据传输。
那么问题来了?模块工作的地址是多少?所在的信道是多少啊?怎么获取,如何得到?这就是配置模式的作用,通过设置AUX = 0; MOD = 1; 进入配置模式,使用AT指令来查询和修改模块的地址和信道。说干就干,打开串口助手,将模块与STM32F103开发板连接,接线示意图如下,只使用开发板板载的CH340来配置模块。
MOD | AUX | RXD | TXD | GND | VCC |
3.3V | 悬空 | CH340-TXD | CH340-RXD | 0V | 5V |
硬件连接示意图如下:
发送AT指令,模块回复OK ,可以继续对模块进行正常参数配置和查询。
补充一下常用的AT命令:
AT命令 | 含义 |
AT+ADDR=? | 查询设备配置地址范围 |
AT+ADDR? | 查询设备地址 |
AT+ADDR= | 配置设备地址 |
AT+TPOWER=? | 查询发射功率配置范围 |
AT+TPOWER? | 查询发射功率 |
AT+TPOWER= | 配置发射功率 |
AT+WLRATE=? | 查询无线速率和信道配置范围 |
AT+WLRATE? | 查询无线速率和信道 |
AT+WLRATE= | 配置无线速率和信道 |
AT+UART=? | 查询串口配置范围 |
AT+UART? | 查询串口配置 |
AT+UART= | 配置串口 |
AT+CWMODE=? | 查询配置工作模式范围 |
AT+CWMODE? | 查询工作模式 |
AT+CWMODE= | 配置工作模式 |
AT+TMODE=? | 查询配置发送状态范围 |
AT+TMODE? | 查询发送状态 |
AT+TMODE= | 配置发送状态 |
AT+WLTIME=? | 查询配置休眠时间范围 |
AT+WLTIME? | 查询休眠时间 |
AT+WLTIME= | 配置休眠时间 |
使用串口来通讯一下,感受Lora模组的风采!
Lora模组先按照配置模式来接线。
MOD | AUX | RXD | TXD | GND | VCC |
3.3V | 悬空 | CH340-TXD | CH340-RXD | 0V | 5V |
两个模块都按照一下方式进行配置。
再将Lora模组按照通讯模式来接线。
MOD | AUX | RXD | TXD | GND | VCC |
0V | 悬空 | CH340-TXD | CH340-RXD | 0V | 5V |
两个Lora模组测试过程截图如下