Forum: Mikrocontroller und Digitale Elektronik LED mit Taster ansteuern und Interrupt einfügen


von Sven (Gast)


Angehängte Dateien:

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 ^^

von Kevin M. (arduinolover)


Lesenswert?

Warum solltest du den Taster jetzt nicht mehr in Software entprellen 
können?

von Sebastian R. (sebastian_r569)


Lesenswert?

Nichts, was ein Timer-Interrupt nicht lösen könnte...

von Falk B. (falk)


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.

von Teo D. (teoderix)


Lesenswert?

Sebastian R. schrieb:
> Nichts, was ein Timer-Interrupt nicht lösen könnte...

Der Timer-Interrupt kommt erst nächste Woche dran, Heute sind erstmal 
Interrupts an sich dran! Also das "simpelste": Taster löst Interrupt 
aus.... :P

von Sebastian R. (sebastian_r569)


Lesenswert?

Teo D. schrieb:
> Der Timer-Interrupt kommt erst nächste Woche dran, Heute sind erstmal
> Interrupts an sich dran! Also das "simpelste": Taster löst Interrupt
> aus.... :P

Vielleicht kann man den Lehrer/Ausbilder ja damit beeindrucken, wenn man 
das Wort erwähnt :D

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.