发送Unicode文本消息SMS / Arduino

时间:2017-04-28 21:48:55

标签: c# c++ arduino sms gsm

我已经尝试了一切,并且在这个过程中已经筋疲力尽了。 我可以毫无问题地发送普通短信息。

我正在设置消息发送时我需要的所有内容。

ipairs

我正在编码我的Unicode字符,但是我的fona就是这样:

if (! sendCheckReply(F("AT+CMGF=1"), ok_reply)) return false;
if (! sendCheckReply(F("AT+CSCS=\"UCS2\""), ok_reply)) return false;
if (! sendCheckReply(F("AT+CSMP=17,168,0,8"), ok_reply)) return false;

AT + CMGS一发送,就会出错。 即使我提供UCS2 HEX格式的电话号码,它也会做同样的事情。

我假设格式/编码不符合预期。

这是Unicode编码(从另一个Stackoverflow后解决方案中提取)

+ Response: +OK SEND NUMBER
+ Response:
+ Sending: 6616634660
+ Response: +OK SEND MESSAGE
+ Response:
+ Sending: 005B004E00450058002000560041004C00450054005D00200053004D005300200073006500720076006500720020006900730020006E006F0077002000720075006E006E0069006E0067002E
+ Response: AT+CMGF=1
+ Response: OK
+ Response: AT+CSCS="UCS2"
+ Response: OK
+ Response:
+ Response: AT+CSMP=17,168,0,8
+ Response: OK
+ Response: AT+CMGS="6616634660"
+ Response:
+ Response: ERROR
+ Response: -ERROR Failed sending message
+ Response: +OK READY FOR NEXT COMMAND
+ Response:

当我拿出所有unicode的东西时,将CSMP设置回17,167,0,0

短信短信有效(仅文字)

我猜测CSMP设置不正确,但我现在只是在黑暗中投掷扳手......有人可以帮忙吗?

0 个答案:

没有答案