开源改变世界!!

有希望的 RTOS 实验 #14

推推 grbl 2年前 (2023-01-29) 165次浏览
关闭
bdring 打开了这个问题 2018 年 8 月 3 日 · 2 条评论
关闭

有希望的 RTOS 实验#14

bdring 打开了这个问题 2018 年 8 月 3 日 · 2 条评论

注释

有希望的 RTOS 实验 #14
所有者

我决定重新审视如何更好地使用 RTOS 生成步骤。

由于当前形式的步骤生成看起来非常稳定,我决定尝试将部分代码转移到 RTOS 任务中。它仍然使用中断来计时,但实际上中断中的所有代码现在都在一个任务中。

优先级 (configMAX_PRIORITIES – 1) 任务被信号量阻塞,中断解除阻塞。任务计算下一次中断发生的时间。现在几乎所有的东西看起来基本上都可以工作,只是听起来有点不同。我没有描述整个工作或比较逻辑分析仪上的步骤。不过,我已经完成了一些完整的工作。

我知道的一件事是归巢。触摸开关时发生未处理的异常。我还没有调查过。我还没有尝试使用 RMT 功能。

我不确定为什么我以前遇到过麻烦。我认为我一次尝试了太多新事物,并且没有从稳定的代码库开始。

有希望的 RTOS 实验 #14 bdring 添加了 讨论 标签 2018 年 8 月 3 日
有希望的 RTOS 实验 #14
所有者作者

我已经添加了 RMT,它可以正常工作。我在长期工作期间和归巢期间经常遇到随机停工。我需要检查同时运行主 Grbl 任务和步进器任务是否会导致竞争条件。

有希望的 RTOS 实验 #14
所有者作者

我通过将计算代码移回中断来解决停止和归位问题。中断解除任务以设置方向和步骤(通过 RMT),然后完成计算。

这可能会防止任何竞争问题,因为只有中断在运行,例如 AVR Grbl。