STK 500 Fehlermeldung beim beschreiben von Mega8

Gast #439290
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
Gast #439339
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
Gast #439350
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 ^^
Gast #439396
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.
Gast #439444
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
Gast #439451
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
Gast #439455
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
Gast #439463
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
Gast #439473
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
Gast #439483
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
Angehängte Dateien:
Gast #439491
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
Gast #439506
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
Gast #439508
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...
Gast #439512
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
Gast #439523
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
Gast #439532
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.
Angehängte Dateien:
Gast #439558
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
Gast #439562
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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren