资源简介

《多采样率数字系统设计》一书中的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个文件信息

评论

共有 条评论