使用 AT 命令与 GSM 调制解调器通信
Communicating with GSM modem with AT Command
我正在尝试通过 c# 中的串行端口与 GSM 调制解调器通信。
到目前为止我已经能够连接它,向它发送AT命令并发送短信。
对于短信发送,我正在发送以下 AT 命令
AT+CMGF=1 /* set text mode */
AT+CMGS=8801911xxxxxx
"hellp msg "+ (char)26
它按预期工作。
但是对于发送USSD消息,
我正在尝试
AT+CMGF=0 /* PDU mode */
AT+CUSD=1,*121# , 15
但是没有返回任何响应。
我试过GSMCOMM库,也没有反应。
我试过将文本转换为 PDU,还是不行。
那么我如何通过串口将 C# 中的 USSD 消息发送到调制解调器并获得响应?
你应该像这样发送 USSD 命令:
AT+CUSD=1,"*121#",15
另请注意AT+CMGF
仅影响短信发送,不影响 USSD。
您可能还想查看 this answer。
像这样发送 USSD 命令:
sp.Write("AT+CUSD=1,\"*710#\",15\r");
我正在尝试通过 c# 中的串行端口与 GSM 调制解调器通信。
到目前为止我已经能够连接它,向它发送AT命令并发送短信。
对于短信发送,我正在发送以下 AT 命令
AT+CMGF=1 /* set text mode */
AT+CMGS=8801911xxxxxx
"hellp msg "+ (char)26
它按预期工作。
但是对于发送USSD消息,
我正在尝试
AT+CMGF=0 /* PDU mode */
AT+CUSD=1,*121# , 15
但是没有返回任何响应。
我试过GSMCOMM库,也没有反应。
我试过将文本转换为 PDU,还是不行。
那么我如何通过串口将 C# 中的 USSD 消息发送到调制解调器并获得响应?
你应该像这样发送 USSD 命令:
AT+CUSD=1,"*121#",15
另请注意AT+CMGF
仅影响短信发送,不影响 USSD。
您可能还想查看 this answer。
像这样发送 USSD 命令:
sp.Write("AT+CUSD=1,\"*710#\",15\r");