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
LED faden
03.09.2014, 15:53
Beitrag #1
LED faden
Ich benötige eine Beispiel, der eine LED langsam hochfadet, dann eine bestimmte Zeit an bleibt, dann langsam runterfaded und dann eine bestimmte Zeit ausbleibt. Dann wieder von vorne. Das ganze natürlich ohne Delay! Zur zeit habe ich dies, aber nur mit Delay, was sich aber mehr und mehr zum Problem wird. Hochfaden oder runterfaden ohne delay funktioniert aber nicht die Kombination aus den 4 Zuständen. Im Endausbau sollen 3 LED's sich beim Faden überschneiden. Kann auch gerne mein aktuelles Sketch posten, wenn dies gewünscht ist.

Bin dankbar für alle Antworten.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.09.2014, 17:22
Beitrag #2
RE: LED faden
(03.09.2014 15:53)Pippsen14 schrieb:  Ich benötige eine Beispiel, der eine LED langsam hochfadet, dann eine bestimmte Zeit an bleibt, dann langsam runterfaded und dann eine bestimmte Zeit ausbleibt. Dann wieder von vorne. Das ganze natürlich ohne Delay! Zur zeit habe ich dies, aber nur mit Delay, was sich aber mehr und mehr zum Problem wird. Hochfaden oder runterfaden ohne delay funktioniert aber nicht die Kombination aus den 4 Zuständen. Im Endausbau sollen 3 LED's sich beim Faden überschneiden. Kann auch gerne mein aktuelles Sketch posten, wenn dies gewünscht ist.

Bin dankbar für alle Antworten.

Hi,
im allgemeinen wird dir hier im Forum dann empfohlen dir in der IDE unter:
Datei - Beispiele - 02.Digital - BlinkWhithoutDelay
zu Gemüte zu führen...da drin findest du dann selber deinen gewünschten
Lösungsweg zu deinem Anliegen.
lg
bk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.09.2014, 17:26
Beitrag #3
RE: LED faden
(03.09.2014 17:22)Bitklopfer schrieb:  
(03.09.2014 15:53)Pippsen14 schrieb:  Ich benötige eine Beispiel, der eine LED langsam hochfadet, dann eine bestimmte Zeit an bleibt, dann langsam runterfaded und dann eine bestimmte Zeit ausbleibt. Dann wieder von vorne. Das ganze natürlich ohne Delay! Zur zeit habe ich dies, aber nur mit Delay, was sich aber mehr und mehr zum Problem wird. Hochfaden oder runterfaden ohne delay funktioniert aber nicht die Kombination aus den 4 Zuständen. Im Endausbau sollen 3 LED's sich beim Faden überschneiden. Kann auch gerne mein aktuelles Sketch posten, wenn dies gewünscht ist.

Bin dankbar für alle Antworten.

Hi,
im allgemeinen wird dir hier im Forum dann empfohlen dir in der IDE unter:
Datei - Beispiele - 02.Digital - BlinkWhithoutDelay
zu Gemüte zu führen...da drin findest du dann selber deinen gewünschten
Lösungsweg zu deinem Anliegen.
lg
bk


Ja, das habe ich schon öfters gesagt bekommen und dies ist die Standardantwort im Forum. Leider bin ich halt des Programmierens noch nicht so mächtig und hätte mich über Teile eines Codes gefreut. Es ist halt frustrierend wenn man nicht den Platz findet wo man den Hebel ansetzten kann. Möchte ja auch verstehen wie es funktioniert.

Gruß
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.09.2014, 17:31
Beitrag #4
RE: LED faden
(03.09.2014 15:53)Pippsen14 schrieb:  .....
Ja, das habe ich schon öfters gesagt bekommen und dies ist die Standardantwort im Forum. Leider bin ich halt des Programmierens noch nicht so mächtig und hätte mich über Teile eines Codes gefreut. Es ist halt frustrierend wenn man nicht den Platz findet wo man den Hebel ansetzten kann. Möchte ja auch verstehen wie es funktioniert.

Gruß

...also Arduino ist ja ein System um in die Mükrocomputerwelt einzusteigen und da heißt es learning by doing....oder meinst du unsereinem wurde das schon in die Wiege gelegt...
UND dieses Beispiel ist der HEBEL...

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.09.2014, 02:47 (Dieser Beitrag wurde zuletzt bearbeitet: 09.09.2014 04:50 von Corvus.)
Beitrag #5
RE: LED faden ohne Delay
Hallo,
hab dir da mal was zusammengeschustert:
Zitat:int ledPin = 9;
unsigned long fadeStartZeit = 0;
int fadeDauer = 1000;
int fadeStartwert = 0;
int fadeEndwert = 255;
int fadeWert;

void setup() {
  fadeStartZeit=millis();


void loop() {
  if (fadeStartZeit) {
    unsigned long jetzt = millis();
    if ( jetzt >= (fadeStartZeit + fadeDauer)) {
      fadeWert=fadeEndwert;
      fadeStartZeit=0;                  
    }
    else {
      fadeWert=(map(jetzt,fadeStartZeit,fadeStartZeit+fadeDauer,fadeStartwert,fadeEndwert));
    }
    analogWrite(ledPin, fadeWert);
  }
  else {
    int tmp = fadeStartwert;
    fadeStartwert = fadeEndwert;
    fadeEndwert=tmp;
    fadeStartZeit=millis();
  }
}
(ungetesteter Lösungsansatz)

Das mit den Wartezeiten dazwischen wirst du, jetzt da du den 'Hebel' kennst wohl auch hinbekommen.

gruß Lorenz
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.09.2014, 08:57
Beitrag #6
RE: LED faden
Also allgemein muss ich auch mal sagen, dass hier die Hilfsbereitschaft sehr eingeschränkt ist...

Ich bin auch in einem Autoforum... Wenn ich da z.B. schreibe, dass an meinem Commodore die Hinterachse unter Last singt, bekomme ich konkrete Hinweise zu Lagerspiel, Ölstand oder Ölqualität. Habe ich z.B. zu wenig Öl drin, bekommt man da genaue Hinweise wie man den richtigen Ölstand einzustellen hat.
Ich habe es noch nie erlebt, dass jemand sagt "Schau mal in der Betriebsanleitung vom Omega wie man die Räder wechselt, vielleicht kommst du dann alleine drauf, was deine Hinterachse macht."

Ein Forum sollte doch konkrete Hilfe bieten und keine Spielwiese dafür sein, dass die Nerds, den Laien ihre Unwissenheit vor Augen führen!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.09.2014, 13:19
Beitrag #7
RE: LED faden
Hallo,

(07.09.2014 08:57)MaHa1976 schrieb:  Also allgemein muss ich auch mal sagen, dass hier die Hilfsbereitschaft sehr eingeschränkt ist...

Ein Forum sollte doch konkrete Hilfe bieten und keine Spielwiese dafür sein, dass die Nerds, den Laien ihre Unwissenheit vor Augen führen!

na das finde ich jetzt ein wenig ungerecht.
Lese schon seit längerer Zeit hier im Forum mit und kann das nicht bestätigen.

Bin selber noch Anfänger und probiere hier und da mit einigen Sachen rum. Wenn du wirklich was lernen willst hilft die fertiger Code meistens nicht auf Dauer. Da muss man sich schon ein wenig mit dem Problem beschäftigen und sich die Sachen halbwegs selbst erarbeiten.

Nichts für ungut, nimm es bitte nicht persönlich, aber das musste jetzt gesagt werden Cool

Gruß,
Rainer...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.09.2014, 17:44 (Dieser Beitrag wurde zuletzt bearbeitet: 09.09.2014 04:48 von Corvus.)
Beitrag #8
RE: LED faden
Tut mir leid, dass meine Hilfestellung das Problem nicht zu 100% gelöst hat. Mir war nicht klar, dass es hier nicht darum ging einen Lösungsansatz aufzuzeigen und kein Interesse daran besteht den gelieferten Quellcode zu verstehen um sich anschließend bei ähnlichen Problemen selbst helfen zu können. Da es sich hier vielmehr um eine Auftragsarbeit handelt, hier nun selbstverständlich eine vollständige Lösung:
Zitat:int ledPin = 9;
unsigned long fadeStartZeit = 0;
int fadeDauer = 1000;
int fadeStartwert = 0;
int fadeEndwert = 255;
int fadeWert;
int warteDauer=2000;
unsigned long warteZeit = 0;

void setup() {
  fadeStartZeit=millis();


void loop() {
  if (fadeStartZeit) {
    unsigned long jetzt = millis();
    if ( jetzt >= (fadeStartZeit + fadeDauer)) {
      fadeWert=fadeEndwert;
      fadeStartZeit=0;
      warteZeit=millis()+warteDauer;
    }
    else {
      fadeWert=(map(jetzt,fadeStartZeit,fadeStartZeit+fadeDauer,fadeStartwert,fadeEndwert));
    }
    analogWrite(ledPin, fadeWert);
  }
  if (warteZeit) {
    if (millis()>=warteZeit) {
      int tmp = fadeStartwert;
      fadeStartwert = fadeEndwert;
      fadeEndwert=tmp;
      fadeStartZeit=millis();
      warteZeit=0;
    }
  }
}
Bitte seht es mir nach, dass ich noch nicht dazu gekommen bin obigen Code zu testen. Sobald ich wieder einen Arduino in den Fingern habe hole ich es selbstverständlich nach, versprochen.

Hochachtungsvoll lorenz

PS: Soll ich noch Abfragen zu Helligkeitssensoren oder Ähnliches einbauen? Wo kann ich das von dir verwendete Modell bestellen, um es für dich testen zu können?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Gehe zu:


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