Ayuda con conexion usb y pic18f4550

Ayuda urgente, estoy realizando un proyecto escolar y necesito comunicar un pic18f4550 y la computadora, el problema es que no he podido siquiera conseguir que la computadora reconozca que se ha conectado el pic. Les agradezco su ayuda, en serio necesito sus respuestas urgentemente. Les dejo el codigo y el diagrama que estoy utilizando.


Código:
#include <18F4550.h>
#device adc=10
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
#use delay(clock=48000000)


 #define USB_CON_SENSE_PIN PIN_B2

 #include <usb_cdc.h>


void main() {
   BYTE i, j, address, value;

   int16 q,q1;
   float p;

   q1=0;
   
   setup_adc_ports(AN0|VSS_VDD);
   setup_adc(ADC_CLOCK_INTERNAL);
   set_adc_channel(0);

   usb_cdc_init();
   usb_init();

//      while(!usb_cdc_connected()) {}

   do {
      usb_task();
      if (usb_enumerated()) {

      delay_ms(500);
      q = read_adc();
      if (q!=q1){
      p = 5.0 * q / 1024.0;
      printf(usb_cdc_putc,"\r Voltage=%01.2fV", p);
      }
      q1=q;
   }
      } while (TRUE);
}
 

Adjuntos

  • diagrama.jpg
    diagrama.jpg
    154.5 KB · Visitas: 12
A mi me parece que te hacen falta los descriptores(donde le dices a windows que conectaste)[#include <usb_desc_cdc.h> ] de parte de windows tambien el .inf para que sepa que hacer con tu usb, aunque no he realizado ningun proyecto usando el CDC en lo particular prefiero HID ya que no necesita de drivers en windows y por esto me parece que tu codigo necesita no tener comentado esto >> while(!usb_cdc_connected()) por que sino como le das tiempo que conecte.
 
Atrás
Arriba