Forum: Mikrocontroller und Digitale Elektronik LPC935 I2C Adressen


von Dieter Krutzler (Gast)


Lesenswert?

Hallo Leute

Ich will den LFU und den TPM100 vom LPC935 
(http://www.c51.de/c51.de/Dateien/Humerboards/NLB_LPC935.pdf) 
programmieren. Leider hab ich nirgends die Adresse für I2ADR gefunden. 
Wo bekomm ich die her?

Grüße

von R. W. (quakeman)


Lesenswert?

Also der LFU erzeugt eine Frequenz, welche du per Timer erfassen musst 
und hat deshalb nichts mit I2C zu tun.
Der TMP100 ist laut Schaltplan und Datenblatt des Chips fest auf die I2C 
Adresse 0x48 gelegt. Das I2ADR Register im Controller liegt an Adresse 
0xDB. Das ist für dich aber irrelevant, da du sowieso mit dem Bezeichner 
"I2ADR" arbeiten solltest und nicht direkt mit seiner Adresse. Die 
Definition des Registernamens sollte in deiner Programmierumgebung schon 
vorhanden sein per include Datei.
Ausführliche Informationen zur I2C Programmierung der LPC9xx Reihe 
findest du unter [1] wenn du den Link "LPC900_Kap10Erg_I2C.zip" 
anklickst.

Ciao,
     Rainer

[1] http://www.c51.de/c51.de/Dateien/LPC900.php

von Dieter Krutzler (Gast)


Lesenswert?

Tut mir leid ich kann beim besten Willen keine Adresse finden :-/
Hab vom Internet ein Programm das funktioniert mit der Adresse 0x90. 
Allerdings wird die mit #define gesetzt und I2ADR gar nicht verwendet 
bzw. eigentlich kein I2C Register wird dabei verwendet. Aber es 
funktioniert...

Grüße

von R. W. (quakeman)


Lesenswert?

Dieter Krutzler schrieb:
> Tut mir leid ich kann beim besten Willen keine Adresse finden :-/
> Hab vom Internet ein Programm das funktioniert mit der Adresse 0x90.
> Allerdings wird die mit #define gesetzt und I2ADR gar nicht verwendet
> bzw. eigentlich kein I2C Register wird dabei verwendet. Aber es
> funktioniert...
>
> Grüße

Adresse 0x90 ist der Port 1. Wenn dieser direkt verwendet wird, dann 
wird eventuell I2C per Software nachgebildet. Zeig doch mal den Code den 
du heruntergeladen hast und der funktioniert.
Hast du schon mal mit der 8051er Architektur, zu welcher der LPC935 
ebenfalls gehört, gearbeitet?
Ich habe nämlich ein bisschen das Gefühl, dass dir ein paar Grundlagen 
Kenntnisse zu dem Controller und seiner Hardware fehlen. Das ist jetzt 
nicht negativ gemeint, aber um dir helfen zu können, musst du schon 
etwas mehr dazu beitragen (Informationen rausrücken). :)

Ciao,
     Rainer

von Michael L. (hasimaus)


Lesenswert?

Hallo,

wenn Du noch immer die Adresse des TMP100 suchst, die steht im 
Datenblatt.
http://focus.ti.com/lit/ds/symlink/tmp100.pdf  Seite 8.

Dort wird genau erklärt, wenn welche der beiden Pins ADD0 & ADD1 auf 
welchem Pegel liegen, welche Slave Adresse dann benutzt wird. Wichtig 
dabei ist, das es auch einen Zustand "Float" gibt, also ein offener Pin 
Eingang.

Ist das in die Richtung der Antwort die Du erwartest ?

Gruß

von Michael L. (hasimaus)


Lesenswert?

Hallo nochmal,

ich hab gesehen, dass auf dem NLB_LPC935 Board die Pins ADD0 & ADD1 auf 
"0" liegen. Die Slave Adresse wäre somit 1001000.

Von TI selbst gibt's noch eine kurz AppNote.
http://focus.ti.com/lit/an/slaa151/slaa151.pdf

Gruß

von Dieter Krutzler (Gast)


Lesenswert?

So danke mal für die Antworten.
Ist leider so, dass mir grundlegende Kenntnisse zu allen 
Microcontrollern fehlen. Aber zumindest das mit der Adresse hab ich mal 
verstanden. Danke an alle. Ich hoffe jetzt funktionierts.

Grüße

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
Noch kein Account? Hier anmelden.