Autor Tema: consulta sobre ADC  (Leído 2030 veces)

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

Desconectado ENCARPA

  • PIC16
  • ***
  • Mensajes: 172
consulta sobre ADC
« en: 16 de Octubre de 2004, 09:39:00 »
Amigos,  quisiera hacer una convercion AD de un rango de tenciones que valla de 2.5v a 0v y con eso generar un PWM.
Con 2.5v el PWM debe estar al minimo ò "0" y con 0v debe estar en el maximo Duty cicle.
El problema que tengo es que no se como hacer eso precisamente, que el PWM sea inversamente proporcional al muestreo de tenciones.
Mi idea era hacerlo en asembler ya que es el lenguaje con el que mejor me llevo.

Gracias,

Desconectado PWRINVITRO

  • PIC12
  • **
  • Mensajes: 78
RE: consulta sobre ADC
« Respuesta #1 en: 16 de Octubre de 2004, 10:51:00 »
Saludos!!!... jejejeje pues muy sencillo!!!!..... solo tienes q ver q resolucion tiene el adc q estas usando para saber cuantos pasos vas a dar entre 0 y 2.5 voltios al tener esta informacion puedes hacer una tabla y cada vez q leas un valor del adc lo ubicas con su opuesto en la tabla y lo mandas al pwm!!!...  espero te ayude!

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: consulta sobre ADC
« Respuesta #2 en: 17 de Octubre de 2004, 01:45:00 »
Pero, ¿con una tabla no llenaría un montón de líneas de código?

Yo creo que si tienes las dos variables:
V=mV leídos por el ADC
P=frecuencia del PWM expresado en porcentaje

se trata únicamente de expresar la variable V también en porcentaje y luego restar:

V"=V*100/2,5  aquí se adapta la variable V a porcentaje

P=100-V"        y aquí se hace el PWM inverso al V

Claro, esto en ASM no tengo ni idea de cómo se hace pero supongo que será más corto que haciendo una tabla.


Desconectado PWRINVITRO

  • PIC12
  • **
  • Mensajes: 78
RE: consulta sobre ADC
« Respuesta #3 en: 17 de Octubre de 2004, 09:36:00 »
bueno pero es q todo depende de la resolucion de la variable de el!!! si la variable tiene resolicion de 1 voltio o de 500mV la tabla saldra a lo sumo en 4 valores.... tienes q especificar mas!!!

Desconectado Sispic

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1685
    • winpic800
RE: consulta sobre ADC
« Respuesta #4 en: 17 de Octubre de 2004, 10:19:00 »
Invirtiendo los bits , tendras la lectura inversamente proporcional .

creo que la ins es " COMF "


Desconectado PWRINVITRO

  • PIC12
  • **
  • Mensajes: 78
RE: consulta sobre ADC
« Respuesta #5 en: 17 de Octubre de 2004, 11:06:00 »
ACERTADO!!!..... no se me ocurrio en el momento..... exactamente eso es lo q tienes q hacer complementas el dato y listo!!!!

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: consulta sobre ADC
« Respuesta #6 en: 17 de Octubre de 2004, 11:38:00 »
Pues no lo había pensado, pero es cierto, invirtiendo los bits es lo mismo que si hiciera:

V"=256-V

Desconectado cucaracha

  • PIC24H
  • ******
  • Mensajes: 1409
    • CUCAWEB
RE: consulta sobre ADC
« Respuesta #7 en: 17 de Octubre de 2004, 18:37:00 »
Voy a enredar un poco...

Y si el duty sólo llega a 200. De 0 a 200. Y no me refiereo a porcentaje eeeein!!!
Para que serviría entonces complementar la lectura del AD.
Y no se yo en cuantos casos el duty va a ser de 0 a 255 justos....

Saludos jejeje
Saludos desde Huelva (ESPAÑA)

Desconectado PWRINVITRO

  • PIC12
  • **
  • Mensajes: 78
RE: consulta sobre ADC
« Respuesta #8 en: 17 de Octubre de 2004, 20:27:00 »
bueno entonces o se programa la funcio para yevar el voltaje a porcentaje o se implementa la tabla!

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: consulta sobre ADC
« Respuesta #9 en: 18 de Octubre de 2004, 00:36:00 »
En ese caso, si usas las fórmulas que escribí antes, donde ponía 100, pones 200 y ya está.

Desconectado ENCARPA

  • PIC16
  • ***
  • Mensajes: 172
RE: consulta sobre ADC
« Respuesta #10 en: 19 de Octubre de 2004, 20:18:00 »
Amigos de utilizar la opcion de complementar los registros utilizando la instruccion COMF estos  registros serian adresH y adresL no?
La resolucion es de 10bit en un 16f873 y los incrementos quisiera que fuesen de a 250mv.


 

anything