Hallo Leute, ich hab ein Problem mit dem I²C0 des LPC1769. Sowohl das Beispiel von NXP als auch mein selbst geschriebener Code funktionieren nicht. :( Wobei ich den Beispielcode von NXP mit I²C2 getestet habe, dort sehe ich zumindest ein Takt und die Adresse. Versuche ich mit dem Beispiel von NXP das I²C0 zu benutzen, klappt nicht mal das Senden der Startbedingung. Anfangsbedingung: -> SDA0&SCL0 High Senden der Startbedingung -> SDA0&SCL0 Low An SCL0&SDA0 sehe ich dann nichts mehr sie bleiben low. Das usermanual bringt mich nicht mehr weiter, hab mir das ganze I²C Kapitel mehrmals durchgelesen. Ich versteh nicht wieso er schon Probleme mit der Startbedingung hat bzw wieso nicht mal einen Takt auf SCL0 zu sehen ist. Hat sich da jemand schon mal eingearbeitet und weis wie man die I²C0 zum laufen bringt? Bin im Augenblick für jeden Tipp dankbar... Die Beispiele hab ich von hier: http://ics.nxp.com/support/software/code.bundle.lpc17xx.keil/#Software
PullUp Widerstände eingebaut? Die I2C0 Pins haben keine internen Pullups, siehe Datenblatt.
Schau Dir mal http://ics.nxp.com/support/documents/?type=software an, dort scheint eine neuere Version der LPC175x and LPC176x CMSIS-Compliant Standard Peripheral Firmware Driver Library (GNU, Keil, IAR) zu stehen, von Juni 2011. Bei meinem LPC1768 tut die mit I²C.
Hast du die Punkte in Kapitel 19.1 des User Manuals beachtet? Hier ein Auszug: 1) PCONP 2) PCKSEL0 (für I2C0) und anderes Register PCKSEL1 (für I2C1 und I2C2) 3) PINSEL, PINMODE, PINMODE_OD !!! I2C0 is not available in the 80-pin package. !!!
Für die Nachwelt. Ich habe meinen Fehler gefunden. Ich benutzte den EXT_Powx Pin des LPC Boards als Spannungsquelle für die Pull-UPs. Problem ist dass diese Selbst bei einer Belastung mit einem 10K Widerstand zusammenbricht. -.- Als ich die Spannungqelle änderte funktionierte alles einwandfrei.
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.