【问题标题】:AT commands with Telnet / Socket in python在 python 中使用 Telnet/Socket 的 AT 命令
【发布时间】:2017-12-20 02:50:24
【问题描述】:

我有一个设备,我想发送 AT 命令,我可以通过 telnet 或套接字连接到该设备。

我的问题是我无法发送 AT 命令或不知道如何接收它,我找到了一些关于这个主题的文章,但它们都在谈论串行连接。

我的问题是,如果我通过 Telnet 或 Socket 连接到终端并接收响应,那么发送 AT 命令的正确方法是什么

我已经尝试了 socket.send("AT\n") 和 telnet.write(b"AT")

“AT”应该只是响应“OK”状态

【问题讨论】:

  • 你怎么知道你已经连接了?当您执行socket.send("AT\n") 时会发生什么
  • 我正在获取字符串的长度

标签: python python-2.7 sockets telnet at-command


【解决方案1】:

正确的AT指令处理如下:

您需要发送command line,然后读取并解析 (framing) AT 命令响应,直到您收到最终结果代码。

请参阅this answer(或thisthis 或我的一些other answers)了解有关读取和解析逻辑的详细信息。

【讨论】:

    【解决方案2】:

    我不确定你是否尝试过,但在 [不要忘记发送和接收的 .encode() 和 .decode()]

    s=socket.socket()
    s.connect((host,port))
    s.send("AT\n".encode())
    

    你必须使用

    data=s.recv(1024).decode()
    print(data)
    

    接收信息。然后,您使用

    关闭套接字
    s.close()
    

    希望有所帮助!

    【讨论】:

      猜你喜欢
      • 2018-12-13
      • 1970-01-01
      • 2014-06-11
      • 2019-11-06
      • 2015-06-17
      • 1970-01-01
      • 1970-01-01
      • 2010-10-14
      • 1970-01-01
      相关资源
      最近更新 更多