- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 7 von 7

Thema: Welche Werte der Fusebits für rnControl Testprogramm mit avr

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    08.02.2007
    Beiträge
    26

    Welche Werte der Fusebits für rnControl Testprogramm mit avr

    Anzeige

    E-Bike
    Hallo,

    ich habe mit avrdude erfolgreich das fertig kompilierte Testprogramm auf mein RN-Control übertragen, um damit die Funktionen zu testen.
    Nach dem Aufspielen des Testprogrammes verhält sich das Board so:
    LED 7 und 8 leuchten dauernd, alle anderen LEDs sind aus.
    Wenn ich die Resettaste drücke, ertönen 3 Beeps (tief hoch tief),
    wenn ich Tasten T1,2,3,5 drücke, kommt nur ein einmaliger, tiefer Beep.
    Wenn Taste 4 gedrückt wird, kommen 2 Beeps (tief hoch).

    Jedoch sollte mit dem Testprogramm ein Lauflicht ablaufen, wenn man Taste 3 drückt, das ist bei mir jedoch nicht der Fall!

    Die DIP Schalter sind alle auf ON und ich habe auf dem Board keine Jumper gesetzt.
    Laut avrdude lauten bei mir die Fusebits:
    Lowfuse: ef
    Highfuse: d9

    Wo könnte der Fehler liegen?

    Vielen Dank schonmal für eure Hilfe,

    Gruß
    thdrummer

  2. #2
    Am Anfang war es bei mir auch so, hatte zu wenig Spannung anliegen.

    mfG
    Tippo

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    08.02.2007
    Beiträge
    26
    Hallo Tippo,

    danke für deine schnelle Antwort! Ich hatte bisher nur 7,5 V anliegen, verwende nun ein 12-V-Netzteil, jedoch funktioniert es immer noch nicht - das Verhalten bleibt genau gleich!
    GIbt es weitere Ansätze um den Fehler einzugrenzen / zu beheben?

    Danke schonmakl,

    Gruß
    thdrummer

  4. #4
    Naja, mehr Probleme hatte ich noch nicht damit.
    Programm 1 und 4 gibt etwas über die RS232 schnittstelle aus (1 Batteriespannung, 4 Messwerte an Port A). Evtl. schließt du mal den Rechner an die RS232 Schnitstelle an, startest ein Terminal in Bascom und drückst die 1 am Board.
    Für Programm 2 müssten Motoren angeschlossen sein, das könntest du auch noch ausprobieren.

    Die Fusebits sind übrigens im RN-Control handbuch erklärt, allerdings für Bascom glaub ich.

    mfG
    Tippo

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    08.02.2007
    Beiträge
    26
    Danke für die schnelle Antwort!
    Programm 3 müsste ja ein Lauflicht erzeugen, das macht es aber nicht - und normal ist es AFAIK nicht, dass die LEDs 7 und 8 dauerleuchten.
    Im RN-Control Handbuch sind die Fusebits nur für Bascom erklärt, leider. Da mein USB-Programmer (USBASP von http://www.fischl.de/usbasp/ ) jedoch nicht von Bascom unterstützt wird, kann ich es mit Bascom nicht testen...
    Am Ausgang für die Motoren liegt keine Spannung an - egal welche Taster ich drücke!
    Bin langsam echt am verzweifeln, da ich nicht mehr weiterweiss.

    Hat evtl. noch jemand anderes einen nützlichen Tip für mich?

    Danke Tippo für diene Hilfe!

    Gruß
    thdrummer

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    08.02.2007
    Beiträge
    26
    Ich habe nun ein einfache C-Testprogramm auf das Board überspielt, hier der Quelltext:

    #include <stdio.h> //c standard i/o lib
    #include <stdlib.h> //c standard lib
    #include <avr/io.h> //i/o functions definitions of registers and ports
    #include <avr/delay.h> //delay function
    #include <avr/signal.h> //needed when interrupts via SIGNAL used

    #define LEDs PORTC

    // Hält Program für ca. k * 100 Millisekunden an
    void wait(int k) {
    for (int i=0; i<k*10; i++) {
    _delay_ms(10);
    }
    }

    int main(void) //function main is ALWAYS called first
    {
    DDRC = 0xff; // LEDs als Ausgang

    int i;

    while(1) { // Lauflicht
    for (i=0; i<8; i++) {
    LEDs |= _BV(i);
    wait(10);
    LEDs &= LEDs ^ _BV(i);
    }

    }

    return 0;
    }
    So funktioniert das Lauflicht, jedoch immer noch nicht mit der fertig kompilierten Version des rncontrol-Testprogramms - woran kann das noch liegen?

  7. #7
    Administrator Robotik Visionär Avatar von Frank
    Registriert seit
    30.10.2003
    Beiträge
    5.116
    Blog-Einträge
    1
    Wenn du RN-Control als Fertigmodul gekauft hast, dann ist der COntroller bereits korrekt programmiert, auch alle Fusebits korrekt gesetzt. Es muss also auf Anhieb alles funktionieren.
    Solltest du es selbst aufgebaut haben, dann wäre es am einfachsten wenn DU die Fusebits mit Bascom entsprechend setzt. Da abe rdein ISP dafür wohl nicht geht, hilft ein Blick in unser RN-Wissen RN-Board FAQ:
    https://www.roboternetz.de/wissen/in...oard_FAQ-Seite

    Dort findest du auch folgendes Bild zu Pony:

    Bild hier  

    Sollte die Tasten nicht korrekt funktionieren, könnte es sein das du einige Jumpe rfalsch gesetzt hast. Achte hier genau auf die Anleitung, wichtig ist zum Beispiel die Referenzspannung. Wenn da salles stimmt dann könnte es sein das deine Widerstände höhere Toleranzen als vorgesehn besitzen, du musst dann die "select case"Anweisung im Quellcode ändern.
    Schau dir dazu folgenden Codeausschnitt des Testprogrammes an:
    Code:
    'Diese Unterfunktion fragt die Tastatur am analogen Port ab
    Function Tastenabfrage() As Byte
    Local Ws As Word
    
       Tastenabfrage = 0
       Ton = 600
       Start Adc
       Ws = Getadc(7)
      ' Print "Tastenabfrage anpassen!ADC Wert ws=" ; Ws
       If Ws < 500 Then
          Select Case Ws
             Case 400 To 450
                Tastenabfrage = 1
                Ton = 550
             Case 330 To 380
                Tastenabfrage = 2
                Ton = 500
             Case 260 To 305
                Tastenabfrage = 3
                Ton = 450
             Case 180 To 220
                Tastenabfrage = 4
                Ton = 400
             Case 90 To 130
                Tastenabfrage = 5
                 Ton = 350
     '        Case Else
    '              Print "Tastenabfrage anpassen!ADC Wert ws=" ; Ws
          End Select
          Sound Portd.7 , 400 , Ton                             'BEEP
    
       End If
    Dort gibt es einige auskommentierte Zeilen die du aktivieren solltest. Bei einer Taste wird dann ein Wert übe rdie RS232 Schnittstelle ausgegeben. Du solltest schaun ob dieser Wert in dem CASE-Bereich liegt. Bei taste 5 müsste der Wert beispielsweise zwischen 90 und 130 liegen. Ist das nicht der Fall, müsstest du die CASE Werte anpassen.

    Wenn das alles auch nicht klappt, ja dann musst du den Aufbau deines Boardes nochmal komplett durchgehen, irgendwo muss da noch ein Wurm drin stecken. Genau mit Doku vergleichen. Zum C Programm kann ich nix sagen da ich C nicht nutze.

    gruß
    Frank

Berechtigungen

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

LiFePO4 Speicher Test