Comunicacion serial Labview - pic 16f877A
| #1 Comunicacion serial Labview - pic 16f877A |
| #2 |
|
Caesar^V^
|
Hola RACH, con la información que me facilitas lo único que te puedo hacer es guiar para hacer que el labview te lea la cadena d bytes que haya en el puerto serie. Si puedieses concretar un poco mas o detallar mas podría ser mas concreto. ¿Qué versión del labview utilizas?
Te explico: 1º El programa ha de inicializar el puerto serie "VISA Configure Serial Port", en el que se le indica el bitrate, el puerto com, paridad... Si utilizas el COM1 se ha de poner un 0 en el conector de Visa Resouce Name, si usas el COM2 un 1 y así sucesivamente. Para un programa óptimo, este bloque solo debe ser llamado una sola vez cuando se ejecuta tu programa. La velocidad que selecciones aquí ha de ser la misma que la del PIC ej. 9600 2º Neceseitas indicarle al programa el numero de bytes que tienes que leer del puerto serie. Para ello necesitas crear un "Property Node", y con el boton derecho seleccionas Select Class->Visa->I/O Session->Instr. Despues con el boton derecho vas a Properties->Serial Settings->Number of bytes at serial port. 3º Incorporas a tu programa la funcion VISA Read Y despues uniendo correctamente los bloques ya tienes la aplicación de lectura. Después ya solo queda el tratamiento. El bloque VISA Read lo que proporciona es una cadena de caractares, lo que el labview le llama string, tal como proporciona estos datos no se puede operar con ellos, los hay que convertir en numéricos. Para ello utiliza una función que es "String to byte array", y a la salida de este bloque tendras un array con toda la información. Ahora la forma de tratar este array depende de tu aplicación. Debes recordar que el puerto COM que utilices no debe ser utilizado por otro programa, pues dará un error en labview. Si el puerto que usas no lo utiliza ninguna aplicación y te da un error la aplicación, se debe a que no tienes los drivers adecuados, como me pasó a mi cuando me pasé de la versión 6 a la 7. Para ello descarga el VISA 4.0 (no el VISA RUN TIME)de la página ni.com Supongo que no conectarías el PIC al puerto serie del ordenador, que lo pasarías por un MAX232, que se encarga de adaptar los niveles TTL, y que conectarias el TX del PIC al pin 2 del puerto serie. Cuando tengas tu programa hecho, asegúrate que tu PIC no te pierda datos, como me ha ocurrido a mi con un PIC 16f876, como publiqué en un post "Pérdida de datos en la UART del PIC16f876", ya que sería desastroso en tu aplicación. Puedes encontrar mucha mas ayuda en la propia ayuda del labview y viendo los ejemplos que trae de comunicación con el puerto serie. Un saludo. España. |
|||||||||||
|
|
||||||||||||
| #3 |
|
frape
|
hola rach, como lo planteas debes usar el modulo visa del programa labview, hay unos cuantos ejemplos de como configurarlo y usarlo debes tener en cuenta la velocidad de transmision normalmente 9600 baudios, la cantidad de bits que enviaras y el formato como enviaras la cadena, verificar sit tienes bit de paridad, stop, cuidar todos esos detalles, de cualquier forma revisa los ejemplos que estan en el software, de todos modos te anexo un ejemplo de comunicacion con un pic16f877, el formato de la cadena de bits recivida aqui es de la siguiente manera 25 bits intercalado entre ellos un espacio en blanco.
saludos. venezuela.... |
|||||||||||
|
|
||||||||||||
| #4 Niveles del puerto serial y estado de la velocidad de transmisión. |
|
u2okn
|
Hola a todos que tal?
Oye estoy mas o menos en el mismo problema que Rach. Estamos armando unos amigos y yo una tarjeta de adquisición de datos para varias materias de la universidad, así como tambien para parte de nuestra tesis de ingenieria. Quisiera que me ayudaran un poco en este asunto, de ser posible. La primera pregunta que se me viene es: ¿Es correcto pasar la señal serial de salida del pic por un MAX 232 y luego de ahí al puerto serial?. En cuanto la emisión de la señal serial desde el pic, hay que (entre otras cosas) seleccionar la velocidad que puede ser 9600, pero existe la opción necesaria de escojer entre el estado: driven true, driven inverted, open true y open inverted. ¿Sabes algo de esto? ¿Hay alguno que deba estar normalmente seleccionado? |
|||||||||||
|
|
||||||||||||
| #5 |
|
calvete
|
hola u2okn, no entiendo muy bien la ultima parte de tu pregunta. en cuanto al MAX232 es correcto lo que planteas, ya que el MAX232 lo que hace es convertirnos los niveles TTL del pic a niveles CMOS. Tambien convierte los bits a logica negativa o invertida, la cual maneja el pc. en pocas palabras, es imprescindible usar el MAX232. En este momento estoy realizando un proyectico para sensar temperatura de un tanque usando labview, con un pic16f84A mediante el MAX232.
|
|||||||||||
|
|
||||||||||||
|
| Temas de interés | |
|---|---|
| Adquisicion de datos a traves de serial o puerto paralelo | |
| Adquisicion de datos con JK3 (motorola) | |
| Adquisición de datos por Tarjeta de audio | |
| Anchos de banda (Transmisión de datos VoIP videoconferencia) | |
| Datos de Norma PAL N (Television) | |
| Foros de Electronica |
| ||
Cuestiones Elementales de Electrónica ||
Fuentes de alimentacion ||
Circuitos de radio ||
Diseño de circuitos en general || || Sistemas de Audio: Preamplificadores, Ecualizadores || Amplificadores || Reparación || Discusión || || Microcontroladores y sistemas embebidos || Circuitos logicos combinacionales y secuenciales || Interfaces y Programacion || Dudas en general || Sistemas de Video || PC Hardware || Telematica y comunicaciones || Tecnologias moviles || Software Electronico || Robotica, Domotica y Mecatronica || Autotrónica || Automatizacion, Electronica industrial y de Potencia || Documentacion, circuitos y esquemas || Donde Las Ideas Convergen... || Tutoriales y Manuales || Proyectos Prácticos || |
Site Map
© Foros de Electrónica
Comunidad Internacional de Electrónicos
Powered by phpBB © 2001, 2005 phpBB Group
Acerca de || Política de privacidad
Generada en = 0.10729 segundos, Consultas = 15
© Foros de Electrónica
Comunidad Internacional de Electrónicos
Powered by phpBB © 2001, 2005 phpBB Group
Acerca de || Política de privacidad
Generada en = 0.10729 segundos, Consultas = 15

