Blow out LED - AZ-Delivery

hi samen,

vandaag wil ik u een project dat is zo geniaal als eenvoudig. We hebben dit op Arduino.cc gevonden: Blow out deze Arduino LEIDDE

Dit project voorstel is gericht aan iedereen die graag Sleutelen en proberen. In de meeste van onze projecten is het enige exemplaar van de Code op de Controller en kabel, dan is alles. We hebben het gebruikt, in de afwezigheid van Hardware, een beetje tijd om te vinden van de juiste onderdelen en gecoördineerd.

Het werk principe:

Bij gebruik van een LED-veroorzaakt door de stroom die door de warmte op de zender kristal. De warmere een LED in werking is, hoe hoger de interne toestand. Koelen We een LED, bijvoorbeeld door een klap op, of koude spray, deze zal afnemen en registreren wij een spanningsval.

[zoals je hier kunt zien hebben we onze LED met de verkeerde kleuren wired]

De Hardware:

In het voorbeeld, een 220 Ohm weerstand en een glas-in-lood 0402 SMD Led gebruikt. U hebt deze Hardware kunt u de volgende Schets zonder grote Wijzigingen, is het slechts een kleine aanpassing hier en daar nodig. Dit is omdat de Wijzigingen van de spanning is gering, en de milieu-omstandigheden sterk variëren.

De Code:

// Blow Out LED-Ave creëert een LED die je kunt uitblazen. Het automatisch relights na 2 seconden ingedrukt
//
// Copyright 2018, Paul H. Dietz

// LED-Verbindingen
#define PLUS A1               // Hoge zijde van de weerstand
#define MAATREGEL A0            // Lage kant van de weerstand en de anode van de LED -
// Kathode van de LED naar de grond gaat

#define NUMSAMPLES 10         // Aantal monsters te houden
#define MINJUMP 150           // Minimum springen voor de blow out,

lange int gevoel gegevens[NUMSAMPLES];
int dataptr = 0;
, int buffull = 0;

void setup() {   Seriële.beginnen(250000);                     // Initialiseren van de seriële communicatie   pinMode(MAATREGEL, INGANG);   pinMode(PLUS, UITGANG);   digitalWrite(PLUS, HIGH);                 // Zet de LED
}

void loop() {   int cnt;   lang int som, = 0;   // Som van 256 adc metingen (te verminderen adc ruis)   voor (cnt = 0; cnt < 256; cnt++) {     som = som + analogRead(MAATREGEL);   }      Seriële.println(som);                      // Output som, zo kunnen we kijken met de Seriële Plotter   // Vergelijken met de huidige meting te oudste als buffer vol   als (buffull && (som > (gevoel gegevens[dataptr] + MINJUMP))) {       // drop van de Temperatuur overschreden minimum - zet     digitalWrite(PLUS, LAGE);     dataptr = 0;                            // Initialiseren van de buffer     buffull = 0;     vertraging(2000);                            // uit-tijd voor LED     digitalWrite(PLUS, HOGE);   }   anders {     sense data[dataptr] = som;               // Sla de meest recente gegevens in de buffer     dataptr++;                              // Update buffer aanwijzer     als (dataptr == NUMSAMPLES) {            // Controleren of dataptr ging voorbij het einde       dataptr = 0;                          // Reset de dataptr naar het begin       buffull = 1;                          // Mark dat er een buffer is vol     }   }
}



Veel plezier met knutselen en probeer het eens :)

 

Für arduinoProjekte für anfänger

Laat een reactie achter

Alle opmerkingen worden voor publicatie gecontroleerd door een moderator

Aanbevolen blogberichten

  1. ESP32 jetzt über den Boardverwalter installieren - AZ-Delivery
  2. Internet-Radio mit dem ESP32 - UPDATE - AZ-Delivery
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1 - AZ-Delivery
  4. ESP32 - das Multitalent - AZ-Delivery