PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hilfe für Anfänger / Softwareproblem



U-2540
27.07.2010, 00:57
Hallo Leute

Ich besitze seit ein paar Tagen einen Asuro. Zusammenbau hat gut geklappt und er funktionierte beim 1. Versuch. Dafür scheitere ich jetzt an der Software.
Das flashen funktioniert noch super. Fertige Programme spielt der kleine Robo sicher ab. Mein Problem ist jetzt, wenn ich z.B. Befehle wie Motorsleep eingebe werde ich mit Fehlermeldungen überhäuft.
Ich habe gelesen das es verschiedene Library gibt, die man in WinAVR einbinden kann. Aber wie?

Kann mir bitte jemand Schritt für Schritt erklären, welche Software ich benötige und wo ich etwas hin kopieren muss?

Zur Info:
Ich benutze Vista.

Gruß Martin

radbruch
27.07.2010, 09:43
Hallo

Hier findest du eine Liste der asuro-Funktionen:

https://www.roboternetz.de/phpBB2/viewtopic.php?t=43979

Die Beschreibung der verschiedenen Versionen der Library gibt's im asurowiki:

http://www.asurowiki.de/pmwiki/pmwiki.php/Main/Bibliothek

Gruß

mic

U-2540
27.07.2010, 10:15
Hallo mic

Danke für die schnelle Antwort.
Die PDF ist super.

Allerdings ist mein Problem noch nicht gelöst.

Ich möchte mit WinAVR ein Programm schreiben.
Wenn ich es fertig habe und es compilieren will erhalte ich immer eine Fehlermeldung.

Ich brauche eine genaue Erklärung, wie ich meine Software einstellen muss damit sie versteht das ich mit einem Asuro arbeite.
In welches Verzeichiss muss z.B. die Headerdatei kopiert werden und wohin die library.
Ich habe wirklich schon viel im Internet gesucht, aber ich komme nicht klar mit asurowiki oder ähnlichen.
Es währe also super wenn mich jemand an die Hand nimmt und mir Zeigt was ich machen muss ehe ich mir die 4 Nacht um die Ohren schlage.

Gruß Martin

radbruch
27.07.2010, 10:31
Hallo

Bei den einfacheren Libs (ich verwende z.B. V2.3) werden die Dateien asuro.c und asuro.h ins selbe Verzeichniss kopiert in dem sich der Quellcode des Programms befindet. Ein Update beschränkt sich dann auf das Auswechseln der beiden Dateien.


Ich möchte mit WinAVR ein Programm schreiben.
Wenn ich es fertig habe und es compilieren will erhalte ich immer eine Fehlermeldung.Tja, auch hier mal wieder der Hinweis: Ohne Quellprogramm und Fehlermeldungen des Kompilers kann man nur die Glaskugel befragen.

Gruß

mic

U-2540
27.07.2010, 12:42
Hallo mic

Ich habe die 2 Datein ausgetauscht. Jetzt passiert folgendes:

#include "asuro.h"


int main(void)
{
Init();

while(1);
return 0;
}



C:\ASURO_src\FirstTry>make all
set -e; avr-gcc -MM -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=asuro.lst asuro.c \
| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > asuro.d; \
[ -s asuro.d ] || rm -f asuro.d
asuro.c:61:21: myasuro.h: No such file or directory
-------- begin --------
avr-gcc --version
avr-gcc (GCC) 3.3.1
Copyright (C) 2003 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.

avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=asuro.lst asuro.c -o asuro.o
asuro.c:61:21: myasuro.h: No such file or directory
asuro.c: In function `Init':
asuro.c:145: error: `F_CPU' undeclared (first use in this function)
asuro.c:145: error: (Each undeclared identifier is reported only once
asuro.c:145: error: for each function it appears in.)
make: *** [asuro.o] Error 1

> Process Exit Code: 2


Gruß Martin

radbruch
27.07.2010, 13:30
Hallo


Ich habe die 2 Dateien ausgetauscht.Aha, und welche Version verwendest du nun?

asuro.c:61:21: myasuro.h: No such file or directory

Der Kompiler findet diese Datei nicht. Soweit ich weiß dient sie dazu, die Toleranzen des asuros an die Werte der Lib anzupassen (und ist Teil der von mir nicht verwendeten aktuellen Library). Ich vermute, in dieser Datei wird auch die Konstante F_CPU (der Kontrollertakt der Mega8) definiert.

Entweder ist die Datei nicht vorhanden oder im falschen Pfad. Hier muss jemand helfen der sich mit der aktuellen Lib auskennt. Vielleicht findest du die Lösung auch selbst....

Möglicherweise hilft ein clean, gefolgt von einem make all

Gruß

mic

U-2540
27.07.2010, 13:45
Hallo mic

Ich habe jetzt nochmals neu begonnen und die Datein nochmals kopiet. Jetzt scheint es ersteinmal zu funktionieren. Die Beispielprogramme lassen sich compilieren.

Vielen Dank nochmals

bis zum nächsten Problem

Gruß Martin

asuroede
28.07.2010, 08:08
Hallo mic,

welche Entwicklungsumgebung empfielst du für einen Anfänger?
Programmers Notepad, AVR Studio, Eclipse oder "Asuro Flash(Eierlegendewollmilchsau)"

Gruß ede

radbruch
28.07.2010, 12:25
Hallo

Da ich keines dieser Programme verwende, kann ich dir aus eigener Erfahrung nichts empfehlen.

WinAVR/Notepad sind weit verbreitet. Wenn man die Makefiles im Griff hat, kann man damit wohl gut arbeiten.

Die eierlegende Wollmilchsau wird von allen Anwendern gelobt, kann also auch nicht schlecht sein.

Eclipse kenne ich gar nicht.

Ich hatte keine Ahnung von C als ich mir meinen asuro zulegte. Weil mir das mit WinAVR/Notepad-Paket nicht sehr gefallen hatte, habe ich mir KamAVR (http://www.avrfreaks.net/index.php?module=FreaksTools&func=viewItem&item_id=632) von den avrfreaks (http://www.avrfreaks.net) runtergeladen. Das ist eine Bedienoberfläche für avr-gcc und Assembler mit komfortablem Editor, Projektverwaltung, Kompilereinbindung und automatischer Makefileerzeugung;) Leider in Englisch und ohne Doku. Mit dieser ersten Installation (vom Frühjahr 2007) programmiere ich seitdem den asuro (und meinen asuro-Probot), den RP6, die Nibobee, einen Tiny13 und einen Tiny26.

Gruß

mic

asuroede
28.07.2010, 14:35
Hallo mic,

werd ich mir mal anschauen.
Danke für die Infos

Gruß
ede

Valen
28.07.2010, 18:22
Hallo mic

Ich habe jetzt nochmals neu begonnen und die Datein nochmals kopiet. Jetzt scheint es ersteinmal zu funktionieren. Die Beispielprogramme lassen sich compilieren.

Vielen Dank nochmals

bis zum nächsten Problem

Gruß MartinDie erweiterte lib hat eine liesmich oder ähnliches document der man lesen muss, in das zip oder rar-datei. Es erklärt ganz genau welcher anpassungen man machen muss.

Das einfachste ist die makefile in dem FirstTry beispiel mappe zu ändern damit es ein (Persönliches) Basis Program wird. In dem makefile das schon in dem mappe sitzt past man den pfad zum WinAVR compiler an (etwas wie DIRAVR = c:/winavr), und den platz wo du den lib mappe/dateien struktur ausgepackt hat (etwas wie: LIBPATH = C:/ASURO_SRC/AsuroLib/lib). Den erweiterte lib hat auch eine FirstTry beispiel mit optimalisierte makefile. Diese compiliert ein program (.hex) mit weniger speicherplatz im Asuro gehirn. (seit version 2.7 oder 2.8) Dannach kan man dieser mapp nach lust kopieren, und den test.c datei mit deine eigene quel code ergänzen. Oder wenn du ein eigene nahme wünscht (zb. asuroede.c und asuroede.hex) ergänzt man die "TARGET = test" regel.

Den dateien von den orginale AsuroCD und diese erweiterte lib nicht durcheinander misschen.

funkheld
28.07.2010, 22:35
Es gibt für den Anfänger nichts um den Asuro zu proggen.

Das neueste Winavr und der dazu gehörige Notepad plus Make.

Der Mist ist nur, das beim Asuro eine veraltete Winavr beiliegt.

Am besten die neueste Winavr runterladen und die alten Dateien vom Asuro umsetzen.

Es ist viel alte S.c.h.e.i.s.s.e auf der CD und im Internet.


Beim Kauf eines Asuros immer die neuesten Sachen runterladen und nicht von der CD nehmen.

Gruss

U-2540
29.07.2010, 21:59
Hallo Funkheld

Ich habe gemerkt, dass nicht wirklich alles geeignet ist was mitgeliefert wurde.
Auf jedenfall habe ich jetzt 1te Versuche mit meinem Robo machen können.

Gruß Martin

funkheld
23.08.2010, 12:27
Nimm die neueste Winavr-Version.

Gruss