Autor Tema: Recibir datos seriales rs232 ?  (Leído 3351 veces)

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

Desconectado Automata78

  • PIC12
  • **
  • Mensajes: 61
Recibir datos seriales rs232 ?
« en: 28 de Septiembre de 2006, 20:43:17 »
Hola a todos !!!   queria preguntarles como podria configurar al 16p628a para solo recibir datos seriales a travez de USART, pero sin habilitar la pata de transmisor?, o sea, solo habilitar el receptor, ya que justo al pin del transmisor lo tengo que utilizar para otra cosa.
  Desde ya muchas gracias y me quedo en espera de sus comentarios !!!!       :shock:

Desconectado Rulo

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 168
Re: Recibir datos seriales rs232 ?
« Respuesta #1 en: 28 de Septiembre de 2006, 21:26:33 »

       deberias idicar el programa que utilizas!!
 
                   :?
                           saludos

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Recibir datos seriales rs232 ?
« Respuesta #2 en: 29 de Septiembre de 2006, 09:25:34 »
Hola a todos !!!   queria preguntarles como podria configurar al 16p628a para solo recibir datos seriales a travez de USART, pero sin habilitar la pata de transmisor?, o sea, solo habilitar el receptor, ya que justo al pin del transmisor lo tengo que utilizar para otra cosa.
  Desde ya muchas gracias y me quedo en espera de sus comentarios !!!!       :shock:

Podrias decirnos qué harás con el Pin del transmisor?  Si lo usas como salida genérica, no debiera haber problemas, pero si lo usas como entrada, tal vez sí.  No lo he probado pero recuerdo que hace un par de años surgió la misma pregunta en el foro de Microchip.

Danos mas datos!
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado vszener

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2395
Re: Recibir datos seriales rs232 ?
« Respuesta #3 en: 29 de Septiembre de 2006, 10:41:23 »
Ya que tienes un pin ocupado, ¿por qué no implementas el serial mediante software en otros pines y en otro puerto?


Suerte!!! :wink:
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado Automata78

  • PIC12
  • **
  • Mensajes: 61
Re: Recibir datos seriales rs232 ?
« Respuesta #4 en: 29 de Septiembre de 2006, 11:15:17 »
hola gente ! muchas gracias por su pronta respuesta ! miren, en mi caso estoy muy justo con los pines y de todas formas no necesito enviar datos desde el pic a la pc, solo lo que hago es enviarle algunos parametros para su funcionamiento!
  Con el pin de transmisor yo puedo decidir como utilizarlo (entrada o salida) pero siempre ttl !
  muchas gracias !! y me quedo a la espera, gracias de nuevo !

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Recibir datos seriales rs232 ?
« Respuesta #5 en: 29 de Septiembre de 2006, 13:26:16 »
hola gente ! muchas gracias por su pronta respuesta ! miren, en mi caso estoy muy justo con los pines y de todas formas no necesito enviar datos desde el pic a la pc, solo lo que hago es enviarle algunos parametros para su funcionamiento!
  Con el pin de transmisor yo puedo decidir como utilizarlo (entrada o salida) pero siempre ttl !
  muchas gracias !! y me quedo a la espera, gracias de nuevo !

El tema es el siguiente.  Si lo usas como entrada , con su TRISC en 1 (mismo estado que debe tener al configurarlo como pin de usart) , no debiera haber problemas, al menos no se me ocurre ninguno.

Si lo usas como salida realmente no se que hará si has habilitado el módulo usart.  No se si realmente 'tomas el control del pin'.  Nunca me pasó pero es un pensamiento

Como entrada de seguro funciona, ahora como salida, bueno, yo que tu hago la prueba.

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado Automata78

  • PIC12
  • **
  • Mensajes: 61
Re: Recibir datos seriales rs232 ?
« Respuesta #6 en: 01 de Octubre de 2006, 13:40:05 »
Muchas gracias, voy a intenetar hacer eso, y veo que pasa y les comento el resultado !!!
gracias !

Desconectado santipic_9

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 36
Re: Recibir datos seriales rs232 ?
« Respuesta #7 en: 01 de Octubre de 2006, 16:20:21 »
Hola a todos, hablando de puerto serie por sor software, alguien podría indicar  que limitaciones tiene?

Muchas gracias. Chao
 

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Recibir datos seriales rs232 ?
« Respuesta #8 en: 01 de Octubre de 2006, 16:30:23 »
Hola a todos, hablando de puerto serie por sor software, alguien podría indicar  que limitaciones tiene?

Muchas gracias. Chao
 

Una usart por software requiere un método de "polling" o muestreo que debe ser varias veces más veloz que el baudeaje que utilices

Es significa que si lo haces por interrupción debes tener en cuenta que usarás un timer para eso que no podrás practicamente usar para otra cosa.  Además el timer te interrumpirá entre 4, 8 a 16 veces el tiempo de un bits.  Si trabajas a 9600bps te interrumpirá cada 38400 , 76800 o 153600 veces por segundo.  Esto es para poder hacer un buen muestreo.

Ahora bien, si no usa el timer sino que hace un polling directamente con el pin, entonces el PIC solo puede hacer eso durante ese tiempo y el resto lo debes hacer por interrupción pero  considerando en que te podrías perder algún que otro bit por esta causa.

En definitiva, mi consejo es que se deben tener muchos recaudos al usar una usart por software y depende mucho del tipo de aplicación en el cual uno la vaya a utilizar.

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado santipic_9

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 36
Re: Recibir datos seriales rs232 ?
« Respuesta #9 en: 01 de Octubre de 2006, 16:42:53 »
Gracias Maunix por tu rapidísima respuesta. Por lo que me dices  casi será  mejor usar un pic con dos uart y asi no me complico, puesto que es para coger la trama de un gps y enviarla por otro puerto al gsm.
Por un puerto y con el buffer esta trama ya la doy controlado pero si implemento uno no me funciona, estoy usando el 18f2550. Trato de meter la trama por el RB1, lo configuro como entrada  e incluso he llegado a activarle la alta impedancia pero no soy capaz.
Incluso he mirado la configuración de algun ejemplo de REd-Pic y de Baztdizzy pero nada.
Bueno pues llevo toda la tarde peleando, pero hay que tener paciencia.

Gracias de nuevo Maunix, un saludo afectuoso desde A Coruña, España.



Desconectado santipic_9

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 36
Re: Recibir datos seriales rs232 ?
« Respuesta #10 en: 01 de Octubre de 2006, 16:53:39 »
Por cierto Maunix, para conectarlo al RB1 yo lo estaba haciendo directamente desde max 232 pero serie necesario colocarle alguna resistencia????
Este pin sólo  lo utilizaría  como  Rx de ese puerto.

Muchas gracias y saludos.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Recibir datos seriales rs232 ?
« Respuesta #11 en: 01 de Octubre de 2006, 17:49:07 »
Por cierto Maunix, para conectarlo al RB1 yo lo estaba haciendo directamente desde max 232 pero serie necesario colocarle alguna resistencia????
Este pin sólo  lo utilizaría  como  Rx de ese puerto.

Muchas gracias y saludos.

No, no hace falta, el MAX232 tiene niveles TTL pero con pequeñas corrientes.  Además en ese caso el PIC es quien te lo va a limitar, por su entrada de alta impedancia.

 Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado Automata78

  • PIC12
  • **
  • Mensajes: 61
Re: Recibir datos seriales rs232 ?
« Respuesta #12 en: 11 de Octubre de 2006, 14:58:59 »
Me podrían facilitar el código donde solo utilizaría RX y el pin B2 del 16f628 como entrada (lo uso para una tecla ), ya que no logro hacerlo andar, anda si configuro tanto el bit de receptsión como el de transmisión !
  le muestro como lo tengo configurado !

  // Aquí coloco parte del código !!! 


  #use rs232(stream=PC, baud=9600,parity=N,rcv=PIN_B1,bits=8)


  #int_RDA
RDA_isr()
{
  PORTB = 0b11110000 & getc(PC);  // Solo muestro los 4 bits mayores por el puerto B.
}


void main()
.
.
.
 set_tris_B(0b00000110);       // B1 y B2 como entrada !!!
 PORTBA = 0;
.
.
.
}


 Cual puede ser el error que estoy cometiendo ?

 Muchas gracias !!

 


 

anything