ADC de la placa de descubrimiento Stm32F4

0

Estoy tratando de hacer una integración parcial en una forma de onda de 550 KHz usando la placa de descubrimiento STM32F4 usando el conjunto de herramientas Waijung en Simulink. El tiempo de muestreo que estoy usando es 0.018 us, es decir, 3 ciclos, si la frecuencia de reloj es 168 MHz. El preescalador ADC es 2, por lo que la frecuencia ADC es 84 MHz. El tiempo total requerido para la conversión debe ser 0.143 us (resolución de 12 bits) +0.018 us, es decir, alrededor de 0.16 us. Esto debería teóricamente ser suficiente con los criterios de Nyquist para el muestreo. Sin embargo, parece que no obtengo ninguna salida al final. No puedo ver los datos en tiempo real después de ADC, usando la interfaz serial o el DAC. Así que no estoy seguro de lo que estoy haciendo mal. Cualquier sugerencia o idea es muy apreciada.

P.S. Estoy adjuntando la forma de onda que estoy tratando de adquirir (integración entre, por ejemplo, 20 a 140 nos) y el programa Simulink. Por favor, avíseme si se requiere alguna otra información.

    
pregunta SappyM

1 respuesta

0

No estoy seguro de qué chip está usando exactamente, pero la familia STM32F4 tiene una tasa de muestreo ADC máxima de 2.4 MS / s o 7.2 MS / s si usa 3 de ADC en modo triple.

También falta que entre el reloj principal y el ADC haya un prescaler más que limite el reloj en el bus APB2. El reloj máximo en APB2 es de 90 MHz, que debe dividirse con 2 para el reloj ADC máximo de 45 MHz.

Para lograr realmente esta velocidad de muestreo, debe considerar la velocidad de datos (7.2 MS / s * 12bit = 86 Mb / s), que es demasiado rápida para las comunicaciones en serie disponibles en el chip. Lo que podría hacer es usar DMA para recopilar muestras en la memoria del chip y luego enviarlas lentamente a la PC.

    
respondido por el Rokta

Lea otras preguntas en las etiquetas