- Akku Tests und Balkonkraftwerk Speicher         
Seite 4 von 8 ErsteErste ... 23456 ... LetzteLetzte
Ergebnis 31 bis 40 von 77

Thema: Asuro lib einbinden

  1. #31

  2. #32
    Neuer Benutzer Öfters hier
    Registriert seit
    28.07.2007
    Beiträge
    26
    also ich habe hier mal eine kleine doku raufgeladen, wie ich das AVR studio eingerichtet habe, welchen quellcode ich verwendet haben und was für fehlermeldungen kamen. wenn ich was falsch beschrieben habe oder was vergessen habe, könnt ihr es ja verbessern, mit z.b. rot markieren und neu hochladen.

    danke
    Angehängte Dateien Angehängte Dateien

  3. #33
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.04.2007
    Ort
    Einhausen
    Alter
    69
    Beiträge
    699
    Im Verzeichnis selbst musst Du nur Deine test.c haben, nix anderes! asuro.c kommt beim Projekt dazu. Die notwendigen Header includierst Du.

    ... und mache erst mal was einfaches, z.B. Init() in main(), sonst nix, dann das einfache Programm, das ich Dir gezeigt habe. Dann geht es nit dem Schmodder weiter.

    Dir fehlen in asuro.c Header. Schau mal beim Include-Verzeichnis, ob da alles stimmt. Muss exakt der Pfad von asuro.h sein!

    Bei MS Vista dreht sich mir sowieso die Galle um. Da könnte ich auch noch zum "Linux-Kommandeur" werden.

    Du bist kurz davor, nicht aufgeben. Sind die Includes.

  4. #34
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    53
    Beiträge
    2.236
    *spam*
    Seitdem wühlt er nur noch in MakeFiles herum. Wenn er Deinem Vorschlag auch noch folgt, wird seine Breitenbildung signifikant erhöht. Ob er zum gewünschten hex-File gelangt, bleibt noch offen.
    Dafür wühlt er jetzt in AVRStudio herum ...
    Ich bevorzuge das AVR Studio bei ISP, da man nach dem Kompilieren/Linken mit einem einzigen Mausklick flashen kann.
    , wie ? Du mußt zu Maus greifen ?
    Ich erledige das mit einem Tastendruck von Emacs aus, bin etwa 3 Sekunden schneller als Du und schone meine Gelenke
    */spam*


    P.S.
    Der Editor von AVR Studio ist das letzte, wenn man vi oder Emacs kennt, will man nichts anderes mehr haben ...
    Software is like s e x: its better when its free.
    Linus Torvald

  5. #35
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.04.2007
    Ort
    Einhausen
    Alter
    69
    Beiträge
    699
    Wenn ich direkt auf das c-File klicke, geht MS VC++ 2005 auf. Der Editor ist professionell! Aber ich schreibe mit jedem Editor. Das ist übrigens wirklich nicht sein Problem , er kann sogar MS Word bedienen. Sein Problem ist das Verständnis für die Projektorganisation und den Ablauf des Kompilierens und Linkens. Deshalb hat er auch Funktionen und Variablen im Programm, die niemand kennt! Von Linux (habe nix dagegen!) und MS Vista möchte ich momentan wenig wissen, ich habe mich an W2K und XP gewöhnt, das reicht.
    Ich verwende Windows, weil ich MS VC++ verwende und das Office-Paket und ...

    PS: Ich musste bei Linux einmal den Kern neu compilieren, als ich einen 3D-Treiber installieren wollte, habe es sogar geschafft, danach (ca. 30 min.) war ich aber bedient.

  6. #36
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    38
    Beiträge
    4.067
    hrhr... ich kann izaseba nur beipflichten.... wer mal mit linux angefangen hat und sich ein wenig damit beschäftigt hat, wird nicht mehr wechseln wollen..... =)

    Pinguine sind halt cooler als fahnen...
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  7. #37
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.04.2007
    Ort
    Einhausen
    Alter
    69
    Beiträge
    699
    [FLAMEWAR]
    Ist hier nicht noch ein begeisterter Mac-User, der uns von seinem Apple Betriebssystem überzeugen will? Das einzig Wahre sind sowieso selbstgemachte Betriebssysteme.
    [/FLAMEWAR]

    @alias_host: Wie sieht es aus? Schon ein hex-File aufgetaucht?

  8. #38
    Neuer Benutzer Öfters hier
    Registriert seit
    28.07.2007
    Beiträge
    26
    ehenkes, das musst du mir noch einmal genauer erklären.


    Im Verzeichnis selbst musst Du nur Deine test.c haben, nix anderes!
    also ich habe die asuro. dateien wieder aus meinem workspace rausgeschmissen.


    asuro.c kommt beim Projekt dazu. Die notwendigen Header includierst Du.
    was meinst du damit genau??? ich habe nicht wirklich viel ahnung von solchen sachen, habe bis jetzt immer nur java programmiert und da gibts kein .c und .h ...
    also ich bin einfach mal unter "Header Files" gegangen und habe über "Add existing header" "asuro.h" "i2c.h" "lcd.h" "myasuro.h" "rc5.h" hinzugefügt.


    ... und mache erst mal was einfaches, z.B. Init() in main(), sonst nix, dann das einfache Programm, das ich Dir gezeigt habe.
    ich habe jetzt einfach mal dein programm reingeladen. das ist ja ansich das gleiche. main, init gibts alles drin. da bringt er jetzt nur noch den fehler:

    ../testStudio.c:5: undefined reference to `Init'

    also ich denke einfach mal, dass er die Methoden nicht findet.


    Dir fehlen in asuro.c Header. Schau mal beim Include-Verzeichnis, ob da alles stimmt. Muss exakt der Pfad von asuro.h sein!
    was du mit header meinst habe ich ja am anfang schon gefragt. der pfad müsste ansich stimmen, kannst ja in der doku nachsehen.

    der Pfad ist:"..\..\..\..\..\AsuroLib\lib\inc\" auf meinem computer liegt asuro.h auch unter "C:\AsuroLib\lib\inc".

    ich habe die doku noch mal so umgeändert, wie mein momentaner stand ist
    Angehängte Dateien Angehängte Dateien

  9. #39
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.04.2007
    Ort
    Einhausen
    Alter
    69
    Beiträge
    699
    Ich habe mir deine word-datei angeschaut. Dir fehlt nur noch asuro.c unter Sources im Project Tree ("Stierkopf") wegen Init().


    ... und habe über "Add existing header" "asuro.h" "i2c.h" "lcd.h" "myasuro.h" "rc5.h" hinzugefügt.
    Nein! Obige Header hast Du ja bereits über das include-Verzeichnis bekannt gemacht, die gehören ja auch nicht konkret zu Deinem Projekt, sondern sind allgemein!

    Genau wie asuro.c. Das gehört allgemein zur ASURO-Bibliothek, also wird es nur über den Project Tree ("Stierkopf", "AVR GCC").

    Also nochmal:
    Konkretes aus Deinem Projekt ist in deinem richtigen Windows Explorer-Verzeichnis dabei, bei Dir lediglich test.c.

    Wirklich ins Projekt eingebunden werden die Files übrigens nur über den Stierkopf, den Project Tree.

    Allgemeines wird an drei Stellen eingebunden:
    1) Include-Verzeichnis (inc)
    2) Bibliotheksverzeichnis (Library, lib)
    3) "Stierkopf" (so eine Art virtueller Explorer! Jeder der Visual Studio benutzt, kennt das!)

    So nun zu Deinem winzigen Problem:

    da bringt er jetzt nur noch den fehler:
    ../testStudio.c:5: undefined reference to `Init'
    OK, dabei bleiben wir jetzt! Kein Gefrickel!!!
    Init() ist eine Funktion in der Datei asuro.c, die er nicht findet. Klar, weil asuro.c nicht bei den Sources bekannt gemacht wurde.

    Also zum Vergleich, wie sieht das bei mir aus?
    Im Pfad des Projektes (also richtig im Windows-Explorer!) findet sich:
    test.c ( das ist die Datei mit deiner Funktion main(){...} )
    test.aps
    test.aws
    Sonst nix!!! Sonst nix!!! Sonst nix!!!

    Die Funktion Init() steht in asuro.c, also muss diese dazu gelinkt werden, steht auch nicht in libasuro.a, weil dort asuro.c fehlt.

    asuro.c wird nun im Project Tree im AVR Studio (vorne beim Steierkopf "AVR GCC") hinzugefügt ("Add Existing Source File(s)").
    Damit wird aus asuro.c durch Compilieren die Objekt-Datei asuro.o, die dann dazu gelinkt werden kann.

    Nimmt man asuro.c wieder weg erhält man den Fehler:
    ../ASURO_001.c:5: undefined reference to `Init'

    Probiere es aus! Rein - Raus - Rein - Raus ... (nur im Project Tree "AVR GCC", dort steuerst Du Deine Files im Projekt! Nicht im Windows-Explorer, nur dort)

    Geht das nun? Wenn nein, bitte Fehlermeldung.

    Fazit:
    a) im Project Tree: test.c (oder wie das auch immer heißt) und asuro.c
    b) LIB-Verzeichnis: libasuro.a
    c) INCLUDE-Verzeichnis: asuro.h und alle anderen xxx.h

    b) und c) werden im Project Tree über "External Dependencies" ausgewiesen.

    Mehr brauchst Du nicht am Anfang. Dann packt man später seine eigenen Header und Sources mit ins Projekt-Verzeichnis in Windows und im Project Tree.

    Wichtig ist die Trennung Allgemeine Dateien und Dateien im Projekt.
    asuro.c ist ein Zwitter! Das liegt an der beschissenen ASURO-Bibliothek.

  10. #40
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.04.2007
    Ort
    Einhausen
    Alter
    69
    Beiträge
    699
    Wenn das klappt - was ich doch nun schwer hoffe - probierst Du folgendes Progrämmchen:
    Code:
    #include "asuro.h"
    
    int main()
    {
      Init();
    
      int i=0;
      for (i=0;i<100;++i)
      {
        BackLED (OFF, ON);
        Msleep(200);
        BackLED (ON, OFF);
        Msleep(200);
      }
      BackLED (OFF, OFF);
     
      while (1); 
      return 0; //wird nicht erreicht
    }

Seite 4 von 8 ErsteErste ... 23456 ... LetzteLetzte

Berechtigungen

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

Solar Speicher und Akkus Tests