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