Lo que pasa es que el mscomm te recibe en codigo asci es decir que si tu le envias desde el pic en binario 00000001, el mscomm lo va traducir es asci de ese numero por lo que se te mostrara el caracter que representa el 00000001. Puedes hacer dos cosas:
Primera:
antes de enviar el dato; conviertelo a codigo BCD en el Pic luego le sumas 30H (hexadecimal) y despues envias hacia el PC.
Segunda:
sino quieres convertir a bcd, entonces envias el datos como lo estas haciendo y a la variable donde guardas el valor le haces lo siguiente:
Variable_tipo_variant=CDec(Variable_donde_esta_el_dato_leido)y listo, despues muestras el valor en donde ti quieras.
