-         

Ergebnis 1 bis 10 von 10

Thema: RP6 mit C++ möglich?

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    20.11.2007
    Ort
    Solingen
    Alter
    41
    Beiträge
    18

    RP6 mit C++ möglich?

    Anzeige

    Hi Leute,

    ich habe gestern meinen RP6 bekommen und hab natürlich gleich angefangen, ein wenig damit rumzuspielen.
    Ich hab - denke ich - die Beispiele begriffen und auch bereits mein erstes eigenes Programm geschrieben (ohne Kollision frei im Raum bewegen) und auf dem Bot installiert - klasse, dass das alles so einfach geht.

    Jetzt komm ich aber aus der Software-Branche (beruflich) und denke das es besser ist, bzgl. der Programmierung einen möglichst hohen Abstraktionsgrad zu erreichen. Ein erster Schritt wäre da m.E. die Anwendung der OOP (objektorientierte Programmierung).
    Damit lassen sich Dinge wie Strategy-Pattern und State-Machines einfach deutlich eleganter abbilden.
    Kompiliert der AVR-GCC auch C++ ??
    Hat jemand damit Erfahrung? Oder gibt es einen anderen Compiler, der C++ kann und auch Maschinencode für den ATMega32 erzeugt?

    Danke für jede Antwort vorab,

    Kristof

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    20.11.2007
    Ort
    Solingen
    Alter
    41
    Beiträge
    18
    Okay, sorry.
    Ich hab nochmal etwas strukturierter hier auf der Seite gesucht. Ja, er kann C++, ist schließlich ein GCC-Port. Bitte, bitte, bitte, löscht oder vergesst diesen peinlichen Thread

    Gruß

    -kb

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    29.07.2007
    Beiträge
    386
    ....Jetzt komm ich aber aus der Software-Branche (beruflich) .....

    irgendwie begreifst du das system nicht. hast du dich eigentlich schon einmal ordentlich mit winavr-c auseinandergesetzt.

    ich glaube du hast das falsche system gekauft. c++ kannste mit dem arm-prozessor proggen sogar mit linux drauf usw. gibt es schöne boards die man dann auf dem robby draufsetzen kann.

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    20.11.2007
    Ort
    Solingen
    Alter
    41
    Beiträge
    18
    Öhm, Hi "Roboterheld",

    ich verstehe Dich nicht ganz.
    Die Frage, ob ein Compiler für C++ geeignet ist oder nicht, hat absolut nichts mit dem verwendeten Prozessor zu tun.
    Ein Compiler erzeugt Manschinencode : Egal ob Du dafür C, C++, Pascal, Fortran, Cobol, Lisp oder Eiffel verwendest. Du brauchst eben nur einen Compiler, der aus einer Hochsprache Maschinencode für die Zielplattform erzeugen kann.
    Ebenfalls neu wäre mir, wenn ARM neuerdings Betriebssysteme in seine RISC-Prozessoren gießt.

    c++ kann ich z.B. mit einem x86, einem ARM, einem AMD Opteron, einem Motorola MC68000 oder einem 6520 "proggen". Alles eine Frage des Compilers.

    Wie meiner ersten Antwort auf mein eigenes Posting zu entnehmen, weiß ich bereits, dass der AVR-GCC als Port des GCC durchaus C++ kompilieren kann (bzw. dessen Derivat avr-c++).

    Ich bin mir nicht sicher, ob nicht DU das System ggf. nicht verstanden hast.
    Aber hey, ich bin hier um zu lernen. Belehre mich.

    (Bevor es jemand falsch versteht: Sollte ich mit meinem Behauptungen falsch liegen, möchte ich WIRKLICH belehrt werden. Ansonsten mach ich <Sarkusmus>-Tags)

    An die anderen:
    Hat schon jemand ein passendes Makefile gemacht? Ich finde zwar ein paar für AVRStudio und myAVR Workpad, aber keines welches "ad hoc" mit PN2 und dem RP6 (ATMega32) zusammenarbeiten würde.
    Wäre dankbar, wenn mir mal jemand eins schickt.

    Oder verwendet jemand AVRStudio bzw. myAVR oder Dev++ mit dem RP6? Das wäre natürlich auch was nettes.

    Ach so: Ich bin starke IDEs gewohnt (Visual Studio, Eclipse). Erwartet also nicht, dass ich jeden kryptischen Hinweis auf Parameter in Makefiles sofort verstehe - ich werde mir aber größte Mühe geben.
    Oder hat jemand das ganze schon für Eclipse gebastelt?

    Gruß

    Kristof

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    29.07.2007
    Beiträge
    386
    ....Ach so: Ich bin starke IDEs gewohnt (Visual Studio, Eclipse). Erwartet also nicht, dass ich jeden kryptischen Hinweis auf Parameter in Makefiles sofort verstehe - ich werde mir aber größte Mühe geben. ....


    das wird zeit das du von den ides weg kommst. sonst lernst du das proggen nie.

    Eclipse ist was für anfänger, man kommt nicht dahinter was da genau passiert hilft aber ein schnell etwas zu realisieren. also nichts für berufsprogger.

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    01.05.2007
    Beiträge
    47
    @roboterheld:
    Komisch, die (C++) Programmierer in meiner Abteilung sind gerade auf Eclipse umgestiegen um noch effektiver arbeiten zu können! In der Regel können "Berufsprogger" programmieren und müssen sich nicht mehr anschauen was Bit für Bit passiert!

    @KristofB:
    Beachte roboterheld nicht weiter, der ist ein allwissender Streitsuchbot der allzubereitwillig sein perfektes und unanfechtbares "Wissen" preisgibt!

    Gruss Bart

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    20.11.2007
    Ort
    Solingen
    Alter
    41
    Beiträge
    18
    @Bart W.
    Endlich normale Leute
    Aber ignorieren kann ich das nicht.

    @roboterheldchen
    Wenn "Berufsprogger" (proggen - diese Abkürzung benutzen meines Wissens nur Scriptkids) mit Tools wie Eclipse, Visual Studio, NetBeans, SharpDevelop etc. keinen Produktivitätsvorteil erzielen, sollten sie sich Gedanken darüber machen, ob sie nicht lieber zum Maurer umschulen.
    Software oberhalb von Berufsschul- oder Informatik-AG-Niveau lässt sich ohne eine ernsthafte IDE nicht erreichen - oder eben in einem nicht wettbewerbsfähigen Zeitraum.
    Leute die sowas schreiben, sagen vermutlich auch "Dokumentation ist für Schwächlinge". Jeden Kommentar darüber erspare ich mir.
    Wenn Du mal ein Projekt mit einem Umfang >100.000 Zeilen betreut und weiterentwickelt hast, wirst Du wissen, dass Instrumente wie Code-Coverage, Unit-Tests, Tracing/Profiling, UML und Refactoring sinnvoll und produktivitätsfördernd sind.
    Eine IDE ist nicht gleichbedeutend mit minderer Code-Qualität - anders herum wird schon eher ein Schuh draus.

    Im übrigen : Was hat das ganze mit meiner Frage zu tun? Wenn Du so viel weißt, dann lass uns doch bitte an Deinem unerschöpflichen Fundus aus Erfahrung, Wissen und Macht teilhaben.
    Ich will keine IDE, sondern einen Hinweis auf ein Makefile. Den Punkt IDE habe ich nur eingebracht um einem [gewissenhaften] Antworter klarzumachen, dass ich ein Beispiel brauche, weil ich Makefiles eben id.R. nicht von Hand schreibe (das macht die IDE, das spart Zeit und liefert reproduzierbare Ergebnisse).

    An alle anderen:
    Ich habe inzwischen ein Makefile bei AVRFreaks gefunden. Damit komme ich schonmal ein Stückchen weiter. Ich hab noch ein Problem mit der ELF-Transformation. Sobald ich es hinbekommen habe, kann ich das Ergebnis gerne posten, falls jemand Interesse bekundet (und nicht alle in Assembler programmieren, weil <Ironie>OOP übergewichtig und langsam ist</Ironie>).

    Gruß

    -Kristof

  8. #8
    Erfahrener Benutzer Roboter Genie Avatar von robocat
    Registriert seit
    18.07.2006
    Beiträge
    935
    hallo Kristof,
    zuerst gesagt, dass ich von OOP nicht viel ahnung habe.

    soweit ich weiss, ist das avr-c++ nicht vollständig umgesetzt, aber ich habe mal eine klasse mit paar funktionen erstellt, das wird problemlos kompiliert, wenn ich im makefile meine quelldateien bei "CPPSRC = ..." aufliste. das "SRC = $(TARGET).c" habe ich auskommentiert.

    soweit bist du aber wohl inzwischen auch schon. ich hänge das projekt mit makefile trotzdem mal an.

    gruesse

    EDIT: hmpf, jetzt habe ich das PN projektfile nicht mit reingepackt, sry. einfach ein neues projekt erzeugen und die beiden cpp dateien hinzufügen. dann bla.cpp aufmachen und Options-MakeAll.

    was stimmt denn mit deinem ELF nicht?
    Angehängte Dateien Angehängte Dateien

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    20.11.2007
    Ort
    Solingen
    Alter
    41
    Beiträge
    18

    Cool

    Hi Robocat!

    Na, das ging ja "rubbel-die-katz" (entschuldige das billige Wortspiel ).
    Danke schonmal. Bin momentan leider im Büro und kann's daher nicht ausprobieren. Werde ich aber gleich heute abend machen (die Frau geht zum Sport, da ist Zeit für Robby, hehe).

    Ich hab die Meldung nicht vollständig im Kopf. Irgendwas in Richtung "no rule to make testcpp.elf, needed by elf.".
    Grmpf.

    Ich hab - meine ich - das gleich gemacht wie Du (CPPSRC=).
    Allerdings habe ich "SRC=" nicht auskommentiert und außerdem aus dem Makefile von AVRFreaks einen Zusatz bei den Transformationen (c++ nach object) eingebaut. Vielleicht ist das des Pudels Kern.

    Danke jedenfalls. Ich melde mich, wenn's klappt.

    Gruß

    -Kristof

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    20.11.2007
    Ort
    Solingen
    Alter
    41
    Beiträge
    18
    Nochmal Hi Robocat.

    Also, dass Makefile sieht meinem sehr änlich. Der genannte Zusatz ist da auch drin. Ich werde Deins mal ausprobieren. Vermutlich irgendeine jämmerliche Kleinigkeit....

    Danke!

Berechtigungen

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