13

Arduino が特定の関数を実行する速度を決定する必要があります。

それを行うのに最適な時期はいつですか?これまでのところ、Stopwatch クラスで何かを見つけましたが、それを行うためのネイティブ メソッドがあるかどうか疑問に思っています。

4

2 に答える 2

21

簡単な方法は、Arduino ライブラリのmillis()or関数を使用することです。micros()を使用すると、よりきめ細かい結果が得られmicros()ます。

例えば:

unsigned long start = micros();
// Call to your function
myFunction();
// Compute the time it took
unsigned long end = micros();
unsigned long delta = end - start;
Serial.println(delta);

のドキュメントをよく読んでくださいmicros(): 時間分解能に関する情報があります。

于 2012-04-26T11:39:20.480 に答える
11

最も邪魔にならない方法は、関数呼び出しの前にポートピンをハイに設定し、後でローに設定することです。ポートピンにオシロスコープを取り付けて、ハイタイムを測定します。

これにより、立ち上がりエッジでトリガーし、立ち下がりエッジでのジッターを監視することで、実行時間の変動性を定性的に把握することができます。

于 2012-04-26T15:14:35.023 に答える