评论
我相信系统应该在 |
你确定吗?当前状态用于生成实时报告,当我在这里进行快速测试时,它并没有变为空闲状态。
是的,您可以在 |
我可以在这里可靠地重现这种情况。 我对此感到非常惊讶,但通过查看代码,似乎警报区域有点在进行中。 你用什么步骤重现了它,但没有证实我的发现? 需要明确的是,报告行在整个情况下都包含 Alarm:1 条目,这是我正在做的额外测试发现的。也许我的代码有错误。我现在在另一台电脑上,但我会发布代码供您评论。 |
我没有计划更改警报处理,唯一让我烦恼的是我无法永久打开报告警报代码作为实时报告中状态的一部分,因为这可能会破坏某些发件人。
我在state_machine.c |
感谢您的背景。我今天会再次处理这个问题。听起来这一定是我的代码中的一个错误。我需要仔细检查我是如何获得状态的。 |
看起来这是我处理状态的错误。我相信它工作正常并且我已经更新了我的代码。抱歉,呃,误报。:) 关闭。 |
今晚我有了一个惊人的发现。
我正在编写警报发出时闪烁灯的代码,但它根本不起作用,或者它出现了。
如果你连接到机器,回家,然后有意触发一个限制传感器,我得到了正确的归位、空闲和限制事件的灯光序列——但随后是 IOSender UI 和?状态行都声称 Alarm:1 但我的代码没有触发。
我发现了这一点,因为一时兴起,我在我的轻型代码中将我的 STATE_ALARM 更改为 STATE_IDLE 并且惊讶地发现代码工作正常,机器状态是意想不到的惊喜。我在限制触发器上得到了一个短暂的 (onStateChanged) 命中,然后我得到了与 STATE_IDLE 相关联的闪烁事件。
我认为在清除警报条件之前设置 STATE_IDLE 标志不是预期的行为?