刚开端想用单片机做个频率接连可调的信号发生器,后来就联想到了其时用FPGA做的DDS信号发生器了。然后上网搜材料,哈哈,这个还真有人做过,大约看了一下人家的解说,就开端干活啦!
DDS信号发生器的频率计算公式如下:
其间fout为输出频率,M为累加器每次的步进值,N为累加器的位数,我这儿选用的是unsigned int 16位的累加器。在FPGA体系中这个fc为体系时钟,也便是有源晶振通过分频后的频率。但是在单片机中咱们只能用单片机进中止的频率来作为fc。
fc的设置需求留意的是1、进中止的周期要大于中止程序履行的时刻 2、进中止的周期也要大于DAC两次写入数据的时刻。
我选用的硬件stc12c5a08s2 24m晶振 dac0832
上终究效果图
几个频率的测验波形
10Hz频率测验
正弦波
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qiche/dianzi/317520.html