Hallo, ich versuche ein Atmega128-Board (siehe Schaltplan) mit dem AVRISP mkII über USB zu programmieren. Wenn ich auf das Board zugreifen will, bekomme ich die Meldung: There seems to be a short circuit on the ISP connector. The MOSI line appear to be short-circuited. Ich mußte den 6-Pin-Header auf einem 10-Pin-Header umsetzen, habe die Pins per Flachbandkabel aber meiner Meinung nach richtig verbunden. Wo könnte das Problem sonst liegen?
Noch mal alles nachmessen. Auch wenn mann meint es ist richtig, stimmts oft doch nicht.
Hier noch die Umsetzung: 6-Pin-Header -> 10-Pin-Header Pin1->Pin9 (MISO) Pin2->Pin2 (VCC) Pin3->Pin7 (SCK) Pin4->Pin1 (MOSI) Pin5->Pin5 (RESET) Pin6->Pin4,Pin6,Pin8,Pin10 (GND) Pin3 des 10-Pin-Header ist nicht connected.
Umsetzung 6-pol->10pol ist korrekt. Mess (!) doch mal das Kabel durch.
Hat sonst niemand eine Idee an was es liegen könnte?
Mess doch mal direkt an Pin2(MOSI) ob überhaupt Signale ankommen. Das gleiche gilt für die anderen drei Signale. Funktioniert denn der MK2 mit anderen CPUs ?
Sorry bin kein E-Technik-Profi. Wie misst man den Pin bei Verbindung mit dem Target-Board?
Dein serieller MAX? 232 stört wahrscheinlich. Einen Widerstand zwischen dem TXD Ausgang und dem Controllereingang bewirkt, dass der MAX über 10K angebunden ist, der ISP aber Vorrang hat. MW
Die Platine habe ich ja fertig gekauft, da kann ich nichts mehr dran löten.
@ecslowhand MOSI liegt auf Pin1. Aber ich habe jetzt mal alles durchgemessen: Pin9 (MISO)=5V Pin2 (VCC)=5V Pin7 (SCK)=0,002V Pin1 (MOSI)=5V Pin5 (RESET)=5V Kann damit jemand was anfangen?
Mit durchmessen ist gemeint: Das Kabel mittels einem Piepser oder ohmisch (Multimeter) zu prüfen. Auf Durchgang auf Unterbrechung und Kurzschluß zwischen den Adern.
Ich habe jetzt im Betriebszustand gemessen. Da misst man doch die Spannung und nicht ohmisch.
Diese Messungen natürlich ohne Betriebsspg. und es sollte an einem Ende keine Elektronik dran sein. An welchem ist egal.
Folgende Spannungsänderungen ergeben sich, wenn ich mit AVR-Studio den uC programmieren will (z.B. Erase). Also zwischen dem Drücken des Buttons und der Fehlermeldung: MISO fällt von 5V auf ca. 2,5V MOSI bleibt bei 5V SCK steigt von ca. 0,7V auf 2,5V RESET fällt von 5V auf 0V
Ich habe jetzt nochmal mit Piepser die Kabelumsetzung durchgemessen, und zwar einerseits an den Pins des ISP-Headers auf dem Target-Board (10 pol) und andererseits an den Pins des Steckers, an den ich das AVRISP mk2 anschließe (6 pol). Alle Leitungen sind demnach korrekt verbunden, es piepst jeweils nur bei den zwei Pins die auch verbunden sein müssen.
@Pointer Die Messung der Spannungsänderungen mit einem Voltmeter, und zwar an den Pins des ISP-Headers auf dem Targetboard.
Die Messung mit dem Voltmeter ist nicht sonderlich aussagekräftig. Was mit dabei auffällt ist das MOSI bei 5V bleibt und MISO auf 2,5V fällt also MISO anscheinen Daten kommen und MOSI nicht. gehe ich recht in der Annahme das du die Bezeichnungen von deinem Target Board genommen hast ? Dann würde das heißen das dein Controller dem Programmer nicht Antwortet. Die Spannungspegel sehen erst mal gut aus entweder es ist noch ein Problem mit der Verbindung der MOSI Leitung oder die SCK Frequenz ist zu hoch (kannst du unter "Board" Im Programmierdialog einstellen) Oder dein Controller läuft gar nicht.
Das AVR-Studio meldet ja auch, dass die MOSI-Leitung anscheinend kurzgeschlossen ist. Die Bezeichnungen sind vom Board, ja.
Welche Fehlermeldung kommt wenn der Controller nicht auf dem Board ist?
Nimm den Controller mal vom Board und Piepse dann die Anschlüsse gegeneinander und gegen Masse und Gegen VTG durch.
Ich kann den Controller nicht vom Board nehmen. Diese Gehäuseart bekomme ich nie wieder dran gelötet.
Hast Du noch einen anderen AVR im DIL Gehäuse? Den dann auf ein Steckbrett und nur die Prog,Leitungen dran und ein Takt. Dann weist Du ob dein AVRISP mkII I.O. ist oder nicht.
Das Board kommt von www.etteam.com bzw. einem Distributor in Deutschland. Ich habe noch das STK500 hier mit einem 8515. Wenn ich den mk2 an SPROG3 da anschließe blinkt die orange LED, also ein Problem mit der Reset-Leitung (Pull-Up). Siehe auch meinen anderen Artikel in diesem Forum.
Wenn ich VTG auf meinem STK500 trenne dann blinkts auch schon. Schon etwas dumm das Ganze . Also 8515 auf ein Steckbrett oder ähnl.
Da ich noch nie auf ihn zugreifen konnte konnte ich auch keine Fuse-Bits verstellen.
Läßt sich der 128er über das STK500 ansprechen? 10pin mit 10pin verbinden.
Nope, da kommt dann eine Fehlermeldung dass er nicht in den Programmiermodus wechseln kann.
Unterbrich mal VTG am Verbindungskabel. Ich denke das 128er Board hat seine eigene SPG.Versorgung.
Ich habe das getestet, indem ich an das 128er Board keine externe Spannungsversorgung angelegt habe, sondern es durch das STK500 versorgt habe.
Ansonsten wüßte ich, ohne das Board hier im Labor zuhaben auch nicht weiter.
Das ist nicht so gut. Weil Du dann die Regler auf deinem Board rückwärts mit SPG. versorgst. Dadurch passieren die lustigsten Sachen. Also lieber nicht.
Also du meinst, ich solle es mal probieren, wenn das 128er Board an der eigenen Spannungsversorgung hängt? Wie kann ich denn den VTG-Kontakt des 10-pin-Steckers unterbrechen ohne das Kabel kaputt zu machen?
Pointer schrieb: "Unterbrich mal VTG am Verbindungskabel." Völlig unnötig, lass das Kabel so wie es ist.
Ich habe jetzt sowohl beim STK als auch beim Targetboard die eigene Spannungsversorgung dran. Wenn ich mit AVR-Studio programmieren will, kommt die Meldung: An Error occured, see the command output for more info. Dort findet sich aber nur ein Entering programming mode FAILED.
6pol Kabel auf dem STK500 auch abziehen. Nicht das der 8515 noch paral. dran ist.
Wie hoch ist die ISP Frequenz eingestellt? Schalte sie mal auf ca. 57KHz.
Kabel war sowieso ab, Frequenz geändert, bringt aber alles nichts.
Wenn ich den Programmiermodus auf PP/HVSP einstelle kann ich auf die Fuse Bits zugreifen!
Wenn ich ein Programm reinschreiben will, kommt folgende MEldung: Reading FLASH input file.. OK Entering programming mode.. OK! Erasing device.. OK! Programming FLASH .. OK! Reading FLASH .. OK! WARNING: FLASH byte address 0x0000 is 0x1F (should be 0x0C).. FAILED! Leaving programming mode.. OK!
Da liest Du nur Mist aus. Das ist der Hochvolt Programmier Modus. Versuch mal unter Advanced das Signature Byte zu lesen.
Im ISP Mode: 0x00 0x00 0x00 Setting mode and device parameters.. OK! Entering programming mode.. FAILED! Leaving programming mode.. OK! Im PP/HVSP: 0x1F 0x1F 0x1F Setting mode and device parameters.. OK! Entering programming mode.. OK! Reading signature .. 0x1F, 0x1F, 0x1F .. OK! Leaving programming mode.. OK!
Auf deinem 128er Board hängt ja an den Prog.Leitungen noch der RS232 Wandler dran. R2O ist mit MOSI verbunden und hällt den auf einem kostanten Pegel. Deswegen warscheinlich auch die Kurzschlußmeldung von deinem MKII.
Wie soll ich denn den RS232 entfernen? Außerdem gehe ich mal davon aus dass die Board-Designer das Board auch programmierbar gestaltet haben.
Hält der RS232 MOSI auch auf einem konstanten Pegel wenn RS232 gar nicht in Betrieb ist?
Wenn es so verschaltet ist wie im Schaltplan eingezeichnet, dann liegt ein Designefehler vor. Eine Möglichkeit währe noch, Du unterbrichst die Leiterbahn und lötest dafür einen 4k7 Widerstand ein. Mit diesem Wert sollte das STK500 zurechtkommen.
Hält der RS232 MOSI auch auf einem konstanten Pegel wenn RS232 gar nicht in Betrieb ist? Ja.
> Wie soll ich denn den RS232 entfernen?
Versuche doch einfach mal, den Pin 9 etwas hochzubiegen, so dass er
isoliert ist.
Ansonsten: 1) ATmega128 kaputt 2) AVR ISP kaputt 3) MAX232 kaputt, dadurch blockiert er vielleicht den Pin Zumindest Punkt 2 sollte sich leicht ausschließen lassen. Hast du mal nen andeen AVR genommen? Hab jetzt nicht jeden einzelnen Beitrag gelesen. Also ein anderer AVR, pull-up an Reset, Spannung dran, ggfs. Quarz und natürlich ISP.
Also, beim durchpiepsen kam folgendes heraus: Pin1 Prog.-Anschluss (MOSI) ist verbunden mit Pin10 RS232 (MISO) Pin9 Prog.-Anschluss (MISO) ist verbunden mit Pin 9 RS232 (MOSI) Also sind auf dem Board die Anschlüsse vertauscht? Hochbiegen von Pins läßt die Bauform leider nicht zu, alles fest verlötet.
Kommando zurück, hab mich vertan. Es piept bei den richtigen Pins. Auch die Verbindung zum Controller stimmt.
@Regler 2) kann man ausschließen, hatte den AVRISP am STK500, lief.
Hallo, wie Regler schon sagte, ist Pin9 vom RS232-Treiber das Problem. Das ist ein Ausgang, der gegen das MOSI-Pin kämpft. Sieht ganz nach einem Design-Fehler aus, oder die ISP-Schnittstelle wird nur während der Fertigung zum Aufspielen eines Bootloaders genutzt und ist nach Bestücken des RS232-Treibers nicht mehr nutzbar.
Ja genau so ungefähr. Leiterbahn irgendwo auftrennen und einen Widerstand einfügen, sagte ich aber schonmal.
Im Schaltplan steht auch ISP LOAD und nicht ISP PROGRAMMING.
Danke. Ich denke wir sind der Lösung auf der Spur. Wie verhält es sich denn mit dem Portpin PE1 (MISO), der mit TXD0(Pin 10) des RS232 verbunden ist? Liegt da das selbe Problem vor? Neben dem RS232-IC sind Widerstände eingelötet, ich weiß aber nicht an welchen Pins die hängen. Nachträglich was zu machen erscheint mir schwierig wenn ich mir die Platine anschaue. Bild liegt hier: http://i112.photobucket.com/albums/n170/wi_roon/products/avr_baseboard1.jpg Wie sollte man sonst die Platine programmieren? Auf der beiligenden CD ist dokumentiert wie man das mit PonyProg und einem zusätzlich bestellbaren ISP-Adapter derselben Firma machen kann. Es steht aber auch drin, dass das mit jedem anderen ISP-Progger, insbesondere Atmel, machbar ist.
Das was auf dem Bild zu sehen ist am rs232 sind Kondensatoren. Aber was geschrieben steht und was wirklich ist..... das sind Welten.
Ich hänge euch hier noch den Schaltplan für den ISP-Progger an, den man zusätzlich kaufen kann. Vielleicht bringt das ja die Lösung.
29 Dollar. Ist jetzt die Frage ob es mit dem Programmieradapter der selben Firma funktionieren würde oder ob die Boards einfach verpfuscht sind.
Tja, die 07er Treiber sind erheblich leistungsstärker als das STK 500. Damit könnte es funktionieren, undder Low Pegel des 07 überstimmt den High Pegel des ICL3232. Dieses Teil kannst Du auch selbst bauen.
Wenn das so funktionieren sollte, ist das Absicht um noch ein Teil verkaufen zu können.
Ok, danke für die viele Mühe. @Pointer Du schreibst, der Low-Pegel des 07 überstimmt den High-Pegel des ICL3232. Heißt das, am MOSI muss zwingend LOw-Pegel anliegen?
Wenn der ICL3232 nicht angesteuert wird, Eingänge offen, liegt sein Eingang durch den int. PullDown Widerstand an GND, und da er invertiert ist sein Ausgang High.
Und noch ne Frage: Müßte der AVRISP mkII nicht über die Hürde des RS232-Ausgangs drüber kommen? Der hat doch sicher eine aufwendige Schaltung.
Eine solche Art von Schaltungsdesigne macht ein anständiger E-Techniker nicht.
Hi Leute, ich habe genau das gleiche Problem. Atmega 128 für 29$ kommt aus Thailand, Rechnung aus Australien. Gleiche Fehlermeldung mit STK500. Ich kann noch nicht mal die Signatur lesen...
Legt Pin 9 am ICL3232 frei und macht dafür einen 4K7 Widerstand in die Leitung. Damit sollte das Problem gelöst sein.
Hallo, nochmal Danke an alle Beteiligten, wir haben einen 900 Ohm-Widerstand testweise eingelötet und schon funktioniert es!
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.