Diferencia entre revisiones de «shiftIn()»
De ArduWiki
(→Advertencias) |
|||
Línea 17: | Línea 17: | ||
== Advertencias == | == Advertencias == | ||
* Si vamos a interactuar con un dispositivo que está sincronizado por flancos de subida ([[RISING / FALLING|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). | * Si vamos a interactuar con un dispositivo que está sincronizado por flancos de subida ([[RISING / FALLING|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 == | == Comentarios == | ||
Línea 26: | Línea 25: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | == Vea | + | == Vea también == |
* [[bit()]] | * [[bit()]] | ||
* [[bitClear()]] | * [[bitClear()]] | ||
Línea 36: | Línea 35: | ||
== Referencias == | == Referencias == | ||
+ | * [https://www.arduino.cc/reference/en/language/functions/advanced-io/shiftin/ Guia de referencia] | ||
[[Category:Funciones]] | [[Category:Funciones]] |
Revisión del 00:09 28 jul 2018
Contenido
Descripción
Desplaza en un byte de datos un bit cada vez. Comienza a partir del bit más significativo (más a la izquierda) o menos significativo (más a la derecha). 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