首页
关于
Search
1
欢迎使用 Typecho
122 阅读
2
八面体| u | + | v | + | w | ≤ 1 的体积计算
119 阅读
3
颉斌斌老师25考研英语全程班长难句1总结(1-2句)
113 阅读
4
高等数学公式速记
111 阅读
5
颉斌斌老师25考研英语全程班长难句理论篇总结
110 阅读
默认分类
MCU
STM32
C51
MATLAB
电赛
嵌入式Linux
考研
数学
英语
登录
Search
逢迎诗酒徒
累计撰写
12
篇文章
累计收到
18
条评论
首页
栏目
默认分类
MCU
STM32
C51
MATLAB
电赛
嵌入式Linux
考研
数学
英语
页面
关于
搜索到
3
篇与
的结果
2024-06-28
【MATLAB】常用数字滤波器函数调用
1.巴特沃斯滤波器滤波巴特沃斯滤波器就是滤波器的一种,也被称作最大平坦滤波器,其主要特点是通频带内的频率响应曲线最大限度平坦,没有纹波,而在阻频带则逐渐下降为零。function [outdata] =filt_iir_butterfilter(indata,Fs,pass1,pass2,stop1,stop2,N ) %% 函数功能:巴特沃斯滤波器滤波1 % 输入参数: % indata--输入信号 % Fs--采样频率 % pass1--通带上限 % pass2--通带下限 % stop1--阻带下限% stop2--阻带上限 % N--滤波器阶数 % 输出参数: % outdata---滤波后的时域信号 Wp = [pass1, pass2] / (Fs/2);%通带 Ws = [stop1,stop2] / (Fs/2);%阻带 Rp = 3;%通带纹波最多3 dB Rs = 40;%阻带衰减至少40 dB [n,Wn] = buttord(Wp,Ws,Rp,Rs); [b,a] = butter(N/2,Wn,'bandpass'); % figure; % freqz(b,a); outdata = filtfilt(b,a,indata); end2.切比雪夫滤波器滤波1)切比雪夫滤波器是在通带或阻带上频率响应幅度等波纹波动(通带平坦、阻带等波纹或是阻带平坦、通带等波纹)的滤波器,振幅特性在通带内是等波纹。2)切比雪夫滤波器在过渡带比巴特沃斯滤波器的衰减快,但频率响应的幅频特性不如后者平坦。3)切比雪夫滤波器和理想滤波器的频率响应曲线之间的误差最小,但是在通频带内存在幅度波动。4)在通带(或称“通频带”)上频率响应幅度等波纹波动的滤波器称为“I型切比雪夫滤波器”,在阻带(或称“阻频带”)上频率响应幅度等波纹波动的滤波器称为“II型切比雪夫滤波器”function [outdata] =filt_iir_chebyfilter(indata,Fs,pass1,pass2,stop1,stop2,N ) %% 函数功能:切比雪夫滤波器滤波 % 输入参数: % indata--输入信号 % Fs--采样频率 % pass1--通带上限 % pass2--通带下限 % stop1--阻带下限% stop2--阻带上限 % N--滤波器阶数 % 输出参数: % outdata---滤波后的时域信号 Wp = [pass1, pass2] / (Fs/2);%通带 Ws = [stop1 stop2] / (Fs/2);%阻带 Rp = 3;%通带纹波最多3 dB Rs = 40;%阻带衰减至少40 dB [n, Wn]=cheb1ord(Wp, Ws, Rp, Rs);%对于带通和带阻滤波器,n为滤波器阶数的一半。 [b, a] = cheby1(N/2,Rp, Wn,'bandpass'); % figure % freqz(b,a); outdata = filtfilt(b, a, indata); end3.椭圆滤波器滤波通带和阻带等波纹的一种滤波器。 椭圆滤波器相比其他类型的滤波器,在阶数相同的条件下有着最小的通带和阻带波动。 它在通带和阻带的波动相同,这一点区别于在通带和阻带都平坦的巴特沃斯滤波器,以及通带平坦、阻带等波纹或是阻带平坦、通带等波纹的切比雪夫滤波器。%% 函数功能:椭圆滤波器滤波 % 输入参数: % indata--输入信号 % Fs--采样频率 % pass1--通带上限 % pass2--通带下限 % stop1--阻带下限% stop2--阻带上限 % N--滤波器阶数 % 输出参数: % outdata---滤波后的时域信号 Wp = [pass1, pass2] / (Fs/2);%通带 Ws = [stop1,stop2] / (Fs/2);%阻带 Rp = 3;%通带纹波最多3 dB Rs = 40;%阻带衰减至少40 dB [n, Wn]=ellipord(Wp, Ws, Rp, Rs); [b, a]=ellip(N/2,Rp,Rs,Wn,'bandpass'); % figure % freqz(b,a); outdata = filtfilt(b, a, indata); end
2024年06月28日
92 阅读
0 评论
0 点赞
2024-06-28
【MATLAB】生成FSK信号(随堂练习)
简单生成一个FSK信号clc clear all close all %绘制2FSK信号 % 设定参数 fs = 10000; % 采样频率 Tb = 0.01; % 每比特持续时间 fc0 = 500; % 低频 fc1 = 1500; % 高频 nBits = 10; % 二进制数据比特数 % 生成随机二进制数据 % 产生十个随机数 a=rand(1,nBits) %根据随机数产生二进制信号 data=round(a) figure(1) subplot(2,1,1); stairs(data); axis([1 10 -1.5 1.5]); title('基带信号'); grid on; % 调制2FSK信号 t = 0:1/fs:10*Tb - 1/fs; % 总时间 for i = 1:10 % 在每比特时间内,合成波形 t_bit = (i-1)*Tb : 1/fs : i*Tb - 1/fs; d=(i-1)*length(t_bit)+1:i*length(t_bit); if data(i) == 0 fsk_signal(d) = cos(2*pi*fc0*t_bit); else fsk_signal(d) = cos(2*pi*fc1*t_bit); end end subplot(2,1,2); plot(t, fsk_signal); title('2FSK信号'); xlabel('t'); ylabel('振幅');
2024年06月28日
73 阅读
0 评论
0 点赞
2024-06-25
【MATLAB】绘制图像并且标注交点
使用solve函数,解出方程的交点,使用plot函数标记,也可使用text标注t = 0 : pi/100 : pi; x1 = sin(3*t).*cos(t); y1 = sin(3*t).*sin(t); x2 = cos(t); y2 = 2*x2-0.5; plot(x1, y1, x2, y2); xlabel('x'); ylabel('y'); grid on; title('6'); hold on; syms t x y eqns = [x == sin(3*t)*cos(t), y == sin(3*t)*sin(t), y == 2*x - 0.5]; sol = solve(eqns, [t x y]); t_sol = double(sol.t); x_sol = double(sol.x); y_sol = double(sol.y); plot(x_sol, y_sol, 'r*'); hold off;
2024年06月25日
87 阅读
0 评论
0 点赞