LED mit Taster ansteuern und Interrupt einfügen

Gast #6948344
Lesenswert?

Hallo,
ich bin hier noch sehr neu und habe auf der Arbeit die Aufgabe bekommen, 
eine LED per Tasterdruck an- und auszuschalten. Das habe ich relativ 
schnell geschafft.
Jetzt soll ich die Funktion Interrupt hinzufügen...
Das Problem, was sich mir jetzt stellt, ist, dass ich den Taster nicht 
mehr entprellen kann. Ich möchte es hardwaretechnisch mit einem 
Kondensator machen, weiß aber nicht, wie ich diesen mit dem passenden 
Widerstand in meine Schaltung einbinde...
Falls jemand eine Lösung hat oder mir Ideen geben kann, wäre ich sehr 
dankbar ^^
Angehängte Dateien:
#6948371
Lesenswert?

Sven schrieb:
> Hallo,
> ich bin hier noch sehr neu und habe auf der Arbeit die Aufgabe bekommen,
> eine LED per Tasterdruck an- und auszuschalten. Das habe ich relativ
> schnell geschafft.

Naja, es mag bei dir auf deinem Schreibtisch bei Sonnenschein und 
Windstille funktionieren, aber solide ist das nicht. Einen Taster klemmt 
man nicht direkt an einen externen Interrupt. Denn die praktisch immer 
nötige Entprellung verlangsamt den Interrupt unnötig. Ja, in so 
einem einfachen Beispiel mag es OK sein, allgemein aber eher nicht.

> Jetzt soll ich die Funktion Interrupt hinzufügen...

Wozu? Einen Interrupt nutzt man nicht um des Interrupts willen. Die 
direkte Unterstützung der Interrupts ist beim Arduino sehr mager. Man 
muss das immer manuell machen, so wie bei normalem C-Code ohne 
Arduino-IDE, siehe Interrupt.

> Das Problem, was sich mir jetzt stellt, ist, dass ich den Taster nicht
> mehr entprellen kann.

AHA!

> Ich möchte es hardwaretechnisch mit einem
> Kondensator machen, weiß aber nicht, wie ich diesen mit dem passenden
> Widerstand in meine Schaltung einbinde...

Siehe Entprellung. Kann man machen, ist aber nicht unbedingt der 
übliche Weg. Meistens ist es besser, Taster regelmäßig in einem 
Timer-Interrupt abzufragen und zu entprellen. Siehe 
Entprellung.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren