|
30319_labs
Sistemas Electrónicos con Microprocesadores
|
Funciones | |
| void | DDS16Bits_setPhase (dds16bits_t *p_dds, uint16_t phase) |
| void | DDS16Bits_setPhaseInc (dds16bits_t *p_dds, uint16_t phaseinc) |
| int16_t | DDS16Bits_getNextSample (dds16bits_t *p_dds) |
| int16_t DDS16Bits_getNextSample | ( | dds16bits_t * | p_dds | ) |
Obtiene la siguiente muestra de la señal generada por el DDS.
Calcula y devuelve la siguiente muestra de amplitud de la señal generada mediante el algoritmo DDS. La función actualiza internamente el acumulador de fase sumándole el incremento de fase.
Esta función debe llamarse a una tasa constante (frecuencia de muestreo) para generar correctamente la señal deseada.
| [in,out] | p_dds | Puntero al módulo DDS (se modifica el acumulador de fase) |
| void DDS16Bits_setPhase | ( | dds16bits_t * | p_dds, |
| uint16_t | phase ) |
Establece el valor de la fase en un objeto DDS de 16 bits.
Inicializa el acumulador de fase del generador DDS con un valor específico. Esto permite comenzar la generación de la señal desde un punto determinado de la forma de onda.
| [out] | p_dds | Puntero a la estructura DDS a modificar |
| [in] | phase | Valor de la fase codificada en 16 bits, donde:
|
| void DDS16Bits_setPhaseInc | ( | dds16bits_t * | p_dds, |
| uint16_t | phaseinc ) |
Establece el incremento de fase en un objeto DDS de 16 bits.
Configura el incremento de fase del generador DDS, que determina la frecuencia de la señal generada. Un incremento mayor produce frecuencias más altas.
La frecuencia de salida se calcula como:
f_out = (phaseinc / 65536) * f_sample
donde f_sample es la frecuencia de muestreo.
| [out] | p_dds | Puntero a la estructura DDS a modificar |
| [in] | phaseinc | Valor del incremento de fase codificado en 16 bits |