Tip 5

De ArduWiki
Revisión del 16:54 26 sep 2019 de Kike GL (Discusión | contribuciones) (Página creada con «== Descripcion == Cuando tenemos que manejar muchos pines, es mejor adecuar nuestros requerimientos a bancos completos y manejar el banco directamente porque es mucho mas r...»)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Descripcion

Cuando tenemos que manejar muchos pines, es mejor adecuar nuestros requerimientos a bancos completos y manejar el banco directamente porque es mucho mas rápido en Arduino. En este ejemplo queremos poner como salidas los pines D2 a D13, del D2 a D10 en LOW y D11 a D13 en HIGH.

Tip: No debemos cambiar los pines 0 (Rx) y 1 (Tx) o no funcionara el puerto serie.


Ejemplo

void setup() {
   byte pin;
   for (pin=2; pin<=13; ++pin) {
      pinMode(pin, OUTPUT);
   }
   for (pin=2; pin<=10; ++pin) {
      digitalWrite(pin, LOW);
   }
   for (pin=11; pin<=13; ++pin) {
      digitalWrite(pin, HIGH);
   }
}
void setup(){
   //Pines D7..D1 (Tx) como salida y D0 (Rx) como entrada
   DDRD = B11111110;    //Pines digitales: 7,6,5,4,3,2,1,0
   //Pines D13..D8 como salidas
   DDRB = B00111111;    //Pines digitales: -,-,13,12,11,10,9,8
   //Pines D7..D2 en LOW
   PORTD &= B00000011;  //Apaga: 2..7; deja tan cual 0 y 1.
   //Pines D13..D11 en HIGH y D10..D8 en LOW
   PORTB = B00111000;   //Prende: 13,12,11; apaga: 10,9,8.
}

Vea también

Tips


Referencia externa