簡體   English   中英

在C#中使用gsm調制解調器讀取短信時出現錯誤數據

[英]Error data while reading sms with gsm modem in C#

我正在使用iball 3.5G connect(3.1.0版)。

這是我的代碼:

private void button1_Click(object sender, EventArgs e)
{
    SerialPort sp = new SerialPort("COM6",115200);
    sp.Parity = Parity.None;
    sp.DataBits = 8;
    sp.StopBits = StopBits.One;
    sp.Handshake = Handshake.RequestToSendXOnXOff;
    sp.DtrEnable = true;
    sp.RtsEnable = true;
    sp.NewLine = Environment.NewLine;
    sp.Encoding.Equals("iso-8859-1");

    sp.Open();
    sp.Write("AT" + System.Environment.NewLine);
    Thread.Sleep(3000);

    sp.WriteLine("AT+CMGF=1" + System.Environment.NewLine);
    Thread.Sleep(3000);

    sp.WriteLine("AT+CMGL=\"ALL\"\r" + System.Environment.NewLine);
    Thread.Sleep(3000);

    MessageBox.Show(sp.ReadExisting().ToString());
}

但它顯示:

消息日志

我嘗試了許多不同的代碼變體。 請給我一個解決方案。

這樣看來您已正確完成所有操作,將模式設置為文本,然后發送AT + CMGL =“ ALL”來獲取消息。 在我看來,您的代碼實際上正在正常工作。 調制解調器給您答復,只是沒有格式化為文本。 它看起來像是來自網絡的二進制消息或控制消息。 並非所有的SMS消息都可以顯示為文本! 您是否可以嘗試通過電話從調制解調器發送一條簡單的短信,例如“ Test 123”,並查看從At + CMGL獲得的信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM