Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

02/10/2006 #1


problemas con el usart del 16f876
Hola amigo quisiera consultarles, sobre que es lo que puede estar pasando con la comunicasion de PC a PIC puesto que le emvio un dato por el puerto serial se supone en ASCCII y en mi LCD me aparece otros formatos y luego no emvia.

Derepente tengo que saber algun formato que deben tenar ambos equipos tamto la PC con el PIC para que puedan entenderce.

gracias.
02/10/2006 #2


Re: problemas con el usart del 16f876
gabrielz1 dijo:
Hola amigo quisiera consultarles, sobre que es lo que puede estar pasando con la comunicasion de PC a PIC puesto que le emvio un dato por el puerto serial se supone en ASCCII y en mi LCD me aparece otros formatos y luego no emvia.

Derepente tengo que saber algun formato que deben tenar ambos equipos tamto la PC con el PIC para que puedan entenderce.

gracias.
gabrielz1, vos le estas mandando un caracter desde la PC al PIC, que es un ascii? ¿Y a su vez ese caracter lo estas sacando por un display LCD?

¿Es eso?
03/10/2006 #3


asi es maunix, pero al emviarle un caracter al pic el LCD muestra otro caracter y bueno emviando diferente datos solo cambian en 4 caracteres el LCD, osea el LCD es como si solo reciviria una convinacion de 4 caracteres. y bueno quisiera saber que es lo que estoy haciendo mal, o derepente algo no es compatible, o derepente tengo que yampearlo el conector DB9 como vi en diferentes publicasiones osea unir los pines el 6, 1,4 y el 7y8 .
Bueno aver si me pueden ayudar a entender las normas de la comunicasion serial entre PIC y PC o como es que se debe emviar para que aya una transmision como recepcion correcta.

gracias.
03/10/2006 #4


gabrielz1 dijo:
asi es maunix, pero al emviarle un caracter al pic el LCD muestra otro caracter y bueno emviando diferente datos solo cambian en 4 caracteres el LCD, osea el LCD es como si solo reciviria una convinacion de 4 caracteres. y bueno quisiera saber que es lo que estoy haciendo mal, o derepente algo no es compatible, o derepente tengo que yampearlo el conector DB9 como vi en diferentes publicasiones osea unir los pines el 6, 1,4 y el 7y8 .
Bueno aver si me pueden ayudar a entender las normas de la comunicasion serial entre PIC y PC o como es que se debe emviar para que aya una transmision como recepcion correcta.

gracias.
Yo que tu haría la prueba en 2 etapas.

Primero prueba enviarle caracteres al display LCD desde el PIC. Caracteres fijos que tengas en el software. No importa cuales , importa saber si la rutina del LCD funciona bien.

Luego, haz un software de ECO en el PIC, es decir que el PIC responda lo que le manda el hiperterminal.

Saludos
03/10/2006 #5


Hola maunix el programa del LCD funciona correctamente, puedo hacer que el el LCD se displaye lo que quiera mediante su formato; el problema es que no quiere emviar datos.
Un favor no se si tu tienes algun programatita que aya corrido bienque transmita un bye o dos y otro programita que recepciones otro bye;

Puesto que creo que es la configuracion. o no se??

gracias.
03/10/2006 #6


gabrielz1 dijo:
Hola maunix el programa del LCD funciona correctamente, puedo hacer que el el LCD se displaye lo que quiera mediante su formato; el problema es que no quiere emviar datos.
Un favor no se si tu tienes algun programatita que aya corrido bienque transmita un bye o dos y otro programita que recepciones otro bye;

Puesto que creo que es la configuracion. o no se??

gracias.
A ver, vayamos por partes entonces, si el LCD funciona concentremonos en la usart.

¿En qué programas? ¿Puedes subir tu código?
05/10/2006 #7


hola maunix, como te dige el LCD funciona correctamente, pero me estaba preguntando si derepente el formado en el que estoy emviando el caracter estara bien, o derepente para emviar datos al PIC se debe emviar teniendo algun formato de emvio tanto la comunicasion del^PIC a la PC como de la PC al PIC derepente algo estamal, puesto que cuando uno los pines del conector DB9 el 2 y 3 que son de TX y Rx , puedo emviar y recivir normalmente los datos que quiera dentro de mi PC, pero cuando quiero emviarlo al PIC este no me responde ni nada, por eso te estaba pidiendo no se si tu tienes algun codigo que me podrias emviar para poder probar tanto transmision como recepcion del PIC al PC, bueno las rutinas lo estoy realizando en ensamblador del pic, puesto que todabia no se programar en C del pic, y mi programa ade comunicasion esta en el Visual C++ utilizando MFC version 6.0 en plataforma winxp.

Te estare muy agradesito si me puedes emviar codigos para la Tx y Rx vis el usart del pic.

gracias.
05/10/2006 #8


gabrielz1 dijo:
hola maunix, como te dige el LCD funciona correctamente, pero me estaba preguntando si derepente el formado en el que estoy emviando el caracter estara bien, o derepente para emviar datos al PIC se debe emviar teniendo algun formato de emvio tanto la comunicasion del^PIC a la PC como de la PC al PIC derepente algo estamal, puesto que cuando uno los pines del conector DB9 el 2 y 3 que son de TX y Rx , puedo emviar y recivir normalmente los datos que quiera dentro de mi PC, pero cuando quiero emviarlo al PIC este no me responde ni nada, por eso te estaba pidiendo no se si tu tienes algun codigo que me podrias emviar para poder probar tanto transmision como recepcion del PIC al PC, bueno las rutinas lo estoy realizando en ensamblador del pic, puesto que todabia no se programar en C del pic, y mi programa ade comunicasion esta en el Visual C++ utilizando MFC version 6.0 en plataforma winxp.

Te estare muy agradesito si me puedes emviar codigos para la Tx y Rx vis el usart del pic.

gracias.
Mira, no hace falta que conviertas nada. El puerto USART de la PC y del PIC, funcionan igual. Son los dos NRZ, solo que uno trabaja con niveles TTL y el otro con niveles RS232.

Si mandas una A, debieras recibir una A.

No tengo ejemplos para el 16F, pero tengo uno de un software "ECO" para el 18F452, pero hay importantes diferencias como por ej, que el TRISC se debe setear diferente para los PIC16 que para los PIC18, por eso no te lo he dado.

Te propongo que paso a paso vayamos resolviendo tu problema, no creo que sea algo grave o al menos lo podremos ir detectando!.

1) Fijate si puedes mandar una letra del PIC hacia la PC. Siempre la misma letra en un bucle infinito a ver si siempre la recibes bien.

2) Una vez que funcionó 1) estamos seguros que el baudeaje está bien configurado, entonces pasamos a una segunda etapa que es la de hacer un "software eco". En el software de ECO lo que haces es recibir un dato en el PIC y responderlo a la PC. Entonces si recibe una A, devuelves una A. De esa forma, "compruebas" si tu hardware de PIC, MAX232 y cableado funciona bien.

3) Por último ya estas en condiciones de probar lo que tu quieres probar, de redireccionarlo al display.

Te invito a que subas tu código, y que lo analicemos.

Saludos
05/10/2006 #9


hola cumpas, me huele a que tiene problemas en la configuracion de baudios, normalmente cuando hay un trecho de diferencia "particular" entre el seteo de baudios en el PC y el del PIC, ocurre eso:mandas un caracter desde el PC y el PIC lo reconoce como un codigo distinto, si ya estas seguro de que tienes el codigo ASCII de tu teclado(hay como 3 distintos) y estas recibiendo algo, pero recibiendo mal, lo mas probable es lo que te decia anteriormente, pon tu codigo aqui, en especial solo la configuracion, ya que el LCD no es necesario verlo para ver lo de la comunicacion porque lo mas facil de hacer es tirar el BYTE a un puerto y leerlo ahi directamente y compararlo con el ASCII, para compraobar cual es el dato que llego

chaos
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.