Autor Tema: ADC canales AN16-AN17-AN18 en dspic 33F  (Leído 2679 veces)

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

Desconectado rbpkirow

  • PIC10
  • *
  • Mensajes: 21
ADC canales AN16-AN17-AN18 en dspic 33F
« en: 15 de Agosto de 2011, 14:41:17 »
Hola.
Estoy desarrollando un proyecto en MPLAB con C30 y el dsPic33F

El problema con el que me encuentro ahora es la conversion A/D de 3 canales (AN16-AN17-AN18), que corresponden a un acelerometro de 3 ejes.
Para ello, tengo hecho el siguiente programa, pero no me funciona:

Alguien podria guiarme para obtener el valor analogico de los 3 canales?

muchas gracias

Código: [Seleccionar]
void main(void)
{
InitMyOscillator();
ConfigurarHardware();
Init_Interrupts();
Init_ADC();

while(1)
{
}
}


void ConfigurarHardware()
{
ADPCFG = 0xFFFF; // Bits digitales en conexiones de depuracion
ADPCFG2 = 0xFFFF; // Bits digitales en conexiones de depuracion

// Los ejes del acelerometro son analogicos
_PCFG16 = 0; // Eje x
_PCFG17 = 0; // Eje y
_PCFG10 = 0; // Eje z
}


void Init_ADC(void)
{
ADCON = 0x01C0;
ADCPC4 = 0x00A1;

_ADON = 1; // Turn on the A/D converter
_ADCP9IF = 0;
_ADCP9IE = 1; // Turn on interrupt
}


void _ISR_NOPSV _ADCInterrupt(void)
{
LED1 = 1;
LED2 = 1;

    IFS0bits.ADIF = 0; // reset ADC interrupt flag
}