2013-03-24 86 views
3

我使用Android的AVRDUDEhttp://code.google.com/p/andavr/)。我可以编译C的代码。我可以跑Android无法使用AVRDUDE与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是Arduino的装置相连接OTG电缆。在连接之前,我跑

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编程。

回答

3

它说'权限被拒绝',你似乎没有使用root shell。 尝试'su',然后尝试失败的命令。如果你的手机没有植根,我认为它不可行。

我甚至不确定它是否能正常工作,因此请将结果发布!我的猜测是,它不会如果你的手机不充当USB主机(只有一些可以)

+0

谢谢,但是, 所以这里是我所做的: 我已经扎根了我的nexus7,它支持OTG。我可以成功控制使用OTG上的鼠标/键盘。我也可以用它来控制OTG上的我的arduino。我认为这意味着OTG正在100%正常工作。 此外,我植根于我的手机,并且我有root权限访问它。我还在其上安装了Ubuntu Touch,并且正在运行一些需要root用户成功的应用程序。 我也授予了终端模拟器的root权限。我不能这样做,这不被支持。 我找到了一种通过名为adbwireless的应用程序通过无线连接adb的方法。 – HansStam 2013-03-24 11:28:54

+0

继续: 我现在可以通过wifi控制nexus7 adb shell,同时将arduino插入nexus7的usbport。 在adb外壳上,你自动获得su访问权限,所以这应该肯定会给我su权限。 故事结束,它仍然不起作用,即使我有超能力。 我也试过给arduino chmod 777访问,但那也不管用。它只是不想被我的联系7控制。 – HansStam 2013-03-24 11:36:50

+0

虽然我不放弃。它应该是可能的 – HansStam 2013-03-24 11:37:27

-1

我不是专家。但是,你不需要通过电缆与Arduino进行通信吗?两者都是奴隶(所以当Android/Arduino插入PC时,PC控制它)。尝试USB Host Shield 2.0 For Arduino

同样,我可能是错的。我希望这有帮助。

+0

是的,我没有使用盾牌。我使用的是一款带有连接到arduino uno的OTG电缆的android平板电脑(nexus7)。 下一步:尝试没有任何电缆,但与蓝牙屏蔽。 – HansStam 2013-03-25 01:14:06

+1

这是我的博文,是关于我如何做到的。谢谢您的帮助!! http://www.hstam.com/blog/?p=29 – HansStam 2013-03-25 01:42:02

+0

不,因为使用Android OTG电缆,手机实际上将成为主机设备,而Arduino将成为奴隶。所以在这个设置中,不应该使用Arduino的USB屏蔽。 – 2017-12-09 05:21:43

相关问题