%%%%%%%%使用modmap函数ASK方式映射数字信号
%在[-1 1]区间分为M份,每份分别代表x的一个值
xask=randint(10,1,8);%产生一个10个元素的列向量,每个元素都是0-7的随机整数
%以ASK方式映射x,1s内有10个信号,每个信号进行10次抽样,即抽样速率为100Hz
yask=modmap(xask,10,100,'ask');
t=(1:length(yask))/length(yask);
subplot(4,1,1)
plot(t,yask)
%%%%%%%%使用modmap函数FSK方式映射数字信号
xfsk=randint(5,3,4);%产生3个长度为5的列向量,每个元素都是0-3的随机整数
%以FSK方式映射x,波特率为10Hz,采用速率为30Hz(每个信号抽样3次),
%每个y2的值是与之相邻的比其小的值的tone倍,这里tone=2(专属于FSK)
%'fsk'后面的第一个参数为M元数,第二个参数为tone
yfsk=modmap(xfsk,10,30,'fsk',4,2);
t=(1:length(yfsk))/length(yfsk);
subplot(4,1,2)
plot(t,yfsk)
%%%%%%%%%%%%%%%%使用modmap函数MSK方式映射数字信号
xmsk=randint(3,2,2);%生成的矩阵里的元素,必须是0或1
ymsk=modmap(xmsk,10,30,'msk');
t=(1:length(ymsk))/length(ymsk);
subplot(4,1,3)
plot(t,ymsk)
%%%%%%%%使用modmap函数PSK方式映射数字信号
xpsk=randint(3,2,6);
%psk方式是将360度相位分为M个,每个代表一个信号
ypsk=modmap(xpsk,10,30,'psk',6);
t=(1:length(ypsk))/length(ypsk);
subplot(4,1,4)
plot(ypsk)
评论0