Android与Arduino的USB通信实验(1)

Android与Arduino的USB通讯实验(1)前端时间Arduino的wifi模块烧了,不能用wifi控制小车了。手上有一个带OTG

Android与Arduino的USB通讯实验(1)

前端时间Arduino的wifi模块烧了,不能用wifi控制小车了。手上有一个带OTG功能的android手机,想改用通过Android USB和Arduino通讯来控制小车,这样做的好处是Android本身带有wifi,可以通过无线控制,手机上有丰富的传感器(摄像头、加速度、距离等)也可以借用一下,处理器能力更强小车更加智能了。于是开始做技术预研,计划如下:

1、android 获取Arduino发送数据

2、Android向Arduino发送数据

对于第1点arduino向Android发送数据,arduino代码如下

void setup(){Serial.begin(9600);}void loop(){  Serial.print("Hi Usb Host");  Serial.println(c++);  delay(1000);}

?上面的代码设定波特率9600,试了其他几个是乱码。

Android代码如下:

while (true) {message = myHandler.obtainMessage();message.obj = "\r\n开始传输数据。。。。。" + (c++);myHandler.sendMessage(message);if (inEndpoint != null) {int len = connection.bulkTransfer(inEndpoint, bytes,bytes.length, TIMEOUT);String.valueOf(len));message = myHandler.obtainMessage();message.obj = "\r\n接收数据长度" + String.valueOf(len);myHandler.sendMessage(message);if (len > 0) {String str = new String(bytes, 0, len);message = myHandler.obtainMessage();message.obj = "\r\n数据内容:" + str;myHandler.sendMessage(message);}}

?结果是可以收到数据,问题是数据不会一次全部收到,有时会丢数据。

?

?