Quindi non c'entra nulla la conversione; in effetti Lele aveva risposto correttamente ...
Se la send accetta un puntatore ad una stringa, probabilmente questa non invia solamente il primo carattere ma tutta la stringa puntata. E dato che la stringa viene terminata da uno zero binario, mancando questo terminatore, viene inviato tutto quello che trova dopo il carattere che hai inserito (ovviamente caratteri casuali).
Devi quindi correggere in questo modo
unsigned char a[2];
a[0] = 0x1A;
a[1] = 0x00;
send(a);
A parte il fatto che, ti faccio solo notare, il codice che hai scritto e' errato comunque in quanto non prevede l'allocazione del singolo carattere ...

Rispondi quotando