gpt4 book ai didi

objective-c - Objective C/Arduino 通信速度变慢

转载 作者:行者123 更新时间:2023-12-03 17:39:43 25 4
gpt4 key购买 nike

我在 Objective C 中为 CNC 机器编写了一个 G 代码解释器/控制应用程序。在前 20 - 30 秒内一切运行良好,但之后整个过程停止了另外 20 秒并恢复超慢。我制作了一个视频,以便您可以亲自观看: video (about a minute) 。据我所知,它不会跳过步骤或类似的东西,它只是运行得很慢。

在我的 X-code 控制台中,我可以看到代码以正常速度解释(每次写入一个字节时使用 NSLog)。

我使用 Arduino Cocoa reference 中的 IOkit进行沟通。我尝试了很多不同的波特率,有时这会延长它正常工作的时间,但最终它总是会变慢。

我在这一行之后需要清理串行缓冲区或其他东西

// send a byte to the serial port
void writeByte(char val) {
write(serialFileDescriptor, [[NSString stringWithFormat:@"%c" , val] cStringUsingEncoding:NSUTF8StringEncoding], 1);

}

更新:我正在运行 OS X 10.9 的 17"MBP 上开发应用程序,我在运行 10.9.1 的其他 13"MBP 上尝试过此操作,但当我使用运行 10.6.8 的其他 13"MBP 时,会发生同样的情况效果很好!

对这里发生的事情有什么想法吗?

最佳答案

可能你的写入速度比波特率快,但只有当输出缓冲区已满时你才会减慢速度,因为你需要等待写入。这个问题可以通过多种方式解决或解决

关于objective-c - Objective C/Arduino 通信速度变慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21584939/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com