我编写了下面的Python程序,以等待传入的呼叫并接受或拒绝它们。根据本文档和本文档,接受来电的相应AT命令为ATA
或ATS0
或ATS0<n>
。拒绝来电的合适命令是ATH
或AT H
。
我尝试了上述所有命令,但是来电既未应答也未拒绝!
我的Python程式:
import time
import serial
phone = serial.Serial("COM10", 115200, timeout=5)
try:
time.sleep(1)
while(1):
x = phone.readline()
print(x)
if (x == b'RING\r\n'):
phone.write(b'AT H') # I replaced this 'AT H' with all the above
# commands, but nothing changed about the
# incoming call. It always ringing.
time.sleep(2)
finally:
phone.close()
结果AT H
:
>>> ================================ RESTART ================================
>>>
b''
b''
b'\r\n'
b'RING\r\n'
b'AT H\r\n'
b'RING\r\n'
b'AT H\r\n'
b'RING\r\n'
b'AT H\r\n'
b'RING\r\n'
b'AT H\r\n'
b'RING\r\n'
结果ATH
:
>>> ================================ RESTART ================================
>>>
b''
b''
b''
b'\r\n'
b'RING\r\n'
b'ATH\r\n'
b'RING\r\n'
b'ATH\r\n'
b'RING\r\n'
b'ATH\r\n'
b'RING\r\n'
结果ATA
:
>>> ================================ RESTART ================================
>>>
b''
b''
b''
b'\r\n'
b'RING\r\n'
b'ATA\r\n'
b'RING\r\n'
b'ATA\r\n'
b'RING\r\n'
b'ATA\r\n'
b'RING\r\n'
结果ATS0
:
>>> ================================ RESTART ================================
>>>
b''
b''
b''
b'\r\n'
b'RING\r\n'
b'ATS0\r\n'
b'RING\r\n'
b'ATS0\r\n'
b'RING\r\n'
如上所示,无论我发送给它的AT命令是什么,GSM调制解调器都会继续响铃。我的程序怎么了?
请注意,我的调制解调器是D-Link DWM-156,我可以在Python中使用它成功发送SMS或进行呼叫。提前致谢。
在每个AT
命令的末尾添加一个CR,以使其成为有效AT
命令
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句