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
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.
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
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
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
im Anhang der Schaltungsteil mit dem Atmega und dem ISP Stecker. Gruß, Sammy
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
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.
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
Samuel S. schrieb: > nur > das allernötigste Butter bei die Fische: Was ist dran? Abblockkondensatoren? Beide VCC/GND verbunden?
Hast Du die TQFP von Hand gelötet? Messe mal, ob Du zwischen VDD und GND einen Kurzen hast.
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
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.
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
Pete K. schrieb: > Die 10k Ohm vom Reset müssen gegen VCC! sorry, verschrieben gehabt. Die sind gegen VCC.
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
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
Hast du auch den richtigen Controllertyp eingestellt? Wenn ich es richtig verstanden habe, klappte immer nur das Programmieren eines Atmega32... Nur so eine Idee.
wird die Schaltung beim Programmieren vom Programmer mit Spannung versorgt oder extern? oder gar nicht? auch so ne Idee...
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.
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.
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...
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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.