Hi Ich hab folgendes Problem ich soll über einen Opto. einen Motor ansteuern & wenn ich einen Taster drück soll der motor aufhören sich zu drehen!! Mein erster Entwurf: int main (void) { DDRE = 0xbf; while(1) //Endlos Schleife { PORTE |= (1<<PE3); // Setzt das 3-Bit von Port E auf High //DDRE &= ~(1 << DDE6); // Definiert Pin 7 als Eingang _delay_ms(500); // Zeitverzögerung damit der "Finger" vom Taster entfernt wird. if ( PINE & (1<<PINE6) ) // Es wird Überpruft ob auf Pin 7 eine 1 anliegt oder nicht PORTE &= ~(1<<PE3); // Setzt das 3-bit von Port E auf Low else PORTE |= (1<<PE3); } } Das einzige Problem was ich noch hab ist, dass wenn ich den taster drück der motor sich froh und heiter weiter dreht. Die Hardware hab ich so verwirklicht, dass ich mit einem Pullup-Widerstand einen Strom auf Pin6 in en µC hineinschicke. Bitte um Hilfe MfG Teuschl
Die "Vorabkonfiguration" gehört nicht in die Schleife. Pack in die Schleife nur deine Pin-Auswertung. Nur prüfen ob der Schalter gedrückt ist. Wenn ja dann Pin low wenn nein dann Pin high. Is zwar n doofes Polling aber sollte klappen.
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.