1

我目前正在尝试让 iPad 4 与Arbotix RoboController(具有很多引脚的类似 Arduino 的控制器)对话。我正在使用带有连接到 RedPark C2-TTL电缆的Lightning 至 30 针适配器的 iPad 4。电缆在下面被正确识别

Settings -> General -> About -> Serial TTL Cable

.

但是我没有按照 RedPark SDK 的串行电缆 SDK / 用户指南走运。Arbotix 设置为每 300 毫秒将“Hello World”写入串行,但该方法

- (void) readBytesAvailable:(UInt32)numBytes {
    ...
}

根本没有被调用。也cableConnected从未被调用。

我确定我已将双方的波特率设置为 9600,正如这个问题的答案所建议的那样。

尽管我有疑问,但适配器的使用可能存在谎言。 有任何想法吗?

编辑

解决方法如下:我在iPad 4+ Adapter上重新测试,发现没有问题。优秀的!

4

2 回答 2

1

我解决了!我没有在.plist文件中声明电缆。按照此页面Supported external accessory protocols的步骤 11 的指示添加后,我能够按预期接收所有事件。

我之所以如此卡住,是因为上面的链接和“带有 Arduino 的 iOS 传感器应用程序”一书中的链接都声明该属性是一个可选步骤,我选择省略。我认为这一定是由于需要显示一个额外的对话框来要求用户访问 App Store 而导致的时间或线程问题,从而搞砸了这些事件的正确委派。

在网页上:

This step is optional, but it will avoid the problem of you seeing an error message ("This accessory requires an application...") each time you plug in the cable.

书上:

Finally, we need to declare support for the cable in our application’s Info.plist file. If we don’t do this, we’ll get something that looks like Figure 2-13 every time we plug the cable into the device.
于 2013-06-03T12:28:50.807 回答
1

在 info.plist 中,您是否使用“com.redpark.hobdb9”来声明电缆?我一直在想是否需要将 C2-TTL 电缆声明为其他东西,但在网上没有找到任何这样说的资源。

于 2013-06-27T17:58:46.403 回答