PDI Programmierung, Setting und Anschluss

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    Aufgrund technischer Veränderungen ist der Mailverkehr innerhalb des Forums (Private Nachrichten) nur noch eingeschränkt möglich. Die Einschränkung ist notwendig, um zusätzliche Betriebskosten für das Forum zu vermeiden. Näheres zu den Hintergründen im Thread "Aktuelles zum Forum".Wir bitten um Verständnis.

    Hinweis kann nach Kenntnisnahme deaktiviert werden!

    • PDI Programmierung, Setting und Anschluss

      Hallo Forum,

      ich habe gerade das Problem, in einen ATMega2561 TQFP64 den Bootloader zu programmieren. Das Blöde ist nur, dass der Chip keine ISP sondern eine PDI Schnittstelle hat. Es ist mein erster Chip mit PDI Interface.

      Nun meine Frage, muss ich an meinem Programmer (USB AVRISPXP II, kann nach Datenblatt ISP und PDI) etwas umschalten, dass er PDI Programmiert?

      Habe die PDI Anschlüsse PDI und SCK richtig am Controller angeschlossen. Hier wurde der Anschluss für den Programmer und hier des Controllers beschrieben. In Anlage habe ich einen Auszug aus dem Datenblatt zum Controller
      Kann ein Rücklesen des Controllertyps überhaupt gehen, wenn nur die PDI Leitung anzuschließen ist? Ich verstehe es so, dass es die Daten Input Leitung ist.
      Kann mir bei meinen ersten PDI Gehversuchen jemand behilflich sein?

      Grüße
      Andreas
      Dateien
      Mancher Baum hätte wohl sein Wachstum eingestellt, wenn er gewusst hätte was hinterher für ein Mist auf seinem Papier geschrieben wird.
    • Ich hab' den AVRISPmkII, der ist wohl ähnlich zu deinem, der auch PDI kann und hab' damit von bacom aus problemlos einen xmega geflasht. Ich muss mal das Schaltbild raus suchen, wie der 6polige Stecker auf dem board beschaltet ist. Oder schau mal hier blog.ib-rohde.de/avr-xmega-pdi-steckerbelegung/ Umschalten musste ich nix.
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------
    • Ich hab' jetzt noch dieses Bildchen gefunden, passt irgend wie besser zu deinen pinbezeichnungen.
      google.de/search?q=atmega2561+…800#imgrc=Tj-z1TjuihxOGM:
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------
    • Hallo,

      die 6-polige Stiftleiste habe ich so angeschlossen. Die beiden Programmer sind anscheinend baugleich. Welchen Treiber hast du bei dir installiert? Vielleicht ist das eine Ursache?
      Info zu meinem Treiber in Anlage.

      Wird bei dir beim Programmieren der Typ des Controllers angezeigt?

      Grüße
      Andreas
      Dateien
      • treiber.JPG

        (62,17 kB, 16 mal heruntergeladen, zuletzt: )
      Mancher Baum hätte wohl sein Wachstum eingestellt, wenn er gewusst hätte was hinterher für ein Mist auf seinem Papier geschrieben wird.
    • Ups, unsere Nachrichten haben sich überschnitten.
      Die Abbildung ist sehr interessant. Blöd, habe gerade meinen Reset von dem Anschluss gekratzt. :(
      Habe noch eine zweite Leiterplatte, mit der versuche ich die Belegung. Mit PDI und PDO macht irgendwie Sinn, dann kann der Programmer auch zurück lesen. Kann aber sein, dass ich da falsch liege.
      Mancher Baum hätte wohl sein Wachstum eingestellt, wenn er gewusst hätte was hinterher für ein Mist auf seinem Papier geschrieben wird.
    • andreas schrieb:

      Info zu meinem Treiber in Anlage.
      schaut bei mir genauso aus (Win10 64pro)
      Ich bekomme folgende Meldung
      atxmega-info.PNG
      aber nur, wenn ich auch im Editor ein Programm mit der passenden def.dat drin offen habe. Habe ich ein Programm mit einem mega offen, wird der chip nicht erkannt. Wechsle ich zum Programm mit dem xmega, dann wird der chip erkannt.

      Natürlich sollte ein Hin- und Rücklesen gehen, es wird ja der flashVorgang verifiziert.
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------
    • a_42_02cc30b2 Super Tipp, das wars. Die Belegung habe ich nirgends gefunden gehabt.
      Es wurde bei dem ATMega2561 TQFP64 anscheinend wirklich die Programmierleitungen von ISP MOSI und MISO Leitungen auf die PDI und PDO Pins gelegt.

      Danke für deine Unterstützung! Du bist mein Held des Tages! a_57_04ef5ee8

      Liebe Grüße
      Andreas
      Mancher Baum hätte wohl sein Wachstum eingestellt, wenn er gewusst hätte was hinterher für ein Mist auf seinem Papier geschrieben wird.
    • Es war mehr Zufall. Ich hab' auch noch bisschen weiter in der Richtung gesucht, aber nix brauchbares gefunden. Ist schon komisch, wenn dieser 6polige Stecker ein Standard sein soll und man findet nix, wie man den an den Kontroller hin schronzelt. Umso besser, wenn es geklappt hat.
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------
    • Hallo
      ja, schon irgendwie eigenartig.
      Habe mir nochmals Gedenken gemacht. Ich habe den Verdacht, dass der Controller gar keine PDI Schnittstelle hat, sondern dass nur die Programmierleitungen auf andere Pins gelegt wurden.
      Ich frage mich, haben wir bisher mit den falschen Begriffen für die ISP Leitungen gesprochen? Mein Eindruck ist, dass die Leitungen womöglich immer schon PDI und PDO bei Atmel geheisen haben, nur weil im Normalbetrieb auf den Pins die Funktion einer SPI Schnittstelle vorhanden ist, haben alle die Programmierleitungen fälschlicherweise Miso und Mosi genannt. Verstehst du was ich meine?
      Wir haben zwei Betriebsarten, Programmierung und Betrieb und bei der Programmierung heißen Sie möglicherweise immer schon PDI und PDO.

      Grüße
      Andreas
      Mancher Baum hätte wohl sein Wachstum eingestellt, wenn er gewusst hätte was hinterher für ein Mist auf seinem Papier geschrieben wird.
    • Ich hätte auch gedacht, dass Atmel eine einheitliche und eindeutige Bezeichnung seiner pins durchzieht. Wenn ich jetzt die Anleitung zum AVRISPMK2 durchlese ww1.microchip.com/downloads/en…VR-ISP-mkII_UserGuide.pdf
      dann finde ich da auch die Steckerbezeichnungen. Aber ich erkenne nicht, wie ich den mega2561 anschließen könnte. Gut, jetzt steht da auch, der Programmer ist nicht mehr aktuell. Wenn ich beim Nachfolger ATMEL-ICE nach sehe
      ww1.microchip.com/downloads/en…c/Atmel-ICE_UserGuide.pdf
      find ich aber auch kein PDI oder PDO.
      Irgendwie nicht so toll gemacht.
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------
    • Ich finde die verschiedenen Bezeichnungen schon okay.
      Man muss auch die Historie und Anwendungen beachten.
      Bitte PDI nicht mit Pinbezeichnung PDI und PDO in einen Topf hauen.
      PDI ist ein Program and Debug Interface und kann je nach MC-Typ = ISP sein auch mit separaten Pins. Muss aber nicht sein.
      Können ein anderes Interface haben. Ist dann das schnelle, synchrone, bidirektionale UART und Reset ist Clock wie zum Beispiel bei den Atxmegas.
      ISP ist In-System Programmable Reset ist ChipSelect also wo der MC zum Programmieren in der Schaltung verbleiben kann.
      Somit passt auch:
      MISO = MC In und Slave Out
      MOSI = MC Out und Slave In.
      Sehr allgemein aber mit Bezeichnung weis man der µC ist Master und was noch angeschlossen wird ist eben der Slave.
      SPI ist ähnlich wie ISP nutzen gleiche Schnittstelle nur etwas reduziert bei Programmable.
      Es gib auch noch die Bezeichnung TPI. Ist eigentlich auch ein ISP aber man weis hier handelt es sich um ein Attiny.

      Ohne Gewähr.
    • Hallo fredred,

      im Grunde hast du Recht, im vorliegenden Fall war die unterschiedliche Bezeichnung jedoch irreführend.

      Bei der MCU ATMeaga 2560 100Pin Gehäuse werden die Programmierleitungen für ISP auf die SPI Pins gelegt. Die Leitungen sind mit MISO und MOSI bezeichnet.
      Für die gleiche MCU im 64Pin Gehäuse (im gleichen Datenblatt) werden die ISP Leitungen mit PDI und PDO bezeichnet und auf die UART0 Leitungen gelegt. Im Datenblatt konnte ich keinen Hinweis finden, dass es sich hier nicht um eine PDI- sondern wieder um ISP Interface handelt. Dieser Umstand war einfach für mich verwirrend. Wenn die Programmierleitungen mit PDI und PDO Bezeichnet werden, kann man schon auf die Idee kommen, dass es ein PDI Interface sein kann, oder?

      Hinweis: MISO und MOSI bezeichnet erstmal nur die Datenflussrichtung (Master Out, Slave In) und wird nicht nur bei MCUs angewendet.
      Du hast aber Recht, es ist wichtig die verschiedenen Datenschnittstellen auseinander zu halten. Die Atmel Leute haben es mir mit dem Datenblatt nicht einfach gemacht.

      Klasse ist, mit Hilfe von tschoeatsch konnten wir die Schnittstelle klären. So ein Forum ist schon eine tolle Sache. a_14_3ef964b0

      Liebe Grüße
      Andreas
      Mancher Baum hätte wohl sein Wachstum eingestellt, wenn er gewusst hätte was hinterher für ein Mist auf seinem Papier geschrieben wird.
    • Danke für Rückmeldung,

      bin kein Freund von Datenblatt hoch und runder lesen. Sind ja im Verständnis der Entwickler geschrieben. Wichtig für mich sind die technischen Daten , Pinbelegung, Blockschaltbild und natürlich die Register. Wenn was unklar fragte ich im Forum nach. Bin halt der Meinung die „Atmel Leute“ haben alles richtig gemacht. Ja mein Problem war auch wie jetzt deiniges war.
      „Für die gleiche MCU im 64Pin Gehäuse“ nein die Entwickler haben doch nicht aus Spaß noch 36 Pins rangezüchtet.
      Sollte hauptsächlich eine Hardware Erleichterung sein. Die Vielfachbelegung der Pins hat ja ein Risiko wenn Software falsch durchdacht.
      Na gut meist passiert gar nichts wenn falsch aber eben nicht immer. Somit speziell die Pipsels für unterschiedliche Programmable getrennt.
      Bspw. Atmega 2561
      Die Pins PE0 = PDI/RX u. PE1 = PDO/TX
      Können für USART und PDI Programmable genutzt werden.
      Unterschied:
      Pins PB2 = MOSI u. PB3= MISO
      Können für SPI und ISP Programmable genutzt werden. (kein PID Interface)

      andreas schrieb:

      Wir haben zwei Betriebsarten, Programmierung und Betrieb und bei der Programmierung heißen Sie möglicherweise immer schon PDI und PDO.
      NEIN

      Du kannst dir die „sicheren“ Pins für dein Projekt wählen und musst nicht sehr sorgfältig CS anderer Peripherien(in Betrieb) steuern.
      Die Zusatzpins sind natürlich nur der kleinste Vorteil.
      Im Amateurbereich, frage ich mich schon manchmal warum müssen es immer solche „Klopper“ sein. Die wirklichen Vorteileile der (General Purpose Register) sind doch ehr für Industriefertigungen von Vorteil.

      P.S. Da diese µC- Generation schon sehr Preiswert sind und wie zu erkennen öfters zum Einsatz kommen ist ein Lexikoneintrag bestimmt vorteilhaft für Forumuser.
      Es gibt hier einige Experten die, die Vielfalt und nicht immer eindeutigen Interface(Pins) auch fürOn-chip debugging in verständlichen Worten beschreiben können.
      Würde auch mein bescheidenes Wissen den Autor(en) zu Verfügung stellen. X(

      Mit freundlichen Grüßen

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von fredred () aus folgendem Grund: Misst. Kann den Kommentar nicht löschen. Versuch es noch mal.