Für dieses Forum muß Javascript im Browser aktiviert werden!
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 Johannes, > > > im Moment habe ich noch etwas Kaos, da ich nicht genau sortieren kann, welche Module zwingend > > notwendg sind bei Nutzung von OSPOT V3.0. > > Es heißt OSOPT V3.0, nicht "OSPOT". > > Bedenke, daß das OS und die Module zwei paar Schuhe sind. > Im Prinzip kann man jedes OS mit allen Modul-Versionen verwenden. > Es gibt wenige Ausnahmen, wie pcf8583.c2 oder flash.c2 . Dies steht jedoch immer > im Modulheader des betreffenden Moduls. > > > > Mein Versuch nur ein 2W-BusModem mit einem Modul: T23-100 anzuschließen und die Temperatur > > anzuzeigen scheitert an nicht aufgelösten Funktionen (mit den mitgelieferten Beispielen -- für das > > alte Betreibssystem?) > > Wie gesagt, das hat nichts mit den Betriebssystemversionen zu tun, sonder mit > den verwendeten Modulen. > > >, z. B: im Modul t23100.c2 wird der Aufruf station_io.init angemängelt. > > dieses MOdul darf ja mit OSOPT V3.0 nicht mehr verwendet werden. > > Das stimmt nicht. Die veralteten Module von Conrad können ohne weiteres noch > mit OSOPT V3.0 verwendet werden. Jedoch kann ich das keinem empfehlen. > > > Was mir fehlt ist eine Querverweistabelle mit alten zu neuen Aufrufen, um die MOdule > > entsprechend abzuändern. > > Gibt es so etwas, wenn ja wo? > > Soetwas gibt es nicht, da ich hierfür schlicht keine Zeit habe. > Aber, da die meisten Funktionen selbsterklärend sind und Hilfe-HTMLs existieren, sollte > das umstellen kein Problem sein. > Im Prinzip ersetzen die Module stports.c2 und stkeyb.c2 das Modul station_io.c2. > Statt station_io.init() schreibst Du eben stports.init(). > Die Portfunktionen heißen etwas anders. Aber das sollte kein Problem darstellen. > Für LCD-Ausgaben verwendest Du das Modul lcdext.c2 . > Hier sind die Funktionen auch anders, als in den Original-Modulen von Conrad. > Jedoch sind diese leichter verständlich. > Das wichtigste ist, daß Du anstatt station_lcd.home() und station_lcd.line2() > eben lcdext.line(1); bzw. lcdext.line(2); verwendest, was aber wiederum kein Problem sein sollte. > Bei der Print-Funktion wird keine länge des Strings angegeben. > die printlength-Funktion entspricht der Conrad-Print-Funktion. > > Mit etwas Logik und lesen sollte die Umstellung auf die alternativen Module kein Problem darstellen. > > Im Anhang noch der abgeänderte Code von t23_100.c2 . > > MfG André H. > > <code>/*******************************************************/ > /* DEMO ZUR ANSTEUERUNG DER 2W-BUS RESOURCEN */ > /*******************************************************/ > /* Author : DIE HARD */ > /* Geändert : André Helbig */ > /* Versionen : 2.0 */ > /* Datum : 28. November 2004 */ > /* Getestet : ja */ > /* Bemerkung : Benutzung des Moduls twbus */ > /*******************************************************/ > /* Bemerkung : Benutzung der get_xxx funktion zum */ > /* Abfragen der 2W-BUS SENSOREN */ > /* Hier: der T23-100 */ > /*******************************************************/ > string s; > > /*******************************************************/ > /*** ERROR MESSAGE "NO SENSOR ......" */ > /*******************************************************/ > function no_sensor_msg() > { > lcdext.clear(); > lcdext.print("NO SENSOR......"); > plm.beep(plm.TONE_C2); sleep 50; plm.beep(plm.TONE_OFF); > sleep 1000; > } > > //IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII > //IIIIIII THREAD IIIIII > //IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII > thread main > {float temp; > stports.init(); > stports.LCDlight(-1); > lcdext.init(); > twb.init(); > // ------------- START MESSAGE ------------------------- > lcdext.print(" T-23-100"); > lcdext.line(2); > lcdext.print(" DEMO"); > sleep 1000; > lcdext.clear(); > //-------------------------------------------------------- > // -------- GET TEMP FROM SENSOR ADDRESS 85 -------------- > //-------------------------------------------------------- > loop > { > temp=twbus.get_temp(85); > if twbus.status > no_sensor_msg(); > // ----------- DISPLAY TEMPERATURE ------------------- > else > { > lcdext.line(1); > s = "TEMP= "; > str.putfloatf(s,temp,2); > str.putstring(s," C "); > lcdext.print(s); > } > } > }</code>