Weasley klockan (8 / 9 steg)

Steg 8: Kärnan



Låt oss sammanfatta: vi har fyllt upp vår databas med lokaliseringsuppgifter för varje användare, har vi skapat den nod-röd arbetsflöden som reagerar på varje ny plats den tar emot. Vi har även trådbundna lysdioderna och SKIFT register till Spark kärnan så att de kan styras av det, och vi har lagt allt i en plywood som kommer att vara inne klockan. Inte dåligt va?
Nu när i stort sett allt är redo, är det dags att lägga till kod i kärnan!

Lägga till koder i kärnan

Spark kärnan kan användas som alla andra Arduino-liknande styrelse (förutom att den använder en webb IDE som standard). I vårt fall men vi måste dra nytta av en specifik funktion i kärnan: API-anrop. I några ord kan detta Core att "avslöja" de metoder som man vill, vilket innebär att de kan anropas med Spark REST API.

Gå till http://www.spark.io och följ instruktionerna för att installera din kärna för första gången. När du är klar, bör du kunna komma åt IDE (skärmdump från webbplatsen gnista dokumentation)

Ni kanske minns den Token och Core ID vi talat om tidigare: nu är det dags att hämta dem från vår gnista konto och ange dem i modulen Spark funktion nod-röd. Vi hade beslutat att kalla vår funktion "ledde" så här är motsvarande kod på kärnan:

void setup()
{//Register vår gnista fungera här < br > Spark.function ("ledde", ledControl); < br > / / Configure stiften för att vara utgångar
pinMode (SER_Pin, OUTPUT);
pinMode (RCLK_Pin, OUTPUT);
pinMode (SRCLK_Pin, utdata). < br > < br > cycle()}

Detta säger kärnan att när någon skickar det ett anrop till funktionen "led", den bör utföra funktionen "ledControl".

Loop funktion är tom.

Vi måste också lägga till koden för att kontrollera skiftet register. Detta blev mycket inspirerad från bildr artikeln nämnde tidigare

void clearRegisters() {
för (int jag = numOfRegisterPins - 1; i > = 0; i--) {
register [i] = 0;
}
}
void writeRegisters() {
digitalWrite (RCLK_Pin, låg);
för (int jag = numOfRegisterPins - 1; i > = 0; i--)
{
digitalWrite (SRCLK_Pin, 0);
int val = register [i];
digitalWrite (SER_Pin, val);
digitalWrite (SRCLK_Pin, 1);
}
digitalWrite (RCLK_Pin, hög);
}

ställa in en individuell pin högt eller lågt
void setRegisterPin (heltal index, int värde) {
register [index] = värde;
}

void cycle() {
för (int jag = 0; jag < 30; i ++)
{
clearRegisters();
setRegisterPin (i, 1);
writeRegisters();
Delay(500);
}
}

Slutligen, här är koden för funktionen ledControl

int ledControl (String kommando)
{
Serial.println(Command); int pinNumber = 0;
int pers = 1;
int offset = 0;
clearRegisters();
Sträng personne = command.substring(0,command.indexOf(','));
Sträng lieu = command.substring(command.indexOf(',')+1,command.length());
om (lieu == "maison")
{
offset = 0;
}
annars om (lieu == "arbete")
{
offset = 5;
}
annars om (lieu == "vän")
{
offset = 10;
}
annars om (lieu == "mosk")
{
offset = 15.
}
annars om (lieu == "restaurant")
{
offset = 20;
}
annars om (lieu == "läkare")
{
offset = 25;
}
annars om (lieu == "shopping")
{
offset = 30.
}
annars om (lieu == "familj")
{
offset = 35.
}
annars om (lieu == "läkare")
{
offset = 40;
}
annars om (lieu == "stad")
{
offset = 45;
}
annars om (lieu == "utomlands")
{
offset = 50;
}
annars om (lieu == "okänt")
{
offset = 55.
}
IF(personne=="Alya")
{
Pers = 1;
}
annars om (personne == "Assya")
{
pers = 2;
}
annars om (personne == "Nabila")
{
Pers = 3;
}
annars om (personne == "Kira")
{
Pers = 4;
}
annars om (personne == "Minaz")
{
Pers = 5;
}
pinNumber = offset + personer;
setRegisterPin (pinNumber, 1);
writeRegisters();
tillbaka 1.
}

Se Steg
Relaterade Ämnen

Harry Potter inspirerade Weasley klockan

Förra året bestämde jag mig att läsa om hela Harry Potter-serien för 100: e gången, som inspirerade idén att göra något liknande Weasley familjen klockan för slutprojekt klass. För alla er Mugglare som inte är bekant med serien, i trollkarlsvärlden f...

Weasley ordet klockan

Jag kommer att göra ett fall med ord som kommer att lysa upp när jag är på en viss plats (skola, till exempel).Idén kom från denna IMGUR http://imgur.com/a/EAhKH (eftersom jag är en stor Harry Potter nörd) och här en http://imgur.com/a/iMXmj. Jag bes...

Weasley-o-Meter

god jul alla! :)Detta projekt var inspirerad av klockan i Weasley huset som sett i den andra Harry Potter-filmen (tack jordy.vlassembrouck för spotting mitt misstag ursprungligen säga den första filmen) och föraktade i skapandet av en gnista Core bui...

3:30 klockan

Jag ville göra en väggklocka som betonar när dess 3:30.Varför 3:30? Eftersom de flesta dagar, kl 3:30 jag behöver lämna oavsett vad jag gör och plocka upp mina barn från dagis och dagbarnvård. Ibland är jag så uppslukad i vad jag gör att jag är förvå...

3:30 klockan Version 2

För några veckor sedan jag gjorde den första versionen av 3:30 klocka. Det fungerade ok ibland men eftersom den baseras på försiktigt stänga en elektrisk krets, det fungerade hela tiden.I den här versionen jag använder LDRs och resultatet är en lite...

3D Rainbow klockan

Jag har alltid haft en sak för ovanliga klockor och så finner jag mig alltid göra dem antingen sälja eller som gåvor. Och låt oss inse det, "Klockorna" är nåt som är mycket viktigt i varje enskilt rum! Jag vet, vissa skulle säga jag har min tele...

Abbey Road rekord klockan

Är du en Beatles fan och vinyl knarkare? Letar du efter "Något" unik, lätt och billig att göra? "Föreställa sig alla människor..." stirrade på denna klocka som du kan skapa! Så låt oss "Come Together" och göra denna ikoniska...

Aluminium Uggla klockan

Observera: detta är min första instructable så det inte kan vara perfektDenna klocka gjordes som present.Det var fräst ur ett block av aluminium som var 320 mm x 230 mm x 10 mm.Den använder händer och motorn som bärgades ur en gammal väggklockaSteg 1...

Analog talar glöd i mörka 3D tryckt klockan

Klockan visar tiden med 4 analoga mätare. Jag har sett dessa typ av klockor i olika inkarnationer men jag såg aldrig en analog klocka i detta format som talade. Denna klocka meddelar tiden halv timmes mellanrum och spelar ett meddelande varje gång kl...

Bågskytte ansikte klockan

i detta instructable, jag ska visa dig hur man gör en klocka baserat på en bågskytte ansikte för en vän som gillar bågskytte eller bara för att hålla för dig själv. Det återanvänder ett par objekt från bågskytte (ett ansikte och vissa fletchings). De...

Montering av "Kloka klockan 2" (Arduino-baserad väckarklocka med massor av extra funktioner)

denna handledning visar hur du monterar kitet för Wise klockan 2, ett öppen källkodsprojekt (hårdvara och mjukvara).En komplett Klok klockan 2 kit kan köpas här.Sammanfattningsvis är detta vad Wise klockan 2 kan göra (i den aktuella öppna källa mjukv...

Blues ledtrådar klockan

för vår tekniska Theater grupp projekt, vi beslutat att bygga klockan från Blues ledtrådar. Kolla in denna handledning om hur du kan återskapa denna klocka i bara några korta dagar!Steg 1: material Först, för att göra denna klocka, du måste köpa ett...

BookClock - Arduino-baserad klockan i en kartong

detta är den senaste (och billigaste ännu) Wise klocka familjemedlem.(Som en snabb resumé, de andra medlemmarna i familjen Wise klocka är, hittills, glaskupol Wise klocka och Wise klockan 2. De är "kloka" eftersom, tillsammans med tid, de också...

C51 4-bitars klockan

Detta Instructable hoppas jag att gå igenom att göra din egen 4-bitars digital klocka. För att bygga min C51 digital klocka använde jag denna Ebay DIY kit som kostar bara $2,50. Det har inga instruktioner så det tog en liten bit av forskning för att...

CD-klockan

Ok det här är en rolig idé jag hade att ta min favorit cd och förvandla det till en klocka. Dess mycket enkelt, tar väldigt lite tid, och alla verkar vilja en.Steg 1: Saker du behöver Billigt walmart klocka, sax, tvättbara markör, några CD-skivor och...

Chassi Cross medlem klockan

Jag för närvarande genomgår restaurering av en 1966 serien 2A Land Rover. Vi gör chassit reparationer och denna tvärbalk var ekonomiska repareras, trevlig hålet strax utanför centrum fick mig att tänka. Sedan såg jag en gammal klocka vi hade liggande...

Klockan i en burk

Detta är vår överlämnande av "Klocka i en burk" av Oren Hetzroni, student vid Bezalel Academy of Art and Design i Jerusalem. Baserat på barndomsminnen av att fånga insekter i en burk, presenterar klockan författarna idén att fånga tiden i en bur...

Klockan projekt

För detta projekt kommer du behöver-1 Arduino1 set av brödunderläggenHoppare ledningarSju segment displayen knappOm du av någon typ2 motståndUSB-sladd(Mest med i Sunfounder kit)Steg 1: Ställa wries Det första steget till att göra en exakt klocka är l...

Coffee Cup klockan

här är en enkel desktop klocka tillverkad i en kaffekopp och vissa kaffe ärmar. Det har även ett larm att berätta när är din nästa fikapaus.Steg 1: material: Pappersindustrin kaffekopp (rensade)Kaffekopp ärmar - tvåBlommig stem trådKlocka (liten nog...