mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik STK 500 Fehlermeldung beim beschreiben von Mega8


Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Glaub die überschrift sagt schon einiges aus also ich hab ein neues STK 
500 und wollte das natürlich mal testen hab auch schon früher angefangen 
gehabt n paar µC zu beschreiben mit nem selbstgebastelten 
Paralellport-Programmer. Das hat einwandfrei mit Ponnyprog funktioniert. 
Jetzt hab ich das Stk 500 so verdrahtet wie es in der Anleitung für ISP 
drinnsteht und wollte jetzt halt ein wirklich einfaches Prog zum testen 
drauf laden. ( die includes und port b auf ausgang und low halt um die 
Leds zu testen ) Ok dann beim flashen halt diese Meldung :


Reading FLASH input file.. OK
Setting mode and device parameters.. OK!
Entering programming mode.. OK!
Erasing device.. OK!
Programming FLASH ..      OK!
Reading FLASH ..      OK!
WARNING: FLASH byte address 0x0000 is 0xFF (should be 0x12).. FAILED!
Leaving programming mode.. OK!

So und jetzt frag ich mich einfach was mach ich falsch. ( Achja auch der 
Atmega 8 ist komplett neu und noch eingepackt gewesen )

Gruß Andreas

Autor: Marten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kommt denn der Fehler jedes mal?

Evt. die ISP-Frequenz runtersetzen und nochmal probieren

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja es kommt leider jedesmal ich versuchs einmal mit deinem tipp. Danke 
für die      schnelle Antwort.

Autor: Andreas Kramer (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ne der Fehler kommt leider immernoch. Das Board ist wie oben 
eingestellt.

Gruß Andreas

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sry das ich das 3 mal hintereinander poste aber kann mir jemand 
vieleicht eine externe makefile für einen Atmega 8 und ein Stk 500 geben 
nicht das ich in den Konfigurationen irgendwo einen Fehler gemacht habe. 
Wäre echt super.
Gruß Andreas

Autor: Sebastian Mazur (izaseba)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zieh mal den AREF Jumper zum Programmieren ab.
Bei mir hat es geholfen.

Gruß Sebastian

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab ich aber das will immer noch nicht. Gibt immernoch die selbe 
Fehlermeldung aus:

Reading FLASH input file.. OK
Setting mode and device parameters.. OK!
Entering programming mode.. OK!
Erasing device.. OK!
Programming FLASH ..      OK!
Reading FLASH ..      OK!
WARNING: FLASH byte address 0x0000 is 0xFF (should be 0x12).. FAILED!
Leaving programming mode.. OK!

Ich kapiers ned was das Ding von mir will ^^

Autor: Ronny (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Versuch doch mal die Device-Signature mit dem AVR-Studio auszulesen.Wenn 
die stimmt klappt zumindest schonmal die Kommunikation mit dem AVR.

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja die klappt hab ich schon mal versucht gehabt das einzige was der 
devinitiv ned will ist das Programm auf den µC zu übertragen aber warum 
weiß ich nicht.

Gruß Andreas

Autor: Marten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was hast du denn bis jetzt alles an Kabeln drauf?
Am besten mal alle abmachen und nur mit dem ISP-kabel probieren.
Und wenns klappt, dann erst das Kabel zu den LED's draufstecken.
Benutzt du auch den grünen Sockel?

Oder evt. auch mal nen andren Port probieren (PORTC). Im Port b sind ja 
die ganzen Leitungen für die ISP-Kommunikation.

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Löscht du deinen Controller vorm Beschreiben?

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja ich hab ihn mehrfach gelöscht und da kam nie eine Fehlermeldung. Er 
steckt im grünen Sockel und das 6-Adrige ISP kabel geht auch zum Grünen 
Sprog2 so wie das in der Anleitung steht ( Auch die Rote seite zeigt 
immer zu Pin 1 ). Und auch wenn ich außer dem ISP Kabel nix dran hab 
ändert sich an der Fehlermeldung nichts.

Gruß Andreas

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ja die klappt hab ich schon mal versucht gehabt das einzige was der
> devinitiv ned will ist das Programm auf den µC zu übertragen aber warum
> weiß ich nicht.

Wenn ich das richtig sehe, liegt das Problem nicht darin, dass das 
Programm nicht zum STK500 / ATmega8 übertragen wird, sondern darin, dass 
das Programm nicht wieder von dort zurück gelesen werden kann.

Hast du mal probiert, ob dein Controller nicht doch schon das gewünschte 
Programm ausführt?

Gruß,
Magnetus

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann sollten eigendlich die Led´s Die ich mit port b verbinde leuchten 
tuen sie aber nicht. Mein Programm ist ja extra total einfach gehalten 
um einfach nur die Funktion des STK zu testen :

#include <avr/io.h>
#include <stdint.h>


int main(void)
{
  DDRB |= (1<<0);
  /*PORT B AUF AUSGANG*/
  PORTB |= !(1<<0);
  /*PORT B AUF LOW*/
}

Hab das sogar eben mit noch einem neuen µC probiert. Selbe Fehlermeldung 
wieder ist wieder ein Fabrikneuer Atmega 8 (16PU)

Gruß Andreas

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach zu dem Programm die Beschreibung stimmt ja nicht ganz es wurde 
früher der gesammte port geschaltet aber jetzt nurnoch pin0. Davor gings 
aber auch nicht .

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab gerade mal probiert das Ding auszulesen und das hat funktioniert 
auch das beschreiben mit dieser ausgelesenen Hexfile (müsste eigendlich 
eine leere gewesen sein weil das Device ja gelöscht ist) aber da ging es 
dann ich tipp mal das meine Makefile irgendwie nicht geht könnte mir 
jemand eine geben die für den Atmega 8 neu mit stk500 geht ?

Gruß Andreas

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich weiß zwar nicht, was gcc daraus macht, aber die Zeile

PORTB |= !(1<<0);

wird bestenfalls zufällig das machen, was Du eigentlich willst.
Versuchs mal mit:

PORTB &= ~(1<<0);

oder, weil es erstmal nur um den Test geht:

PORTB = 0;

Gruß Johannes

Autor: Andreas Kramer (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ok ich hab das jetzt auch gesehen gehabt auch das ich am ende while(1); 
vergessen hab aber das Problem ist nicht das ich beim Kompiliern Fehler 
bekomme sondern beim beschreiben des µC mit dem Programm:


Selbst mit diesem Prog will das nicht :


#include <avr/io.h>

int main(void)
{
  while(1);
}

und das sollte doch wirklich keine Fehler enthalten =)
Ich glaube immernoch das irgendwas an meiner Makefile ned funktioniert.

ich hab die mal angehängt könnte mir Sagen ob die so für das Stk500 geht 
?

Gruß Andreas

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das while(1) am Ende ist völlig irrelevant für das, was Du jetzt erstmal 
herauskriegen musst...

Aber warum probierst Du nicht erstmal mit dem AVRstudio oder zumindest 
mit Ponyprog, ob die Kommunikation wirklich in allen Punkten 
funktioniert?

Ansonsten mein Vorschlag: Mach ein neues Thema auf "Hilfe! Ich blicke 
beim AVR-GCC Makefile nicht durch!" Dann kommen solche Nicht-GCC-Idioten 
wie ich nicht mehr auf die Idee, sich noch einzumischen ;-)

Gruß Johannes

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ist so mit nem Slbstgebastelten ISP-Paralellkabel hab ich es immer 
einwandfrei hinbekommen in Ponnyprog uch mit selbstgemachtem makefile 
nur beim STK 500 will das Ding in AVR Studio 4 einfach nicht. Ponnyprog 
hab ich gerde getestet da behauptet er Falsches Device. Bei der 
Configuration hab ich oben angegeben : Si Prog 1/0 und Com 1 alle 
anderen Programme wie Avr Studio hatte ich da aus.

Gruß Andreas

Autor: Parker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kannst Du das STK500 nicht testweise über die serielle Schnittstelle 
anschließen und probieren, ob es dann funktioniert? Wenn das klappt, 
kannst Du ein Hardwareproblem ausschließen.
Nimm dazu das AVR Studio und ein kurzes Testprogramm...

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab es über die Serielle Schnittstelle angeschlossen und das 
Testprogramm das ich übertragen will ist ja uch nicht gerade lang oder 
schwierig. Oder gibt es irgend ein Programm mit dem man das STK auf 
seine Funktion überprüfen lassen kann ?

Gruß Andreas

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Äh, Ponyprog SI ist was anderes als STK500...

Also nimm nochmal Dein selbstgebasteltes ISP-Parallelkabel und stell 
Ponyprog auf Parallel, und mach auf jeden Fall "Probe".

Ansonsten mit STK500 und AVRstudio: WELCHE von den diversen Funktionen 
geht nicht? Oder gehen ALLE nicht (Gaaanz wichtig: "Fuses" und 
"Advanced/Signature Bytes")? Und welche FEHLERMELDUNGEN kommen dann?

Mensch, lass Dir doch nicht immer erst alles aus der Nase ziehen ;-)

Gruß Johannes

Autor: Andreas Kramer (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Tut mir echt leid aber ich hab das leider noch nie gemacht wenn ihr noch 
Infos braucht einfach sagen ich schau dann nach. Ich bin ja froh das mir 
hier so viele helfen. Zu deinem Vorschlag ja das Paralellprogrammiern 
mit der selbstgemachten Platine und dem Adapter geht einwandfrei mit der 
paralelleinstellung von Ponnyprog. An den Fuses und Lockbits und den 
"Advanced/Signature Bytes" hab ich nichts verändert das ist alles so wie 
nach der neuen Installation von AVR Studio 4. Was geht : das Auslesen 
des Programmspeichers, das Löschen des Devices, also im allgemeinen 
alles auslesen auch bei den Fuse und Lockbits.

Was nicht geht ist das schreiben von Programmen auf den µC. 
Fehlermeldung :

Reading FLASH input file.. OK
Entering programming mode.. OK!
Erasing device.. OK!
Programming FLASH ..      OK!
Reading FLASH ..      OK!
WARNING: FLASH byte address 0x0000 is 0xFF (should be 0x12).. FAILED!
Leaving programming mode.. OK!

Der absolut gleiche Error kommt wenn man auf Verify geht. Ob das 
Schreiben von den Lockbits und Fusebits geht weiß ich nicht das habe ich 
noch nicht probiert.

Die Lockbits tehen alle auf Mode 1. Also keine Sperre.
Die Fuses hab ich auf dem Bild im Anhang.

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich lese da "Reading Fuses 0xFF 0xFF".

Das ist Mist. Denn zumindest ein Fuses-Bit muss unbedingt 0 sein und 
eines unbedingt 1, damit Du ISP machen kannst, nämlich SPIEN (0) und 
RSTDISBL (1).

Vorschlag: Koppel mal alles ab, was Du an den Ports hängen hast, und 
jumper das STK mal strikt nach Anleitung für den mega8 mit externem 
Clock.

Wenn Du dann immer noch "Reading Fuses 0xFF 0xFF" kriegst, stöpsel mal 
um für High Voltage Programming (User's guide Seite 3-11 ff) und stell 
im STK500-Dialog den Programming mode auf "PP/HVSP mode" um und probier 
noch einmal.

Außerdem musst Du auf jeden Fall im Tab "Advanced" für die Signature 
Bytes nach Klick auf "Read" die Folge "0x1E 0x93 0x07" erhalten.

Solange das nicht hinhaut, brauchst Du gar nichts weiter zu versuchen.

Gruß Johannes

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok ich komme mir gerade sio richtig und absolut blöde vor. Ich hab 
gerade mal dran gedacht nachzuschauen ob ich das Programm auch wirklich 
auf ISP-programming gestellt hab und was steht da "PP/HVSP". Sry leute 
das ich euch so die Zeit verschwendet hab wegen so nem .... Fehler und 
danke für die Hilfe. Jetzt liest und schreibt der auch alles.

Gruß Andreas

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na dann haben wir es doch endlich :-)

Keine Ursache.

Gruß Johannes

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.