小编Ren*_*ato的帖子

使用 pySerial 读取响应 AT 命令

我有以下示例代码:

import serial

ser = serial.Serial('/dev/ttyUSB1', 115200, timeout=5)
ser.write("AT\r")
response =  ser.readline()
ser.write(chr(26)) 
ser.close()

print response
Run Code Online (Sandbox Code Playgroud)

我的目标是发送AT命令并得到您的回答OK

PySerial readline()的文档说读取接收到的数据,直到找到换行符,问题是我的打印没有返回任何内容。

我确定在AT命令之后,3G 调制解调器发送给我的响应是OK。任何人都知道您无法检索答案的原因?

PS:使用像CuteCom这样的程序,我确认设备可以工作并且它响应AT命令。

python pyserial

5
推荐指数
2
解决办法
3万
查看次数

两个日期之间的天数差异

我总是使用下面的代码来计算两个日期之间的差异(以天为单位).但是我想知道是否有更聪明的东西,有人知道更好的方法吗?

//86400 one day
$data1 = '2013-07-24 21:30:00';
$data2 = '2013-08-24 21:30:00';

$diff =  (abs(strtotime($data1) - strtotime($data2))) / 86400;

var_dump($diff);
Run Code Online (Sandbox Code Playgroud)

php

0
推荐指数
1
解决办法
121
查看次数

以相同的步骤单独列出

我有一个可变大小的列表.她总是至少有三个元素,而新元素总是三个元素的倍数.

示例列表如下:

['ttyUSB0', 'ttyUSB1', 'ttyUSB2', 'ttyUSB3', 'ttyUSB4',
'ttyUSB5', 'ttyUSB6', 'ttyUSB7', 'ttyUSB8']
Run Code Online (Sandbox Code Playgroud)

我的问题是我总是要选择这个三重奏的第二个元素.因此,对于上面的列表,我需要恢复以下结果:

['ttyUSB1', 'ttyUSB4', 'ttyUSB7']
Run Code Online (Sandbox Code Playgroud)

下面的代码完美,但不优雅,有人有更多的inteigente解决方案?

def removeUselessSerialDoors(self, devices):

    new_list = []
    count = 0

    for port in devices:

        if count == 0:
            pass

        elif count == 1:
            new_list.append(port)

        elif count == 2:
            count = 0
            continue

        count = count + 1    

    return new_list
Run Code Online (Sandbox Code Playgroud)

谢谢你的时间

python

0
推荐指数
1
解决办法
39
查看次数

标签 统计

python ×2

php ×1

pyserial ×1