www.mikrocontroller.net

Forum: Mikrocontroller und Elektronik AVR direkt aus AVR-Studio heraus brennen


Autor: Uli Huber (ulihuber)
Datum:

Hallo zusammen,

ich bin über die Frage gestolpert, wie man aus AVR-Studio heraus direkt
programmieren kann ohne einen SDK-kompatiblen Programmer zu haben. Da
ich nichts gefunden habe, möchte ich meine Lösung vorstellen.

Ich benutze einen parallelen ISP-Programmer und Ponyprog. Um dieses aus
dem AVR-Studio heraus laufen zu lassen braucht es eine Steuerdatei mit
der Endung .e2s.
Die sieht dann in etwa so aus:

#------ START --------
#Programming sequence
SELECTDEVICE ATTINY2313
CLEARBUFFER
LOAD-PROG .\meinprogramm.hex
LOAD-DATA .\meinprogramm.eep
ERASE-ALL
WRITE&VERIFY-ALL
#Pay attention to NOT disable RSTDISBL
#FusesH:
# DWEN,  EESAVE, SPIEN, WDTON, BODLEV2, BODLEV1, BODLEV0, RSTDISBL}
#   1       1       0      1       1        0       0         1
#FusesL:
# CKDIV, CKOUT,  SUT1,  SUT0,  CKSEL3,  CKSEL2,  CKSEL1,  CKSEL0}
#   1      1       1     1        1        1       1        1
WRITE-FUSE 0x2600
#Lock: {X,X,X,X,X,X,Lock2,Lock1}
        0 0 0 0 0 0      1     1
WRITE-LOCK 0x03
#------- END ---------

Die Steuerdatei hat den Vorteil, daß sie projektspezifisch ist und alle
Flags mit brennt.

Im AVR-Studio kann man dann mit Tools-Customize-Tools-Insert einen neuen
Eintrag  im Pull-Down-Menu 'Tools' anlegen, der auf diese Datei zeigt.
Er erscheint praktischerweise auch gleich das Ponyprog-Icon.
Aus dem Menu Tools-Customize-Commands kann man dann das Icon auch auf
eine der Menuleisten ziehen.

Ab da kann man nach dem Assemblieren mit dem Button den Chip brennen,
ich mache das In-Circuit auch ohne spezielles ISP Interface, in dem ich
einfach einen AVR einsetze, an dem die 6 Drähte direkt angelötet sind.

Das ist es schon. Vielleicht hilft's ja jemand…

Gruß
Uli
Autor: Stefan Gemmel (steg13)
Datum:

ja funktioniert, guter Tipp :-)

Die Zeile unter #lock hat eine Fehlermeldung erzeugt, ich habe dann ein
# davorgeschrieben.

Muss man für jedes Projekt eine eigene Datei schreiben, oder kann man
sagen: nimm die aktuell geöffnete Datei?
Autor: Läubi (Gast)
Datum:

kann man die HEX Datei irgenwie als Parameter übergeben?
Autor: Martin (Gast)
Datum:

Vielen Dank, das ist hilfreich.
nun muß ich nur noch strg + P auf den buttonlegen und dann bin ich
glücklich ;-)

Mal wieder ein weiterer Grund, weshalb sich auch der passive Genuss
dieses Forums lohnt
Autor: Sebastian (Gast)
Datum:

Hallo Uli ich hab mal eine Frage:

Du benutzt ja  PonyProg zum Programmieren. Welches ISP Interface benutzt
du ? Kannst mir bitte nen Link zu Schaltplan etc geben ? das wäre nett.


Danke
Autor: Toralf Wilhelm (willi)
Datum:

Sebastian wrote:
> Hallo Uli ich hab mal eine Frage:
>
> Du benutzt ja  PonyProg zum Programmieren. Welches ISP Interface benutzt
> du ? Kannst mir bitte nen Link zu Schaltplan etc geben ? das wäre nett.
>
>
> Danke

Guten Morgen,

schreibt er doch, "Ich benutze einen parallelen ISP-Programmer und
Ponyprog.".
Schaltplan, z.B. hier: http://rumil.de/hardware/avrisp.html
Schau mal hier, da sind alle erklärt:
http://www.mikrocontroller.net/articles/AVR_In_Sys...

Danke an Uli, ist ein guter Tip. Wo hast Du die Infos zur Steuerdatei
für PonyProg her? Man muß ja für jedes Projekt eine andere Datei
anlegen, kann man das nicht noch etwas automatisieren? z.B.: den Inhalt
am Anfang des ASM.file ablegen und dann per Stapelverarbeitung in eine
e2s datei einlesen.

Gruß Willi
Autor: Uli Huber (ulihuber)
Datum:

Hallo Willi,

die Steuerdatei kommt aus der Ponyprog-Hilfe, Punkt 4.1

KLar muß man eine Steuerdatei für das Projekt anpassen. Aber das sind ja
nur 2 Zeilen (Namen) und ggf. Flags, die man ohnehin setzen muß.
Und wenn ich ein Projekt mache, kommt es auf die Kleinigkeit am Anfang
nicht an ;-)

Schöner wär's natürlich mit einem aus dem AVR-Studio übergebenen Namen,
aber so einen Trick habe ich noch nicht gefunden.

Was mir auch noch abgeht, ist eine Möglichkeit, den Namen der .hex Datei
aus dem Code heraus zu steuern (für bedingte Assemblierung).

Ganz habe ich das mit der ASM-Datei nicht verstanden. Aber einer aus der
UNIX-Welt GREPt sich so eine Steuerdatei locker zusammen. Ich kann's
nicht.

Gruß
Uli


Gruß
Uli
Autor: wulf (Gast)
Datum:

Bzgl. der vom AVR Studio übergebenen Datei bzw. deren Namen:
In der PonyProg Dokumentation steht das sogar:
http://www.lancos.com/e2p/ponyprog2000.html#s4

Einfach im Makefile die Datei mit dem skript schreiben lassen.

~~~~

Andere Frage dazu:
Kann man irgendwo beim AVR Studio das default-Makefile ändern?
Der muss ja irgendwo eine Vorlage haben...
Autor: Lukas (Gast)
Datum:

Hallo ich habe noch eine Frage:
Wenn man direkt über Pony Prog die Fuses setzt, muss man diese ja
negiert eingeben, da Pony Prog die Fuses negiert dem µC überträgt. Muss
man die Fuses in der .e2s-Datai auch negiert eingeben oder wird das was
ich dort eingebe dem µC genauso übertragen?
Vielen Dank für die Antwort
Autor: Johannes M. (johnny-m)
Datum:

Lukas wrote:
> Hallo ich habe noch eine Frage:
> Wenn man direkt über Pony Prog die Fuses setzt, muss man diese ja
> negiert eingeben, da Pony Prog die Fuses negiert dem µC überträgt.
PonyProg überträgt gar nichts negiert. Nur die Eingabe ist für den
Benutzer etwas gewöhnungsbedürftig, weil ein Häkchen im Kästchen
bedeutet, dass die Fuse programmiert wird (also 0 ist) und kein Häkchen
eben "unprogrammiert", also 1, bedeutet...
Autor: Wolfram Quehl (quehl)
Datum:

die Eingaben in Ponyprog entsprechen dem Datenblatt. Für die eigenartige
Eingabe ist daher Atmel verantwortlich.

mfg
Autor: Christian U. (z0m3ie)
Datum:

Das ganze geht über ein Makefile noch um einiges komfortabler, und mann
kann die Standart build Buttons benutzen. Einfach in den Projektoptionen
externes Makefile angeben ...
Autor: Uli Huber (ulihuber)
Datum:

Makefile - prima.

Aber wo genau ? Ich kann in meiner 4.13 nix finden.

Gruß
Uli
Autor: Zeusi (Gast)
Datum:

Sauber ;)

gleich mal testen,...
grüüüße
Autor: Gast (Gast)
Datum:

wo holt sich das AVRStudio das "default-Makefile" fürs WinAVR her? So
eine Art Vorlage. Wo befindet sich die?

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




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 erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net