Autor Tema: setup_adc_ports(AN0_To_AN7|VSS_VREF); y esta funcion abarca AN3??????  (Leído 4194 veces)

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

Desconectado Mikro-77

  • PIC12
  • **
  • Mensajes: 93
Buen dia para todos! bueno como veran y de costumbre  :D estoy vastante perdido con esto! si configuro setup_adc_ports(AN0_To_AN7|VSS_VREF); esto significa que AN3 va a ser analogo o se reserva para el voltaje de referencia???????  :?

saludos!
// si quieres entender el universo, piensa en energia, frecuencia y vibración. Nikola Tesla.

// Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: setup_adc_ports(AN0_To_AN7|VSS_VREF); y esta funcion abarca AN3??????
« Respuesta #1 en: 08 de Junio de 2013, 09:06:31 »
Configura usar la referencia positiva (segun que micro puede ser esa que dices, pero deberas decir que micro usas) y el negativo de la fuente de alimentacion del Pic como referencias para la conversion A/D.
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado Mikro-77

  • PIC12
  • **
  • Mensajes: 93
Re: setup_adc_ports(AN0_To_AN7|VSS_VREF); y esta funcion abarca AN3??????
« Respuesta #2 en: 08 de Junio de 2013, 09:13:36 »
 ;-) de algun lado te he visto  :mrgreen: mi micro es 18f4520 y el codigo es algo asi

Código: [Seleccionar]
 
  setup_adc_ports(AN0_To_AN7|VSS_VREF);
  SETUP_ADC(ADC_CLOCK_DIV_8 );
  SETUP_VREF(VREF_HIGH | 15 );
  setup_COUNTERS(RTCC_internal.rtcc_div_1);

     
     set_adc_channel(0);
     delay_ms(20);
     valor_adc = read_adc();
     temperatura0=(FLOAT)(valor_adc/2);
     
     set_adc_channel(1);
     delay_ms(20);
     valor_adc = read_adc();
     temperatura1=(FLOAT)(valor_adc/2);
     
     set_adc_channel(2);
     delay_ms(20);
     valor_adc = read_adc();
     temperatura2=(FLOAT)(valor_adc/2);
     
     set_adc_channel(3);
     delay_ms(20);
     valor_adc = read_adc();
     temperatura3=(FLOAT)(valor_adc/2);
     
     set_adc_channel(4);
     delay_ms(20);
     valor_adc = read_adc();
     temperatura4=(FLOAT)(valor_adc/2);
     
     set_adc_channel(5);
     delay_ms(20);
     valor_adc = read_adc();
     temperatura5=(FLOAT)(valor_adc/2);
     
     set_adc_channel(6);
     delay_ms(20);
     valor_adc = read_adc();
     temperatura6=(FLOAT)(valor_adc/2);
     
     set_adc_channel(7);
     delay_ms(20);
     valor_adc = read_adc();
     temperatura7=(FLOAT)(valor_adc/2);

y si conecto un voltaje por el pin AN3 tambien me lo lee  :mrgreen:

saludos MGLSOFT
// si quieres entender el universo, piensa en energia, frecuencia y vibración. Nikola Tesla.

// Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: setup_adc_ports(AN0_To_AN7|VSS_VREF); y esta funcion abarca AN3??????
« Respuesta #3 en: 08 de Junio de 2013, 09:48:33 »
Usa este otro formato, indicando por separado cuales pines usas.

Código: C
  1. setup_adc_ports(sAN0 | sAN1, VSS_VREF)
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado Mikro-77

  • PIC12
  • **
  • Mensajes: 93
Re: setup_adc_ports(AN0_To_AN7|VSS_VREF); y esta funcion abarca AN3??????
« Respuesta #4 en: 08 de Junio de 2013, 13:26:58 »
Gracias lo voy a probar!
// si quieres entender el universo, piensa en energia, frecuencia y vibración. Nikola Tesla.

// Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.

Desconectado Mikro-77

  • PIC12
  • **
  • Mensajes: 93
Re: setup_adc_ports(AN0_To_AN7|VSS_VREF); y esta funcion abarca AN3??????
« Respuesta #5 en: 08 de Junio de 2013, 13:37:01 »
no me funciona amigo!

saludos!
// si quieres entender el universo, piensa en energia, frecuencia y vibración. Nikola Tesla.

// Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.

Desconectado Mikro-77

  • PIC12
  • **
  • Mensajes: 93
Re: setup_adc_ports(AN0_To_AN7|VSS_VREF); y esta funcion abarca AN3??????
« Respuesta #6 en: 08 de Junio de 2013, 18:39:30 »
18f4520.h

// Constants used in SETUP_ADC_PORTS() are:
#define NO_ANALOGS   0x0F   // None
#define ALL_ANALOG   0x00   // A0 A1 A2 A3 A5 E0 E1 E2 B2 B3 B1 B4 B0    
#define AN0_TO_AN11  0x03   // A0 A1 A2 A3 A5 E0 E1 E2 B2 B3 B1 B4      
#define AN0_TO_AN10  0x04   // A0 A1 A2 A3 A5 E0 E1 E2 B2 B3 B1          
#define AN0_TO_AN9   0x05   // A0 A1 A2 A3 A5 E0 E1 E2 B2 B3            
#define AN0_TO_AN8   0x06   // A0 A1 A2 A3 A5 E0 E1 E2 B2                
#define AN0_TO_AN7   0x07   // A0 A1 A2 A3 A5 E0 E1 E2                  
#define AN0_TO_AN6   0x08   // A0 A1 A2 A3 A5 E0 E1                      
#define AN0_TO_AN5   0x09   // A0 A1 A2 A3 A5 E0                        
#define AN0_TO_AN4   0x0A   // A0 A1 A2 A3 A5
#define AN0_TO_AN3   0x0B   // A0 A1 A2 A3
#define AN0_TO_AN2   0x0C   // A0 A1 A2
#define AN0_TO_AN1   0x0D   // A0 A1
#define AN0          0x0E   // A0
#define AN0_TO_AN11_ANALOG     0x03   //!old only provided for compatibility
#define AN0_TO_AN10_ANALOG     0x04   //!old only provided for compatibility
#define AN0_TO_AN9_ANALOG      0x05   //!old only provided for compatibility
#define AN0_TO_AN8_ANALOG      0x06   //!old only provided for compatibility
#define AN0_TO_AN7_ANALOG      0x07   //!old only provided for compatibility  
#define AN0_TO_AN6_ANALOG      0x08   //!old only provided for compatibility  
#define AN0_TO_AN5_ANALOG      0x09   //!old only provided for compatibility  
#define AN0_TO_AN4_ANALOG      0x0A   //!old only provided for compatibility
#define AN0_TO_AN3_ANALOG      0x0B   //!old only provided for compatibility
#define AN0_TO_AN2_ANALOG      0x0C   //!old only provided for compatibility
#define AN0_TO_AN1_ANALOG      0x0D   //!old only provided for compatibility
#define AN0_ANALOG             0x0E   //!old only provided for compatibility


pero que pasa si quiero usar RA3/AN3 como vref que es lo mas logico y todos los demas pines como entrada analogica?
// si quieres entender el universo, piensa en energia, frecuencia y vibración. Nikola Tesla.

// Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.


 

anything