Autor Tema: doble comunicacion serial  (Leído 2527 veces)

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

Desconectado distro

  • PIC10
  • *
  • Mensajes: 9
doble comunicacion serial
« en: 11 de Agosto de 2009, 20:39:23 »
Hola me presento primero: Me llamo Gonzalo y comencé a trabajar con microcontroladores como hace una semana  :embarrassed:.

Estoy trabajando en un proyecto con el pic 16f873a. Ya logre comunicarlo con el pc via max232, pero ahora me veo en la necesidad de establecer comunicación con otro dispositivo además. Para este nuevo dispositivo necesito sólo recibir información, en cambio el pc tiene que poder recibir y transmitir al mismo tiempo. Estube buscando en google y sé que se pueden definir otros pines para comunicación serial, pero solo encontre código para Assembler y la verdad es que no lo entiendo nada. Si alguien tiene información sobre cómo hacer esto en lenguaje C, o pudiese apuntarme en la dirección correcta, le estaria muy agradecido.

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: doble comunicacion serial
« Respuesta #1 en: 12 de Agosto de 2009, 01:13:55 »
CCS? C18? o MikroC?

El papel lo aguanta todo

Desconectado darck_khronos

  • PIC18
  • ****
  • Mensajes: 493
Re: doble comunicacion serial
« Respuesta #2 en: 12 de Agosto de 2009, 01:26:26 »
Podrias intentarlo con una comunicacion Full duplex o Half pero para eso usarias protocolo 485 ya dependera de la aplicacion que necesites y la velocidad de bits

Desconectado distro

  • PIC10
  • *
  • Mensajes: 9
Re: doble comunicacion serial
« Respuesta #3 en: 12 de Agosto de 2009, 01:39:33 »
CCS? C18? o MikroC?
Estoy trabajando con CCS (se me olvido mencionar...  :shock:)

Podrias intentarlo con una comunicacion Full duplex o Half pero para eso usarias protocolo 485 ya dependera de la aplicacion que necesites y la velocidad de bits
Esto significa ocupar los mismos pines rx y tx para el pc y el otro dispositivo?

Desconectado darck_khronos

  • PIC18
  • ****
  • Mensajes: 493
Re: doble comunicacion serial
« Respuesta #4 en: 12 de Agosto de 2009, 01:41:57 »
CCS? C18? o MikroC?
Estoy trabajando con CCS (se me olvido mencionar...  :shock:)

Podrias intentarlo con una comunicacion Full duplex o Half pero para eso usarias protocolo 485 ya dependera de la aplicacion que necesites y la velocidad de bits
Esto significa ocupar los mismos pines rx y tx para el pc y el otro dispositivo?

Eso siempre y cuando trabajes con el protocolo 485

Desconectado darck_khronos

  • PIC18
  • ****
  • Mensajes: 493
Re: doble comunicacion serial
« Respuesta #5 en: 12 de Agosto de 2009, 01:42:21 »
pero tendras minimo una pc y dos pics si tienes una pc y un pic mmm solo es gasto xD

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: doble comunicacion serial
« Respuesta #6 en: 12 de Agosto de 2009, 10:11:17 »
Para crear 2 vias de comunicación en CCS:
Código: C
  1. #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8,Stream=PC)
  2. #use rs232(baud=9600,parity=N,xmit=PIN_B1,rcv=PIN_B0,bits=8,Stream=Dispositivo, Force_sw)


Luego para recibir un dato:

Código: C
  1. DataPC=fgetc(PC);
  2. DataDis=fgetc(Dispositivo);

Para enviar:

Código: C
  1. fputc(0xA3,PC);
  2. fputc(0x78,Dispositivo);

Enviar string:
Código: C
  1. fprintf(PC,"Comunicando con PC");

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

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: doble comunicacion serial
« Respuesta #7 en: 12 de Agosto de 2009, 11:31:40 »
Puedes revisar el ejemplo EX_ENCRY.C, ahi implementan dos USART.

Saludos
El papel lo aguanta todo

Desconectado distro

  • PIC10
  • *
  • Mensajes: 9
Re: doble comunicacion serial
« Respuesta #8 en: 12 de Agosto de 2009, 17:46:14 »
Excelente gracias, funciona perfecto :mrgreen: