Documentos de Académico
Documentos de Profesional
Documentos de Cultura
conexiones físicas para transferir bits entre 2 dispositivos digitales. El puerto incluye dos
cables de comunicación, SDA y SCL. Además el protocolo permite conectar hasta 127
dispositivos esclavos con esas dos líneas, con hasta velocidades de 100, 400 y 1000 kbits/s.
También es conocido como IIC ó TWI – Two Wire Interface.
El protocolo I2C es uno de los más utilizados para comunicarse con sensores digitales, ya
que a diferencia del puerto Serial, su arquitectura permite tener una confirmación de los
datos recibidos, dentro de la misma trama, entre otras ventajas.
Los mensajes que se envían mediante un puerto I2C, incluye además del byte de
información, una dirección tanto del registro como del sensor. Para la información que se
envía siempre existe una confirmación de recepción por parte del dispositivo. Por esta
razón es bueno diferenciar a los distintos elementos involucrados en este tipo de
comunicación.
El MAESTRO I2C se encarga de controlar al cable de reloj, por sus siglas en inglés
llamada SCL – Serial CLock. Además el MAESTRO se encarga de iniciar y parar la
comunicación. La información binaria serial se envía sólo por la línea o cable de datos
seriales, en inglés se llama SDA – Serial DAta. Dos Maestros no pueden hacer uso de un
mismo puerto I2C. Puede funcionar de dos maneras, como maestro-transmisor o maestro-
receptor. Sus funciones principales son:
Iniciar la comunicación – S
Enviar 7 bits de dirección – ADDR
Generar 1 bit de Lectura ó Escritura – R/W
Enviar 8 bits de dirección de memoria
Transmitir 8 bits de datos –
Confirmar la recepción de datos – ACK – ACKnowledged
Generar confirmación de No-recepción, NACK – No-ACKnowledged
Finalizar la comunicación
El ESCLAVO I2C, generalmente suele ser un sensor. Este elemento suministra de la
información de interés al MAESTRO. Puede actuar de dos formas: esclavo-transmisor ó
esclavo-receptor. Un dispositivo I2C esclavo, no puede generar a la señal SCL. Sus
funciones principales son:
El dato digital ó lógica que leerá cada uno de los dispositivos, corresponde el voltaje en los
flancos de subida de la señal de reloj – SCL.
Puerto serie
El puerto serie del Arduino Uno usa los pins 0(RX) y 1(TX). Estos están conectados al
controlador FTDI (ATmega 16u2) que es el que permite la traducción del formato serie
TTL a USB. Estos pins no pueden ser utilizados mientras se usa la comunicación serie.
El puerto serie del Arduino utiliza un buffer de 64 bytes. Para entender el uso del buffer
normalmente se usa el ejemplo de la sala de espera del médico. Esta sala de espera es el
buffer, que tiene una capacidad de 64 pacientes. Cada paciente es 1 byte. El médico va
atendiendo cada paciente uno por uno por orden de llegada. La enfermera que deja entrar a
los pacientes a la sala de espera son los baudios (la velocidad de recibir datos), cuando más
grande sea la velocidad, más gente entra en la sala. Si la sala está completa con 64
pacientes y llegan más, estos serán rechazados (drop o loss).
Para usar el puerto serie del Arduino hay varias funciones de programación que hay que
saber:
-available() Esta función devuelve el estado del buffer del puerto serie y rebela si hay
datos dentro de este.
-read() Lee un carácter del buffer. Es importante entender que lee un solo carácter (byte).
-write() Escribe caracteres a través del puerto serie. A diferencia de read(), escribe
tantos caracteres como quieras.
-println() Imprime los datos al puerto serie como texto ASCII seguido de un retorno de
carro (ASCII 13, o ‘\r’) y un carácter de avance de línea (ASCII 10, o ‘\n’). Este
comando tiene la misma forma que Serial.print ().
-end() Desactiva la comunicación serie, permitiendo a los pines 0(RX) y 1 (TX) ser
usadoscomo entradas o salidas digitales. Para volver a activar la comunicación serie, llamar
la función Serial.begin().
Un Display de este tipo está compuesto por siete u ocho leds de diferentes formas
especiales y dispuestos sobre una base de manera que puedan representarse todos los
símbolos numéricos y algunas letras. Los primeros siete segmentos son los encargados de
formar el símbolo y con el octavo podemos encender y apagar el punto decimal. Cada uno
de los segmentos que forman la pantalla están marcados con siete primeras letras del
alfabeto (‘a’-‘g’).
En los de tipo de ánodo común, todos los ánodos de los segmentos están unidos
internamente a una patilla común que debe ser conectada a potencial positivo (nivel “1”).
El encendido de cada segmento individual se realiza aplicando potencial negativo (nivel
“0”) por la patilla correspondiente a través de una resistencia que límite el paso de la
corriente.
En los de tipo de cátodo común, todos los cátodos de los segmentos están unidos
internamente a una patilla común que debe ser conectada a potencial negativo (nivel “0”).
El encendido de cada segmento individual se realiza aplicando potencial positivo (nivel
“1”) por la patilla correspondiente a través de una resistencia que límite el paso de la
corriente.