我的python脚本正在使用调制解调器,该过程的第一步是检查是否有足够的信号。通过AT命令,我可以向调制解调器询问信号强度,因此我制作了一个循环,不断询问信号强度,然后在信号强度足够大时继续操作。
如果有可用信号,则可以正常工作。问题是没有信号时。我已经尝试增加睡眠时间,但似乎不起作用。
Signal = False
while Signal is not True:
x = ser.readline()
y = x.rstrip()
z = y.decode('utf-8')
ser.write(str.encode('AT+CSQ?\r'))
time.sleep(9)
if (z.startswith("+CSQ")):
a = int(z[5])
if a >= 3:
Signal = True
time.sleep(4)
enough_signal_write()
else:
checking_signal
在长循环中,就像10次尝试捕获信号一样,它似乎工作异常,就像有时忽略信号是否足够强,然后最终捕获并运行。 (我可以通过“ print(z)”行通过调制解调器输出的奇怪顺序来检查这一点)
我感觉我需要一些东西来等待调制解调器响应,然后对此采取措施,但是我不确定该怎么做。
感谢您的时间