Autor Tema: Duda con los bits de inicio y parada RS232 envio PIC hacia PC puerto serie  (Leído 3762 veces)

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

Desconectado Mejido

  • PIC10
  • *
  • Mensajes: 15
Estoy haciendo un programa con MPlab y me ha surgido una duda. Voy a realizar una transferencia asincrona de un dato de 8 bits. Entonces veo que es necesario un bit de parada y un bit de inicio. En mi caso el de parada es el "1" y el de inicio es el "0". Entonces queria saber como se pueden añadir a un registro esos bits. Es decir:

Tengo el registro "W" y en ese registro tengo mi dato de 8 bits a enviar, como puedo añadir al principio un "0" y al final un "1" para luego ya enviarlo por el puerto serie.


movwf TXREG





Muchas gracias

Desconectado AKENAFAB

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3227
Re: Duda con los bits de inicio y parada RS232 envio PIC hacia PC puerto serie
« Respuesta #1 en: 23 de Septiembre de 2009, 06:39:01 »

Hola pana!

Que pic estas usando??

Que lenguaje de programacion??

Por la instruccion que pones lo tomo como ASM , pero  es mejor que lo indiques , como haces referencia a un registro de USART , dire que tu pic tiene el modulo serial.

El bit de Inicio y Parada , los genera este mòdulo.

Solo cargas el valor al registro TXREG y empieza la tranmision.

Para ello debes configurar los respectivos pines.
Estableces los valores del SPBRG acorde al BaudRate
Habilitar el puerto serial
Habilitar la trasmision
Y cargar el dato al registro TXREG

Puedes usar interrupciones para saber cuando termino el envio o leer el estado del registro

Revisa en Almacen del Assembler , encontraras diferentes ejemplos y aplicaciones con este mòdulo.

Saludos!

Desconectado Mejido

  • PIC10
  • *
  • Mensajes: 15
Re: Duda con los bits de inicio y parada RS232 envio PIC hacia PC puerto serie
« Respuesta #2 en: 23 de Septiembre de 2009, 06:51:34 »

Hola pana!

Que pic estas usando??

Que lenguaje de programacion??

Por la instruccion que pones lo tomo como ASM , pero  es mejor que lo indiques , como haces referencia a un registro de USART , dire que tu pic tiene el modulo serial.

El bit de Inicio y Parada , los genera este mòdulo.

Solo cargas el valor al registro TXREG y empieza la tranmision.

Para ello debes configurar los respectivos pines.
Estableces los valores del SPBRG acorde al BaudRate
Habilitar el puerto serial
Habilitar la trasmision
Y cargar el dato al registro TXREG

Puedes usar interrupciones para saber cuando termino el envio o leer el estado del registro

Revisa en Almacen del Assembler , encontraras diferentes ejemplos y aplicaciones con este mòdulo.

Saludos!


Es el pic16f877 y si es en ensamblador. ¿Entonces no me haria falta cargar los bits de inicio y parada? ¿Ya lo hace el modulo serial? Muchas gracias

Desconectado AKENAFAB

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3227
Re: Duda con los bits de inicio y parada RS232 envio PIC hacia PC puerto serie
« Respuesta #3 en: 23 de Septiembre de 2009, 07:01:41 »
Exacto pana!

El bit de inicio y fin , los pone el módulo.

SOlo tienes que configurar dicho modulo y los pines de este.
Despues solo cargar el dato de 8 bits en el registros TXREG.

En la seccion 10 de las especificaciones del pic vienen los detalles

ADDRESSABLE UNIVERSAL
SYNCHRONOUS
ASYNCHRONOUS RECEIVER
TRANSMITTER (USART)



Saludos!


« Última modificación: 23 de Septiembre de 2009, 07:04:31 por AKENAFAB »

Desconectado Mejido

  • PIC10
  • *
  • Mensajes: 15
Re: Duda con los bits de inicio y parada RS232 envio PIC hacia PC puerto serie
« Respuesta #4 en: 23 de Septiembre de 2009, 07:07:26 »
Exacto pana!

El bit de inicio y fin , los pone el módulo.

SOlo tienes que configurar dicho modulo y los pines de este.
Despues solo cargar el dato de 8 bits en el registros TXREG.

En la seccion 10 de las especificaciones del pic vienen los detalles

ADDRESSABLE UNIVERSAL
SYNCHRONOUS
ASYNCHRONOUS RECEIVER
TRANSMITTER (USART)



Saludos!



Muchas gracias por la informacion, voy a probarlo!!!  :)

Desconectado Mejido

  • PIC10
  • *
  • Mensajes: 15
Re: Duda con los bits de inicio y parada RS232 envio PIC hacia PC puerto serie
« Respuesta #5 en: 23 de Septiembre de 2009, 07:24:44 »
Una ultima duda que me surge. Cuando inicializo el TXSTA, el bit TRMT que debe estar a 1 o 0 .  ¿Será necesario para algo durante el envio del programa? o ¿podria trabajar sin chequearlo?

Desconectado AKENAFAB

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3227
Re: Duda con los bits de inicio y parada RS232 envio PIC hacia PC puerto serie
« Respuesta #6 en: 23 de Septiembre de 2009, 07:35:00 »
Ese  bit es de solo lectura  e indica el estado del registro .

Te indica si ya se envio el dato o no.

Antes de Cargar nuevamente el registro TXREG , debes asegurarte de que el ultimo dato ya se envio.

Para eso esta se bit TMRT y TXIF

Desconectado Mejido

  • PIC10
  • *
  • Mensajes: 15
Re: Duda con los bits de inicio y parada RS232 envio PIC hacia PC puerto serie
« Respuesta #7 en: 23 de Septiembre de 2009, 07:36:19 »
Ese  bit es de solo lectura  e indica el estado del registro .

Te indica si ya se envio el dato o no.

Antes de Cargar nuevamente el registro TXREG , debes asegurarte de que el ultimo dato ya se envio.

Para eso esta se bit TMRT y TXIF
Muchas gracias de verdad me has sido de mucha utilidad