- 3D-Druck Einstieg und Tipps         
Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 34

Thema: ASURO Linux Compiler für AVR

  1. #21
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    52
    Beiträge
    2.236
    Anzeige

    Powerstation Test
    hallo volpe,

    nagut ich wollte sichergehen, daß wir von der selben Datei sprechen

    Natürlich verlangt keiner, daß man als Experte geboren wird, aber C auf einem µC zu erlernen ist nicht der beste Weg, Du hast wohl Linux drauf, wie ich im Topic gelesen habe, da ist normal GCC drauf, und man kann wunderbar damit üben

    Aber zum Thema zurück, wenn Du die Funktionen nutzen willst, die in test.c drin sind, mußt Du folgenden Weg gehen:
    erstelle Dir einen neuen Ordner von mir aus test
    kopiere folgende Dateien dort hin:

    test.c
    test.h
    asuro.c
    asuro.h
    Makefile

    Erstelle in Diesem Ordner eine neue Datei, z.B. main.c die etwa so aussehen sollte/könnte:
    Code:
    #include"asuro.h"
    #include"test.h"
    
    int main(void){
    
      Init();
      SerialTest();
      while(1){
      }
      return 0 ;
    }
    Ändere Makefile ab, etwa so wie hier:
    Code:
    ...
    # Target file name (without extension).
    TARGET = main
    ...
    wenn die datei main heißt
    Code:
    ...
    # If there is more than one source file, append them above, or adjust and
    # uncomment the following:
    SRC += asuro.c test.c
    nur hier wird von test.c gesprochen !

    Ich habe es gerade so gemacht, es läßt sich prima kompilieren...

    Ich hoffe, daß ich Dir helfen konnte.

    Gruß Sebastian
    Software is like s e x: its better when its free.
    Linus Torvald

  2. #22
    Neuer Benutzer Öfters hier
    Registriert seit
    08.08.2006
    Beiträge
    18
    Hallo m.a.r.v.i.n,

    danke, jetzt wird das auch uns klar was da fehlt...und wir versuchen das
    mit den Testfunktionen.

    Gruß volpe

  3. #23
    Erfahrener Benutzer Roboter Genie Avatar von m.a.r.v.i.n
    Registriert seit
    24.07.2005
    Ort
    Berlin
    Beiträge
    1.247
    Hallo volpe,

    mein Vorschalg wird zwar auch funktionieren, aber die Lösung von Sebastian ist der bessere Weg. C-Dateien includen ist schlechter Programmierstil und sollte deshalb vermieden werden. Der saubere Weg geht nur über die Änderung des Makefiles.

    Gruß m.a.r.v.in

  4. #24
    Neuer Benutzer Öfters hier
    Registriert seit
    08.08.2006
    Beiträge
    18
    Hallo Sebastian,

    wir melden uns wieder und werden Deinen Weg auch übernehmen.

    Besten Dank für die schnelle Hilfe in diesem Forum...findet man selten
    aber es macht viel Spass den Jungs was zu lernen.
    Gru? volpe

  5. #25
    Neuer Benutzer Öfters hier
    Registriert seit
    08.08.2006
    Beiträge
    18
    Hallo Sebastian,

    danke für den vorgeschlagenen Ablauf.
    Die notwendigen Files test.c und test.h die wir benötigen sind bei
    uns im Linux ~/ASURO/ASURO_src/SelfTest/ als Test.c und Test.h
    vorhanden
    Ich denke wir sollen die Dateien auch so ansprechen bzw kopieren...

    Nochmals besten Dank für die schnelle Hilfe

    Gruß volpe

  6. #26
    Neuer Benutzer Öfters hier
    Registriert seit
    08.08.2006
    Beiträge
    18
    Hall Sebastian,

    danke für Deinen Test-Ablauf.
    Um den Ablauf bei mir so zu gestalten habe ich noch Fragen:

    Wenn ich in den neuen Ordner test die von Dir genannten Files
    kopieren soll finde ich in meinem Ordner:
    ~/ASURO/ASURO_src/SelfTest

    Test.c Test.h asuro.c asuro.h und Makefile
    also kein test.c und test.h

    Soll ich diese Dateien nun in den neuen Ordner test kopieren ?

    Nächste Frage bezgl. Änderung Makefile
    Auszug von meiner Makefile:


    Code:
    # If there is more than one source file, append them above, or adjust and
    
    # uncomment the following:
    
    SRC += asuro.c \
    
    test.c SelfTest.c \
    
    Demo.c LineDemo.c RechteckDemo.c PCDemo.c IRDemo.c
    Soll ich das so stehen lassen
    Mit dem test.c und test.h blicke ich noch nicht durch...
    Kannst Du mich nochmals aufklären...

    P:S: Habe mal so versucht zu kompilieren:

    [code]make: *** Keine Regel vorhanden, um das Target »main.hex«,
    benötigt von »all«, zu erstellen. Schluss.

    Hier noch meine File main.c:
    Code:
    #include"asuro.h"
    #include"Test.h"
    
    int main(void){
    	Init();
    	SerialTest();
    	while(1){
    	}
    	return 0;
    }
    Gruß volpe

  7. #27
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    52
    Beiträge
    2.236
    Hallo volpe,

    na gut, wenn sie bei Dir mit großem T anfangen, mußt Du sie auch so ansprechen, das ist richtig.

    Soll ich diese Dateien nun in den neuen Ordner test kopieren ?
    Ja.

    Nächste Frage bezgl. Änderung Makefile
    Auszug von meiner Makefile:


    Code: [View More of this Code] [View Even More of this Code] [View Less of this Code] [Select All of this Code]
    # If there is more than one source file, append them above, or adjust and

    # uncomment the following:

    SRC += asuro.c \

    test.c SelfTest.c \

    Demo.c LineDemo.c RechteckDemo.c PCDemo.c IRDemo.c



    Soll ich das so stehen lassen
    Mit dem test.c und test.h blicke ich noch nicht durch...
    Kannst Du mich nochmals aufklären...

    komischerweise steht in Deinem Makefile test.c kleingeschrieben ???

    aber die ganzen Selftest... Demo.... Linedemo... usw müßen ja weg, die brauchst Du ja nicht.

    Zum Makefile ist folgender Artikel ganz gut http://www.mikrocontroller.net/artic...urs:_Makefiles

    Scha Dir mal diesen Artikel mal an, ich habe dort ein Makefile gepostet, versuch mal den zu verwenden.

    Lass mal wissen ob es geklappt hat.

    Gruß Sebastian
    Software is like s e x: its better when its free.
    Linus Torvald

  8. #28
    Neuer Benutzer Öfters hier
    Registriert seit
    08.08.2006
    Beiträge
    18
    Hallo Sebastian,

    mit Deinem Beispiel für das Makefile hat es geklappt =D>
    Wir haben Dein Makefile mit denen von ASURO verglichen und haben auch
    die Ursache, warum es nicht zu kompelieren ist, gefunden.
    Der Grund liegt in der Anweisung von # Define directories,if needed

    Auszug der ASURO Makefiles
    [/list]Makefile unter Linux ~/ASURO/ASURO_src/SelfTest
    Auszug von Makefile:

    # Define directories, if needed.
    DIRAVR = D:/Atmel/winavr
    DIRAVRBIN = $(DIRAVR)/bin
    DIRAVRUTILS = $(DIRAVR)/utils/bin
    DIRINC = .
    DIRLIB = $(DIRAVR)/avr/lib

    makefile unter Linux ~/ASURO/ASURO_src/FirstTry
    Auszug von makefile:

    # Define directories, if needed.
    DIRAVR = c:/winavr
    DIRAVRBIN = $(DIRAVR)/bin
    DIRAVRUTILS = $(DIRAVR)/utils/bin
    DIRINC = .
    DIRLIB = $(DIRAVR)/avr/lib

    Wenn man alle Files auskommentiert klappt auch das make
    mit der ASURO Makefile....vorausgesetzt man hat nur Linux.

    In der Orginal Makefile von ASURO ist ausserdem noch ein
    Fehler unter :

    SRC += asuro.c \
    test.c SelfTest.c \
    Hier test.c auf grosses T ändern (Test.c)

    Unter ~/ASURO/ASURO_src/SelfTest/ ist auch in der File
    SelfTest.c bei #include "test.h" ein grosses T notwendig.

    So das wars vorerst, wir kommen langssam weiter.

    Nochmals besten Dank für Deine Hilfe

    Gruß volpe

  9. #29
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    20.08.2006
    Beiträge
    183
    ....Habe meine 2 Enkel (13/14 Jahre alt nun endgültig vom Windoof zu
    Linux gebracht und hoffe sie haben nun Spass mit dem ASURO Roboter....


    Das werden sie mit Linux auf keine fall haben.
    Wenn sie schon das Makefile von Hand erstellen müssen, das geht nicht gut.
    Der Code vom Asuro ist noch mit einer alten Winavr-c-version erstellt worden. Wenn die Kinder darauf aufbauen wollen, stecken sie jetzt schon in einer Sackgasse.
    Es stehen dort noch Befehle drin, die man lange rausgenommen hat und nicht "c-würdig" waren für den AVR. Sämtliche Timer und Interrrupt usw. sind ca 180 , haben andere Namen bekommen, solche Namen die auch auf der WELT Iin der AVR-Serie einheitlich sind.

    Sinnvoll wäre es , die neueste Winavr-c-Version von April 2006 zu installieren und den ganzen Code anpassen. Ist viel arbeit, lohnt sich aber, wenn man von anderen Fragen beantwortet haben möchte.


    Wenn es jetzt schon soviel Probleme mit der Software gibt und der Asuro noch keinen pips gesagt hat, ist das Zeitverhältnis zum Asuro zu testen überzogen und das Sytem was benutzt wird nicht Fördernd für die eigentliche Aufgabe : Der Ausuro soll eine Linie langfahren.

  10. #30
    Erfahrener Benutzer Fleißiges Mitglied Avatar von barbar
    Registriert seit
    20.05.2006
    Beiträge
    142
    Zitat Zitat von robby-fant
    ...Das werden sie mit Linux auf keine fall haben ...
    Aussage und Stil kommen mir doch irgendwie bekannt vor!?

Seite 3 von 4 ErsteErste 1234 LetzteLetzte

Berechtigungen

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

12V Akku bauen