PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : difference at 0x00000 beim programmieren größerer Programme



cherzberg
27.05.2007, 18:49
Hallo zusammen,

der oben genannte Fehler kommt bei mir sobald ich ein etwas größeres Programm versuche zu programmieren. Mein Programm füllt den mega8 zu 73% und dann kommt der Fehler bei fast jedem Brennen. bei einem kleinen Programm wo ich nur einen Ausgang toggeln lasse funktioniert alles jedes Mal. Mit avrdude kommt der gleiche Fehler.
Mein Freund hat dieses Proglem auch bei einem mega32. Der Programmieradapter ist aus von Roboternetz mit dem 74HC244, der auch auf der MCS Seite vorgeschlagen wird.
Da wir es mit zwei Programmern und vier Chips und drei rechnern versucht haben, könenn wir wohl davon ausgehen, dass die Programmer und Rechner in Ordnung sind.

Nach ein paar Versuchen ist dann der mega8 tot und wird auch nicht mehr erkannt.
Hat jemand eine Ahnugn was das ist?

Besten Dank und Liebe Grüsse
Christian

torsten1300
27.05.2007, 19:31
Hallo

bei mir ist es auch immer so.um so größer dass programm um so Häufiger klappt es nicht.es werden bei den fehlflaschen jedesmal die fuses geändert.ich nutze immer einen aktiven externen oszillator so kann ich sie immer zurücksetzen. das brennprogramm schreibt immer alles und prüft dann ob es richtig war. könnte mann vieleicht auch blockweise machen mit bestimmter anzahl von wiederholungen bei fehler.

gruß torsten

chr-mt
27.05.2007, 20:21
Hi,
das Problem habe ich nicht, auch nicht bei 94% beim Mega128, allerdings habe ich auch Atmel AVRISPs zur Verfügung.
An den Chips liegt's also sicher nicht.
Könnte irgendein Timingproblem des PCs sein, oder Störungen aus dem Netzteil, daß den Chip versorgt (Spannungsregler mit Kondensatoren versorgt ? Beim Chip 100nF zwischen VCC und GND ?)

Wenn alles nicht klappt könnte man als Alternative einen Bootloader auf den Mega8 machen. Einmal drauf, geht's ja dann per RS232.

Gruß
Christopher

cherzberg
27.05.2007, 22:00
Hallo chr-mt,

die Spannung ist es bestimmt nicht. Ich habe einen 220uF zu Spannungsstabiliesierung hinter dem 7805 und zwei 100nF hinter und vor dem SPannungsregler und zusätzlichan jedem IC zwischen Vcc und GND.
Das sollte eigentlich reichen.

Hallo thorsten1300,
ich hatte mir schon sowas gedacht. Morgen bekommen ich von einem Kumpel einen externe Oszilator. Dann werden wir ja sehen ob der mega8 noch mal will, oder nicht.

Ich wundere mich nur, dass der Programmer hier auf den Seiten und auch auf vielen anderen empfohlen wird und dann solche Fehler kommen.
Da muss doch prinzipiel was faul sein.

Liebe Grüsse und besten Dank für eure schnelle Antwort
Christian

kolisson
28.05.2007, 10:45
die korrekte beschaltung des reset-pins am mega ist auch superwichtig bei der programmierung.

cherzberg
28.05.2007, 15:38
Hi kolisson,



die korrekte beschaltung des reset-pins am mega ist auch superwichtig bei der programmierung.


Was soll denn das bedeuten? Der Programmieradapter ist auf jeden Fall angeschlossen wie er soll. Ich habe sogar einen 10k Widerstand an Vcc gelegt damit der Reseteingang auf richtig auf high liegt.

Liebe Grüsse
Christian

kolisson
28.05.2007, 16:49
hi..
ich will ja nicht sagen, dass es daran liegt, aber der anschluss des reset-pins ist eben auch nicht ohne. besonders wichtig zum schutze des cpu ist laut datenblatt auch die diode.
anbei ein beispiel.

gruss kolisson



und was mir gerade noch einfällt:
hast du schonmal probiert mit der einstellung "portdelay" im bascom was zu erreichen ? ich brauchte das noch nie aber es könnte ja hilfreich für dich sein.

cherzberg
28.05.2007, 20:06
Hi Kolisson,

besten Dank, aber wie ich ja schon geschrieben habe sind es zwei PCs, zwei Programmer und es funktioniert eben nicht immer.
Da ich meinen Programmer von den Roboternetzseite habe, ist natürlich auch die Diode enthalten.

Besten Dank
Christian

kolisson
29.05.2007, 10:53
auf die gefahr hin, dass du dich genervt fühlst:

wenn du sagst das in deinem programmer natürlich die diode drinne wäre, befürchte ich, wir reden aneinander vorbei. bei dem programmer (ich füge mal die schaltung bei) findet auch ne diode. die hat haber nix mit der von mir empfohlenen zu tun. Sie fungiert ja im programmer nur als verpolschutz und klaut dir zudem 0,7volt von den 5volt. in meinem programmer habe diese daher einfach mal weggelassen.

bei funktioniert das programmieren einwandfrei (auch bei grossen programmen). eine mögliche fehlerquelle wäre vielleicht auch ein auf dem laufendes hintergrundprogramm, was die abarbeitung des datenstromes für den parallelport stört.

gruss
kolisson

fsid
29.05.2007, 19:07
Ok, die diode muss nicht unbedingt sein, es funktioniert auch ohne, also es gibt standard-beschaltungen wo die drin ist, es gibt welche da ist sie nicht drin. Aber meiner meinung nach gibt es einfach keine standard-beschaltungen, also, lass sie einfach weg. der eine widerstand ist ok, aber ein 1K tut es auch. Poste bitte deine schaltung. Bei mir ist es auch vorgekommen, es lag an der außenbeschaltung, habt ihr mal versucht den ATmega koplett ohne beschaltung zu programmieren (die programmierbaschaltung muss ja da sein, ist ja klar)? aber was liegt an eueren I/O-Pins?

fsid
29.05.2007, 19:11
und ich denke, nicht die programmierung sondern der vergleich schlagt fehl, also das verify.