Autor Tema: Serout2  (Leído 2068 veces)

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

Desconectado juanez

  • PIC12
  • **
  • Mensajes: 90
Serout2
« en: 28 de Diciembre de 2006, 16:05:51 »
Hola quiero enviar el valor leido de un canal del conversor A/D de un 16F870 a traves de serout2 a otro dispositivo o pic.

Consigo la comunicacion sin problemas con otro pic.
El problema es que no se enviar el valor leido del conversor.

Supongamos que el valor leido es el maximo "1023", pues puedo enviar 2 cifras sin problemas:

Si por ejemplo envio "23" llega sin problemas,  pero supongamos que el valor leido esta en una variable X y su valor es 1023.

Si tengo que enviar el valor de x a traves de serout en 2 envios de 2 cifras y x tiene 4 cifras ¿Como lo hago?

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Serout2
« Respuesta #1 en: 28 de Diciembre de 2006, 16:50:32 »
Pues no debe haber problemas  con poner  serout2 pin velocidad [variable]

En variable puedes poner BIN variable si quieres que sea binario como se muestre, DEC si es decimal y muestra tal cual el valor de la variable.
No debe de haber broncas.
 
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado Mario

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 873
Re: Serout2
« Respuesta #2 en: 28 de Diciembre de 2006, 22:33:14 »
Creo que esto te servirá:
http://www.microengineeringlabs.com/resources/samples/pbp/ser2mod.bas

Si entiendo bien, no es el problema mandar y/o recibir y desplegar BIN, DEC, HEX, sino el mandar 1023 que no te cabe en un byte, debes hacer una palabra.
Para eso debes mandar el valor bajo y alto de TX (TX.highbyte o TX.1 y TX.lowbyte o TX.0) uno después de otro y que el PIC receptor los acomode como sea pertinente: si mandas primero el alto, recibes primero el alto y lo colocas en el byte alto del receptor (RX.1 o RX.highbyte) y lo mismo con el de menor peso (RX.0 o RX.lowbyte).

Puedes intentarlo, he mandado varios registros de un PIC a otro utilizando el código del ejemplo del enlace.

Espero te sirva.
La buena administración es utilizar el sentido común y la regla de oro; aunque el sentido común no es tan común como quisiéramos que fuera y, quien tiene el oro, hace las reglas.
George Terry

"A loser will defeat a genius with hard work"
Rock Lee

Desconectado Veguepic

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2119
Re: Serout2
« Respuesta #3 en: 29 de Diciembre de 2006, 00:48:29 »
Mi recomendacion es que envies los 8 bits mas significativos, pues los ultimos 2 bits normalmente varian mucho por el ruido y otros factores, siendo mas practico obviarlos.

Yo tambien estuve probando con serout2 y enviaba los datos en una variable del tipo WORD, luego me decidi por lo anterior.

Saludos
« Última modificación: 29 de Diciembre de 2006, 01:20:20 por veguepic »
“Si la gente es buena sólo porque temen al castigo y porque esperan una recompensa, entonces verdaderamente somos un grupo lastimoso." Albert Einstein.

Saludos desde Lima , Peru    -    Hugo

Desconectado juanez

  • PIC12
  • **
  • Mensajes: 90
Re: Serout2
« Respuesta #4 en: 01 de Enero de 2007, 14:56:12 »
Lo que quiero hacer es lo que comenta mario, mandar el valor de 1023 o el que corresponda, con el envio recepcion no tengo problemas.

Voy a probar con el post de mario haber que tal.

Salu2

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Serout2
« Respuesta #5 en: 01 de Enero de 2007, 15:22:45 »
Pues lo que puso Mario no le veo diferencias a lo que ya se ha comentado en otros temas del seorut2. En fin espero logres enviarlo, en mi caso no he tenido problemas nunca
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado juanez

  • PIC12
  • **
  • Mensajes: 90
Re: Serout2
« Respuesta #6 en: 01 de Enero de 2007, 18:34:18 »
Ya esta solucionado.

El problema era que no podia enviar 1023 por ejemplo, podia enviar 10 o 23 o lo que sea pero solo 2 cifras.

La solucion ha sido usar una palabra como comenta mario, y enviar el byte alto y el bajo, y luego recibirlos en el mismo orden.

Salu2