2016-12-07 17 views
0

私はサイコロをひっくり返して特定の番号の順番で起動するはずのlabviewプログラムを作ろうとしていますが、それが6になるとすべてのledが2回点滅するはずです。今は6に上陸すれば、一度しか点滅しません。Labview whileループが正しく動作していませんか?

偽のこのような場合、私は while loop

loop 1

をした相続人はwhileループ: false

はここで誰もが知っている希望の場合は、完全なプログラムがどのように見えるかです: full

答えて

3

ループ内のLEDは更新されていません。


あなたのコードは、あなたが6をロールバックする場合は、この処理を行います。

  1. whileループが
  2. できるだけ早く、3回を実行whileループは、最後の値(TRUEを)出て渡します。
  3. この "TRUE"値は "OR"ノードに入ります。
  4. "OR"ノードの出力がLEDに書き込まれます。

これは、の後、のwhileループが停止した後にのみLEDが更新されることを意味します。


LEDを複数回点滅させたい場合は、whileループ内でLEDを更新する必要があります。

Dataflowのコンセプトを理解し、コードに競合条件がないことを確認してください。 (これらの用語を理解していない場合は、コースを受講するか、LabVIEWの初心者向けの本を読むことをお勧めします)

+0

これを達成するためにはどうすればいいのか詳しく教えてください – Marc

+0

答えを読んだ後に試したことを詳しく説明できますか、現在の説明が不明ですか? – JKSH

+0

私はループ中に更新する方法については不明です、私はループの中にledsを置くはずですか? – Marc

0

上記のJKSHの回答に加えて、タイミングが必要です。

JKSHは指摘したように、ループ内のLEDを更新しませんでしたが、アップデートが遅れずにあっても、すばやく発生するため、目を見えなくなる可能性があります。

ループ内の更新を正しく取得する可能性があるので、これは言及していますが、表示が早すぎるため、わかりません。

関連する問題