微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Arduino中断后回到loop()?

如何解决在Arduino中断后回到loop()?

我们有很多依赖于while循环的函数。在其中一个函数中启用中断后,我们希望返回 void loop() 的开头。

任何帮助将不胜感激。

谢谢。

解决方法

您想从循环函数的中间直接回到循环函数的开头吗?

如果我理解正确的话,那不是一个好的设计,你当然可以添加一些标志变量和语句来控制程序的流程。

一种很好且可扩展的方式是使用这种控制结构:

void loop()
{
  outcome = initStuff();
  outcome = someRandomStuff();
  if(outcome == false){return;}
  outcome = finishingStuff();
}

或者我最喜欢的方式,写得很模块化。这样您就不必重新启动或传送回函数的开头。显然,我不可能说如何,因为我不知道您在编程什么,但是请确保您编写代码,以便我的示例中的 initStuff() 确实包含初始化所有内容所需的所有功能。因此,您可以简单地调用该函数,而无需开始整个循环,以防万一您有一些需要的函数要通过那里。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。