|     Inicio    |   |         |  |   FOROS      |  |      |      
   Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL
  Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino
  Raspberry Pi Visual Basic Script (VBS) FireBase (BD autoactualizable) NodeMCU como Arduino
  AutoIt (Programación) Visual Basic Cosas de Windows Webs interesantes
Translate:
Búsqueda en este sitio:


.

Arduino en español
Circuitos con Arduino - Juan Antonio Villalpando

-- Tutorial de iniciación a Arduino --

Volver al índice del tutorial

____________________________

49F.- PCF8574 con librería.

- En los tutoriales anteriores hemos utilizado este módulo con la librería Wire, ahora vamos a utilizarlo con una librería particular para el módulo:

- PCF8574.zip

______________________________________________________
- Módulo conversor de 8 bits a I2C.

- Tarjeta adaptadoras de 8 conexiones a I2C que contiene al chip PCF8574. Esta tarjeta tiene un precio menor a 2 €.

- Tiene 8 terminales amarillos (P0 ... P7) para las conexiones de entrada. Dos conexiones de salida SDA y SCL, además de la alimentación Vcc y Gnd.

______________________________________________________
- Código Pulsador.

- Ponemos un pulsador en el P1.

Código
// Juan A. Villalpando
// kio4.com

#include "Arduino.h"
#include "PCF8574.h"

PCF8574 pcf8574(0x20); // Dirección del módulo
int LED13 = 13;

void setup(){
  pcf8574.begin();
  pinMode(LED13,OUTPUT);    
  pcf8574.pinMode(P1, INPUT); // Pulsador en P1 del módulo
}
void loop(){
  uint8_t P1_Read = pcf8574.digitalRead(P1);
       if (P1_Read == HIGH){
             digitalWrite(LED13, HIGH);
     } else {digitalWrite(LED13, LOW);}
    
delay(50);
}

 

______________________________________________________
- ¿Cuántos módulos como este podemos conectar?.

- Como has visto en el apartado anterior, el módulo tiene la dirección 0x38 en hexadecimal, es decir es el 56.

- En este caso podemos conectar 8 módulos.

- Los módulos se pueden interconectar:

- En cada módulo hay que establecer una dirección como ves en la imagen.

- Esa dirección la podemos establecer cambiando los puentes A0, A1 y A2.

- La forma de hacerlo lo pueder ver en el tutorial: 31.- Pantalla LCD. Bus I2C.

- En la imagen anterior he puesto varias direcciones como ejemplos, aunque la situación de los puentes no coinciden con las direcciones que he puesto

_________________________________

- Chip PCF8574

PCF8574_PCF8574A.pdf

- El elemento que establece las direcciones es el chip PCF8574 que se encuentra en el módulo I2C.

- PCF8574

- PCF8574A

PCF8574

Las direcciones se configuran mediante uniones en: A0, A1 y A2

Hay fabricantes que utilizan para el módulo I2C el chip PCF8574, este viene con la dirección base: 0x20, por lo cual cuando no tiene ningún puente tendrá la dirección 0x27

PCF8574A (Es el que estamos utilizando con este módulo)

Las direcciones se configuran mediante uniones en: A0, A1 y A2

Otros fabricantes utilizan para el módulo I2C el chip PCF8574A, este viene con la dirección base: 0x38, por lo cual cuando no tiene ningún puente tendrá la dirección 0x3F

 


______________________________________________________
- ¿Cuántos elementos puedo poner en cada módulo?.

- Cada módulo tiene para 8 pin, así que podemos conectar 8 elementos de tipo Digital, es decir de tipo interruptor, ejemplo:
- Pulsador, sensor de inclinación, sensor magnético, sensor de movimiento...

- Otro ejemplo:

- Aquí he conectado varios 4 sensores que producen un nivel Digital, son sensores de tipo interruptor, podríamos conectar 8 en cada módulo.

- Pero otros elementos, por ejemplo el teclado, necesita más pines:

- Se pueden conectar elementos de entradas y de salidas.

______________________________________________________
- ¿Qué significa el terminal INT del módulo?.

- Se utiliza para interrupciones, consulta: 18.- Interrupciones.

______________________________________________________
- Propuesta.

- Realiza un código con el módulo I2C y la siguiente conexión, de manera que al pulsar un botón se encienda un LED distinto.

- Estudia las conexiones de los pulsadores y LEDs. Consulta si necesita resistencias.

- Observa que utilizamos 8 elementos y no ocupamos ningún terminal de Datos Digitales de Arduino.

______________________________________________________
______________________________________________________
______________________________________________________

- Otro Bus I2C.

- Podemos encontrar esta otra tarjeta I2C.

- Es la que utiliza la pantalla LCD que hemos visto en el tutorial:

31.- Pantalla LCD. Bus I2C.

- Se observa que tiene sus cuatro conexiones I2C (Vcc, Gnd, SDA, SDL) y 16 terminales.

- Además su direcciones A0, A1, A2 que se pueden puentear.

- Mediante la aplicación visto en este tutorial se puede deducir que su dirección es: 0x27

- Tiene el chip PCF8574

- Aquí tenemos el esquema del módulo:

- https://www.electroschematics.com/12459/arduino-i2c-lcd-backpack-introductory-tutorial/

-

________________________________

 

- Mi correo:
juana1991@yahoo.com
- KIO4.COM - Política de cookies. Textos e imágenes propiedad del autor:
© Juan A. Villalpando
No se permite la copia de información ni imágenes.
Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación y realizan análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. Acepto    Más información