RX210 IIC Beispiel

Gast
Woher soll den jemand wissen, was Du willst?
Im einfachsten Fall kann man per Software zwei IO-Pins wackeln lassen.

Im Kapitel 29.3 im Datenblatt ist doch genau beschrieben, was zu tun 
ist. Und da das IIC-Modul einige Feinheiten bietet, sollte man vorab für 
sich klären, was man davon benutzen möchte.
OP
Ich habe es soweit schon geschrieben, allerdings habe ich das Problem 
das nach dem ST - Bit das TDRE - Flag immer 0 ist obwohl ich noch nie 
was nach ICDRT geschrieben habe.

Ich wollte einfach ein komplettes Beispiel von jemanden der die 
Schnittstelle bereits in Betrieb genommen hat. Weil meistens Fehler 
entstehen bei Initialisierung, wie das man das gesamte Modul (MSTPCRB 
-Reg) gar nicht erst einschaltet.
Gast
Es gibt noch einen anderen Quellcode an_r01an0630ej_rx_iic.zip.
Dort gibt es eine Datei riic.c, wovon zunächst RiicIni() aufgerufen 
wird. Hier ist der Ablauf transparenter als bei der RPDL-Geschichte.

Das alles sollte auch für den RX210 passen.
Viel Erfolg!
Gast
Du mußt die IIC-Leitungen entsprechend initialisieren.
Zunächst werden Port1.2 und Port1.3 für die alternative Funktion 
freigeschaltet (PMR-Register).
Dann muß die genaue Funktion der Pins angewählt werden: hier 0xf
Das klappt aber nur, wenn zuvor der Schreibschutz (MPC.PWPR...) 
abgeschaltet wird.
Im Datenblatt steht's genauer.

...... // init von IIC-Registern und abschließend

/* Port setting */
    PORT1.PMR.BIT.B3 = 1;    // SDA0 setting
    PORT1.PMR.BIT.B2 = 1;    // SCL0 setting
    MPC.PWPR.BIT.B0WI = 0;
    MPC.PWPR.BIT.PFSWE = 1;
    MPC.P12PFS.BYTE = 0xf;
    MPC.P13PFS.BYTE = 0xf;

/* Enable RIIC */
    RIIC0.ICCR1.BIT.ICE = 1;  //RIIC enable

Wird jetzt mit
    RIIC0.ICCR2.BIT.ST = 1;    // Generate start condition
IIC-START aktiviert, werden SDA+SCL auf 0 und TDRE+START sowie BBSY, MST 
und TRS auf 1 gesetzt. ST ist dann gleich wieder gelöscht.

Jetzt sollte es auch bei Dir laufen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.