Forum: Mikrocontroller und Digitale Elektronik Fabrikneue AVRs nicht per ISP gefunden


von Samuel S. (samuel)


Lesenswert?

Hallo zusammen,

ich probiere jetzt schon seit zwei Tagen rum:
Als Programmer habe ich hier den China USB ISP unter Win XP.
Boardversion vom USB ISP ist mx-usb isp-v3.00 und auf der Platine ist 
05.2013 aufgedruckt.

Ich habe vor ein paar Monaten damit erfolgreich einen neuen Atmega32 
programmiert, das funktioniert auch jetzt noch. Auch in den Jahren zuvor 
habe ich mit anderen Programmieradaptern schon etliche AVRs 
programmiert, also das Thema ist nicht neu für mich.

Zu anderen fabrikneuen AVRs bekomme ich aber keine Verbindung hin.

Jetzt habe ich eine Schaltung mit Atmega1284P als TQFP auf einer geätzen 
Platine. Die Schaltung habe ich jetzt schon zweimal aufgebaut, die 
Kabelverbindung mehrfach geprüft und auch mit der Atmega32 Schaltung 
verglichen.
Da ich noch einen Atmega8A hier hatte habe ich den auch aufgebaut, aber 
auch den finde ich nicht.

Ich nutze Avrdude und auch PROGISP V1.72. Beide funktionieren mit dem 
"alten" Mega32. Die anderen finde ich alle nicht.

Ich habe etwas darüber gelesen das man die Geschwindigkeit für ISP 
anpassen muss, um AVRs mit niedriger Frequenz zu programmieren. Bei dem 
Chinateil kann man dazu nichts einstellen, manche meinen die können bis 
zu 1Mhz Target-AVR Frequenz automatisch einstellen. Kann man sonst mit 
einfacher externer Beschaltung des Ziel AVRs vielleicht erreichen das es 
doch funktioniert?

Hat jemand noch eine Idee? Ich habe die Pinbelegung an den AVRs schon 
mehrfach geprüft und die Pinbelegungen von der USB-ISP per Multimeter zu 
den Portpins durchgemessen, das passt alles. Target AVRs werden durch 
USB mit Strom versorgt, das funktioniert auch.

Hat wer noch eine Idee? Oder eine Idee wie ich ohne großen 
Schaltungsaufbau die vielleicht doch programmieren kann? Mein AVR Dragon 
habe ich erst in zwei Wochen wieder, würde das gerne vorher irgendwie 
hinbekommen.

Danke schonmal für eure Hilfe,

Verzweifelte Grüße,
Sammy

von Achim M. (minifloat)


Lesenswert?

Samuel S. schrieb:
> manche meinen die können bis
> zu 1Mhz Target-AVR Frequenz automatisch einstellen

Automatisch? Woher soll denn der Programmer das feststellen?
Diese Intelligenz kommt eher von PC-Seite von der Brennsoftware, die 
verwendet wird. Dort wird dann eine immer kleiner werdende Frequenz 
probiert, bis es eben mal klappt.

Kann man dem Chinaprogrammer vielleicht die USBasp firmware verpassen? 
Der kann man dann mit avrdude (+GUI, wenn man will) eine Frequenz 
vorgeben.

von Düsendieb (Gast)


Lesenswert?

Samuel S. schrieb:
> Ich habe etwas darüber gelesen das man die Geschwindigkeit für ISP
> anpassen muss, um AVRs mit niedriger Frequenz zu programmieren

Die ISP Frequenz stellt man in AVR Studio ein.

versuch mal etwas bei 17khz, hatte das gleiche Problem, dass 56khz nicht 
geklappt hat

von Samuel S. (samuel)


Lesenswert?

mit dem "automatisch" hat irgendwer geschrieben, bestätigung dafür habe 
ich aber nicht gefunden. Manchmal gibt es ja auf den AVR ISP Platinen 
die Möglichkeit per Jumper die Frequenz zu reduzieren. Es gibt auf der 
Platine Lötflächen mit A, B, C bezeichnet. Einer davon ist für 5V an 
Target zuständig, was die anderen ggf. machen konnte ich noch nicht 
rausfinden. Ein direkt gekennzeichneter Jumper ist für die 
Selbstprogrammierung des AVRs da.

Firmware updaten würde also sicher gehen, ich habe aber keinen zweiten 
Programmer hier. Die Firmware auf dem Chinading kann zumindest nicht per 
Software angepasst werden (zumindest nicht so wie der USBasp)

Aber ihr denkt auch das es an der Frequenz des Ziel-AVRs liegt? Kann man 
ohne Fuses zu ändern den Takt des AVRs irgendwie ändern? Quarz, 
Quarzoszillator, Trommeln...?

Gruß,
Sammy

von Pete K. (pete77)


Lesenswert?

Hast Du denn den 1284 auch nach Datenblatt angeschlossen? Zeig' mal 
Deine Schaltung.
Vielleicht kommt der aus einer nicht vertrauenswürdigen Quelle und ist 
ein Fake?

: Bearbeitet durch User
von Samuel S. (samuel)


Angehängte Dateien:

Lesenswert?

im Anhang der Schaltungsteil mit dem Atmega und dem ISP Stecker.

Gruß,
Sammy

von Pete K. (pete77)


Lesenswert?

Für jedes Paar VCC/GND sollten Abblockkondensatoren vorhanden sein.

Ein neuer ATMega1284 sollte mit 1Mhz int. Takt laufen, also müssten 
125kHz ISP-Frequenz oder kleiner passen.

Was hast Du noch an SPI dran? Kann man das mal abklemmen?

: Bearbeitet durch User
von Martin e. C. (eduardo)


Angehängte Dateien:

Lesenswert?

Samuel S. schrieb:
> Es gibt auf der
> Platine Lötflächen mit A, B, C bezeichnet. Einer davon ist für 5V an
> Target zuständig, was die anderen ggf. machen konnte ich noch nicht
> rausfinden. Ein direkt gekennzeichneter Jumper ist für die
> Selbstprogrammierung des AVRs da.

In Anhang ist die Original Schaltung von USBasp, schaue Mal ob eine der 
Jumper an PC2 geht, wenn ja dann ist der Jumper für Takt.

von Samuel S. (samuel)


Lesenswert?

An den ISP Ports ist auf der einen Platine noch nichts weiter dran, nur 
das allernötigste damit der AVR überhaupt laufen kann. Auf einer 
weiteren hängen bereits ULN2003 sowie ein Quarz dran.

In meiner zweiten Testschaltung mit einem Atmega8A als Target hängt auch 
nichts weiter dran, ohne Erfolg.

Den Pin 25 Jumper konnte ich bisher nicht finden, werde es noch mal 
versuchen. Ist aber recht schwierig, da das auf der Rückseite vom AVR 
ist und die den kleinste AVR Gehäuse genommen haben was die bekommen 
konnten...

Aber eigentlich kann es nur die Programmierfrequenz sein das es nicht 
funktioniert oder? Gerade weil ein bereits programmierter Atmega32 
problemlos gelesen/geschrieben wird.

weiterhin verzweifelt und dankbar für eure Hilfe,
Sammy

von Nicolas S. (Gast)


Lesenswert?

Samuel S. schrieb:
> nur
> das allernötigste

Butter bei die Fische: Was ist dran? Abblockkondensatoren? Beide VCC/GND 
verbunden?

von Pete K. (pete77)


Lesenswert?

Hast Du die TQFP von Hand gelötet? Messe mal, ob Du zwischen VDD und GND 
einen Kurzen hast.

von Samuel S. (samuel)


Lesenswert?

Nicolas S. schrieb:
> Samuel S. schrieb:
>> nur
>> das allernötigste
>
> Butter bei die Fische: Was ist dran? Abblockkondensatoren? Beide VCC/GND
> verbunden?

1x Abblockkondensator zwischen VCC + GND, 10kOhm Reset gegen GND, 10 Pin 
ISP Anschluß

Pete K. schrieb:
> Hast Du die TQFP von Hand gelötet? Messe mal, ob Du zwischen VDD und GND
> einen Kurzen hast.

vor dem ersten mal anschließen habe ich alle benachbarten Pins auf 
Kurzschlüsse geprüft. Keine Probleme.



Ich habe noch mal bei der Beschreibung des China Programmers geschaut:
der soll wirklich automatisch die höchstmögliche Frequenz rausfinden und 
alle Targets über 8 kHz programmieren. Ich lade noch mal deren 
Originalsoftware runter, vielleicht kann man da noch was anderes 
einstellen und der Windows-PC steuert die Geschwindigkeit nur 
automatisch und nicht der Adapter... mal schaun

von Pete K. (pete77)


Lesenswert?

Samuel S. schrieb:
> 1x Abblockkondensator zwischen VCC + GND

Das reicht nicht!

von Pete K. (pete77)


Lesenswert?

Die 10k Ohm vom Reset müssen gegen VCC!

von nix und n. (nixundnul)


Lesenswert?

auch, wenn es nicht direkt zur Sache ist, eine Erfahrung von meinem 
Basteltisch:
Habe bei einem Arduino Mega 2560 über Isp zunächst die Firmware lesen 
wollen; danach auch die FW des 16U2. Es liest, dann manchmal, dann nicht 
mehr. Da ich den Fehler bei mir gesucht habe, dann das nächste Gerät.
1.Gerät: Controller tot, 16U2 geht noch
2.Gerät: Controller geht noch, 16U2 tot
3.Gerät: wie 1
Es waren China-Arduino, daher hält sich der Schaden noch in Grenzen. 
Aber mit den m8 und m328 Controllern bzw Arduino Uno ist mir das noch 
nie passiert. Mit denen konnte man Fußball spielen. Vermutung: 
ESD-Probleme. Sobald man Spannungsquellen von verschiedenen Richtungen 
aus anschließt, stirbt etwas. Wenn es so sein sollte, den GND fest und 
zuerst verbinden (ISP zu target) und dann den ISP-Stecker anstecken. 
Wenn man in einer ESD-sicheren Umgebung mit Armbändchen etc arbeitet, 
dann merkt man es vielleicht nicht, aber auf meinem Basteltisch bin ich 
ins Nachdenken gekommen.

von Samuel S. (samuel)


Lesenswert?

Pete K. schrieb:
> Samuel S. schrieb:
>> 1x Abblockkondensator zwischen VCC + GND
>
> Das reicht nicht!

Das habe ich bisher immer so gemacht mit einem Kondensator direkt am 
AVR. Auch die funktionierende Schaltung hat nur einen Abblockkondensator 
Keramik 100nF.
Welche würdest du wo da einsetzen?

Auch bei meiner Zweitschaltung mit nur einem Atmega8 gibt es ja nur 
einen VCC/GND Pin + die analoge Beschaltung für den ADC. Wie viele 
würdest du da nehmen und wo?

Gruß,
Sammy

von Samuel S. (samuel)


Lesenswert?

Pete K. schrieb:
> Die 10k Ohm vom Reset müssen gegen VCC!

sorry, verschrieben gehabt. Die sind gegen VCC.

von marixstorm (Gast)


Lesenswert?

Hallo

Bei einer groesseren Menge ATmegas (ATmega8-16PU), hatte ich es auch 
schon einmal das ein paar wenige davon vom Werk her "verfust" waren.

Im HVPP Geraet gelesen hat sich herausgestellt, das alle FUSE-Werte 0x00 
waren - das lies sich dann leicht korrigieren...
Meine Vermutung: Im Werk nicht sauber beschrieben.

MfG

von Pete K. (pete77)


Lesenswert?

Was sagt Dein Ohmmeter beim Messen zwischen VCC und GND?

von Samuel S. (samuel)


Lesenswert?

Pete K. schrieb:
> Was sagt Dein Ohmmeter beim Messen zwischen VCC und GND?

auf der vollständig bestückten Atmega1284P liegt es bei 10KOhm, da hatte 
ich aber auch genau zwischen den beiden Pins beim löten Probleme.
Daher hatte ich ein zweites, nur mit dem notwendigsten bestücktes Board 
(wie oben genannt) bei dem das Multimeter als Widerstand "1" anzeigt, 
also kein Kontakt besteht.

Gruß,
Sammy

von Friedrich (Gast)


Lesenswert?

Hast du auch den richtigen Controllertyp eingestellt?
Wenn ich es richtig verstanden habe, klappte immer nur das Programmieren 
eines Atmega32...

Nur so eine Idee.

von Gerhard W. (gerhard_w)


Lesenswert?

wird die Schaltung beim Programmieren vom Programmer mit Spannung 
versorgt oder extern? oder gar nicht?

auch so ne Idee...

von Samuel S. (samuel)


Lesenswert?

Gerhard W. schrieb:
> wird die Schaltung beim Programmieren vom Programmer mit Spannung
> versorgt oder extern? oder gar nicht?
>
> auch so ne Idee...

vom Programmierer, keine externe Spannungsversorgung.
Spannung kann auch an den Pins korrekt gemessen werden.

von Samuel S. (samuel)


Lesenswert?

Friedrich schrieb:
> Hast du auch den richtigen Controllertyp eingestellt?
> Wenn ich es richtig verstanden habe, klappte immer nur das Programmieren
> eines Atmega32...
>
> Nur so eine Idee.

ja, habe ich. Aktuell versuche ich sogar nur die ID auszulesen, das 
funktioniert sogar beim falsch eingestelltem Controllertyp, 
normalerweise zumindest - bei mir funktioniert bis auf den Mega32 gerade 
gar nichts.

von Pete K. (pete77)


Lesenswert?

Mach mal eine externe Spannung dran.

von Samuel S. (samuel)


Lesenswert?

Pete K. schrieb:
> Mach mal eine externe Spannung dran.

gerade auch versucht, ohne Ergebnis.
Ich denke ich muss dann wohl noch zwei Wochen warten bis ich mein AVR 
Dragon zur Verfügung habe und dann dem ganzen näher auf den Grund gehen.
Ich hatte bisher noch nie irgendwelche Probleme Atmegas zu 
beschreiben...

von Bernhard D. (pc1401)


Lesenswert?

So ins Blaue geraten...

verwendest Du einen Laptop mit Eurostecker-Netzteil zum Programmieren? 
Diese Art von Netzteil hat üblicherweise Y-Kondensatoren zwischen Netz 
und Niedervoltausgang. Wenn du dann noch ein Oszilloskop mit Masse an 
Schutzerde an deiner Schaltung hängen hast, dann Gnade Deinem AVR...
Da können durchaus Spannungen in für Controller tödlicher Höhe anliegen.

Gruß,
Bernhard

von Samuel S. (samuel)


Lesenswert?

Bernhard D. schrieb:
> So ins Blaue geraten...
>
> verwendest Du einen Laptop mit Eurostecker-Netzteil zum Programmieren?
> Diese Art von Netzteil hat üblicherweise Y-Kondensatoren zwischen Netz
> und Niedervoltausgang. Wenn du dann noch ein Oszilloskop mit Masse an
> Schutzerde an deiner Schaltung hängen hast, dann Gnade Deinem AVR...
> Da können durchaus Spannungen in für Controller tödlicher Höhe anliegen.
>
> Gruß,
> Bernhard

Hi Bernhard,
ich habe nur ein Multimeter dran gehabt und das Notebook hat keine 
Erdung über das Netzteil gehabt.

Inzwischen vermute ich das ich die AVRs nicht richtig eingelötet habe. 
Werde das noch mal machen. Den anderen AVR Atmega8 habe ich zum Laufen 
gebracht, in der Schaltung hatte ich mich mit den Pins für Reset 
verzählt, das ist bei dem TQFP44 Atmega aber ausgeschlossen.

Danke für eure Tipps und Hilfe,
Sammy

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.