我正在编写一个需要通过串行连接发送和接收数据的 iPhone 应用程序。我一直在研究 Apple 的EADemo
发现:EAAccessory 参考
问题是我发现这个例子太复杂了,无法接受。是否有一个更简单的例子可用于如何通过串行连接向连接的附件发送和接收数据?
我正在寻找类似向附件发送四个整数值,然后使用const char
缓冲区将它们发送回 iPhone 的东西。
我正在编写一个需要通过串行连接发送和接收数据的 iPhone 应用程序。我一直在研究 Apple 的EADemo
发现:EAAccessory 参考
问题是我发现这个例子太复杂了,无法接受。是否有一个更简单的例子可用于如何通过串行连接向连接的附件发送和接收数据?
我正在寻找类似向附件发送四个整数值,然后使用const char
缓冲区将它们发送回 iPhone 的东西。
在亚马逊上要花 5 美元,但例子很简单:EAAccessory 电子书
如果你使用 MFi Programming,我认为这很简单。首先,您必须设置连接,在此步骤中您需要知道外部附件的协议字符串。使用此协议字符串打开会话。打开会话时使用代码:
_session = [[EASession alloc] initWithAccessory:accessory forProtocol:_iAPProtocolString];
if (_session)
{
[[_session inputStream] setDelegate:self];
[[_session inputStream] scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[[_session inputStream] open];
[[_session outputStream] setDelegate:self];
[[_session outputStream] scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[[_session outputStream] open];
}
然后,您可以像这样将数据写入外部附件:
uint8_t buff[4];
buff[0] = 0xE0;
buff[1] = 0x10;
buff[2] = 0x00;
buff[3] = 0x1A;
bytesWritten = [[_session outputStream] write:[_writeData bytes] maxLength:[_writeData length]];