🍪 Privacy & Transparency

We and our partners use cookies to Store and/or access information on a device. We and our partners use data for Personalised ads and content, ad and content measurement, audience insights and product development. An example of data being processed may be a unique identifier stored in a cookie. Some of our partners may process your data as a part of their legitimate business interest without asking for consent. To view the purposes they believe they have legitimate interest for, or to object to this data processing use the vendor list link below. The consent submitted will only be used for data processing originating from this website. If you would like to change your settings or withdraw consent at any time, the link to do so is in our privacy policy accessible from our home page..

Vendor List | Privacy Policy
Skip to content

Technik Blog

Programmieren | Arduino | ESP32 | MicroPython | Python | Raspberry PI

Menu
  • Projekte
    • LED’s
    • Servo & Schrittmotoren
    • Sound
    • LCD’s
    • Kommunikation
    • Sicherheit
    • Weekend Project
  • Arduino
    • Tutorials
    • ProMini
      • Anschließen & Programmieren
    • Nano
      • Arduino Nano – Übersicht
    • UNO
      • Übersicht
    • MEGA 2560
      • Übersicht
    • Leonardo
      • Übersicht
    • NodeMCU
      • NodeMCU – “Einer für (fast) Alles!”
    • Lilypad
      • Arduino: Lilypad “Jetzt Geht’s Rund!”
    • WEMOS
      • WEMOS D1 – Arduino UNO kompatibles Board mit ESP8266 Chip
      • WEMOS D1 Mini – Übersicht
      • Wemos D1 mini Shields
    • STM32x
      • STM32F103C8T6 – Übersicht
    • Maker UNO
      • Maker UNO – Überblick und Test
    • ATTiny85
      • Mini Arduino mit ATTiny85 Chip
      • ATtiny85 mit dem Arduino UNO beschreiben
  • Android
  • Über mich
  • DeutschDeutsch
  • EnglishEnglish
Menu

Arduino Lektion 19 – Teil 2: KY-037 mit LED Balkenanzeige

Posted on 20. März 20163. Mai 2023 by Stefan Draeger

Da nun die LED Balkenanzeige geliefert wurde, kann nun der Teil 2 zum hochempfindlichen Geräuschdetektor kommen.

Im ersten Teil zum Geräuschdetektor Arduino Lektion 19 – Teil 1: Hochempfindlicher Geräuschdetektor „Klatschdetektor“ habe ich erklärt wie dieser aufgebaut bzw. betrieben werden kann darum gehe ich hier nicht weiter darauf ein.

  • Teileliste
  • Aufbau
  • Quellcode
  • Video
  • Download

Teileliste

1x Arduino Nano
1x KY-037 hochempfindlicher Geräuschdetektor
1x LED Balkenanzeige (rot)
1x Breadboard
3x 20cm Breadboard Kabel
10x 10cm Breadboard Kabel

Aufbau

Aufbau der Schaltung.
Aufbau der Schaltung.

Dass ich von den 10 cm Breadboardkabeln nur die Farben rot, orange, gelb, weiß und schwarz habe ist das schwarze Kabel nicht wie zu vermuten ist GND, sondern ein digitaler PIN als Ausgang.

Quellcode

int microPin = 7; // analoger Pin für das Mikrofon - Input

// digitale Pin's für die LED Balkenanzeige
int led1 = 2; 
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
int led6 = 12;
int led7 = 8;
int led8 = 9;
int led9 = 10;
int led10 = 11;

int sensityValue = 30;
int offset = 5;


void setup() {
  //LED Pin's als Ausgang deklarieren
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
  pinMode(led5, OUTPUT);
  pinMode(led6, OUTPUT);
  pinMode(led7, OUTPUT);
  pinMode(led8, OUTPUT);
  pinMode(led9, OUTPUT);
  pinMode(led10, OUTPUT);
    
  pinMode(microPin, INPUT);  //Den PIR Sensor als Eingang deklarieren
  Serial.begin(9600); //Serielle kommunikation mit 9600 Baud beginnen.
}
 
void loop(){
   int val = analogRead(microPin);
   Serial.println(val);
   
   digitalWrite(led1, (sensityValue+offset)  > val ? HIGH : LOW);  
   digitalWrite(led2, (sensityValue+(offset*2))  > val ? HIGH : LOW);  
   digitalWrite(led3, (sensityValue+(offset*3))  > val ? HIGH : LOW);  
   digitalWrite(led4, (sensityValue+(offset*4))  > val ? HIGH : LOW);  
   digitalWrite(led5, (sensityValue+(offset*5))  > val ? HIGH : LOW);  
   digitalWrite(led6, (sensityValue+(offset*6))  > val ? HIGH : LOW);  
   digitalWrite(led7, (sensityValue+(offset*7))  > val ? HIGH : LOW);  
   digitalWrite(led8, (sensityValue+(offset*8))  > val ? HIGH : LOW);  
   digitalWrite(led9, (sensityValue+(offset*9))  > val ? HIGH : LOW);  
   digitalWrite(led10, (sensityValue+(offset*10))  > val ? HIGH : LOW);  
}

Mein Arduino Nano hat eine Fehlfunktion auf dem digitalen Pin 7, daher habe ich die LED 6 auf den Pin 12 geschaltet.

Video

KY-037 mit LED Balkenanzeige
Dieses Video auf YouTube ansehen.

Download

KY-037 mit LED BalkenanzeigeHerunterladen

2 thoughts on “Arduino Lektion 19 – Teil 2: KY-037 mit LED Balkenanzeige”

  1. Lothar Meyer sagt:
    15. März 2020 um 23:12 Uhr

    Hallo,

    ich bin Neueinsteiger beim Arduino und möchte die Schaltung aufbauen und den Code verstehen.
    Den Befehl zur Ausgabe auf die Leds
    digitalWrite(led1, (sensityValue+offset) > val ? HIGH : LOW);
    verstehe ich nicht ganz.
    Ich bitte um Hilfe beim Verständnis dieses Befehles.

    Danke

    Antworten
    1. Stefan Draeger sagt:
      16. März 2020 um 09:02 Uhr

      Hi Lothar,

      vielen Dank für dein Kommentar.
      Der Ausdruck digitalWrite(led1, (sensityValue+offset) > val ? HIGH : LOW); ist eine Art „erweiterte If Abfrage“
      Es wird in dem Ausdruck zunächst geprüft ob der Wert aus dem Modul KY-037 (Variable val) kleiner als der bereits Definierte Wert für die Sensibilität + dem Offset ist. Der Offset dient dazu jede LED einzeln anzusprechen. Wenn der Ausdruck ein TRUE zurück liefert, also WAHR ist, dann wird die LED aktiviert (der Ausgang wird auf HIGH gesetzt) ansonsten wird die LED deaktiviert.

      Man könnte dieses auch wie folgt schreiben:
      if((sensityValue+offset) > val){
      digitalWrite(led1, HIGH);
      } else {
      digitalWrite(led1, LOW);
      }
      Jedoch ist dieses etwas länger und macht im Grunde das selbe.

      Solltest du noch fragen haben so kannst du mir gerne schreiben.

      Gruß,

      Stefan

      Antworten

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Kategorien

Tools

  • 8×8 LED Matrix Tool
  • 8×16 LED Matrix Modul von Keyestudio
  • 16×16 LED Matrix – Generator
  • Widerstandsrechner
  • Rechner für Strom & Widerstände
  • ASCII Tabelle

Meta

  • Videothek
  • Impressum
  • Datenschutzerklärung
  • Disclaimer
  • Kontakt
  • Cookie-Richtlinie (EU)

Links

Blogverzeichnis Bloggerei.de Blogverzeichnis TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste Blogverzeichnis trusted-blogs.com
©2023 Technik Blog | Built using WordPress and Responsive Blogily theme by Superb