OSX 上的独占串行端口访问

发布于 2024-10-31 12:22:23 字数 511 浏览 0 评论 0原文

我正在开发一个使用 gnu.io (RXTX) 通过 USB 串行端口与微控制器通信。该应用程序可在 Windows、Linux 和 OSX 上运行。它依靠 gnu.io 进行便携式串行端口访问。一位 Macbook 用户发布了一份日志,显示了两件事的证据:

  • 当应用程序打开串行端口时,某些东西会导致 RTS 发出脉冲,从而重置微控制器。
  • 当应用程序打开串行端口时,某些东西会暂时改变波特率,导致输入上出现垃圾。 (通常,这种微控制器/固件/USB 组合不易受到不良波特率的“线路噪声”式垃圾特征的影响)。
  • 当应用程序处于空闲状态时,这种情况会定期发生(在 RTS 引起的重置后自发消息到达时进行反应/记录)

我怀疑某些其他程序偶尔会打开相同的串行端口(例如搜索连接的设备)。在 OSX 上如何防止这种情况发生?

I'm working on an open source program that uses gnu.io (RXTX) to talk to a microcontroller over a USB serial port. The app runs on Windows, Linux and OSX. It relies on gnu.io for portable serial port access. One Macbook user has posted a log showing evidence of two things:

  • While the application has the serial port open something causes RTS to pulse, resetting the microcontroller.
  • While the application has the serial port open something changes the baudrate temporarily, causing garbage to appear on the input. (Normally this microcontroller/firmware/USB combination is not susceptible to "line noise" style garbage characteristic of bad baud rates).
  • This happens periodically while the application sits idle (reacting/logging when spontaneous messages arrive after the RTS induced reset)

I suspect that some other program is opening the same serial port occasionally (eg searching for a connected device). How do I prevent that on OSX?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

葬花如无物 2024-11-07 12:22:23

据我所知,RXTX 不允许其他人使用它正在使用的串行端口,并且如果在尝试打开该端口时该端口已在使用中,则会抛出异常。对我来说听起来像是 RXTX bug

as far as I know, RXTX does not allow anyone else to use a Serial port it's using, and throws an exception if the port is already in use when it tries to open it. sounds like a RXTX bug to me

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文