AVRDUDE for Android(http://code.google.com/p/andavr/ )を使用しています。Cコードをコンパイルできます。走れる
$ avr-gcc -Os -DF_CPU=16000000UL -mmcu=atmega328p -c -o led.o led.c
$ avr-gcc -mmcu=atmega328p led.o -o led
$ avr-objcopy -O ihex -R .eeprom led led.hex
すべて問題なく。それから私は実行しようとします:
avrdude -F -V -c arduino -p ATMEGA328P -P /dev/bus/usb/002/002 -b 115200 -C /data/data/jackpal.androidterm/local/etc/avrdude.conf -U flash:w:led.hex
結果は次のとおりです。
avrdude: ser_open(): can't open device "/dev/bus/usb/002/002"; Permission denied
loctl("TIOCMGET"): Invalid argument
avrdude done. Thank you.
私が実行したときの状況は似ています:
avrdude -F -V -c arduino -p ATMEGA328P -P /dev/bus/usb/002/001 -b 115200 -C /data/data/jackpal.androidterm/local/etc/avrdude.conf -U flash:w:led.hex
それがOTGケーブル/dev/bus/usb/002/002
で接続されたArduinoデバイスであることを確認できます。接続する前に、私は実行します
ls -l /dev/bus/usb/002/
そして私は得る:
total 0
USB経由でArduinoをタブレットに接続した後、次のコマンドを実行します。
ls -l /dev/bus/usb/002
そして私は得る
crw-rw---- 1 0 1018 180,128 Mar 24 07:53 001
crw-rw---- 1 0 1018 180,129 Mar 24 07:53 002
これは、Arduinoが接続されていることを明確に示しています。私が間違っていることを誰かが見ることができるかどうか知りたいです。
PS:Androidタブレットから直接Arduinoプログラミングを可能にするAndroidアプリケーションを作成しようとしています。