手机发送短信问题,使用AT+CMGS指令短信发送成功后,手机马上出现“收到新的短消息”,然后出现“状态:”显示。请教是否少用了指令,或在发送前要进行相应的设置?在线等待。

解决方案 »

  1.   

    AT+CNMI  设置手机消息通知方式
    你應該是設置了手機自動通知, 也就是說, 
    對方收到短信後, 你又會收到一個消息告知!你可也, 發送後, 隔一會, 讀取新短信, 刪除短信!
      

  2.   

    是否用户信息编码方式(TP-DCS)有问题?
      

  3.   

    反复设置 AT+CNMI  无法解决问题
      

  4.   

    >>讀取新短信, 然后刪除短信,但是“状态:”无法消除。
    這個我沒試過, 只能等待其它高手出現解答了!
      

  5.   

    try
      New Message Indications to TE
    AT+CNMI=?
    +CNMI: (0,1),(0,1),(0,2),(0,2),(1)OK
    AT+CNMI?
    +CNMI: 0,0,0,0,1
    or try this:
    '6.23 Silence Command
    AT+CSIL=?
    ERROR
    AT+CSIL?
    ERROR
      

  6.   

    +CNMI: (0,1),(0,1),(0,2),(0,2),(1)
    前两个参数我知道是干什么的,后面的不
    知道,
    AT+CNMI=1,1 可以设置短信到来通知端口。
      

  7.   

    AT+CSIL
    实干什么操作?
      

  8.   

    AT指令测试工具,有人想要么?请留mail
      

  9.   

    給我一份吧, 謝謝!
    [email protected]
      

  10.   

    aiirii(ari-爱的眼睛) 和和,一定的,你一定要解决我的问题:))
      

  11.   

    function TMainForm.getSendText( SendText, SendNumber: String):String;
    var tmp:String;
    begin  tmp :=  AnsiToUnicode(SendText);
      //这里采用的设置为,让SIM卡自动填上短信中心的设置 '1100'
      result := '11000'+InttoHex(length(SendNumber),255)+'91'+
            EncodePhoneNumber(SendNumber)+'0008AA';
      if length(InttoHex(length(tmp) div 2,255))=1 then
        result := result+'0';
      result := result +InttoHex(length(tmp) div 2,255)+tmp;
    end;
      

  12.   

    procedure TMainForm.setPduSend;
    begin
      CanSend := true;
      SendText('at'+#13#10);
      SendText('at+cmgf=0'+#13#10);
    end;    
    s2 := self.getSendText(msg,PhoneNumber);
        //showmessage(s2);
        //发送命令长度
        s:='at+cmgs='+inttostr(length(s2) div 2)+#13#10;
        SendText(s);
        waitcommEmpty(16);
        SendText('00'+s2+chr(26));//chr(26) => Ctrl+z
      

  13.   

    我也要 [email protected]
    谢谢
      

  14.   

    可以给我一份吗?或者那位大哥能转发一份给我吗?
    [email protected]