From f932b3c4550a96d9d6f0c74b5bb4153b8b7998e3 Mon Sep 17 00:00:00 2001 From: yomguy Date: Fri, 23 Nov 2007 10:41:24 +0000 Subject: [PATCH] Export device, remove Daq and Curvefit toolbox dependencies git-svn-id: http://svn.parisson.org/svn/CNAQ/trunk@118 5fc3e0e6-29bc-4d03-b52b-c088cb822bde --- CNAQ.m | 41 +++++++++++++++++++++++------------------ tools/plot_mes.m | 4 ++-- 2 files changed, 25 insertions(+), 20 deletions(-) diff --git a/CNAQ.m b/CNAQ.m index 7d69eaf..a452f3f 100644 --- a/CNAQ.m +++ b/CNAQ.m @@ -123,6 +123,9 @@ root_dir = 'E:\CNAQ'; home_dir = uigetdir(root_dir, 'Choisissez votre dossier de travail'); set(handles.home_dir_box,'String',home_dir); +% Audio device number +device = 0; + % Get tools %cnaq_path = pwd; cnaq_path = root_dir; @@ -170,7 +173,7 @@ set(handles.sig_type,'String','Sinus|Chirp'); set(handles.voices_in,'String','1|1 2|1 2 3|1 2 3 4'); set(handles.voices_out,'String','1|1 2|1 2 3|1 2 3 4'); -buffer = 2048; +buffer = 4096; os_sep = '\'; % ============================================================== @@ -291,8 +294,8 @@ function get_home_dir_Callback(hObject, eventdata, handles) % MONITOR %============================================ -function in_on_off_Callback(hObject, eventdata, handles) - device = 0; +function in_on_off_Callback(hObject, eventdata, handles, device) + %device = 0; buffer = 4096; window = hanning(buffer); f_s = get_fs(handles); @@ -483,23 +486,25 @@ function gen_on_off_Callback(hObject, eventdata, handles) sig_out(:,i) = sig'; end - % Matlab way... - ao = analogoutput('winsound', 0); - addchannel(ao, voices_out); - set(ao, 'StandardSampleRates', 'Off'); - set(ao, 'SampleRate', f_s); - - if get(handles.gen_on_off,'Value') == 1 - putdata(ao, sig_out); - start(ao); - set(handles.gen_on_off,'Value',0); - end - - %delete(ao); + % Matlab way (needs Data Acquisition Toolbox) +% ao = analogoutput('winsound', 0); +% addchannel(ao, voices_out); +% set(ao, 'StandardSampleRates', 'Off'); +% set(ao, 'SampleRate', f_s); +% +% if get(handles.gen_on_off,'Value') == 1 +% putdata(ao, sig_out); +% start(ao); +% set(handles.gen_on_off,'Value',0); +% end +% %delete(ao); % PA way but can't work with monitor !... % pa_wavplay(sig_out',f_s,0,'asio'); + % Winsoud way... + sound(sig_out',f_s); + %============================================ % MESURE @@ -512,8 +517,8 @@ function mes_type_CreateFcn(hObject, eventdata, handles) set(hObject,'BackgroundColor','white'); end -function mes_on_Callback(hObject, eventdata, handles) - device = 0; +function mes_on_Callback(hObject, eventdata, handles, device) + %device = 0; nfft = 16384; f_min = str2double(get(handles.f_gen_min,'String')); f_max = str2double(get(handles.f_gen_max,'String')); diff --git a/tools/plot_mes.m b/tools/plot_mes.m index bd1d2f0..a71aff1 100644 --- a/tools/plot_mes.m +++ b/tools/plot_mes.m @@ -39,7 +39,7 @@ f_min_ind = f_min_list(length(f_min_list)); figure; subplot(2,1,1); spec_mes_log = 10*log10(abs(spec_mes)); -semilogx(f, smooth(spec_mes_log,7)); +semilogx(f, spec_mes_log); axis([f_min f_max min(spec_mes_log(f_min_ind:f_max_ind-1000))-6 max(spec_mes_log(f_min_ind:f_max_ind))+6]); xlabel('Fréquence (Hz)'); ylabel('Amplitude (dB)'); @@ -50,7 +50,7 @@ subplot(2,1,2); angle_exc = angle(spec_exc); angle_mes = angle(spec_mes); ang = unwrap(angle_mes - angle_exc) + 2*pi; -semilogx(f, smooth(ang,7)); +semilogx(f, ang); axis([f_min f_max min(ang(f_min_ind:f_max_ind)) max(ang(f_min_ind:f_max_ind))]); grid on; xlabel('Fréquence (Hz)'); -- 2.39.5