-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: ASURO 1. Programm klappt nicht

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    04.01.2006
    Beiträge
    6

    ASURO 1. Programm klappt nicht

    Anzeige

    Hallo ASURO-Fans,
    ich habe das erste eigene Programm nach Anleitung (Kap. 8.5) geschrieben und erfolgreich geflasht. Aber ASURO reagiert sehr eigenwillig. Statt rot leuchtet die Status-LED grün und der linke Motor lässt ASURO im Kreis fahren!
    Was habe ich falsch gemacht, was muss ich ändern?

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    08.05.2005
    Ort
    München
    Alter
    45
    Beiträge
    59
    Hallo,

    wenn du dein Programm posest geht es evtl einfacher herauszufinden was los ist.

    Möglichkeit A) Schriebfehler oder Denkfehler im Programm

    Möglichkeit B) Fehler am ASURO Selbst.

    Martin

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Ort
    Dortmund
    Alter
    24
    Beiträge
    1.641
    Also, da die LED grün leuchtet, wird wohl der ASURO hinüber sein, oder du hast den MC falsch eingesteckt. Ich halte nicht viel vom ASURO, da er nur auf billig ausgelegt ist. Bei mir funktionieren die Taster gar nicht mehr.
    o
    L_
    OL
    This is Schäuble. Copy Schäuble into your signature to help him on his way to Überwachungsstaat!

    http://de.youtube.com/watch?v=qV1cZ6jUeGE

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    04.01.2006
    Beiträge
    6
    Hallo MSSputnik,

    besten Dank für die Hinweise. Beim Testlauf funktionieren alle Funktionen bis auf die Taster. Deshalb glaube ich, dass der Asuro ok ist, ich aber irgendwelche Parameter verändern muss. Fragt sich nur, wie und welche?

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    04.04.2005
    Ort
    Hamburg
    Alter
    29
    Beiträge
    826
    Ja, und diese frage nach welchen, können wir leider nicht erraten. Poste dohc mal bitte dein Programm, da wir ja nicht raten können, was du geschrieben hast.

    Andun
    www.subms.de
    Aktuell: Flaschcraft Funkboard - Informationssammlung

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    04.01.2006
    Beiträge
    6
    Hallo,
    steht in Kapitel 8.5 der Anweisung und lautet:

    #include "asuro.h"
    int main(void) {
    Init();
    StatusLED(RED);
    while(1);
    return 0;
    }

    Ich habe dafür das vorgegebene test-Programm aus FirstTry verwendet und entsprechend geändert (alles nach Anweisung).


    Noch ein Hinweis zur Funktion der Taster beim SelfTest: Es leuchten zwar die richtigen LEDs auf, aber bei einigen läuft gleichzeitig ein Motor. In der Beschreibung steht, dass man das softwaremäßig beheben kann. Wie?

  7. #7
    Erfahrener Benutzer Roboter Genie Avatar von m.a.r.v.i.n
    Registriert seit
    24.07.2005
    Ort
    Berlin
    Beiträge
    1.247
    Hallo Nobbi,

    Eventuell hast du beim Zusammenlöten 2 Pins am IC1 gebrückt. Nochmal kontrollieren.

    Beim Selbsttest kann es vorkommen das beim Drücken von K1 oder K2 auch K6 erkannt wird, und der linke Motor mitläuft.
    Wie dass softwaremäßig behoben werden kann, findest du hier

    Gruß Peter

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    04.01.2006
    Beiträge
    6
    Hallo Peter,
    besten Dank für deine Tipps. Nochmal die Ausgangslage: Beim Selbsttest ist alles ok bis auf die Taster K1 und K2. Bei Betätigen von K1 leuchtet die StatusLED grün (wie vorgesehen) und zusätzlich die rechte Back-LED. Bei K2 leuchtet die StatusLED rot (wie vorgesehen) und der linke Motor.

    Der obere Link besagt, dass man folgende Programmzeile ändern soll:
    "return ((unsigned char) ((( 1024.0/(float)i - 1.0)) * 63.0 + 0.5));"

    Ich bin leider Anfänger und nicht sicher, ob ich alle Schritte richtig gemacht habe. Hier meine Vorgehensweise:
    Die Programmzeile, die man ändern soll, habe ich in asuro.c gefunden.
    Also asuro.c auf notepad geladen, clean betätigt, Wert 63 auf 62 geändert, mit make die hex-Datei erzeugt und gespeichert. Dann selftest.hex zum asuro geflasht. Leider keine Änderung festgestellt.
    Gleiches mit 61 und 60 versucht, ebenfalls negativ.
    Wahrscheinlich mache ich irgendwas falsch! Was?

  9. #9
    Erfahrener Benutzer Roboter Genie Avatar von m.a.r.v.i.n
    Registriert seit
    24.07.2005
    Ort
    Berlin
    Beiträge
    1.247
    Hallo Nobbi,

    genaus so gehts.
    Der Wert könnte aber auch 64 oder 65 sein. Ist leider bei fast jedem Asuro ein andere Wert.
    Hinzu kommt das die Abfrage der Taster im Selbsttest Programm auch nicht 100% funktioniert.
    Besser ist folgendes: 2xPollSwitch aufrufen und beide Rückgabewerte vergleichen.
    Hier die geänderte Funktion in test.c
    Code:
    void SwitchTest(void)
    {
    	unsigned char sw,sw2,tmp;
    	MotorDir(FWD,BREAK);
    
    	sw = PollSwitch();
    	sw2 = PollSwitch();
    	StatusLED(OFF);
    	FrontLED(OFF);
    	BackLED(OFF,OFF); 
    	MotorSpeed(0,0);
    	tmp = 0;
    
    	if (sw && sw2 && sw == sw2)
    	{	
       		if (sw & 0x01) 
    			MotorSpeed(200,0);
    		if (sw & 0x02)
    		{	
    			BackLED(OFF,ON);
    			tmp = 1;
    		}
    		if (sw & 0x04) 
    			BackLED(ON,tmp);
    		if (sw & 0x08) 
    			FrontLED(ON);
    		if (sw & 0x10) 
    			RED_LED_ON;
    		if (sw & 0x20) 
    			GREEN_LED_ON;
    	}
    }
    Gruß Peter

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Ort
    Dortmund
    Alter
    24
    Beiträge
    1.641
    Wofür steht denn tmp?

    Tschüß,
    Lunarman
    o
    L_
    OL
    This is Schäuble. Copy Schäuble into your signature to help him on his way to Überwachungsstaat!

    http://de.youtube.com/watch?v=qV1cZ6jUeGE

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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