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 ACU, > > das sollte eigentlich kein Problem sein. Schaue mal in die Hilfe zum strx.c2 Modul. > Da steht alles drin, auch wie man aus einem String nur bestimmte Teile ausliest und diese > dann zur Weiterverarbeitung gibt. > > Aber !! Damit das alles einfach und problemlos geht, denke Dir ein Protokoll aus, wo der > Datenrahmen immer aus gleich vielen Zeichen besteht. ( und natürlich mit System ). > Und wenn Du nur Zahlen verwendest, wird nochmal einfacher ! > > etwas so: > > alles was vom PC gesendet wird, besteht aus 8 Zeichen. > 1. Zeichen 1 oder 2 // 1 für Anfrage - 2 für Befehl > 2. 3. Zeichen 11 bis 99 // für hardware wie 11 für Motor1 - 12 für Motor2 > 4. 5. 6. Zeichen 0 bis 999 // für Werte > > und halt so weiter oder so ähnlich, weist ja selbst was Du am besten brauchst. > Ich hoffe es ist einigermaßen verständlich rübergekommen > > > Rene > > > > > > Hallo! > > Ich weiß, dass es dieses Thema schon gab, aber mein Problem ist ein bischen > > anders. > > Folgende Problemstellung: > > Ich sende über den PC eine Befehlstring über die Serielle Schnittstelle. > > Die Abfragen sollen immer mehr gesplittet werden. > > Das heißt, dass am Anfang Unterschieden wird, zwischen Befehl und Anfrage. > > Dafür steht das erste Zeichen in der String (A oder B). > > Mit der Splittung will ich erreichen, dass die empfangene String nicht mit allen > > vorhandenen Strings verglichen werden muß, sondern nur mit denen, die in die engere Wahl > > kommen. > > Die String soll dabei immer kürzer werden (die ersten Zeichen, die schon > > interpretiert wurden (dass A bzw. B) sollen abgeschnitten werden. > > Mein größtes Problem ist es, aus einer String zum Beispiel > > BLIMOTOR=255 den Wert 255 zu extrahieren, um diesesn für die PLM Ports zu verwenden. > > > > Es wäre schön, wenn ihr die Befehle gut erklären könntet, da > > ich mit den anderen Beispielen, die ich im Forum gefunden habe (zum Beispiel: > > <code> > > thread main > > { string s, searchfor; int port; > > hwcom.init(); > > hwcom.setspeed(8); > > hwcom.put(12); // Terminal-Fenster löschen > > loop > > { > > s=""; > > hwcom.inputstr(s,1); // String einlesen, Echo zurücksenden > > hwcom.put(10); > > strx.Ucase(s,0,str.length(s)); // String in Großbuchstaben umwandeln > > if strx.getchar(s,0) == 'P' > > { > > port=strx.getchar(s,1)-0x30; > > if port>=0 and port <=7 > > {port=port+8; > > searchfor="EIN"; > > if strx.InStr(0,s,searchfor,str.length(s),3) != -1 ports.set(port,1); > > searchfor="AUS"; > > if strx.InStr(0,s,searchfor,str.length(s),3) != -1 ports.set(port,0); > > searchfor="DEACT"; > > if strx.InStr(0,s,searchfor,str.length(s),5) != -1 ports.deact(port); > > } > > } > > else > > if strx.getchar(s,0) == 'G' > > { > > port=strx.getchar(s,1)-0x30; > > if port>=0 and port <=7 > > { > > s="Port P1H."; > > str.putint(s,port); > > port=port+8; > > if ports.get(port) s=s+ " EIN"; else s=s+ " AUS"; > > hwcom.print(s); > > hwcom.ret(); > > } > > } > > else > > { > > s="No Command"+13+10; > > hwcom.print(s); > > hwcom.ret(); > > } > > } > > } > > </code> leider nichts anfangen kann. > > > > > > > > ACU > > > >
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB