2016-08-10 1 views
0

Ich versuche, lange Zeichenfolge an Android über Bluetooth zu senden.Arduino senden lange Zeichenfolge an Android

aber

enter image description here

Es sieht aus wie das Bild.

einige Zeichen sind geändert.

Wie kann ich eine genaue vollständige Zeichenfolge erhalten?

arduino Code:

for(int i=0;i<16;i++){ 
     String rec = String(P[i], HEX); 
     if(rec.length()<2) rec = "0"+rec; 
     BTSerial.println(rec); 
     delay(50); 

P ist ein Byte-Array. Vielen Dank.

+0

in Ihrem Code a} fehlt – datafiddler

Antwort

1

Probieren Sie es ohne String-Objekte:

// return '0' .. 'F' 
char hexnibble(byte nibble) { 
    nibble &= 0x0F; // just to be sure 
    if (nibble > 9) return 'A' + nibble - 10; 
    else return '0' + nibble; 
} 

void loop() { 
byte P[16]; 
// ... fill P somehow ... 
char rec[33]; 
for(int i=0;i<16;i++){ 
     rec[2*i] = hexnibble(P[i] >> 4); 
     rec[2*i+1] = hexnibble(P[i] & 0x0F); 
} 
rec[32] = 0; // string terminator 

Serial.println(rec); // just for debugging 
delay(1000); 
} 
+0

Sie so viel Dank! Es klappt. –

+0

Viel Spaß beim Lesen, auch mit dem kleinen Syntaxfehler (sorry dafür) – datafiddler

Verwandte Themen