用DDS吧,AD9850
不产生正弦波还好说,产生正弦波很麻烦的,你又要用单片机控制,DDS是最简单的方案,单片机对AD9850编程,直接输出正弦波,方波,三角波,频率还能做到很高;不过你需要在信号幅值上面下点功夫,如果你需要信号幅值用单片机控制的话,需要自己用DAC或者数字电位器或者模拟开关做一个程控的信号放大电路。
信号发生器原文地址:http://wenku.baidu.com/view/8165bf2d7375a417866f8f56.html
自己下载吧
控制DAC,我只知道思路。
直接用单片机和DAC就行了