你发送AT+CNMI=?之后把结果贴一下,看看你的模块是不是可以直接将消息转发到TE,如果可以的话不用每次从SIM卡读取。

解决方案 »

  1.   

    发送AT+CNMI=? 
    会得到
    +CNMI:(0-3),(0-3),(0-3),(0-2),(0-1)
      

  2.   

    在初始化后先发送AT+CNMI=2,2,0,0,0
    使串口保持读取状态,然后给短信猫发送一条短信,看看短信内容能否直接被串口接收到.收到的短信内容应该是以0891开头.
      

  3.   

    发送了好几条短信,
    每次收到的内容只有红色的部分是一样的,
    其他都不一样了。
    下面是一条完整的短信+CMT: ,44
    07683108304745F3000D91688137183822F6000821700201023023184F60597D597D8FD80020521A521A597D597D597D5E724E56
      

  4.   

    发送了几条不同的短信
    每次收到的内容都不一样
    只有红色部分是一样的
    下面是一天完整的短信
    +CMT: ,44
    07683108304745F3000D91688137183822F6000821700201023023184F60597D597D8FD80020521A521A597D597D597D5E724E56
      

  5.   


            static void Main(string[] args)
            {
                DateTime dt = fsshijian("2170020102");
                Console.WriteLine(dt);
                string s = "4F60597D597D8FD80020521A521A597D597D597D5E724E56";
                byte[] b = new byte[24];
                for (int i = 0; i < 24; i++)
                    b[i] = Convert.ToByte(s.Substring(i * 2, 2), 16);
                string mmsg = Encoding.BigEndianUnicode.GetString(b);
                Console.WriteLine(mmsg);
                Console.ReadLine();
            }
            static DateTime fsshijian(string sj)
            {
                DateTime dt = new DateTime();
                if (sj.Length == 10)
                {
                    char* ca = stackalloc char[16];
                    ca[0] = '2';
                    ca[1] = '0';
                    ca[2] = sj[1];
                    ca[3] = sj[0];
                    ca[4] = '/';
                    ca[5] = sj[3];
                    ca[6] = sj[2];
                    ca[7] = '/';
                    ca[8] = sj[5];
                    ca[9] = sj[4];
                    ca[10] = ' ';
                    ca[11] = sj[7];
                    ca[12] = sj[6];
                    ca[13] = ':';
                    ca[14] = sj[9];
                    ca[15] = sj[8];
                    DateTime.TryParse(new string(ca, 0, 16), out dt);
                }
                return dt;
            }时间:2012/7/20 10:20:00
    短信内容:你好好还 刚刚好好好干乖
      

  6.   

    楼上的lizhibin11 真是强悍啊!
    这个问题解决了,但我还有很多疑问,比如:
    怎么读取收到的全部短信? 怎么从sim卡怎么读短信?
    另外对于频繁的接受、发送短信,从稳定型上考虑,有什么要注意的地方。
    发短信的时候,又能接收短信怎么做好?想再听些建议,有源码更好了!QQ群:46958187 欢迎这方面的新手、老手前来交流
    马上结贴去,谢谢了!
      

  7.   

    是的,这个小于70个汉字的中文短信仅仅是操作短信猫的一小部分,其他问题还相当繁杂,比如:
    收发英文短信,涉及7-bit编码
    收发汉字超过70,英文超过160的短信
    接受的同时发送,怎么保证成功率等。
    回头我发私信给你发代码,论坛盛不下。