Hallo Zusammen, hat einer schonmal beim RX210 die IIC Schnitstelle zu laufen gebracht? Vielleicht könnt Ihr mir mal ein Bespiel Programm schicken. Danke
Es gibt eine Datei R20AN0156EJ_RPDL210.zip (bei Renesas-Applikationen). Dort findest Du Quellcode zu diversen IO-Geschichten und auch zu IIC.
Vielen Dank für deine Antwort allerdings handelt es hierbei um Code welcher mit der renesas libary arbeit. Also keine direkte Register Programmierung
Matthias Laubnitz schrieb: > handelt es hierbei um Code > welcher mit der renesas libary arbeit. Dann schau dir die Renesas-Lib an und tippe es ab...
Da sucht man sich dumm und ... So eine Treiber Lib muss ja schließlich auch alle Fälle abfangen. Also wenn jemand etwas hat. Ich habe immer noch großes Intresse.
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.
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.
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!
Hier noch der Link http://www.renesas.eu/support/downloads/download_results/C1000000-C9999999/mpumcu/rx/an_r01an0630ej_rx_iic.jsp
Hallo Zusammen, erstmal danke für die Hinweise, aber ich komme leider irgendwie nicht weiter. Also wenn jemand was für den RX210 hat. Ich habe immer noch bedarf. Die Schnittstelle fängt einfach nicht an zu senden.
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.
Matthias Laubnitz schrieb: > Die Schnittstelle fängt einfach nicht an zu senden. Läuft Dein Programm mittlerweile?
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.