Trastejant

Crea, comparte, aprende y disfruta

D-Duino: Conexión y muestra de datos

D-Duino

D-Duino es un ESP8266 con NodeMCU y una pantalla OLED en la que podemos mostrar información. Puedes consultar nuestra review y conocer más a fondo esta placa en nuestra entrada del blog: D-Duino (Review).

 

Pin Out de D-Duino

NODEMCU OLED
D2 SCL
D1 SDA
3.3V Vin
GND GND

D-Duino pinout

 

 

 

 

 

 

El resto de los pines los tenemos disponibles para poder añadir actuadores y sensores a nuestros proyectos.

Primer ejemplo: Nuestro Hola mundo con D-Duino

En este tutorial vamos a realizar un ejemplo básico en el que mostraremos por pantalla la red a la que esta conectada la placa y la IP que se le ha asignado.

Por lo tanto lo primero que necesitamos es realizar la conexión:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void setup ( void ) {
 Serial.begin ( 115200 );//Abrimos la conexión serial
 WiFi.begin ( ssid, password );//Nos conectamos a la red indicada
 Serial.println ( "" );
 
   display.init();
 //Por la conexion serial mostramos los avances de la conexión
 while ( WiFi.status() != WL_CONNECTED ) {
  delay ( 500 );
  Serial.print ( "." );
    display.print(".");
 }
//Una vez conectados mostramos via serial la IP que se nos ha asignado 
 Serial.println ( "" );
 Serial.print ( "Connected to " );
 Serial.println ( ssid );
 Serial.print ( "IP address: " );
 Serial.println ( WiFi.localIP() );
}

Y a continuación mostrar los datos por la pantalla:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void loop() {
 
 display.setTextAlignment(TEXT_ALIGN_LEFT);
 display.setFont(ArialMT_Plain_24);//Configuramos tipo de letra y tamaño
    display.drawString(0, 0, "Trastejant");//Creamos un titutlo
    display.setTextAlignment(TEXT_ALIGN_LEFT);
    display.setFont(ArialMT_Plain_10);//Usamos un tamaño de letra más pequeño
    //Mostramos la información de conexión en la pantalla
    display.drawString(0, 30, "En:");
    display.drawString(30, 30, ssid);
    display.setFont(ArialMT_Plain_10);
    display.drawString(0, 46, "IP:");
    display.drawString(15, 30, WiFi.localIP().toString());
    display.display();
 
}

Por si las moscas también enviaremos la información via serie, para debuggear si hay problemas.

 

Todo el código lo podéis ver aquí:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
#include <Wire.h>  // Only needed for Arduino 1.6.5 and earlier
#include "SSD1306.h" // alias for <code>#include "SSD1306Wire.h"</code>
 
 
SSD1306  display(0x3c, D1, D2);
 
const char *ssid = "nombre de la red";
const char *password = "Contraseña";
 
 
void setup () {
 Serial.begin ( 115200 );
 WiFi.begin ( ssid, password );
 Serial.println ( "" );
 
   display.init();
 // Wait for connection
 while ( WiFi.status() != WL_CONNECTED ) {
  delay ( 500 );
  Serial.print ( "." );
    display.print(".");
 }
 
 Serial.println ( "" );
 Serial.print ( "Connected to " );
 Serial.println ( ssid );
 Serial.print ( "IP address: " );
 Serial.println ( WiFi.localIP() );
 display.clear();   
 
 
 
void loop() {
 
 display.setTextAlignment(TEXT_ALIGN_LEFT);
 display.setFont(ArialMT_Plain_24);
    display.drawString(0, 0, "Jarvis");
    display.setTextAlignment(TEXT_ALIGN_LEFT);
    display.setFont(ArialMT_Plain_10);
    display.drawString(0, 30, "En:");
    display.drawString(30, 30, ssid);
    display.setFont(ArialMT_Plain_10);
    display.drawString(0, 46, "IP:");
    display.drawString(15, 30, WiFi.localIP().toString());
    display.display();
 
}

O descargarlo de nuestro repo de GitHub, donde iremos subiendo otros ejemplos a medida que probemos y realicemos proyectos con esta placa:

Ejemplo con D-Duino

  • SSH URL
  • Clone URL

También te puede interesar...

No hay temas relacionados

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.