0 calificaciones0% encontró este documento útil (0 votos) 268 vistas23 páginasTutorial - Arduino y El Bus SPI
TUTORIAL ARDUINO Y EL BUS SPI
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido,
reclámalo aquí.
Formatos disponibles
Descarga como PDF o lee en línea desde Scribd
se182016 “Tuerial:Arduin y ol bus SPI
tronixstuff
tronixstuff diversién y aprendizaje con la
EL DATACENTER Mw
MODERNO DE LA REGION
IPLAN cE
+ Casa
* Contictenos
En la Categoria | ADS204 , Arduino , COM-09767 , la educacién , Ja electrénica de
aprendizaje , leccién , MCP4162 , microcontroladores , SPI , tutorial
Tutorial: Arduino y el bus SPI
understand , uno
Aprende a usar el bus de datos SPI con Arduino en el capitulo treinta y cuatro de una serie titulada
originalmente " Getting Started / Avanzando con Arduino! ", De John Boxall - Un tutorial aparentemente
interminable en el Arduino universo, El primer capitulo es agui , la serie completa se detalla aqui
[Actualizado 10/01/2013]
Este es el primero de dos capitulos en los que vamos a empezar a investigar el bus de datos SPI, y cémo
podemos controlar los dispositivos de usarlo con nuestros sistemas de Arduino. El bus SPI puede parecer ser
una interfaz compleja de dominar, sin embargo, con un breve estudio de esta explicacién y ejemplos
practicos que pronto se convertiré en un maestro del bus! Para ello vamos a aprender la teoria necesaria, y
Tuego aplicarlo mediante el control de una variedad de dispositivos. En este tutorial las cosas van a ser lo mas
simple posible.
Pero en primer lugar, zqué es? Y un poco de teoria ...
SPI es un acrénimo de "Peripheral Interface de serie", Es un sincrono bus de datos en serie - datos pueden
viajar en ambas direcciones al mismo tiempo, en oposicién a (por ejemplo) el bus 12C que no pueden
hacerlo, Para permitir la transmisién de datos sincrona, el bus SPI utiliza cuatro cables. Se les llama
+ MOSI-. Maestro de salida, Esclavo-in Esta linea lleva los datos de nuestra Arduino para el
dispositivo (s) controlada por el SPI;
« MISO -. Maestro-in, Esclavo a cabo Esta linea transporta datos desde el dispositivo (s) controlada por
el SPI de nuevo a la Arduino;
* SS -. Esclavo de seleccién Esta linea le dice al dispositivo en el bus se quiere comunicarse con él.
Cada dispositivo SPI necesita una linea ‘mica S$ de nuevo a la Arduino;
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! vaswaote “Tutti Ari y lbs SPL
+ SCK - reloj de serie.
Dentro de estos tutoriales consideramos la placa Arduino para ser el maestro y los dispositivos SPI para ser
esclavos. En nuestro Arduino Duemilanove / Uno y tableros compatibles los pasadores utilizados son:
‘+ SS - digital de 10. Se pueden usar otras pines digitales, pero 10 es generalmente el defecto, ya que est
al lado de los otros pines SPI;
+ MOSI - digital de 11;
+ MISO - digital de 12;
= SCK- digital de 13;
Usuarios de Arduino Mega - MISO es 50, MOST es 51, SCK es 52 y SS es normalmente 53. Si esté
utilizando un Arduino Leonardo, los pines SPI estén en los pines del conector ICSP, Vea aqui para mas
informacién, Se puede controlar uno 0 mas dispositivos con el bus SPI. Por ejemplo, para un dispositivo del
cableado seria:
Los datos viajan de ida y vuelta a lo largo de las lineas MOSI y MISO entre nuestro Arduino y el dispositive
SPI, Esto s6lo puede ocurrir cuando la linea SS se establece en LOW. En otras palabras, para comunicarse
con un dispositivo SPI particular, en el autobis, fijamos la linea SS a ese dispositivo a LOW, comunica con
ellos, a continuacién, establezca la linea de regreso a ALTO. Si tenemos dos © mas dispositivos SPI en el
autobiis, el cableado se pareceria a lo siguiente:
13
Dut
p12
p10
Nétese como hay dos lineas SS - necesitamos una para cada dispositivo de SPI en el autobiis. Se puede
utilizar cualquier pin de salida digital gratuito en tu Arduino como una linea de SS. Sélo recuerda tener todas
las lineas SS altos , excepto para la linea conectada al dispositivo SPT que desea utilizar en el momento.
htpitroixstf com/20 11051 Aorial-arduino-and-tre-i-bus! 228se182016 “Tuerial:Arduin y ol bus SPI
Los datos se envian al dispositive de SPI en byte forma, Usted debe saber ahora que ocho bits forman un
byte, por Jo tanto, lo que representa un némero binario con un valor de entre cero y 255. En la comunicacién
con nuestros dispositivos SPI, lo que necesitamos saber de qué manera las ofertas dispositive con los datos -
MSB 0 LSB primero . MSB ( bit més significativo ) es el lado izquierdo del namero binario, y LSB ( bit
‘menos significativo ) es el lado derecho del nimero, Es decir:
Qt 98 oF De 98 BF ot 20
msB>[Z]i]1]1]0] 070] 0]<.sB
Ademis de enviar valores numéricos a lo largo del bus SPI, niimeros binarios también pueden representar
comandos. Puede representar a las ocho de la configuracién de activacién / desactivacién utilizando un byte
de datos, por lo que los parémetros de un dispositivo se puede configurar mediante el envio de un byte de
datos. Estos parametros varian con cada dispositivo y deben ser ilustrada en la hoja de datos del dispositive
en particular. Por ejemplo, un potenciémetro digital IC con seis macetas:
ADDR DATA
Bio B9 BS | B7 B6 BS B4 B3 B2 Bi BO
A2 Al AO |D7 D6 D5 D4 D3 D2 Di DO
MSB LSB | MSB LSB
20 ye | a7 2°
Este dispositivo requiere dos bytes de datos. El byte ADDR le dice al dispositivo que de seis a
potenciémetros de control (numerados del 0 al 5), y el byte de datos es el valor del potenciémetro (0 ~ 255).
Podemos utilizar niimeros enteros para representar estos dos valores. Por ejemplo, para ajustar el
potencidmetro nimero dos a 125, enviariamos a continuacién, 2 125 al dispositivo.
¢Cémo enviar datos a dispositivos SPI en nuestros bocetos?
En primer lugar, tenemos que utilizar la libreria SPI. Se incluye en la instalacién predeterminada de Arduino
IDE, asi que ponga lo siguiente en el inicio de su dibujo:
1 #include "SPI.h"
A continuacién, en [Link] () declaran cuyo pasador (s) sera utilizado para la SS y los puso como salida
Por ejemplo,
1 pinMode(ss, OUTPUT);
donde ss_ha sido previamente declarado como un entero de
lor de diez. Ahora, para activar el bus SPI:
1 SPI. begin;
¥, finalmente, tenemos que decirle al boceto qué manera de enviar datos, MSB o LSB en primer lugar
mediante el uso de
1 SPI. setBitOrder(MSBFIRST) ;
°
1 SPT. setBitOrder(LSBFIRST) ;
Cuando es el momento para enviar datos por el bus SPI a nuestro dispositivo, tres cosas tienen que suceder,
En primer lugar, establecer el pin digital con SS a menor:
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! 323se182016
1 digitalWrite(ss, Low,
“Tuerial:Arduin y ol bus SPI
A continuacién, enviar los datos en bytes, un byte a la vez usando:
1 SPI. transfer(value);
El valor puede ser un nimero entero / byte entre cero y 255. Por tiltimo, al finalizar de enviar datos al
Aispositivo, poner fin a la transmision mediante el establecimiento de SS alta
1 digitalWrite(ss, HIGH;
El envio de datos es bastante simple. En general, la parte mas dificil para las personas es la interpretacién de
a hoja de datos del dispositivo para entender como deben estructurarse para la transmisién de érdenes y
datos. Pero con un poco de practica, estos pequefios obsticulos pueden ser superados.
Ahora, para algunos ejemplos practicos!
Es hora de ponerse en el bus SPI y controlar algunos dispositivos, Siguiendo los ejemplos a continuacién,
usted debe obtener un conocimiento practico de cémo el bus SPI y los dispositivos se pueden utilizar con
nuestras placas Arduino.
ejemplo 34.1
Nuestro primer ejemplo usard un sencillo pero interesante parte - un potenciémetro digital (que también se
utiliza uno en el tutorial 12C ). Esta vez tenemos un Microchip MCP4162 -series 10k reostato:
ee
Aqui esti el [Link] de datos para su lectura, Para controlar que tenemos que enviar dos bytes de datos - el
primer byte es el byte de control , y por suerte para este ejemplo es siempre cero (como la direccién para el
valor del limpiaparabrisas es 00h [véase la tabla 4-1 de la ficha de datos] ). El segundo byte es el valor para
ajustar el limpiaparabrisas, que controla la resistencia. Asi que para establecer el limpiador que tenemos que
hacer tres cosas en nuestro boceto
En primer lugar, establecer la linea SS (esclavo seleccionar) a menor:
1 digitalWrite(1a, Low;
A continuacién, enviar los dos despedidas de datos:
1 [Link](@); // command byte
[Link](value); // wiper value
Finalmente establecer la linea SS de nuevo a alta:
1 digitalWrite(1o, HIGH);
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus!re82016 “uti: rina ol bs SP
Facil de hacer. La conexién con nuestra placa Arduino es muy simple - considerar la asignacién de pines
MCP4162:
MCP41X2
Single Rheostat
CSd1 8H Vpp
sck 2 70 SDO
SDIq3 5—6p PoB
Ves 44 5b Pow
Vad se conecta a SV, Vss a GND, €$ a digital 10, SCK a digital 13, SDI a digital 11 y SDO a digital 12.
Ahora vamos a ejecutar a través de los valores disponibles del MCP4162 en el siguiente esquema:
-
Example 34.1 - SPI bus demo using a Microchip MCP4162 digital potentiometer [[Link]
[Link] > chapter 34 | CC by-sa-nc | John Boxall
”
#include "SPI.h" // necessary library
int ss=10; // using digital pin 10 for SPI slave select
int del-200; // used for various delays
10 void setup()
12 pinMode(ss, OUTPUT); // we use this for SS pin
13. [Link](); // wake up the SPI bus.
14 SPI. setBitOrder(MSBFIRST) ;
15 _ // our MCPA162 reauires data to be sent MSB Cnost significant byte) first
16 +
18 void setValueCint value)
{
20 digitalWrite(ss, Lon);
21 [Link](@); // send conmand byte
22 [Link](value); // send value (0-255)
23 digitalWrite(ss, HIGH);
24}
26 void Loop()
27 t
28 for Cint a=D; 0256; a++)
2
30 setValueCa);
31 delayCdet);
32}
33 for Cint aH255; a=0;
ut
35 setValueCa);
36 delay(del);
37}
38}
Ahora para ver los resultados del boceto. En el siguiente video clip, un corremos a través del rango de
resistencia y medimos el valor del reéstato con un multimetro:
htpitroixstf com/20 11051 Aorial-arduino-and-tre-i-bus! 523se182016 “Tuerial:Arduin y ol bus SPI
Example 34.1
Antes de seguir adelante, si potenciémetros digitales son nuevos para usted, le recomendamos que lea esta
breve guia eserita por Microchip acerca de las diferencias entre los potenciémetros mecénicos y digitales.
ejemplo 34.2
En este ejemplo, vamos a utilizar el Analog Devices ADS204 de cuatro canales potenciémetro digital (
[Link] de datos ). Contiene cuatro potenciémetros lineales ohmios 10k, y cada potenciémetro se puede
ajustar a una de las 256 posiciones. La configuracién es voldtil, lo que significa que no se recuerdan cuando
la alimentacién esta apagada, Por lo tanto, cuando se aplica la alimentacién de los potenciémetros son todo
listo antes de la mitad de la escala, Nuestro ejemplo es ejemplo de montaje en la superficie SOIC-24, sin
embargo, también se fabrica en formato DIP también,
Para hacer la vida mas facil se puede soldar en un tablero del desbloqueo SOIC , que lo convierte en un
paquete a través de hoyos:
htpitroixstf com/201105 1 Aorial-arduino-and-tre-pi-bus!se182016 “Tuerial:Arduin y ol bus SPI
En este ejemplo, vamos a controlar el brillo de cuatro LEDs. El cableado es muy simple. Las conexiones
aparecen en cl [Link] datos .
Example 34.2
i.
toD13,.f p= to Bi0 Sine
toD12.. sf mm a aa
toD11. al
Y el dibujo:
// Example 34.2
#include // necessary library
int ss=10; // using digital pin 10 for SPI slave select
int dels5; // used for fading delay
void setupQ)
{
pirMode(ss, OUTPUT); // we use this for SS pin
[Link](); // wake up the SPI bus.
9 SPI. setBitOrder(MSBFIRST) ;
10 // our AD5204 requires data to be sent MSB (most significant byte) first, See data sheet pag
11 _all0ffQ); // we do this as pot memories are volatile
}
13 void allorrgy
14 // sets all potentiometers to minimum value
L
16 for Cint 2=0; 2<4; 244)
t
18 setPot(z,0);
19}
}
21 void altoncy
22 // sets all potentiometers to maximum value
L
24 for Cint 2-0; 2<4; 244)
t
26 setPot(z,255);
27
}
29 void setPotCint pot, int Level)
30 // sets potentiometer ‘pot’ to Level ‘Level’
{
32. digitalWrite(ss, Low);
33. SPI. transfer(pot);
34 SPI. transferClevel-
35 digitalWrite(ss, HIGH);
}
37 void blinkAlICint count)
{
39 for Cint 290; z
40 void indFadec)
41 {
42 for Cint a; acts at+)
43
44° for Cint 1=0; 1<255; 1+)
6 f
46 setPotCa,1);
47 delay(del);
}
htpitrorixstf com/2011/05 1 Aorial-arduino-and-tre-i-bus! 1283se182016 “Tuerial:Arduin y ol bus SPI
49° for Cint 12255; 1>=0; --1)
sof
51 setPot(a,1);
52 delay(del);
33}
}
56 void allFadeCint count)
t
for Cint
{
setPot(0,1);
setPot(1,1);
setPot(2,1);
setPot (3,1);
64 delay(del);
t
}
67 +
68 void Loop()
70 blinkAIL(3);
71 deLay(1000);
2 indFadeQ;
73 allFade(3);
74}
account; at++)=
La funcién AN/Off () y Allon () se utiliza para ajustar los potenciémetros a minimo y maximo
respectivamente, Utilizamos AUOff () al comienzo del boceto para apagar los LED. Esto es necesario ya que
el encendido de los limpiaparabrisas se establecen generalmente a mitad de camino, Por otra parte los
usamos en el blinkAll () ta funcién de abrir y cerrar ... los LEDs. La funcién setPot () acepta un nimero de
limpiaparabrisas (0 ~ 3) y el valor de establecer que los limpiaparabrisas (0 ~ 255). Por iiltimo la funcién
indFade () hace un buen trabajo de la decoloracién cada LED encendido y apagado con el fin - causando un
efecto muy similar a la modulacién PWM.
Por iiltimo, aqui estd en accién:
Example 34.2
ejemplo 34.3
En este ejemplo, vamos a utilizar el uso de cuatro digitos, de siete segmentos de visualizacién LED que tiene
una interfaz. SPI, El uso de una pantalla tal reduce considerablemente la cantidad de pasadores requeridos en
el controlador de micro y también niega el uso de circuitos integrados de registro de desplazamiento que
ayuda a reducir el consumo de energia y el numero de componentes. La parte frontal de nuestro ejemplo:
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! 23se182016 “Tuerial:Arduin y ol bus SPI
y la parte trasera:
Afortunadamente los pasadores estan etiquetados con bastante claridad. Tenga en cuenta que la tarjeta no
incluye pasadores de cabecera - que fueron soldados en el tablero después de recibir. A pesar de que esta
placa esti documentado por Sparkfun parece que hay problemas en la operacién, asi que en vez vamos a
utilizar un boceto disefiado por los miembros del foro de Arduino , Como no queria hacer caso omiso de esta
bonita pieza de hardware vamos a ver cmo funciona y utilizarlo con el nuevo boceto del foro.
Una vez mis, el cableado es bastante simple:
+ GND GND tablero para Arduino
VCC tablero para Arduino 5V
SCK tablero para Arduino D12
* Consejo de la IS a Arduino D11
+ Junta CSN Arduino D1O
El boceto es facil de usar, es necesario replicar todas las funciones, asi como las Ilamadas a las bibliotecas y
Jas definiciones de las variables. Para mostrar mimeros (0 las letras A ~ F) en la pantalla, lame a la funcion
1 write_led(a,b,¢);
donde a es el niimero para mostrar, b es el sistema de base usada (2 para binario, 8 para octal, 10 para
siempre, y 16 para hexadecimal), y ¢ es de ceros acolchados (0 = desactivado, 1 = activado). Si nos fijamos
en el void loop () parte del ejemplo bosquejo, utilizamos los cuatro sistemas de numeracin en la
manifestacién. Si el nimero es demasiado grande para la pantalla, se mostrara DE para el desbordamiento.
Para controlar los puntos decimales, de colon y el LED en la parte superior derecha de la tercera cifra,
podemos utilizar el siguiente:
1 write leddecimals(1); // Left-most decimal point
htpitroixstf.com2071/05 14 dora-arduine-and-be-sp-bus! 923se182016 “Tuerial:Arduin y ol bus SPI
writeled_decimals(2);
write_led_decimals(4);
write led_decimals(8); // right-most decimal point
write led_decimals(16); // colon LEDs
write led_decimals(32); // apostrophe LED
write led decimals(0); // off
Después de todo esto, asi es el boceto de demostracién para su lectura:
5
Example 34.3 - SPI bus demo using SFE 4-digit LED display [[Link]
[Link] > chapter 34
Based on code by Quazar & Busaboi on Arduio forum - [Link]
”
#define DATAQUT 11 //MOSI
#define DATAIN 12 //MISO - not used, but part of builtin SPI
define SPICLOCK 13 //sck
define SLAVESELECT 10 //ss
char spi_transfer(volatile char data)
{
SPOR = data; // Start the transmission
while (I(SPSR & (1<
{
ey
return SPDR; // return the received byte
}
void setup()
{
byte clr;
pinModeCDATAOUT, OUTPUT);
PinModeCDATAIN, ’ INPUT);
pinMode(SPICLOCK, OUTPUT);
pinMode(SLAVESELECT, OUTPUT);
digitalWrite(SLAVESELECT, HIGH); //disable device
SPCR = (1<
cLr=SPSR;
clr=SPOR;
delay(10);
write_Led_numbers(Ox78,0x78,0x78,0x78);_//Blank display
write led_decimals(@x00); // ALL'decinal points off
i
Void write led decimals(int value)
{
digitalWrite(SLAVESELECT, LOW);
deLay(1e);
spi_transfer(0x77); // Decimal Point OpCode
spi_transfer(value); // Decimal Point Values
digitalWriteCSLAVESELECT, HIGH); //release chip, signal end transfer
}
void write_lednunbers(int digitl, int digit2, int digit3, int digita)
{
digitalWriteCSLAVESELECT, LON);
delay(1@);
spi_transfer(digit1); // Thousands Digit
spi_transfer(digit2); // Hundreds Digit
spictransfer(digit3); // Tens Digit
spi_transfer(digit4); // Ones Digit
digitalWrite(SLAVESELECT, HIGH); //release chip, signal end transfer
+
void write_led(unsigned short num, unsigned short base, unsigned short pad)
{
unsigned short digit[4] = {
Br
unsigned short place = 0;
‘if ( (base<2) || (base>16) || (num>(base*base*base*base-1)) ) {
57 write led-nunbers(’ ', 0x00, @x0f, ' '); // indicate overflow
sé}
59 else {
60 while ( Cnum I pad) && (place=; --i) {
write_led Ci,2,0);
delay(100);
}
delay(5@@); // now octal
for Cint i= 0} i < 500; it) {
write_led (i,8,0);
delay(5@);
}
deLay(see);
77 now hexadecimal
for Cint i = 20000; i < 22000; i++) {
write_led (i,16,@);
delay(s0);
i
delay(see);
3
htpitroixstf com/20 11051 Aorial-arduino-and-tre-i-bus!
wesse182016 “Tuerial:Arduin y ol bus SPI
Example 34.3
Asi que ahi lo tienes - es de esperar un facil entender la introduceién al mundo del bus SPI y cémo controlar
los dispositivos dentro. Como siempre, ahora le corresponde a usted y su imaginacién para encontrar algo
para controlar o levantarse a otras travesuras. En el proximo articulo SPI vamos a ver los datos de lectura
escritura a través del bus SPI
En el mientras tanto divertirse y mantener el control en [Link] . Por qué no seguir las cosas en
Twitter, Google , suscribirse a las actualizaciones de correo electrnico 0 RSS USNG los enlaces en la
columna de la derecha? Y unirse a nuestro amable grupo de Google - dedicada a los proyectos y elementos
relacionados en esta pagina web. Registrate - es gratis, ities el uno al otro - y todos podemos aprender
algo.
iiltimas publicaciones
John Boxall
Fundador, propietario y jefe de redaccién de [Link].
Meguste
we) Bl
EEPROM interna de Descubriendo Arduii
Kit - Disefio nootropic Hackvision
33 Respuestas a "Tutorial: Arduino y el bus SPI"
htpitroixstf com/20 11051 Aorial-arduino-and-tre-i-bus! v8se182016 “Tuerial:Arduin y ol bus SPI
Sergegsx dice:
Hola, en primer lugar felicidades por una serie de tutoriales que son materiales de alta calidad.
Si usted tiene el tiempo y el interés, seria muy util para ver el cédigo sobre cémo utilizar 2 dispositivos
‘SPI en la misma secuencia de comandos mediante el cambio de bajo el pin CS. He intentado hacer esto,
con el funcionario escudo de Ethernet de Arduino y no tuvo éxito por lo que seria bueno para ver un
ejemplo. También vendra con la mano en el proyecto actual.
Gracias y una vez mis, felicidades.
respon
° TE vistors
Hola y gracias por sus comentarios
Hay un problema conocido con el escudo real Arduino Et
renunciar al bus SPI correctamente.
La manera més facil de solucionar el problema es conseguir otro escudo como http: // www.
[Link]/products/ethernet-shield-with-poe que esta disefiado para resolver el problema.
En el proximo par de semanas estaré escribiendo mas sobre bus SPI.
vitores
John
jernet y SPI debido al chip Wiznet no
responder
2. 3 Prabhakaran RAJA dice:
13 de enero 2012 a las 21:13
hola ,, Sri cémo puedo superponerse a bordo de matriz de puntos conducido usando HT1632c
ya sé cémo ¢s el trabajo y todos los detalles ,,, i necesitan concepto de superposicién en 1632¢ HT ,,.,
responder
° John Boxall dice:
14 de enero de 2012 a la
9:10 am
No he utilizado esa parte por lo que no puede ayudarle.
John
responder
3 RE dice:
4 mayo 2012 a las 2:19 am
John,
Gran Tut! Estoy teniendo un problema hablando con mi olla digital. Es de la misma familia que el que
se usa, tengo un MCP4161. Parece que no puede conseguir que se varian las resistencias para la vida
de mi, Alguna sugerencia?
responder
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! ra28se182016 “Tuerial:Arduin y ol bus SPI
° ‘... Boxall dice:
4 mayo 2012 a las 10:26
Gracias, me alegra que le gusta, Solucién de problemas es dificil sin estar alli por asi decirlo, sin
embargo las cosas habituales vienen a la mente. Comprucbe el cableado, especialmente si se
utiliza un tablero sin soldadura. También tenga en cuenta los pasadores del pozo son diferentes
en una MCP4161 - utiliza los pines 5 ~ 7. Véase la pagina 1 de la hoja de datos.
Vitores
John
responder
. YY Nick dice:
John,
gracias por la ayuda! Tengo trabajo bien. A continuacién, pregunta més extrafia, {Hay
alguna forma de cambiar la cual utiliza el pin MOSI. Estoy alterando algunos
temporizadores, asi como para mi proyecto y he pasador 11 amarrado alli. ,Es del todo
posible cambiar los pines bus SPI?
. 8 John Boxall dice:
Smavo 2012 las 8:54 am
La manera més facil seria modificar su proyecto para liberar D1] para el uso de SPI
De lo contrario podria cambiar a un Arduino Mega / etc. SPI es como en los pines 50 ~
53.
af
. José dice!
22 de mayo 2012 a las 21:22
Hola Juan:
un tutorial sobre SPI con ai
23 de mayo 2012 a |: 45 am
{Cuil es el nimero de modelo del acelerémetro?
responder
5. = Clark Darin Gozén dice:
20-de junio 20124 15:21
Hola John,
Im nuevo a SPI también con la programacién de Arduino ... En el tutorial que tiene discutir sobre el
envio de datos de Arduino para dispositivos SPI ... mi caso esta recibiendo datos desde el dispositive
SPI ... Estoy planeando utilizar CS5463 monofasico, bi-direccional de potencia / IC Energia para mi
epiteorixetif com 207105 18rial-ordine anche sb! wsswazo%6 “uta: Arn y bus SP
proyecto, El chip fue disefiado para medir con precisi6n instantanea corriente y tensién, y calcular V
RMS, IRMS, potencia instantdnea, potencia aparente, potencia activa, reactiva y potencia de una sola
fase, 2- 0 aplicaciones de medicién de potencia de 3 hilos.
‘$5463 también utiliza el bus PSI y tuve tiempos dificiles para entender la hoja de datos. {Me podria
ayudar con esto ... Gracias
Alrespecto,
Clark
responder
° John Boxall dice:
20 de junio 2012 a 22:25
SPI parte tutorial 2 se refiere a la recepeién de datos desde dispositivos SPI -
http:/tronixstuff com/2011/06/
responder
6. : Jordan Whitleyq dice:
gs 2012 a las 8:12 am
John,
estoy disfrutando sus tutoriales hasta el momento, son increiblemente ‘itil e impresionante! Acabo de
subir el cédigo anterior para el single redstato, y estoy teniendo algunos problemas. En primer lugar,
en donde se estén tomando sus medidas para su resistencia? Acabo de ejecutar dos hilos de la mosca
fuera de los pines 5 y 6 en el IC, y ser acortado mi multimetro lleva a ambos cables. Siempre que no
hay poder, estoy consiguiendo una resistencia de algdn lugar alrededor de 8Mohm, ahora cada vez que
se enciende el aparato encendido, estoy recibiendo una resistencia constante 5.07Kohm, no es
fluctuante en absoluto. Estoy utilizando el Arduino Mega 2560, {cree que esto podria ser el problema
de alguna manera? Si me pudiera dar sus pensamientos sobre esto me seria de gran aprecio, y también
donde se estén tomando las lecturas de, Muchas gracias! Mantenerse al dia todo el gran trabajo!
responder
° : Jordan Whitley dics
6 de agosto de 2012 a las 8
am
En realidad, ahora que lo miro, los pasadores de MEGA para SPI se encuentran en un area
diferente. Los pasadores son 50 (MISO), 51 (MOSD, 52 (SCK), y 53 (SS). {Podria por favor,
sélo dime lo que necesitan ser conectados con lo patillas de la IC pasadores? Muchas gracias.
. & John Boxall dice:
[Link] agosto de 2012 a las 8:26 am
Vdd se conecta a SV, Vss a GND, CS a digital 53, SCK a digital 52, SDI a digital 51 y
SDO a digital 50,
° ae
gosto de 2012 a las 08:21 am
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! 1628se182016 “Tuerial:Arduin y ol bus SPI
Si, medir la resistencia de mas del 5 y 6,
responder
: Jordan Whitley dic:
Zde agosto de 2012 a
2 am
una gran cantidad John Gracias! Estos tutoriales son muy ditiles! |Mantener el buen trabajo!
responder
8. JT Abhi dice:
19 de de septiembre de 2012 a las 4:20 am
HI, tutoriales muy itil para los prineipiantes. Podria, por favor tratar de publicar un ejemplo de
Arduino Arduino transferencia SPI. Sera muy util
responder
° TE scour dice:
19 de de septiembre de 2012 a Jas 11
Una idea interesante, lo pondré en Ia lista.
responder
9. ay, dice:
12 de febrero de 2013
4:31
Juan, muchas gracias por sus tutoriales, he publicado un enlace en Google foro de Arduino para que
otros puedan encontrar, Busco al puerto algiin cédigo de visualizacion Adafruit SPI para el
vencimiento y la aplicacién de SPI es muy '328 especifico, como el cédigo de visualizacién de
Sparkfun.
La Debido que no le gustan las manipulaciones de registro como el 328, asi que estoy de utilizar
lamadas de biblioteca Arduino SPI. Si usted tiene alguna informacién sobre lo que se esté haciendo
aqui lo agradeceria, Gracias, Mike
respond:
° &.. Boxall dice:
3
Usted seria mejor publicar todo lo que en los foros de soporte Adafiuit.
responder
10. Ashfaque dice:
27. de abril de 2013 a las 5:06
Quiero utilizar una EEPROM Microchip 25LC1024 SPI con mi Arduino DUE. {Me puede dar
instrucciones o un tutorial, He encontrado algunos foros en la web de discutir esto, pero no puedo
encontrar nada especifico para el DUE.
responder
htpitronixstfcom/2071/05 14h doral-arduine-and-be-sp-bus! vw28se182016 “Tuerial:Arduin y ol bus SPI
° A... Boxall dice:
27 de abril de 2013 a las 10:50
Trate hitp://arduino cc/forunv/[Link]/topic,[Link]! . $i realmente se quiere que pase el
tiempo para escribir un tutorial personalizado, por favor enviar un giro postal de $ 264 a John
Boxall, PO Box 5435 Clayton 3168. Lo escribiré y le enviar una factura de impuestos,
responder.
uL Mihailo dice:
27. de mayo de 20
12
En la funcién void setPot (), se puede explicar un poco mas sobre SPLtransfer (bote), especificamente
el parametro. :Dénde en la hoja de datos que sabemos que podemos ir de 0 a 4? A mi entender, en
primer lugar "transferencia" de la direccién, y luego el valor. Entonces, ze6mo son 0,1,2,3,4 referencia
a las direcciones que pertenecen a los cuatro potenciémetros digitales?
respond
° & John Boxall dice:
28 de mayo de 2013 a las 18
Sélo hay cuatro ollas, numeradas (y que se hace referencia como) 0 a 3. Los datos de
direccionamiento se explican en la tabla uno, pagina ocho de la hoja de datos. Enviamos dos
bytes para el ADS204, sin embargo, sélo lee los tres bits menos del primer byte (que es el
mimero de la nasa para programar), entonces el segundo byte es el valor olla.
responder
Ah... dic
30 de mayo de 2013
am
? gSe puede hacer un tutorial para el MCP 41X1
Hay algunas razones por las cuales:
1-E1 SDI y SDO estén en un pin. Conseguir que trabajar con un Arduino ha sido un dolor para mi.
2 Este chip tiene la capacidad de desconectar cualquiera de sus terminales (TCON). Este También
estoy teniendo problemas con el. Puede estar relacionado con el primer punto.
° Bu dice:
30 de mayo de 2013 a las 11:10 am
No tengo ninguna en stock, por lo que no por el momento. Esto puede ser de interés ~
[Link] ghy/ArduinoL ibraries/tree/master/MCP4161
responder
\ Pete G dice:
e agosto de 2013 a las 23:31
BA
Hola John
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! wesse182016 “Tuerial:Arduin y ol bus SPI
{Qué niveles de tensién son las salidas SPI ATmega 2560.
respond
° &... Boxall dice:
‘de agosto de 2013 a las 9:30 am
Asi que es s6lo de alta y baja, por lo que depende de la tensin de alimentacién,
responder
14./ ")\ Francesco dice:
30 de de noviembre de, 2014 a 18:35,
Buenos dias,
mi nombre es Francesco.
Hace un aio compré un panel encabezado "seguro de la electrénica P4 32x8 3208 led rojo
unidad de matriz de puntos spi tablero como" y el "Arduino UNO" pero yo
no puede
entender c6mo usar el programa de panel.
Me gustaria afiadir algunos botones y potenciémetros para el sistema.
Por ejemplo: presionando el botén "1" se ilumine la pantalla con los
guardados
nombre wich tiene una duracién de 30 segundos por lo menos. Al pulsar otro aspecto de un botén
se ilumina con otro nombre wich salvado también tiene una duracién de 30 segundos por lo menos
y asi sucesivamente para los otros botones wich tiene que recordar las palabras guardadas.
‘También me gustaria saber c6mo afiadir dos potenciémetros: por un tobogan
de control de velocidad y uno sélo para control de tiempo.
stoy esperando su respuesta y gracias de antemano.
Cordialmente,
Francesco
respon
° &... Boxall dice:
1 de diciembre de, 2014 a 11:49 am
‘No podemos pasar el tiempo para depurar sus proyectos individuales. O bien pedir al proveedor
para obtener ayuda, o hablar con esta persona que les parece utilizar una gran cantidad:
http:/timewitharduino [Link]
15. <= kevenlaker dice:
de diciembre de, 2014 a 20:00
Es posible que tenga [escudo malisima de ElecFreaks]: [URL suprimido]
responder
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! sw23se182016 “Tuerial:Arduin y ol bus SPI
° &... Boxall dice:
9 de diciembre de, 2014 a 21:15
Detener el correo basura en su pagina web.
responder
Trackbacks / Pingbacks
Deja una respuesta
Nombre (requerido)
Correo (no seri publicado) (equerido)
Sitio web
enviar comentario
Notifiqueme de comentarios consecuentes por email
Notificame de nuevas entradas por e-mail
Puede que no haya més actualizaciones, la moderacién de comentarios o respuestas de correo electrénico
desde hace algin tiempo,
Haciendo de é1 el mejor valor de Australia para la electrénica de aficion: vs e adafrui
Altronics, DFRobot, Freetronics, Pololu y mucho més!
Recibir notificaciones de nuevos mensajes por correo electrénico.
[Email Address
Suseribir
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! 1923se182016 “Tueria:Arduin y ol bus SPI
Os gemGGoe
Free 10pos
Buscar
Por qué no unirse a nuestro foro de discusién moderados?
Haga clic para detallado capitulo indice
Capitulos 0123.4
Capitulos 56 6a 7 &
Capitulos 910 11 12 13 Ch. 14 - XBee Ch. 15 - RFID - RDM-630 Ch. 16 - Ethemet Ch. 17- GPS -
EM406A Ch, 18 - RGB matriz - en espera de actualizacién Ch, 19 - GPS - MediaTek 3329 Ch, 20 = 12C bus
rie [Cap. 21 -12C te IL Cap, 22 - pin Aref Ch, 23 - Pantalla tictil Ch, 24 - LCD monocromo Ch. 2:
= botones analégicos Ch. 28 - Color LCD Ch. 29 - TFT LCD - proximamente aqui .. Ch. 30 - Arduino +
twitter Ch, 31 - EEPROM incorporada Ch, 32 - Control de infrarrojos Ch, 33 - Control de CA a través de
40a Rueda cambia Il Cap. 41 ~ Mas ES digital Ch. 42 -teclados auméricas Ch. 43 - Puerto Manipulacign
= Uno Ch, 44 - ATtiny + Arduino Ch. 45 - Sensor ultrasénico Ch, 46 - botones analégicos + II Cap. 47 -
Internet controlado por relés Ch, 48 - MSGEQ7 analizador de espectro Primer vistazo - Arduino Debido Ch.
49 - KTM-S1201 médulos LCD Ch, 50 - 1119325 médulos LCD TFT en color Cap, $1 -MC14489 LED.
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! 2023se182016 “Tuerial:Arduin y ol bus SPI
controlador de pantalla IC Ch. 52 - NXP PCF8591 ADC / DAC IC Ch. 53 - TI ADS1110 16-bit ADC IC Ch.
4 - NXP PCF8563 RTC Ch. 56 - MAX7219 LED controlador IC Ch. $7 - TI TLC5940 LED controlador IC
h, rial PCF8574 LCD mochilas Ch, 59 - L 298 de control del motor cap. 60 - DS1307 y DS3231
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! 223se182016 “Tuerial:Arduin y ol bus SPI
ARDUINO
WORKSHOP
Workshops
bs Prieto
hepsitrorixstuf como 05/13se182016 “Tuerial:Arduin y ol bus SPI
ARDUINO
Compra y apoyar chip de silicio - Revista Electronica tnica de Australia
Increible Arduino escudo Directorio del blog cev David L, Jones revista chip de silicio siempre una gran
lectura! Hablar Electronica Prototipos Peligrosas El podcast amperes por hora [Link] de alta
tecnologia de rehabilitacién de viviendas
[Link] por John Boxall esté bajo una licencia Licencia Intemacional de Atribucién-No comercial-
‘Compartir 4.0
htpitroixstf com2071/05/14tdora-arduin-and-be-sp-bus! aes
También podría gustarte
Arduino
Aún no hay calificaciones
Arduino
13 páginas
Win IDE
Aún no hay calificaciones
Win IDE
12 páginas
Progra 4
Aún no hay calificaciones
Progra 4
6 páginas
Progra 1
Aún no hay calificaciones
Progra 1
6 páginas