Grove BLE v1
Grove - BLE v1 (Grove - Bluetooth Low Energy v1) utiliza un módulo Bluetooth de Baja Energía -- HM-11, basado en el chip TI CC2540, que tiene soporte para comandos AT. Como producto Grove, es conveniente usar Grove - BLE con la placa Arduino a través del Base Shield.
Parámetros
Especificaciones | Nombre |
---|---|
Versión BT | Especificación Bluetooth V4.0 BLE |
Frecuencia de trabajo | Banda ISM de 2.4GHz |
Método de modulación | GFSK(Gaussian Frequency Shift Keying) |
Potencia RF | -23dbm, -6dbm, 0dbm, 6dbm, se puede modificar mediante el Comando AT AT+POWE |
Velocidad | Asíncrono: 6K Bytes, Síncrono: 6K Bytes |
Sensibilidad | ≤-84dBm al 0.1% BER |
Seguridad | Autenticación y encriptación |
Servicio | Central & Periférico UUID FFE0,FFE1 |
Alimentación | 3.3v - 5v |
Temperatura de trabajo | –5 ~ +65 Centígrados |
Tamaño | 40cm x 20cm |
Corriente de trabajo | < 10 mA |
Corriente de suministro | < 20 mA |
Corriente en reposo | < 1 mA |
La alimentación del HM-11 es de 3.3v, pero el Grove - BLE es de 3.3V a 5V.
Más detalles sobre los módulos Grove consulte Sistema Grove
Plataformas Compatibles
Arduino | Raspberry Pi | |||
---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() |
Las plataformas mencionadas anteriormente como compatibles son una indicación de la compatibilidad de software o teórica del módulo. Solo proporcionamos biblioteca de software o ejemplos de código para la plataforma Arduino en la mayoría de los casos. No es posible proporcionar biblioteca de software / código de demostración para todas las plataformas MCU posibles. Por lo tanto, los usuarios tienen que escribir su propia biblioteca de software.
Pinout
El conector Grove tiene cuatro cables: GND, VCC, RX, TX.
Características del Diseño
Hemos usado el chip TD6810 como regulador de voltaje, por lo que el rango de la alimentación puede ser de 3.3v a 5v. Además, hay un circuito de cambio de nivel que asegura la precisión de la transmisión de datos.
Comandos AT
1)Consultar dirección del módulo
Enviar: AT+ADDR?
Recibir:OK+LADD:address
2) Consultar velocidad de baudios
Enviar:AT+BAUD?
Recibir:OK+Get:[para1]
Rango: 0~8; 0--9600,1--19200,2--38400,3--57600,4--115200,5--4800,6--2400,7--1200,8--230400
Por defecto: 0--9600.
Establecer velocidad de baudios
Enviar:AT+BAUD[para1]
Recibir:OK+Set:[para1]
Ej.:Enviar :AT+BAUD1 ,Recibir:OK+Set:1. La velocidad de baudios ha sido establecida a 19200
Si se configura a un valor 7, después del siguiente encendido, el módulo no soportará ningún comando AT, hasta que se presione PIO0, el módulo cambiará la velocidad de baudios a 9600.
3) Intentar conectar a una dirección
Enviar:AT+CON[para1]
Recibir:OK+CONN[para2]
Rango :A,E,F
Ej.:Intentar conectar a un dispositivo cuya dirección MAC es 00:17:EA:09:09:09
Enviar: AT+CON0017EA090909
Puede recibir una respuesta: OK+CONNA --> Aceptar solicitud, conectando ; OK+CONNE --> Error de conexión ; OK+CONN --> Conectado , si AT+NOTI1 está configurado ; OK+CONNF --> Conexión fallida , después de 10 segundos
Solo se usa el rol central. Si el dispositivo remoto ya está conectado a otro dispositivo o está apagado, "OK+CONNF" se recibirá después de aproximadamente 10 segundos.
4) Limpiar dirección del último dispositivo conectado
Enviar:AT+CLEAR
Recibir:OK+CLEAR
5) Consultar modo de trabajo del módulo
Enviar:AT+MODE?
Recibir:OK+Get:[para]
Rango: 0~2;
0--Modo de transmisión, 1--Modo de recolección PIO + Modo 0, 2--Modo de control remoto + Modo 0 .
Por defecto: 0
Establecer modo de trabajo del módulo
Enviar:AT+MODE[]
Recibir:OK+Set:[para]
6) Consultar nombre del módulo
Enviar:AT+NAME?
Recibir:OK+NAME[para1]
Establecer nombre del módulo
Enviar:AT+NAME[para1]
Recibir:OK+Set:[para1]
Ej.:Enviar: AT+NAMESeeed, Recibir : OK+Set:Seeed
El nombre cambiaría después del siguiente encendido.
7) Consultar código PIN
Enviar:AT+PASS?
Recibir:OK+PASS:[para1]
Rango : 000000~999999.
Por defecto : 000000.
Establecer código PIN
Enviar: AT+PASS[para1]
Recibir:OK+Set:[para1]
8) Restaurar todos los valores de configuración a la configuración de fábrica
Enviar:AT+RENEW
Recibir:OK+RENEW
9) Reiniciar módulo
Enviar:AT+RESET
Recibir:OK+RESET
10)Consultar rol maestro y esclavo
Enviar:AT+ROLE[para1]
Recibir:OK+Set:[para1]
Rango : 0~1;
0--Periférico : 1--Central : Por defecto: 0.
Para más comandos AT, consulte la hoja de datos del módulo BLE.
Comunicación SoftwareSerial
Grove - BLE puede usarse como maestro o esclavo, puedes usar uno a través de diferentes demostraciones.Si vas a usar el siguiente programa SoftwareSerial, por favor consulta la forma de conexión en la imagen anterior. TX-->D2, RX-->D3.
Abre Arduino IDE, copia el siguiente programa y súbelo a la placa Arduino/Seeeduino. Y entonces dos módulos BLE pueden comunicarse entre sí.
Demo : BLE Esclavo
#include <SoftwareSerial.h> //Software Serial Port
#define RxD 2
#define TxD 3
#define DEBUG_ENABLED 1
SoftwareSerial BLE(RxD,TxD);
void setup()
{
Serial.begin(9600);
pinMode(RxD, INPUT);
pinMode(TxD, OUTPUT);
setupBleConnection();
}
void loop()
{
char recvChar;
while(1){
if(BLE.available()){//check if there's any data sent from the remote BLE
recvChar = BLE.read();
Serial.print(recvChar);
}
if(Serial.available()){//check if there's any data sent from the local serial terminal, you can add the other applications here
recvChar = Serial.read();
BLE.print(recvChar);
}
}
}
void setupBleConnection()
{
BLE.begin(9600); //Set BLE BaudRate to default baud rate 9600
BLE.print("AT+CLEAR"); //clear all previous setting
BLE.print("AT+ROLE0"); //set the bluetooth name as a slaver
BLE.print("AT+SAVE1"); //don't save the connect information
}
Demo : BLE Master
#include <SoftwareSerial.h> //Software Serial Port
#define RxD 2
#define TxD 3
#define DEBUG_ENABLED 1
SoftwareSerial BLE(RxD,TxD);
void setup()
{
Serial.begin(9600);
pinMode(RxD, INPUT);
pinMode(TxD, OUTPUT);
setupBleConnection();
}
void loop()
{
char recvChar;
while(1){
if(BLE.available()){//check if there's any data sent from the remote BLE
recvChar = BLE.read();
Serial.print(recvChar);
}
if(Serial.available()){//check if there's any data sent from the local serial terminal, you can add the other applications here
recvChar = Serial.read();
BLE.print(recvChar);
}
}
}
void setupBleConnection()
{
BLE.begin(9600); //Set BLE BaudRate to default baud rate 9600
BLE.print("AT+CLEAR"); //clear all previous setting
BLE.print("AT+ROLE1"); //set the bluetooth name as a master
BLE.print("AT+SAVE1"); //don't save the connect information
}
Visor Esquemático en Línea
Recursos
Soporte Técnico y Discusión de Productos
¡Gracias por elegir nuestros productos! Estamos aquí para brindarle diferentes tipos de soporte para asegurar que su experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para satisfacer diferentes preferencias y necesidades.