Autor Tema: ENVIAR POR COMPIM A PIC  (Leído 7686 veces)

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

Desconectado Miguel Carvajal

  • PIC10
  • *
  • Mensajes: 20
ENVIAR POR COMPIM A PIC
« en: 27 de Enero de 2014, 17:42:43 »
Hola Amigos,

Estoy realizando un circuito en el que quiero enviar un caracter por hyperterminal y que el pic 16F877, me marce una salida.
El problema es el siguiente;
Una vez configurado el hyperterminal y haber creado ya puertos virtuales, cuando emito un caracter, el COMPIM del circuito obedece, el TERMINAL VIRTUAL obedece, y me recibe lo transmitido, pero el problema es que no me pasa de ahi.
Es decir, el MAX232, parece no actuar, y el PIC no genera la orden programada.
Si conecto el terminal del COMPIM directamente al terminal del PIC (tal y como muestro en el esquema) el pic si ejecuta el programa.
La cuestion es que no me activa el programa del PIC a traves del MAX 232.
Os adjunto la imagen del proteus.

De antemano, muchas gracias por vuestra colaboracion.

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: ENVIAR POR COMPIM A PIC
« Respuesta #1 en: 27 de Enero de 2014, 18:11:41 »
Hola Amigos,

Estoy realizando un circuito en el que quiero enviar un caracter por hyperterminal y que el pic 16F877, me marce una salida.
El problema es el siguiente;
Una vez configurado el hyperterminal y haber creado ya puertos virtuales, cuando emito un caracter, el COMPIM del circuito obedece, el TERMINAL VIRTUAL obedece, y me recibe lo transmitido, pero el problema es que no me pasa de ahi.
Es decir, el MAX232, parece no actuar, y el PIC no genera la orden programada.
Si conecto el terminal del COMPIM directamente al terminal del PIC (tal y como muestro en el esquema) el pic si ejecuta el programa.
La cuestion es que no me activa el programa del PIC a traves del MAX 232.
Os adjunto la imagen del proteus.

De antemano, muchas gracias por vuestra colaboracion.

  Para utilizar COMPIM no es necesario el MAX.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7918
Re: ENVIAR POR COMPIM A PIC
« Respuesta #2 en: 27 de Enero de 2014, 18:32:52 »
Eso estaba por escribir, ja..ja!! :D :D
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado Miguel Carvajal

  • PIC10
  • *
  • Mensajes: 20
Re: ENVIAR POR COMPIM A PIC
« Respuesta #3 en: 27 de Enero de 2014, 20:58:57 »
Hola Amigos,
Gracias por la rapidez de vuestra respuesta,
He visto ejemplos sin el MAX y lo he intentado, pero aqui esta la cuestion,
cuando yo me salto el MAX y conecto directamente el terminal 2 del Compim a la entrada programada en el PIC ( RC7), la salida RA0 se me activa sin mandar nada por el hyperterminal y da igual que vuelva a mandar lo que sea por el hyperterminal que siempre se queda activada

P.D= Hace dos dias pude hacerlo funcionar con el MAX232. Al dia siguiente cuando volvi a cargar el proyecto no andaba en la simulacion.
Duda= Porque no hace falta en la simulacion,  cuando en el proyecto real si es necesario?

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: ENVIAR POR COMPIM A PIC
« Respuesta #4 en: 27 de Enero de 2014, 23:11:09 »
Hola Amigos,
Gracias por la rapidez de vuestra respuesta,
He visto ejemplos sin el MAX y lo he intentado, pero aqui esta la cuestion,
cuando yo me salto el MAX y conecto directamente el terminal 2 del Compim a la entrada programada en el PIC ( RC7), la salida RA0 se me activa sin mandar nada por el hyperterminal y da igual que vuelva a mandar lo que sea por el hyperterminal que siempre se queda activada

P.D= Hace dos dias pude hacerlo funcionar con el MAX232. Al dia siguiente cuando volvi a cargar el proyecto no andaba en la simulacion.
Duda= Porque no hace falta en la simulacion,  cuando en el proyecto real si es necesario?

  En el proyecto en físico es necesario ya que el MAX232 se encarga de adaptar los niveles de la PC (aprox +-12V) al nivel del PIC (0 - 5V), pero en la simulación no hay ningún nivel que adaptar. ¿No será algún error en el programa del PIC? Puedes utilizar el virtual-terminal del propio ISIS para ver como responde.

  Sería bueno que subas tu programa y tu conexionado.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado Miguel Carvajal

  • PIC10
  • *
  • Mensajes: 20
Re: ENVIAR POR COMPIM A PIC
« Respuesta #5 en: 28 de Enero de 2014, 13:07:13 »
Buenas tardes,

Siguiendo tus instruciones subo el programa del pic y el conexionado

Gracias

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: ENVIAR POR COMPIM A PIC
« Respuesta #6 en: 28 de Enero de 2014, 13:57:02 »
  El circuito parece estar bien. El código del programa no lo entiendo, ¿en qué lenguaje estás programando? Porque leo algo referido a HiTech, pero la estructura no se parece en nada a un programa hecho con dicho compilador.

  No veo donde está la función para lectura del UART.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado Miguel Carvajal

  • PIC10
  • *
  • Mensajes: 20
Re: ENVIAR POR COMPIM A PIC
« Respuesta #7 en: 28 de Enero de 2014, 17:49:07 »
Hola AngelGris,

El program lo he hecho con Flowcode, estoy empezando a utilizarlo.
Lo que te he enviado es el .hex que genera el program y cargo al pic en el Proteus


Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: ENVIAR POR COMPIM A PIC
« Respuesta #8 en: 28 de Enero de 2014, 17:55:29 »
Hola AngelGris,

El program lo he hecho con Flowcode, estoy empezando a utilizarlo.
Lo que te he enviado es el .hex que genera el program y cargo al pic en el Proteus



  Mandaste un archivo co extensión .C "PRUEBA_1_2.C" y eso no lo puedes cargar en el PIC. Por otro lado, desconozco FlowCode así que con eso no puedo ayudarte.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado Miguel Carvajal

  • PIC10
  • *
  • Mensajes: 20
Re: ENVIAR POR COMPIM A PIC
« Respuesta #9 en: 28 de Enero de 2014, 19:32:32 »
Gracias Angel Gris,

Te envio, ahora si el codigo .HEX.

Si me puedes ayudar te lo agradezco, si no podrias decirme como cerrar este tema que abri?

Saludos

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5490
    • Electrónica Didacta
Re: ENVIAR POR COMPIM A PIC
« Respuesta #10 en: 28 de Enero de 2014, 20:41:08 »
asi es que yo lo hago cuando me toca trabajar con el compim


el "a" adicional es para que no haya conflictos entre los 2 dispositivos, si quiero trabajar con el terminal, renombro los pines del compim, y visceversa



y en el codigo del micro, la declaración de los pines quedaría asi:

#use rs232(baud=9600,xmit=PIN_C6,rcv=PIN_C7)
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5490
    • Electrónica Didacta
Re: ENVIAR POR COMPIM A PIC
« Respuesta #11 en: 28 de Enero de 2014, 20:44:36 »
conexión pic<->max 232 <-> db9

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado Belgitaes

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 215
Re: ENVIAR POR COMPIM A PIC
« Respuesta #12 en: 30 de Enero de 2014, 14:08:03 »
Antes Todo Decir Que Subo Una Simulacion Hecha En Proteus
Y Con Un Atmel Ya Que De Pic No Entiendo Nada

Pero La Forma De Comunicarse Es La Misma Esencia

Para Los Que Le Gusten La Simulacion Con Proteus
Y Para Ir Comprendiendo Pequeños Detalles Del Schematic
Y Si Estoy Equivocada Que Me Lo Digan

La Comunicacion Serial Asincronica
Tipo RS232 Que En Un PC Se Denomina Puerto COM Y Que En Proteus Se Denomina COMPIN
El Compìn Representa El Connector DB9 Hembra Que Se Connecta A La Salida Del Puerto Macho Del PC

El Modelo Virtual Terminal Es El Que Representa El PC
Simula El HyperTerminal De Windows
El Compin Tiene 8 Patillas TXD  RXD  CTS  RTS  DSR  DTR  DCD y RI

Significa Que El COMPIM Representa En El Esquema Un DCE (EQUIPO DE TERMINACION DEL CIRCUITO )
Y El Modelo VTERM (Modelo Virtual) Es Como Un DTE (EQUIPO TERMINAL DE DATOS Por Ejemplo Un PC)

TXD  RTS y DTR Son Salidas De Los Datos Seriales Y Entradas Para El COMPIN (Connector DB9)
RXD  CTS y DSR Son Entrada De Los Datos Seriales Y Salidas Para El COMPIN
 

Las Minimas Señales En Una Comunicacion Bi-Direcional
Para Transmitir Es TX ( TD) Patilla 3 Del Puerto Com
Para Recibir Es RX (RD) Patilla 2 Del Puerto Com
Los Demas Pin Del Puerto Se Encargan De Otras Cosas

El Microcontrolador Se Comunica A Traves La Communicacion RS232 De Nuestro Puerto Serie
La Uart De Nuestro Pc Funcionna Con La Logica TTL
Asociando Una Tension De +12 Voltios A Un (Zero)
Y De -12 Voltios A Un (Uno)

Por Lo Que Tenemos Que Efectuar Una Conversion RS232 Hacia TTL
Para Llegar Al Pc Para Emitir Y La Conversion Inversa Para Recibir
Por Lo Que Tenemos Una Doble Conversion

Un Valor De 0 Voltios TTL Da Como Resultado 5 Voltios En El Lado RS232
Que Se Entiende Como (0) Logico
Y 5 Voltios TTL Dan A La Salida 0 Voltios Que Es Un (1) En RS232

Es Interesante Saber Que La Uart De Nuestro Pc Funcionna Con La Logica TTL
Es Algo Que Desconocia Y Que Lei En Un Libro Recientemente
Y Que Tenemos Una Doble Conversion Que Se Evita usando el MAX232
Y Eso Lo Vemos En El Schematic

El Max232 Es Un Chip Que Convierte Los Niveles De Un Puerto Serie RS232 A Niveles TTL Y Viceversa
Posee 2 Conversores De Nivel TTL a RS232 Y Otros 2 Conversores Inverso De Nivel RS232 a TTL
Solucionnando La Connexion Para Lograr Comunicacion Entre El PC Y Nuestro Micro
Con Base De Niveles TTL/CMOS

Tenemos Como Transmisor T1IN (Pin11) Con T1OUT (Pin14) Y T2IN (Pin10) Con T2OUT(Pin7)
Tenemos Como Receptor R1IN (Pin13) Con R1OUT(Pin12) Y R2IN (Pin8) Con R2OUT (Pin9)

TX Es La Señal De Transmision De Datos
RX Es La Señal De Reception De Datos

En Nuestro Caso El Micro Atmel Es Quien Hace El Trabajo
Cuando El PC Se Pone A Recibir Desde El Atmel
TX Del Atmel Se Connecta A T1IN Y Sale Por T1OUT Hacia RX Del PC (Compin)

Cuando Se Pone A Transmitir Desde El PC Hacia El Atmel
TX Del PC Entra En R1IN Y Sale Hacia RX Del Atmel Por R1OUT

Con Eso Podemos Entender La Funcion De Los 2 Conversores TX y RX

« Última modificación: 31 de Enero de 2014, 02:24:08 por Belgitaes »


 

anything