Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
arduino:在我的7段电视上播放一些东西,同时在压电蜂鸣器上播放一首曲子_Arduino - Fatal编程技术网

arduino:在我的7段电视上播放一些东西,同时在压电蜂鸣器上播放一首曲子

arduino:在我的7段电视上播放一些东西,同时在压电蜂鸣器上播放一首曲子,arduino,Arduino,我正在做一个项目,当你按下某个按钮时,需要发生两件事: 短文本需要在我的4位7段上流动 一首简单的歌曲需要用压电蜂鸣器播放 这两种方法都能很好地工作,但问题是我不能同时运行它们,所以它将首先执行文本,然后执行曲调。这是我的代码: if (digitalRead(knopTekst) == LOW) { song(); text(); } 当文本在数字上运行时,歌曲需要播放,但我找不到如何播放。将if更改为while,并编写函数song和text,以便在下次通话中做一件事并

我正在做一个项目,当你按下某个按钮时,需要发生两件事:

  • 短文本需要在我的4位7段上流动
  • 一首简单的歌曲需要用压电蜂鸣器播放
  • 这两种方法都能很好地工作,但问题是我不能同时运行它们,所以它将首先执行文本,然后执行曲调。这是我的代码:

    if (digitalRead(knopTekst) == LOW) {
        song();
        text();
      } 
    

    当文本在数字上运行时,歌曲需要播放,但我找不到如何播放。

    if
    更改为
    while
    ,并编写函数
    song
    text
    ,以便在下次通话中做一件事并返回并做下一件事,正如Juraj所指出的,您需要“时间共享”在歌曲播放任务和文本显示(本例中为7段刷新)任务之间。我假设您正在使用一个库来显示,例如SevSeg。有一种方法必须定期调用(至少每隔几毫秒调用一次),显示器才能工作。您的歌曲播放必须在每次通话中以非常小的片段完成,每个片段不得超过几毫秒。