Ответ: (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено 22 августа 2003 г. 00:32
В ответ на: Преобразователь код-частота отправлено andreika 22 августа 2003 г. 00:07

DDS.
Любой МК с ЦАП или ШИМ, обеспечивающий вычисление нижеследующего хотя-бы раз так 16000 в секунду. Например 51-й процессор.
Точность за счет линейной интерполяции у этого алгоритма очень даже порядочная. Несмотря на 256-байтную таблицу.

unsigned long ph;
const char sin_table[256] = {...}; // один период sin
short a,b,out;

//.........
//freq_generated = (Fsample*freq_const)>>32

ph = ph + freq_const;
a = sin_table[ph>>24]<<8;
b = sin_table[((ph>>24)+1)&0xFF]<<8;

out = a + (((b-a)*((ph>>16)&0xFF))>>8);



Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru