personas:johnny:proyectos:esp8266
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| personas:johnny:proyectos:esp8266 [2019/06/04 02:52] – [código telegram bot esp8266c] kz | personas:johnny:proyectos:esp8266 [2019/06/04 19:14] (actual) – [Conexión pantalla oled SSD1306] kz | ||
|---|---|---|---|
| Línea 1116: | Línea 1116: | ||
| </ | </ | ||
| + | |||
| + | ====== conexionado de algunos sensores ====== | ||
| + | |||
| + | ===== Conexión relevador ===== | ||
| + | |||
| + | Se puede reemplazar el transistor de la imagen por un ** 2N2222 **. para ensayar el Relay, se puede usar el código __blink__ de arduino | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ===== Conexión DTH11 ===== | ||
| + | |||
| + | Este sensor es un sensor de temperatura y humedad en el aire.Toda la información para conectar el sensor en este [[http:// | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Así conectamos el sensor al arduino o al esp. La resistencia tiene de que ser 10K | ||
| + | |||
| + | {{: | ||
| + | |||
| + | El código que necesitamos para leer los valores del sensor es este: | ||
| + | |||
| + | <code c++> | ||
| + | #include < | ||
| + | |||
| + | dht DHT; | ||
| + | |||
| + | #define DHT11_PIN 7 | ||
| + | |||
| + | void setup(){ | ||
| + | Serial.begin(9600); | ||
| + | } | ||
| + | |||
| + | void loop() | ||
| + | { | ||
| + | int chk = DHT.read11(DHT11_PIN); | ||
| + | Serial.print(" | ||
| + | Serial.println(DHT.temperature); | ||
| + | Serial.print(" | ||
| + | Serial.println(DHT.humidity); | ||
| + | delay(1000); | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== Conexión LM35 ===== | ||
| + | |||
| + | [[https:// | ||
| + | a toda la información. En este caso hemos optado por un sensor bastante normal que detecta temperaturas desde -55ºC a 150ºC, 1ºC equivale a 10mV y soporta voltajes de entre 4V y 30V. Todo esta información se ha obtenido de la ficha técnica del LM35. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | <code c++> | ||
| + | /* | ||
| + | Creado: Luis del Valle (ldelvalleh@programarfacil.com) | ||
| + | https:// | ||
| + | */ | ||
| + | |||
| + | // Declaracion de variables globales | ||
| + | float tempC; // Variable para almacenar el valor obtenido del sensor (0 a 1023) | ||
| + | int pinLM35 = 0; // Variable del pin de entrada del sensor (A0) | ||
| + | |||
| + | void setup() { | ||
| + | // Cambiamos referencia de las entradas analógicas | ||
| + | analogReference(INTERNAL); | ||
| + | | ||
| + | // Configuramos el puerto serial a 9600 bps | ||
| + | Serial.begin(9600); | ||
| + | } | ||
| + | |||
| + | void loop() { | ||
| + | // Con analogRead leemos el sensor, recuerda que es un valor de 0 a 1023 | ||
| + | tempC = analogRead(pinLM35); | ||
| + | |||
| + | // Calculamos la temperatura con la fórmula | ||
| + | tempC = (1.1 * tempC * 100.0)/ | ||
| + | |||
| + | // Envia el dato al puerto serial | ||
| + | Serial.print(tempC); | ||
| + | // Salto de línea | ||
| + | Serial.print(" | ||
| + | | ||
| + | // Esperamos un tiempo para repetir el loop | ||
| + | delay(1000); | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | ===== Conexión pantalla oled SSD1306 ===== | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Links con información interesante: | ||
| + | |||
| + | - [[https:// | ||
| + | - [[https:// | ||
| + | - [[https:// | ||
| + | |||
| + | Este es el esquema de conexión: | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Este código funciona con la librería de adafruit. | ||
| + | |||
| + | <code c++> | ||
| + | /* | ||
| + | * Demo for SSD1306 based 128x64 OLED module using Adafruit SSD1306 | ||
| + | * library (https:// | ||
| + | | ||
| + | * See https:// | ||
| + | * for more information. | ||
| + | * | ||
| + | */ | ||
| + | |||
| + | #include < | ||
| + | #include < | ||
| + | #include < | ||
| + | #include < | ||
| + | |||
| + | // If using software SPI (the default case): | ||
| + | #define OLED_MOSI | ||
| + | #define OLED_CLK | ||
| + | #define OLED_DC | ||
| + | #define OLED_CS | ||
| + | #define OLED_RESET 10 | ||
| + | |||
| + | Adafruit_SSD1306 display(OLED_MOSI, | ||
| + | |||
| + | void setup() | ||
| + | // Serial.begin(9600); | ||
| + | display.begin(SSD1306_SWITCHCAPVCC); | ||
| + | display.display(); | ||
| + | delay(1000); | ||
| + | display.clearDisplay(); | ||
| + | display.setTextSize(1); | ||
| + | display.setTextColor(WHITE); | ||
| + | } | ||
| + | |||
| + | void loop() | ||
| + | { | ||
| + | static unsigned long thisMicros = 0; | ||
| + | static unsigned long lastMicros = 0; | ||
| + | display.clearDisplay(); | ||
| + | display.setCursor(0, | ||
| + | display.print(" | ||
| + | display.print(" | ||
| + | display.print(thisMicros - lastMicros); | ||
| + | display.print(" | ||
| + | display.display(); | ||
| + | lastMicros = thisMicros; | ||
| + | thisMicros = micros(); | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | {{: | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
personas/johnny/proyectos/esp8266.1559616722.txt.gz · Última modificación: por kz
