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
Kommt denn der Fehler jedes mal? Evt. die ISP-Frequenz runtersetzen und nochmal probieren
Ja es kommt leider jedesmal ich versuchs einmal mit deinem tipp. Danke für die schnelle Antwort.
Ne der Fehler kommt leider immernoch. Das Board ist wie oben eingestellt. Gruß Andreas
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
Zieh mal den AREF Jumper zum Programmieren ab. Bei mir hat es geholfen. Gruß Sebastian
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 ^^
Versuch doch mal die Device-Signature mit dem AVR-Studio auszulesen.Wenn die stimmt klappt zumindest schonmal die Kommunikation mit dem AVR.
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
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.
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
> 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
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
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 .
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
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
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
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
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
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...
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
Ä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
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.
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
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
Na dann haben wir es doch endlich :-) Keine Ursache. Gruß Johannes
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.