Manejo de puertos
-
Upload
felipe-romano -
Category
Engineering
-
view
7 -
download
0
Transcript of Manejo de puertos
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.
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
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:
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.
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.
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 }