CDMA WAVECOM芯片发送编码

2017-03-24  本文已影响0人  wanfengxixia

CDMA发中文短消息是直接发送其Unicode代码

例如:发送中文短消息“您好”其相应Unicode 编码:0x60a8 0x597d

AT+WSCL=6,4 CDMA不支持PDU 好比是GSM的PDU模式。 AT+WSCL=1,2 好比是GSM的TEXT模式。

AT+CMGS="13*********",10

0x600xa80x590x7d0x000x1a

返回代码:

+CMGS:N 表示成功发出,N 为序号。

注:程序中发送的时候应该是发送数据0x60,0xa8,0x59,0x7d,对于中文短消息其中的控制字

符也必须用其UNCODE 代码表示。消息内容的结束则以结束符来做标记,所以它的结束符

也应该是UNICODE 格式的。即在超级终端中用此种方式是无法发送成功的,因为从键盘键

入的并非UNICODE 格式,仅ASCII 码而已。在程序中正确的结束符应该是0x00 0x1a;

在手机号码后面最好加上短消息内容长度。

不是把中文转换成的一串unicode 码直接扔给串口,而是把每个汉字转换成16进制的4个字符转换成一个ascii码。

----------------------------------------------------------------------------------------------------

但是我按照上述方法,发送短信。提示是发送成功,但对方收不到短信。

我直接读取CDMA短信猫中的短信,也是乱码,应该是ASCII转成UNICODE,但是显示不了正常的信息。

WritePort(FhndComm,'AT+CMGF=1' + #13); 设为TEXT模式,CDMA不支持PDU

Sleep(200); 延时,这是DELPHI的语法

WritePort(FhndComm,'AT+WSCL=6,4' + #13);选择中文语言

Sleep(200);

指定发送手机号,和信息宽度,宽度一定要,省去就发送不行,不知道为什么!?

WritePort(FhndComm,'AT+CMGS='+'"'+'13938225510'+'"'+',6'+#13);

Sleep(200);

WritePort(FhndComm,#$60+#$A8+#$59+#$7D+#$00+#$31);发送信息为“您好1”

延时1000毫秒后读串口返回OK,手机接收到汉字!!

如果您还想了解更多有关短信猫的内容,请联系:赵先生

电话:400-050-1096 网址:www.sendsms.com.cn

QQ:1170923055  E-mail:service@mailer.com.cn/zhaozh@mailer.com.cn

上一篇下一篇

猜你喜欢

热点阅读