Convertir una letra de Binario a su caracter normal

Entonces si te estoy entendiendo estas tratando de implementar una comunicación inalámbrica por láser?
quizás no sea relevante, pero como vas a sincronizar los "unos" y "ceros" que vas a enviar? es decir después de un cero como saber cuando leer el siguiente número? que pasará si vuelve a ser cero?
en cuanto a como enviar eso creo que no es tan dificil veo que la información de cada letra la almacenas en un byte entonces lo unico que debes hacer es acceder a cada bit esto lo puedes hacer con un for asi:

int a=bin10101010;
bool bin=0;
for(int pos=8;pos<1;pos--){
 bin=a>>pos;
 Serial.print(bin,BIN);
 }

La idea es tener una variable que almacene el valor desplazado de tu variable, después transfieres, y el ciclo hace menos desplazamientos.
y así accedes a los valores binarios, no se si es lo que quieres. la función no se si funcione es solo un ejemplo creado rápidamente.Esto seria para enviar.
para recibir haces lo mismo, recives un bit, lo guardas en una variable(recorrido varias veces) recibes el siguiente lo sumas a la variable (recorrido varias vecces-1)
y asi, aqui debes tener en cuenta que bit sera enviado primero, el mas significativo o e menos.
Saludos y Suerte