AVRs unter Linux programmieren

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 25 11 2024  20:26:52      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte


Autor
AVRs unter Linux programmieren

    







BID = 454255

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika
 

  


Hallo Liebe Forenmitglieder,

Da ich nun fast vollständig auf Linux umgestiegen bin, musste ich zwanghaft eine Alternative für das gute alte AVR-Studio finden.

Hier nun eine kleine Liste mit guten Tools für Linux rund um AVRs:

- Programmer: avrdude (unterstützt so ziemlich alle Programmer, auch die Lowcost-Varianten für den Parallelport)
- Compiler: avr-gcc und binutils bietet die Möglichkeit, C und C++ (eingeschränkt!) für AVR zu kompilieren und Assembler zu assemblieren und zu linken. Ist die gleiche Sammlung an Tools, die WinAVR bietet fürs AVR-Studio)
- IDE: kontrollerlab (bzw. KontrollerLab) ist eine komplette Entwicklungsumgebung für KDE, enthält umfangreichen Editor (mit Syntaxhighlighting und automatischer Einrückung), Serielles Terminal, Projektdateienanzeige, eingebaute Funktion zum kompilieren und übertragen des Programmes via avrdude.
-> http://www.cadmaniac.org/projectMai.....erlab

Ja, das sind die Programme, die ich aktuell verwende. Dazu auch die entsprechenden anderen binutils wie avr-objdump etc zum disassemblieren und untersuchen des Kodes.


----

Ich wollte das einfach mal auflisten, die Tools laufen zwar auch auf Windows (zumindestens avrdude und binutils für avr-gcc) aber ich denke mal, für jemanden, der auf Linux umsteigt kann das eine Hilfe sein, wenn er sieht, dass man auch komplett unter Linux AVRs programmieren kann. Für eingefleischte Linuxuser, die es hier ja auch gibt, ist das nicht Neues.



P.S. Wenn jemandem noch andere Tools einfallen, die unter Linux lauffähig sind, dann einfach hier posten.

_________________


[ Diese Nachricht wurde geändert von: DonComi am 30 Aug 2007 16:59 ]

BID = 460136

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

 

  

Also zur Programmentwicklung benutze ich "kate", und zum Flashen der Chips hatte ich bisher "Ponyprog" benutzt, u.a. weil ich einen SI-Prog-Adapter habe. Da ich aber meinen RS232 über USB emulieren muss ist das Dingen sehr langsam (mit verifizieren dauern 1kB an einen Mega8 ca 20 Minuten).
Weil mich das langsam nervt habe ich mir heute nen ISP-Adapter für den Parport zusammengefrickelt, und benutzte nun "avrdude" mit dem Frontend "AVR8_Burn-O-Mat". Funktioniert natürlich tadellos und so schnell wie früher der SI-Prog mit echtem RS232-Port. Außerdem muss man den Chip nicht ausbauen.
Ich weiß nicht, ob nur ich diesem Missverständnis aufgesessen bin, aber ich war bisher der Meinung, dass man im ISP-Modus die Fuses nicht brennen kann. Das ist natürlich falsch!
Außerdem habe ich mir vor kurzem die Teile besorgt, um den "USBprog" nachzubauen, dann geht es noch ein bissel schneller und vielfältiger.
Ach ja, assembliert wird mit "avra".

_________________
Es irrt der Mensch solang er strebt

BID = 460386

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

'Nabend,

Habe jetzt mal avra getestet und bin positivst überrascht: bis jetzt ist alles sehr kompatibel. Bequem aus der Shell zu bedienen sowieso.
(wie AVRASM32.exe vom Studio)

Was mich etwas erstaunt, ist, dass die Makros LOW() und HIGH() fehlen. Aber das kann man umschreiben (oder hat wer 'ne Ahnung, wie die hier implementiert sind? Habe nichts gefunden.)

_________________

BID = 460402

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

Also ich bastel hier grad an nem Programm wo das high() und low() (vielleicht liegt es an der Großschreibung) ca 20 mal vorkommt. Bei mir funktioniert es tadellos.

_________________
Es irrt der Mensch solang er strebt

BID = 460404

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

hmm
Ok, ich habe bereits einige Varianten durch, man kennts ja vom Assenmbler des avr-gcc. Der hat diese Makros als lo8() und hi8().

Ich versuche es abe nochmals.

btw: aktuell in nano

Edit: OK, kleingeschrieben klappt es.

_________________


[ Diese Nachricht wurde geändert von: DonComi am 27 Sep 2007 23:51 ]

BID = 461431

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Moin,
vielleicht noch einen Tipp für jene, die mit Linux neu angefangen haben:

Wer Daten aus dem Terminal (z.b. die Ausgabe) zu einem Mikrokontroller umleiten will (um sie beispielsweise auf einem LCD darstellen zu können oder was auch immer), der kann das so tun:

* Definition der Schnittstelle:
export uc=/dev/ttyUSB0
(Beispiel für USB->RS232-Wandler)

* Ausgabe des Dateiinhaltes von datei:
cat datei > $uc

* Ausgabe einer Zeichenkette:
echo "Hallo" > $uc

* Ausgabe von ping-Daten an den µC:
ping ip > $uc

---
Ich bin hier den Umweg über eine Varialbe $uc gegangen, da das einfacher ist. Export legt sie aber nur für die Session fest!

Ich habe das nur kurz gemacht, um Konsolendaten auf ein Display zu bekommen.


Wer die Schnittstellenparameter ändern will, der tue das mit stty (sofern vorhanden). Baudrate etc. verstellen geht nur mit Root-Rechten. Weiterhin müssen Schreiberechte am tty-Device für den Benutzer existieren.

_________________

BID = 464792

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Hallo,

Mich erreichte eben eine PM, in der nach einem Simulator gefragt wurde.
Mein KontrollerLab bietet zwar die Möglichkeit, das Programm zu Debuggen, aber so richtig funktioniert das nicht.

Aber es scheint Simulatoren für Linux zu geben, ich besitze jedoch keinen. Zumal der von Atmel eigentlich unschlagbar gut ist. Schade dass es den nicht auch für Linux gibt .


_________________

BID = 464865

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

Es gibt den "simulavr", allerdings spuckt der mir bisher nur Fehlermeldungen aus...

_________________
Es irrt der Mensch solang er strebt

BID = 464866

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Ja, habe auch mitbekommen, dass wohl die meisten Simulatoren ziemlich verbuggt sind.

Der vom AStudio ist wirklich unschalgbar. Kommt aber nicht mehr infrage.

_________________

BID = 466524

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Update:

Also, AVR-Assembler avra funktioniert tadellos, leider klappt da was mit kontrollerlab nicht:

Brauchte eine kleine schnelle Routine, die ich in Assembler schreiben wollte und dann später dazu linken wollte; das war mit AVR-Studio kein Problem. Da konnte man die Assemblerdatei (*.S/*.asm) auch im Projekt bearbeiten und aus dem C-Kode aufrufen.

Kontrollerlab kann es nicht wirklich, es erscheinen seltsame Fehlermeldungen. Ich werde mal abwarten, wann die neueste Version rauskommt, vorerst muss ich dass also manuell machen bzw. nen Shellscript verwenden.

---

_________________

BID = 497560

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Moin,

Update:
kontrollerlab und Assemblerdateien funktionieren doch.
Verwende aber mittlerweile Makefiles für meine Projekte, ist angenehmer.

_________________

BID = 556634

ffeichtinger

Schreibmaschine



Beiträge: 1050
Wohnort: Traunkirchen im Salzkammergut

Ich wollte nur mal hinzufügen, dass ich den Editor 'Geany' für Linux sehr empfehlenswert finde.

Und wer seine hex files bisher mit 'Megaload' rüber geschickt hat findet mit 'pygaload' eine gute Alternative.

mfg Fritz

[ Diese Nachricht wurde geändert von: ffeichtinger am 16 Okt 2008 13:16 ]


Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 20 Beiträge im Durchschnitt pro Tag       heute wurden bisher 12 Beiträge verfasst
© x sparkkelsputz        Besucher : 182399264   Heute : 6462    Gestern : 7548    Online : 898        25.11.2024    20:26
7 Besucher in den letzten 60 Sekunden        alle 8.57 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0463809967041