Autor Tema: ¿Qué datos salen por RS232?  (Leído 1959 veces)

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

Desconectado ramirez

  • PIC16
  • ***
  • Mensajes: 195
¿Qué datos salen por RS232?
« en: 25 de Septiembre de 2011, 07:43:29 »
Hola a todos, intento ver con detalle lo que sale por el puerto serie (RS232). Espero que este sea el subforo adecuado, lo he puesto aquí ya que la programación está en C. Lo que quisiera saber con detalle es la trama de datos que sale por el puerto.

Para ellos he puesto  en una entrada un conversor AD, cuya valor visualizo en el termina virtual y ademas lo paso a un array de led. Adjunto están todos los ficheros, e incluso una captura de pantalla, en la cual la entrada del conversor está al máximo, por el virtiual terminal obtengo de forma repetida el valor "ff", y por el array de led tambien obtengo este valor en binario 0b11111111, lo cual está bien.

Hasta aquí todo correcto, pero mi duda está, en la transmisión de datos del puerto serie, al poner un osciloscipio en su salida deberia de ver en alguna parte de la trama de datos los ochos unos del valor de "ff" (aparte de bit de stop, inicio,etc) , es decir un pulso alto de aproximadamente 8x104 us, y no lo veo.

He puesto varios valores en la entrada analógica y siempre ocurre lo mismo. El valor del virtual terminal y array de leds coinciden, pero nunca veo esta trama en el osciloscopio.

Gracias a todos por cualquier sugerencia

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: ¿Qué datos salen por RS232?
« Respuesta #1 en: 25 de Septiembre de 2011, 11:17:57 »
En estado IDLE el pin TX tiene 5V o 3.3V (según el micro que se use). No vas a ver un pulso, sino que cuando se envie el dato, dependiendo del valor veras pulsos descendentes.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: ¿Qué datos salen por RS232?
« Respuesta #2 en: 25 de Septiembre de 2011, 14:20:45 »
Segun acabo de aprender... El pin TX  (ya sea por software o por hardware el usart) del pic se mantiene en 1 siempre. Cuando se envia un dato, entonces se baja esa señal por un tiempo, siendo esta señal el start de la trama. Luego sigen 8 pulsos mas con tiempos iguales y finalmente, se levanta la señal a 1 como stop y se queda asi hasta una nueva señal.

Corriganme si me equivoco, gracias.

Desconectado MerLiNz

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2463
Re: ¿Qué datos salen por RS232?
« Respuesta #3 en: 25 de Septiembre de 2011, 14:41:14 »
tambien puede haber un 9º bit para el control de paridad o control de direccion

Desconectado ramirez

  • PIC16
  • ***
  • Mensajes: 195
Re: ¿Qué datos salen por RS232?
« Respuesta #4 en: 25 de Septiembre de 2011, 16:53:35 »
Gracias a todos por las respuestas. Suky no entiendo muy bien la respuesta, ¿te refieres a una medición real con un osciloscopio? ya que en la simulación si puedo ver una trama de bits (en el archivo adjunto se puede ver una captura de pantalla) , aunque en reposo como dice nuestro amigo jeremylf esta a 1. Lo que ocurre como dije anteriormente que no coincide con lo visto en el virtual terminal.

Desconectado MerLiNz

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2463
Re: ¿Qué datos salen por RS232?
« Respuesta #5 en: 25 de Septiembre de 2011, 17:37:36 »
si coindide, unicamente es que estas enviando 2bytes no 1, cuando pones %x estas enviando un numero en ascii hexadecimal es decir, cuando el A/D esta en 0xFF lo que envias es "ff", sino fijate que vas enviando caracteres de 2 en 2.
« Última modificación: 25 de Septiembre de 2011, 17:46:29 por MerLiNz »

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: ¿Qué datos salen por RS232?
« Respuesta #6 en: 25 de Septiembre de 2011, 17:45:42 »
Estas enviando 2 caracteres ascii, o sea envías 0x66, 0x66  ... Leer sobre codificación ascii  ;-)
No contesto mensajes privados, las consultas en el foro

Desconectado MerLiNz

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2463
Re: ¿Qué datos salen por RS232?
« Respuesta #7 en: 25 de Septiembre de 2011, 17:45:52 »
aqui te pongo una imagen con los bits



S=start bit
E=end bit
I=idle

el usart envia primero el ultimo bit hasta el primer bit, es decir lo envia inversamente LSB->MSB

f=102dec=0b1100110


 

anything