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
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
Hallo, hat jemand schon Erfahungen mit der self-programming Funktion der ATMegas unter AVRGCC gesammelt und kann hier näheres dazu schreiben? Martin
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
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
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
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...
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.