www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR programmiert anderen AVR ?!


Autor: ,,,, (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute!

Ich hab ne Frage und zwar wie es möglich ist einen AVR mit einem
anderen zu programmieren. Wenn auf dem einen ein Bootloader ist kann
ich ihn ja über RS232 vom PC programmieren. Wenn ich ihn jetzt mit
TX/RX an nen andern AVR hänge (über Kreuz natürlich) kann der andere
ihn dann auch programmieren??

Normal sendet ja der PC die Hex Datei zum Controller. Wenn ich jetzt
die Hex auf dem Controller liegen habe der den Zielcontroller
programmieren soll (z.B. im EEProm) wie muss ich ihn dann über die
serielle Schnittstelle senden ??

Gibt es dazu Quellen?
Hoff mal ihr versteht!
Bin für jede Hilfe dankbar.

Gruß

Autor: ,,,, (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also hab grad noch gegoogelt und hab bissle z.B. über den Megaload
Bootloader gelesen. Wenn ich den auf den einen Avr mache was muss der
andere genau senden. Steh grad bissle auf m Schlauch. Nach dem Reset
kommt doch erst ein gewisses Wort, dass dem Bootloader mitteilt, dass
jetzt der Programmcode kommt. Was kommt dann? Muss ich das Hex file
byte für byte senden? Oder wie? Wo findet man dazu informationen?

gruß

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich nehme an, du meinst ein System mit mindestens 2 Controllern. Denn
sonst sehen ich keinen Sinn in der Konstellation.

So ähnlich läuft es beim STK500. Sind 2 Controller drauf, wobei der
eine (AT90S1200) sogar nur dazu da ist, die Firmware seines Kollegen
(AT90S8515) aufzufrischen, weil die AT90 keine Bootloader können.
Allerdings wird der Kollege sinnvollerweise per ISP programmiert, nicht
per Bootloader.

Also: Controller #1 hat Bootloader und ISP-Verbindung zu Controller #2.
Da ISP über anderweitig verwendbare Pins läuft, gehen #2 keine Pins
verloren. Und zwischenpuffern muss man so garnicht.

Autor: Johannes.A (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin!

Also wenn es nur um EEPROM-Daten geht, ist es das einfachste, ein
eigenes Protokoll mit Anzahl der Daten, Zieladresse und Prfüsumme zu
basteln, das jeweils einen Datenblock überträgt und nach dem Brennen
irgendwie Bescheid sagt, dass die nächsten Daten kommen können, und bei
Ü-Fehler zum Nochmal-Senden auffordert. Ich verwende für sowas gerne
intel-hex als Datenformat, das ist schlicht, bewährt und gut
dokumentiert.

Wenn es auch um Neuprogrammieren des Flash geht, kannst Du entweder auf
dem Zielcontroller ebenfalls einen Bootloader intstallieren - es ist ja
nicht verboten, statt des PC eine andere serielle Quelle zu verwenden
-, oder den Zielcontroller mit einer abgespeckten Version der AppNote
AVR910 mittels SPI und RESET in-system-reprogrammieren. Die zweite
Variante hat den Vorteil, dass Du damit auch kleine Tinys (neu)laden
kannst, die nicht genug Platz für einen Bootloader mehr haben oder den
benötigten SPM-Befehl (noch) nicht kennen.

Ich hoffe, Dir weitergeholfen zu haben.

Gruß Johannes

Autor: ,,,, (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mh ja ich meine ein System mit 2 Controllern. Ganz einfach gesagt: Ich
will das ein AVR einen anderen programmiert. Dann bedeutet das, dass
der eine AVR den anderen einfach per ISP programmieren kann?? Naja ist
irgendwie auch logischer, als dieses Bootloader Gewirr! Gibt es dazu
irgendwelche Dokumentationen? Peils grad net so ganz..

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
lies die Datenblätter, da ist genau beschrieben wie so ein Chip
programmiert wird. Das, was sonst eben die Brennsoftware macht musst du
dem Einen der Chips einfach beibringen und dann kann er nen Kollegen
programmieren. Machen eigentlich alle Brenner so, die einen Controller
drin haben. Die empfangen auf irgeneine Weise die HEX-Datei und sorgen
sich dann selbst darum wie es der BRennkandidat benötigt. Vorteil einer
solchen Schaltung ist, das man z.B. mehrere Zielkandidaten (also PICs
und AVRs und auch andere Chips) mit einem Gerät programmieren kann. Der
steuernde Controller muss eben nur die Algorithmen der Zielchips
beherrschen.

bye

Frank

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Siehe Atmels Datasheets: Memory Programming / Serial Downloading.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PS: Beispielcode findet sich in jedem Quellcode eines AVR
ISP-Programmers für den Parallelport, z.B. dem SP12-Programmer. Muss
man nur anpassen, weil man ggf. SPI/USI von #1 verwenden kann.

Autor: ,,,, (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dankeschön ;)
War ja iwie klar ^^ Naja im nachhinein kann mans ja sagen ^^
also danke, les mich dann mal durch

gruß

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dir geht es nur darum das ein avr den anderen proggt ?  ouh mann das
macht jeder programmer nach dem avr910 schon mal  die seite
http://mikrocontroller-projekte.de/ angeguggt? ode die
http://www.avr-projekte.de/

Autor: ,,,, (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja das merk ich jetzt ja auch wieder ^^ hab ja gesagt ich steh voll aufm
schlauch

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.