完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
FPGA型号EP1C3T144I7N,配置芯片型号EPC2LI20N,DDS型号AD9910,用Quartus II软件编程下载,JATG模式,程序很简单,只是采用DRG模式输出一个调频信号,但是我的输出结果只有一个下限值(正斜率调频,负斜率调频时只出现上限值),感觉好像是没跳起来,但是我用示波器检查调频dds_ctrl信号和io_update信号是对的,有上升沿的作用,请教大神指导一下,这种情况是怎么回事??
附注:加入点频模式程序时,输出是正确的。 原理图如下和程序代码: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; -------------------------------------------------------------------- entity Set_Data_DDS_T is port ( clk_ref :in std_logic; P_Data :out std_logic_vector(71 downto 0); flag :out std_logic_vector(1 downto 0); ena :out std_logic; clr :out std_logic; dds_ctrl :out std_logic; io_update :out std_logic; io_rst :out std_logic ); end Set_Data_DDS_T; architecture Set_Data_body of Set_Data_DDS_T is --constant CFR1_APA :std_logic_vector(71 downto 0) := x"00_0000_2000_0000_0000"; ---Autoclear phase accumulator constant CFR1 :std_logic_vector(71 downto 0) := x"00_0000_0000_0000_0000"; constant CFR2_DRG_ON :std_logic_vector(71 downto 0) := x"01_004C_0820_0000_0000"; ---Enable SYNC_CLK and DRG, no-dwell HIGH --constant CFR2_DRG_OFF :std_logic_vector(71 downto 0) := x"01_0040_0820_0000_0000"; ---Enable SYNC_CLK and disable DRG constant CFR3 :std_logic_vector(71 downto 0) := x"02_1F3F_C000_0000_0000"; ---REFCLK input divider bypass constant DAC :std_logic_vector(71 downto 0) := x"03_0000_00FF_0000_0000"; constant LSRR :std_logic_vector(71 downto 0) := x"0D_0001_0001_0000_0000"; --0X0D,FIXED, DRG rate constant LSPR_ON :std_logic_vector(71 downto 0) := x"0B_3355_5555_28AA_AAAB"; ---0x0B, DRG limit, freq range 152.5-192.5MHz constant LSPR_OFF :std_logic_vector(71 downto 0) := x"0B_0000_0000_0000_0000"; ---0x0B, no signal output constant LSDPR :std_logic_vector(71 downto 0) := x"0C_0000_48D1_0000_48D1"; ---0x0C, DRG frequency step begin process(clk_ref) variable count :integer range 0 to 18000; begin if(clk_ref'event and clk_ref='1')then if count<8000 then count:=count+1; ---reset the i/o--- if count=5 then io_update<='0'; io_rst <='0'; dds_ctrl <='0'; elsif count=7 then io_rst <='1'; elsif count=10 then io_rst <='0'; ---Send CFR1-------------- elsif count=20 then flag<="01"; elsif count=25 then P_Data<=CFR1; clr<='1'; elsif count=27 then clr<='0'; elsif count=30 then ena<='1'; elsif count=130 then ena<='0'; ---Send CFR2_DRG_ON-------------- elsif count=155 then P_Data<=CFR2_DRG_ON; clr<='1'; elsif count=157 then clr<='0'; elsif count=160 then ena<='1'; elsif count=260 then ena<='0'; ---Send CFR3-------------- elsif count=285 then P_Data<=CFR3; clr<='1'; elsif count=287 then clr<='0'; elsif count=290 then ena<='1'; elsif count=390 then ena<='0'; ---Send DAC-------------- elsif count=415 then P_Data<=DAC; clr<='1'; elsif count=417 then clr<='0'; elsif count=420 then ena<='1'; elsif count=520 then ena<='0'; ---Send LSPR_ON-------------- elsif count=540 then flag<="00"; elsif count=545 then P_Data<=LSPR_ON; clr<='1'; elsif count=547 then clr<='0'; elsif count=550 then ena<='1'; elsif count=750 then ena<='0'; ---Send LSDPR-------------- elsif count=775 then P_Data<=LSDPR; clr<='1'; elsif count=777 then clr<='0'; elsif count=780 then ena<='1'; elsif count=980 then ena<='0'; ---Send LSRR-------------- elsif count=1000 then flag<="01"; elsif count=1005 then P_Data<=LSRR; clr<='1'; elsif count=1007 then clr<='0'; elsif count=1010 then ena<='1'; elsif count=1110 then na<='0'; ---Update the previous registers and start FM----- elsif count =1114 then io_update <='1'; --update the register from the buffer; elsif count=1118 then dds_ctrl <='1'; elsif count=1126 then io_update <='0'; elsif count=1138 then dds_ctrl <='0'; end if; else P_Data<="ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"; count :=0; end if; end if; end process; end Set_Data_body;
|
|
相关推荐
2个回答
|
|
求助求助!大神请帮我解答一下吧??急急急
|
|
|
|
怎么没人回复我呢???求救啊
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1925 浏览 1 评论
助力AIoT应用:在米尔FPGA开发板上实现Tiny YOLO V4
1131 浏览 0 评论
3027 浏览 1 评论
2692 浏览 0 评论
矩阵4x4个按键,如何把识别结果按编号01-16(十进制)显示在两个七段数码管上?
2983 浏览 0 评论
2203 浏览 58 评论
6101 浏览 113 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-11 09:26 , Processed in 0.648026 second(s), Total 75, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号