Forum: Mikrocontroller und Digitale Elektronik Kein Zugriff auf ATmega128


von franzlst (Gast)


Lesenswert?

Moin,

ich kann anscheins nicht mehr auf dem Atmega128 im RN-Mega128 zugreifen, 
also weder irgendetwas auslesen (zB Fuse-Bits) noch schreiben 
(Flash/Fuse-Bits).
Ich habe es mit dem AVR-Studio zusammen mit mySmartUSB (neu) und Basecom 
zusammen mit USB-ISP Pros (fast unbenutzt) versucht, beides mal 
Fehlanzeige. AVRProg meckert nach Validierung des Flashes (die Bytes 
stimmen nicht überein), Basecom meldet sogar, dass gar kein USB 
Programmer angeschlossen sei.
Ich habe alles durchgemessen, der µC ist an allen nötigen Pins mit Vcc 
und GND verbunden, auch der Quarz scheint zu funktionieren (habe kein 
Oszilloskop, aber an den XTAL Pins liegt an beiden eine gleiche niedrige 
[glaube 0.16V] Spannung an).
Das RN-Board zieht ohne Verbraucher 30mA, weder µC noch Spannungswandler 
erwärmen sich.
TXD, RXD und SCK sind vom Programmer bis zum µC verbunden, auch Masse 
und Vcc.
Die Treiber für die Programmer haben alle schon auf dem PC funktioniert, 
da habe ich auch nichts verändert.
Weder an der Hardware noch an den Fusebits wurde irgendetwas verändert, 
das hat alles so schonmal funktioniert.

Hat jemand eine Idee, an was das noch liegen könnte? Ist es möglich, 
dass der µC kaputt ist? Wäre echt dankbar, wenn mir jemand helfen 
könnte, das Projekt stockt sonst schon wieder.

Danke

Franz

von Gast (Gast)


Lesenswert?

>aber an den XTAL Pins liegt an beiden eine gleiche niedrige
>[glaube 0.16V] Spannung an).

Hab hier grad einen Aufbau mit einem ATmega128, der mit einem 7,3728MHz 
Quarz läuft. Mit einem Multimeter messe ich an XTAL1 und XTAL2 jeweils 
1,6V, also deutlich mehr als bei dir.

Ich tippe darauf, dass du ihn versehentlich auf externen Takt gefuses 
hast. Hänge mal einen Quarzoszillator an XTAL1, dann sollte der Zugriff 
wieder mglich sein.

von Gast (Gast)


Lesenswert?


von fnah (Gast)


Lesenswert?

>Mit einem Multimeter messe ich an XTAL1 und XTAL2 jeweils
>1,6V, also deutlich mehr als bei dir.
gleich-, wechselspannung oder true-rms? (ist sowieso egal, da man so 
nicht die korrekte funktion ueberpruefen kann...)

von franzlst (Gast)


Lesenswert?

Ist es denn nicht richtig, dass er auf externen Takt gefuset ist? Der 
16MHz Quarz is ja extern.
So einen Quarzoszillator hab ich leider nicht (oder was ist da der 
Unterschied zu einenm normalen Quarz?).
Ich könnte höchstens noch einen normalen 8MHz  Quarz haben, wenn der was 
bringt?
(Sollte ein linearer zusammenhang zwischen Quarzfrequenz und Spannung 
bestehen, würde das ja sogar etwa hinhaun mit den unterschiedlichen 
Spannungen)

Gibt es noch eine Alternative? Wenn nicht muss ich so einen wohl 
bestellen.

Danke

Franz

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?


von A.K. (Gast)


Lesenswert?

Quarz != externer Takt: AVR Fuses

von franzlst (Gast)


Lesenswert?

Ich hab jetzt den Tipp mit dem MAX232 befolgt. Die Spannung am XTAL1 ist 
dann übrigens 2,36V. Den Quarz habe ich drangelassen.
Ich habe dann wieder beides (AVR Studio und Bascom) versucht, leider 
wieder das gleiche Resultat.

Sollte ich den Quarz vllt ablöten?

Ein anderer Vorschlag ist, die Frequenz zu vermindern. Ich habe gelesen 
mit dem 555-Timer würde das auch gehen. Aber welche Frequenz soll ich 
einstellen?

Weiter soll man die ISP Frequenz anpassen (1/4 des Quarztaktes), nur wo 
kann ich die einstellen? Und wenn ich die nicht einstellen kann, wie 
kann ich die zumindest herausfinden?

Danke

Franz

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

1. Frage kannst du die Signatur lesen?
Wenn nicht must du die Taktfrequenz des Programmieradapters verringern 
(alternativ längere Waitcyklen)
2. Wie stehen die Fusebits?
(Achtung umgekehrte Logik beachten unprogrammiert 1, programmiert 0)
du must externen Crystal einstellen.

ich verwende einen Quarz 11.059200 MHz
Bei mir stehen alle Fusebits auf 1. Nur SUT0 steht auf 0.

von franzlst (Gast)


Lesenswert?

1. Also AVRProg liefert mir da nur "FFFFFF", also lautet die Antwort 
wohl nein.
Leider finde ich keine Option die Taktfrequenz der Prorammer zu 
verringern. Kann ich alternativ auch die XTAL Frequenz 
verringern/erhöhen? Wenn ja, auf welchen Wert?

2. Die kann ich ja nicht auslesen, das ist ja das Problem. (oder gilt 
"2" nur wenn "1" zutrifft?)

Danke

Franz

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

Richtig zuerst brauchst du Zugriff auf den Chip

Wenn du den nicht bekommst(in dem du xtal1 zur not fremd taktest)kannst 
gar nichts via ISP ausrichten da es noch weitere fusebits gibt, welche 
du eventuell falsch gesetzt haben kannst
(http://www.mikrocontroller.net/articles/AVR_Fuses#SPIEN.2C_DWEN_und_RSTDISBL), 
wird dir nur bleiben ins Datenblatt zu schauen und ein HV 
Parallelprogrammierung zu versuchen. Dazu bedarf es aber eines HV 
Programmers
es ist jedoch möglich das dein programmiertool einfach zu schnell läft 
und deshalb nichts gescheites passiert

welches avrprog benutzt du?

von Andreas L. (andi84)


Lesenswert?

Der Takt für den Programmer muss auf so rund 10kHz gesetzt sein, um mit 
der MAX232-Variante was ausrichten zu können.
Wenn du schonmal Zugriff auf den Chip hattest, dann ist wohl eingfach 
der Takt deines Programmes zu schnell. Den ISP Enable kann man bei allen 
aktuelleren AVRs nicht mehr über SPI abschalten (ja, da hat sich jemand 
was bei gedacht). Wenn der Reset enable allerdings aus ist, hilft leider 
wirklich nurnoch ein STK500 und nen Haufen Drähte.
Ein externen Quarz muss als solcher in den Fusebits gesetzt werden, 
externer Takt wäre im Fall von einem Quarzoszillator angebracht.
Wenn sich der Takt deines Programmers nicht ändern läüsst, am besten in 
den nächsten Elektronikshop tigern und einen Quarzoszillator mit 8 MHz 
kaufen (sollte nicht mehr als 5 Euro im Wurst Case kosten). Den kann man 
immer mal wieder brauchen, Fuses sind leider schnell mal falsch 
gebrutzelt.

von Marvin (Gast)


Lesenswert?

LOL - "Wurst Case" - der war gut. Der Tag ist gerettet.... g

von franzlst (Gast)


Lesenswert?

So, hab jetzt noch zwei Möglichkeiten probiert:

- Einen 16MHz Oszillator an XTAL1
- Einen zweiten µC einen Port immer ein- und auszuschalten lassen (ohne 
Verzögerung) und den Ausgang an XTAL1

Beides mal kein Erfolg, kein Zugriff auf den ATmega128.

Es muss wohl an einem anderen Fusebit liegen. RSTDISBL kann es denke ich 
nicht sein, da es dazu keine Option im AVRProg gibt (oder?).
Bleibt SPIEN, aber laut andi84 kann man das per ISP nicht verändern. 
Stimmt das nun?

Wie es scheint brauche ich auf jeden Fall einen HV-Programmer. Kennt 
jemand einen günstigen? Dieser muss ja wirklich nur HV programmen 
können, ISP Programmer hab ich ja. Günstigste was ich gefunden habe ist 
der von www.b-redemann.de

Danke

Franz

von Franz-Rainer (Gast)


Lesenswert?


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.