【问题标题】:Timers and Interrupts for MatlabMatlab 的定时器和中断
【发布时间】: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


【解决方案1】:

一般来说,MATLAB 无法处理中断和定时器。有一些使用Data Acquisition Toolbox 的方法来使用中断,如here 所示。

对于硬盘中的音频样本,您将无法使用中断。 MATLAB 不允许您流水线化任务。 MATLAB 允许不允许用户使用多线程,因为可能会发生不好的事情。相反,MATLAB 中的一些操作是多线程的,您可以在程序中使用。也就是说,您可以使用方法1完成处理,获取数据,然后切换到使用方法2进行处理。

在 MATLAB 中提供逐个样本数据处理功能。但是对于音频样本,最好使用window

【讨论】:

    猜你喜欢
    • 2017-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-22
    • 1970-01-01
    • 1970-01-01
    • 2018-01-23
    • 1970-01-01
    相关资源
    最近更新 更多