3

私がやろうとしているのは、「ArduinoでAndroid ADKを始める」という本から、ArduinoをAndroidの「hello world」プログラムにコンパイルすることだけです。

ここにコードがあります

#include <Max3421e.h>
#include <Usb.h>
#include <AndroidAccessory.h>

#define ARRAY_SIZE 12

AndroidAccessory acc("Manufacturer", "Model", "Description",
                     "Version", "URI", "Serial");

char hello[ARRAY_SIZE] = {'h','e','l','l','o',' ',
                          'w','o','r','l','d','!'};

void setup() {
  Serial.begin(115200);
  acc.powerOn();
}

void loop() {
  if (acc.isConnected()) {
    for(int x = 0; x < ARRAY_SIZE; x++) {
      Serial.print(hello[x]);
      delay(250);
    }
    Serial.println();
    delay(250);
  }
}

そして私のエラー

C:\Users\efossum\arduino-1.0.1\libraries\UsbHost/AndroidAccessory.h: In function 'void setup()':
C:\Users\efossum\arduino-1.0.1\libraries\UsbHost/AndroidAccessory.h:68: error: 'void AndroidAccessory::powerOn()' is private
sketch_aug23a:14: error: within this context

私は AndroidAccessory.h を調べましたが、それがプライベートであることは確かですが、これを機能させるには何を変更すればよいでしょうか? 関数を pulic にすることは答えではないと思います。

4

4 に答える 4

3

そうみたいです:

  acc.powerOn()

次のように置き換えることができます:

  acc.begin();
于 2012-09-08T15:50:15.013 に答える
0

Arduino0.22または0.23IDEを使用してみてください

于 2012-08-24T03:01:06.247 に答える
0

答えは、コンパイル中に間違ったボードが選択された可能性もあります。間違ったボードを選択すると、Arduino ソフトウェアはどのチップまたはピンを使用しているかを判断できません。

于 2012-11-22T14:43:22.993 に答える
0

やったよ!Mickaëlが言ったように、ヘッダーのread()関数の可視性を公開して代わりに使用したところ、コードは正常にコンパイルされました。<AndroidAccessory.h>begin()powerOn()

于 2013-01-13T14:56:56.293 に答える