当我测试我的代码时,我暂时添加了Serial.print消息,以查看我的代码的作用。这非常繁琐,因为在Arduino世界中没有printf()这样的东西。另外,有时我忘记删除Serial.print(),我必须稍后在我的代码中搜索它们以删除它们。如果我将Serial.print()放入循环中,输出将滚动得如此之快,以至于我无法真正跟踪值的变化情况。然后我需要delay(),这是稍后要删除的另一段测试代码。 是否有任何库或工具可以使这项任务更容易?
答案 0 :(得分:1)
如果你有Visual Studio,你可以使用VisualMicro进行真正的调试,包括断点和值监控: http://www.visualmicro.com/page/Debugging-for-Arduino.aspx
它适用于Visual Studio的社区版(免费): http://www.visualstudio.com/products/visual-studio-community-vs
我已经使用了很多VisualMicro,它可以节省时间,因为你可以专注于调试而不是添加日志调用。
答案 1 :(得分:1)
您可以使用经过验证的条件编译方法,例如:
#ifdef DEBUGGING
Serial.print (something);
Serial.print (somethingElse);
delay (1000);
#endif
然后,编译设置了DEBUGGING
标志的测试代码,同时将其保留在生产代码中。
这样,您不需要从源代码中删除调试代码,编译器本身会自动删除它。