在matlab中量化模拟信号

时间:2017-01-21 08:15:28

标签: matlab

对信号y1= sin(2000πt) + cos(2000πt) with Ts = 0.1 ms and for 0 ≤ t ≤ 2 ms进行采样和量化。其中Ts是采样间隔,ADC具有8,16和32个均匀量化电平。

我无法弄清楚如何在Matlab中量化信号。我可以创建信号,但我被卡在量化部分。

t=(0:.00001:.002);

x=sin(2000*pi*t)+cos(2000*pi*t);

plot(t,x);'

我从哪里开始?我是Matlab的新手。

1 个答案:

答案 0 :(得分:2)

尝试使用matlab quantize启发的代码。分区/码本写入3位/ 8级。

Ts=0.0001;
t=0:.00001:20*Ts;
sig=sin(2000*pi*t)+cos(2000*pi*t);
maxsig=max(sig); %signal max
interv=2*maxsig/(2^3-1); %interval length for 8 levels resolution
u=maxsig+interv;
partition = [-maxsig:interv:maxsig]; 
codebook = [-maxsig:interv:u]; 
[index,quants] = quantiz(sig,partition,codebook); % Quantize.
plot(t,sig,'-',t,quants,'-');
legend('Original signal','Quantized signal');
相关问题