在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1813|回复: 0

[求助] 请教关于dds发送特定周期数正弦波的代码

[复制链接]
发表于 2014-8-20 10:53:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
小弟最近一直想尝试用dds发送固定个周期的正弦信号(现在数量无所谓只要产生随意固定数目就行了),代码一直觉得没啥问题,不知道为何产生波形一直是一个一个周期正弦一个周期直流的波形。代码如下,请各位赐教:
module sintest(clk,reset_n,DACLK,wave);
input clk;
input reset_n;
output DACLK;
output [7:0]wave;
assign DACLK = clk;
reg[24:0] COUNT;
reg [3:0]times;
reg[9:0] address;
reg rden;
  always @(posedge clk )
   begin
            COUNT <= COUNT +25'd3355;
       address<= COUNT[23:14];
        if(COUNT[24]==1)
       times<=times+1;
        end


        always @ (posedge clk )
     begin
        if (times<=4'b0011)
               rden<=1;
          else rden<=0;
    end


sin (address,clk,rden,wave);
endmodule

其中rden是sin ROM的数据读取使能,按照我的理解,我取COUNT最高位为标志位,它变成1,我times+1,由于最后times肯定大于3所以肯定是产生五个波形正弦波,后面没有波形。
等times循环变成4b'0000,再次循环。
小弟想问问,我这种思路是否可行?
代码逻辑问题出在哪里?
如果要实现我想要的功能有没有更好的办法?
谢谢各位了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-5 02:58 , Processed in 0.023057 second(s), 11 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表