Forum: Mikrocontroller und Digitale Elektronik Atmega644pa Flash löschen


von Rieders (Gast)


Lesenswert?

Hallo

Ich habe ein Atmega644pa auf einer Leiterplatte verbaut.
Nun habe ich versucht über mysmartusb light einen Bootloader über ICSP 
auf zu spiele.
Da ich Anfänger auf dem Gebiet bin habe ich warscheinlich einen Fehler 
gemacht.
Jedenfalls ist der Flashspeicher randvoll.
Kann ich den Atmega wieder löschen ??

Ich habe AVR Studio 4 zum aufspielen des Bootloaders benutzt.
Am anfang habe ich auch die Software von mysmartusb light benutzt.
Das war vielleicht mein Fehler. Die schreibt alles mögliche drauf.

Würde mich freuen wenn jemand mir helfen könnte.

MfG AR

von Sascha W. (sascha-w)


Lesenswert?

Hallo,

du brauchst den Speicher nicht löschen, jedesmal wenn du über ISP 
programmierst wird vorher ein Chip-Erase ausgeführt und damit ist er 
wieder leer.

Sascha

von Rieders (Gast)


Lesenswert?

Danke für die schnelle Antwort

Ich möchte mit arduino ein Code hochladen.
Leider bringt er immer Fehler.

avrdude : stk500.getsync() not in sync. resp = 0x00
avrdude : stk500.disable (): protocol error, expect = 0x14, resp= 0x51

Ich denke das es mit dem vollen Flash zu tuen hat.
Oder habe ich da ein Verbindungsproblem ?

MfG AR

von Sascha W. (sascha-w)


Lesenswert?

Rieders schrieb:
> Oder habe ich da ein Verbindungsproblem ?
ja das sieht so aus, aber schon zwischen avrdude und STK


Sascha

von Thomas E. (thomase)


Lesenswert?

Rieders schrieb:
> Ich denke das es mit dem vollen Flash zu tuen hat.
So ein Flash ist keine Festplatte, die irgendwann mal voll ist und dann 
kann man nichts mehr installieren.
Auf einem Mikrocontroller läuft ein einziges Programm. Wird ein neues 
Programm installiert, wird das alte rigoros rausgeschmissen, indem der 
Speicher vorher gelöscht wird.
Eine kleine Ausnahme macht ein Bootloader, der eine kleine Ecke im Flash 
reserviert bekommt. An anderer Speicherstelle läuft dieser Bootloader 
gar nicht, da die Befehle fürs Programmieren nur in diesem Teil des 
Flash ausgeführt werden. Und das erste, was ein Bootloader zu tun hat, 
ist das alte Programm löschen, damit er den neuen Code gleich wieder 
flashen kann. Denn das RAM ist zum Zwischenspeichern viel zu klein.
Deine Probleme liegen hundertprozentig nicht an einem zu vollen Flash. 
Woher weisst du überhaupt, wie voll das Flash ist?

mfg.

von Rieders (Gast)


Lesenswert?

Was ist jezt AVRDUDE ???

Das habe ich doch garnicht auf meinem Rechner.
Muss ich das erst noch installieren ?

MfG AR

von Sascha W. (sascha-w)


Lesenswert?

Rieders schrieb:
> Was ist jezt AVRDUDE ???
>
> Das habe ich doch garnicht auf meinem Rechner.
1
avrdude : stk500.getsync() not in sync. resp = 0x00
2
avrdude : stk500.disable (): protocol error, expect = 0x14, resp= 0x51

hab ich aus deiner Fehlermeldung geschlossen! Das kommt doch nicht aus 
dem AVR-Studio.

Sascha

von Rieders (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe mal mit my Avr Pro den Flash ausgelenen. (Bilder)

von Rieders (Gast)


Lesenswert?

Die Felermeldung kommt aus Arduino .

von Thomas E. (thomase)


Lesenswert?

Rieders schrieb:
> Ich habe mal mit my Avr Pro den Flash ausgelenen.
Zumindest von 0x00 bis 0xDF ist er gelöscht.

Eine Flashspeicherstelle enthält im gelöschten Zustand "FF" und nicht 0.

Rieders schrieb:
> Nun habe ich versucht über mysmartusb light einen Bootloader über ICSP
> auf zu spiele.
Was hast du denn da überhaupt draufgeladen? Meines Wissens gibt es 
keinen Arduino mit atmega644. Und somit auch keinen Bootloader für 
diesen Controller.
Der Bootloader muß genau für den Controller passen. Sonst wird das 
nichts.

mfg.

von Sascha W. (sascha-w)


Lesenswert?

... und wenn man den Flash ausliest, erhält man immer Daten in der Größe 
des Flashspeichers, denn beim Auslesen kann der Programmer ja nicht 
erkennen wo ein Program ist und wo nicht.

Sascha

von Rieders (Gast)


Lesenswert?

Ich habe leider keine hex Dateien zum hochladen.
Nur PDE-Datei und C/C++ Header.
Kann ich die umwandeln und dann mit AVR brennen ?

MfG AR

von Thomas E. (thomase)


Lesenswert?

Rieders schrieb:
> Nur PDE-Datei
Was ist eine PDE-datei?

mfg.

von Rieders (Gast)


Angehängte Dateien:

Lesenswert?

Hallo

Das ist eine Datei die ein Sketch zusammenfügt.
Dies wird dann übersichtlich wieder aufgeführt.
Gibt es ein Prog das alles in Hex datei ausgibt ?

Oder kann ich mit AVR öffnen und dann Umwandeln ?

Bild von Flash ganz weit unten.

Bild vom Sanguino Bootloader für Arduino .

MfG AR

von Thomas E. (thomase)


Lesenswert?

Rieders schrieb:
> Oder kann ich mit AVR öffnen und dann Umwandeln ?
AVR, also AVR-Studio weiss nicht, was das ist.

Rieders schrieb:
> Bild von Flash ganz weit unten.
Das ist Binärcode. Offenbar auch an der richtigen Stelle.
Und du hast den atmegaboot644p draufgeladen? Wenn ja, dann hast du jetzt 
den Bootloader drauf.
Sind die BOOTRST und die Bootsize Fuses richtig eingestellt?

Also hast du jetzt einen Arduino-Clone von Sanguino vor dir. Und den 
willst du direkt aus dem AVR-Studio mit von dir erstelltem Code 
programmieren?

mfg.

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
Noch kein Account? Hier anmelden.