📄 a_d_1.m
字号:
function [sampl,quant,pcm]=a_d_1(A,F,P,D)
%单频正弦波模拟信号的抽样实现%
Fs=20*F;
t=0:1/Fs:2/F;
samp=A*sin(2*pi*F*t+P);
figure(1)
plot(t,samp);
title('正弦波信号波形图');
xlabel('时间');ylabel('幅度');
grid on
%单频正弦波模拟信号均匀量化的实现%
sampl=samp/A;
[partition,codebook]=lloyds(sampl,D);
[indx,quant]=quantiz(sampl,partition,codebook);
figure(2)
plot(t,sampl,'x',t,quant,'.');
title('量化后输出信号quant与抽样信号samp的波形图');
xlabel('时间');ylabel('幅度');
grid on
axis([0 2/F -1.2 1.2]);
%单频正弦波模拟信号PCM二进制自然编码的实现%
index=indx-1;
pcm1=zeros(length(index),1);
i=1;
while i<=length(index)
if index(i,1)==-1
index(i,1)=0;
end
i=i+1;
end
% 对量化后的信号进行二进制自然编码
pcm1=dec2bin(index,4);
pcm2=pcm1';
pcm2=reshape(pcm2,1,ceil(log2(D))*41);
m=length(pcm2);
for n=1:m
if ischar(pcm2(n))==1
pcm(n)=str2num(pcm2(n));
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -