- 3D-Druck Einstieg und Tipps         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 16 von 16

Thema: Selbsttest hängt sich auf

  1. #11
    Neuer Benutzer Öfters hier
    Registriert seit
    14.01.2012
    Beiträge
    8
    Anzeige

    E-Bike
    Dann werde ich das wohl mal machen müssen.
    Hast Du noch einen Tipp wo ich die Bauteile herbekomme? Ich habe einen Conrad direkt vor Ort, oder ist eine Bestellung besser, z.B. Reichelt?

  2. #12
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Wenn du einen Conrad direkt vor Ort hast schau erstmal da nach. Sind zwar etwas teurer dort als bei Reichelt aber bei Reichelt hast du noch 5,90€ Versand und das rechnet sich nicht für zwei Transistoren.
    Die kosten bei Conrad 0,98€ pro Stück:

    http://www.conrad.de/ce/de/product/153470/
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  3. #13
    Neuer Benutzer Öfters hier
    Registriert seit
    14.01.2012
    Beiträge
    8
    Danke für die Tipps, ich melde mich dann wieder wenn die neuen Bauteile eingelötet sind.

  4. #14
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    01.03.2008
    Ort
    Niederlanden
    Beiträge
    1.170
    Zitat Zitat von Kampi Beitrag anzeigen
    Naja wenn der Selbsttest den Fototransistor abfragt und dieser kaputt ist (oder die Diode kaputt ist) und er deswegen nicht durchschalten kann, kann das Programm nicht weiter durchlaufen.
    Doch, weiterlaufen wird es. Schau mal die SelbTest Code an:

    Code:
    SelfTest.c:
    
    ... // line 46
    
    SerWrite("Odometrie Test\n\r",16);
            FrontLED(ON);
            for (i = 0; i < 0xFFF0; i++)
                OdometrieTest();
            StatusLED(OFF); FrontLED(OFF);
    ...
    Code:
    Test.c:
    
    ...
    // line 104
    
    /* ---------- Odometrie Sensor Test ------------- */
    /* Left Sensor -> Status LED GREEN ON when Light on 
       Left Phototransistor bright enough             */
    /* Right Sensor -> Status LED RED ON when Light on 
       Right Phototransistor bright enough            */
    void OdometrieTest(void)
    {
        unsigned int data[2];
    
        OdometrieData(data);
        StatusLED(OFF);
        if (data[0] < 512)
            StatusLED(GREEN);
        if (data[1] < 512) 
            StatusLED(RED);
    }
    /* END Odometrie Sensor Test ------------------- */
    Es misst einfach nur die Spannungswerten 65520 mal und lasst den StatusLED leuchten. Aufhängen kann das Programm nur wann irgendwie ein Reset-situation detektiert wird. (Spannungseinbruch tiefer als Reset-pin Bedingung, und vielleicht blockiert den Bootloader wegen schwache Akku-spannung) Sonnst wird das Programm in einiger Sekunden weiter gehen mit den Motor Test.

  5. #15
    Neuer Benutzer Öfters hier
    Registriert seit
    14.01.2012
    Beiträge
    8
    Das verstehe ich als Neuling ehrlicherweise nicht ganz. Die StatusLED leuchtet dauergrün. Bedeutet das nun, daß das Programm wegen dieses Reset als ganzes beendet wird? Müsste durch diesen Reset nicht auch die LED erlöschen?

  6. #16
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    01.03.2008
    Ort
    Niederlanden
    Beiträge
    1.170
    Wann ein Reset eintrit, wird das laufende Programm beendet. Den Prozessor wird komplett neu eingestellt als wie bei anschalten. Und dann startet den Bootloader von anfang an. Also, wann diese Reset wirklich passiert wurdest du das dadurch erkennen. Nach dem Bootloader abgearbeitet ist geht er weiter mit das gespeicherte Programm. (nur nicht wann die Akku spannung nicht reicht) In deinem Fall sollte das dass SelbTest Programm sein. Aber das wird auch den Statusled Gelb oder Rot leuchten lassen. Ein Reset ist es dan vermutlich doch nicht.

    Hat er zwischen den OdometrieTest und 'aufhängen' den MotorTest gemacht? Dann ist er vermutlich schön bei den sehr langweilige Serielle KommunikationsTest an gekommen. Diese Test wartet ganz lange wann es kein Zeichen empfangt. (Mit StatusLED grun! ) Es wartet ein Timeout-dauer ab äquivalent zu 65534 Zeichen (timeout= FFFE hexadezimal), mal 10 bits pro Zeichen ist 655340 UART-bits, ist 273 Sekunden timeout (mit 2400 Baud). Und das versucht er 254 mal (FE hexadezimal etwas zu empfangen und dann dass nächste höher Zeichen zu senden. Also dauert den SerielTest total 69342 Sekunden, oder 19 Uhr bis den Selbtest wieder von Start mit "-- ASURO Testing --" widerholt. Wann die Empfang Baustein nichts bekommt! Das könnte sicher den Eindrück von 'aufhängen' geben. Aber dann musste erst den Motoren (versucht) gedreht (zu) haben.

    [EDIT] Vielleicht irre ich mich mit den Timeout Sekunden dauer. Könnte auch nur 65534 mal testen des UCSRA Register sein ob etwas empfangen ist. Was sicher schneller passiert. Aber keine ahnung wieviel genau.

    Code:
    void SerialTest(void)
    {
        unsigned char data;
        unsigned char i;
        for (i = 0; i < 0xFE; i++) { 
            StatusLED(GREEN);
            SerRead(&data,1,0xFFFE);
            StatusLED(RED);
            if (data != 'T') data += 1;
            SerWrite(&data,1);
     }
    Geändert von Valen (19.01.2012 um 11:56 Uhr)

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Unit 1.2 hängt sich auf
    Von Billy51 im Forum Open Source Software Projekte
    Antworten: 0
    Letzter Beitrag: 06.03.2011, 13:52
  2. AVR Studio hängt sich auf !!
    Von AndyTrendy im Forum C - Programmierung (GCC u.a.)
    Antworten: 6
    Letzter Beitrag: 29.04.2008, 23:04
  3. Programm hängt sich auf
    Von martin66119 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 5
    Letzter Beitrag: 07.10.2007, 22:06
  4. LCD hängt sich auf
    Von hotijack im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 30.05.2007, 17:47
  5. MEGA8 hängt sich auf
    Von rathma im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 15
    Letzter Beitrag: 13.04.2007, 19:19

Stichworte

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress