2. 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.
3. 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
4. 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:
5. 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 = entrada
1 = salida
La longitud del número es igual a la cantidad de pines que existan en el puerto.
6. 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 = LOW
1 = HIGH
La longitud del número es igual a la cantidad de pines que existan en el
puerto.
7. Ejemplo
voidsetup(){
DDRB=B111001;//declaramos los pines
//13,12,11y 8 como salida
} //los pines 9 y 10 serán entradas
voidloop(){
PORTB=B100001;//lospines8y13estánen
//estado alto mientras que
//el resto(9-12)están en estado bajo
PORTB=B000000;//el estado de todo el puerto
//es bajo
}