HC-14模块
HC-14 是汇承家最新的LORA模块,目前只能HC-14间的通信,不支持其他LORA模块间互联,最大通信距离为3KM(S1速率下),拥有50个信道,8种速率,UART通信,和他们家的HC12一样只需要使用3个引脚即可进行操作,非常便捷。
目前初学者套餐不到20,非常适合入手一个。
接线
PICO --HC-14
vcc -- vcc
gnd -- gnd
0 -- rx
1 -- tx
2 -- key

PICO有2路UART,分别为0和1。
uart0默认为tx:0,rx:1;
uart0:0,1 12,13 16,17
uart1:4,5 8,9
初始化
from machine import Pin,UART
key=Pin(2,Pin.OUT)
uart=UART(0,9600)
通信设置:AT指令
使用AT指令对模块进行设置
首先需要将KEY引脚设置为低电平。
key.value(0)
uart.write("AT")
uart.read()
#返回b'OK\r\n' 即可,
在使用AT指令时每个write步骤后务必等待0.1s
uart.write("AT+C003")
#设置003信道
共50个信道,但是务必加上0,如13信道请使用AT+C013
uart.write("AT+S2")
#设置速率为2,默认为3
1-8共8总速率,最大发射1000个字节,请务必每个信息多次发射,避免丢失或者错误,且速率约小速度约慢,通信越远。
设置通信速率1,最慢但是距离最远(最大40字节/4.7秒)超过40字节分包
相关速率请看下表
速率:每个包:发送每个包所用时间
1,2 :40: 4.8s,2.7s
3,4:80:2.4s,1.4s
5,6,7,8:160:1.4s,0.9s,0.7s,0.4s
uart.write("AT+RX")
查看配置
C 信道 S 速率 B 波特率 P 信号功率 RX 配置 V 固件版本
?为查询目前配置
通信
使用AT指令设置完即可通信,请将key设置为高电平;
key.value(1)
uart.write("1234456666")
另一个模块即可接收,请务必使用重发来保证信号安全。
uart.read()
将bytes转换为str
c=uart.read()
c.decode("utf-8")
str(c,"utf-8")
pico的micropython版本已经更新到了1.19了,之前hc-12 的教材使用的是1.14版本,uart的相关函数也改动了很多,所以hc-12可以参照这个版本。
标签: