PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AVR Studio Fehlermeldungen 'en gross



oderlachs
22.12.2011, 12:40
Was mache ich falsch , ich möchte einen Code compilieren, womit ich die Kollisionstaster überprüfen kann, bzw. den Asuro fahren lassen mit Hindernisserkennung und Auswertung.
Die asuro.h ist im Projekt mit eingebunden, trotzdenm kennt AVR-Studio verschiedene Deklarationen nicht :

../kollision.c:13: error: 'FWD' undeclared (first use in this function)
../kollision.c:14: warning: implicit declaration of function 'MotorSpeed'
../kollision.c:18: error: 'RED' undeclared (first use in this function)
../kollision.c:20: error: 'RWD' undeclared (first use in this function)
../kollision.c:22: warning: implicit declaration of function 'Sleep'
make: *** [kollision.o] Error 1
Build failed with 7 errors and 6 warnings...


Hier der code:


#include "asuro.h"

int main(void){
unsigned int i;
Init();

while(1){


while(PollSwitch()==0)
{StatusLED(GREEN);
MotorDir(FWD,FWD);
MotorSpeed(120,120);} //fahre vorwärts


if(PollSwitch()!=0) // bis Schalter gedrückt wird
{StatusLED(RED); // Rote Lampe an

MotorDir(RWD,RWD); //Rückwärtsgang mit 120
MotorSpeed(120,120);
for (i=0;i<280;i++){Sleep(255);} //für 1 Sek zurückfahren
MotorSpeed(0,0); // Motoren stoppen
MotorDir(FWD,FWD); // Und Drehung einleiten für 1 Sek
MotorSpeed (0,120);
for (i=0;i<280;i++){Sleep(255);}
MotorSpeed(0,0);
}
}
return 0;
}




Was mache ich falsch, die asuro.h ist im Pfad des Compilers eiongebunden ? Das ist mein erster Versuch in dieser Hinsicht mit dem Asuro etwas zu machen.

Gruss Gerhard

radbruch
22.12.2011, 12:49
Hallo

include "asuro.h" in Anführungszeichen erwartet die Datei im selben Verzeichniss wie der Quellcode. <asuro.h> bindet Dateien ein die sich im Kompilerpfad befinden. Eigentlich sollte gleich zu Beginn der Fehlermeldungen des Kompilers ein "Datei asuro.x nicht gefunden" auftauchen. Für einen schnellen Test könntest du die zwei Dateien asuro.h und asuro.c der Library in das Quellcodeverzeichniss kopieren.

Gruß

mic

oderlachs
22.12.2011, 13:35
Hallo Radbruch !
Vielen Dank für Deinen Hilfebeitrag...
Ganz so wie beschrieben hat es auch nicht geklappt, dann kamen andere Meldungen..dann habe ich noch mals die Einstellungen für die LibDir für das projekt eingestellt, und klick (nach Neustart) und schon hatte ich meine Kollision.c compiliert(nur!!).
es wurde aber kein hex file erstellt beim Click auch bei Build und Compile gab es wieder Errors


Build started 22.12.2011 at 14:52:29
make: *** No rule to make target `../kollision.c', needed by `kollision.o'. Stop.
Build failed with 1 errors and 0 warnings...



Weiss auch nicht was ich da falsch mache

Danke nochmals

Gerhard

oderlachs
29.12.2011, 20:59
Ja ich antworte mir mal selber hier, weiss ja nicht ob wer hier überhaupt noch mitliest, also ich bin am Verzweifeln in Sachen "Asuro-Programmierung" mittels AVR Studio, gleich welcher Version ist es ein Spiessrutenlauf durch Fehlermeldungen, welche Asuro Lib ich zum xx-ten mal erneuert habe weiss ich auch bald nicht mehr.
Ich habe ja schon vieles als programmierer erlebt aber das sich so etwas hart widersetzt , erlebe ich beim Asuro zum ersten mal.
nicht mal die einfachsten Dinge kann ich selbst machen, entweder ich nehme was Fertiges (hex-file) oder ich schau mir den Asuro im Regal an,
es ist zum Irre werden, da sind in der H-Datei alle Sachen definiert und das werden aber für das ARV Studio unbekannte Welten setze ich was in die main.c.
Nicht mal eine Led kann ich irgendwie schalten nach meinen Vorstellungen, von Motoren einschalten ganz zu schweigen.
Nun habe ich zum x-ten mal die letzte AsurLib runtergeladen...siehe hier: das selbe Dilemma... (http://robot.oderlachs.de/images/avr_studio_fehler.gif)

Es macht echt keinen Spass, selbst wenn man von der Hertseller Cd alles nimmt , die Lib, das AVR studio usw... natürlich geht da auch nix in Sachen selbermachen, als wenn man noch nie was Eigenes Fertiges in C mit dem AVR Studio volbracht hätte..

Kann wer Helfen

Gruss und Dank Gerhard

Hero_123
29.12.2011, 22:28
Hallo oderlachs

Ja, da kann man verzweifeln:(

Stimmen denn Deine "Configuration Options" - z.B. der Reiter "Include Directories" und "Libraries" - ich frage deshalb, weil das oft eine Fehlerquelle ist - und sind Dein "Custom Options" korrekt -alles unter "Configuration Options" zu finden. Kann Dir bei diesen Einstellungen leider nicht helfen :(- bin NIBO2-User...

Viel Glück!

mfg

Hero_123

oderlachs
30.12.2011, 11:23
Ja ich weiss auch nicht was da noch verkehrt eingestellt sein sollte... die Fehlermeldungen über "...inline.." habe ich mit einer anderen WIN AVR Version beseitigt bekommen...ich habe nun schon mal alles an Versionen ausprobiert ob WinAVR, UsuroLibs und AVR Studios...warscheinlich habe ich noch nicht die richtige Kombination gefunden....
Ich würde ja auch auch verstehen das ich zu Blööd bin mit C umzugehen, aber schliesslich habe ich ja mal als Softwareentwickler abgeschlossen und da war auch C und Cpp dabei, nur eben nicht AVR mässiges. ;=)
Vieleicht kann ja mal jemand so nett sein und Screenshots von der AVR Studio Einstellung verlinken , das ich mal da ein "Auge voll" von nehmen kann ;)

Sonst muss ich wirklich noch den Asuro für die Mülltonne deklarieren und mir was mit ISP Schnittstelle suchen..so langsam tut mir mein Roboterhobby schon leid..

Gerhard

Florian2301
30.12.2011, 12:50
Hallo
Ich habe jetzt seit einigen Tagen einen ASURO und habe mir AVR-Studio 5 gedownloadet.
Ist dieser Compiler auch für Anfänger geeignet?
Gibt es Tutorials oder Screenshots wie ich alles richtig einrichte und welche Bibliotheken sollte ich am besten nutzen (LINK?)?
Bei Programmers Notepad compeliert er nichtmals die 1zu1 abgeschriebenen Beispielquelltexte nachdem ich alles nach bedienungsanleitung eingerichtet habe.
Hoffe auf eure Hilfe und danke euch schonmal
MfG Florian

oderlachs
31.12.2011, 09:58
Hallo Florian !

Auf jeden Fall habe ich bemerkt das das AVR Studio die Probleme mit dem selbst erstellten MAKE-File hat, doch frage ich mich warum eine solches "Packen" Software nicht mit dem makefile klarkommt, das es selber erzeugt.
Ich kaufe ja auch nicht zBsp. Excel oder andere Kalkulationssoftware, um später dann doch im Kopf zurechen....frage mich aber warum es mit jeder eigen erstellten AVR-Anwendung, egal ob in C oder ASSR, geht...?

Nun ja vieleicht findet ja mal einer das "Ei des Culumbus"... ;)


Einen guten Rutsch ins neue Jahr wünsche ich Euch allen, auf ein gutes 2012 !

Gerhard

Florian2301
31.12.2011, 10:49
Guten Morgen,
funktioniert es denn bei Ihnen wenn Sie die makeall.bat über den Windows Explorer ausführen?
MfG Florian

radbruch
31.12.2011, 11:20
Hallo

"Sonst muss ich wirklich noch den Asuro für die Mülltonne deklarieren und mir was mit ISP Schnittstelle suchen" bringt ja nichts, wenn man keine Hex-Dateien erzeugen kann.

Das häufigste Problem bei den Makefiles scheinen mir Leer- oder Sonderzeichen im Pfadnamen zu sein. Die Einträge im Makefile werden als Strings behandelt und enden deshalb bei den Leerzeichen!

Ebenfalls sehr häufig wird vor dem Kompilieren das Speichern des Quellcodes vergessen (NotePad2). Es wird dann ebenfalls keine Hexdatei erzeugt, allerdings treten dann beim Kompilieren auch keine Fehlermeldungen auf.

Um Probleme mit der Installation der (neuen?) Library des asuro zu vermeiden würde ich vorerst nur mit den orginalen Dateien asuro.c +.h von der CD oder V2.3 (http://sourceforge.net/projects/asuro/files/AsuroLib/) arbeiten. Wie schon geschrieben werden beide Dateien ins Quellcodeverzeichnis kopiert und mit #include " " eingebunden. (Hier schlummert ein zusätzliche Bug in den Beispielprogrammen: Es werden gelegentlich die falschen " verwendet).

Da ich weder AVR-Studio noch Notepad verwende, kann ich eure Probleme nicht nachvollziehen. Ich verwende KamAVR und bin sehr zufrieden damit. Hier findet man eine Liste der von mir verwendeten Software (inclusive ISP):
https://www.roboternetz.de/community/threads/50954-Ping-Pong-umprogrammieren?p=491839&viewfull=1#post491839

btw: Bei Problemen mit dem asuro sollte man in erster Linie auch in dessen Bereich posten.

Gruß

mic

oderlachs
31.12.2011, 12:11
Hallo Radbruch !

Ich verstehe das ja alles, nur eines nicht, dass man darüber nirgend richtig eine Erklärung zu findet und das in den Beschreibungen nirgend zu finden ist. In den Büchern zum Asuro liest man einige Fetzen aus Quellcode bzw. Makefile, anstatt mal eine richtiges Musterbespiel zu zeigen, woran sich ein jeder üben kann...
das ist zwar hier nicht der richtige Ort für diese Kritik an den Bücher ( von den Dreckfuhlern darin, mal gar nicht zu reden :mad:), wollte ich nur mal erwähnen, denn wer das zum ersten Mal erlebt der kann schon verzweifeln, das kenne ich aus alten Zeiten noch vom Grossen C-64 Buch zu genüge...

Auch bin gerade dabei den Dev-CPP für AVR bzw. Programmers Notepad umzustricken . Auch werde ich einen Linux PC fertig machen, vielleicht geht es mir dann als Konsolenanwendung besser von den Händen, wenn man bei Windowsprogrammen auch fast alles selber Tippen muss...

Ich wäre nur gerne erfreut gewesen, hätte ich dieses Problem der Asuro Programmierung noch im alten Jahr gelöst bekommen..

Somit lasst uns dies Sache im im neuen Jahr mit neuen Elan und Wissen angehen...

Gruss und Dank

Gerhard