Le module HC-12 permet la communication sans-fil semi-duplex entre deux appareils via les fréquences radio. Il travaille sur la mêmes plages de fréquences que le module RF433 mais permet d’atteindre des distances de communication beaucoup plus importante (<1km). De plus, le même module peut servir en émission ou en réception.
Material
- Computador
- Arduino UNO x2
- Cabos USB A Macho
- Módulos HC-12 x2
Como funciona
O módulo HC-12 é um módulo de radiofrequência que transmite na gama de frequências 433,4-470MHz. Consiste num emissor-receptor de rádio Si4463 que trata da comunicação sem fios e num microcontrolador STM8S003F3 que trata da comunicação em série com o microcontrolador. O pino SET é utilizado para configurar o modo de funcionamento do módulo HC-12.
Esquema
Para comunicar com o módulo HC-12, utilizaremos uma saída UART (ou TTL) do microcontrolador. Neste exemplo, utilizamos os pinos 2 e 3. O módulo pode ser alimentado pela saída de 3,3V ou 5V do microcontrolador.
Para melhorar a estabilidade da comunicação, que é altamente dependente da fonte de alimentação, pode-se adicionar um condensador (~50µF) entre os pinos VCC e GND.
É necessário fazer a mesma montagem para os lados do transmissor e do receptor.
Código
Para gerir o módulo HC-12, utilizamos a biblioteca SoftwareSerial.h. A biblioteca permite-lhe criar um autocarro de comunicação em série com determinados pinos do microcontrolador. Verifique a documentação técnica para ver quais os pinos que pode utilizar. Neste exemplo, o código é idêntico para as peças do transmissor e do receptor.
#include <SoftwareSerial.h> SoftwareSerial HC12(2, 3); // HC-12 TX Pin, HC-12 RX Pin void setup() { Serial.begin(9600); HC12.begin(9600); } void loop() { while (HC12.available()) { Serial.write(HC12.read()); } while (Serial.available()) { HC12.write(Serial.read()); } }
Resultados
Uma vez carregado o código em ambos os Arduino’s, é possível abrir dois monitores em série. Depois poderá introduzir mensagens em qualquer um dos monitores em série e este será exibido no outro monitor.
Aplicações
- Controlo remoto de um sistema com um comando via rádio baseado num módulo HC-12
- Troca de dados entre dois dispositivos de domótica