Estoy intentando implementar un oscilador sinusoidal DDS utilizando la placa de desarrollo mencionada y una MCU STM32F107VCT6.
He adaptado el código utilizado en este enlace:
Estoy utilizando la fórmula en este enlace para calcular un valor de paso para una frecuencia determinada. Mi problema es que al usar la velocidad de reloj operativa de MCU (16 MHz), obtengo una frecuencia de salida de casi la mitad de la frecuencia deseada. Al usar 8Mhz (para probar), logro una frecuencia mucho más cercana al valor deseado.
He revisado la hoja de datos de mi MCU pero no puedo encontrar ninguna información relacionada con un valor de reloj reducido para el DAC, por lo que supongo que el DAC funciona a la velocidad del reloj del sistema (sin embargo, la intuición sugiere lo contrario). p>
Las bibliotecas y los archivos de ayuda de Mikro C no ofrecen mucha explicación detallada de la operación del DAC y estoy empezando con este microcontrolador, por lo que estoy un poco confundido.
¿Alguien tiene una idea sobre si hay un prescaler DAC para estas MCU? (Solo puedo encontrar información sobre ADC y otros prescalers periféricos). ¿O mi problema radica en el cálculo utilizado en el enlace anterior?
Saludos ..