【发布时间】:2014-01-19 22:22:57
【问题描述】:
我想知道Matlab中是否有定时器和中断功能。这些存在吗?
我想通过 Matlab 运行一个声音剪辑并将其与脉冲响应进行卷积。当我这样做时,我需要中断来在方法之间来回切换。我正在使用 Matlab 对 DSP 的算法进行原型设计。谢谢。
【问题讨论】:
-
有人能解释为什么我的票数如此之低吗?我现在知道Matlab中有一个定时器功能,但是中断呢?我可以在网上找到关于中断和 Matlab 的明确答案。谢谢。
-
我认为你的问题是完全有效的。但它并不特定于编程。你应该描述你想要达到的目标。你提到
you want to switch back and forth between methods。这是否意味着您希望使用第一种方法对音频片段的小样本进行卷积,然后使用第二种方法进行相同的处理?如果是这样,您可以不使用计时器和中断。或者你想并行化程序,一个核心使用一种方法,第二个核心使用另一种方法? -
嗨 Lokesh,最好我想并行化代码,因为这会使中断无关紧要。我知道它在 Matlab 中是可能的,但我不认为大多数数字信号处理器(如 EZ Kit Lite)是多线程或多核的。因此,假设我只能在 DSP 上的一个内核和一个线程上执行代码,我希望能够在 Matlab 中对其进行建模。我想在一种方法中实现 FFT 卷积,在另一种方法中实现标准卷积;因此,如果 FFT 方法正在执行,并且有新样本进入,则会发生中断,并在另一个方法中处理新样本。
-
好的。这听起来很合理。那么,你想在 MATLAB 中流水线化数据采集和数据处理的任务吗?您如何在 MATLAB 中获取音频样本?
-
嗨 Lokesh,很抱歉这么晚才回复。我有一个保存的音频文件,一个简单的 15 秒样本,我正在测试它。解释具体的处理方法有点困难,除了如果我在一种方法中并且有新样本进来,我想切换到另一种方法,处理这个新样本,然后从我离开的地方继续在另一种方法中关闭。这可能吗?这就引出了另一个问题:我可以在 Matlab 中逐样处理吗?谢谢。
标签: matlab timer signal-processing interrupt