¿Será que falta un Intro al final de cada envío?
¿Y la recepción del PIC cómo la haces?asi es como recepciono si:
Creo que sería mejor si haces la recepción en el PIC utilizando la interrupción de la USART y dejando en un buffer los caracteres recibidos para luego procesarlos. Es probable que tu PC vaya mucho más rápido de lo que el PIC puede tragar y se escapen cosas.
Buennass:
Yo tuve un problema parecido, cuando le enviaba caracteres de mi programa vb al dspic se colgaba porque aunque estuviesen configurados los dos a la misma velocidad (programa vb y dspic) el dspic no le daba tiempo a cogerlos todos y se colgaba, consegui solucionarlo poniendo un delay que para salir del paso me sirvió, yo puse esto:
Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) 'Puede dar problemas leido en el foro
Y esto dentro de la función:
frmPrincipal.MSComm1.Output = Chr$(&H3C) 'Caracter sincronismo
Sleep 100 'Si no le pongo este delay se resetea el dspic
frmPrincipal.MSComm1.Output = Chr$(&H1) 'Modo Algoritomo PY0
Sleep 100
.....
si quieres leer más del problema que tuve por si es el mismo que tu tuviste aquí te dejo lo que escribi en el foro y lo que me respondieron,
Foro VB (http://www.todopic.com.ar/foros/index.php?topic=7013.100)
Foro dspic (http://www.todopic.com.ar/foros/index.php?topic=17297.0)
Suerte y saludos,