我尝试使用 StarterWare 在 Beaglebone Black 上进行一些裸机编程。与 Black 一起运行的所有修改都已完成,我正在运行运行良好的 DMTimer 示例。
在下一步中,我改变了这个例子,ISR 只是切换一个 GPIO(它应该只需要几十个时钟周期)。我将示例的计时器和计时器重新加载计数更改为 0xFFFFFF0F,它等于 10 微秒周期 - 所以我的 ISR 应该每 10 微秒调用一次。
令人惊讶的是,这似乎是极限,当我使用更大的计时器值时,这应该会导致更频繁地调用 ISR,它仍然停留在这 10 微秒,即使使用 DMTimer 示例也不可能达到 5 微秒。由于已经使用了定时器时钟源 CLK_M_OSC,所以这应该没问题。
那么......知道如何更快地调用 ISR 吗?