• Domingo 22 de Diciembre de 2024, 13:53

Autor Tema:  Conversor Analógico Digital  (Leído 3319 veces)

Mollense

  • Miembro de PLATA
  • *****
  • Mensajes: 1755
  • Nacionalidad: ar
    • Ver Perfil
    • http://solocodigo.com/
Conversor Analógico Digital
« en: Miércoles 28 de Septiembre de 2005, 20:04 »
0
Disculpen muchachos, estoy empezando a estudiar algo sobre microcontroladores y quisiera saber cuales son las familias de pic que poseen la funcion de convertir una señal analógica a digital, por ej. la señal de un sensor foto-sensible.

Desde ya muchas gracias.

 :hola:
"Los que renuncian son más numerosos que los que fracasan" H.F.
"No se cómo sería la III Guerra Mundial, pero la cuarta sería con piedras" A.E.
"Quién no fía no es de fiar..."


...no te quedes mirando.

© Jonathan ©

  • Moderador
  • ******
  • Mensajes: 1671
  • Nacionalidad: ar
    • Ver Perfil
    • http://www.einstec.com.ar
Re: Conversor Analógico Digital
« Respuesta #1 en: Miércoles 28 de Septiembre de 2005, 20:28 »
0
Citar
quisiera saber cuales son las familias de pic que poseen la funcion de convertir una señal analógica a digital

Bienvenido :smartass: , pues la familia que utilizo es la PIC16F87x, tienen un convertidor analogico digital de 10 bits de resolucion, tmb hay otras familias, como la de la serie 18Fxxxx.. informacion detallada puedes encontrar haciendo una busqueda en la pagina de microchip http://www.microchip.com .. espero haberte ayudado. Saludos :)
EINSTEC Tecnología «La única fuente del conocimiento es la experiencia.»

«Lo importante es no dejar de hacerse preguntas.»

Mollense

  • Miembro de PLATA
  • *****
  • Mensajes: 1755
  • Nacionalidad: ar
    • Ver Perfil
    • http://solocodigo.com/
Re: Conversor Analógico Digital
« Respuesta #2 en: Jueves 29 de Septiembre de 2005, 01:08 »
0
Citar
espero haberte ayudado. Saludos

Muchisimo....

Ahora ya tengo por donde empezar.  :smartass:

Saludos  :hola:
"Los que renuncian son más numerosos que los que fracasan" H.F.
"No se cómo sería la III Guerra Mundial, pero la cuarta sería con piedras" A.E.
"Quién no fía no es de fiar..."


...no te quedes mirando.

ecoes

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Conversor Analógico Digital
« Respuesta #3 en: Viernes 7 de Octubre de 2005, 09:16 »
0
Hola Angel_K_ido,

Como te fue con los conversores AD? Te comento que yo tambien he estado iniciandome con los microcontroladores y ya probé con el pic16f873 funcionó muy bién, lo probé con varias tipos de señal sando aplificación. Otra prueba que hice, porque dubaba de la resolución del ADC, fue montar un programa que encontre en una página web que te muestra los 10 bits de la conversión en una pantalla de cirstal líquido LCD.

 Aquí te envío el programa asm original. Yo lo adapté a mis necesidades y Ok.

;
;               EJEMPLO 21
;
;            Autor: Mikel Etxebarria
;         © Microsystems Engineering (Bilbao)
;
;Ejemplo MicroPIC Trainer y Micro'PIC I/O
;
;El módulo conversor ADC.
;
;Los dispositivos PIC16F87X disponen de un convertidor A/D de 10 bits de resolución y 5 u 8
;canales de entrada analógica. La tensión de referencia determina la resolución por bit:
;(Res. = Vref/1024). Con 5 Vref=4.8 mV/Bit; con 2.5 Vref=2.4 mV/Bit
;
;El ejemplo propone realizar la conversión de la tensión presente en el canal RA3/AN3. Esta
;se puede variar con el potenciómetro AN3 alojado en la tarjeta Micro'PIC Trainer. El resul-
;tado de la conversión se visualiza, en binario, sobre la pantalla LCD.

      List   p=16F873   ;Tipo de procesador
      include   "P16F873.INC"   ;Definiciones de registros internos

Lcd_var      equ   0x20      ;Variables de las rutinas LCD
Temporal_1   equ   0x22      ;Variable temporal

      org   0x00      ;Vector de Reset
      goto   Inicio

      org   0x05      ;Salva el vector de interrupción
      include   "LCD_CXX.INC"   ;Incluye rutinas de manejo del LCD

;Visualiza: Esta rutina coge los 10 bits resultantes de la conversión, presentes en ADRESH
;y ADRESL, los convierte a caracteres ACII (0 o 1) y los visualiza sobre el LCD.

Visualiza:   movlw   0x80
      call   LCD_REG      ;Sitúa el cursor del LCD
      movlw   .9
      movwf   Temporal_1   ;Nº de caracteres a visualizar
Visual_loop   bsf   STATUS,RP0
      rlf   ADRESL,F
      bcf   STATUS,RP0
      rlf   ADRESH,F   ;Rotación del siguiente bit
      btfsc   STATUS,C   ;Testea el bit a visualizar
      goto   Bit_1      ;Está a 1
      movlw   '0'
      goto   Visu_1
Bit_1      movlw   '1'
Visu_1      call   LCD_DATO   ;Visualiza el "0" o el "1" sobre el LCD
      decfsz   Temporal_1,F   ;Siguiente caracter
      goto   Visual_loop
      return


;Programa principal

Inicio           clrf   PORTA
      clrf   PORTB
      bsf   STATUS,RP0   ;Selecciona banco 1
      movlw   b'00000110'
      movwf   ADCON1      ;Puerta A E/S digitales
      clrf   TRISB      ;Puerta B se configura como salida
      clrf   TRISA      ;RA4-RA0 salidas
      movlw   b'11001111'
      movwf   OPTION_REG   ;Preescaler de 128 asociado al WDT
      bcf   STATUS,RP0   ;Selecciona banco 0

      call   UP_LCD      ;Configura E/S para el LCD
      call   LCD_INI      ;Secuencia de inicio del LCD
      movlw   b'00001100'
      call   LCD_REG      ;LCD On, cursor y blink Off

;Se activa el ADC y se selecciona el canal RA3/AN3. Frecuencia de trabajo Fosc/32
   
      movlw   b'10011001'
      movwf   ADCON0      ;ADC en On, seleciona canal AN3

Loop      clrwdt
      bsf   STATUS,RP0   ;Selecciona página 1
      movlw   b'00011111'
      movwf   TRISA      ;Puerta A entradas
      clrf   ADCON1      ;Puerta A entradas analógicas
      bcf   STATUS,RP0   ;Selecciona página 0
      bcf   PIR1,ADIF   ;Restaura el flag del conversor AD
      nop
      bsf   ADCON0,GO   ;Inicia la conversión

ADC_Wait   btfss   PIR1,ADIF   ;Fin de conversión ??
      goto   ADC_Wait   ;Todavía no
      
;Las líneas de la Puerta A se reconfiguran como salidas digitales para la visualización

      bsf   STATUS,RP0   ;Selecciona banco 1
      movlw   b'00000110'
      movwf   ADCON1      ;Puerta A digital
      bcf   STATUS,RP0   ;Selecciona banco 0
      call   UP_LCD      ;Reconfigura E/S para el LCD
      call   Visualiza   ;Visualiza el resultado de la conversión
      goto   Loop

      end         ;Fin del programa fuente

ecoes

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Conversor Analógico Digital
« Respuesta #4 en: Viernes 7 de Octubre de 2005, 09:23 »
0
De nuevo por esta discusión. para hacer una correción al comentario anterior.

Quice decir microcontrolador 16f873 al escribir 16f84 que es de la familia 16f87x, como dice Jonathan.

Ok. disculpa el error  :D

Mollense

  • Miembro de PLATA
  • *****
  • Mensajes: 1755
  • Nacionalidad: ar
    • Ver Perfil
    • http://solocodigo.com/
Re: Conversor Analógico Digital
« Respuesta #5 en: Miércoles 12 de Octubre de 2005, 20:32 »
0
Hola ecoes.

Te cuento que por ahora solamente estoy estudiando un poco de teoría y simulando algunas cosillas con el Proteus, pero de práctica todabía nada.

Muchas gracias por responderme, este código me aclaró muchas cosas.

Nos vemos  :hola:
"Los que renuncian son más numerosos que los que fracasan" H.F.
"No se cómo sería la III Guerra Mundial, pero la cuarta sería con piedras" A.E.
"Quién no fía no es de fiar..."


...no te quedes mirando.

Ian...

  • Miembro activo
  • **
  • Mensajes: 47
    • Ver Perfil
Re: Conversor Analógico Digital
« Respuesta #6 en: Jueves 20 de Octubre de 2005, 17:47 »
0
Hola disculpen q me haya metido en su foro pero estoy con un problemita ....
Hace poco me entere del programa PROTEUS hasta donde sabia simulaba circuitos complejos pero no tenia idea q podia simular el funcionamiento de un pic... Gueno intente descargarmelo pero solamente lo encuentro para MAC...Podrias pasarme el link la pagina donde lo descargaste o si no te es molestia pasarme el installer.
Desde ya te estoy muy agradecido por haberme hecho enterar de la funcion del programa...