Hallo Zusammen, bin gerade dabei ein kleines Buzzer-Spiel aufzubauen. Es gibt 4 Buzzer, darin ein Taster, Led und Motor für Blaulicht-Effekt (Eurolite Buzzer von Conrad) Die Taster sind als Interrupt, Rising Edge mit 10kOhm PullDown angeschlossen. Das Funktioniert soweit auch. Wenn ich nun aber einen Ausgang Schalte um Motor und Led zu betreiben, werden die Interrupts der Taster ausgelöst :( Hab schon einige Versuche hinter mir, finde den Fehler aber nicht: Freilauf-Diode vergessen? - Diode eingebaut: Klappt trotzdem nicht. Spannung schwankt? - Elko eingebaut: Klappt trotzdem nicht. Motor Ansteuerung? - ULN2003 eingebaut: Klappt trotzdem nicht. Weiß jemand wo mein Fehler liegt?
Stärkere Pullups und getrennte masseführung für motor und inputs.
Andre schrieb: > Weiß jemand wo mein Fehler liegt? Das sieht doch schon auf den ersten Blick, das die Schaltung fehlerhaft ist!
Hast du den Motor schon entstört? Ist deine Versorgungsspannung ausreichend? Schalte doch mal den Motor per Hand ein. Gibt es dann auch einen Gratisinterrupt? Ein Schaltplan wäre schon hilfreich:-(
@Andre (Gast) >Die Taster sind als Interrupt, Rising Edge mit 10kOhm PullDown >angeschlossen. >Das Funktioniert soweit auch. Macht man aber selten so. Denn deine Taster müssen sicher NICHT in ein paar Nanosekunden eine Reaktion auslösen. Taster liest man periodisch mit einem Timer-Interrupt ein, dann klappt es auch mit der Entprellung bzw. hier Entstörung. >Wenn ich nun aber einen Ausgang Schalte um Motor und Led zu betreiben, >werden die Interrupts der Taster ausgelöst :( Schöne Grüße von der EMV ;-) >Weiß jemand wo mein Fehler liegt? In deinen fehlenden Angaben zum Schaltplan als auch dem fehlenden Bild vom realen Aufbau, siehe Netiquette.
Hier ganz grob mein Schaltplan für einen Taster und einen Motor Die 5V Versorgungsspannung kommen von einem Steckernetzteil. Das Mega128-Testboard ist für die Auswertung (mittels UART) über USB am PC angeschlossen. Stromverdichter schrieb: > Hast du den Motor schon entstört? Reicht da der 100nF Kondensator und die Diode im ULN2003 ? Stromverdichter schrieb: > Schalte doch mal den Motor per Hand ein. Gibt es dann auch einen > Gratisinterrupt? Ja, auch wenn ich den Eingang vom ULN per Hand beschalte kommen die Internets. Falk B. schrieb: > Taster liest man periodisch mit einem Timer-Interrupt ein, dann klappt > es auch mit der Entprellung bzw. hier Entstörung. Habe es über Interrupts gemacht um auch ganz kurze Verzögerungen wahrnehmen zu können. Aber ok. Periodisch im ms-Bereich würde auch noch reichen.
@ Andre (Gast) >Hier ganz grob mein Schaltplan für einen Taster und einen Motor Hmmm. Taster schaltet man meist gegen GND. Erstens, weil man da die internen Pull-Up Widerstände nutzen kann und 2. weil man da keinen Kurzschluss machen kann. >Reicht da der 100nF Kondensator und die Diode im ULN2003 ? Wenn man einen Motor so schaltet, darf man KEINEN Kondensator direkt paralle schalten! Und die Freilaufdiode im ULN2003 ist nur dasn wirksam, wenn CD+ an Vcc angeschlossen ist! >Ja, auch wenn ich den Eingang vom ULN per Hand beschalte kommen die >Internets. ??? Interrupts. Pack einen RC-Filter vor den Tastereingang und schalte GND. https://www.mikrocontroller.net/articles/Entprellung#Einfacher_Taster
Mach C1 xxpF, gib dem Treiber 100nF + 1µF Kerkos. Event. bricht deine Versorgung auch zu weit ein, um das damit ausgleichen zu können. Nochn paar µF extra gönnen, in der nähe der Treiberstufe. R1 ist sinnlos! Pull-up/downs sollen den EINGANG auf def. Potential halten. Macht aber wahrscheinlich schon der auf dem "Testboard"!? EDIT: Falk B. schrieb: > Und die Freilaufdiode im ULN2003 Ubs :)
:
Bearbeitet durch User
Andre schrieb: > Ja, auch wenn ich den Eingang vom ULN per Hand beschalte kommen die > Internets. Hier kommt etwas dank Internet.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.