Diferencia entre revisiones de «shiftIn()»

De ArduWiki
Saltar a: navegación, buscar
(Descripción)
(Vea también)
Línea 32: Línea 32:
 
* [[bitWrite()]]
 
* [[bitWrite()]]
 
* [[lowByte()]]
 
* [[lowByte()]]
 +
* [[hightByte()]]
 
* [[shiftOut()]]
 
* [[shiftOut()]]
  

Revisión del 02:47 5 may 2019

Descripción

Recibe en un byte de datos un bit cada vez desde un pin. Comienza a partir del bit más significativo (más a la izquierda)(MSB) o menos significativo (más a la derecha)(LSB). Para cada bit, el pin de reloj pasa a nivel alto, el siguiente bit se lee de la línea de datos y a continuación el pin de reloj pasa a nivel bajo.

Sintexis

shiftIn(dataPin, clockPin, bitOrder);

Parámetros

dataPin
aqui pondrás el puerto a leer.
clockPin
es el pin que comandara el cambio (reloj)
bitOrder
puede ser MSBFIRST (Primero el bit más significativo) o LSBFIRST (Primero el bit menos significativo).

Retorna

Retorna el byte leido.

Advertencias

  • Si vamos a interactuar con un dispositivo que está sincronizado por flancos de subida (RISING), necesitamos asegurarnos de que el pin de reloj está en estado LOW antes de la primera llamada a shiftIn() con una llamada a digitalWrite(pinReloj, LOW).

Comentarios

  • Esta es una aplicación por software; Arduino también proporciona un bus SPI que es la complementación por hardware, más rápida, pero sólo funciona en pines específicos.

Ejemplo

Vea también

Referencias