Autor Tema: Tensión de salida del convertidor A/D del 16f873??  (Leído 2049 veces)

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

Desconectado rferrero

  • PIC16
  • ***
  • Mensajes: 113
Tensión de salida del convertidor A/D del 16f873??
« en: 03 de Abril de 2004, 12:01:00 »

   Hola a todos. Llevo un tiempo intentando que el convertidor A/D del 16f873 me muestre en unos leds (a modo de codificación) el valor de la tensión de salida de dicho convertidor, pero no hay manera. El dispositivo conectado es un gp2d12 (que da salida analógica), pero no consigo hacer que funcione de ninguna de las maneras.

     Usando sentencias en C, se pone dato=read_adc(); y ya está?? Cómo se comprueba que termina de adquirir el dato?? No se pone nada?? No se testea el bit adif??

    Socorro!!!!!!!!!!!!! cualquier ayuda será bien recibida y agradecida de antemano. Un saludo.

 

Desconectado NPI_C

  • PIC10
  • *
  • Mensajes: 8
RE: Tensión de salida del convertidor A/D del 16f873??
« Respuesta #1 en: 03 de Abril de 2004, 14:57:00 »
Hola,
Yo he trabajado últimamente con el ADC de un 16F876, qué es el hermano gemelo (si no recuerdo mal) del que estas usando tú.  No he entendido bien lo que quieres llevar a cabo, pero te paso la rutina que uso yo cada vez que quiero convertir a digital la tensión que tengo en la patilla RA0 (según mi configuración).

ADC_ON
   BCF ADCON0,7  ;CONFIGURA ADCON0
   BSF ADCON0,6  ;CON OSCILADOR/8   
   BCF ADCON0,5  ;BIT 5,4,3 PARA CANAL ANALOGICO RA0
   BCF ADCON0,4
   BCF ADCON0,3
   BSF ADCON0,0  ;CONVERSOR EN MARCHA
   CALL RET_ADC  ;RETARDO ADC NECESARIO   

CONVERSION
   BSF ADCON0,2      ;EMPIEZA CONVERSION
   BUCLE
   BTFSC   ADCON0,2   ;BUCLE ESPERA HASTA CONVERSION
   GOTO    BUCLE
   MOVFW   ADRESH      ;MIRA EL RESULTADO DE ADRESH
   MOVWF   TEMP_H       ;LO PASAMOS A UN REGISTRO
   BSF STATUS,RP0   
   MOVFW   ADRESL      ;MIRA EL RESULTADO DE ADRESL (BANCO 1)
   BCF STATUS,RP0   
   MOVWF   TEMP_L      ;LO PASAMOS A UN REGISTRO
   BCF ADCON0,0      ;PARAMOS EL CONVERSOR HASTA PROXIMA   
   
RESULTADO
   GOTO COMPARACIONES

Para que esto funcione, cuando al principio del programa configures los puertos y demás movidas en el Banco0, recuerda poner estas líneas:

MOVLW B"00001110"   ;PARA EL ADC
   MOVWF ADCON1      ;RA0 COMO ENTRADA ANALOGICA PARA CONVERSOR    
   MOVLW B"110001"     ;TENSIONES DE REFERENCIA LAS DE VCC Y MASA DEL PIC
///La útlima línea configura el TRISA según lo necesité, pero es importante que configures como entrada (un 1) el bit0 del puerto A que es el usado en mi ejemplo como entrada analógica.


Espero que te sea de ayuda, a mi me funciona a la perfección.
Saludos

Desconectado rferrero

  • PIC16
  • ***
  • Mensajes: 113
RE: Tensión de salida del convertidor A/D del 16f873??
« Respuesta #2 en: 05 de Abril de 2004, 09:29:00 »

      Muchas gracias!!  


 

anything