【发布时间】:2013-02-27 15:23:05
【问题描述】:
如何在任何具有USB或外部USB驱动IC的微控制器(8051内核...例如AT89C51)中实现Android开放附件代码,并使android设备与之通信。请帮忙!
【问题讨论】:
如何在任何具有USB或外部USB驱动IC的微控制器(8051内核...例如AT89C51)中实现Android开放附件代码,并使android设备与之通信。请帮忙!
【问题讨论】:
首先,您需要在 MC 上工作的 USB 主机驱动程序才能通过 USB 端点发送和接收数据。 之后,您应该使用 EP0(标准控制 EP)发送必要的命令序列以将 android 设备切换到附件模式。之后,您应该再次读取设备描述符并检查 VID 和 PID 值。他们应该表明您的 android 设备现在处于附件模式。 之后,您的设备将具有一个配置,其中包含两个 BULK EP,您可以使用它们来传输数据。 如果您的 MC 没有 USB 主机控制器驱动程序,您可以在 Win 或 Linux 平台下使用 libusb 执行相同操作。
【讨论】:
从documentation 开始,ADK 专为 Arduino 平台而设计。然而,开放附件协议是documented,所以理论上可以在任何合适的目标上实现。
但请注意,该协议要求 附件 充当 USB 主机 - 因此 USB 控制器需要具有主机功能,并且需要 USB 主机堆栈。另一方面,作为主机,您不需要分配给USB-IF 的供应商ID。
【讨论】: