Autor Tema: dsPIC33 sampleo simultaneo y proteus  (Leído 1672 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Se_ven_85

  • PIC10
  • *
  • Mensajes: 2
dsPIC33 sampleo simultaneo y proteus
« en: 19 de Mayo de 2016, 13:53:42 »
Buenas tardes, quería consultarles si alguien a usado algún dspic en sampleo simultaneo, sampleando a la vez los 4 canales y poder simularlo en proteus. (estoy usando el dspic33fj32gp202)
Tengo el problema que configuro el AD en sampleo simultaneo, mi interrumpe cada 4 muestras y en sampleo manual. Pero cuando hajo el primer _SAMP = 1 y miro despues el buffer del ADC1BUFF solo me aparece la primra muestra de CH0, cuando debería tener las 4 CH0,CH1,CH2 y CH3. Solo aparecen las demas si vuelco a hacer cada vez el _SAMP.... He repasado la configuración y esta como dice la hoja de referencia, pensaba que sería un problema de simulación del proteus, ya que no tengo la placa física para corroborarlo.
Paso la configuración del AD por las dudas:

Código: [Seleccionar]
_ADON=0; //Apagamos el ADC
    _ADSIDL=0;  //Apago modo bajo consumo
    _AD12B=0;    //10 bits
    _FORM=0;  //entero sin signo
    _SSRC=7;    //Fuente de disparo automatico
    _SIMSAM=0;  //Sampleo simultaneo
    _ASAM=0;    //Muestreo manual
    _SAMP=0;    //
    _CSCNA=0;   //No necesito autoscanning
    _CHPS=2;
    _BUFS=0;    //Como llena el buffer solo si BUFM=1
    _SMPI=1;    //Debe ser menor a 4 N-1, cada 4 muestras interrumpe bien (con =1 a las 8 muestras empieza de cero el buffer)
    _BUFM=0;    //Rellenar el Buffer a 16 bits
    _ALTS= 1;    //sampleo primero A y despues B
    _ADRC=0;    //Reloj del sistema TAD = TCY*(ADCS+1)
    _SAMC=30;    //30Tiempo de muestreo = 1xTAD depende de 3 factores ver formula    Tsim = Tsmp + MxTcon (TADmin = 118ns) 12*118ns (Agranda el TCONV)
    _ADCS=6;   //Prescaler n.Tcy=Tad : 118ns/1/40Mis=5 TAD= 175ns (agranda el TAD)
    //tiempo de conversion =12*Tad*4=6useg bien
    //tiempo de sampleo = SAMC * TAD bien
    _VCFG=0; //Fuente de referencia inerna Avdd=3.3V y Avss
    //MUX B
    _CH123NB = 0; //CH1,CH2,CH3 REF NEGATIVA VS PASA SAMPLEO B
    _CH123SB = 1; //CH1 AN3, CH2 AN4, CH3 AN5
    //MUX A
    _CH123SA=0; //CH1 AN0,CH2 AN1,CH3 AN2
    _CH123NA=0; //CH1,CH2,CH3 REF NEGATIVA VS PASA SAMPLEO A



    _PCFG0=0;
    _PCFG1=0;
    _PCFG2=0;
    _PCFG3=0;
    _PCFG4=0;
    _PCFG5=0;
    _AD1IF=0;   //Limpia el flag de interrupcion
    _AD1IE=0;   //No habilita la interrucpción
   
    _ADON=1; //Prendemos el ADC

Gracias por su ayuda.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:dsPIC33 sampleo simultaneo y proteus
« Respuesta #1 en: 19 de Mayo de 2016, 22:08:56 »
Como vos bien decis, ni siquiera podemos ofrecerte una "ayuda", ya que podemos estar pensando que pueda ser el codigo, y tal ves sea la simulacion que hace el Proteus y que tal ves no soporta un sampling multiple en la simulacion.

No tuve tiempo para mirar el modulo del ADC para decirte si el codigo es correcto o no ( hace mucho que no lo toco), o que debes esperar del mismo.
Cuando me haga un tiempo lo observo y como te puedo contestar que no veo nada malo,o como te puedo decir que pruebes algo.
Ademas tambien otra persona que tenga experiencia en el tema de la simulacion o el codigo, puede respondertela en el tiempo que logre responder yo :P.

Desconectado Se_ven_85

  • PIC10
  • *
  • Mensajes: 2
Re:dsPIC33 sampleo simultaneo y proteus
« Respuesta #2 en: 20 de Mayo de 2016, 13:57:17 »
muchas gracias por responder, preguntaba por las dudas si alguien había usado el proteus y el dspic en muestreo simultaneo pero bueno cuando tenga la placa física sera el momento de la verdad y comento que resultados tuve...  :?