了解 GSM/CSD 连接何时中断

发布于 2024-09-30 21:38:27 字数 380 浏览 0 评论 0原文

背景

我有一个通过 COM 端口连接的 GSM 调制解调器。我使用 CreateFile 打开 COM 端口,并且能够发送各种 AT 命令。我使用 ATD 发出 CSD(数据)呼叫,或使用 ATS0=1 接收呼叫。

现在的问题

我如何知道连接在数据通话过程中已断开?

实际上,当呼叫中断时,我会收到一条 NO CARRIER 消息。但问题是 GSM 调制解调器将命令/通知与实际数据混合在一起。那么我如何知道该消息是数据本身的一部分,还是实际上是来自调制解调器的呼叫中断消息?

谢谢,伙计们。

Background

I have a GSM modem connected through a COM port. I open the COM port using CreateFile and I'm able to send various AT commands. I use ATD to place a CSD (data) call or ATS0=1 to receive one.

Now the problem

How can I know that the connection has broken in the middle of a data call?

Actually, when a call is broken I get a NO CARRIER message. But the problem is GSM modem mixes the commands/notifications with the actual data. So How can I know if this message is part of the data itself, or it's in fact a call-broken message from the modem?

Thanks, guys.

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

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

发布评论

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

评论(1

许仙没带伞 2024-10-07 21:38:27

CD 信号(载波检测)将关闭。在 GetCommModemStatus() 和 WaitCommEvent() 中命名为 RLSD。当您使用调制解调器时,这在道德上相当于 std::bad_alloc 。

The CD signal (Carrier Detect) will turn off. Named RLSD in GetCommModemStatus() and WaitCommEvent(). That's the moral equivalent of std::bad_alloc when you work with a modem.

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