HC-12 Manual Español
HC-12 Manual Español
HC-12 Manual Español
Especificaciones:
Larga distancia de transmisión (alrededor de 1000 metros en lo seteado por defecto; pudiendo llegar a
1800 metros en el modo ultra alta distancia).
Introducción:
El módulo de comunicación inalámbrico HC-12 es una nueva generación de módulos de transmisión de datos
inalámbrico con múltiples canales incorporados. La frecuencia de radio de 433.4 - 473.0MHz, puede
establecerse el canal de comunicación, el paso es 400 kHz, un total de 100 canales. La máxima potencia de
transmisión es de 100mW (20dBm), y -116dBm es la sensibilidad del receptor para una velocidad de
transmisión en el aire de 5000 bps (baudios); distancia de comunicación de aproximadamente 500 metros.
El módulo adopta un método de encapsulado de orificio de sello, que puede soldarse. El tamaño del módulo
es 27.4 mm x 13.2 mm x 4 mm (incluido el asiento de la antena, pero sin incluir la antena de resorte), que es
conveniente para que el cliente se integre en el sistema de la aplicación. El módulo tiene en la PCB un
asiento de antena ANT1, los usuarios pueden utilizar el cable coaxial, el uso de la antena externa de banda
433MHz.
El módulo también tiene un orificio de soldadura de antenas ANT2, una conveniente antena de resorte que
deberá ser soldada por el usuario. El usuario puede elegir un tipo de antena según la solicitud.
El módulo contiene MCU, los usuarios no necesitan programar, solo enviar y recibir datos de UART. El
módulo usa una variedad de modos de transmisión UART, el usuario puede elegir de acuerdo con los
requisitos del uso el modo de transmisión configurándolos a través de comandos AT. Los cuatro modos UART
son FU1, FU2, FU3, FU4, la corriente de operación promedio es 3.6mA, 80μA, 16mA y 16mA, el máximo de
corriente de operación es 100 mA (estado de transmisión de potencia completa).
Definición de los pines:
2 GND Tierra
7 GND Tierra
8 GND Tierra
9 NC No conectado
ANT2 ANT Entrada/salida de RF Orificio para soldar la antena resorte de 433 MHz
Pines 1 a 6 tiene dos almohadillas cada uno, por el exterior de la almohadilla de medio orificio para la
soldadura de parche. El pin 6 tiene en la parte interna la almohadilla ANT2 para soldar a mano la antena de
resorte.
Pines 1 a 5 tienen un espaciado de 2.54 mm por orificio dentro de las almohadillas para soldar; se puede
enchufar directamente en el asiento de fila de PCB del usuario.
Transmisión de datos:
Como se muestra en la figura anterior, el módulo HC-12 se usa para reemplazar la conexión física en
comunicación semidúplex. En el lado izquierdo del dispositivo para enviar datos UART al módulo, el puerto
RXD del módulo después de recibir los datos UART, los datos se transmiten automáticamente al aire en
forma de radio. En el lado derecho del módulo, puede recibir automáticamente y restaurar el dispositivo
original izquierdo del envío de datos TXD UART. De derecha a izquierda es lo mismo. El módulo solo puede
funcionar en estado semidúplex, no puede enviar y recibir datos al mismo tiempo.
El módulo HC-12 tiene cuatro modos de transmisión transparentes UART: FU1, FU2, FU3 y FU4. Cuando
están en uso, varios modos son solo para enviar y recibir datos de UART, sin la parte de transmisión
inalámbrica de aire; pero solo en la misma velocidad de transmisión de aire pueden comunicarse entre sí. El
modo predeterminado en el módulo es el de velocidad máxima FU3, este modo puede ajustar
automáticamente la velocidad de transmisión en el aire de acuerdo con la velocidad en baudios del puerto
serie; la distancia de comunicación disminuye a mayor velocidad de transmisión.
En modos diferentes, 2 módulos no pueden transmitir datos entre sí; el usuario debe elegir el mejor modo de
acuerdo con la situación real y setear el mismo modo en ambos módulos.
Los módulos generalmente se usan en pares para transmitir datos entre ellos en modo semidúplex. Al mismo
tiempo, el modo de transmisión transparente, la velocidad en baudios, los canales de comunicación
inalámbricos deben configurarse de la misma manera. Los valores predeterminados de fábrica son: modo
FU3, 9600bps (datos de 8 bits, sin paridad, 1 bit de parada), canal CH001 (433.4MHz).
El número de bytes enviados al puerto UART del módulo generalmente no está limitado en uso. Pero a la
vista de la interferencia ambiental y otros factores, en una transmisión continua de una gran cantidad de
datos, es posible perder algunos de los bytes. Por lo tanto, es mejor implementar algún algoritmo como
“pregunta-respuesta” y un mecanismo de retransmisión, para evitar la pérdida de información.
Modos de transmisión:
El modo de transmisión UART del módulo HC-12 por defecto es FU3. En este punto, el módulo funciona a
toda velocidad, la corriente que consume cuando esta inactivo es de aproximadamente 16 mA. En este modo,
el módulo de transmisión inalámbrico ajustará automáticamente la velocidad de transmisión de datos
(baudios) en el aire de acuerdo con la velocidad de transmisión (baudios) del puerto UART, las relaciones
correspondientes se muestran en la siguiente tabla:
Con el fin de establecer la distancia de comunicación lo más larga posible, se puede establecer en una tasa
de baudios UART baja. Si es poco tiempo para transferir grandes cantidades de datos, la velocidad en
baudios UART se puede aumentar a expensas de que disminuya la distancia de comunicación.
La sensibilidad de recepción del módulo está condicionada por las diferentes velocidades de transmisión en el
aire como se muestra en la siguiente tabla:
Para configurar otros modos de transmisión; conectar el módulo a la computadora con un convertidor serie-
UART o con un microcontrolador y poner el pin SET en estado bajo; los diferentes modos y demás
configuraciones se cambian utilizando los comandos AT.
Por defecto esta seteado de fábrica el modo FU3 (9600bps en datos de 8 bits, sin paridad, 1 bit de
parada; canal CH001 a 433.4MHz).
El modo FU1 es un modo de ahorro de energía, en este momento, la corriente de trabajo del módulo en
estado inactivo es de aproximadamente 3.6mA. Este modo también puede configurar 8 tipos de velocidad
de baudios UART que se muestran en la tabla anterior, pero la velocidad de transmisión en el aire es
uniforme a 250000 bps, la distancia de comunicación es corta.
El modo FU2 es el modo de ultra ahorro de energía, en este momento la corriente de trabajo del módulo
cuando está inactivo es de aproximadamente 80 μA. Este modo solo admite velocidad de UART de 1200
bps, 2400 bps y 4800 bps, la velocidad de transmisión en el aire es 250000bps, y la distancia de
comunicación es corta. Al mismo tiempo, si estando en el modo FU1 y FU3 el módulo se configura en el
modo FU2, velocidades UART mayores a 4800 bps se reducirán automáticamente a 4800 bps. El modo
FU2 permite solo la transferencia de una pequeña cantidad de datos (cada paquete dentro de 20 bytes),
el intervalo de tiempo de transmisión del paquete no puede ser demasiado corto (preferiblemente mayor
de 2 segundos), de lo contrario, provocará la pérdida de datos.
El modo FU4 es el modo de comunicación de ultra larga distancia. La velocidad de transmisión UART se
fija en 1200 bps, la velocidad en baudios del aire se fina en 500 bps. Si se parte de otro modo y se
configura el FU4, la velocidad del puerto serie se convertirá automáticamente a 1200 bps. En este modo,
solo se transfiere una pequeña cantidad de datos (cada paquete alrededor de 60 bytes), el intervalo de
tiempo de transmisión del paquete no puede ser demasiado corto (preferiblemente mayor de 2
segundos), de lo contrario, provocará la pérdida de datos.
Nota: para testear el retraso del bucle (loop delay); se hace un entre los pines TX y RX del módulo; se envían
datos a través de la UART desde el pin TX y se mide el tiempo en que los datos vuelven.
Los comandos AT se usan para configurar los parámetros del módulo y cambiar la función del módulo. Al
mismo tiempo, los parámetros y funciones una vez modificadas no se perderán si el módulo se apaga.
La primera forma de entrar (en el uso normal con el módulo ya conectado a su alimentación), es que el pin
"SET" se ponga a nivel bajo. La Segunda forma de entrar (con el módulo apagado), es que el pin "SET" se
conecte a tierra (nivel bajo) y luego se encienda el módulo.
Estas dos formas pueden hacer que el módulo entre en el modo de comandos AT; para liberarlo hacer que el
pin "SET" no está conectado al nivel bajo; esto lo hace salir del modo de comandos. Después de salir del
modo de comandos AT, si se cambió la función del módulo, se cambiara al nuevo funcional correspondiente.
Nota: después de retirar el modo de comandos AT, el módulo está en un estado de reinicio, al menos espere
200 ms antes de volver a ingresar al modo de comandos AT; de lo contrario, el módulo puede entrar en el
modo de comando AT de la segunda manera.
I. AT
Comando de prueba.
II. AT+Bxxxx
Comando para cambiar la velocidad (baudios) UART. Se puede setear en 1200 bps, 2400 bps, 4800
bps, 9600 bps, 19200 bps, 38400 bps, 57600 bps y 115200 bps. Por defecto de fábrica viene
configurado en 9600 bps.
III. AT+Cxxx
Comando para cambiar el canal de comunicación desde 001 a 127 (pero, canales mayores a 100 no
garantizan la distancia de transmisión). El valor por defecto es el canal 001 y su frecuencia de trabajo
es de 433.4 MHz. El paso entre un canal y otro es de 400 kHz; así la frecuencia del canal 100 será de
473.0 MHz.
Ejemplo: Setear el módulo para que trabaje en el canal 21; para eso enviar al módulo el comando
“AT+C021”; el módulo responderá “OK+C021”. Al salir del modo de comandos, el módulo trabajará en
el canal 21 a una frecuencia de 441.4 MHz.
Nota: debido a que la sensibilidad del receptor inalámbrico del módulo HC-12 es relativamente alta,
cuando la velocidad de baudios UART es mayor que 9600 bps, debe estar escalonada 5 canales
adyacentes para su uso. Cuando la velocidad de baudios UART es inferior a 9600 bps, si la
comunicación es a corta distancia (10 metros) también necesita escalonar 5 canales adyacentes.
IV. AT+FUx
Comando para cambiar el modo de transmisión entre FU1, FU2, FU3 y FU4 (FU3 es el modo por
defecto); el modo de transmisión debe ser el mismo en ambos módulos para que se comuniquen
normalmente.
Ejemplo: Enviar al módulo el comando “AT+FU1”; el módulo responderá “OK+FU1” quedando seteado
en el modo de transmisión FU1.
V. AT+Px
Ejemplo: Enviar al módulo el comando “AT+P5”; el módulo responderá “OK+P5”. Al salir del modo de
comandos, el poder de transmisión del módulo será de +11 dBm.
VI. AT+Ry
Este comando se usa no para setear sino para saber en qué está configurado cada parámetro del
módulo actualmente; “y” puede ser B (baudios), C (canal), F (modo de transmisión) o P (poder de
transmisión).
Ejemplo 1: Enviar al módulo el comando “AT+RB”; si el módulo responde “OK+B9600” nos está
diciendo que la velocidad de transmisión de datos esta seteada en este momento en 9600 baudios.
Ejemplo 2: Enviar al módulo el comando “AT+RC”; si el módulo responde “OK+RC001” nos está
diciendo que el canal de comunicación que esta seteado actualmente es el canal 001.
Ejemplo 3: Enviar al módulo el comando “AT+RF”; si el módulo responde “OK+FU3” nos está diciendo
que el modo de transmisión actual es FU3.
Ejemplo 4: Enviar al módulo el comando “AT+RP”; si el módulo responde “OK+RP:+20dBm” nos está
diciendo que la potencia de transmisión actual es de +20dBm.
VII. AT+RX
Obtiene los valores actuales de todos los parámetros seteados en el módulo (velocidad de
transmisión, modo de transmisión, canal, potencia de transmisión, etc.).
Ejemplo: Enviar al módulo el comando “AT+RX”; el módulo responderá algo como “OK+FU3 \r\n
OK+B9600 \r\n OK+C001 \r\n OK+RP: +20 dBm \r\n” ("\r\n" es el carácter de salto de línea / retorno
de carro)…o sea un ENTER.
VIII. AT+Uxxx
Setea como es el byte de datos (Nº de bits, paridad, stop bits) de la comunicación UART. Respecto al
control de paridad, “N” representa “no control de paridad”, “O” representa “control de paridad impar” y
“E” representa el “control de paridad par”. Los números a lo último son para los stop bits; un 1
representa 1 stop bit, un 2 representa 2 stop bits y un 3 representa 1,5 stop bits.
Ejemplo: Enviar al módulo el comando “AT+U8N1”; el módulo responderá “OK+U8N1” lo cual quiere
decir que el byte de datos en la transmisión serie quedo configurado con: 8 bits, sin control de paridad
y 1 stop bit.
IX. AT+V
X. AT+SLEEP
Luego de recibir este comando; el módulo entrara en el modo SLEEP al salir del modo de comandos;
la corriente de operación será de 22µA y el módulo no realizará transmisión de datos. Si se entra de
nuevo en el modo de comandos, el módulo automáticamente despertara y saldrá del modo SLEEP.
XI. AT+DEFAULT
Restaura todos los valores de fábrica (velocidad de transmisión serie, canal de comunicación, modo
de transmisión, etc.).
NOTA:
Conectar el módulo a la computadora por el cable serie DB9 para utilizar el protocolo RS232:
El pin "SET" a través de la conexión a tierra del interruptor SW1 puede entrar en el estado de configuración de
parámetros, colgando de la izquierda.
Ajuste el pin de control "SET" al nivel alto para la operación normal, y configure el nivel bajo para entrar en el
modo de configuración de parámetros.