Autor Tema: Envio de Dato cadena y Recepcion por serial MIKROC  (Leído 2874 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Varcorp

  • PIC10
  • *
  • Mensajes: 5
Envio de Dato cadena y Recepcion por serial MIKROC
« en: 07 de Junio de 2017, 20:04:11 »
Buenas tardes,

Estoy trabajando con mikroc para enviar y recibir datos cadena, ya logre leer el dato. en el Receptor con la funcion

 UART1_Read_Text(output, OK, 10).

al leer el dato y presentarlo en LCD no lee el dato completo.

ej:    dato enviado    22640
       dato recibido y presentado LCD    22

alguna sugerencia de cual prodria ser la falla

Gracias

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:Envio de Dato cadena y Recepcion por serial MIKROC
« Respuesta #1 en: 07 de Junio de 2017, 20:22:03 »
Deberias poner el codigo completo, ya que puede haber muchos errores.

Desconectado Varcorp

  • PIC10
  • *
  • Mensajes: 5
Re:Envio de Dato cadena y Recepcion por serial MIKROC
« Respuesta #2 en: 07 de Junio de 2017, 20:29:55 »
Gracias por la pronta respuesta, el fallo solo es en la recepcion entre pic, el dato del emisor lo lee adecuadamente en la terminal serial.
en un rato mas adjunto los dos programas,  ya intente por todos los medios, leer ese dato de envio.  bucles. sentencias, al parecer es que no sabe el receptor donde inicia el dato a leer, por la representacion en la LCD.


Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:Envio de Dato cadena y Recepcion por serial MIKROC
« Respuesta #3 en: 07 de Junio de 2017, 22:00:13 »
Intenta en la PC enviar el dato y un caracter mas. Ejemplo envia "123456|"

Y usa

 UART1_Read_Text(output, "|", 10).

De esa forma la funcion sabe donde termina.
Asegurate tambien que el array output pueda contener TODO el texto posible.

Desconectado Varcorp

  • PIC10
  • *
  • Mensajes: 5
Re:Envio de Dato cadena y Recepcion por serial MIKROC
« Respuesta #4 en: 08 de Junio de 2017, 16:18:04 »
Gracias KILLERJC   

El por que Utilizo  "0"  o 0x00  es por que la funcion en el emisor.

LongToSTr(Dato, Txt ) , Realiza la tranformacion del dato en una cadena de 11 caracteres mas null o 0x00 . que es el final cadena ya implicito en a misma.

en el receptor funciona bien cuando lo pruebo por teclado.  con [12] posiciones,  ejemplo ingreso 12345 y null (0). y lee bien.
en el receptor por radiofrecuencia no lo lee bien en el orden.