señores nocturno y renatox muchas gracias por sus opiniones
pero no he solucionado el asunto, decidi entonces hacer el muestreo por la entrada RB0/AN0, la cual la configuro como analoga y el resto como digital, ya que estoy sacando a traves del puerto B datos digitales de un registro que elebora un contador ascendente descendente de 12 bits, se me ocurrio usar RB0 como analoga y utilizar la salida RD0 del puerto D en reemplazo de RB0 por lo de contador, programe mi Dspic y listo al momneto de probarlo, resulta que los datos digitales del contador nme siguen saliendo por RB0, razon muy extraña para esto ya que el registro ADCPFG esta configurado para tal cosa, como analogo, entiendo que el RB0 puede funcionar como entrada analoga y como Vref+. pero no creo que pueda funcionar como analogo y digital a la vez, adicionalmente les anexo el codigo en C y en asm, donde el muestreo lo hago manualmente
por otro lado solo el registro ADCPFG es el encargado de configurar las patitas como analogas y como digitales, y el registro TRISB no cumple ninguna funcion para este caso
ADPCFG = 0xFFFE; // PORTB = Digital; RB0 = analog
ADCON1 = 0x0000;
ADCHS = 0x0002; // Conecta RB2/AN2 a CH0 input .. // en este ejemplo RB0/AN0 es la entrada analoga
ADCSSL = 0;
ADCON3 = 0x0002; // muestreo manual , Tad = 2 Tcy
ADCON2 = 0;
ADCON1bits.ADON = 1; // el modulo ADC esta ON
while (1) // repeat continuously
{
ADCON1bits.SAMP = 1; // inicia muestreo
DelayNmSec(100); // retardo de 100 mS para capturar muestra
ADCON1bits.SAMP = 0; // inicia la conversion
while (!ADCON1bits.DONE); // conversion esta hecha?
portf= ADCBUF0; // carga el buffer de recepcion de la muestra en PORTF
}
mov #0xFFFE,W0
mov W0,ADPCFG
mov #0x0000,W0
mov W0,ADCON1
MOV #0x0000,W0
MOV W0,ADCHS
MOV #0x0000,W0
MOV W0,ADCSSL
clr ADCON2
mov #0x0002,W0
mov W0 ADCON3
bclr IFS0,#ADIF
BCLR IEC0,#ADIE
BSET ADCON1,#ADON
BSET ADCON1,#SAMP
LCR: BTSC ADCON1,#SAMP
BRA LCR
ANCLA: BTSS ADCON1,#DONE
BRA ANCLA
MOV ADCBUF0,W0
MOV W0,PORTF
MOV W0,PORTD
return
gracias a todos por la atencion prestada
andy alarcón
montería colombia