Diferencia entre revisiones de «shiftIn()»
De ArduWiki
(→Advertencias) |
(→Advertencias) |
||
Línea 16: | Línea 16: | ||
== Advertencias == | == Advertencias == | ||
− | * Si vamos a interactuar con un dispositivo que está sincronizado por flancos de subida [[RISING / FALLING| | + | * 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). |
* Esta es una implementación de software; Arduino también proporciona una biblioteca SPI que usa la implementación por hardware, que es más rápida pero solo funciona en pines específicos. | * Esta es una implementación de software; Arduino también proporciona una biblioteca SPI que usa la implementación por hardware, que es más rápida pero solo funciona en pines específicos. | ||
Revisión del 19:05 27 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).
- Esta es una implementación de software; Arduino también proporciona una biblioteca SPI que usa la implementación por hardware, que es más rápida pero solo funciona en pines específicos.
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