我正在使用 AVRDUDE 来进行 Android 编程 (http://code.google.com/p/andavr/)。我可以编译 C 代码并运行。
结果是:
这明确地告诉我Arduino已连接。我希望知道是否有人能看出我做错了什么。
PS:我正在尝试创建一个Android应用程序,允许直接从Android平板电脑进行Arduino编程。
$ 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
我可以确认/dev/bus/usb/002/002
是通过OTG电缆连接的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应用程序,允许直接从Android平板电脑进行Arduino编程。