2012-05-30 131 views
1

我无法理解如何沟通我的android应用程序通过串行连接与自定义板通信。 Android软件支持USB主机模式。Android平板电脑到串行通信

我的Android 3.1+平板电脑作为USB主机< -----字节的数据包----->定制电路板在9600波特率

这就是我理解有关设置我的应用程序:

  1. 使用USB管理器我找到我的USB设备(自定义板)
  2. 找到我的USB设备后,我设置了一个USBInterface进行通信。
  3. 使用USBInterface我需要找到USBEndpoint(可以告诉我那是什么?)
  4. 我现在可以使用USBDeviceConnection发送和接收信息。

任何帮助理解过程都有帮助。谢谢

回答

0

将端点视为具有已定义行为的虚拟管道,类似于套接字。

USB CDC设备端点由控制端点,批量IN,批量OUT和“中断”端点组成。控制端点是双向的,用于配置连接。一旦连接配置完成,BULK IN就是平板电脑接收数据的位置(认为是RX),BULK OUT将是平板电脑发送数据的位置(认为TX)。中断端点是IN-ONLY,并将通知平板电脑发生的任何状态变化。

端点位置和功能由设备在其USB接口描述符中指定。 Host协议栈将检索该描述符并使其可供应用层使用。

您将使用控制端点配置项目,如波特率,奇偶校验,停止位等

+0

另一个问题。只有当我们找到设备时才需要生成一次端点?或者他们需要不断为每次发送和接收生成。 (对不起,你的文章对我来说有点混乱) – Dogz1

+0

在编辑中增加了一点。基于其他USB堆栈的经验,我希望一旦你声明一个接口(所有端点)他们的你的直到释放接口或连接终止。 – skitheo

+0

好的非常感谢 – Dogz1

相关问题