Erstbenutzer, Hallo Leute!Bitweise Operatoren und konvertieren ein int zu 2 Bytes und wieder zurück
Also hoffentlich kann jemand helfen .. Mein Hintergrund ist php also Eingabe des Wortes von lowend Sachen wie, Char ist Bytes, die Bits sind .. was binäre Werte .. etc dauert einige Zeit, um den Hang zu bekommen ;)
Was ich hier versuchen will, ist ein paar Werte von einem Ardunio-Board nach openFrameWorks geschickt (beide sind C++).
Was dieses Skript gegenwärtig der Fall ist (und funktioniert gut für einen Sensor wie ich hinzufügen möchte), wenn für die Daten gefragt gesendet werden soll ..
int value_01 = analogRead(0); // which outputs between 0-1024
unsigned char val1;
unsigned char val2;
//some Complicated bitshift operation
val1 = value_01 &0xFF;
val2 = (value_01 >> 8) &0xFF;
//send both bytes
Serial.print(val1, BYTE);
Serial.print(val2, BYTE);
Anscheinend ist der zuverlässigste Weg, um die Daten über des Erhaltens .. Also jetzt, dass sie senden über die serielle Schnittstelle sind, werden die Bytes in ein char-String hinzugefügt und zurück umgewandelt ..
int num = ((unsigned char)bytesReadString[1] << 8 | (unsigned char)bytesReadString[0]);
So zu rekapitulieren, im bekommen 4 Sensoren im wert von Daten versuchen (die im angenommen, es werden 8 dieser Seriendrucke sein?) und in t num_01 - num_04 ... am Ende von allem.
Im vorausgesetzt, dies (wie bei den meisten Dingen) könnte in diesen Konzepten mit Erfahrung für jemanden ganz einfach sein ..
Jede Hilfe wäre sehr geschätzt. Dank
Aus Ihrer Frage Es ist nicht ganz klar, was Sie haben Probleme mit ... Wenn der obige Code funktioniert, dann können Sie, wie Sie sagen, mehr Serial.print-Operationen und holen Sie Ihre Werte aus anderen Indizes in die BytesReadString um das andere Ende. Was funktioniert nicht? – tgdavies