-1

我正在使用 SIM808 向特定号码发送短信。但是当尝试使用 AT+CMGS=XXXXXXX 设置数字时,返回 +CMS ERROR:325。我已将 AT+CSCS 设置为 GSM,但仍然没有运气。以下是代码:

import serial
import os, time

# Enable Serial Communication
port = serial.Serial("/dev/ttyUSB0", baudrate=9600, timeout=1)

# Transmitting AT Commands to the Modem
# '\r\n' indicates the Enter key

port.write('AT'+'\r\n')
rcv = port.read(10)
print rcv
port.write('AT+CMGF=1\r\n')
time.sleep(10)
rcv = port.read(10)
print rcv
port.write('AT+CMGS=\'9912345678\'\r\n')

time.sleep(2)
port.write('test msg')
time.sleep(2)
port.write(chr(26))
rcv = port.read(10)
print rcv
port.flush()
4

1 回答 1

0

SIM808 期望 AT+CMGS 命令应该用双引号将手机/手机号码括起来。您为单引号提供了转义序列。您的代码应该是:

port.write("AT+CMGS=\"9912345678\"\r\n")

代替

port.write('AT+CMGS=\'9912345678\'\r\n')

因为您提供单引号转义序列,所以您会收到+CMS ERROR:325错误。

在提供手机/手机号码时,最好包含国家代码(在您的情况下为 +91)。

于 2018-12-26T10:07:22.703 回答