HC-12 无线串口模块:配置、特性与远程数据传输实战
需要一款远程收发数据的通信模块吗?HC-12 是一款易于配置的 100mW 多通道无线串口模块,拥有 100 个信道,通讯距离可达 1000 米。本文将全面解析其技术参数、Arduino 接线、AT 指令配置及实测技巧。
什么是 HC-12?
HC-12 是一款工作在 433.4~473.0 MHz 频段的无线串口透传模块,发射功率 100mW,支持 100 信道,视距传输距离可达 1 公里,适合远程数据采集、遥控等场景。
技术规格
- 工作频率:433.4 ~ 473.0 MHz
- 供电电压:3.2V ~ 5.5V DC
- 串口波特率:1.2kbps ~ 115.2kbps
- 发射功率:-1dBm ~ 20dBm(8 级可调)
- 接收灵敏度:-117dBm ~ -100dBm
- 工作温度:-40℃ ~ +85℃
HC-12 与 Arduino 通信实战
图 1:Arduino 实战接线
建议使用外部供电并加去耦电容稳定电源。
- 准备两块 Arduino 开发板,分别连接发射端与接收端 HC-12。
- 可分别连接两台电脑,或共用一台电脑分别烧录代码。
- 配置串口监视器发送的数据经 HC-12 无线透传。
- 将 SET 引脚拉低(接 GND)即可进入 AT 指令配置模式。
HC-12 射频参数配置(AT 指令)
图 2:直流电源示例
设置波特率
模块自动适配波特率,但收发双方必须一致。指令格式:AT+Bx(x = 1200, 2400, 4800, 9600 等)。灵敏度每降 6dBm,速率约减半。
设置射频模式 (FU1~FU4)
指令:AT+FUx (x=1,2,3,4),默认 FU3。
FU1
空闲电流 3.6mA,发射延迟 15~25ms,满功率通讯距离 100m。
FU2
空闲电流 80µA,发射延迟 500ms,满功率通讯距离 100m。
FU3(默认)
空闲电流 16mA,发射延迟 4~80ms,9600 波特率下满功率 600m,2400 波特率下 1000m。
FU4
空闲电流 16mA,发射延迟 1000ms,1200 波特率下满功率 1800m。
设置发射功率
8 级可调,默认第 8 级。指令:AT+Px (x=1~8)。
设置信道
100 个信道,间隔 400kHz。信道 1 为 433.4MHz,信道 100 为 473.0MHz。指令:AT+Cxxx (xxx=001~100)。
设置数据格式
指令:AT+Uxyz
x=数据位(通常 8),y=校验位(E/O/N),z=停止位(1/1.5/2)。默认 8N1。
其他常用指令
AT+DEFAULT:恢复出厂设置AT+UPDATE:固件升级模式AT+SLEEP:进入睡眠模式(电流 23µA)
查询模块状态
AT+V:查询固件版本AT+Rx:查询参数(x=X 查所有;x=B/C/F/P 分别查波特率/信道/模式/功率)
睡眠模式应用
适合周期性发送数据的场景(如气象站),其余时间休眠省电。
实测通讯距离
用两块 Arduino Nano 测试:接收端 D6 接 LED,发送端发数据,逐渐拉远接收端直到丢包,即为实测距离。
提升通讯距离
- 电源端并联大容量电容
- 更换高增益天线
总结
HC-12 凭借超远距离(最远 1.8km)、灵活配置和低成本,成为远程串口透传的首选模块。欢迎留言交流技术细节。
工业技术
- 树莓派手势控制机器人:告别按键,挥手即达
- 数字通信基础:从理论到实际实现
- 理解数据流:从单工到全双工通信
- 光数据通信:利用光实现高带宽、无干扰传输
- 精通Fishbowl Manufacturing:制造单模块必备热键速查
- Fishbowl BOM模块核心热键:加速生产配置的利器
- 物料清单(BOM)创建全攻略:从入门到精通制造管理核心
- 制造模块组核心解析:BOM 与制造订单双引擎驱动生产管理
- Kontron 发布基于 AMD Ryzen Embedded R1000 的 COM Express Compact 模块,面向高性能无风扇嵌入式系统
- Sundance VCS-1:紧凑低功耗嵌入式处理器,面向高精度机器人
- DevOps赋能嵌入式软件:跨越硬件异构与交付加速的工程实践
- 掌握 C# using 指令:命名空间导入、别名与静态导入全解析