Forum: Mikrocontroller und Digitale Elektronik Motorsteuerung!!


von Matthais (Gast)


Lesenswert?

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

von Stupido (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.