Haz una pregunta
  Foros de Electrónica » Diseño digital » Interfaces y Programación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

14/11/2010 #1


coordinar comunicacion pic16f876, rs232,puerto serie,programa en visual basic
hola wenas , no se si este es el lugar apropiado pero tengo una pregunta a ver si alguien m la puede resolver. Estoy haciendo un proyecto de una estacion meteorologica para ello estoy usando un pic 16f876 con entradas adc por las cuales m llegan los diferentes datos de temperatura direccion del viento etc.. yo comunico el pic y el ordenador mediante un rs232 con el puerto serie . En el ordenador tengo hecho el programa de visual basic el cual recibe el dato por el puerto hace una serie de calculos con el y lo imprime en una etiqueta .cuando solo tengo conectada la temperatura me lo ace bn k es un circuito con un lm35 funciona correctamente xo cuando intento coordinar otro dato no logro escoger en cada momento el dato del puerto en serie correcto .Lo he intentado poniendo unos if en el programa del pic para que envie un dato u otro segun el caracter k le llega y las variables se las envio x el visual basic el problema esta en que lo kiero acer automatico es decir k este siempre imprimiendo una y despues la otra si tener k usar ningun boton, para ello he puesto un timer k lee y otro k imprime xo se me mezclan los datos e incluso los caracteres de control no se si es un problema de los intervalos de los timers.

¿Deberia tener en cuenta para coordinar el pic y el visual basic la duracion de las instrucciones de los programas o son irrelevantes?

¿hay alguna forma de restear o borrar el contenido del puerto despues de k le llegue un dato?

Si alguien cree k puede ayudarme lo agradeceria muxisimo porque llevo mas de una semana dandole vueltas y no tngo manera de acerlo.SALUDOS Y GRACIAS
15/11/2010 #2


Por los lenguajes que he programado Delphi y C++ el puerto se comporta igual en todos.
Cuando vas a leer el buffer de entrada primero ves si hay datos. Si hay datos, lees lo que ha llegado cargandolo en el la ram. Una vez leido el buffer de entrada lo tienes puesto a cero (reseteado).
Saludos
16/11/2010 #3


Wenas y gracias tienes razon lo hace asi el problema k tenia es que tenia 8 bytes de recepcion por eso m mezclaba los datos aora lo he puesto en un byte y funciona perfectamente gracias por contestar
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Interfaces y Programación

Lenguajes de programación, gestión y manejo de puertos

Cerrar
Foros de Electrónica » Diseño digital » Interfaces y Programación

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