日志档案

发表于 2007-8-18 21:51:49

5

标签: DDS  CPLD  正弦信号  

基于CPLD的DDS正弦信号发生器的设计

    这几天终于实现了DDS正弦信号的发生,限于CPLD的128宏单元不够用也不知道怎么优化,后来就干脆把按键、频率显示、频率控制字交给单片机控制产生,再由单片机讲频率控制字传送给CPLD,这样就实现了频率的控制。最终产生的正弦信号频率范围为1HZ~30KHZ,频率可步进1HZ也可通过单片机预置,也可以自动扫频信号。起先出来的频最大误差达到2HZ多,觉得不对劲出来的频率应该很精确不会有这么大的误差,后来发现原来是晶振不准有点误差,后来经程序修改使输出最大频率误差在0.1HZ以内,经过这几天的努力总算感到了一点的欣慰,呵呵。

这是VHDL顶层模块:

点击看大图

这是当k=001111111111111时的仿真波形:

点击看大图

    单片机控制6个数码管显示当前的频率,P1口接4个功能按键,分别是+、-、选择和扫频,再用两片574向CPLD输出频率控制字。限于时间暂时做到这么多。

    在说一点吧,由于是用DAC0832转换的(转换时间1us)所以晶振就限制在1M之内了,出来的最大频率,根据奈奎斯特采样定理也就限制在0.5MHZ之内了(不过失真很大的,取小点好了),最后对出来的波形再做滤波就可以了。

系统分类: CPLD/FPGA   |   用户分类: FPGA/CPLD   |   来源: 原创   |   【推荐给朋友】

    阅读(2128)    回复(89)  

投一票您将和博主都有获奖机会!

  • LJQ

    2007-8-19 17:10:09

    能不能发一份这个完整的资料给我啊?我现在也在做,想学习学习,万分感谢啊!我的邮箱是:

    2292ljq@163.com

  • chinaluou

    2007-8-20 10:09:24

    楼上程序以发。。。

  • rui.yi

    2007-8-21 12:54:04

    顶!!!!!

    能不能发一份这个完整的资料给我啊?

    万分感谢啊!我的邮箱是:

    orui.yi@yahoo.com.cn

  • chinaluou

    2007-8-21 14:32:54

    已发请查收,若有疑问请联系!

  • rui.yi

    2007-8-21 16:21:57

    请问你用哪家公司的软件做的?

  • syalsyyh

    2007-8-21 16:41:53

    我也想要一份……最近也在搞这个,楼主能不能也发我一份呢?我的邮箱Katheron@163.com,谢谢楼主~~

  • chinaluou

    2007-8-21 18:42:02

    ALTERA公司的quartusII软件,楼上已发查收。

  • jojo

    2007-8-21 21:27:01

    我也想要一份,谢谢

    jojoagogo@sina.com

  • chinaluou

    2007-8-22 9:17:54

    已发,请查收。

  • zengfan

    2007-8-22 14:24:15

    请问一下:你的是不是用打点的方法实现的?多少点?如果不考虑da 的话,它的频率能做到多高?另外能否看一下您的源程序,小弟先在此谢过。我的邮箱是zengfan155@126.com

  • chinaluou

    2007-8-22 15:12:06

    是用点描出的,数字的也只能这样的吧,一般取点256个就够了的。程序已发,请查收,如有问题再联系。。

  • 于娜

    2007-8-22 15:54:20

    我是一名学生,正在做电子设计,能不能麻烦您把具体资料发在我的邮箱里,谢谢

    xyzfish1988@163.com

  • 要完整的资料,谢谢

    2007-8-22 16:11:01

    顶!!!!!

    能不能发一份这个完整的资料给我啊?包括程序.

    万分感谢啊!我的邮箱是:

    lxhllf520@163.com

  • 大海

    2007-8-22 16:11:48

    顶!!!!!

    能不能发一份这个完整的资料给我啊?包括程序.

    万分感谢啊!我的邮箱是:

    lxhllf520@163.com

  • chinaluou

    2007-8-22 17:26:58

    上面两位已发,请查收。

  • 于娜

    2007-8-22 17:56:29

    斑竹,能不能麻烦您快点,我挺急的,谢谢了.请把详细资料发给我.xyzfish1988@163.com感谢感谢

  • 于娜

    2007-8-22 17:57:04

    哦,谢谢哦,

  • ivyer

    2007-8-22 18:10:43

    麻烦问一下,有没有和程序对照的原理图啊?呵呵,程序看起来有些晕......多谢了.我的邮箱是fangyu-15@163.com

  • chinaluou

    2007-8-22 19:08:38

        具体是15位的频率控制字K由单片机送到两片574锁存数据CPLD读取数据,CPLD的dout输出8位送到DAC0832的8位输入端就可以了,因为管脚可以任意分配所以原理图上也不会有线连出的。只要知道这样接就可以了。

  • ivyer

    2007-8-22 19:30:57

    哦,多谢!

  • 谢谢

    2007-8-22 19:57:59

    能不能给我传一份啊  我也很想欣赏一下 我作的标准阿  谢谢 wangshouping0504@163.com      QQ:289595370

  • 谢谢

    2007-8-22 20:00:37

    写错了 是我做的不标准阿 谢谢俄i

  • chinaluou

    2007-8-22 21:20:55

    哦,呵呵,我这个也不是特别的精确啊,按理说可以做的极精确的,已发,请查收。

  • 小肖

    2007-8-23 21:10:52

    可不可以发一份给我,我正在做这个方面的设计,谢谢!邮箱:xiaomuhong26@163.com

  • 我想学下DDS

    2007-8-24 10:33:49

     我也做了个用FPGA控制的,但是我用单片机送的时候好象送不进去,请问是什么原因,

    你能帮我讲下,或发分资料给我

    我的邮箱是  xieshaowen1314520@163.com

  • chinaluou

    2007-8-24 11:36:06

    你是直接用单片机的P口传送的么?

  • chenjinmeinjnu

    2007-8-24 21:16:15

    你做的DDS里的那个accumulate是一个加法器吗?

  • chinaluou

    2007-8-25 9:14:11

    是的,它的高8位是正弦数据ROM的地址。

  • BB.KING

    2007-8-26 0:53:31

    请发份资料给我,谢谢!

    我的邮箱是:hi_ounce@163.com

  • jj

    2007-8-26 11:40:30

    你好,能不能把完整资料发给我学习学习啊,我是搞IC测试的.谢谢!

    JLW111@163.COM

  • chinaluou

    2007-8-26 12:35:31

    已经发送,请查收。

  • shanxinhp

    2007-8-26 21:54:39

    我正在做电子设计,能不能麻烦您把具体资料发在我的邮箱里,谢谢

     shanxinhp@sohu.com

  • chinaluou

    2007-8-26 22:15:05

    楼上的朋友,已经将文件发送到你的邮箱,请注意查收,如果觉得好请给我投上一票,谢谢!

  • 秀姑

    2007-8-26 23:28:30

    呵呵,您好!我也要哈,我也在弄这个,借鉴一下您的精华.请你给我一份

  • chinaluou

    2007-8-27 8:40:43

    呵呵,你邮箱没留我怎么给你呢?

  • lljyes

    2007-8-27 22:16:07

    向楼主学习学习,想要份资料,谢谢!

    邮箱:lljyes@21cn.com

  • chinaluou

    2007-8-28 10:55:54

    已发,请查收

  • 谢谢

    2007-8-28 14:23:39

    我也想要一份,正在研究,有点困难!

    swan0130@163.com

  • zq

    2007-8-28 14:51:49

    我正在做这方面的东西,遇到了一些困难,希望能得到楼主的帮助,借鉴一下~~

    谢谢

    我的邮箱zq1988vic@163.com

    万分感谢!

  • chinaluou

    2007-8-28 15:18:05

    上面两位,程序已发,请查收。如觉得好,别忘了投我一票哦。

  • jiufzh

    2007-8-28 22:46:17

    楼主,我正要做个音频产生器,麻烦您发份程序给我借鉴一下,感谢!!

    jiufzh@163.com

  • chinaluou

    2007-8-29 12:56:46

    楼上朋友,程序已经发送至你的邮箱,请注意查收。

  • you

    2007-8-30 17:40:24

    楼主我也需要一份 想用cpld显示正负脉的波形  谢谢
    我的油箱 shuangyou21@163.com

  • xx

    2007-8-31 16:38:23

    我正在做电子设计,能不能麻烦您把具体资料发在我的邮箱里,谢谢

     hhailin606@163.com

  • chinaluou

    2007-8-31 18:21:45

    已发请查收。

  • fd

    2007-8-31 18:45:03

       我正在参加全国比赛,能发一份给我吗,十分感谢!!我的油箱是jack-prince@163.com

  • nipu

    2007-9-1 0:05:00

    我也正在参加全国比赛,想做DDS正弦信号发生器,能发一份给我吗,十分感谢!!我的油箱是

    nipu04290060120@163.com

  • chinaluou

    2007-9-2 17:11:53

    已发请查收

  • 正选信号发生器

    2007-9-2 18:30:13

    请将《基于CPLD的DDS正弦信号发生器的设计资料》发baojianxin@hrbeu.edu.cn   非常感谢

  • chinaluou

    2007-9-2 20:52:38

    已发,请查收。

  • caihong

    2007-9-2 21:49:02

    很想学习这个,能给我也发一份吗?非常感谢!mailofliucaihong@sina.com

  • zhumyx

    2007-9-3 13:29:05

    我也想学习学习。能给我也发一份吗?非常感谢!

    zhumyx@sohu.com

  • log

    2007-9-4 9:30:45

    我也要吗,好东西要大家一起分享的,我的邮箱是

    fangxiujuan123@163.com   thank you

  • 不错

    2007-9-4 9:47:13

    很不错看来做这个课题的人还挺多给我也发一份吧谢谢了tz0501@sohu.com

  • qq

    2007-9-4 11:04:34

    我正在做电子设计,能不能麻烦您把具体资料发在我的邮箱里,谢谢

     maoshengxiang123@sina.com

  • 虹虹

    2007-9-4 20:28:39

    不好意思,麻烦给我也发一份,谢谢!

    zhhzhxuzhou@163.com

  • lala

    2007-9-5 14:58:44

    不好意思,麻烦给我也发一份,谢谢!

     

    netsurfersw@yahoo.com.cn

  • chinaluou

    2007-9-7 11:58:02

    以上7位朋友,程序已经发到你们的邮箱了,请注意查收。

  • fantia

    2007-9-17 20:45:52

    我也很想要一份,谢谢,麻烦你了,这两天看vhdl看的头都晕了

     

    fantianqi@163.com

  • my2jia

    2007-9-17 22:01:54

    不好意思,麻烦给我也发一份,谢谢!

    my2jia@gmail.com

  • chinaluou

    2007-9-18 22:17:39

    已经发送,请查收。

  • 需要程序

    2007-9-21 22:12:44

    LZ,我是一个学生,现在也是正在学习这个,能不能把你的详细资料发给我呢

    邮箱:hongxinglin@126.com

  • chinaluou

    2007-9-22 8:53:20

    已经发送,请查收

  • ni hao

    2007-11-13 20:58:59

    我也是一名学生,正在做这个,楼主能把资料发给我吗?谢谢了

    zhaojian6271@yahoo.com.cn

  • 李斌

    2007-12-2 11:31:25

    万分感谢!!!

  • monkey

    2007-12-9 8:25:13

    你好,可不可以把你的程序也发一份给我看,可以吗?我之前一直都用EPF10K10LC84-4做,现在改成EPM7128SLC84-15做,总是说我占用逻辑单元太多,也不知道怎么改了。看到你的这篇文章,我觉得真是救星。

    我的邮箱是:wql2003@live.cn。谢谢!

  • 乐乐

    2007-12-10 10:03:38

    能不能给我也发一份,万分谢谢 !!!

      我邮箱:243552462@qq.com

  • aibemao

    2007-12-11 21:29:47

    能不能给我也发一份,万分谢谢 !!!最近急用

    aibemao@yahoo.cn

  • chinaluou

    2007-12-13 11:55:59

    很久没来自己的博客了,呵呵,楼上的几位程序已经发送请查收!

  • heihei

    2007-12-24 8:52:40

    请给我发一份好吗?

    heihei200651@163.com

    谢谢

  • zx

    2008-1-5 0:10:26

    可不可以发一份给我,我正在做这个方面的设计,谢谢!邮箱:zhangxiao51862388@126.com

  • 谢谢

    2008-1-13 15:17:03

    可不可以也发一份给我,十分想学习一下,谢谢,邮箱:wang777772007200@sina.com

  • thank you

    2008-2-27 0:16:35

    可不可以也发一份给我,正想学习,谢谢,邮箱:

    benpaomf@163.com

  • xiexie

    2008-3-3 21:05:24

    能不能也发一份给我 谢谢 wang777772007200@163.com

  • 裔佐

    2008-3-6 1:05:47

    您好~这是我的邮箱 yooho_chang@163.com 请发一份资料及相关程序给我可以吗~ 我最近在学习这个 谢谢

  • SESE

    2008-3-8 15:00:36</