INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Blutiger Anfänger/ Projekt: Visuelle Takthilfe
15.02.2020, 13:28 (Dieser Beitrag wurde zuletzt bearbeitet: 15.02.2020 13:57 von bencha.)
Beitrag #1
Blutiger Anfänger/ Projekt: Visuelle Takthilfe
Liebes Forum!

Zunächst mein Projekt:
Ich möchte vier LEDs und einen Taster an den Arduino anschließen.
Bei Betätigen des Tasters soll zunächst LED1 aufleuchten, bei nächsten Betätigen des Tasters LED1 ausgehen und LED2 angehen. Nach diesem Prinzip bis LED4, dann wieder von vorne.
Der Taster soll mit dem Fuß betätigt werden. Hintergedanke ist, beim Gitarrenlernen ein besseres Taktgefühl zu bekommen, indem visuell dargestellt wird, bei welchem Schlag eines 4/4 Takts man sich gerade befindet.

Ich bin auf diesen Sketch gestoßen, den ich für meine Zwecke gerne umschreiben möchte:

Code:
int LEDblau=6;
int taster=7;
int tasterstatus=0;

void setup()
{
pinMode(LEDblau, OUTPUT);
pinMode(taster, INPUT);
}

void loop()
{
tasterstatus=digitalRead(taster);
if (tasterstatus == HIGH)
{
digitalWrite(LEDblau, HIGH);
delay (5000);
digitalWrite(LEDblau, LOW);
}
else
{
digitalWrite(LEDblau, LOW);
}
}

Ich bin leider blutiger Anfänger und schon etwas ratlos, deshalb hier meine (dumme) Frage: Muss ich bei diesem Sketch einen weiteren if-Befehl für jede der vier LEDs schreiben? Oder kann ich das irgendwie in einem if-Befehl unterbringen?
Hätte eventuell jemand eine Homepage o.ä. anhand derer ich das Problem lösen könnte? ..Natürlich erwarte ich keine fertigen Sketches oder Baupläne von euch!

Liebe Grüße Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
15.02.2020, 13:52
Beitrag #2
RE: Blutiger Anfänger/ Projekt: Visuelle Takthilfe
Hallo,
zuerst setze deinen Sketch bitte in Code-Tags, damit dieser von allen besser gelesen werden kann. Wie das geht, steht hier.
Und zu deiner if-Abfrage (kein Befehl) findest du hier oder hier weitere Informationen.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
15.02.2020, 13:53
Beitrag #3
RE: Blutiger Anfänger/ Projekt: Visuelle Takthilfe
Es gibt mehrere Möglichkeiten. Da Du ja nur Anregungen und keine Lösungen willst, solltest Du mit den Beispielen in der IDE anfangen.

1. Einen Taster einlesen (am Bessten Tater nach GND und INPUT_PULLUP)
2. Eine LED ansteuern (Vorwiderstand nicht vergessen)
3. Einen Taster entprellen. Du willst ja bei jeder Betätigung 1 Schritt und nicht 10
4. Die Flanke am Taster erfassen (also nur die Änderung)

Danach kannst Du dann entweder

A) über 4 if (schreibintensiv, aber wenig Vorkenntnisse notwendig)
B) über switch/case (etwas weniger schreibintensiv, aber mehr Vorkenntnisse)
C) über ein Array (der einfachste Weg, der aber die meisten Vorkenntnisse erfordert)

Deine Lösung erarbeiten. Oft hilft dabei, wenn man sich ganz genau aufschreibt, was schrittweise wie ablaufen soll.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
15.02.2020, 15:18
Beitrag #4
RE: Blutiger Anfänger/ Projekt: Visuelle Takthilfe
(15.02.2020 13:53)Tommy56 schrieb:  Es gibt mehrere Möglichkeiten. Da Du ja nur Anregungen und keine Lösungen willst, solltest Du mit den Beispielen in der IDE anfangen.

1. Einen Taster einlesen (am Bessten Tater nach GND und INPUT_PULLUP)
2. Eine LED ansteuern (Vorwiderstand nicht vergessen)
3. Einen Taster entprellen. Du willst ja bei jeder Betätigung 1 Schritt und nicht 10
4. Die Flanke am Taster erfassen (also nur die Änderung)

Danach kannst Du dann entweder

A) über 4 if (schreibintensiv, aber wenig Vorkenntnisse notwendig)
B) über switch/case (etwas weniger schreibintensiv, aber mehr Vorkenntnisse)
C) über ein Array (der einfachste Weg, der aber die meisten Vorkenntnisse erfordert)

Deine Lösung erarbeiten. Oft hilft dabei, wenn man sich ganz genau aufschreibt, was schrittweise wie ablaufen soll.

Gruß Tommy

Danke für deine Antwort!
Also gegen fertige Lösungen hätte ich generell nichts zu einzuwenden, wollte nur keine dreisten Ansprüche direkt beim ersten Post schreiben Blush

Liebe Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
15.02.2020, 15:27
Beitrag #5
RE: Blutiger Anfänger/ Projekt: Visuelle Takthilfe
Ich halte den Weg des Lernens für die bessere Lösung.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Projekt Haushaltsplaner Eisverkäufer 1 385 06.11.2019 13:00
Letzter Beitrag: Tommy56
  Anfänger braucht Hilfe Schrittmotorsteuerung für den Hund dg8ngj 4 647 25.08.2019 17:00
Letzter Beitrag: dg8ngj
  Hilfe für Kita-Projekt gesucht. cyberiss 8 1.369 06.08.2019 07:57
Letzter Beitrag: Der Hobbyelektroniker
  Anfänger: Fehlermeldung expected primary-expression before Reiseeck 5 1.057 31.05.2019 12:09
Letzter Beitrag: amithlon
  Kann auf A.Uno nichts hochladen - Anfänger sucht Hilfe ardeche 25 2.806 21.01.2019 22:06
Letzter Beitrag: ardeche
  [Anfänger] Char Array Problem fp.blues2013 1 691 07.01.2019 13:06
Letzter Beitrag: Tommy56
Question [Anfänger] Verständnisfrage Codeschnipsel MisterE 13 1.720 31.12.2018 10:05
Letzter Beitrag: MicroBahner
  Anfänger mit Problem/Gärtenbewässerungsprojekt Bommes 13 2.015 13.11.2018 20:17
Letzter Beitrag: fraju
  Projekt Abfüllstation georg_sr 14 2.072 03.11.2018 20:57
Letzter Beitrag: Joergi-1911
  Projekt Werkstattheizung Joergi-1911 15 2.819 24.10.2018 18:59
Letzter Beitrag: Joergi-1911

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste