Hola a todos necesito ayuda para usar el modulo USB de mi PIC 18F4450, no me funciona en la simulacion y pues mucho menos me funcionaria practico. Estube usando el PIC18F4550 con el CDC USB y con ese si funciono muy bien, pero aqui en mi ciudad no me pude conseguir el 4550 y compre el 4450 pensando que funcionaria de todas formas, pero no fue asi, le grave el mismo programa que le grabava al 4550, cambiando de device como debe de ser, pero fuera de eso la configuracion es completamente la misma.
El programa lo unico que hace es leer el puerto AN0 y enviar esta lectura por USB a la PC, lo monitoreo con el HyperTerminal gracias a que el tipo de transmision CDC la PC reconoce la comunicasion USB como un COMx serial.
Espero me puedan ayudar con mi problema, les dejo el codigo y el diagrama en proteus.
#include <18F4450.h>
#device adc=10
#FUSES NOWDT,HSPLL,NOPROTECT,NODEBUG,NOLVP,NOMCLR,PLL5,USBDIV,CPUDIV1,VREGEN
#use delay(clock=48000000) //Para Xtal de 20Mhz
#define usb_con_sense_pin pin_b2
#include <usb_cdc.h>
long q,ql=0;
float p;
void main()
{
setup_adc_ports(AN0|VSS_VDD);
setup_adc(ADC_CLOCK_INTERNAL);
set_adc_channel(0);
usb_cdc_init();
usb_init();
while(1)
{
usb_task();
if(usb_enumerated())
{
q=read_adc();
p=(5.0*q)/1024.0;
printf(usb_cdc_putc,"\rVoltaje=%01.2fV",p);
delay_ms(1000);
}
}
}
Gracias de antemano