6

我试图了解 Android Open Accessory API 如何与 Arduino ADK 板配合使用,我已经能够发送和接收信息,但我只想知道一切是如何工作的。我得到了这个功能描述:

int AndroidAccessory::read(void *buff, int len, unsigned int nakLimit) {
  return usb.newInTransfer(1, in, len, (char *)buff, nakLimit); 
}

通过一些谷歌搜索,我认为 NAK 是在握手期间出现问题时发送的一些代码,那么 NAK 是否限制了一个能够接收的通信错误的数量?

4

1 回答 1

1

NAK 是没有通信错误。它只是说明设备尚未准备好发送回复或此时没有数据要发送。据我了解,此函数中的 NAK 限制只会确保该函数有一个定义的结束。在全速 USB 的情况下,每 1ms 将生成一个 NAK。有关 NAK 的更多信息,请尝试以下操作:http ://www.beyondlogic.org/usbnutshell/usb3.shtml#USBPacketTypes

于 2012-01-29T21:41:33.897 回答