#include <18f4550.h>
#device adc=8
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN,NOBROWNOUT
#use delay(clock=48000000) // clock a 48Mhz
#include "usb_cdc.h"
#define ledrojo PIN_C0
#define ledverde PIN_C1
char p;
void main()
{
set_tris_c(0b00);
setup_adc_ports( AN0_TO_AN5 | VSS_VDD ); //Asignamos puertos Digitales al puerto A.
setup_adc(ADC_CLOCK_INTERNAL);
//********* CONFIGURAR EL HOST Y VISUALIZAR MEDIANTE LEDS************//
output_high(ledrojo);
output_low(ledverde);
usb_cdc_init();
usb_init(); // inicializamos el USB
usb_task(); //habilita periferico usb e interrupciones
usb_wait_for_enumeration(); //esperamos hasta que el PicUSB sea configurado por el host
output_high(ledverde);
output_low(ledrojo);
// ************** INICIO DEL PROGRAMA *************************************
while(!usb_cdc_connected()){} // espera a detectar una transmisión de la PC {}
while (TRUE)
{
//usb_task();
if(usb_enumerated()) //Si el PicUSB está configurado
{
set_adc_channel(0);
delay_ms(10);
p=read_adc();
delay_ms(10);
usb_cdc_putc(p);
delay_ms(10);
}
}
}