DDS - безусловно правильное решение. Не внешний, а програмный. Примеров - куча. Любая разумная точность и хоть синус, хоть меандр с выхода DAC в зависимости от того что в таблице. Не надо искать делителей. Принцип очень простой. Счетчик фазы 32 бита. Прибавляем произвольное число скажем раз в микросекунду. Младшие 8 бит - адрес в таблице синуса (или чего угодно). Если прибавлять по единице, переполнение произойдет с частотой примерно 1/4295 Гц. Если прибавлять по 4295, получим 1 Гц. Если по 4294967, то 1 КГц. И т.д.
|