Paso 7: Paralaje y Twitter
1. obtener un token para enviar un mensaje utilizando OAuth. http://Arduino-Tweet.appspot.com
2. para configurar la información de la red en el código, empezar por mirar la configuración de red del ordenador. En el Mac, vaya a preferencias de sistema/red, luego haga clic en el botón avanzado y seleccione la ficha TCP/IP.
3.for dirección IP libre de código generalmente sólo puede tomar la configuración de red y aumentar un poco el último número. Si fue tu dirección IP: 192.168.1.2, usted podría intentar 192.168.2.12
4. descargar la biblioteca de Twitter http://www.arduino.cc/playground/Code/TwitterLibrary
5. crear un dibujo nuevo. Pegar en este código. realizar las modificaciones necesarias:
#include < Wire.h > #define rxPin 2 byte r = 0, g = 0, b = 0; int cuenta = 0; prog_char rojo [] PROGMEM = "[su número de etiqueta RFID]"; Const char PROGMEM * colorTags_table [] = {} char tags_buffer [12]; RFID de NewSoftSerial = NewSoftSerial(rxPin,txPin); ctt boolean = false; modificar los dos últimos bytes-puede ser cualquier cosa modificar el último número de la ip es única Twitter twitter ("[su ficha aquí]"); Poema de cadena; largo randNum2; poema prog_char words2_0 [] PROGMEM = 'nubes'; prog_char words3_0 [] PROGMEM = "vida."; prog_char words4_0 [] PROGMEM = "cerdos volarán pero los hombres no serán"; Const char PROGMEM * words1_table [] = {} Const char PROGMEM * words2_table [] = {} Const char PROGMEM * words3_table [] = {} Const char PROGMEM * words4_table [] = {} char word1_buffer [8]; /// Serial.Begin(9600); lastColor = 7; Ethernet.Begin (mac, ip); comienza la conexión Ethernet }
#include < BlinkM_funcs.h >
#include < NewSoftSerial.h >
#include < avr/pgmspace.h >
#include < Ethernet.h >
#include < EthernetDNS.h >
#include < Twitter.h >
#define txPin 3
int blinkm_addr = 0 x 09;
pinta larga;
prog_char verde [] PROGMEM = "el número de etiqueta de RFID]";
prog_char azul [PROGMEM] = "el número de etiqueta de RFID]";
rojo, verde, azul};
char testFN [80];
mac de bytes [] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFF, 0xFF};
byte ip [] = {10,0,1,29};
int color = 7;
lastColor int = 7;
largo randNum3;
largo randNum4;
prog_char words1_0 [] PROGMEM = "Rojo";
prog_char words1_1 [] PROGMEM = "Verde";
prog_char words1_2 [] PROGMEM = "Azul";
prog_char words1_3 [] PROGMEM = "Magenta";
prog_char words1_4 [] PROGMEM = "Cyan";
prog_char words1_5 [] PROGMEM = "Amarillo";
prog_char words1_6 [] PROGMEM = "Blanco";
prog_char words2_1 [] PROGMEM = "sellos";
prog_char words2_2 [] PROGMEM = "rascacielos";
prog_char words3_1 [] PROGMEM = "fly.";
prog_char words3_2 [] PROGMEM = "sueño.";
prog_char words3_3 [] PROGMEM = "rodean.";
prog_char words3_4 [] PROGMEM = "implosión.";
prog_char words4_1 [] PROGMEM = "El rojo rosa rompe en el oblivion.";
prog_char words4_2 [] PROGMEM = "Leyendas vivas pero héroes mueren";
prog_char words4_3 [] PROGMEM = "Small talk es grande en el lenguaje de la vida.";
words1_0,
words1_1,
words1_2,
words1_3,
words1_4,
words1_5,
words1_6};
words2_0,
words2_1,
words2_2
};
words3_0,
words3_1,
words3_2,
words3_3,
words3_4
};
words4_0,
words4_1,
words4_2,
words4_3};
char word2_buffer [12];
char word3_buffer [10];
char word4_buffer [44];
void setup() {}
BlinkM_begin();
RFID.begin(9600); / / RFID lector SOUT pin conectado al pin RX del Serial a 9600bps
BlinkM_setRGB (blinkm_addr, 0, 0, 0); //call que se desvanece a deseado color
Delay(1000);
connectToTwitter();
{if(CTT)}
Serial.println ("iniciar todo");
}
void connectToTwitter() {/ / imprime una línea en blanco, utilizada para la depuración
Serial.println ("conexión a Twitter..."); imprimir, utiliza para la depuración
char testFN1[4]={int(random(1000,2000))};
Si (twitter.post(testFN1)) {/ / Twitter que estamos ya en funcionamiento
int estado = twitter.wait (y serie); esperar una respuesta de twitter
Si (status == 200) {/ / si Twitter responde 200
Serial.println ("Tweet OK!"); impresión de éxito / / imprimir una línea en blanco, utilizada para la depuración
CTT = true;
} else {}
Serial.Print ("Tweet error: código");
Serial.println(Status); código de error de impresión
connectToTwitter(); imprimir una línea en blanco, utilizada para la depuración
}
} else {}
Serial.println ("fallada la conexión.");
connectToTwitter();
}
}
void loop() {}
BlinkM_setRGB(blinkm_addr,r,g,b);
sendRead();
readTag();
}
void sendRead() {}
RFID.flush();
RFID.print("!RW");
RFID.print (0x0F, BYTE);
}
void readTag() {}
if(Count<2) {}
Código del octeto [12];
bytesread int = 0;
String msg;
while(bytesread<12) {/ / Lee código de 10 dígitos
Esto bloquea e idealmente debe tener un tiempo de espera
Si (RFID.available()) {}
código [bytesread] = RFID.read();
bytesread ++;
}
Else {}
Esto ha solucionado el problema
BlinkM_fadeToRGB (blinkm_addr, r, g, b) //call que se desvanece a deseado color
}
if(bytesread == 12) {}
Si (code[0]==0x0A) {}
para (int i = 1; i < 11; i ++) {}
Serial.Print (código [i], hexagonal);
MSG = msg + código [i];
}
{if(Count==0)}
r = 0;
b = 0;
g = 0;
}
para (int i = 0; i < 3; i ++) {}
strcpy_P (tags_buffer, (char *) pgm_read_word (&(colorTags_table[i])));
{if(MSG==tags_buffer)}
{Switch(i)}
caso 0:
r = 255;
rotura;
caso 1:
g = 255;
rotura;
caso 2:
b = 255;
rotura;
}
}
} //end bucle for
} //end código [0] == 0x0A
} //end bytesread == 12
}
displayColor();
Si (millis ()-pt > 1500) {}
cuenta ++;
PT=Millis();
}
} //end si cuenta
Else {}
cuenta = 0;
}
}
{} void getString()
concatena el poema
poema = strcpy_P (word1_buffer, (char *) pgm_read_word (&(words1_table[color])));
poema poema = strcpy_P (word2_buffer, (char *) pgm_read_word (&(words2_table[randNum2])));
poema poema = strcpy_P (word3_buffer, (char *) pgm_read_word (&(words3_table[randNum3])));
poema poema = strcpy_P (word4_buffer, (char *) pgm_read_word (&(words4_table[randNum4])));
poema = poema + "-Lukas";
}
void getPoem() {}
randNum2 = random(3);
randNum3 = random(5);
randNum4 = Random (4);
getString();
Tweet(Poem);
lastColor = color;
}
void displayColor() {}
Si (r == 255 & & g == 0 & & b == 0) {}
color = 0;
}
else if (r == 0 & & g == 255 & & b == 0) {}
color = 1;
}
else if (r == 0 & & g == 0 & & b == 255) {}
color = 2;
}
else if (r == 255 & & g == 0 & & b == 255) {}
color = 3;
}
else if (r == 0 & & g == 255 & & b == 255) {}
color = 4;
}
else if (r == 255 & & g == 255 & & b == 0) {}
color = 5;
}
else if (r == 255 & & g == 255 & & b == 255) {}
color = 6;
}
else if (r == 0 & & g == 0 & & b == 0) {}
color = 7;
}
{if(color!=lastColor)}
getPoem();
BlinkM_fadeToRGB (blinkm_addr, r, g, b);
}
}
{} void tweet (poema de cadena)
poem.toCharArray (testFN, 80);
Serial.println(Poem);
---para twitter---
Serial.println ("conexión a Twitter..."); imprimir, utiliza para la depuración
Serial.println(); imprimir una línea en blanco, utilizada para la depuración
Si (twitter.post(testFN)) {/ / tweet el datastring completado de palabras
Serial.Print ("Twitter--"); imprimir, utiliza para la depuración
int estado = twitter.wait();
Si (status == 200) {}
Serial.println("Successful!");
Serial.println();
}
Else {}
Serial.Print ("Tweet error: código"); código de error de impresión
Serial.println(Status); código de error de impresión
}
}
Else {}
Serial.println ("conexión a Twitter fallada."); código de error de impresión
Delay(500);
Tweet(Poem);
}
digitalWrite (statusPin, bajo); sale el LED de estado
Serial.println("Ready"); imprimir, utiliza para la depuración
Serial.println(); imprimir una línea en blanco, utilizada para la depuración
---para twitter---
}
5. Enchufe la fuente de alimentación y cable Ethernet y el interruptor. El LED de alimentación debe venir y en unos segundos, el estado de la red LED, también. El código tweets un mensaje "Para arriba y corriendo" para hacerle saber que todo está bien. Conecte un cable USB en el Arduino y escuchar en el puerto serie para la depuración de algunos.