1

私はDuemilanoveADKを持っていて、これに従いました。いくつかの SDK の更新を除いて、正確に従いました。

問題: オンボード LED が点滅せず、常にオンになっています。

問題:

  • バイト配列が電話から ADK に正常に送信され、arduino ボードのシリアル ポートを監視することで確認されました
  • 高信号と低信号は arduino コードで適切に処理されています (同じ検証)。
  • ADK を使用しない点滅チュートリアルでは、オンボード LED が適切に点滅します。

それで、何が悪いのですか?ADK ボードがオンボード LED に常に HIGH 信号を送信していて、テストに「外部」LED を使用する必要がある可能性はありますか? 私が見たチュートリアルの多くはこれを行っているので、それが理由でしょうか?

4

3 に答える 3

1

オンボードの Arduino LED は最初は点灯しています。オフになったことはないようです。

リンクされた手順Android デバイスからデータを受信する方法セクションの下にあるloop()関数の最初の行は次のとおりです。

byte msg[0];

AndroidAccessory.read()次に、値の呼び出しでデータを受信するために、sizeof(msg)読み取るバイト数を決定するために使用されます。

ただし、msgは 0 バイト長に定義されているため、バイトは読み取らlenれず、ゼロになり、LED は更新されません。

代わりに、行を次のように変更してみてください。

byte msg[1];
于 2012-04-19T16:10:39.610 に答える
1

お使いのシールドは使っていませんが、通信にSPIを使っているようです。SPI は、シリアル クロック信号 (SCK) にピン 13 を使用します。これを考えると、SCK信号がLEDを制御しようとしているのに干渉している可能性があると思います.

LED をピン 8 などの別のデジタル ピンに配線し、ピン 8 を使用するように Arduino スケッチを更新することをお勧めします。これにより、競合の可能性がなくなります。

于 2012-05-30T02:26:46.693 に答える