2014-01-19 96 views
-2

我想知道在Matlab中是否有定時器和中斷函數可用。這些是否存在?定時器和中斷Matlab for

我想通過Matlab運行一個聲音片段並用脈衝響應進行卷積。當我這樣做時,我需要中斷在方法之間來回切換。我正在使用Matlab來爲DSP製作一個算法的原型。謝謝。

+0

有人可以解釋我爲什麼被投票如此之多嗎?我現在知道在Matlab中有一個定時器功能,但是中斷呢?對於我可以在網上找到的中斷和Matlab沒有明確的答案。謝謝。 –

+0

我認爲你的問題是完全有效的。但它不是特定於編程。你應該描述你想達到的目標。你提到「你想在方法之間來回切換」。這是否意味着您要使用第一種方法將音頻剪輯的小樣本進行卷積,然後使用第二種方法進行相同處理?如果是這樣,你可以不用定時器和中斷。或者你想並行化程序,其中一個核心使用一種方法,而另一個核心使用另一種方法? –

+0

嗨Lokesh,最好我想並行化代碼,因爲這會使中斷無關緊要。我知道它可能在Matlab中,但我不認爲大多數數字信號處理器(如EZ Kit Lite)是多線程或多核。所以假設我只能在一個內核和一個DSP上的一個線程上執行代碼,我希望能夠在Matlab中進行建模。我想在一種方法中實現FFT卷積,而在另一種方法中實現標準卷積;由此如果FFT方法正在執行並且新的樣本進入,則發生中斷並且以另一種方法處理新樣本。 –

回答

0

一般來說,MATLAB不能處理中斷和定時器。有一些使用Data Acquisition Toolbox的中斷使用方法,如here

對於硬盤驅動器中的音頻採樣,您將無法使用中斷。 MATLAB不允許你管理這些任務。 MATLAB允許用戶不允許多線程,因爲不好的事情可能發生。相反,MATLAB中的一些操作是多線程的,你可以在你的程序中使用。也就是說,您可以使用方法1完成處理,獲取數據,然後切換到方法2處理。

通過樣本數據處理的樣本可在MATLAB中獲得。但對於音頻樣本,最好使用window