Autor Tema: COMUNICACION USB CDC, EN MAPLAB C18  (Leído 3899 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado alejandroGC

  • PIC10
  • *
  • Mensajes: 1
COMUNICACION USB CDC, EN MAPLAB C18
« en: 06 de Mayo de 2011, 22:54:35 »
saludos, alguien me puede ayudar, estoy haciendo una comunicacion uart y debo usar USB CDC para emular un puerto serial virtual, pero esto desde c18, he visto algunos ejemplos no miy claros pero todo en css, por favor si alguien sabe algo que me ayude, para poder implementarlo en c18, algun ejemplo o algo, por que he buscado y poco he encontrado, y ademas me has pedido todo esto en windows 7, y lo que se es que cuando meta el usb se generara un puerto serial, y me pedira los drivers para dicho puerto en windows 7, por favor si alguien sabe algo, gracias d eantemano, saludos

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3145
Re: COMUNICACION USB CDC, EN MAPLAB C18
« Respuesta #1 en: 07 de Mayo de 2011, 03:38:26 »

Desconectado MetalKaiser

  • PIC10
  • *
  • Mensajes: 5
Re: COMUNICACION USB CDC, EN MAPLAB C18
« Respuesta #2 en: 08 de Mayo de 2011, 19:56:50 »
Saludos señores! A propósito de comunicación USB CDC, tengo un pequeño gran problema con el montaje de hardware, ya que mi PC no hace absolutamente nada cuando le conecto el montaje al puerto USB.

La simulación en Proteus funcionó tranquilamente, pero el montaje físico no hace nada, sólo enciende el LED verde conectado a RB2 mediante dos resistencias, mientras que la PC no hace ni pío! Cabe destacar que estoy usando el PIC18F4550. Les adjunto el código en CCS PICC, la imagen de la simulación en Proteus, y la fotografía del montaje físico.

El condensador conectado al pin 18 es de 47uF x 25V, el Xtal es de 20MHz.

Código: CSS
  1. #include <18F4550.h>
  2. #device adc=8
  3. #fuses HSPLL, NOWDT, NOPROTECT, NOLVP, NODEBUG, USBDIV, PLL5, CPUDIV1, VREGEN
  4. #use delay(clock=48000000)    //Para Xtal de 20Mhz
  5.  
  6. #define usb_con_sense_pin pin_b2
  7. #include <usb_cdc.h>
  8. int16 q;
  9. int16 IniciarConteoEn=65459;
  10.  
  11. float p;
  12.  
  13. #int_TIMER1 //Interrupción timer1
  14. void temp1s(void) //función
  15. {
  16.    output_toggle(PIN_B1);
  17.    q=read_adc();
  18.    set_timer1(IniciarConteoEn);
  19. }
  20.  
  21.  
  22.  
  23.  
  24. void main()
  25. {
  26.    setup_timer_1 (T1_INTERNAL | T1_DIV_BY_1);   ///configuro timer 1 con reloj interno y prescaler de 1
  27.    
  28.    enable_interrupts(INT_TIMER1);               //habilita interrupción timer1
  29.    enable_interrupts(global);                   //habilita interrupción general
  30.    set_timer1(IniciarConteoEn);                 //Precarga del timer1
  31.    setup_adc_ports(AN0|VSS_VDD);
  32.    setup_adc(ADC_CLOCK_DIV_64 );//|| ADC_ACQT_2TAD ); //Indica el tiempo de reloj
  33.    #asm                                               //Inicio de sentencias en lenguaje Assembler
  34.    movlw 0b10001110 ;justificacion_derecha,2Tad,Fosc/64 //Modificando el tiempo de conversión
  35.    iorwf 0xFC0,1 ; direccion de ADCON2                  //y el tiempo de adquisición
  36.    #endasm                                            //Fin de la rutina Assembler
  37.    set_adc_channel(0);
  38.    
  39.    usb_cdc_init();
  40.    usb_init();
  41.    while(1)
  42.    {
  43.       usb_task();
  44.       if(usb_enumerated())
  45.       {
  46.          p=(5.0*q)/1024.0;
  47.  
  48.          printf(usb_cdc_putc);
  49.  
  50.  
  51.          //esperar respuesta
  52.          delay_ms(1000);
  53.       }
  54.    }
  55. }




Se agradece la ayuda que puedan brindar...

Desconectado MetalKaiser

  • PIC10
  • *
  • Mensajes: 5
Re: COMUNICACION USB CDC, EN MAPLAB C18
« Respuesta #3 en: 08 de Mayo de 2011, 20:00:12 »
A propósito del mensaje inicial, lamento no poder ayudar, ya que sólo manejo CCS, y no muy bien que digamos...

Mi proyecto está programado en esa plataforma, y tiene como propósito convertir una señal de analógico a digital, y luego enviarla a LabVIEW para que muestre el espectro de magnitud. Aún estoy trabajando en la interfaz de LabVIEW...

Desconectado MetalKaiser

  • PIC10
  • *
  • Mensajes: 5
Re: COMUNICACION USB CDC, EN MAPLAB C18
« Respuesta #4 en: 13 de Mayo de 2011, 21:50:44 »
Mi problema lo he solucionado. Pretendo postear el proyecto pronto...

Desconectado jukinch

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 608
Re: COMUNICACION USB CDC, EN MAPLAB C18
« Respuesta #5 en: 13 de Mayo de 2011, 23:22:10 »
Metalkaiser: lo solucionaste en c18 o en ccs?
             Jukinch
"Divide las dificultades que examinas en tantas partes como sea posible para su mejor solución." -René Descartes

Desconectado MetalKaiser

  • PIC10
  • *
  • Mensajes: 5
Re: COMUNICACION USB CDC, EN MAPLAB C18
« Respuesta #6 en: 01 de Octubre de 2011, 12:14:08 »
Jukinch, lo solucioné en CCS. Cuando tengo más tiempo disponible, postearé el proyecto completo.
Por ahora, necesito splucionar un último problema en LABVIEW...

Desconectado beto1234

  • PIC12
  • **
  • Mensajes: 52
    • Osm Gps Pwa
Re: COMUNICACION USB CDC, EN MAPLAB C18
« Respuesta #7 en: 04 de Octubre de 2011, 07:34:30 »
 Solucionaste agregando un cap de 0.1uF estre VSS Y VCC  :mrgreen:


 

anything