- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 29 von 29

Thema: RP6Base: Library für 8 Servos

  1. #21
    Erfahrener Benutzer Fleißiges Mitglied Avatar von I♥ROBOTIC
    Registriert seit
    15.03.2010
    Ort
    Fürstenstein
    Alter
    27
    Beiträge
    112
    Anzeige

    LiFePo4 Akku selber bauen - Video
    ich wollte die ServoLib auch mal ausprobieren und hab das Demoprogramm kopiert, aber beim kompilieren kommt die Fehlermeldung:

    H:\RP6\RP6Examples\Programme\servoLibTest>set LANG=C

    H:\RP6\RP6Examples\Programme\servoLibTest>make all

    -------- begin --------
    avr-gcc (WinAVR 20100110) 4.3.3
    Copyright (C) 2008 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions. There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


    Compiling: ServoLibTest.c
    avr-gcc -c -mmcu=atmega32 -I. -gdwarf-2 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=ServoLibTest.lst -I../../RP6lib -I../../RP6lib/RP6base -I../../RP6lib/RP6common -std=gnu99 -MD -MP -MF .dep/ServoLibTest.o.d ServoLibTest.c -o ServoLibTest.o
    ../../RP6lib/RP6base/RP6RobotBaseLib.h:180: warning: inline function 'isMovementComplete' declared but never defined
    ../../RP6lib/RP6base/RP6RobotBaseLib.h:67: warning: inline function 'setLEDs' declared but never defined
    ../../RP6lib/RP6base/RP6RobotBaseLib.h:180: warning: inline function 'isMovementComplete' declared but never defined
    ../../RP6lib/RP6base/RP6RobotBaseLib.h:67: warning: inline function 'setLEDs' declared but never defined


    Linking: ServoLibTest.elf
    avr-gcc -mmcu=atmega32 -I. -gdwarf-2 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=ServoLibTest.o -I../../RP6lib -I../../RP6lib/RP6base -I../../RP6lib/RP6common -std=gnu99 -MD -MP -MF .dep/ServoLibTest.elf.d ServoLibTest.o ../../RP6lib/RP6base/RP6RobotBaseLib.o ../../RP6lib/RP6common/RP6uart.o ../../RP6lib/RP6base/RP6BaseServoLib.o --output ServoLibTest.elf -Wl,-Map=ServoLibTest.map,--cref -lm
    ServoLibTest.o: In function `main':
    H:\RP6\RP6Examples\Programme\servoLibTest/ServoLibTest.c:24: undefined reference to `setLEDs'
    ../../RP6lib/RP6base/RP6BaseServoLib.o: In function `initSERVO':
    H:\RP6\RP6Examples\Programme\servoLibTest/../../RP6lib/RP6base/RP6BaseServoLib.c:66: undefined reference to `setLEDs'
    make: *** [ServoLibTest.elf] Error 1


    > Process Exit Code: 2
    > Time Taken: 00:01

    das Problem hab ich auch bei anderen Programmen -.- könnt ihr mir helfen ??

  2. #22
    Erfahrener Benutzer Fleißiges Mitglied Avatar von I♥ROBOTIC
    Registriert seit
    15.03.2010
    Ort
    Fürstenstein
    Alter
    27
    Beiträge
    112
    jetzt gehts ich hab mir die neuste Library runtergeladen und jetz funktionierts

  3. #23
    Erfahrener Benutzer Fleißiges Mitglied Avatar von I♥ROBOTIC
    Registriert seit
    15.03.2010
    Ort
    Fürstenstein
    Alter
    27
    Beiträge
    112
    welcher Pin ist denn am XBUS E_INT ?? xD

  4. #24
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    8
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  5. #25
    Erfahrener Benutzer Fleißiges Mitglied Avatar von I♥ROBOTIC
    Registriert seit
    15.03.2010
    Ort
    Fürstenstein
    Alter
    27
    Beiträge
    112
    ich hab das servo an E_INT angeschlossen, in der RP6BaseServoLib.h den Port geändert (Servo6 gelöscht und aus den anderen möglichkeiten die mit E_INT kopiert und anstatt Servo6 eingefügt ), aber das Servo bewegt sich nicht ?? was könnte ich falsch gemacht haben ??

  6. #26
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    @I♥ROBOTIC:

    1.) In der RP6BaseServoLib.c muss auch noch die Funktion initSERVO für SERVO6 auf E_INT1 angepaßt werden.
    2.) Zur Einstellung von Servo 6 muss die Variable servo6_position genommen werden (hast du sicher gemacht ...).

    Gruß Dirk

  7. #27
    Erfahrener Benutzer Fleißiges Mitglied Avatar von I♥ROBOTIC
    Registriert seit
    15.03.2010
    Ort
    Fürstenstein
    Alter
    27
    Beiträge
    112
    2. hab ich gemacht ja und die funktion initSERVO hab ich soweit angepasst ( SL6 zu E_INT1 geändert), aber muss ich da auch den Port und das register ändern ?? also das DDRB und das PORTB ??


    EDIT: schon ok steht eh drunter welcher port und so

  8. #28
    Wollte gerade das Demofile kompilieren, habe allerdings einige Fehlermeldungen erhalten:

    Code:
    In file included from ../../RP6Lib/RP6base/RP6BaseServoLib.h:5,
                     from ../../RP6Lib/RP6base/RP6BaseServoLib.h:5,
                     from ../../RP6Lib/RP6base/RP6BaseServoLib.h:5,
                     from RP6Base_I2CMaster_01_uncommented.c:5:
    ../../RP6Lib/RP6base/RP6BaseServoLib.h: At top level:
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:7: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'pos'
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:9: error: redefinition of 'main'
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:10: error: previous definition of 'main' was here
    ../../RP6Lib/RP6base/RP6BaseServoLib.h: In function 'main':
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:27: error: 'SERVO1' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:27: error: 'SERVO2' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:31: error: 'true' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:34: error: 'servo1_position' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:34: error: 'pos' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:35: error: 'servo2_position' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:37: error: 'RIGHT_TOUCH' undeclared (first use in this function)
    In file included from ../../RP6Lib/RP6base/RP6BaseServoLib.h:5,
                     from ../../RP6Lib/RP6base/RP6BaseServoLib.h:5,
                     from RP6Base_I2CMaster_01_uncommented.c:5:
    ../../RP6Lib/RP6base/RP6BaseServoLib.h: At top level:
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:7: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'pos'
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:9: error: redefinition of 'main'
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:10: error: previous definition of 'main' was here
    ../../RP6Lib/RP6base/RP6BaseServoLib.h: In function 'main':
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:27: error: 'SERVO1' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:27: error: 'SERVO2' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:31: error: 'true' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:34: error: 'servo1_position' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:34: error: 'pos' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:35: error: 'servo2_position' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:37: error: 'RIGHT_TOUCH' undeclared (first use in this function)
    In file included from ../../RP6Lib/RP6base/RP6BaseServoLib.h:5,
                     from RP6Base_I2CMaster_01_uncommented.c:5:
    ../../RP6Lib/RP6base/RP6BaseServoLib.h: At top level:
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:7: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'pos'
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:9: error: redefinition of 'main'
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:10: error: previous definition of 'main' was here
    ../../RP6Lib/RP6base/RP6BaseServoLib.h: In function 'main':
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:27: error: 'SERVO1' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:27: error: 'SERVO2' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:31: error: 'true' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:34: error: 'servo1_position' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:34: error: 'pos' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:35: error: 'servo2_position' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:37: error: 'RIGHT_TOUCH' undeclared (first use in this function)
    In file included from RP6Base_I2CMaster_01_uncommented.c:5:
    ../../RP6Lib/RP6base/RP6BaseServoLib.h: At top level:
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:7: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'pos'
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:9: error: redefinition of 'main'
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:10: error: previous definition of 'main' was here
    ../../RP6Lib/RP6base/RP6BaseServoLib.h: In function 'main':
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:27: error: 'SERVO1' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:27: error: 'SERVO2' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:31: error: 'true' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:34: error: 'servo1_position' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:34: error: 'pos' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:35: error: 'servo2_position' undeclared (first use in this function)
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:37: error: 'RIGHT_TOUCH' undeclared (first use in this function)
    RP6Base_I2CMaster_01_uncommented.c: At top level:
    RP6Base_I2CMaster_01_uncommented.c:7: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'pos'
    RP6Base_I2CMaster_01_uncommented.c:9: error: redefinition of 'main'
    ../../RP6Lib/RP6base/RP6BaseServoLib.h:10: error: previous definition of 'main' was here
    RP6Base_I2CMaster_01_uncommented.c: In function 'main':
    RP6Base_I2CMaster_01_uncommented.c:27: error: 'SERVO1' undeclared (first use in this function)
    RP6Base_I2CMaster_01_uncommented.c:27: error: 'SERVO2' undeclared (first use in this function)
    RP6Base_I2CMaster_01_uncommented.c:31: error: 'true' undeclared (first use in this function)
    RP6Base_I2CMaster_01_uncommented.c:34: error: 'servo1_position' undeclared (first use in this function)
    RP6Base_I2CMaster_01_uncommented.c:34: error: 'pos' undeclared (first use in this function)
    RP6Base_I2CMaster_01_uncommented.c:35: error: 'servo2_position' undeclared (first use in this function)
    RP6Base_I2CMaster_01_uncommented.c:37: error: 'RIGHT_TOUCH' undeclared (first use in this function)
    make.exe: *** [RP6Base_I2CMaster_01_uncommented.o] Error 1
    
    > Process Exit Code: 2
    > Time Taken: 00:21
    Das ist nur ein kleiner Ausschnitt, da die Fehlermeldungen ewig lang sind, STRG+A an der Stelle leider nicht geht und meine Nachricht hier sowieso maximal 20000 Zeichen enthalten darf.

    Makefile ist angepasst, daran kann es also nicht liegen. Der Name der Datei, also "RP6Base_I2CMaster_01_uncommented.c" stimmt schon, ich überschreibe immer Example-Projekte, weil das Gefrickel mit dem Compiler und den Makefiles bei mir sonst nur Probleme macht.

  9. #29
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    @roflcopter:

    Check:

    1. Makefile wirklich so geändert, wie im Beitrag (24.7.2009, 21:40) gezeigt?

    2. Header-Datei (RP6BaseServoLib.h) und Bibliothek-Datei (RP6BaseServoLib.c) richtig und komplett kopiert und nicht vertauscht?

    3. Demoprogramm-Datei richtig kopiert und ohne Reste eines anderen Programms abgelegt?

    Falls alles so ok: Library (.c und .h) noch einmal kopieren. Dabei den kompletten Text markieren und Copy, dann ein Windows-Editor Fenster öffnen und mit Paste einfügen. Die Datei zunächst als .txt speichern und danach in .c bzw. .h umbenennen.
    Mit der Demo genau so verfahren.
    Dann alles neu kompilieren.

    Gruß Dirk

Seite 3 von 3 ErsteErste 123

Berechtigungen

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

Labornetzteil AliExpress