资源简介
《多采样率数字系统设计》一书中的Matlab程序的Gui,形象生动地帮助理解该书的原理。
代码片段和文件信息
function ab(speichernwgMpauswahlhandles);
% Abw鋜tstastung eines Tiefpa?Signals
%
% Inhalt:
% -------
% Abw鋜tstastung wenn eingegebene Grenzfrequenz
% kleiner als wg/M ansonsten Dezimation.
% Achtung: Das hei遲 nicht da?wir in Realit鋞
% je nach Signal wahlweise abw鋜tstasten oder
% dezimieren k鰊nen!!!
%
% Ziel:
% -----
% Zeigen der Auswirkung von Aliasing
%
% L鰏ung:
% -------
% Anti-Aliasing Filter => Dezimation
%
% Variablen:
% ----------
% p Phasenversatz
% M Dezimationsfaktor
% wg Grenzfrequenz des Tiefpass-Signals
%
% Funktionsaufruf: z. B. abwaertstastung(0.15*pi4)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Berechnung des bandbegrenzten Signals
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Der erste Aufruf mit zwei Parametern bewirkt die Initialisierung
% der graphischen Oberflaeche.
% Wird kein Parameter uebergeben so werden zusaetzlich wg und M gesetzt.
% Bei jedem weiteren Aufruf die Parameter nicht mehr setzen
if nargin<4
wg = 0.15*pi;
M = 4;
p = 0;
auswahl = 1;
elseif nargin<5
auswahl = 1;
end;
% Graphische Oberflaeche initialisieren
% und uebergebene Werte in GUI-Felder eintragen
if nargin<6
ab_gui;
handles = guihandles(ab_gui);
% Systembild plotten
axes(handles.system);
image(imread(‘ab_graph.png‘));
axis([0 900 0 700]);
axis off;
speichern = 0;
end;
set(handles.wg‘Value‘wg./pi);
set(handles.wgtext‘String‘[num2str(wg./pi)]);
set(handles.M‘Value‘M);
set(handles.Mtext‘String‘M);
set(handles.ptext‘String‘p);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Ueberpruefung auf Aliasing
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if (pi/M set(handles.text‘String‘‘WARNUNG: Aliasing‘);
end;
% Signal ist die Impulsantwort eines Tiefpasses
% mit der Grenzfrequenz wg und der Filterlaenge N
N=70; % Filterlaenge
% Entwurf mit Remez
Fre=[0 wg/pi-0.05 wg/pi 1]; % Frequenz [0 pi]->[0 1]
Mag=[1 1 0 0]; % Amplitude
x=remez(N-1FreMag); % Entwurf mit Remezverfahren
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Abtastung mit Dezimationsfaktor 4
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
x0=zeros(1N+p);
x0(p+1:M:length(x)) = x(p+1:M:length(x));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Abw鋜tstastung
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
y = x(p+1:M:length(x));
switch (auswahl)
case 1
% Plotten des Signals und dessen Spektrum
if speichern
figure(10);
subplot(211);
zeichnen(x[‘Signal x(n)‘]‘n‘‘‘‘Zeitbereich‘gca);
subplo
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 55286 2002-10-16 10:14 Multiratensysteme_MATLAB_14-07-2004\AAU.PNG
文件 7798 2002-07-11 18:05 Multiratensysteme_MATLAB_14-07-2004\ab.m
文件 15933 2003-04-02 11:05 Multiratensysteme_MATLAB_14-07-2004\ab_band.m
文件 62952 2003-03-19 11:26 Multiratensysteme_MATLAB_14-07-2004\ab_band_gui.fig
文件 12253 2003-04-02 10:46 Multiratensysteme_MATLAB_14-07-2004\ab_band_gui.m
文件 25255 2002-06-20 16:25 Multiratensysteme_MATLAB_14-07-2004\ab_graph.png
文件 49512 2002-07-11 17:52 Multiratensysteme_MATLAB_14-07-2004\ab_gui.fig
文件 7688 2002-07-11 18:15 Multiratensysteme_MATLAB_14-07-2004\ab_gui.m
文件 543 2002-06-24 22:38 Multiratensysteme_MATLAB_14-07-2004\ARROW.M
文件 17914 2003-02-11 15:16 Multiratensysteme_MATLAB_14-07-2004\ASYNAU.M
文件 112240 2004-07-14 10:43 Multiratensysteme_MATLAB_14-07-2004\asynau_gui.fig
文件 10988 2002-11-01 13:07 Multiratensysteme_MATLAB_14-07-2004\asynau_gui.m
文件 8950 2002-07-11 18:46 Multiratensysteme_MATLAB_14-07-2004\auf.m
文件 28686 2002-06-20 16:27 Multiratensysteme_MATLAB_14-07-2004\auf_graph.png
文件 57624 2002-05-11 14:22 Multiratensysteme_MATLAB_14-07-2004\auf_gui.fig
文件 5979 2002-07-11 18:46 Multiratensysteme_MATLAB_14-07-2004\auf_gui.m
文件 381 2003-10-07 15:05 Multiratensysteme_MATLAB_14-07-2004\ausblenden.m
文件 181 2002-08-15 16:52 Multiratensysteme_MATLAB_14-07-2004\ausblenden2.m
文件 180 2002-06-20 11:22 Multiratensysteme_MATLAB_14-07-2004\ausblenden_dezint.m
文件 6565 2002-11-06 10:35 Multiratensysteme_MATLAB_14-07-2004\AUSGABE.M
文件 296280 2004-07-14 11:01 Multiratensysteme_MATLAB_14-07-2004\DATEN.MAT
文件 12208 2002-06-03 18:26 Multiratensysteme_MATLAB_14-07-2004\dcs.m
文件 53545 2002-08-15 17:49 Multiratensysteme_MATLAB_14-07-2004\dcs_graph.png
文件 63944 2003-02-25 09:32 Multiratensysteme_MATLAB_14-07-2004\dcs_gui.fig
文件 7765 2002-06-03 18:45 Multiratensysteme_MATLAB_14-07-2004\dcs_gui.m
文件 1000 1998-04-29 14:49 Multiratensysteme_MATLAB_14-07-2004\delta.m
文件 1109 2003-09-24 11:59 Multiratensysteme_MATLAB_14-07-2004\delta_bp.m
文件 9086 2003-03-19 08:55 Multiratensysteme_MATLAB_14-07-2004\dezimation.m
文件 32175 2002-06-20 16:26 Multiratensysteme_MATLAB_14-07-2004\dezimation_graph.png
文件 57944 2002-05-11 14:40 Multiratensysteme_MATLAB_14-07-2004\dezimation_gui.fig
文件 5905 2002-05-11 14:42 Multiratensysteme_MATLAB_14-07-2004\dezimation_gui.m
............此处省略204个文件信息
评论
共有 条评论