首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >当我用Python向我的调制解调器发送串行端口消息时,整数返回值意味着什么?

当我用Python向我的调制解调器发送串行端口消息时,整数返回值意味着什么?
EN

Stack Overflow用户
提问于 2020-12-02 03:29:07
回答 1查看 22关注 0票数 0

如何解释以下代码中返回的4,该代码试图通过串行AT端口/dev/ttyUSB3向我的SIMCom 7600A调制解调器发送一个基本的AT消息

代码语言:javascript
代码运行次数:0
运行
复制
from serial import Serial

# If a "port" is given, then the port will be opened immediately.
ser = Serial(port="/dev/ttyUSB3", timeout=2, write_timeout=2)

# The following prints as "True"
print(ser.is_open)

# Turn GPS on
ser.write(b"AT\r\n")
>>> 4

这是我请求“查看GPS信息”时的另一个示例,它返回13

代码语言:javascript
代码运行次数:0
运行
复制
ser.write(b"AT+CGPSINFO\r\n")
>>> 13

最后一个示例是当我请求激活GPS时,它也返回13

代码语言:javascript
代码运行次数:0
运行
复制
ser.write(b"AT+CGPS=1,1\r\n")
>>> 13

谢谢!-Sean

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-02 03:43:48

它返回写入的数据的长度。下面是write函数的the source

代码语言:javascript
代码运行次数:0
运行
复制
    def write(self, data):
        """Output the given string over the serial port."""
        if not self.is_open:
            raise PortNotOpenError()
        #~ if not isinstance(data, (bytes, bytearray)):
            #~ raise TypeError('expected %s or bytearray, got %s' % (bytes, type(data)))
        try:
            # must call overloaded method with byte array argument
            # as this is the only one not applying encodings
            self._port_handle.Write(as_byte_array(data), 0, len(data))
        except System.TimeoutException:
            raise SerialTimeoutException('Write timeout')
        return len(data)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65097224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档