MATLAB实现十三折线编码

MATLAB实现十三折线编码

源代码:
%主函数:
function pcm()
t=0:0.1:6pi;
x=sin(t); %模拟信源
subplot(2,1,1);
plot(t,x);
title ( ‘原始模拟信号’ );
t1=0:2
pi/32:6*pi; %按每周期取32个点抽样
x1=sin(t1);
subplot(2,1,2);
plot(t1,x1);
stem(t1,x1);
title ( ‘抽样信号’ );
x2=zhexian_(x1); %13折线
x3=bianma(x2); %调用编码函数
x1
x2
x3
%编码函数
`function y=bianma(x)

z=sign(x);
x=x/max(x); %归一化
x=abs(x); %取绝对值
x=2048*x;
x=fix(x); %量化,靠0取整
y=zeros(length(x),8); %储存矩阵(全零)
%段落码判断
for m=1:length(x)
if x(m)>128&&x(m)<2048 %在第五段与第八段之间,段落码第一位为1
y(m,2)=1;
end
if (x(m)>32&&x(m)<128)||(x(m)>512&&x(m)<2048)%在第三第四第七第八段内,段落码第二位为1
y(m,3)=1;
end
if (x(m)>16&&x(m)<32)||(x(m)>64&&x(m)<128)||(x(m)>256&&x(m)<512)||(x(m)>1024&&x(m)<2048)%在第二第四第六第八段内,段落码第三位为1
y(m,4)=1;
end
%符号位判断<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值