Hi, ich habe folgendes Problem: Beim schreiben meiner .hex datei in meinen Atmega2561 bekommen ich einen Fehler an Adresse 1FF00. Die passiert aber nur, wenn meine Programmgröße über oder gleich 50% ist. Als Programmierer benutze ich den Standard Parallelportadapter mit 74HC244. Das Programm übertrage ich direkt aus Bascom in den Controller. Bascom meldet nach dem schreiben und auslesen den Fehler "Difference at 1FF00". Was kann das sein? Ich bin langsam am verzweifeln, da ich das neue Programm dringend einproggen muss. MfG
Kauf dir n anständiges Programmiergerät, könnte wetten das Ding hat Probleme mit der Adressierung. Knut
@ Felix H. (Gast) >Fehler an Adresse 1FF00. Die passiert aber nur, wenn meine Programmgröße >über oder gleich 50% ist. Hmm, das ist die Grenze über 128kB. >Das Programm übertrage ich direkt aus Bascom in den Controller. Bascom >meldet nach dem schreiben und auslesen den Fehler "Difference at 1FF00". Entweder ist das kein Atmega2561 oder du hast einen anderen im BASCOM eingestellt. MfG Falk
@Knut: warum einen anderen Programmierer? Das ist doch der Standard ISP-Programmierer... @Falk: also auf dem Chip steht Atmega2561 drauf. Habe auch in Bascom den richtigen eingestellt. Ansonsten würde Bascom sofort rummeckern. Ist aber nicht der fall... sonst noch ne idee? MfG
Felix H. schrieb: > Fehler an Adresse 1FF00 Wenn das die Wortadresse ist, dann ist der Chip schlicht voll. Wäre ja eine Möglichkeit ... Gruß Jobst
>@Knut: warum einen anderen Programmierer? Das ist doch der Standard >ISP-Programmierer... Vor 10 Jahren war er das vieleicht mal;) >@Falk: also auf dem Chip steht Atmega2561 drauf. Habe auch in Bascom den >richtigen eingestellt. Ansonsten würde Bascom sofort rummeckern. Ist >aber nicht der fall... > >sonst noch ne idee? Vieleicht kann Bascom über 128k gar nicht mehr programmieren? Nur so ne Vermutung.
@Jobst: warum denn voll? Ein Atmega1281 wäre an diesem Punkt voll... aber der 2561 hat doch den doppelten speicher. @holger: bei mir hat der immer zuverlässig funktioniert. Also warum was neues Probieren wenn das bewährte funktioniert ^_^ mit welchem Programm könnte ich die übertragung denn noch machen? Bascom spuckt mir die .hex ja aus. könnte es an der Kabellänge liegen? Der LPT Port ist direkt auf der Platine mit dem Atmega mit drauf. Verbindung zum PC erfolgt mit 3 Meter 25-Poligem Sub-D Kabel. MfG
@holger (Gast) >Vieleicht kann Bascom über 128k gar nicht mehr programmieren? >Nur so ne Vermutung. Dann sollte der IC nicht wählbar sein bzw. keine Include Files dafür existieren. Wühl Also meine BASCOM-Demo hat ein m2560def.dat und m2561def.dat. Sollte also gehen.
@ Felix H. (Gast) >@Jobst: warum denn voll? Ein Atmega1281 wäre an diesem Punkt voll... >aber der 2561 hat doch den doppelten speicher. Eine Wort-Adresse ist zwei Byte breit. >mit welchem Programm könnte ich die übertragung denn noch machen? Bascom >spuckt mir die .hex ja aus. Wie groß ist dein HEX-File? >könnte es an der Kabellänge liegen? Nein. Die unteren Adressen macht er doch problemlos. MFG Falk
Hi, dann sollte er mir beim compilieren aber nicht 50% Speicher belegt anzeigen. Ich habe schon Atmega32 voll programmiert. Da sagt er dann schon bescheid, wenn der Speicher zu klein ist. Meine .hex ist laut windoof-explorer 358KB groß, die .bin hat genau 128KB. MfG
Felix H. schrieb: > Meine .hex ist laut windoof-explorer 358KB groß, Die Dateigröße ist erstmal irrelevant, es kommt auf den Inhalt an. In die Hexdatei kann man mittels Textbetrachter oder Texteditor reinsehen, in jeder Zeile steht die Adresse, an die die Daten gebraten werden sollen. Diese ist aber erstmal nur 16 Bit breit, reicht also nur bis 64 KB. Der Offset zu größeren Adressräumen wird durch spezielle Zeilen in der Hex eingestellt. Einfach mal die Hex danach untersuchen. ...
Hi, hier meine .hex mit einem Programm was sich übertragen lässt mit 49% sowie eine hex mit 50%, was dann den fehler ergibt. Ich hoffe jemand kann helfen... MfG
Felix H. schrieb: > Als Programmierer benutze ich den Standard Parallelportadapter mit > 74HC244. Alles was über die 64K an Binärcode hinausgeht muss mit einem "Extended Segment Address Record" eingeleitet werden. Das ist dann der Offset für den nächsten 64K-Block. Dieser ist in deinem "Geht-Nicht"-Hex-File auch vorhanden. Habe das File mal mit dem JTAGICEmkII auf einen 2560 geflasht. Kein Fehler. Verify Ok. Entweder kann der Brenner keine Adressen > 64K verarbeiten oder das Programm, welches die Hex-Daten in Binärdaten übersetzt, kommt nicht damit klar. Tippe mal auf letzteres. Am Bascom und dem erzeugten Hex-File liegt es jedenfalls nicht. mfg.
interessant... was sollte ich als nächstes versuchen? Den Programmer wechseln ist eher schwierig. Ist momentan kein anderer vorhanden und der jetzige ist wie gesagt, bereits auf der Platine integriert. Sollte ich erstmal ein anderes Programm zum übertragen verwenden? Ich hab mich schon ein wenig in PonyProg eingelesen. Sollte ichs damit mal testen? Dabei steht allerdings, dass das Programm den EEPROM mit überschreibt und damit löscht! Ich habe auf diesem allerdings Daten abgelegt. Geht das auch ohne EEPROM löschen? Gruß Felix
Ich kenne deinen Programmer nicht. Lässt der sich mit AVR-studio bedienen? Mehr habe ich auch nicht gemacht, als mit AVR-Studio das Hex-File geflasht. Nur mit einem anderen Brennner. Über JTAG. Aber mit AVRISP geht es genauso über SPI. EEPROM wird nicht angerührt. mfg.
Möglicherweise wäre es hilfreich wenn Du Deinen Programm mal genauer spezifizierst. Denn so ganz klar ist (mir jedenfalls) noch nicht, ob es nicht doch am Programmer liegt. Falls es ein selbstgebauter ist, wäre die Schaltung gut und evtl. der Link von wo Du die Schaltung hast. Falls es ein gekaufter ist, wäre hier auch ein Link hilfreich.
Es muss natürlich heissen: Möglicherweise wäre es hilfreich wenn Du Deinen Programmer mal genauer spezifizierst.
Hi, ich verwende diese Schaltung hier: http://www.rn-wissen.de/index.php/AVR-ISP_Programmierkabel vllt sollte ich mir mal langsam einen anderen anschaffen... vorausgesetzt es liegt daran. Über die Paralelle Buche dauert das schon 4 minuten bis die 128K da reingedrückt sind... und dann das ganze nochmal auslesen =P was haltet ihr von dem AVR ISP MK2? Vom Preis her recht annehmbar.
Hm. Nach der Beschreibung ist das Ding kompatibel zum STK200 bzw. STK300. Da die schon recht alt sind wäre es evtl. möglich, das die Software dazu die gröesseren Megas nicht unterstützt. Hardwaremäßig sehe ich kein Problem, da ja das normale MISO/MOSI-Interface verwendet wird. Evtl. hilft ein Update, wobei mir nicht klar ist, wo man das jetzt noch her bekommt. Allerdings hatte ich immer nur ein STK500 und das MKII; kann also nichts aus eigener Erfahrung dazu sagen. Vielleicht/hoffentlich kennt ja jemand anders hier den Programmer besser.
ich habe ebenfalls einen stk200-kompatiblen selbstgestrickten mit 74xx244 (Parallelport) und ein AVRISPmkII (USB). Unter Linux mit avrdude ist der am Parallelport bei mir fast doppelt so schnell.
Felix H. schrieb: > was haltet ihr von dem AVR ISP MK2? Vom Preis her recht annehmbar. Auf jeden Fall erste Wahl. mfg.
Hi, hab mir das Teil nun bestellt, ich hoffe das es dann damit geht ^_^
soo, da bin ich wieder. Teil bestellt, geliefert, angeschlossen.... GEHT NET! habe die aus Bascom erzeugte .hex file im AVR Studio eingefügt und Programmiert. Jetzt bekomme ich IMMER den Fehler: WARNING: FLASH byte address 0x003E is 0x00 (should be 0xDD).. FAILED! Habe schon verschiedene Geschwindigkeiten ausprobiert... 125K, 20K, 6K... immer das gleiche =( Jetzt bekomme ich auch kein "kleines" Programm mehr in den Controller, was ja vorher mit dem alten Progger noch ging... HILFE!!!
>Habe schon verschiedene Geschwindigkeiten ausprobiert... 125K, 20K, >6K... immer das gleiche =( Jetzt bekomme ich auch kein "kleines" >Programm mehr in den Controller, was ja vorher mit dem alten Progger >noch ging... Wie sieht deine Schaltung an den ISP Pins aus?
schock... der alte Programmierer hat eben auch einen Fehler bei 003E rausgeworfen... dachte schon der Chip wäre hin, aber beim zweiten Anlauf hat es dann doch geklappt. Habe das funktionierende Programm mit dem alten Progger wieder drin. Beschaltung? Ich habe nur einen 10K Pullup an Reset. Mehr nicht. Den 100K am MISO vom alten Programmierer habe ich abgeknippst. Sollte der dranbleiben? Dachte das wäre alles in dem USB-Wunderteil integriert... Gruß
Was für einen schrottigen Wackelkontaktaufbau hast du denn? Nein, ich will es eigentlich gar nicht wissen.
wieso wackelkontaktaufbau? Ist alles auf Platine gelötet... von der Platine geh ich mit 25 Poligem Sub-D auf den Programmer. Hab mir heute ein extra Kabel dafür gemacht.
hi, habe jetzt eine andere Platine mit Atmega128L dran. Beim flashen kommt folgendes: Reading FLASH input file.. OK Setting mode and device parameters.. OK! Entering programming mode.. OK! Programming FLASH .. FAILED! Leaving programming mode.. OK! ich weiss langsam nichtmehr weiter... die kabellänge vom 6er Wannenstecker bis zum µC beträgt gute 15cm... Ist das etwas zu lang?
So, habe es jetzt nochmal am mega2561 versucht... Beim ersten Versuch hat das Programmieren sofort funktioniert. Auch die überprüfung ohne Fehler =) Danach gehts aber nichtmehr! Egal was ich mache... Versorgung weg, MK2 neu verbinden an PC sowie Atmel, AVR Studio neu starten... nichts geht. Erst wenn ich das Programm wieder über den alten Parallel-Programmierer reingeladen habe, kann ich erneut EINMAL mit dem MK2 proggen. Dann wieder gleiches Phänomen. Hatte das schonmal jemand? Find ich absolut seltsam...
Würd' jetzt mal raten, daß die Grundbeschaltung des ATM2561 nicht passt, genauer der 100nF C fehlt. Felix H. schrieb: > Beschaltung? Ich habe nur einen 10K Pullup an Reset.
hi, also die 100n sind schon dran ;)... ich habe das mit dem "nur" nen Pullup auf die Beschaltung der Programmierleitungen bezogen. ich versteh das nicht... die Schaltung selbst ist ja schon etwa ein halbes Jahr alt und läuft tadellos. Bin nur jetzt über die 50% mit der Programmgröße gekommen und da zickt der alte Progger rum!
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.