PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : avrStudio, win, avr,gcc, isp, ice, ... wer kann es erklären.



Memby
04.03.2006, 11:44
Hallo,

ich habe mich durch verschiedene Tutorials, Onlinehilfen und Foren gekämpft und verstehe auch alles. Nur der Zusammenhang fehlt mir.
Wie das ganze zusammen passt?



sehe ich das alles richtig:

Das AVR Studio ist eine Entwicklungsumgebung. Hier kann ich mein Programm in Assembler schreiben, welches mir das AvrStudio compiliert. Um c zu compilieren brauche ich das gcc plug-in. Ist GCC Bestandteil von Winavr. Mit Winavr kann man doch auch seine Programme erstellen?
Was ist der Unterschied zwischen Winavr und AvrStudio? Wie mache ich das mit der make-file? Im AvrStudio ist sie da in der Entwicklungsumgebung integriert?

So weiter geht’s:
Zum flashen benötige ich einen Programmer. AvrISP ist doch ein serieller Programmer. Mit dessen kann ich doch direkt von AvrStudio aus flashen. Mit einem parallelen Programmer muss ich über Ponygrog oder ähnlichen Progs gehen. Gibt es im AvrStudio die Möglichkeit Ponygrog einzubinden ohne Zwischenschritt?

Nun noch ein paar Fragen zum debuggen. Das debuggen ist zum Beispiel über JTAG ICE möglich. Muss ich hierfür JTAG Pins(vom AVR) nach außen führen und dann seriell in PC. Im Com1 steckt doch schon mein AVRISP. Muss ich da jedes Mal wechseln? Gibt es andere Möglichkeiten zum debuggen?

Ich möchte AVR in C programmieren. Dabei sollen sie später mal ein Display steuern, mal nen Motor drehen lassen und zum Anfang nur ein LED ansteuern. Eine Möglichkeit zum debuggen wäre klasse.
Mit Sicherheit gibt es Komplettlösungen für komplett teuer Geld, doch das ist es mir nicht Wert.

Es wäre schön wenn Ihr mir den Zusammenhang ein bisschen näher bringen könntet und mich nicht auf Tutorials weiterleitet.

Mfg
memby

askazo
04.03.2006, 12:14
Also:
AVRStudio ist, wie Du schon richtig erkannt hast, die Entwicklungsumgebung für den AVR. Assembler-Programme kannst Du hier schreiben, kompilieren, simulieren und auf den AVR flashen.

Um Programme in C kompilieren zu können, brauchst Du WinAVR. WinAVR ist der GCC-Compiler, nur halt für Windows. Für Linux-Systeme heißt er immer noch GCC. Seit der letzten AVRStudio-Version wird WinAVR automatisch ins Studio integriert, so dass man direkt im Studio auch C-Programme schreiben und kompilieren kann.

Zum make-file: Das makefile wird in der neuen Studio Version so gesehen nicht mehr benötigt. Alle Einstellungen, die man im makefile vornehmen musste, kann man nun in den Projekteigenschaften im Studio einstellen. Alternativ kann man auch weiterhin ein selbstgemachtes makefile einbinden. Bei winavr ist auch ein makefile-Generator dabei, der auch recht einfach zu bedienen ist.

Mit dem AvrISP kannst Du direkt vom AVRStudio aus flashen, richtig. Mit Ponyprog/parallelen Programmern kenne ich mich leider nicht aus, da muss Dir jemand anderes weiterhelfen.

Zum debuggen mit dem JTAG ICE musst Du zwangsläufig auch die JTAG Pins nach aussen führen, anders gehts nicht. Aber Du kannst mit dem JTAG ja auch flashen - wenn Du den JTAG ICE hast, ist der AvrISP eigentlich überflüssig. Es sei denn, Du benötigst die JTAG-Pins für andere Aufgaben. Andere Möglichkeiten zum debuggen gibt es - außer der reinen Simulation im Studio - soweit ich weiß nicht.

Der originale JTAG ICE von Atmel kostet schlappe 400,- Euro. Das ist Dir sicher zu viel Geld. Es gibt eine Alternative zum selbernachbauen, die ich mir auch demnächst zusammenlöten möchte. Pläne und Firmware dazu gibt's hier (http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/#etlight ).

AVRStudio und WinAVR sind übrigens kostenlos. Du brauchst also nur einen Programmer und ein Prozessor-Board, um anfangen zu können.

Gruß,
askazo

Memby
04.03.2006, 12:55
400 € sind ein Argument zum selber basteln. Wenn ich es richtig sehen, dann ist evertool light ein reiner debug-dongel, ohne ISP-Funktion.
D.h. ich brauche die erste Version. Wie ich sehe befinden sich darauf zwei AVR's. Ein Atmega16 der die JTAG-Funktion und ein Amega 8535 für ISP.
Wie werden die beiden Atmegas programmiert. Funktioniert das über einen parallel Programmer?

Memby
04.03.2006, 13:21
ich habe noch mal genauer geschaut. Das evertool kann entweder ISP oder JTAG man muss die Jumper für die jeweilige anwendung setzen!?
Und so weit ich sehe ist da nur die Sofware für den JTAG AVR zur verfügung gestellt.

Also doch evertoll light.

SprinterSB
04.03.2006, 16:42
Meinst du parallele Programmer oder Programmer am Parallelport (die idR seriell arbeiten)?

Du kannst natürlich auch nen Selbstbau-Progger nehmen (Teile unter 5€) und was externes zum flashen (für lau). GCC gehört ja auch nicht zu AVR-Studio, es gibt nur ne Schnittstelle dafür. Evtl. musst du den Progger dann aber extern starten, und es geht nicht über die Oberfläche. Vielleicht ist Studio aber auch so konfigurierbar, daß man User-Commands einbinden kann...

askazo
04.03.2006, 17:11
Die Firmware ist sowohl für die ISP als auch für die JTAG-Funktion ausgelegt. Bei der Evertool Vollversion gibt es einen Umschalter, mit dem man zwischen ISP und JTAG wählen kann.

Zum Programmieren der beiden Megas musst Du Dir entweder einen Parallelen Programmer basteln, oder jemanden, der einen ISP hat, die Programmierung für Dich zu erledigen.

askazo

Frostie
09.03.2006, 13:45
So,

ich hab mal ne Frage.

Ich habe das neue Board von myAVR.
Also die Version 2 mit USB.

Leider erkennt mir aber das AVR Studio den Controller nicht.

Habt Ihr da eine Lösung??

Danke

Gruß
Frostie

BT
09.03.2006, 15:10
avr-prog sucht nur an com1-4 nach programmern, wenn sich dein USB-Programmer an com5 oder höher angemeldet hat musst du über den gerätemanager unter anschlüsse ihm zum beispiel com 3 zuweisen... dann sollte es gehen

cu BT

Frostie
09.03.2006, 15:29
Hallo,

war an COM4 ging nicht!
Ist jetzt an COM 2 -> geht wieder nicht!!

Es kommt dann immer das Fenster wo man den Typen wählen soll!
Com wars wohl nicht!
Danke trotzdem.

Ich versteh das nicht.

Der Controller geht aber.

Gruß
Matthias