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
Lauflicht mit Interrupt
05.12.2019, 23:02
Beitrag #17
RE: Lauflicht mit Interrupt
Ds kannst nur Du mit Deinem Taster in einem einfachen Sketch austesten, weil nur Du den Taster hast.
Einfach im Loop zählen wieviele Impulse bei einer Betätigung erfolgen und dann die Zeitkonstante solange hoch/runter stellen bis ein Druck auch nur einen Impuls ergibt und die Zeitkonstante so klein wie möglich ist.

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
06.12.2019, 07:15
Beitrag #18
RE: Lauflicht mit Interrupt
Naja, selbst die Billigtaster aus China haben meist viel geringere Prellzeiten (<10ms).
Da Mensch aber schon beim schnellen drücken des Tasters selten unter 100ms bleibt, ist die Entprellzeit relativ unkritisch.
Vor allem bei einer Anwendung wie hier, wo man den Taster ja nicht besonders schnell betätigen muss, sondern ihn nur zum durchschalter der Programme bzw. für die Richtungsumkehr betätigt.
Deswegen sind die 30ms, die ich dort hinein geschrieben habe, ziemlich willkürlich gewählt. Wichtig ist, dass man die Taster entprellt.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
09.12.2019, 22:37
Beitrag #19
RE: Lauflicht mit Interrupt
Nochmals zurück zu deinem Programm. Ich habe es mir jetzt mal genauer angeschaut und noch ein paar kleine Unklarheiten.
Ich möchte jetzt gerne nur 7 Kanäle nutzen dazu habe ich dann die Zeile

Code:
const uint8_t LED_PINS[] = {2, 3, 4, 5, 6, 7, 8, 9 }; // an D2...D9 sind die LEDs angeschlossen (max. 8 LEDs)

in

const uint8_t LED_PINS[] = {2, 3, 4, 5, 6, 7, 8 }; // an D2...D7 sind die LEDs angeschlossen (max. 7 LEDs)

geändert ist das so richtig wenn ich nur 7 Kanäle nutzen möchte ? bzw. wenn ich mehr nutzen möchte weitere Pin hinzu schreiben (10, 11 usw.)

des weiteren wie ändere ich die Bit Muster Bsp.:

B10000000 // Original
B1000000 // einfach eine Ziffer weg streichen geht nicht dann geht bei die LED PIN3 an,statt PIN2 wie es im Original der Fall ist.

Also vermute ich das das ganze mit derZeile zusammenhängt,
Code:
digitalWrite(LED_PINS[i], (bits << i) & 0x80);
  }
}
gehe ich richtig in der Annahme, das da etwas in eine Adresse geschrieben wird welche (Adresse) dann ebenfalls geändert wird.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  for-schleife, delay, millis, interrupt Harry 8 210 31.03.2020 21:02
Letzter Beitrag: Harry
Question deepsleep 433Mhz Interrupt Marc2014 15 369 28.03.2020 13:30
Letzter Beitrag: hotsystems
Question Lauflicht Spezial Charlie 7 267 25.03.2020 00:23
Letzter Beitrag: senseman
  Lauflicht mit externem Takt Manny 21 1.143 02.03.2020 12:36
Letzter Beitrag: Harry
Question Lauflicht mit zufälligem Stop Platinum 5 310 20.02.2020 20:07
Letzter Beitrag: Tommy56
  Loop-Teil mit Interrupt für bestimmte Zeit stoppen Alter Fritz 11 947 23.12.2019 23:10
Letzter Beitrag: hotsystems
  AT90CAN Interrupt wird nicht ausgelöst slsb02 5 578 19.11.2019 15:04
Letzter Beitrag: slsb02
  Interrupt vs. LCD Nasenbär 10 1.272 22.08.2019 16:30
Letzter Beitrag: @Thomas
  RGB LED Lauflicht per Taster unterbrechen AC_DC_new 28 4.464 05.08.2018 19:16
Letzter Beitrag: AC_DC_new
  Lauflicht mit Kontrolle Golffahrer 13 2.746 13.05.2018 19:59
Letzter Beitrag: Tommy56

Gehe zu:


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