Usb y labVIEW , entre otros

Hola jokelnice ps ya pude conectar mi pic a la pc,.. pero un favor si me puedes pasar tu programa de adquisicion de señales para 8.6, ps la verdad ya el tiempo me queda muy corto, espero tu ayuda y muchas gracias
 
edgarh44 dijo:
Hola jokelnice ps ya pude conectar mi pic a la pc,.. pero un favor si me puedes pasar tu programa de adquisicion de señales para 8.6, ps la verdad ya el tiempo me queda muy corto, espero tu ayuda y muchas gracias

mira atras en el foro hay ejemplos inclusibe hay uno con el adc del micro
 
Hola, quiero iniciarme en la adquisición de datos por usb,, así que estube simulado en proteus y viendo los resultados en labview, y todo va bien,,, , pero cuando implemento el circuito,,, no puedo ver los datos enviados por el pic ni con hiperterminal... Espero su colaboración en esto,,, se debe modificar algo en windows o es el programa del micro que me falla,,,

Código:
void main() {
   usb_cdc_init();                        
   usb_init();                               
   while(!usb_cdc_connected()) { }
   do{
      usb_task();
      if (usb_enumerated()){             
         if(usb_cdc_kbhit()){             
            if(usb_cdc_getc()=='E'){    
               output_high(pin_A0);               
               printf(usb_cdc_putc,"Se recibe el caracter E");   
             }
            if(usb_cdc_getc()=='A'){     
               output_low(pin_A0);               
               [b]printf(usb_cdc_putc,"Se recibe el caracter A");     [/b]//Esto es lo que no puedo visualizar en la pc..........
             }
         }
        }
       }
       while (TRUE); // bucle infinito.
}
Ahh, me olvidaba,,, si puedo enviar datos al micro, lo que no puedo ver es los datos enviados desde el micro,,,, Ademas ya lo he testeado todo.... Espero su colaboración
 
por lo que yo veo solo lo estas comunicando datos al pic nunca estas enviando mensajes a la pc ni por hiperterminal lo que haces es enviar un mensaje pero no hay quien lo lea me entiendes.el micro manda el mensaje pero quien lo lee?
 
Bueno gracias,,, mas que todo por la guia que brindan en el foro para iniciarse en el manejo de lo micros por puerto usb,,, Ya solucioné el problema,,, solo era el capacitor que va en el pin 14 Vusb del 18f2550 estaba mal,,, lo cambie y todo funcionó tal como en la simulación , Gracias por la respuesta tan rápida,,,,,ahora a seguir avancando con el micro..
 
Hola k tal.. ps ahora si estoy con la soga al cuello, me pueden pasar sus programa de Adquisicion de Datos en Labview 8.6 y tambien el C del pic 18f4550, estoy en este trabajo ya como 3 semanas y no logro tener buenos resultado, y tambien pk la universidad se ha complicado mucho. Bueno espero que me ayuden. Gracias
 
Hola a todos, encontré un VI en la página de national que hace la lectura de un dispositivo HID, ojalá les sirva, lo probé y funciona perfectamente
 

Adjuntos

  • interruptusb__hid_mouse_example_simple_186.rar
    14 KB · Visitas: 505
Hola q tal
como dicen si quieres encontrar busca, eso hice, y o sorpresa me encontre este grandioso foro, veo que hay grandes abances felicidades, y gracias a todos los que han aportado información.

Estoy trabajando con mi proyecto final, y este tema me cae como mandado del cielo.
Nesesito digitalizar audio a 44100 muestras por segundo, y enviarlo a la pc por medio del puerto usb, creen que forzando un 18f4550, pueda lograrlo?
despues nesesito jugar con la información en labview, es posible?
gracias, es bienbenida toda ayuda.
 
Hola me llamo nicolas he estado mirando y me han sido de gran ayuda ahora mi inquietud es como puedo enviar los datos de 3 entradas analogo digitales por el mismo endpoint y que el labview me las reconosca
 
Ahora si entra.. labview como hasta el momento todo esta bien ahora es una sencilla comuncicacon serie la cual con ocho botones manejarenos los 8 bits que enviaremos despues el micro los reconoce y los saca por el puerto b entones aca les dejo la carpeta donde esta todo lo necesario y por supuesto el VI de labview antes les envio la demostracion :

http://www.youtube.com/watch?v=y4qhEUdqTaQ

y el ejemplo esta aqui

Hola! Primero que nada gracias por compartir tus experiencias; espero me puedas ayudar, ya programe el PIC y la PC me lo reconoce muy bien, checo en el administrador de dispositivos y le asigna COM3, el problema es que cuando corro la aplicación en LABVIEW me arroja el siguiente error:
http://www.imaxenes.com/imagen/error1rv87dm.jpg.html

Agradecería tu ayuda.
Saludos!


 
hola newbyte yo he trabajado con la clase cdc del pic 18f2550 con lab view me ha funciona do bien aqui te envio mi VI espero que te sira lo unico es que esta hecho con labview 8.6 y tienes que instalar el visa para que pudas acceder a los puertos seriale
 

Adjuntos

  • lectura serial simple.rar
    11.3 KB · Visitas: 341
hola newbyte yo he trabajado con la clase cdc del pic 18f2550 con lab view me ha funciona do bien aqui te envio mi VI espero que te sira lo unico es que esta hecho con labview 8.6 y tienes que instalar el visa para que pudas acceder a los puertos seriale

Hola! Gracias por la ayuda, éste fin de semana lo pruebo y te platico ya que en estos momentos me dirijo a la universidad.
Saludos! :apreton:
 
hola soy nuevo en esto y es emocionante conocer a gente que le guste todo esto,, yo haria dos preguntas,, con el pic18f4553 ¿ es posible realizar muestreos de al menos 15 kmuestras por segundo (ksps)?,,, y ¿y como podria utilizar el conversor de 12 bits que trae este nuevo pic, para obtener una mejor resolucion? gracias espero comentarios
 
Que tal compas, espero que vallan bien en todos sus proyectos

En estos dias estoy interezado en la programacion en labview y en desarrollar algunas aplicaciones por el puerto usb, pero he tenido dificultades basicamente con los bloques manejados en este, no he podido encontrar un lugar donde se expliquen las entradas y salidas de los mas complejos, y las especificidades de cada bloque.

Espero me puedan ayudar.

Daniel Oq
 
bueno karl primero que todo el pic18f4550 solo tiene 10 bits de resolucion y si es posible optener esa cantidad de muestras yo he logrado hasta 30 por segundo la clave esta en el numero de instrucciones totales que ejecuta el pic por cada muestra ahora pues lo quenecesitas es elegir lo que vas a hacer y el compilador yo por lo menos he manejado el 2550 con ccs y me ha funcionado bien pero si lo que quieres es un programa optimizado para tu pic te recomiendo el asembler ya que ccs sacrifica memoria y tiempo deejecucion en el pic plantea tu proyecto a ver si te puedo colaborar ok...
 
Última edición:
gracias nicolas8702 por tu respuesta, lo que pretendo hacer es una daq,, no con un 4550, sino con un 4553 que tenga una mayor resolución porque habia leido que el este pic tiene un conversor de 12 bits,, esto me ayudaria en la resolucion de mis muestras, supongo, y me gustaria conocer tu código que elaboraste con el 2550, yo estoy manejando el ccs pues me resulta mas facil, no tengo ningun conocimiento en ensamblador. Lo que pretendo hacer es algo como lo que se ha planteado en este foro realzar muestras grandes para despues mandarlas por usb a una pc y ver los resultados en LAbview... gracias por la ayuda saludos
 
hola karl ahor aentiendo lo que realmete quieres creo que el programa que he hecho te puede servir lo unico que creo que debes hacer es cambiar la libreria del pic , cambiar la resolucion del adc y listo aqui te dejo el codigo base que utilizo para todo con la clase cdc del pic espero que te sirva

Código:
#include <18F2550.h>
#device ADC=8
#fusesHSPLL,NOMCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
//pll en div 5 para crystal de 20mhz
#use delay(clock=48000000)
#include ".\librerias\usb_cdc.h"

void main()
{

int8 x,v;//DECLARACION DE VARIABLES
set_tris_a(0xFF);//PUERTO A COMO SALIDA EXCEPTO  RA6
set_tris_b(0x00);//PUERTO B COMO SALIDA
set_tris_c(0x00);//PUERTO A COMO SALIDA EXCEPTO  RA6
setup_port_a( ALL_ANALOG );//DECLARA TODO EL PUERTO A COMO ANALOGO
setup_adc( ADC_CLOCK_DIV_8);//OSCILADOR DEL CONVERSOR A LA MITA DEL CRISTAL

Set_ADC_Channel(0);
delay_ms(1);
Read_ADC(ADC_START_ONLY);
output_b(0x00);// INICIANDO EL PUERTO B EN CERO
usb_cdc_init();   // Configuramos al puerto virtual.
usb_init();       // Inicializamos el stack USB.
    while(!usb_cdc_connected()) {} // espera a detectar una transmisión de la PC (Set_Line_Coding).
       do{usb_task();
          if (usb_enumerated())           // Espera a que el dispositivo sea enumerado por el host.
            {
              output_b(0x01);
              v=read_ADC( ); 
              DELAY_US(500);
              usb_cdc_putc(v);//envia el dato al usb 
              output_b(0x00);
            if(usb_cdc_kbhit())           // En espera de nuevos caracteres en el buffer de recepción.
               {
                x=usb_cdc_getc(); // asigna a x el dato recivido
                output_b(x);// el dato recibido en el puerto b
               }
             
         
            }
         }
         while (TRUE); // bucle infinito.
}
 
Última edición por un moderador:
tengo un problema,,, tengo a mi pic con el programa cargado,, y lo conecto a la pc,,, pero este aun no lo reconoce, dice que es un dispositivo desconocido,,, supuestamente ya tengo la libreria que da Microchip,, para reconocerla,,, pero esto sigue apareciendo,, alguien que me pueda ayudar para hacer que mi pc la reconosca,,, gracias
 
ok karl lo que pasa es que el usb cdc no necestita de la mpusbapi.dll esta clase de dispoditivo requiere de un driver hecho por microship aqui te dejo el driver ten encuente el vid y el pid del driver asi como el de la libreria usb para el pic si estos deo no coinciden el driver no se instalara

aqui esta el driver

aqui esta el driver
 

Adjuntos

  • CDC.rar
    885 bytes · Visitas: 317
Atrás
Arriba