mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik (Hilfe!) Was muss ich als Grasshopper-Anfänger beachten?


Autor: Kriz Lee (kriz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, alle zusammen.

Wie ich sehe, arbeiten einige in dem Forum mit dem Grasshopper.

Ich habe einige Fragen und wäre um jede Hilfestellung dankbar.

Ich habe auf einer VM mit Debian mehrmals schon versucht die Toolchain 
(zweimal die ATMEL Buildroot + Grasshopper Patch (hier aus dem Forum) 
und mehrmals schon die Original Buildroot von in-circuit) zu 
installieren, hab aber immer Probleme gehabt. Ich weiss nicht, woran es 
immer lag.
(Beispiele:
- gdb&gcc nicht richtig konfiguriert, so dass die Dateien nicht auf dem 
Grasshopper liefen
- Abbruch des make mit (sinngemäß) "no POSIX threads support" (leider 
keine Lösung um Internet gefunden)

- Hat jemand von euch Tipps, welche Buildroot besser ist 
(normalerweise)? - Welches Betriebssystem sollte bevorzugt werden 
(Debian, Ubuntu, SuSe...)?
- Gibt es irgendwelche Einstellungen, die essentiell sind bzw, die 
getrost ignoriert werden können?

Oder einfach nur: Unter welchem Betriebssystem und mit welchen 
Einstellungen läuft bei euch welche Buildroot (relativ) problemlos?

Vielen Dank schonmal an alle, die bereitwillig helfen!

Autor: Marius Wensing (mw1987)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du alle Pakete, fürs Buildroot installiert? Also flex, bison usw.? 
Liste findest du hier: http://www.atmel.no/buildroot/buildroot-doc.html

Außerdem schreibst du von gcc und gdb. Für den Grasshopper musst du 
avr32-linux-gcc nehmen... Der erstellt dir executables für den AVR32.

MfG
Marius

EDIT: Ich habs selbst alles kompiliert bekommen unter Ubuntu 8.04 und 
8.10. Wenn du die Atmel-Toolchain nehmen wollst (also die 
vorkompilierte), dann nimm Ubuntu 8.04. Mit 8.10 gibts da noch Probleme. 
Aber buildroot läuft auf beiden (mit GCC 4.2!).

Autor: Kriz Lee (kriz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wow, schon die erste Antwort! froi

Ja, also das installieren von libacl und lzo (vielleicht auch zlib) hat 
beim ersten Versuch mit der ATMEL Buildroot funktioniert (über Debian 
Package Manager), aber hat dann irgendwie beim 2. Mal (nachdem ich mein 
Debian nochmal neu aufgezogen hab) nicht geklappt. (Die anderen Sachen 
waren problemlos zu installieren.) Trotz einer angeblich erfolgreichen 
Installation von libacl gab es dann immer Fehler wie (sinngemäß) 
"libacl1 needed for ...", "zlibxxx needed for ..." etc. Da war ich dann 
auch hilflos.

Was ist denn mit dem GDB. Brauch ich den dann gar nicht? Und wie wichtig 
ist, dass ich GCC 4.2 und nicht z.B. GCC 4.3.2 installiere?

Danke für die Antworten. Werde später mal ausprobieren, ob es mir 
weiterhilft...

Autor: Marius Wensing (mw1987)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also den GDB brauchst du erstmal nur, wenn du Debuggen wollst. Da hab 
ich aber noch nicht so die Erfahrung mit. Bisher habe ich immer den 
vorkompilierten Atmel-gdb benutzt. Aber du kannst im Buildroot angeben, 
dass der gdb auf den Grasshopper aufgespielt wird und du dann übers 
Netzwerk die Linux-Anwendungen debuggen kannst. Die Option im Buildroot 
heißt glaube ich "gdb in target" oder so ähnlich.

Eigentlich sollten die Packages mit apt sehr einfach zu installieren 
sein. Apt sollte sicherstellen, dass alle Abhängigkeiten erfüllt sind. 
Nutze kein Debian und kann das Problem leider im Moment nicht 
nachvollziehen.

Der gcc-4.2 ist wichtig, damit du das Buildroot kompiliert bekommst. Die 
4.3er Version vom gcc eckt da extrem an. (Siehe diesen 
avrfreaks.net-Thread: 
http://www.avrfreaks.net/index.php?name=PNphpBB2&f...)

MfG
Marius

Autor: Kriz Lee (kriz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm vielleicht lag es daran.

Ich will ja schon debuggen aber nicht unbedingt auf der Maschine, 
sondern auf meinem PC. Naja, ich bekomm jetzt erstma Ubuntu und dann 
schaun wir ma weiter, wie's dann damit aussieht. Ich hoffe, es klaptt 
endlich mal!

Danke nochmal für deine Hilfe! Werd mich sicherlich nächste Woche 
nochmal melden...

Autor: Kriz Lee (kriz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, nun bin ich (trotz ubuntu 8.04) an der selben Stelle wie vorher:

error "***gdb does not support native target avr32-unknown-linux-uclibc"

Kennt das vielleicht jemand und/oder weiss wie ich dieses Problem 
beheben könnte? Oder vielleicht kann mir jmd sagen, was ich falsch 
mache?

Autor: Kriz Lee (kriz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach so, hier noch n paar Infos:

Meine Dependencies sind alle OK.
GDB ist Version 6.8.
GCC ist Version 4.2.4.

Autor: Marius Wensing (mw1987)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nutzt du das Original Atmel Buildroot?

Wenn ja, dann klär uns mal auf, was du im Gegensatz zur 
Default-Konfiguration geändert hast.
Deine Fehlermeldung klingt sehr nach einem fehlendem Patch für den gdb.

Nutzt du das normale Buildroot, dann probier mal das Atmel Buildroot 
aus. Damit hatte bisher noch nie groß Probleme.

MfG
Marius

Autor: Werner B. (werner-b)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vorschlag: Wühle dich erst einmal durch
http://www.avrfreaks.net/wiki/index.php/Documentat...

Bezieht sich zwar auf das ST1000, das macht aber keinen großen 
Unterschied.

Autor: Kriz Lee (kriz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, danke erstmal wieder einmal für die Hilfe. Ich glaube, ich weiss 
jetzt, warum dass mit dem gdb nicht funktioniert. Ich hab versucht gdb 
für den grasshopper mit zu installieren und das wollte der wohl 
irgendwie nicht so gern.

So nun habe ich die toolchain, aber ich soll ja avr32-linux-gcc 
benutzen. Wieso zum Teufel steht das eigentlich in keiner Doku und wieso 
braucht man laut embedded-project "nur" gcc? Naja, wie dem auch sei, ich 
werde mich mal damit auseinandersetzen!

Ich habe aber da noch Probleme mit dem Ansteuern der beiden Ports C und 
D. Nach dem Starten zeigt mir der Grasshopper folgendes an:
eth0: link up (100/Half)
created gpio0 (port0/0x0000002f) as (254:0)
created gpio1 (port1/0x00000001) as (254:1)
created gpio2 (port2/0xff800000) as (254:2)
created gpio3 (port3/0x0000003f) as (254:3)
starting pid 803, tty '/dev/ttyS0': '/sbin/getty'

Nun geh ich davon aus, dass meine Ports funktionieren, aber bsi lang hab 
ich bei C und D keinen Erfolg gehabt. Hier mein Code:
#!/bin/sh
#PORT C
mkdir /config/gpio/gpio2
cd /config/gpio/gpio2
echo 2 > gpio_id
echo 0xFFF800000 > pin_mask
echo 0xFFF800000 > oe_mask
echo 1 > enabled

Trotzdem kann ich keinen Pin 19 z.B ansteuern! Was mach ich falsch?

Autor: Kriz Lee (kriz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich bekomme nun beim installieren von AVR32-linux-gcc Fehlermeldungen 
(ganz schön anstrengend das ganze mit Linux zu machen. *schweiß von der 
stirn wisch*). Nachdem ich alles so mache wie in der Anleitung des 
AVRfreaks-Wiki beschrieben, bekomme ich beim make
exec: 2: --pic not found.


Übrigens: Ich hab nun Ubuntu 8.04 und gcc 4.2.4... Liegt's vielleicht am 
gcc 4.2.4?

Autor: Kriz Lee (kriz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich hab's nu hinbekommen. Danke an alle, die mir geschrieben haben. Ihr 
wart eine große Hilfe.

Autor: Robin Tönniges (rotoe) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bin auch gerade dabei einen kernel für Grasshopper zu machen. Ich 
lade jedesmal das Gebaute uImage per U-Boot an die Adresse 30000. 
Allerdings endet es fast immer in Kernel-Panic. Ich hoffe jemand kann 
mir sagen warum.

Danke schonmal

Autor: brz4 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da http://sr11.sharebase.de/files/grasshopper.tar.gz bzw. 
http://sr11.sharebase.de/files/icnova_base_cd.tar.bz2 ja nicht mehr 
verfügbar ist, stellt sich die Frage wo man die grasshopper files laden 
kann?
Oder muss man doch für 3 EUR + Versand ne CD kaufen?

Autor: Udo S. (udo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was willst du denn mit den alten files?
Man nehme Ubuntu 8.04 und den Buildroot 2.3.0 von hier:
http://www.atmel.no/buildroot/buildroot-src.html
plus den Grasshopper-Patch von hier:
Beitrag "AVR32 grasshopper patch für ATMEL buildroot 2.3.0"
und man hat alles was man braucht.

Gruß
Udo

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.