Forum: Mikrocontroller und Digitale Elektronik AVR - Problem


von Ralf (Gast)


Lesenswert?

Hi @ All,

hab ein kleines Problem;
Bin ein Neuling auf dem Gebiet Elektronik, und wollte jetzt mal meine
ersten "Schritte" machen - nur funktioniert da was nicht so ganz
....

Also ich hab meine Programmierschaltung, so wies hier im Forum
beschrieben war auf einer Platine aufgebaut.
Dannach genau wie ebenfalls hier beschreiben, die LEDS und Taster
draufgelötet.
Der einzige Unterschied zu meiner Schaltung, und der hier im Forum
beschriebenen, ist das ich einen AT90S2313 habe und daher die
Anschlüsse AGND & AVCC nicht existieren und somit nicht verdrahtet
sind.

So jetzt zum Problem:
Ich starte PonyProg und kann lesen.
Beim ersten mal hat das brennen funktioniert - allerdings keine Wirkung
gezeigt.
Ich möchte Device löschen, bekomme die Meldung "löschen erfolgreich"
aber wenn ich dann neu auslese, sehe ich immernoch die hex, die beim
ersten mal gebrannt wurde.
Das nächste Problem ist dann gleich, wenn ich ein neues Programm
übertragen möchte bekomm ich von PonyProg die Meldung "Schreiben
Fehlgeschlagen (-21)" ich habe nachgesehen was 21 bedeutet - habe dies
geändert, hat aber absolut nicht gebracht. Das Problem besteht immer
noch.

Weiters ist mir aufgefallen, das auf der Platine irgendwo ein
Kurzschluss sein muss, weil ich zwischen den Anschlüssen, welche aufs
Netzgerät kommen einen Durchgang habe - ich habe die Schaltung aber
jetzt schon Zigmal neu aufgebaut und Kontrolliert - und habe keine
Ungewollten verbindungen .....

Könnte es sein das der AVR kaputt ist??
Mir ist aufgefallen, dass bei meinem ein ständiger Durchgang zwischen
VCC und PB besteht - und bei PD glaube ich das selbe - weiß es jetzut
aber nicht so genau .....

Hoffe mir kann wer Helfen !!!  :-)

von Andreas Hesse (Gast)


Lesenswert?

Hallo,

PonyProgs Meldungen sind manchmal irreführend. Ich nehme an, dass der
Chip noch nicht programmiert ist. Das der Chip defekt ist, glaube ich
erstmal nicht.
Du must natürlich erstmal sicher sein, dass Deine Schaltung tatsächlich
richtig ist und alle Einstellungen in PonyProg zu Deinem Programmer
passen.
Am besten erstmal den AVR-IC herausnehmen und die
"Leerlaufspannungen" messen.
Dann mal den Chip einsetzen und noch mal messen.
Eventuell kann es auch sein, dass die Leitung zwischen Programmer und
Schaltung zu lang ist.

Gruss
Andreas

von Ralf (Gast)


Lesenswert?

Also ob er programmiert ist oder nicht weiß ich jetzt nicht mehr .....
weil, als ich zum ersten mal ausgelesen habe, hat mir ponyprog ein bild
geliefert wo auf der rechten seite in den ganzen zeilen nur striche
waren.

dann hab ich zum ersten mal gebrannt - das hat funktioniert, allerdings
hat es nicht das getan was ich wollte.

seit dem hab ich laut ponyprog immer das selbe programm im avr stehen
und bekomme es nicht mehr raus.
auch wenn ich auf löschen gehe und danach auf lesen, sehe ich das
programm das ich am anfang reingespielt habe ....

bei der schaltung bin ich mir nun ziemlich sicher, dass keine fehler
drinnen sind - hab alles genau angesehen und sogar den dreck weggeputzt
....

finde es nur komisch, dass beim avr selbst, eine verbindung zwischen
GND und VCC ist - habe das mim durchgangsprüfer rausgefunden zufällig
....

von Ralf (Gast)


Lesenswert?

hab jetzt ne baterie fürs messgerät aufgetrieben .....
hab 2,86k zwiachen GND und VCC am AVR - also ein Kurzschluss
nur in der Schaltung ist alles in Ordnung ....

AVR kaputt?????

von raoul4 (Gast)


Lesenswert?

kannst ja mal yaap ausprobieren!
hatte anfangs auch solche schwierigkeiten, aber nach der dritten
schaltung hats dann geklappt :)

http://www.myplace.nu/avr/yaap/

mfg raoul4

von Johannes Raschke (Gast)


Lesenswert?

2,8 Kiloohm ist doch kein Kurzschluß! Eine gewisse Verbindung muß
zwischen Vcc und GND schon bestehen; schließlcih wird der Chip darüber
mit Strom versorgt...
Manchmal stellen sich die 2313 nach dem ersten Mal Programmieren tot.
Das hatte ich auch schon ein paar Mal - dann hat es geholfen, sie mit
reduzierter Versorgungsspannung zu betreiben und dann zu löschen.
Anschließend liefen sie wieder problemlos.

von Ralf (Gast)


Lesenswert?

hmm funktioniert alles nicht :-(

finde nur das 2,8k zu wenig sind ...... hab auf anderen ports ja auch
ein höheren wert .....
mit verminderter spannung löschen geht auch nicht - ich bekomm das alte
programm erst gar nicht mehr raus - das einzige was problemlos
funktioniert ist das lesen .....

wie kann ich bei yaap die hex die mit bascom erstellt wurde aufrufen
???

von Heinz (Gast)


Lesenswert?

Bei 5V Versorgungsspannung und 2,8 kOhm fliessen unglaubliche 1,8 mA.
Damit kriegst du nicht mal ne LED ans leuchten....

Ausserdem solltest du dir dieses "IC mit nem Durchgangsprüfer testen"
abgewöhnen. Es bringt nichts und mit ein bisschen Pech schiesst du dabei
den IC ab.

Du solltest erstmal systematisch deine Schaltung prüfen.
Also IC raus, Voltmeter nehmen und erst mal Versorgungsspannung
zwischen VCC und GND messen (SOLL = 5V) dann zwischen _RESET und GND
(SOLL = 5V muss aber auch vom Programmierstecker auf 0V gezogen werden
können)

Wenn das soweit OK ist, dann solltest du, falls du an die
Programmierpins irgendwelche Taster oder LEDs angeschlossen hast,
prüfen ob die nicht vielleicht das Programmieren verhindern. Im
Zweifelsfall erst mal abklemmen.

Wenn das alles nicht hilft, dann kannst du es nochmal mit einer
reduzierten Versorgungsspannung versuchen  ca. 3V

Wenn das alles nicht hilft, dann kauf dir einen neuen 2313
(und versuch nicht den Widerstand zwischen irgendwelchen PINs zu
messen)

von gerd (Gast)


Lesenswert?

Hallo.

Klingt unwahrscheinlich, aber hört sich alles so an, als ob das
Fuse-Bit gesetzt ist, das weiteres Programmieren verhindert. Das kriegt
man im seriellen Programmiermode zwar eigentlich nicht gesetzt, das ist
nur im Parallel-Programmiermodus zugänglich.

Ich hatte mal einen ähnlichen Fall von hartnäckigem Weigern. Nachdem
ich das Ding dann im STK500 mit einem Parallelprogrammierzyklus gequält
habe, hat es auch seriell wieder getan. Ist mir immer noch unklar, wie
das passieren konnte.

mfg
gerd

von Andreas Hesse (Gast)


Lesenswert?

Hallo,

kann noch sein, dass Du in Deinem Programm (auf dem µC) einen der
Programmmier-Pins als Ausgang verwendest (PB5-PB7) und eingeschaltet
hast. Das ist wohl ein seltsamer Bug der Classic AVRs. Das hatte ich
schonmal. Dann must Du bevor Du den Programmer draufschaltest den Rest
PIN von Hand auf Masse legen, und dann den Programmer einschalten.

Gruss
Andreas

von Ralf (Gast)


Lesenswert?

also folgendes hab das problem jetzt auf andere weise gelöst .....

also die 2,8kohm zwischen GND und VCC waren eindeutig ein Kurzschluss
vom 2313 her ....
Hab die Schaltung komplett neu aufgebaut, mit nem AT90S8535
außerdem hab ich diesen auf nem stecksockel befestigt, damit er zu
messzwecken entfernt werden kann/konnte ......
habe jetzt zwischen GND und VCC einen Wert von über 2MOhm

das mit dem spannungsvermindern, hat leider alles nicht geklappt
hab ehrlich gesagt keine ahnung warum es nach dem ersten mal brennen
nur mehr probleme mit 2313 gegeben hat - jetzt funktionierts eben - mit
dem etwas teureren 8535

@gerd
also soweit ich weiß wird hier im forum die programmierung über den
parallelport beschrieben (wenn ich mich nicht irre)
http://www.mikrocontroller.net/tutorial/equipment.htm
kann ja sein, dass das fusebit gesetzt wurde ....


trotzdem danke an alle für eure antworten .....


P.S.: werde mich die nächsten tage bissi mit bascom beschäftigen, finde
nämlich das es leicht verständlich ist ....

von gerd (Gast)


Lesenswert?

Tja, das ist ein wenig verwirrend: die Programmierung über den
Parallelport ist in Wirklichkeit seriell, nicht parallel. Der
Parallelport wird da ein wenig überwältigt, er produziert ein serielles
ISP-Signal an bestimmten Datenpins. Ist also nur pseudo-parallel.

Echte Parallel-Programmierung braucht einen vollen Port und weitere
Steuerleitungen, wobei der RESET zum Programmieren auf 12 Volt gezogen
wird. Siehe Datenblätter für die Details.

Um das Ganze noch weiter zu verwirren, haben diejenigen Chips, die
nicht ausreichend Leitungen für das parallele Programmieren haben,
einen Hochvolt-seriellen Programmiermodus. Da müssen auch 12 V auf den
RESET, die Programmierung erfolgt aber seriell.

Mit den einfachen Port-Programmier-Interfaces kriegt man nur die erste
Sorte hin. Die zweite und dritte Sorte Programmieren kriegt man nur mit
etwas aufwendigeren Programmiergeräten, wegen der 12 V am RESET.

mfg
gerd

von Ralf (Gast)


Lesenswert?

aha ...... verwirrtbin

bissi kompliziert oder?? g

Hab jetzt eh schon wieder ein Neues Problem :-(
Kennt sich wer mit Bascom aus ????

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
Noch kein Account? Hier anmelden.