通过USSD检查余额时出错

时间:2015-04-19 12:56:43

标签: putty at-command modem 3g ussd

我一直试图通过AT命令通过3g调制解调器检查我的余额,似乎卡住了。

设备信息如下:

制造商:QUALCOMM INCORPORATED
型号:M6281
修订:SSD_M6281A-0.0.1 1 [2008年10月2日07:00:00]

调制解调器具有USSD功能(广告并出现在工厂安装的仪表板中)。

我通过putty连接到COM4串口,这是我的调制解调器应用程序端口。所有AT命令都正常工作,但是通过putty发出以下命令时出错:

AT+CUSD=1,"*111#",15

这会返回一个简单的“错误”。 * 111#是我的运营商的余额检查代码。我怀疑某处存在格式错误,但我无法弄清楚在哪里。

注意:如果我发出空白的ussd命令:

AT+CUSD=1,"",15 

然后我得到一个OK(虽然我后来得到一个响应+ CME ERROR:重试操作)...但是如果我在引号内写任何东西,它会返回“ERROR”。

2 个答案:

答案 0 :(得分:6)

好的,我终于找到了解决这个问题的方法。显然,编码存在问题。这是我做的:

AT+CSCS="GSM" // change character set to GSM
AT+CUSD=1,"*111#",15 // Issued balance check ussd code

现在工作正常。

默认编码是UCS2,如果有人可以分享如何在putty中将ussd代码转换为UCS2编码,我会很感激。

答案 1 :(得分:1)

您是否尝试过AT + CUSD = 1,“* 111#”发出请求? (没有最后一个参数) 由于制造商的实施,AT cmmands有时会有所不同。