Manejo de puertos

7
MANEJO DE PUERTOS

Transcript of Manejo de puertos

Page 1: Manejo de puertos

MANEJO DE PUERTOS

Page 2: Manejo de puertos

Los registros de puertos nos permiten manipular rápidamente las entradas y salidas de los pines en lugar de declarar cada pin (uno por uno) como una entrada o salida, aquí configuramos todos los pines con una sola línea de código.

Page 3: Manejo de puertos

Arduino Uno cuenta con tres puertos manipulables (B,C y D).

• B: pines digitales 8-13

• C: entradas analógicas A0-A5

• D: pines digitales 0-7

Page 4: Manejo de puertos

El registro DDR, determina si el pin es una entrada o una salida.

El registro PORT controla si el pin está en nivel alto o en nivel bajo.

El registro PIN permite leer el estado de un pin que se ha configurado con entrada usando la función pinMode().

Existen tres registros que controlan cada puerto:

Page 5: Manejo de puertos

Los registros se utilizan de la siguiente manera:DDRX= B11101;

“X” indica el puerto a utilizar (B,C o D)B11101 es un número binario que indica las entradas y salidasde izquierda a derecha.0 = entrada1 = salidaLa longitud del número es igual a la cantidad de pines que existan en el puerto.

Page 6: Manejo de puertos

PORTX= B11101;“X” indica el puerto a utilizar (B,C o D)B11101 es un número binario que indica los estados alto o bajo de izquierda a derecha.0 = LOW1 = HIGHLa longitud del número es igual a la cantidad de pines que existan en el puerto.

Page 7: Manejo de puertos

Ejemplovoidsetup(){DDRB=B111001;//declaramos los pines //13,12,11y 8 como salida } //los pines 9 y 10 serán entradasvoidloop(){PORTB=B100001;//lospines8y13estánen //estado alto mientras que //el resto(9-12)están en estado bajoPORTB=B000000;//el estado de todo el puerto //es bajo }