En Banggood, utilizamos cookies y otras tecnologías similares para brindarle funcionalidades esenciales y estadísticas agregadas.
También usamos cookies opcionales para una mejor experiencia con:
Puede optar por no permitir algunos tipos de cookies a través de"Configuración de cookies". Si quieres conocer más al respecto, puedes deslizarte hasta el final de la página para ver la Política de Privacidad
Cuando visita cualquier sitio web, puede almacenar o recuperar información en su navegador, principalmente en forma de cookies. Esta información puede ser sobre usted, sus preferencias o su dispositivo y se usa principalmente para hacer que el sitio funcione como usted espera. La información generalmente no lo identifica directamente, pero puede brindarle una experiencia web más personalizada.
Como respetamos su derecho a la privacidad, puede optar por no permitir algunos tipos de cookies. Sin embargo, bloquear algunos tipos de cookies puede afectar su experiencia en el sitio y los servicios que podemos ofrecer.
{{$productInfo.reviewAmount.average}} fuera de 5
Para obtener más información sobre el producto, haga clic en https://drive.google.com/file/d/1L8ll-DeAC2SATBZn0-KbSaZsrinbnXkF/view
Haga clic en los enlaces para obtener más detalles: https://eyun.baidu.com/s/3hsiTNgg
Nota: Este producto no incluye la batería.
Paquete incluido:
2 x ESP32 OLED
2 x Line
4 x pin
2 x Antena de resorte 433m
Por ejemplo Uno:
LoRaSender
#incluye
#incluye
#incluye
// GPIO5 - SCK SX1278
// GPIO19 -- MISO de SX1278
// GPIO27 -- M0SI SX1278
// GPIO18 -- CS SX1278
//GPIO14 -- RESET SX1278
// GPIO26 -- IRQ (Solicitud de interrupción) de SX1278
#define SS 18
#define RST 14
#define DI0 26
#define BAND 433E6
int counter = 0;
void setup() {
pinMode(25,OUTPUT); //Enviar éxito, el LED se encenderá durante 1 segundo
Serial.begin(115200);
while (!Serial); //Si sólo la función básica, debe conectarse a una computadora
SPI.begin(5,19,27,18);
LoRa.setPins(SS, RST, DI0);
// Serial.println("LoRa Sender");
if (!LoRa.begin(BAND)) {
Serial.println("¡Fallo al iniciar LoRa!");
mientras (1);
}
Serial.println("LoRa Inicial OK!");
}
void loop() {
Serial.print("Enviando paquete: ");
Serial.println(counter);
// enviar paquete
LoRa.beginPacket();
LoRa.print("hola");
LoRa.print(counter);
LoRa.endPacket();
counter++;
digitalWrite(25, HIGH); // encender el LED (HIGH es el nivel de voltaje)
retraso(1000); // esperar un segundo
digitalWrite(25, LOW); // apagar el LED haciendo que el voltaje sea BAJO
retraso(1000); // esperar un segundo
retraso(3000);
}
Por ejemplo, dos
(2)Receptor LoRa
#incluye
#incluye
// GPIO5 - SCK SX1278
// GPIO19 -- MISO de SX1278
// GPIO27 -- M0SI SX1278
// GPIO18 -- CS SX1278
//GPIO14 -- RESET SX1278
// GPIO26 -- IRQ (Solicitud de interrupción) de SX1278
#define SS 18
#define RST 14
#define DI0 26
#define BAND 433E6
void setup() {
Serial.begin(115200);
// mientras (!Serial); // si solo es la función básica, debes conectarlo a una computadora
retraso(1000);
Serial.println("LoRa Receiver");
SPI.begin(5,19,27,18);
LoRa.setPins(SS, RST, DI0);
if (!LoRa.begin(BAND)) {
Serial.println("¡Fallo al iniciar LoRa!");
mientras (1);
}
}
void loop() {
// intenta analizar el paquete
int packetSize = LoRa.parsePacket();
si (tamaño_del_paquete) {
// recibió un paquete
Serial.print("Paquete recibido '");
// leer paquete
mientras (LoRa.available()) {
Serial.print((char)LoRa.read());
}
// imprimir RSSI del paquete
Serial.print("' con RSSI ");
Serial.println(LoRa.packetRssi());
}
}
Por ejemplo, tres
(3) LoRaReceiverCallback
#incluye
#incluye
// GPIO5 - SCK SX1278
// GPIO19 -- MISO de SX1278
// GPIO27 -- M0SI SX1278
// GPIO18 -- CS SX1278
//GPIO14 -- RESET SX1278
// GPIO26 -- IRQ (Solicitud de interrupción) de SX1278
#define SS 18
#define RST 14
#define DI0 26
#define BAND 433E6
void setup() {
Serial.begin(115200);
// mientras (!Serial); // si solo es la función básica, debes conectarlo a una computadora
SPI.begin(5,19,27,18);
LoRa.setPins(SS, RST, DI0);
Serial.println("Callback del receptor LoRa");
if (!LoRa.begin(BAND)) {
Serial.println("¡Fallo al iniciar LoRa!");
mientras (1);
}
// registre la llamada de recepción
LoRa.onReceive(onReceive);
// poner la radio en modo de recepción
LoRa.receive();
}
void loop() {
// no hacer nada
}
void onReceive(int packetSize) {
// recibió un paquete
Serial.print("Paquete recibido '");
// leer paquete
para (int i = 0; i < packetSize; i++) {
Serial.print((char)LoRa.read());
}
// imprimir RSSI del paquete
Serial.print("' con RSSI ");
Serial.println(LoRa.packetRssi());
}
?
Por ejemplo cuatro
#incluye
#incluye "SSD1306.h" // alias para `#incluye "SSD1306Wire.h"`
#incluye "images.h
// Pines OLED a ESP32 0.96 OLEDGPIOs a través de esta conexión:
//OLED_SDA -- GPIO4
//OLED_SCL -- GPIO15
// OLED_RST - GPIO16
pantalla SSD1306(0x3c, 4, 15);
#definir DEMO_DURATION 3000
typedef void (*Demo)(void);
int demoMode = 0;
int counter = 1;
void setup() {
pinMode(16, OUTPUT);
digitalWrite(16, LOW); // establecer GPIO16 en bajo para reiniciar OLED
retraso(50);
digitalWrite(16, HIGH); // mientras OLED está en funcionamiento, se debe establecer GPIO16 en alto
Serial.begin(115200);
Serial.println();
Serial.println();
// Inicializar la interfaz de usuario también inicializará la pantalla.
display.init();
display.flipScreenVertically();
display.setFont(ArialMT_Plain_10);
}
void drawFontFaceDemo() {
// Demo de Fuente 1
// crea más fuentes en http://oleddisplay.squix.ch/
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.setFont(ArialMT_Plain_10);
display.drawString(0, 0, "Hello world");
display.setFont(ArialMT_Plain_16);
display.drawString(0, 10, "Hola mundo");
display.setFont(ArialMT_Plain_24);
display.drawString(0, 26, "Hola mundo");
}
void drawTextFlowDemo() {
display.setFont(ArialMT_Plain_10);
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.drawStringMaxWidth(0, 0, 128,
Lorem ipsumn dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore." );
}
void drawTextAlignmentDemo() {
// Demostración de alineación de texto
display.setFont(ArialMT_Plain_10);
// Las coordenadas definen el punto de inicio izquierdo del texto
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.drawString(0, 10, "Alineado a la izquierda (0,10)");
// Las coordenadas definen el centro del texto
display.setTextAlignment(TEXT_ALIGN_CENTER);
display.drawString(64, 22, "Alineación centrada (64,22)");
// Las coordenadas definen el extremo derecho del texto
display.setTextAlignment(TEXT_ALIGN_RIGHT);
display.drawString(128, 33, "Alineado a la derecha (128,33)");
}
void drawRectDemo() {
// Dibujar un píxel en la posición dada
para (int i = 0; i < 10; i++) {
display.setPixel(i, i);
display.setPixel(10 - i, i);
}
display.drawRect(12, 12, 20, 20);
// Rellena el rectángulo
display.fillRect(14, 14, 17, 17);
// Dibujar una línea horizontal
display.drawHorizontalLine(0, 40, 20);
// Dibujar una línea horizontal
display.drawVerticalLine(40, 0, 20);
}
void drawCircleDemo() {
para (int i=1; i < 8; i++) {
display.setColor(BLANCO);
display.drawCircle(32, 32, i*3);
if (i % 2 == 0) {
display.setColor(BLACK);
}
display.fillCircle(96, 32, 32 - i* 3);
}
}
void drawProgressBarDemo() {
int progreso = (contador / 5) % 100;
// dibujar la barra de progreso
display.drawProgressBar(0, 32, 120, 10, progress);
// dibujar el porcentaje como Cadena
display.setTextAlignment(TEXT_ALIGN_CENTER);
display.drawString(64, 15, String(progress) + "%");
}
void drawImageDemo() {
// ver http://blog.squix.org/2015/05/esp8266-nodemcu-how-to-create-xbm.html
// sobre cómo crear archivos xbm
display.drawXbm(34, 14, WiFi_Logo_width, WiFi_Logo_height, WiFi_Logo_bits);
}
Demo demos[] = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};
int demoLength = (sizeof(demos) / sizeof(Demo));
tiempoDesdeUltimoCambioDeModo = 0;
void loop() {
// borrar la pantalla
display.clear();
// dibujar el método de demostración actual
demos[demoMode]();
display.setTextAlignment(TEXT_ALIGN_RIGHT);
display.drawString(10, 128, String(millis()));
// escriba el búfer en la pantalla
display.display();
si (millis() - tiempoDesdeElUltimoCambioDeModo > DURACION_DEMO) {
demoMode = (demoMode + 1) % demoLength;
timeSinceLastModeSwitch = millis();
}
counter++;
retraso(10)
}
Método(s) de envío | Tiempo de envío | Información de seguimiento |
---|