www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AT mega "self programming" Funktion


Autor: Weide (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kann mir eventuell jemand anschaulich erklären, wozu diese "self 
programming" Funktion einiger AT megas gut sein soll. Irgendwie sehe ich 
denn Sinn nicht. Wozu sollte der Kontroller selbstständig seinen 
Programmcode überschreiben?

Gruß Weide

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Weide,

Eine mögliche Anwendung des "Self-Programming":

Wenn man einen Target-Monitor/Debugger verwenden möchte, muß dieser den 
Programmcode ständig ändern (wenn Haltepukte usw. eingefügt werden).


Gruß Matthias

Autor: MdeWendt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hat jemand schon Erfahungen mit der self-programming Funktion der 
ATMegas unter AVRGCC gesammelt und kann hier näheres dazu schreiben?

Martin

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Weide,
die "self programming" Funktion, wie Du sie nennst ermöglicht es dem AVR 
Programme ohne Programmiergerät einzuspielen. Dazu wird der 
Programmspeicher in zwei Bereiche aufgeteilt, den Boot Sector Flash und 
den Application Sector Flash. Man muß dann einmalig mit dem 
Programmiergerät einen Boot Loader in den Boot Sector programmieren. 
Dieser Bootloader kann dann von jeder beliebigen Schnittstelle ein 
Programm laden und in das Application Flash schreiben.
Viel weiter bin ich mit dem Thema leider auch noch nicht. Ich habe auf 
www.avrfreaks.net mal irgendwas zu dem Thema gesehen.

Hoffe das reicht erst mal.

Gruß
Markus

Autor: Weide (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

vielen Dank erstmal für Eure Antworten.

Markus,
um über eine beliebige Schnittstelle ein Programm zu laden, muß ich das 
entsprechende Programm logischerweise an dieser Schnittstelle bereit 
halten. Nun, dies muß ich allerdings auch auf dem "normalen" 
Programmierweg (ISP), deshalb geht mir der Sinn nach wie vor etwas 
abhanden, aber ich erkenne (hoffentlich) schon mal die Richtung: 
Vielleicht ist es so möglich, dass man sich Programmupdates 
beispielsweise über's Internet oder gar über's Handy holen könnte - sehe 
ich das richtig?

Gruß Weide

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Weide,
es stimmt schon, den Bootloader muß man einmal mit ISP programmieren. 
Aber danach ist die Programmquelle egal. Theoretisch könnte man einen 
Programmdownload auch über's Internet oder Handy erfolgen wenn der 
Bootloader die entsprechenden Routinen hat und wenn die notwendige 
Schnittstelle vorhanden ist. Die Größe des Boot Sektors ist zwar 
begrenzt, sollte aber für die meisten Anwendungen reichen.

Gruß
Markus

Autor: Jonas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja, ich denk mal das is auch dazu gut, wenn man "mobile programme" 
haben möchte. könnte mir z.B. vorstellen, dass programme z.B. auf 
eeproms hat, und dann einfach das eeprom austauscht. z.B. wenn man ne 
spielekonsole mit dem avr machen will...

Autor: Weide (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jonas,

mittlerweile glaube ich, den Sinn einigermaßen verstanden zu haben. 
Natürlich kann man einfach ein EEPROM tauschen, falls vorhanden und 
natürlich kann man via ISP ein neues Programm einspielen, aber ich 
denke, das Ganze soll wohl in Richtung Anwenderfreundlichkeit für den 
Enduser ausgerichtet sein. Bei einem normalen Prozessor ist jegliche 
Eigenintelligenz außer Betrieb gesetzt, wenn er sich im Uploadmodus 
befindet. Ergo benötigt man für einen komfortablen, Enduser-geeigneten 
Upload eine weitere Intelligenz (z.B. einen weiteren Kontroller) auf der 
Schaltung, die den Bootvorgang übernimmt. Dies entfällt bei einer "self 
programming" Funktion - jedenfalls wenn ich mich nicht gänzlich irre :-)

Gruß Weide

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.