Spark.IO bygga natt Rex-o-telefon wifi xylofon (5 / 6 steg)

Steg 5: Steg 5. Koden spark.io utvecklingssidan




Preliminära hårdvara lades ut med punkt till punkt lödning. Första koden utveckling gjordes med

en arduino 328 klon .shiftOut (dataPin, clockPin, LSBFIRST, j); var den första intstruction används och det

konstaterades att det bara skulle flytta ut en lite för word.

/*************************************************************/
/ * Spark.io funktioner för bearbetning webbsida interaktion * /

/ * Bloominglabs Spark.io bygga natten den 13 november och 15 2013 * /

/ * av Rex M Marling * /

/ * För närvarande ett projekt pågår för en microcontrolled * /

/ * klockspel (xylofon). Spark.io möjliggör trådlös * /

/ * samverkar med den associerade fil spela RexOphone html fil * /

/ * Två 74ls595 SKIFT register änvänds för att expandera * /

/ * utdata från spark.io. Jan 3 2015 * /

/ * INITIERA DATA typer och UTLÖSA avbryta funktion / * / * karaktär datatyp * /

char * songPtr;

/ * DATATYPEN BOOL * /

bool songDone = false;

bool remoteTriggered = false; globala tillståndet variabel för remoteTrigger() funktion

/ * BYTE DATATYP *

/byte default_dur = 4;

byte default_oct = 6;

byte lowest_oct = 3;

byte Obs; byte skala.

/ * INT DATATYP * /

int x; int pekaren;

int resultatet;

int bpm = 63.

int num;

int clr = 7.

int data = 3;

int clock = 4;

int spärren = 5;

int aktiverar = 6;

int counter;

/ * UNSIGNED INT DATATYP * /

unsigned int Obs;

unsigned int mask;

/ * den följande osignerade int tilldelas för 16 anteckningar * /

unsigned int a1 = 0x0001;

unsigned int b1 = 0x0002;

unsigned int c1 = 0x0004;

unsigned int c1p = 0x0008;

unsigned int d1 = 0x0010;

unsigned int d1p = 0x0020;

unsigned int e1 = 0x0040;

unsigned int f1 = 0x0080;

unsigned int f1p = 0x0100;

unsigned int g1 = 0x0200;

unsigned int g1p = 0x0400;

unsigned int a2 = 0x0800;

unsigned int ap2 = 0x1000;

unsigned int b2 = 0x2000;

unsigned int c2 = 0x4000;

unsigned int n [] = {0x8000, 0x4000, 0x2000, 0x1000, 0x0800, 0x0400, 0x0200, 0x0100, 0x0080, 0x0040, 0x0020, 0x0010, 0x0008, 0x0004, 0x0002, 0x0001};

/ * LÅNG DATATYP * /

lång wholenote;

lång varaktighet;

/ * DEFINIERAS * /

#define DEBUG = false;

/ * SETUP DATAPORTAR OCH UTLÖSA AVBROTT * /

void setup(void) {

IF(debug) Serial1.begin(115200);

pinMode(D6,OUTPUT);

pinMode(D7,OUTPUT);

pinMode(data,OUTPUT);

pinMode(clock,OUTPUT);

pinMode(latch,OUTPUT);

pinMode(enable,OUTPUT);

digitalWrite(clock,HIGH);

digitalWrite(data,HIGH);

digitalWrite(latch,HIGH);

digitalWrite(enable,LOW);

digitalWrite(clr,HIGH);

Spark.function("Remote",remoteTrigger); }

/ * AVSLUTA INSTALLATIONSPROGRAMMET DATAPORTAR OCH UTLÖSA AVBROTT * /

/ * MAIN LOOP * / void loop(void) {

/ * Den viktigaste loop() bearbetar webben knappen klicka en ton i taget. */

/ * undvika att blockera bakgrundsaktiviteter för länge * /

/ * eller annan gnista kärnan skulle koppla från molnet. */

IF(remoteTriggered) {

digitalWrite(D7,HIGH);

Ljus ombord blå LED medan låten spelas upp};

Delay(600);

digitalWrite(D7,LOW);

Stänga av den inbyggda blå LED.

remoteTriggered = false;

IF(debug) Serial1.println("Done!");

Delay(2000); }

{

följande kod var avsedd att klocka en 16-bitars

unsigned int "OBS ovanstående data" genom 2 x 74ls595

skifta register shiftOut funktionen överför endast

8 bitar data

syntax

shiftOut (dataPin, clockPin, bitOrder, värde)

Parametrar

dataPin: stiftet på som att mata varje bit (int)

clockPin: PIN-koden för att växla en gång dataPin har angetts till korrekt värde (int)

bitOrder: som för att skifta ut bitarna; antingen MSBFIRST eller LSBFIRST.

(Mest signifikanta Bit först, eller, minst signifikanta Bit först)

värde: data att flytta ut. (byte)

Serial.println ("börja"); för (pekaren = 0; pekaren < = 15; pekaren ++) {mask = 0x8000; / / & B1000000000000000 Obs = n [pekaren]; Serial.println(Note); för (x = 0; x < = 16; x ++) {resultatet = Obs & mask, mask = maskera >> 1; om (resultatet > 0) {digitalWrite(data,HIGH); Serial.println ("hög"); }

IF(result == 0) {digitalWrite(data,LOW); Serial.println ("low");} digitalWrite(clock,LOW); fördröjning (15). digitalWrite(clock,HIGH); };

slutet inre loop

digitalWrite(latch,LOW);

Delay(15);

digitalWrite(latch,HIGH);

Delay(15);

digitalWrite(enable,LOW);

Delay(15);

digitalWrite(enable,HIGH);

Delay(250); };

slutet yttre loopen

Aktivera output enable for 74ls595 spela OBS "drive utdata darlington transistorer" sedan gå tillbaka till tristate

}

/**************************************************************/ /* */ /* END MAIN LOOP */ /**************************************************************

/ / * FJÄRRUTLÖSARE FÖR SPARK. IO-enhet * / / *** / int remoteTrigger (String args) {om (args == "1") {räknare = 1;};

om (args == "2") {räknare = 2;};

om (args == "3") {räknare = 3;};

om (args == "4") {counter = 4;};

om (args == "5") {counter = 5;};

om (args == "6") {räknare = 6;};

om (args == "7") {räknare = 7;};

om (args == "8") {räknare = 8;};

om (args == "9") {räknare = 9;};

om (args == "10") {räknare = 10;};

om (args == "11") {räknare = 11;};

om (args == "12") {räknare = 12;};

om (args == "13") {räknare = 13;};

om (args == "14") {räknare = 14;};

om (args == "15") {räknare = 15;};

om (args == "16") {räknare = 16;};

argumentet som skickades från webbsidan knapparna är

laddas in i disken för att styra den for-loop

visuell test för väl fungerande webbsida data

passerade på mus knapp klick

för (counter, counter > 0; counter--)

{digitalWrite(D7,LOW);

Delay(200);

digitalWrite(D7,HIGH);

Delay(200);

digitalWrite(D7,LOW); }

remoteTriggered = sant; returnera 200. }

/ * SLUTET WEBBSIDA HANDLER * /

Se Steg
Relaterade Ämnen

Dodocase VR Tutorial (Instructables bygga natt)

Detta Instructable var författad av vår medlem Ben Finio efter vi värd en Instructables bygga natt featuring Dodocase VR Kit på den SoHa SMART makerspace i Haddon Township, New Jersey. Vi har inte gjort några whiz-bang tillägg till VR kit, och beslut...

DODOcase - glasögon ändring - bygga natt

Förra månaden Dover biblioteket värd en Instructables bygga natt. Våra stamkunder kunde komma in och bygga sina egna DODOcase, en Smartphone virtuella verkligheten Viewer. Vår uppgift var att tänka på ändringar att göra betraktaren ännu bättre! Vissa...

DODOcase chef Strap - bygga natt

Förra månaden Dover biblioteket värd en Instructables bygga natt. Våra stamkunder kunde komma in och bygga sina egna DODOcase, en Smartphone virtuella verkligheten Viewer. Vår uppgift var att tänka på ändringar att göra betraktaren ännu bättre! Vissa...

Hur att vara värd för en Instructables bygga natt

Bland arbetet med att göra med bibliotek är att visa dem hur man gör "Popup-Makerspace projekt", och det finns inget bättre sätt att göra det än att vara värd en Instructables bygga natt! Någon grupp kan göra en bygga natten, naturligtvis, men f...

SteamPunk DodoCase VR Goggles bygga natt

Vår lokala makerspace theMakerStation nyligen deltagit i en Instructables bygga natt för den DODOcase Smartphone virtuella verkligheten Viewer.Vi tillbringade större delen av första meetup bara ihopsättning och med glasögon för en provkörning.Du kan...

MakeyMakey bygga natt--Mål praxis

Vi hade turen att haffa en januari Instructables MakeyMakey bygga Kit. Vi fick 5 MakeyMakey kitoch tyckte vi var i fett city. Sedan blev vår vädret verklighet. Våra två första schemalagda MakeyMakey bygga nätter, avbröts av länet på grund av "black i...

Sugru bygga natt på Ottawa Artengine

Sugru bygga natt på Ottawa (Kanada) Artengine. Var trevligt att träffa så många tinkers på ett ställe.Steg 1: Hur man fixar trasiga kaffe cup lock Används små pinnar som fondation, sedan gjuten sugru runt pinnar som gör det starkt.Steg 2: Hur man gör...

Bygga natt Boston på flaggskepp dator klubbhuset, Boston Museum of Science

"Som fått lysdioder från Instructables för vår egen bygga natt, vi var förvånade över hur många det fanns i rutan och på en gång började komma med idéer som skulle sätta dem till god användning. Vårt utrymme beslutade om en dekorativ skylt som skulle...

Bygga natt Boston på flaggskepp dator klubbhuset, Boston Museum of Science [del 2]

"För den viktigaste händelsen av bygga natt Boston på flaggskepp dator klubbhuset, vi hade ett stort valdeltagande. Många människor visade upp intresserade av att skapa något med lysdioder som vi erbjöds från Instructables. Vi avslutade vår "FLA...

Dremel bygga natt på MakeICT

I slutet av juli 2014 hade MakeICT sin första Dremel bygga natt workshop. Vi kombinerade Dremel utbildning med några bra gamla hederliga hur man bygger tekniker. Tom genomförde verkstaden. Det var inte ett stort valdeltagande men ordet fick och senar...

Instructables bygga natt på NextFab Studio med Sugru!

Dessa producerades under vår Instructables bygga natt med Sugru! Deltagare till vår aktivitet används Sugru i en mängd olika intressanta sätt: armband, nyckelbrickor och stötfångare för en iPhone. Vi hade även en äventyrlig musiker coat hans trumpinn...

Voltas System bygga natt - trådlös Wiki

Voltas System bygga nattVår makerspace in två begrepp för Voltas System bygga natten. Det första konceptet var en automatisk batteriladdare som växlar mellan AA eller AAA laddningsbara batterier bearbetning varje batteri, det andra begreppet var en t...

Bygga Starling, en modulär WiFi aktiverat LED display ombord.

Starling är modulära WiFi aktiverat, IoT aktiverad displayen. Du kan konfigurera starling att arbeta med IFTTT. OM det här än det är ganska snyggt tjänst som låter dig skicka meddelanden från någon av de populära tjänsterna som gmail, twitter etc för...

Snailbot bygga natt, Del1

efter att ha sett den onda galna vetenskapsmän Snailbot, jag visste att jag var tvungen att göra en. Jag tänkte också alla mina vänner ska göra dem också, så vi kunde ha tävlingar. I natt hade jag en snailbot bygga partiet, och medan vi inte avslutad...

En samling av hacka från fizzPOP Sugru hacka & bygga natt

en samling (verkligen enkel) hacka från våra Sugru sponsrade hacka natt. Vi har också några mer djupgående Instructables med Sugru.Sugru är en cool air-inställning (tekniskt, härdning) gummi-liknande silikon som levereras i olika färger. Det är lätt...

Bygga din allra första WiFi webserver

Den Lite ESPresso är senaste Wi-Fi-aktiverade, Arduino-kompatibel utveckling styrelse som (just nu på beta-testning) produceras av Espert Pte Ltd. Den använder Espressif SystemESP8266 WROOM-02 modul för Wi-Fi och MCU kärnfunktionerna. Den är utformad...

CAT MASK - DODO VR bygga natt

Tillverkade en festlig mask för DODO VR.Bygga tid: 10 minuterSteg 1: Skissa och klippa ut Design På svart papper, först skissade en ritning av katt öron, ögon och mun med måtten på rutan DODO. Klipp ut katt huvud och ögon med x-acto kniv.Skär en rekt...

Enhet säkrare för DoDoCase bygga natt

Jag har varit riktigt imponerad med Smartphone virtuella verkligheten Viewer från DoDoCase VR. Vi har haft en fantastisk tid visar det till våra medlemmar här på biblioteket. Men, jag vanligtvis använder min telefon för att Visa folk, och en eller tv...

Januari 2014 bygga natt: EL Wire Nixie rör

låt oss kalla detta EL-ixie röret för korta. Detta är en av H3 laboratoriernas poster i januari 2014 bygga natten med CoolNeon.För dem som inte vet, se Nixie rör är ett vakuumrör främst används i Ryssland och Östeuropa visar en siffra (oftast), i sam...