Diferencia entre revisiones de «SPI»
(→Advertencias) |
(→Sintaxis) |
||
Línea 16: | Línea 16: | ||
* ¿Estan los datos desplazados (shifted) en el mayor Most Significant Bit (MSB) o menor Least Significant Bit (LSB)? Esto es controlado por el segundo parámetro del SPISetting, o sea MSBFIRTS o LSBFIRTS. La mayoría de chip SPI usan el MSB. | * ¿Estan los datos desplazados (shifted) en el mayor Most Significant Bit (MSB) o menor Least Significant Bit (LSB)? Esto es controlado por el segundo parámetro del SPISetting, o sea MSBFIRTS o LSBFIRTS. La mayoría de chip SPI usan el MSB. | ||
* ¿Esta el reloj de datos con alto o bajo? Este modo es controlado por el tercer parámetro del SPISetting. | * ¿Esta el reloj de datos con alto o bajo? Este modo es controlado por el tercer parámetro del SPISetting. | ||
− | |||
− | |||
== Métodos == | == Métodos == |
Revisión del 11:10 19 jun 2018
Contenido
[ocultar]Descripción
La librería permite comunicarse con dispositivos SPI, usando Arduino como elemento maestro (master) Serial Peripheral Interface (SPI) es un protocolo de de comunicación serie rápida entre dispositivos a corta distancia. Aparte de entre Arduino y periféricos, también permite comunicación entre microcontroladores. En una comunicación SPI hay siempre un maestro (master) que controla los periféricos. Típicamente hay tres líneas de control comunes a todos los elementos-
- MISO (Master In Slave Out)- Línea para mandar datos al maestro desde el esclavo
- MOSI (Master Out Slave IN)- Línea para mandar datos a los periféricos
- SCK (Serial Clock)- Pulsos de reloj para sincronizar la transmisión de datos generada por el maestro a una línea específica de cada periférico.
- SS (Slave Select)- El pin en cada periférico que el maestro activa o desactiva para que los datos lleguen al dispositivo que queremos.
Cuando el SS (Slave Select) esta bajo (low), el comunica con el maestro y lo ignora cuando esta en alto (high). Esto nos permite tener múltiples dispositivos compartiendo las mismas líneas de MISO, MOSI y CLK.
Placas aplicables
Sintaxis
Para escribir código para un dispositivo SPI hay que saber unas pocas cosas.
- ¿Cual es la máxima velocidad del dispositivo? Esto es controlado por el primer parámetro in el SPISetting. Si se usa un chip a 15MHz, use 15000000. Arduino automaticamente usará la mejor velocidad igual o menor que esta.
- ¿Estan los datos desplazados (shifted) en el mayor Most Significant Bit (MSB) o menor Least Significant Bit (LSB)? Esto es controlado por el segundo parámetro del SPISetting, o sea MSBFIRTS o LSBFIRTS. La mayoría de chip SPI usan el MSB.
- ¿Esta el reloj de datos con alto o bajo? Este modo es controlado por el tercer parámetro del SPISetting.
Métodos
Advertencias
Tener en cuenta que el estandar para SPI no existe y su implementación varia levemente entre dispositivos. Hay que leer la hoja de datos de cada uno.