Autor Tema: PIC12F683 y su frecuencia de muestreo maxima (ADC)  (Leído 9098 veces)

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

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
PIC12F683 y su frecuencia de muestreo maxima (ADC)
« en: 12 de Septiembre de 2011, 01:21:45 »
Estoy usando un PIC12F683 a 20Mhz con su ADC a Fosc/32 para obtener el valor mas bajo del TAD (1.6us, segun datashet). Entonces, cada 1.6us obtengo un nuevo valor de la conversion ADC, esto significa que cada segundo tendria 1000000/1.6 = 625000 muestras, esto quiere decir que mi maxima frecuencia de muestreo seria de 625000 muestras por segundo??? O estoy mal?

GRacias!

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #1 en: 12 de Septiembre de 2011, 01:30:19 »
Olvide decir que lo estoy usando a 8 bits, no 10 bits  :P (supongo que con 8 bits ira un poco mas rapido no?)

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #2 en: 12 de Septiembre de 2011, 01:41:26 »
Bueno a cabo de enterarme que el TAD es el tiempo de conversio de un solo bit. Entonces, si solo quiero una resolucion de 8 bits, entonces el tiempo para un byte sera de 8 x 1.6 = 12.8us. Entonces, mi frecuencia de muestreo sera de 1 000 000 / 12.8 = 78125 muestras por segundo, esta bien ? =/

Desconectado MerLiNz

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2463
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #3 en: 12 de Septiembre de 2011, 07:30:28 »
para 8 bits probablemente sean 9TAD, por ejemplo para 10bit son 11TAD y para 12bit 14TAD. Ahora no te olvides de sumarle el TACQ (tiempo acquisicion) este tiempo para tu pic suele ser 1.4us minimo, lo normal es aumentarle algo para obtener buenas lecturas, y tambien depende de la impedancia de la fuente.

Quedaria 9Tad+2Tacq=11Tad= 17.6us total

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #4 en: 12 de Septiembre de 2011, 10:35:37 »
Si el un solo canal, el tiempo de adquisición es para la primer muestra, después ya no. Acuérdense que la señal debe ser de banda limitada, y menor a la mitad de la frecuencia de muestreo máxima.

F= 1/ (~15us (9TAD) + tiempo en cargar el dato al buffer (buffer[k] o *Ptr++) + tiempo en controlar posición dentro del bucle (for, while, etc...) )



Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #5 en: 12 de Septiembre de 2011, 15:45:01 »
Mi aplicacion usa la audiofrecuencia (20khz maximo), en wikipedia he leido (http://es.wikipedia.org/wiki/Frecuencia_de_muestreo) que para esta frecuencia es mas que suficiente una frecuencia de muestreo de 40000 y creo que el 12f683 estaria llegando al rededor de 55000 aprox (con todos los calculos que has propuesto suky) o estoy haciendo algo mal ?

Gracias por la ayuda!

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #6 en: 12 de Septiembre de 2011, 17:33:20 »
No, esta bien. Depende de lo que realices la frecuencia de muestreo debe ser bien establecida, en ese caso yo lo controlo con el timer2, por ejemplo.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #7 en: 13 de Septiembre de 2011, 02:34:45 »
Bueno, en este caso lo hago por polling solamente. Hago una captura de 79 datos (es la matriz mas grande que puedo crear de 8 bits en el CCS) y luego los proceso. Gracias por la ayuda.

Desconectado MerLiNz

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2463
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #8 en: 13 de Septiembre de 2011, 12:27:16 »
porque es la matriz mas grande que puedes crear? Viene limitado? o estas limitado por la memoria del micro?

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #9 en: 13 de Septiembre de 2011, 12:29:28 »
porque es la matriz mas grande que puedes crear? Viene limitado? o estas limitado por la memoria del micro?

Es un 12F  ;-)


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #10 en: 13 de Septiembre de 2011, 15:13:17 »
Claro, el 12F683 tiene 128 bytes de RAM. Entonces, a parte de los 4 bytes aprox. que ya tengo creados como locales (dentro del main), en el CCS solo me permite crear una matriz de bytes (int8) global de hasta 92 como maximo.

Código: [Seleccionar]
int8 Matriz[92];

void main (void)...

Con esto mi RAM esta en 80%; a esta matrix ya no le puedo poner mas de 92.

Por otro lado, aun puedo crear otra matriz global mas de hasta 25 bytes. con esto mi RAM si se va al 100%.

Entnoces, los 4 primeros locales, mas la matriz global de 92 bytes, mas la otra matriz global de 25 bytes, dan 121 bytes en total. No se que hara CCS con los otros 7 bytes que faltan (128 - 121), pero debe ser por que algunas variables son globales y otras son locales y quiza esto influya.

Tampoco se porque no puedo crear una sola matriz que tenga 117 (92+25) bytes, talves sea por la version quien sabe. Mi version CCS es la 4.112.

Bueno, salu2.
« Última modificación: 13 de Septiembre de 2011, 15:27:44 por jeremylf »

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #11 en: 13 de Septiembre de 2011, 15:51:22 »
Además esta el tema de los bancos. 92 bytes son lo máximo consecutivos.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #12 en: 13 de Septiembre de 2011, 17:10:07 »
... 92 bytes son lo máximo consecutivos.
En que parte del datasheet esta eso?  :lol:

Desconectado MerLiNz

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2463
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #13 en: 13 de Septiembre de 2011, 17:34:32 »
eso depende, en el c18 se puede editar los bancos y ponerlos todos como 1 unico banco.

Desconectado AKENAFAB

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3227
Re: PIC12F683 y su frecuencia de muestreo maxima (ADC)
« Respuesta #14 en: 13 de Septiembre de 2011, 17:37:46 »
... 92 bytes son lo máximo consecutivos.
En que parte del datasheet esta eso?  :lol:

En el mapa de memoria de datos.

Que para ese pic indica que es de 96 , y otro banco de 32 , en total 128 de RAM .

Saludos!

« Última modificación: 13 de Septiembre de 2011, 17:39:55 por AKENAFAB »


 

anything