Gedicht vak Twitter (4 / 8 stap)

Stap 4: Seeed en Twitter



1. Knip gaten voor de USB en Ethernet en misschien een gat voor de macht jack desgewenst aan de macht van de arduino op die manier.

2. maakt een 2.5 in door 2.5 in 2.5 in vak van velum met de 2.5 in door te 5 in bodem open

3. tape het perkament naar de top van uw box over de BlinkM en beveiligen van alle onderdelen

4. download de TrueRandom http://code.google.com/p/tinkerit/wiki/TrueRandom,
NewSoftSerial http://arduiniana.org/libraries/newsoftserial/,
en Twitter http://www.arduino.cc/playground/Code/TwitterLibrary bibliotheken

5. upload deze code aan je Arduino

#include < TrueRandom.h >

#include < SPI.h >

#include < avr/pgmspace.h >

#include < Wire.h >

#include < BlinkM_funcs.h >

#include < Client.h >

#include < Ethernet.h >

#include < Server.h >

#include < Udp.h >

#include < EthernetDNS.h >

#include < Twitter.h >

/*
op basis van Kittty Twitty Cat Toy v1.0
door Marc de Vinck
6-jan-2010
KittyTwitty kat speelgoed project gevonden in zorg, Volume 22

Tekenreeks (voorheen TextString) Library door Tom Igoe
http://www.Arduino.CC/en/tutorial/TextString
*/

de drukknop
#define pushBtn 6

Boolean afgedrukt = true;

int kleur;

vluchtige lange reader1 = 0;
vluchtige int reader1Count = 0;

#define 57337134 blauw
#define rode 23773468
#define groen 23805695

lange prevTime;
int card1;
int card2;
int count = 0;

lange dec;

int r = 0;
int g = 0;
int b = 0;

#define addr 0x09

gebruikt voor het opslaan van de status van de pin (6)
var int;

lange randNum1;
lange randNum2;
lange randNum3;
lange randNum4;

String dataString;
lange prevtime =-30000;

definiëren van de netwerkinstellingen voor de Ethernet-Shield

Dit kan worden samengesteld
byte mac [] {} =
0x1A, 0x6F, 0x99, 0xCD, 0xFF, 0xFF};

krijg dit van de instellingen, dan veranderen de laatste byte
byte ip [] {} =
10,0,1,197};

om token: http://arduino-tweet.appspot.com/
Twitter van twitter("[your_token_here]");

prog_char words1_0 [PROGMEM] = "Rood";
prog_char words1_1 [PROGMEM] = "Groen";
prog_char words1_2 [PROGMEM] = "Blue";
prog_char words1_3 [PROGMEM] = "Geel";
prog_char words1_4 [PROGMEM] = "Purple";
prog_char words1_5 [PROGMEM] = "Cyaan";
prog_char words1_6 [PROGMEM] = "Wit";

prog_char words2_0 [PROGMEM] = "lights";
prog_char words2_1 [PROGMEM] = "arts";
prog_char words2_2 [PROGMEM] = "gassen";
prog_char words2_3 [PROGMEM] = "cirkels";
prog_char words2_4 [PROGMEM] = "naalden";
prog_char words2_5 [PROGMEM] = "deurknoppen";
prog_char words2_6 [PROGMEM] = "sirens";

prog_char words3_0 [PROGMEM] = "slaap.";
prog_char words3_1 [PROGMEM] = "walk.";
prog_char words3_2 [PROGMEM] = "leven.";
prog_char words3_3 [PROGMEM] = "bestaat.";
prog_char words3_4 [PROGMEM] = "waarnemen.";
prog_char words3_5 [PROGMEM] = "denken.";
prog_char words3_6 [PROGMEM] = "weergeven";

prog_char words4_0 [PROGMEM] = "Katten zijn geweldig.";
prog_char words4_1 [PROGMEM] = "Quilts smaak zoals peperkoek.";
prog_char words4_2 [PROGMEM] = "Metaal is zeer interactief.";
prog_char words4_3 [PROGMEM] = "Licht is straling.";
prog_char words4_4 [PROGMEM] = "Geluid is de wind.";
prog_char words4_5 [PROGMEM] = "Klokken maken een goed bed.";
prog_char words4_6 [PROGMEM] = "Glas is ondoorzichtig.";

PROGMEM const char * [words1_table] = {}
words1_0,
words1_1,
words1_2,
words1_3,
words1_4,
words1_5,
words1_6};

PROGMEM const char * [words2_table] = {}
words2_0, words2_1, words2_2, words2_3, words2_4, words2_5, words2_6};

PROGMEM const char * [words3_table] = {}
words3_0, words3_1, words3_2, words3_3, words3_4, words3_5, words3_6};

PROGMEM const char * [words4_table] = {}
words4_0, words4_1, words4_2, words4_3, words4_4, words4_5, words4_6};

char words1_buffer [7];
char words2_buffer [10];
char words3_buffer [10];
char words4_buffer [30];

ongeldig reader1One(void) {}
reader1Count ++;
reader1 = reader1 << 1;
reader1 | = 1;
}

ongeldig reader1Zero(void) {}
reader1Count ++;
reader1 = reader1 << 1;
}

VOID Setup {}
Deze code eenmaal uitvoeren
BlinkM_beginWithPower();

de btn definiëren als een input zodat kunnen wij het lezen
pinMode (pushBtn, INPUT);

seriële communicatie begint zodat u gemakkelijker kunt zuiveren
Serial.begin(9600);

DATA0 naar pin 2
attachInterrupt (0, reader1Zero, stijgt);

Data1 aan op pin 3
attachInterrupt (1, reader1One, stijgt);

for (int i = 2; ik < 4; i ++) {}
pinMode (ik, OUTPUT);
digitalWrite (i, hoge); inschakelen van interne pull up veroorzaakt een
digitalWrite (i, laag); uitschakelen interne pull up waardoor nul en dus een interrupt
pinMode (i, ingang);
digitalWrite (i, hoge); interne pull up inschakelen
}

reader1 = 0;
reader1Count = 0;

begint de Ethernet-verbinding van de opgeslagen informatie
Ethernet.begin (mac, ip);

connectToTwitter();

Serial.println("Waiting"); afdrukken, gebruikt voor foutopsporing
}

ongeldig connectToTwitter() {}
Print een lege regel, gebruikt voor foutopsporing
Serial.println ("aansluiten op Twitter..."); afdrukken, gebruikt voor foutopsporing

char testFN1[4]={int(random(4000,5000))};

Als (twitter.post(testFN1)) {/ / Twitter dat we gebruiksklaar zijn
int status = twitter.wait (& Serial); wacht op een antwoord van twitter
Als (status == 200) {/ / als Twitter reageert 200
Serial.println ("Tweet OK!"); afdrukken van succes / / print een lege regel, gebruikt voor foutopsporing

} else {}
Serial.Print ("Tweet is mislukt: code");
Serial.println(status); foutcode afdrukken
connectToTwitter(); Print een lege regel, gebruikt voor foutopsporing
}
} else {}
Serial.println ("verbinding mislukt.");
connectToTwitter();
}
}

void loop {}
over en voorbij lopen, nooit stoppen
readCard();
displayColor();

status van draad sensor
checkState();
}

ongeldig getString() {}
aaneengeschakeld gedicht
dataString = strcpy_P (words1_buffer, (char *) pgm_read_word (&(words1_table[color])));
dataString = dataString + strcpy_P (words2_buffer, (char *) pgm_read_word (&(words2_table[int(randNum2)])));

dataString = dataString + strcpy_P (words3_buffer, (char *) pgm_read_word (&(words3_table[int(randNum3)])));

dataString = dataString + strcpy_P (words4_buffer, (char *) pgm_read_word (&(words4_table[int(randNum4)])));

dataString = dataString + "-1000000000";
}

ongeldig tweet() {}
functie tweet, dit heet als status = 1
char bestandsnaam [88];

dataString.toCharArray (filename, 88);

Serial.println ("aansluiten op Twitter..."); afdrukken, gebruikt voor foutopsporing
Serial.println(); Print een lege regel, gebruikt voor foutopsporing
Als (twitter.post(filename)) {}
Tweet van de ingevulde datastring van woorden
Serial.Print ("Tweeting--"); afdrukken, gebruikt voor foutopsporing
Serial.println(dataString); afdrukken, gebruikt voor foutopsporing
Serial.Print ("--Status:"); afdrukken, gebruikt voor foutopsporing
int status = twitter.wait();
Als (status == 200) {}
Serial.println("successful!");
Serial.println();
} else {}
Serial.Print ("Tweet is mislukt: code"); foutcode afdrukken
Serial.println(status); foutcode afdrukken
}
} else {}
Serial.println ("verbinding met Twitter is mislukt."); foutcode afdrukken
}
}

ongeldig readCard() {}
if(count<2) {}
Als (reader1Count > = 26) {}
int serialNumber = (reader1 >> 1) & 0x3fff;
int code = (reader1 >> 17) & 0x3ff;
DEC = (reader1 & 0xfffffff);
if(Count==0) {}
r = 0;
b = 0;
g = 0;
}

Serial.Print("DEC=");
Serial.println(DEC);

switch(DEC) {}
Case rood:
r = 255;
breken;

Case groen:
g = 255;
breken;

Case blauw:
b = 255;
breken;

standaard:
kleur = 0;

Serial.Print ("nieuwe tag");
Serial.Print(reader1& 0xFFFFFFF);
}

reader1 = 0;
reader1Count = 0;
afgedrukt = false;
} else if(reader1Count == 0) {}

}
Als (millis ()-prevTime > 2000) {}
Graaf ++;
prevTime=millis();
}

} else {}
Graaf = 0;
}

} //readCard()

VOID checkState() {/ / status van draad functie
if(!printed) {}
doStuff();
afgedrukt = true;
}
}

ongeldig displayColor() {}
Als (r == 255 & & g == 0 & & b == 0) {}
kleur = 0;
} else if (r == 0 & & g == 255 & & b == 0) {}
kleur = 1;
} else if (r == 0 & & g == 0 & & b == 255) {}
kleur = 2;
} else if (r == 255 & & g == 255 & & b == 0) {}
kleur = 3;
} else if (r == 255 & & g == 0 & & b == 255) {}
kleur = 4;
} else if (r == 0 & & g == 255 & & b == 255) {}
kleur = 5;
} else if (r == 255 & & g == 255 & & b == 255) {}
kleur = 6;
}
BlinkM_fadeToRGB(addr,r,g,b);
}

ongeldig doStuff() {}
randNum2 = random(7);
randNum3 = random(7);
randNum4 = random(7);
getString();
Tweet();
}

5. Sluit je Arduino aan de ethernet

6. test.

Gerelateerde Artikelen

Raadselachtig Ladenkastje opent met behulp van twitter en draadloze energie

Raadselachtig Ladenkastje opent met behulp van twitter en draadloze energie

Een raadselachtige cadeau! Mijn "slachtoffer" wordt gegeven drie vakken:Een zeer kleine doos vergrendeld met ketting en een hangslot.Een vergrendelde kleine doos met geen buiten sloten, dat is gesloten en heeft een reflecterende bovenste deksel.
Flone Quadcopter vervoer vak

Flone Quadcopter vervoer vak

Dit is een Flone Quadcopter vervoer doos.Dit vak vervoer is ontwikkeld zonder noten of schroeven met een dia deur voor carry een volledige drone kit: frame, propellers, gimbal, sommige batterijen en zelfs de acculader.Drones zijn zeer belangrijk voor
Camera Trap uploaden Twitter met Intel Edison

Camera Trap uploaden Twitter met Intel Edison

Camera vallen zijn speciaal ontworpen camera's om beelden van dieren in een wild te vangen. Het is gericht op het bestuderen van het ecosysteem van deze dieren in het bos. Deze camera is voorzien van motion cencors die gebruikmaken van censor pir. Al
Garduino de Upgrade, nu met meer Twitter!

Garduino de Upgrade, nu met meer Twitter!

Een paar maanden geleden kwam ik twee grote instructables.  De eerste was de Garduino, een arduino gecontroleerd tuin om u groeien planten thuis te helpen.  De tweede was de Tweet-a-Watt, een project dat u leert om te controleren uw binnenlandse ener
Twitter toezicht op speelgoed gebouwd met LEGO & Arduino

Twitter toezicht op speelgoed gebouwd met LEGO & Arduino

Dit is een geanimeerde LEGO speelgoed die controleert twitter en viert telkens wanneer een nieuwe instantie van de hashtag #BLOCKSHELL gevonden door een bel klinkt, knippert een licht en een weinig activist kerel van de minfigure van de bovenbouw van
Plotselinge Pop van vreugde (In een vak)

Plotselinge Pop van vreugde (In een vak)

Hey momoluvers! Het is Momo en vandaag ik zal u tonen hoe te maken van deze super unieke en leuke gift voor de dag van de Val! Het idee is gebaseerd off van een etsy aanbieding maar alle sjablonen laten zien mijn originele creatie. Laat me weten als
Psychische waarzegster - een automaat die de geest van Twitter leest

Psychische waarzegster - een automaat die de geest van Twitter leest

Griezelig kermis attractie en Twitter App!De psychische Hive-Mind Fortune Teller is een kermis arcade-type attractie die uw fortuin kan vertellen. Het is zelfs beter dan dat, hoewel - ook een web-verbonden Twitter toepassing die kan oogsten tweets en
Spel van tronen thema LED Schaken vak

Spel van tronen thema LED Schaken vak

Hoi allemaal! In deze video ziet u mijn proces van het maken van een spel van tronen thema LED schaakbord voor mijn tiener zoon. Gebruikte ik een goedkope glas Schaken won vastgesteldop een arcade (maar kan worden gevonden op Amazon of EBay). Moet u
Eenvoudige stappen om verbinding met televisie met behulp van Twitter

Eenvoudige stappen om verbinding met televisie met behulp van Twitter

TV en Twitter. Hoe dicht deze twee "T" s bevalt zijndaadwerkelijk aangesloten? Nou, blijkt een blik op de nieuwste trends en online gedrag nogal een up-close kameraadschap tussen deze twee. Met een uitgestrekte user-base bereiken van meer dan 50
Twitter Mood Light - 's werelds stemming in een doos

Twitter Mood Light - 's werelds stemming in een doos

Hoe voelt de wereld nu? Dit vak vertelt u.Aangedreven door: een Arduino, een WiFly draadloze module, een RGB LED, Twitter.com en een 9v batterij.Ik ben een junkie nieuws. Mij zin voor weet alles wat in de wereld gebeurt er zo snel als het gebeurt. Ik
Draaien van een twitter avatar in een aangepaste figuur van levensechte

Draaien van een twitter avatar in een aangepaste figuur van levensechte

Voor iedereen die heeft een avatar ze online gebruiken, dit is een manier u het kunt omzetten in een 3-d-model, om te pronken met rond het huis of waar dan ook.Deze methode is de oude-school modellering, niet 3-d printen, zo wordt ervan uitgegaan dat
Arduino/Twitter Mets Apple

Arduino/Twitter Mets Apple

Wanneer ik ga met mijn kinderen te zien de Mets Citi Field, ze gek voor de Home Run Apple.To me, de appel is onderdeel van wat honkbal spannend voor kinderen maakt. Hoewel mijn kinderen niet de meeste van de spellen kijken kunnen, ik nog steeds genie
Twitter Tweets op RSS-feed, naleven van de regels voor Twitter, OAuth, PHP, Apps Engine worden gebruikt

Twitter Tweets op RSS-feed, naleven van de regels voor Twitter, OAuth, PHP, Apps Engine worden gebruikt

U kan hebben genoten van de RSS-feeds Twitter aangeboden van enige tijd geleden, maar ze ging weg maart van 2013. Twitter onthuld versie 1.1 van de API in September van 2012. Twitter nu biedt tot gegevens in de indeling van JASON, en vereist dat u ee
Maken en gebruiken van een Twitter-Account

Maken en gebruiken van een Twitter-Account

We zullen in deze instructies gaan door de stappen voor het maken van een twitter-account en het gebruik ervan om zijn volledige potentieel. Laten we beginnen!Stap 1:Ga op een zoekmachine voor www.twitter.com dan kunt u beide pijlen bijvoorbeeld onde