ISP programmierung beim ATmega8a funktioniert nicht

Gast #2500685
Lesenswert?

Hallo, ich hab ein kleines Problem. eigentlich dachte ich es wäre ganz 
einfach, zusammenlöten, ISP anschließen und programmieren. Aber der 
Atmega wird nicht erkannt :(

Also mal von Anfang an.
Ich habe mir fertige Platinen gekauft, auf denen ein Atmegax8 passt.
Die Platine hat einen 10pol ISP,  3 Pufferkondensatoren und eine 
Resetlogik, 11kOhm an Plus, 100nF an Minus. VCC ist mit AVCC verbunden. 
Also eigentlch nichts aufregendes. Ansonsten sind die Port an 
Pfostenstecker geführt, die aber noch nicht bestückt sind.

 Ich dann habe ich meinen ISP Programmierer (mySmartUSB light) genommen 
und versucht den Atmega8A-16AU zu programmieren, ok eigentlich hab ich 
nur versucht die CPU id auszulesen, aber er findet die CPU nicht.

Ich habe alle Leitungen überprüft, vom ISP-Sockel bis zum Atmega8A, alle 
waren einwandfrei. Zu den Nachbaranschlüssen entsteht kein Kontakt 
(Brücke)
1 MOSI- 15, 3 NC , 5 RST 29, 7 SCK -17, 9 MISO -16
2 VCC - 4+6, 8+10 GND 3+5 (PinISP name - Pin MPU)

Bei ID auslesen hab ich die Spannung gemessen sie lag bei 4,88V.

Der Atmega8A-AU 1133  ist neu. Das Auslesen hab ich mit AVRstudio 
gemacht. Der ISP Programmierer funktioniert problemlos mit meinem 
Experimentierbord Atmega16. Der Quarz und die Kondensatoren für den 
Quarz sind nicht bestückt (Meines Wissens arbeitet er mit dem internen 
Takt, wenn er neu ist)

Hat jemand eine Idee woran es liegen könnte? Oder was ich mal testen 
könnte?
Gast #2500695
Lesenswert?

Mach mal ein aussagekräftiges Bild von der ISP-Chip Verbindung.

Mikel schrieb:
> 1 MOSI- 15,
> 3 NC ,
> 5 RST 29,
> 7 SCK -17,
> 9 MISO -16
> 2 VCC - 4+6,
> 8+10 GND 3+5
(PinISP name - Pin MPU)

Verbinde auch Pin 18 mit Vcc und 21 mit GND.

Prüfe noch mal (mit einem Durchgangsprüfer) ob die Leitungen wirklich zu 
den Pins vom Chip gehen.
Gast #2500701
Lesenswert?

Der Atmega16 (mit dem es geht) läuft auch nur mit 1 MHz(intern), Der ISP 
takt ist 57,6kHz (defaultvorgabe)

Pin18, AVCC liegt an VCC, eigentlich gehört da eine Induktivität rein, 
da ich die aber noch nicht habe ist es mit 0R gebrückt.
Pin 21 liegt an GND, liegt auch an.
 Die Leitungen gehen wirklich von der Spitze des Stecker bis da, wo das 
Beinchen ins IC geht, habe alles durchgemessen.
 20 (Aref) ist offen.
Bild kommt gleich, dauert ein bißchen.
Gast #2501185
Lesenswert?

Im C8 sehe ich kein Problem, der C ist von VCC nach GND, da gehört er 
auch hin. Wenn die Spule drin wäre, wäre ich mir auch nichts so sicher, 
ob das so gut ist. Ist aber die Vorgabe von der Platine,
 Ich hab nochmal ein Schaltplan, so wie er gelötet ist. das was weiß 
durchgestrichene ist nicht bestückt, die L1 wurde überbrückt. C8 ist 1u 
statt 10u, vom Reset sind nur C6 und R1 bestückt.
Angehängte Dateien:
#2501195
Lesenswert?

Der C ist auch kein Problem (und die fehlende Spule die du durch eine 
Brücke ersetzt hast auch nicht).
Was aber ein Problem sein könnte: Zwischen die Vcc/GND Pärchen auf jeder 
Seite des µC müssen 100nF rein.

Der Mega läuft, sobald er Versorgungsspannung hat.

Also prüfen: liegt an allen Vcc Pins auch 5V gegen Masse an.

Ansonsten bleibt nur noch, dass du irgendeinen Aderdreher im ISP-Kabel 
hast. Hast du das Kabel selbst gemacht?
Gast #2501275
Lesenswert?

das Kabel habe ich nicht selber gemacht, das ist ein 6pol-6pol, aber den 
adapter habe ich selber gemacht um auf 10 pol zu kommen. ich habe mit 
dieser Konstellation aber schon ein Mega16 mehrfach geflashed, und auch 
ein Mega128 geflashed. daraus schliese ich das es einwandfrei 
funktioniert.
 ich habe von dieser Platine auch schon 2 bestückt, die sich beide nicht 
programmieren lassen. Die Lötpunkte (besonders die ISP und VCC ) hab ich 
mit eine Lupe 45x untersucht. Auch alle Anschlüsse mehrfach gemessen, 
alles sieht einwandfrei aus.
  Meine einzigste Vermutung ist das die Atmegas nicht funktionieren, 
kann man die noch irgendwie anders testen ob sich da was tut? Ein 
Programm bekomme ich da ja nicht rein.
#2501303
Lesenswert?

Was ist mit der Spiegelung des ISP-Steckers? wenn da von der L-Seite 
anstatt von der B-Seite gesteckt wird, kommt nur Blödsinn heraus.

Atmegas sind recht robust, bisher haben ich nur dann einen atmega8 
gekillt, wenn ich 12V drangelassen habe. auf falsche Spannung im Bereich 
von 0V ..5V hat er nie ernstlich reagiert. Das müsste schon an Hardware 
oder Software der ISP-Schnittstelle liegen.
Gast #2501945
Lesenswert?

Ich hab nen 11k genommen, habe gedacht der müßte auch gehen. Habe leider 
kein anderen Wert da. Er ist etwas hochohmiger, deshalb dauert der rest 
evt etwas länger.

 Ich habe es jetzt geschafft die Boards anzusprechen. Ich hatte noch 
einen anderen ISP programmer im Schrank, einer für 3Euro aus china, für 
den Preis mußte ich ihn einfach kaufen :D, unter Windows lief er nicht. 
vermutlich ein anderer Treiber drin. (hat eine andere Ventor und Product 
ID)
 Hab ihn rausgekramt, und ihn in Linux versucht zum laufen zu bringen. 
hat zwar etwas gedauert, da ich mich danach erst in avrdude einlesen 
mußte. Aber mit ihm ist es möglich beide Boards auszulesen. :) habe 
leide immoment keine Software die ich drauf machen könnte.
 Also die Boards laufen. :) da bin ich erleichtert.

Bleibt jetzt nur die Frage warum es mit dem anderen nicht geht.
 Könnte es tatsächlich sein das, das timing am reset so kritisch ist, 
das es bei dem mySmartUSB zu lange dauert?
 werde jetzt mal versuchen den anderen unter Linux zum laufen zu 
bringen. muß mal rausbekommen wie der mysmartUSB unter Linux heißt.
Gast #2501948
Lesenswert?

Hmm, hab jetzt beide Brenner dran, und jetzt gehen beide.

Das einzigste was mir dazu jetzt einfällt. Die USB Spannung von dem 
anderen Rechner mit dem ich es immer versucht hatte, zu niedrig ist, 
oder das das Timeing vom AVRdude unkritischer ist als von AVRstudio.
Gast #2503377
Lesenswert?

Ist es denn zum programmieren überhaupt von Nöten, AVCC und AREF zu 
beschalten? Da während des Programmiervorgangs keine analogen 
Komponenten benötigt werden, sollte dort doch eigentlich auch keine 
Spannung angeschlossen sein müssen.

Grüße
So lala
#2503490
Lesenswert?

AVCC ist erst dann notwendig, wenn das Port mit den Analoganschlüssen 
benutzt wird. Erst dann sind die Treiber/Eingangsverstärker an den 
entsprechenden Pins versorgt.

Aref liegt normalerweise nicht an Spannung, da wird nur ein 
Pufferkondensator an die interne Aref angeschlossen, damit sie stabiler 
wird.
von außen legt man nur dann Spannung an, wenn anstelle der internen Vref 
eine externe Vref oder VCC als ref verwendet werden sollen.

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