NeoPixel LED hjärta Sensor jacka (3 / 6 steg)

Steg 3: Kodning tid!

Okej, nu är det dags att förbereda vår kod. Vi måste införliva delar av båda våra skisser så att Arduino bearbetar input från heartbeat sensorn som kontrollerar den NeoPixel ringen.

Puls sensor koden blir vår bas och vi kommer att lägga kod från den "enkla" skiss som vi använde för arduino. Vi måste skära större portionr av enkel skiss ut och klistra in dem i sina respektive platser inuti puls senor koden. Se nedan

NeoPixel Ring enkel skiss (c) 2013 Shae Erisson
släppt under GPLv3 licens att matcha resten av AdaFruit NeoPixel biblioteket

#include < Adafruit_NeoPixel.h >
#ifdef __AVR__
#include < avr/power.h >
#endif

Vilka stift på Arduino är ansluten till NeoPixels?
På en fasad eller Gemma föreslår vi att ändra detta till 1
#define stift 6

Hur många NeoPixels är kopplade till Arduino?
#define NUMPIXELS 16

När vi setup NeoPixel biblioteket, vi berätta det hur många pixlar, och som stift för att använda för att skicka signaler.
Observera att för äldre NeoPixel remsor du kan behöva ändra den tredje parametern--se strandtest
exempel för mer information om möjliga värden.
Adafruit_NeoPixel pixlar = Adafruit_NeoPixel (NUMPIXELS, stift, NEO_GRB + NEO_KHZ800);

int delayval = 500. fördröjning för en halv sekund

void setup() {
Detta är för prydnadssak 5V 16MHz, kan du ta bort dessa tre rader om du inte använder en fasad
#if definieras (__AVR_ATtiny85__)
om (F_CPU == 16000000) clock_prescale_set(clock_div_1);
#endif
Slutet av prydnadssak speciell kod

pixels.BEGIN(); Detta initierar NeoPixel biblioteket.
}
void loop() {

För en uppsättning NeoPixels den första NeoPixel är 0, det andra är 1, hela vägen upp till antalet pixlar minus en.

för (int jag = 0; jag < NUMPIXELS; i ++} {

pixlar. Färgen tar RGB-värden, från 0,0,0 upp till 255,255,255
pixels.setPixelColor (i, pixlar. Color(0,150,0)); Måttligt ljusa gröna color.pixels.show(); Detta skickar uppdaterad pixel färg till hårdvaran.

Delay(delayval); Fördröjning för en viss tid (i millisekunder)

}
}

Vad vi behöver göra skärs ut var och en av de enskilda delarna av denna kod, särskilt variabeldeklarationer på toppen, som ogiltiga inställningar och ogiltig loop delar. Öppna både detta och puls Sensor skissen i separata fönster och överföra varje bit av koden från den "enkla" skissen över till sina respektive i puls sensor skissen.

När du är klar bör det se ut så här:

/ * Puls Sensor Amped 1.4 av Joel Murphy och Yury Gitman http://www.pulsesensor.com
---------------------- Notes ---------------------- ----------------------
Denna kod:
1) blinkar ledde till användarens levande hjärta stift 13
2) bleknar ledde till användarens levande HeartBeat
3) avgör BPM
4) skriver ut alla ovanstående att SerialRead mig:

https://github.com/WorldFamousElectronics/PulseSe...

---------------------- ---------------------- ----------------------
*

/ Variabler
int pulsePin = 0; Puls Sensor lila tråd ansluten till analoga stift 0
int blinkPin = 13. PIN blinka ledde på varje taktslag
int fadePin = 5; stift till fancy classy blekning blink på varje taktslag
int fadeRate = 0; används för att blekna LED på med PWM på fadePin

Flyktiga variabler, som används i avbrottstjänstens rutin!
flyktiga int BPM; int som innehåller rå Analog i 0. uppdateras varje 2mS
flyktiga int Signal; innehar inkommande rådata
flyktiga int IBI = 600; int som håller tidsintervallet mellan slår! Måste vara seedad!
flyktiga booleska puls = false; "True" när användarens levande heartbeat upptäcks. "Falskt" när inte en "levande beat".
flyktiga booleska QS = false; blir sant när Arduoino finner ett beat.

Hälsningar Serial OutPut--Sätta den här upp till dina behov
statisk boolean serialVisual = sant; Satt till "false" som standard. Åter inställd på 'true' för att se Arduino seriell övervaka ASCII visuella puls
---ADAFRUIT VARIABLER---

#include < Adafruit_NeoPixel.h >
#ifdef __AVR__
#include < avr/power.h >
#endif

Vilka stift på Arduino är ansluten till NeoPixels?
På en fasad eller Gemma föreslår vi att ändra detta till 1
#define stift 8

Hur många NeoPixels är kopplade till Arduino?
#define NUMPIXELS 16

När vi setup NeoPixel biblioteket, vi berätta det hur många pixlar, och som stift för att använda för att skicka signaler.
Observera att för äldre NeoPixel remsor du kan behöva ändra den tredje parametern--se strandtest
exempel för mer information om möjliga värden.
Adafruit_NeoPixel pixlar = Adafruit_NeoPixel (NUMPIXELS, stift, NEO_GRB + NEO_KHZ800);

int delayval = 500. fördröjning för en halv sekund

//--------------------------------------------------------------------------

void setup() {
pinMode(blinkPin,OUTPUT); PIN-kod som kommer att blinka till ditt hjärta!
pinMode(fadePin,OUTPUT); PIN-kod som kommer att blekna till ditt hjärta!
Serial.BEGIN(115200); Vi är överens om att prata snabbt!
interruptSetup(); ställer in för att läsa puls Sensor signal varje 2mS
Om du driver puls sensorn på spänning lägre än styrelsen spänningen,
O-KOMMENTERA NÄSTA LINJE OCH TILLÄMPA DEN SPÄNNINGEN TILL A-REF STIFT
analogReference(EXTERNAL);
---ADAFRUIT installationen koden---

Detta är för prydnadssak 5V 16MHz, kan du ta bort dessa tre rader om du inte använder en fasad
#if definieras (__AVR_ATtiny85__)
om (F_CPU == 16000000) clock_prescale_set(clock_div_1);
#endif
Slutet av prydnadssak speciell kod.
pixels.BEGIN(); Detta initierar NeoPixel biblioteket.
}

//--------------------------------------------------------------------------
Där magiskt händer
void loop() {

serialOutput();

om (QS == true) {/ / ett hjärtslag hittades
BPM och IBI har fastställts
Kvantifierade Self "QS" true när arduino hittar ett hjärtslag
fadeRate = 255; Gör LED toningseffekt hända
Ange "fadeRate" variabel till 255 blekna LED med puls
serialOutputWhenBeatHappens(); Ett Beat hänt, utgång som till följetong.
QS = false; återställa flaggan kvantifierade Self till nästa gång
}

ledFadeToBeat(); Gör LED toningseffekt hända
Delay(20); ta en paus
---ADAFRUIT loop kod---

För en uppsättning NeoPixels den första NeoPixel är 0, det andra är 1, hela vägen upp till antalet pixlar minus en.

för (int jag = 0; jag < NUMPIXELS; i ++) {

pixlar. Färgen tar RGB-värden, från 0,0,0 upp till 255,255,255
pixels.setPixelColor (i, pixlar. Color(0,0,255)); Måttligt ljusa gröna färgen.

pixels.show(); Detta skickar uppdaterad pixel färg till hårdvaran.

Delay(2); Fördröjning för en viss tid (i millisekunder).

}
//---------------------------------------------------------------------------
}

void ledFadeToBeat() {
fadeRate-= 15. värdet för LED-fade
fadeRate = constrain(fadeRate,0,255); hålla LED fade värde från att gå in i negativa tal!
analogWrite(fadePin,fadeRate); Fade LED

}

Jag sektioneras ut varje del av koden som de är skarvas ihop, och jag bytte ett par värden också, en inställning färgen på neopixels i denna rad:

"pixels.setPixelColor (i, pixlar. Color(0,0,255));"

att 255 skapar den klarast lysande ren blå kan de göra, men du kan ställa in dem till vilken färg du vill ha med RGB-värden. Jag ändrade också data utgångsstiftet 8, bara i fall du väljer att använda min kod och saker verkar inte fungera.

När du har din kod tillsammans kontrollera, så länge som du har din parentes på rätt plats, det ska sammanställa fint och vara redo att gå!

Se Steg
Relaterade Ämnen

Animerade LED hjärta

detta är en batteridriven LED hjärta med flera olika animerade blinkande sekvenser, kan väljas med en tryckknapp. Jag designade och byggde det för min flickvän i jul. Väntan på delarna att anlända, gick jag igenom flera nykonstruktioner, särskilt eft...

DIY LED hjärta

I denna artikel kommer jag försöka berätta om gåvan jag gjort för min flickvän!Jag fick här är ett LED hjärta.Jag ber om ursäkt för min dåliga engelska!Steg 1:Grunden för stödordningen är en mikrokontroller Atmega8, 1K resistor, valts på ett sådant s...

Halo Cortana Neopixel LED halsduk

Från spelet world of Halo kommer datorgenererade karaktären av Cortana, men nu kan du få dessa kretsar aktiverat omkring dig med denna scarf. Om du bara behöver en MA5B, titta här.Detta projekt bygger på Adafruit Cyber faller lyser upp huvudbonader s...

Hjärta Sensor Beat

krav:1-UNO2-(2 PUSH BITEN)3-VARIABEL MOTSTÅND4-LCD 2 X 165-BRÖD STYRELSE OCH ANSLUTNING LEDNINGAR6-HJÄRTA SENSOR...

DIY hjärta Sensor med Auto justerade tröskel och hjärtformade LED hjärtslag indikator

Jag är en medicinsk teknik (BME) doktorand vid Purdue University. Som en BME tycker jag verkligen att göra snabbt och enkelt projekt som lyfter fram någon form av fysiologiska kvantitet. Puls är sådan verksamhet. Det finns många projekt som behandlar...

NeoPixel LED pannband

När min sju-åriga dotter fick en titt på LED strip jag testade för ett projekt, började hon direkt att tänka på andra saker vi kunde göra. Hon är mycket nöjd med resultatet.Denna bländande pannband använder en 15-LED del av en 60-lysdioder-per-meter...

Alla hjärtans dag rörelse aktiverat LED hjärta

detta hjärta tänds när den känner av rörelse genom passiv infraröd (PIR)-sensorn. Vi kommer att använda PIR-sensorn som indata och lysdioderna som resultat.Steg 1: material•PIR motion sensor (1) •Arduino micro (1) •Red lysdioder (16) •Coat hanger(1)...

ET & LED hjärta

Detta är en enkel Arduino baserat projekt som du kan göra för att komma igång med Arduino Uno. Alla delar finns tillgängliga och lätt att skaffa. Detta är ett bra projekt om du gillar E.T., blinkande lampor och Arduino.Steg 1: Samla material Det förs...

GuGaplexed Valentine LED hjärta

GuGaplexing är en ny LED display multiplexing teknik. Jämfört med Charlieplexing, kan GuGaplexing du styra två gånger så många lysdioder, med bara några ytterligare komponenter.GuGaplexed Valentine LED mitt projekt har 40 lysdioder placerade i en "pi...

LED hjärta

Hej Instructables!Detta är min andra instructables.Vem har sagt det elektroniken kan inte vara romantiskt?Vi kan använda den för att visa en person vår kärlek, och det är precis vad vi ska göra: en present, så enkelt att inse så underbart att se, för...

Adafruit Flora NeoPixel LED Ring hörlurar mod

Wearable Arduino mod för dina hörlurar. Icke-invasiv förfarande för hörlurar som inte har plats inuti drivrutiner eller du vill inte hacka sönder din hög slut burkar.Adafruit sätta bara ut en handledning för att lägga till mönster blinkande LED-lampo...

Bygga en binär LED hjärta dekoration (Blinkenheart)

detta är min första instructable, så definitivt skicka mig feedback. Om jag kan göra ett schema som inte är fruktansvärd, lägger jag det här.Jag börjar bara att lära sig några grundläggande elektronik och en vän ville få något speciellt för sin fästm...

Glödande LED hjärta light

göra en cool glödande hjärtformade ljus, för att särskilda någon!Steg 1: Översiktsplanen Ok, så jag ville göra min fru lite något speciellt för alla hjärtans dag. Något att säga, "Du tända mitt avfyrar" eller "Du gör mitt hjärta glöd"...

Romantiska LED hjärta

Hej Instructables! Detta är min post för göra det glöd tävling.Vem har sagt det elektroniken kan inte vara romantiskt? Vi kan använda den för att visa en person vår kärlek, och det är precis vad vi ska göra: en present, så enkelt att inse så underbar...

Homebrewed formade LED / hjärta LED

lysdioder kommer i många mönster och former. Men du kan också skapa dina egna. Här visar vi ett exempel, en hjärtformad LED.Naturligtvis kan du också bygga enskilda bokstäver eller vad du vill. Vi är glada att höra om dina idéer :-)Lichtbändiger från...

Enkla Arduino LED-färg Sensor för nybörjare

Det finns ett par olika typer av färg sensorer.Den som används i detta instructable är en "reflekterande" färgsensor som har rött ljus källa grönt ljus källa en blå ljuskälla (en R, G, B LED skulle fungera) och en ljussensor. Hur den fungerar är...

LED närhet Sensor handske

Detta är en minimalistisk design för en närhet sensor handske: en handske med lätta upp tonas ned i ljusstyrka när ett objekt, eller en person, är nära sensorn. Detta projekt kostar mindre än $10, även om det tar lite tid att bygga (1-2 timmar).Detta...

LED-färg Sensor

Detta projekt var gjort för UK välgörenhet Mappa om.Målet var att ge en blind man en anordning för att hjälpa honom berätta färg * av en LED.Jag la en Fiber-optic kabel till en billig smartphone fall, vilket gör att telefoner kameran fungera som färg...

Hur man gör en charlieplexed LED hjärta

med alla hjärtans dag precis runt hörnet, du är förmodligen tänker om vad du ska få din betydande andra, eller hur man imponera på någon nog att bli en SO.Detta hjärta är lätt att göra, och kommer att visa upp din Maker färdigheter till att speciella...