mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PIC32MZ2048EFH144 und UART / PPS


Autor: L. R. (keyboard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Möchte gerne in ein Projekt einen "PIC32MZ2048EFH144" einsetzen.

Leider komme ich mit den Pin für die UART's nicht klar.

Bevor ich das Layout dafür machen kann, muß die Zuordnung ja im 
Sourcecode
existieren für die 6 UART. Benötigt werden nur die RX und TX Pin.

Das ganze, so wie ich es verstehe, funktioniert über "PPS".

Im Datenblatt finde ich keine Default Zuordnung.

Für Unterstützung wäre ich sehr Dankbar.

vielen Dank im Voraus.

Gruß

Autor: soso... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genau deinen PIC kenn ich nicht, aber PIC32 kenne ich.
Kuck in das Kapzitel 12.4 im Datenblatt. Das ist eigentlich nicht so 
schwierig.

Eingang:
Du musst dem Peripheral einen Pin zuordnen. Dazu beschreibt man das 
Register im Peripheral.

Beispiel:
U1RXR = 0b0110; //Pin RPB10 dem Peripheral UART 1 RX zuteilen

Ausgang:
Das ist genau umgekehrt. Du musst dem Pin ein Peripheral zuteilen:
Beispiel:
RPD10R = 0b0001; // Dem Pin RPD10 das Peripheral UART1 RX zuordnen

Du musst natürlich auch die TRIS und ANSEL entsprechend beschreiben.

Und große Vorsicht ist geboten: Nicht jedes Peripheral kann jedem Pin 
zugeordnet werden.
Bin da schon mal böse aufgesessen ;-)

Autor: macload1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kann dir da nur raten die MPLAB X IDE mit Harmony zuzulegen. In 
Harmony kannst du die Pinzuordnung festlegen und hast eine 
Dropdown-Liste, um die verschiedenen Möglichkeiten auszuwählen. Das ist 
die einfachste Möglichkeit herauszufinden was möglich ist.

Autor: soso... (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
macload1 schrieb:
> Ich kann dir da nur raten die MPLAB X IDE mit Harmony zuzulegen.

Das ist eine Geschmacksfrage.

Harmony hat halt den Nachteil, dass man sein Projekt an die Version 
einer IDE bindet. Es ist schwierig, daraus wieder ein 
stand-alone-Projekt zu machen, das alle Sourcen beinhaltet und auch mit 
späteren Versionen kompiliert werden kann.
Da bin ich schon mit der PCI32 Peripheral-Lib böste aufgesessen. Die 
wurde entfernt, und jetzt kann ich gewaltige Klimmzüge machen, um alte 
Projekte noch einmal ändern zu können.

Aus meiner Sicht lohnt sich das Binden an Harmony nicht, wenn man nur 
Dinge wie UART oder SPI verwendet, weil das recht schnell manuell 
implementiert ist. Das Peripheral Remapping ist eigentlich auch recht 
simpel.

Bei Dingen wie USB oder Ethernet sieht das selbstverständlich anders 
aus, da wird man nicht selber Hand anlegen wollen.

Aber die Geschmäcker sind verschieden, ich möchte die Verwendung von 
Harmony auf keinen Fall schlechtreden, sondern nur darauf hinweisen, 
dass man sich über Zukunftssicherheit ebenfalls Gedanken machen sollte.

Meine ganzen PIC24-Projekte (alles selber geschrieben) sind auch nach 5 
Jahren und X IDE- und Compilerversionen noch wunderbar funktionsfähig.

Autor: macload1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo soso...

Deine Bemerkungen zu Harmony kann ich voll und ganz nachvollziehen. Ich 
bin persönlich auch noch nicht 100 prozentig davon überzeugt und für 
kleinere Projekte benutze ich das Framework ganz sicher nicht.

Für die von  L. R. gestellte Frage finde ich das allerdings perfekt 
geeignet. Einfach ein leeres Projekt für den bestimmten PIC erstellen 
und die Pinzuordnung erstellen/herausfinden. Das geht innnerhalb von 
ungefähr 3 Minuten (vorausgesehen alles ist schon installiert) und man 
kann ziemlich sicher sein, dass man keine Probleme mit der Pinbelegung 
haben wird.

Danach kann er ja egal welche Bibliothek benutzen für den Code.

Autor: L. R. (keyboard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Vielen Dank für die Antworten.

Wird noch einiges an Arbeit kosten, bis ich einigermaßen mit diesem µC 
vertraut bin.
Gibt es in Buchform Literatur über MPLABX und dessen 32 Bit Compiler?

Der geplante Umstieg hat folgenden Hintergrund.
Bisweilen arbeite ich mit der PIC 32MX Family. Diese haben intern nur 
128 KB SRAM. Der PIX32MZ das Vierfache.

Ein bestehendes PIC32MX MPLAB Projekt in die MPLABX "importieren", hat 
bisweilen noch nicht funktioniert.

Gruß

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.