-
-
Erfahrener Benutzer
Fleißiges Mitglied
Wenn man zwischen den einzelnen Informationen ein bekanntes Trenzeichen einfügt, so kann man unabhängig vom Buffer solange die empfangenen Daten aneinander ketten, bis das Trennzeichen kommt und erst dann ein eine Aktion auslösen.
So hat man immer genau ein Datenpaket zur weiteren Verarbeitung.
Als Trennzeichen bieten sich z.B. Chr(13) oder auch ";" an.
Ich habe auf meinem BOT sogar eine Art XML-Protokoll eingeführt.
Der AVR sendet also z.B.: <Kompass>360</Kompass><US>100</US>
An Hand der Steuerzeichen "<" "</" und ">" kann man dann nicht nur die Einzelinformationen mit total unterschiedlichen Längen filtern, sondern auch noch Verschachtelungen machen:
<Motorlinks>
<Geschwindigkeit>100</Geschwindigkeit>
<Entfernung>1000</Entfernung>
<Richtung>Vor</Richtung>
</Motorlinks>
<Motorrechts>
<Geschwindigkeit>100</Geschwindigkeit>
<Entfernung>...
Diese ganzen Blöcke sind dann natürlich auch mit dem Microsoft XMLDOM-Objekten lad- und bearbeitbar:
XMLDOM.load(Buffer)
Print "Kompasswert:" & XMLDOM.selectsinglenode("Kompass").text
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen