www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik STK500: Kein vernünftiges schreiben möglich


Autor: Main666 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich weiß, Probleme mit dem STK500 / AVRStudio wurden schon zuhauf
gepostet, ich konnte aber keine Lösung zu meinem Problem finden.

Das Problem: Ich kann weder im ISP noch im High Voltage Mode
zuverlässig Daten auf AVR`s schreiben. Flash wird geschrieben aber
fällt beim Verify durch, EEPROM kann überhaupt nicht geschrieben
werden. Fuses können gelesen aber ebenfalls nicht geschrieben werden.

Ich führe mal auf, was ich alles gecheckt habe:

- Neueste Software auf dem STK und AVRStudio 4.12 Build 472
- Verkabelung und Jumper nach STK500 Handbuch
- Diverse AVR´s ausprobiert (8515,Mega16,Mega32)
- Spannung und Takt am AVR gemessen
- ISP-Takt liegt laut AVRStudio deutlich unter 1/4 Systemtakt
- Fuses können ausgeschlossen werden (8515 hat nur 2, sollte bei High
Voltage keinerlei Probleme machen)
- 2. PC ausprobiert um Probleme mit der seriellen Schnittstelle
auszuschliessen


Jetzt fällt mir nichts mehr ein.

Wäre für jeden Hinweis / Hilfe dankbar.

Grüße

Main666

Autor: Ritter Knolte II (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Main666

Spontan fällt mir da nur die Betriebsspannung des STK500 ein.
Welches Steckernetzteil benutzt Du ?

Gruß,

Autor: Main666 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hatte zuerst ein schwaches (300mA) Netzteil dran, jetzt sind´s 12V und
1.2 A, hatte hier aber auch schon mit Labornetzteil etc. probiert. STK
zieht übrigens 100 bis 120 mA @ 12V, scheint halbewegs zu passen. (Kann
das mal jemand bestätigen?)


Gruß

Main666

Autor: benites (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

Das gleiche Problem habe ich mit meinem STK500 Board. Und zwar, ich
habe einen Atmega88 programmiert (in ISP programming mode)und hat es
geklappt. Nun wollte ich den gleichen Mikrocontroller benutzen, aber
mit anderer Fuse-Bits Einstellung. Und klappt´s nicht. :-(
Meine Frage ist: Kann man die Fuse Bits irgendwie ändern???  Danke im
Voraus

Grüße
Benites

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

mit AVRStudio kann man die Fuses ändern.

Es grüsst,
Arno

Autor: benites (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Conlost,
Danke für die Antwort,

Das Problem ist, dass ich alles versucht habe, aber klappt es nicht.

Gruß
Benites

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast du den HV-parallel-programming-mode schon ausprobiert?

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Benites,

diese Meldung kommt bei mir, wenn der Controller
keinen Takt bekommt.

Welche Taktart hast du auf dem Board eingestellt?

Es grüsst,
ArRe

Autor: benites (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich habe grade diesen Mode verwendet und lässt sich alle Fenster der
STK500 Einstellung (Program, Fuses, Lockbits, Advanced,...)lesen, ohne
Fehlermeldung zu kriegen. Der Device lässt sich auch löschen.
Aber wenn ich Fuse bits einstelle, bekomme andere Meldung, die ich
schon korrigiert habe, aber nichts. :-( Die Fehlermeldung erscheint
wieder
Außerdem wenn ich auf Signature klicke, bekomme ich folgendes:
0xFF 0xFF 0xFF Warning: Signature does not match select device.

Gruß
Benites

Autor: benites (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Conlost,
Die ISP Freq lautet: 28.36 khz. Die habe auch auf 1/4 runtergestellt,
sogar bis 4 khz  aber keine Verbesserung.
Gruß
Benites

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sowas hatte ich auch mal als der Controller im
falschen Sockel gesteckt hat.
Der Atmega88 gehört in den grünen Sockel.

Gruß,
Arno

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
im richtigen Sockel (SCKT3200A2) steckt er? Und auch die richtige
ISP-Verdrahtung (SPROG2)?
Man kann komischerweise Controller 1a löschen und das Beschreiben geht
dann schief, wenn man den falschen Sockel erwischt hat (hatte ich beim
Wechsel Mega162 auf Mega32...)

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn die ISP-Verdrahtung falsch ist, dann geht garnix,
dann kommt sofort beim lesen der Fuses die Fehlermeldung.

Es beruhigt mich übrigens sehr, das ich nicht der Einzige
bin der schon mal den falschen Sockel benutzt hat.   ;-)

Gruß,
Arno

Autor: benites (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo alle zusammen

um erlich zu sein, benutze ich eine externe Platine die am STK500
verbundet ist. Dafür benutze ich den ISP10PIN Anschluss, um Programme
auf meinen Mikrocontroller runterzuladen. Die Platine wird von AVR
Studio erkannt. Andere runtergeladene Programme haben gekappt. Aber nun
wollte ich Fuse Bits ändern.

Gruß
Benites

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Bild besagt nur, dass das STK500 gefunden wurde...

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast laut Bild auf parallele Programmierung eingestellt.
Ändere das mal auf ISP Programmierung.

Gruß,
Arno

Autor: benites (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja klar, das STK500 wurde gefunden und danach habe Programme
runtergeladet. So weit so gut. Aber wie gesagt Fuse-Bits-Änderung ist
mein Problem. Andererseits geht mit ISP Programmierung  auch nicht.

Grazie

Gruß
Benites

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Programm das du in den Controller geladen hast funktioniert?
Ich kann mir nicht vorstellen, daß das programmieren des HEX-Files
funktioniert und das programmieren der Fuses dann nicht.

Das Ganze ist etwas verwirrend.

Gruß,
Arno

Autor: benites (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
Das Program auf dem Mikrocontroller funktioniert. Schon probiert. Die
Fuse Bits für dieses Runterladen haben auch gefunkt. Nun wollte ich das
gleiche runtergeladene Programm mit andere Fuse Bits testen. Und das
geht nicht.
Gruß Benites

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welche anderen Fuse Bits waren das denn?

Wenn du die Fuse Bits für den Takt änderst,
kann es passieren, das nichts mehr geht,
weil der Controller dann keinen Takt mehr
bekommt.

Gruß,
Arno

Autor: benites (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einstellungen, die vorgenommen wurden:
•Boot Flash section size = 1024 words aktivieren
•Preserve EEPROM aktivieren
•Brown-out detection level at VCC=4.3V aktivieren
•Ext. Crystal Osc.: Frequ. 3.0-8.0 MHz, Startup-Time 16K CK/14CK+ 65ms
aktivieren
•Divide clock by 8 internally deaktivieren!


Danach wird es folgendes gezeigt: Reading fuses: 0xF9, 0xD4, 0xFD  d.h
die Fuse Bits wurden erfolgreich gesetzt.

Nun wollte ich z.B: Ext. Full-swing Crystal; Start-up time
PWRDWN/RESET: 16K CK/14 CK + 65 ms    wählen.

Wie kann ich prüfen, ob Takt dabei ist. Wie gesagt mit dieser Option
habe alles probiert

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du auf deiner Platine einen Quarz mit den 2 Kondensatoren
als taktquelle oder einen externen Taktgenerator angeschlossen?
Du hast die Fuses für externen Taktgeber eingestellt.
wenn nur ein Schwingquarz am Controller ist, dann geht das nicht mehr.
Du mußt einen externen Takt an XTAL1 anschließen, dann kannst du
die Fuses umprogrammieren.
Oder steck den Controller ins STK500 und programmiere die Fuses neu.

Gruß,
Arno

Autor: benites (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich verwende ein Keramik Chip Resonator. Wie kann ich wissen, ob der
Mikrocontroller einen Takt bekommt. Ich glaub, der Fehler liegt daran.
Gruß

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit einem Oszilloskop kann man festellen ob ein Takt vorhanden ist.
Ohne bleibt nur noch, den Controller ins STK500 zu stecken und
die Fuses richtig einzustellen.
Ein Keramik Resonator ist soetwas ähnliches wie ein Quarz,
da kommt kein Takt raus, wenn man die Fuses auf externen Taktgenerator
eingestellt hat.
Ein Quarz und auch ein Keramik Resonator benötigen zum schwingen
die Elektronik die im Controller enthalten ist.

Gruß,
Arno

Autor: benites (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nachdem ich einen externen Takt an XTAL1 angeschloßen habe, konnte ich
die Fuses umprogrammieren. Vieden Dank

Gruß
Benites

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.