Estoy tratando de generar una señal que contenga sólo varias frecuencias específicas que conozco de antemano, alrededor de (16,4kHz, 16,7khZ, 17kHz,...)
la señal se genera mediante un microcontrolador, que luego emite una señal analógica a un altavoz.
El problema es que debido a las limitaciones de sincronización del chip, no puedo producir las frecuencias exactas que necesito, están desplazadas unos 40Hz en alguna dirección. Empiezo a pensar que quizás este método de generación no es el óptimo. mis preguntas son:
-
¿podría pensar en una forma diferente, tal vez incluso completamente analógica (sin microcontrolador) para generar este tipo de señal?
-
Sé que para desplazar las frecuencias en, digamos, 40Hz, tengo que multiplicarlas por un coseno (modularlas), pero entonces se desplazarán tanto a la "izquierda" como a la "derecha", lo que hará que las cosas sean extremadamente incontinentes. ¿Hay alguna otra forma sofisticada de conseguir este tipo de desplazamiento de frecuencias?
Gracias.
EDITAR: Actualmente estoy usando microchip pic16F1783 @32MHz con DAC de 8 bits. Estoy creando una suma de los senos "puros" en las frecuencias deseadas y luego producir la onda. las limitaciones son del mundo digital: la frecuencia de muestreo se digitaliza, puede ser 8MHz / entero, digamos 8M/100 para obtener frecuencias de muestreo de 80KhZ. otra restricción es la RAM. Creo la señal por adelantado y la pongo en un array que no puede tener más de 450 elementos. Debido a todo esto mi señal no se crea a 16.4 sino a 16.351