-
        

Ergebnis 1 bis 2 von 2

Thema: Problrm mit while Schleife

  1. #1

    Problrm mit while Schleife

    Anzeige

    Hallo miteinander,

    ich bin neu hier und hab mit meienm Asuro ein kleines Problemchen un dich weiß nicht an was es liegt, hab schon ziemlich alles versucht aber irgendiwe gehts nich. hab nur das wichtigste aus dem code kopiert, das andere ist alles asukommentiert in meinem Code um jeweils die neu funktion zu testen.
    Code:
    while(1)
    	{
    		
    		
    	
    		
    		while (PollSwitch==0)
    		{
    		MotorDir(FWD,RWD);							//drehen bis Linie gefunden ist.
    		MotorSpeed(120,120);
    		Msleep(2000);
    		}
    		
    		
    				
    		
    		MotorDir(FWD,FWD);
    		MotorSpeed(200,200);
    				
    		
    		
    	}
    
    
    	return 0;
    das Problem ist, ich hab keine Ahnung warum der nicht in die untergeordnete while schleife geht, normalerweise müsste er sich ja die ganze zeit im Kreis drehen, tut er aber nicht, ich bin mir auch sicher dass kein Taster gedrückt ist.

  2. #2
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    54
    Beiträge
    5.781
    Blog-Einträge
    8
    Hallo

    PollSwitch() "lügt" gelegentlich, vor allem, wenn gleichzeitig die Motoren laufen stimmt der zurückgelieferte Wert nicht immer. Ein Ansatz das zu lösen wäre mehrere Werte mit PollSwitch() ermitteln und diese dann auf Gleichheit zu überprüfen:

    http://www.roboternetz.de/phpBB2/zei...ag.php?t=36760
    http://www.roboternetz.de/phpBB2/zei...ag.php?t=38949

    Wenn es keine Rolle spielt, welche Taste gedrückt wurde, kann man den Tastenpin auch digital abfragen:

    if(!(PINC & (1<<PC4))) ...

    (aus http://www.arexx.com/forum/%76iewtopic.php?p=1319#p1319)

    Wichtig sind natürlich saubere Lötstellen an den Tastern und die richtigen Widerstände (R23-30, 32). Wenn gar nichts mehr hilft kann man die Formel am Ende der Funktion PollSwitch() editieren (in asuro.c) und damit die Tasten kalibrieren:

    http://www.asurowiki.de/pmwiki/pmwiki.php/Main/Tasten

    Gruß

    mic

    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •