没有合适的资源?快使用搜索试试~ 我知道了~
首页matlab正弦信号PCM编码译码
%>>>>>>>>>>>给定正弦信<<<<<<<<<< %========================== clear; t=0:0.001:1;%给定10个单位的时间 x=0:0.002*pi:2*pi; Signal_m=10*sin(x);%给一个正弦信号,信号输入范围为[-10,10] subplot(2,1,1); plot(t,Signal_m); title('输入正弦信号'); grid; %========================= %>>>>>>>>>>>>>>PCM编码<<<<<<<<<<<< %========================== %------随机的产生抽样值,给出PCM码组---------- Is=round(2048*(Signal_m/10));%归一化 Len=length(Is);Code=zeros(Len,8);
资源详情
资源评论
资源推荐

附录 C 对正弦信号 m(t)进行编码和译码
%>>>>>>>>>>>>>>>>>>>>>>>>>>>给定正弦信号<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<
%==============================================
=========================
clear;
t=0:0.001:1;%给定 10 个单位的时间
x=0:0.002*pi:2*pi;
Signal_m=10*sin(x);%给一个正弦信号,信号输入范围为[-10,10]
subplot(2,1,1);
plot(t,Signal_m);
title('输入正弦信号');
grid;
%==============================================
=========================
%>>>>>>>>>>>>>>>>>>>>>>>>>>>>>PCM 编码<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<
%==============================================
=========================
%------------------------随机的产生抽样值,给出 PCM 码组-----------------------
Is=round(2048*(Signal_m/10));%归一化
Len=length(Is);Code=zeros(Len,8);
%---------------------------------极性码-----------------------------------
fori=1:Len
if(Is(i)>0)Code(i,1)=1;
end
end
%----------------------------------段落码----------------------------------
Signal=abs(Is);
fori=1:Len
if(Signal(i)>=128)
Code(i,2)=1;%为 1 在 5~8 段,否则在 1~4 段
end
if(Code(i,2)==1)%++++++++++确在 5~8 段++++++++++
if(Signal(i)>=512)
Code(i,3)=1;%为 1 在 7~8 段,否则在 5~6 段
end
if(Code(i,3)==1)%-------确在 7~8 段-------
if(Signal(i)>=1024)
Code(i,4)=1;%为 1 在第 8 段,否则在第 7 段















安全验证
文档复制为VIP权益,开通VIP直接复制

评论1