博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
通信原理实践(三)——FM调制
阅读量:6239 次
发布时间:2019-06-22

本文共 1748 字,大约阅读时间需要 5 分钟。

一、FM调制

1、代码如下:

clc,clear;fm = 500; % 调制信号频率(Hz)Am = 0.5; % 调制信号幅度fc = 5e3; % 载波频率(Hz)Ac = 1; % 载波幅度mf = 5; % 调频指数%%%firstlykf = mf * 2 * pi * fm / Amdiatf = kf * AmB = 2 * (mf + 1) * fm%%%secondlyfs = 64e3; % 采样率N = 3000; % 样点总数t = (0:N-1)'/fs; % 时间t%绘制时域波形m_t = Am*sin(2*pi*fm*t); % 调制信号phi_t = kf*cumsum(m_t)/fs; % 相位积分s_t = cos(2*pi*fc*t + phi_t); % 已调信号\figure(1)subplot(1,3,1)plot(t, s_t , 'b'); % 绘波形xlabel('time');ylabel('amplitude');title('时域波形');%绘制功率谱L = length(s_t);               % 取得序列长度u = fftshift(fft(s_t ));       % 离散傅里叶变换,求频谱u_pow = pow2db(abs(u).^2);     % 幅度转为dBw = (0:L-1)'*fs/L - 1/2*fs;    % 横坐标-频率subplot(1,3,2);plot(w, u_pow);grid on;xlabel('frequency(Hz)');ylabel('magnitude(dB)');title('功率谱');%%%fortly[lpf_b,lpf_a] = butter(3, (fc/5)/(fs/2)); % 设计低通滤波器t = (0:N-1)'/fs; % 时间tr_t = s_t;subplot(1,3,3)r_d_t = [0;diff(r_t)]; % 求微分r_e_t = abs(r_d_t); % 包络检波demod_t = filter(lpf_b, lpf_a, r_e_t); % 滤波plot(t, demod_t , 'b'); % 绘图title('解调波形');%%%thirdlyfs_J=100e3;t=(0:N-1)';N_J=3000000;t_J=(0:N_J-1)'; sm=Am*cos(2*pi*fm/fs*t);sfm_J=Ac*cos(2*pi*fc/fs_J*t_J+mf*sin(2*pi*fm/fs_J*t_J));Sfm=fft(sfm_J);figure;plot(abs(Sfm)); i=0:9J=besselj(i,mf);J_comp=abs(J/J(1))

 

2、结果分析

 

在进行功率谱分析的时候,可以将采样点增大,而绘图的采样点不变,这样子得到的功率谱会更加离散,便于和贝塞尔函数进行比较。

 

二、L+R音频调制

1、流程设计

2、代码如下

clear all;clc;%载入信号load('fm_cap.mat');fm_cap = resample(fm_cap,1,4);  %降低采样率fs = 500e3;                % 采样率N = length(fm_cap);        % 样点数t = (0:N-1)'/fs;           % 时间tr_d_t = [0;diff(fm_cap)];  % 求微分r_e_t = abs(hilbert(r_d_t));r_e_t = r_e_t - sum(r_e_t)/N;plot(t, r_e_t , 'b');      % 绘图[lpf_b,lpf_a] = butter(5, 10e3/(fs/2)); % 设计低通滤波器demod_t = filter(lpf_b, lpf_a, r_e_t); % 滤波demod_t = resample(demod_t,16,125);demod_t = demod_t ./ max(demod_t);sound(demod_t,64e3);

转载地址:http://rfdia.baihongyu.com/

你可能感兴趣的文章
SEO基础知识8大精华文章之第一篇(连载)
查看>>
面向sql编程
查看>>
对前面的自定义的toast制作拖拽效果,以及双击居中效果
查看>>
如何规划构建一套大型的Citrix桌面虚拟化架构 - 后记
查看>>
animationFromTop
查看>>
SEM如何做数据分析?
查看>>
语音转文字如何在线转换的?
查看>>
PXE批量实现自动化安装系统
查看>>
tomcat内存溢出的解决方法(java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError:)...
查看>>
为域用户创建漫游用户配置文件
查看>>
sql server 第二讲
查看>>
什么是壳 - 脱壳篇01
查看>>
数据库基础
查看>>
python里面 循环明细对比 相同人员明细,生成同一订单里面
查看>>
linux top 命令的一些解释
查看>>
前端之HTML内容
查看>>
关于Datagridview控件用法的一些总结
查看>>
Mac 常用设置
查看>>
linux常用命令(22)gzip命令
查看>>
找出一个字符串中第一个只出现一次的字符
查看>>