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
Array mit Zähler steuern
18.11.2015, 14:34
Beitrag #17
RE: Array mit Zähler steuern
Danke Thorsten. Hab ich auch schon gemerkt dass ich die Klammern vergessen habe. Allerdings hilft das nichts. Sobald die Funktion in einer If-Schleife steht leuchten die Leds dauerhaft.

Mit Fotos bzw. Videos musst du dich noch etwas gedulden da das Ganze noch relativ im Anfangsstadium ist. (Also bis jetzt nur auf dem Breadboard). Sobald es was vorzeigbares gibt stell ich es gerne hier rein.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.11.2015, 16:02
Beitrag #18
RE: Array mit Zähler steuern
Hi,
ich denke, auch das ist erklaerbar.
Code:
if(millis()-previousMillisLedsBGStart[y] > ZeitLeds[y]-5000) {
       Blinken();
       previousMillisLedsBGStart[y] = millis();
     }
Das ganze wird einmal durchlaufen und damit die LEDs eingeschaltet. Dann setzt Du sofort previousMillisLedsBGStart[y] auf "jetzt", wodurch die Bedingung beim naechsten Durchlauf falsch wird und damit wirk Blinken() nicht mehr aufgerufen. Wahrscheinlich willst Du eigentlich so etwas wie:
Code:
if(millis()-previousMillisLedsBGStart[y] > ZeitLeds[y]-5000) {
       Blinken();
       if(millis()-previousMillisLedsBGStart[y] > ZeitLeds[y]) {
           previousMillisLedsBGStart[y] = millis();
       }
}
Gruss,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.11.2015, 12:58
Beitrag #19
RE: Array mit Zähler steuern
Also ich glaube schön langsam dass ich einfach zu dumm bin für das Ganze.

Wenn ich jetzt in den Teil
Code:
if (Buttons[y] == LOW && ButtonsAlt[y] == HIGH && millis()-ButtonTime > ButtonDebounce) {
     MIDIsenden(144,y+40,127);
     switchOnOnlyOne(y);
     ButtonsAlt[y] = Buttons[y];
     ButtonTime = millis();    
    }

einfach "digitalWrite(68, HIGH);

und in
Code:
if (millis()-previousMillisLeds[y] > ZeitLeds[y]) {
      digitalWrite(LedsButtons[y], LOW);
      previousMillisLeds[y] = millis();
      ButtonsAlt[y] = Buttons[y];
    }

digitalWrite(68, LOW);

reinschreibe sollten doch eigentlich die LED die y entspricht und die die an Pin68 anliegt gleichzeitig an und wieder ausgehen??!!
Da haperts nämlich schon. Die gehen zwar gleichzeitig an aber unterschiedlich aus. Wenn ich nicht mal das hinkriege brauch ich erst gar nicht mit dem blinken anfangen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.11.2015, 14:18
Beitrag #20
RE: Array mit Zähler steuern
Hi,
tja, da muss noch irgendwo anders was passieren. Wenn Du diese beiden Zeilen hintereinander stehen hast:
Code:
digitalWrite(LedsButtons[y], LOW);
digitalWrite(68, LOW);
...dann muessten beide Ausgaenge tatsaechlich praktisch gleichzeitig auf LOW gehen. Moeglicherweise setzt aber irgend ein anderes Stueck Coding einen davon wieder auf HIGH.
Mein Tipp: Mach Dir erstmal einen Experimentier-Sketch und loesche so lange Sachen raus, bis das, was uebrig bleibt, vollkommen nach Deinen Erwartungen funktioniert.
Gruss,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.11.2015, 15:11
Beitrag #21
RE: Array mit Zähler steuern
Hallo,
(19.11.2015 12:58)ferdi schrieb:  Also ich glaube schön langsam dass ich einfach zu dumm bin für das Ganze.

Wenn ich jetzt in den Teil
Code:
if (Buttons[y] == LOW && ButtonsAlt[y] == HIGH && millis()-ButtonTime > ButtonDebounce) {
     MIDIsenden(144,y+40,127);
     switchOnOnlyOne(y);
     ButtonsAlt[y] = Buttons[y];
     ButtonTime = millis();    
    }
...

Solche Konstruktionen bei "if" Bedingungen vermeide ich weil mir nicht klar ist wie der Compiler das umsetzt.
Ich setze dabei lieber ein paar Klammern mehr als zu wenig.
Code:
if ( (!Buttons[y])  && (ButtonsAlt[y])  && ((millis()-ButtonTime) > ButtonDebounce) ) {
Ich fühle mich dann sicherer dass der Compiler auch das daraus macht was ich will.

Gruß
Arne

ExclamationMit zunehmender Anzahl qualifizierter Informationen bei einer Problemstellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.Exclamation
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  RGB Animation über Serial Steuern Medolino 5 72 20.02.2017 16:14
Letzter Beitrag: Medolino
  Array, SD Read, Write Binär nilsconrad 14 264 25.01.2017 14:28
Letzter Beitrag: nilsconrad
  Mehrere Servos gleichzeitig steuern (Hexapod) scritch 7 284 25.01.2017 08:18
Letzter Beitrag: scritch
  Speicher Voll, Array zu groß, Display Datenerfassung nilsconrad 31 642 13.01.2017 18:16
Letzter Beitrag: renid55
  Über drei Taster zwei externe Timer steuern Sidamo 23 513 09.01.2017 20:12
Letzter Beitrag: Tommy56
  ascii string to int array konvertieren renid55 3 178 29.12.2016 11:49
Letzter Beitrag: Tommy56
  Servo über Temperatur steuern querkopf71 3 262 07.12.2016 19:21
Letzter Beitrag: hotsystems
  Ein als "const" deklariertes Array übergeben Retian 5 195 08.11.2016 18:39
Letzter Beitrag: Tommy56
  Zähler Uwe1475 14 1.681 03.09.2016 20:45
Letzter Beitrag: Uwe1475
  Arduino Steuern über eigne Homepage b3ta 8 531 16.08.2016 11:07
Letzter Beitrag: Pit

Gehe zu:


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