Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Wichtig: Bevor Du wegen einem Problem mit der CC2 postest, stelle sicher, daß Du
die neueste OS-Version, die neuseste Compiler-DLL und die neuesten Modulversionen benutzt!
Beachte, daß sich auf der CD zur CC2-Unit/Station auch jetzt noch die ältesten Dateien befinden!
Es gelten folgende Anleitung und Regeln: Regeln CC2Net.de-Forum
Zurück zum Artikel  (Blaue Felder sind Pflichtfelder)


Name:   UserID: 
 E-Mail:
Kategorie
Betreff
Homepage:
Link-Titel:
Link-URL:
Cookie für Name, UserID, E-Mail, Homepage-URL setzen
(Erspart die Neueingabe bei Beiträgen und Antworten)
(Zum Löschen des Cookies hier klicken)
Ich nutze:
C-Control II Unit
C164CI-Controllerboard
C-Control II Station
CCRP5 mit CC2-Unit (Conrad Roboter)
CC2-Application-Board
CC2-StarterBoard
CC2-ReglerBoard
eigenes Board
original OS     OSOPT_V2     OSOPT V3.0 OSOPT V3.1

Kommentar:
Einfügen von HTML im Kommentar:

Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a>
Bild einfügen: <img src="BILDURL">
Text formatieren: <b>fetter Text</b>  <i>kursiver Text</i> <u>unterstrichener Text</u>
Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b>
C2 Quellcode formatieren: <code>Quellcode</code>
ASM Quellcode formatieren: <asm>Quellcode</asm>
(Innerhalb eines Quellcodeabschnitts ist kein html möglich.)
Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst !  

> Hallo Mark, > > > wollte heute eigentlich nur ne ganz simple sache versuchen. den lm75 tempsensorchip von conrad > > mit i2c schnittstelle an mein ccontrol2 anschließen! > > > > http://www.produktinfo.conrad.com/datenblaetter/150000-174999/165883-da-01-en-lm_75.pdf > > > > um zu gucken an welcher addresse mein lm75 ist hab ich ne einfache schleife programmiert, die > > für jeden addresse überprüft was das i2c.start zurückliefert: > > > > for i=0 ... <255 > > { > > i2c.init(); > > result = i2c.start(i); > > string s; > > str.clear(s); > > str.putint(s,i); > > str.putstring(s,": RESULT = "); > > str.putint(s,result); > > str.putstring(s,"\n\r"); > > sendString(s); // über serielle schnittstelle ausgeben > > } > > > > leider bekomme ich überall den wert 0 zurück. > > jetzt weiss ich nicht ob ich das ding überhaupt richtig angeschlossen habe. stromversorgung > > addressierung ist soweit klar. was ist mit scl und sda ? werden die direkt 1 zu 1 auf den lm75 > > gesteckt? so hab ich das jedenfalls gemacht... > > > > was mach ich falsch? > > Du machst grundlegende Dinge falsch: > 1. Warum führst Du i2c.init() bei jedem Schleifendurchlauf aus ? > Man benötigt i2c.init() nur, wenn man die Ports vom I²C-Bus anderweitig "mißbraucht" hat. > I.d.R wird er I²C-Bus bei jedem Start des Programms systemseitig initialisiert. > 2. Wenn man i2c.start() ausführt muß auch irgendwann einmal ein i2c.stop folgen. > Sonst wird das nichts. > 3. Um den I²C-Bus zu scannen, sollten nur die geraden Adressen verwendet werden ! > Die Addressen 0 und 1 sollten auch nicht verwendet werden, da dies Generall-Call Adressen sind ! > Aber, warum schlägst Du nicht einfach im Datenblatt des LM75 nach, um die Adresse zu erfahren. > Dort steht ganz deutlich drin, daß Der Baustein die Basisadresse 0b10010000 hat. (=0x90 bzw. 144) > > Und, wenn Du dennoch scannen willst, dann benutze bitte eine Routine nach diesem Schema: > <code> > for i=2 ... 254 step 2 > { > hwcom.print("Addr: "); > hwcom.num(i); > hwcom.tab(); > hwcom.print("Ack.: "); > hwcom.num(i2c.start(i)); > i2c.stop(); > hwcom.ret(); > }</code> > > MfG André H.
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB