Autor Tema: Conversion Datos ADC y Transmision serie.  (Leído 1989 veces)

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

Desconectado jou

  • PIC10
  • *
  • Mensajes: 1
Conversion Datos ADC y Transmision serie.
« en: 27 de Abril de 2006, 14:09:11 »
Hola a todos, q tal? Soy nuevo aki en el foro, me acabo de registrar hoy pero llevo tiempo mirando el foro y la verdad es q se tratan temas muy interesantes. Bueno, te de enrollarme y os expongo mi problema para ver si me puedes ayudar con un programa q stoy aciendo. La cuestion es la siguiente, tengo q coger tres señales analogicas de 3 ADC, muestrearlas y sacar el resultos x un el puerto serie. El PIC q estoy utilizando es el 12F683 de MIcrochip y los ADC stan incorpados en el pic. El programa q he echo es el siguiente pero no me va, no me coge los datos y tampoco los pasa a la salida para despues enviarlos por puerto serie:


#include <12F683.h>

#device adc=8
#use delay(clock=1000000)
#fuses NOWDT,INTRC, NOCPD, NOPROTECT, MCLR, NOPUT, BROWNOUT, IESO, FCMEN
#use rs232(baud=9600,parity=N,xmit=PIN_A4,bits=8)

void main()
{
   int medicion0,medicion1,medicion2;

   setup_adc_ports(sAN0);
   setup_adc_ports(sAN1);
   setup_adc_ports(sAN2);
   setup_adc(ADC_CLOCK_INTERNAL);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);


   do
      {

      set_adc_channel (0); //Elige canal a medir NA0
      delay_us (20);
      medicion0=read_adc (); //Hace conversión AD
      putc(medicion0);        //Saca valor a la pata 4   
      delay_ms(1000);

      set_adc_channel (1); //Elige canal a medir NA1
      delay_us (20);
      medicion1=read_adc (); //Hace conversión AD
      putc(medicion1);        //Saca valor a la pata 4
      delay_ms(1000);

      set_adc_channel (2); //Elige canal a medir 2
      delay_us (20);
      medicion2=read_adc (); //Hace conversión AD
      putc(medicion2);       //Saca valor a la pata 4
      delay_ms(1000);

       }while(1);
}
 A ver si me puede hechar una mano para ver lo q falla. Gracias

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Conversion Datos ADC y Transmision serie.
« Respuesta #1 en: 27 de Abril de 2006, 17:29:53 »
Hola, la funcion read_adc() lee el valor de la conversion? o tambien dispara el conversor?

Fijate que tal vez solo lea el valor de la conversion y antes debas iniciar el conversor y puede que ahi este tu problema.

- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado fastyx

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 353
Re: Conversion Datos ADC y Transmision serie.
« Respuesta #2 en: 03 de Mayo de 2006, 13:56:22 »
fijate en la configuracion del tris de los pines del puerto A si tenes configurados a los que toman señal analogica como entradas,si no no los va a leer.

espero haber sido de ayuda.


 

anything