hola a todos, muchas gracias por responder, al igual que suki, el codigo que tengo es el original del programa PIC usb de J1M, sin embargo lo posteo en su totalidad para ke se entienda mejor lo que quiero hacer
#include <18F2550.h>
#device ADC=10
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL3,CPUDIV1,VREGEN
#use delay(clock=48000000)
#define USB_HID_DEVICE FALSE
#define USB_EP1_TX_ENABLE USB_ENABLE_BULK
#define USB_EP1_RX_ENABLE USB_ENABLE_BULK
#define USB_EP1_TX_SIZE 1
#define USB_EP1_RX_SIZE 3
#include <pic18_usb.h> //Microchip PIC18Fxx5x Hardware layer for CCS's PIC USB driver
#include <PicUSB.h> //Configuración del USB y los descriptores para este dispositivo
#include <usb.c> //handles usb setup tokens and get descriptor reports
#define LEDV PIN_B6
#define LEDA PIN_B7
#define LED_ON output_high
#define LED_OFF output_low
#define modo recibe[0]
#define param1 recibe[1]
#define param2 recibe[2]
#define resultado envia[0]
void main(void) {
int8 recibe[3];
int8 envia[1];
setup_adc_ports(AN0);
setup_adc(ADC_CLOCK_INTERNAL);
set_adc_channel(0);
LED_OFF(LEDV);
LED_ON(LEDA);
usb_init();
usb_task();
usb_wait_for_enumeration();
LED_OFF(LEDA);
LED_ON(LEDV);
while (TRUE)
{
if(usb_enumerated())
{
if (usb_kbhit(1))
{
usb_get_packet(1, recibe, 3);
if (modo == 0) // ADC_Mode
{
while(True)
{
delay_ms(
;
resultado = read_adc();
usb_put_packet(1, envia, 1, USB_DTS_TOGGLE); //enviamos el paquete de tamaño 1byte del EP1 al PC
}
}
if (modo == 1) // Modo_Led
{
if (param1 == 0) {LED_OFF(LEDV); LED_OFF(LEDA);}
if (param1 == 1) {LED_ON(LEDV); LED_OFF(LEDA);}
if (param1 == 2) {LED_OFF(LEDV); LED_ON(LEDA);}
}
}
}
}
}
este programa lo probe conun voltaje dc y funciono de maravilla, pero ahora que lo intento con uno A.C pasa lo quepasa, seguire los consejos de migsantiago a ver que pasa y en cuanto a lo que pregunta cerebro, yo hago las pruebas en placa directamente.
una duda que me aqueja es si tal vez esta función
setup_adc(ADC_CLOCK_INTERNAL); pueda ser configurada para obtener un muestreo mas preciso, o si talvez necesito de una herramienta en LV para que la señal se sincronice y sea mas sincronica, o sera que debo almacenar los datos en algun array???, pero en ese caso, como hago eso??. help!!!!