⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dds.m

📁 直接数字频率合成器中相位累加杂散
💻 M
字号:
clear;

N=21;             %累加器的位数;

K=fix((2^N)*0.222);%频率控制字,即累加的步长;

M=10;             %截取累加器的高10位; 

D=8;              %8bit DAC

g=gcd(K,2^N);

pe=2^N/(g);

n=1:pe;

pp=pe+1;          %频谱分析点数

add_y=mod(n*K,2^N);  %累加器的输出表达式;

error=mod(n*K,2^(N-M));

rom_y=cos(2*pi*(add_y-error)/(2^N));     %相位到幅度映射的输出;

pat = - 1 + 1/ (2^ (D - 1) ):1/ (2^ (D - 1) ):1 - 1/ (2^ (D -1) ); %设定量化区间

codebook = - 1 + 1/ (2^D):1/ (2^(D - 1) ) :1 - 1/ (2^D); %设定量化码本值

[Pyy,wy]=periodogram(rom_y,[],'onesided',pp);

figure;%figure1 只有相位截断,没有量化 figure1

psdplot(Pyy/max(Pyy),wy);%      归一化显示出图;

rom_x=cos(2*pi*add_y/(2^N));

[index,quants2] = quantiz(rom_x,pat,codebook);%量化

[Pzz,wz]=periodogram(quants2,[],'onesided',pp);

figure;%没有相位截取和DAC的非线性等,figure2,只有量化

psdplot(Pzz/max(Pzz),wz);%      归一化显示出图;

[index,quants1] = quantiz(rom_y,pat,codebook);%量化

[Pxx,wx]=periodogram(quants1,[],'onesided',pp);    %频谱分析;

figure;       %figure3 相位截断加量化

psdplot(Pxx/max(Pxx),wx);%     归一化显示出图;

grid on

 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -