IMP-ERSONATOR: Elektriska Imp + Arduino + Wave Shield = avlägsna ljud fil spelare (5 / 7 steg)
Steg 5: Set Up the Electric Imp och upload kod med Imp planeraren
Detta innebär driver den från Imp sköld (bara plug arduino stacken till datorn med en USB-kabel) och använder elektriska Imp App för att blinka Detaljer till kortet. Detta görs med hjälp av en serie blinkar på skärmen smartphone så du inte behöver några särskilda kablar för denna del.
Också måste du registrera dig på webbplatsen elektriska imp så att du kan använda Imp planeraren.
När du är inloggad i kan du klicka på fliken impees och du bör se en hänvisning till din Imp.
Klicka på fliken kod följt av + att skapa en ny imp kod enhet. Ange ett namn för din kod (jag använde Trigger) och sedan klicka på OK. Du kommer sedan att tas till kodredigeraren. Kopiera och klistra in koden nedan i kodredigeraren.
Det är en ganska enkel bit kod som anpassar sig mycket grundläggande exempel i avsnittet Imp handledning. Den största skillnaden är att det finns tre hårdvara stift som kan utlösas av indata från en webbsida som dessa är stiften ansluten till arduino som i sin tur utlöser ljudfilerna. Med ditt uppdrag Imp drivs upp du kan klicka på vad ser ut som en uppspelningsknapp och koden är upp till den integrerade havspolitiken över Wifi. Detta är en stor bonus för Imp - kan du uppdatera koden distans och i farten från var som helst som har en internet-anslutning.
Så hur skall vi kunna få alla viktiga anslutningen till internet för vår enhet?
Klicka på fliken Planner och du bör se en blå nod med titeln Trigger. Detta är din imp som du har överfört Utlösarkod till. Nu klickar du på Lägg till nod och välj HTTP IN. Drag en linje från denna nod och Anslut den till noden Trigger. En pil visas och sedan en popup-ruta. Klicka på Anslut.
Klicka på övre högra hörnet av noden och kopiera webbadressen som du behöver i nästa steg. Det kommer vara något som https://api.electricimp.com/v1/xxxxxxxxxxxxx/xxxxxxxxxxx
En av de saker jag lärt mig efter några första misslyckade försök att få det hela att fungera var vikten av att ha en "vakthund" funktion i imp koden. Detta ser till att den integrerade havspolitiken "vaknar" och säkrar dess anslutning till servern. Utan denna kopplas imp automatiskt från servern efter en tid.
IMP-ersonator Utlösarkod
distans utlösa en av 3 meddelanden från en våg sköld via SD-kort med hjälp av arduino
funktion pinOff()
{
Hardware.pin9.write(1); skriver 1 släcks trigger pin
Hardware.pin7.write(1); skriver 1 släcks trigger pin
Hardware.pin5.write(1); skriver 1 släcks trigger pin
}
ingående klass för trigger Kontrollkanal
klass input utökar InputPort
{
namn = "TRIGGER"
typ = "nummer"
funktion set(value)
{
IF(Value == 0)
{
Hardware.pin9.write(1); skriver 1 släcks trigger pin
Hardware.pin7.write(1); skriver 1 släcks trigger pin
Hardware.pin5.write(1); skriver 1 släcks trigger pin
}
IF(Value ==1)
{
Skriv pin låg
Hardware.pin9.write(0); skriver 0 vänder trigger pin på
vänta en sekund sedan inaktivera pin
IMP.wakeup (1.0, pinOff);
}
IF(Value ==2)
{
Hardware.pin7.write(0); skriver 0 vänder trigger pin på
vänta en sekund sedan inaktivera pin
IMP.wakeup (1.0, pinOff);
}
IF(Value ==3)
{
Hardware.pin5.write(0) //writing 0 vänder utlösa pin på
vänta en sekund sedan inaktivera pin
IMP.wakeup (1.0, pinOff);
}
}
}
Konfigurera pin 9,7 och 5 som en öppen drain utgång med inre dra upp
Hardware.pin9.configure(DIGITAL_OUT_OD_PULLUP);
Hardware.pin7.configure(DIGITAL_OUT_OD_PULLUP);
Hardware.pin5.configure(DIGITAL_OUT_OD_PULLUP);
Ange till hög från början
Hardware.pin5.write(1);
Hardware.pin7.write(1);
Hardware.pin9.write(1);
funktion watchdog() {
IMP.wakeup (5 * 60, watchdog);
Server.log("watchdog");
}
Registrera med servern
IMP.configure ("UTLÖSA", [input()], []);
watchdog();
Slutet av koden.