【问题标题】:VB.net sending/recieving AT commands from SIM CardVB.net 从 SIM 卡发送/接收 AT 命令
【发布时间】:2015-07-29 12:34:18
【问题描述】:

好的,所以我使用 Vb 已经有一段时间了,但对与设备通信是全新的。

我有一个带有 SIM 卡插槽的 HP Elitebook 820,我想做的是显示 SIM 卡信息 - 特别是序列号。我做了一些搜索,发现很多人在谈论 AT 命令。经过一番搜索,我试了一下。

    Dim com1 As SerialPort = New System.IO.Ports.SerialPort

    com1.PortName = "COM6"

    com1.Open()

    If com1.IsOpen Then
        com1.Write("AT+CIMI")
        Dim result As String
        result = com1.ReadExisting
        MsgBox(result)
    Else
        MsgBox("port not open")
    End If

没有错误,只是返回了空白字符串。任何人都可以通过让我知道来帮助我,首先如果这可能,其次我是否以正确的方式进行?

【问题讨论】:

    标签: vb.net serial-port port at-command


    【解决方案1】:

    第 1 步。获取一份V.250 调制解调器标准的副本,并至少阅读第 5 章的全部内容。这将教您很多基本的 AT 命令处理,例如 AT 命令行应该以 @ 终止987654324@.

    第 2 步。最好的文档是您的调制解调器制造商的特定文档,您绝对应该尝试掌握它,但是对于像 AT+CIMI 这样的基本手机命令,您也可以使用 3GPP 规范 27.007(假设制造商在其实施中没有偏离。有时他们会执行一些命令,所以这是需要注意的(因此我建议首先获取调制解调器制造商的特定文档)。但是 AT+CIMI 命令非常简单真的没有什么可偏离的。)。

    步骤 3. 接收处理,例如result = com1.ReadExisting 太简单了。您必须读取并解析来自调制解调器的每一行响应,直到获得最终结果代码(最常见的是 OKERROR,但还有其他几个)。任何其他方式都无法可靠地工作。请参阅this answer 了解如何正确执行的伪代码结构。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多