matlab的幅度调制函数ammod


ammod:幅度调制

语法

y = ammod(x,Fc,Fs)
y = ammod(x,Fc,Fs,ini_phase)
y = ammod(x,Fc,Fs,ini_phase,carramp)

描述

y = ammod(x,Fc,Fs)
返回一个调幅(AM)信号y,
给定输入消息信号x,其中载波信号的频率为Fc。载波信号和x的采样频率为Fs。
调制信号初始相位为零,载波幅值为零,因此结果是抑制载波调制。

注意:Fs的值必须满足Fs≥2Fc。

y = ammod(x,Fc,Fs,ini_phase)指定调制信号y中的初始相位,以弧度为单位。
y = ammod(x,Fc,Fs,ini_phase,carramp)执行发射载波调制,而不是抑制载波调制,carramp是被调制信号的载波幅值。

例子

比较双边带和单边带调幅

%设置采样频率为100hz。创建一个100秒长的时间矢量。
fs = 100;
t = (0:1/fs:100)';
%设置载波频率为10hz。产生一个正弦信号。
fc = 10;
x = sin(2*pi*t);
%使用单边带和双边带调幅调制x。
ydouble = ammod(x,fc,fs);
ysingle = ssbmod(x,fc,fs);
%创建一个频谱分析仪对象来绘制两个信号的光谱。画出双边带信号的频谱。
sa = dsp.SpectrumAnalyzer('SampleRate',fs, ...
    'PlotAsTwoSidedSpectrum',false, ...
    'YLimits',[-60 40]);
step(sa,ydouble)
figure,plot(ydouble),hold on,plot(x);
%绘制单边带光谱。
step(sa,ysingle)
figure,plot(ysingle),hold on,plot(x);

在这里插入图片描述
在这里插入图片描述

输入参数

x -输入消息信号
scalar | vector | matrix | 3-D array
输入消息信号,指定为标量、向量、矩阵或三维数组。x的每个元素都必须是实数。
数据类型:single | double

Fc -载波信号频率
positive real scalar
载波信号频率,单位为赫兹(Hz),为一个正的实标量。
数据类型:single | double

Fs—采样频率
positive real scalar
载波信号和输入信息信号的采样频率,单位为赫兹(Hz),指定为一个正的实标量。为了避免混叠,Fs的值必须满足Fs > 2(Fc + BW),其中BW是x的带宽。
数据类型:single | double

ini_phase—初始相位
real scalar
被调制信号的初始相位(以弧度表示),用实标量表示。
数据类型:single | double

carramp—载波振幅
real scalar
被调制信号的载波幅值,用实标量表示。
数据类型:single | double

输出参数

调幅输出信号
scalar | vector | matrix | 3-D array
振幅调制信号,返回为标量、向量、矩阵或三维阵列。

  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值