2016-03-19 101 views
0

如何使用arduino和sim900模塊打開網頁 我正要使用gsm sim 900模塊打開網頁我嘗試使用此代碼我不熟悉AT命令,因此此代碼僅顯示可以作爲對串行監視器中代碼的響應,並且它不打開頁面,所以請你幫助我!使用sim900打開網頁

 #include <SoftwareSerial.h> 
SoftwareSerial SIM900(2, 3); // configure software serial port 
void setup() { 
SIM900.begin(19200); 
SIM900power(); 
Serial.begin(19200); 
Serial.print("power up"); 
delay(20000); 
    SIM900.println("AT+CSQ"); // Signal quality check 
delay(100); 
    ShowSerialData();// this code is to show the data from gprs shield, in   order to easily see the process of how the gprs shield submit a http request, and the following is for this purpose too. 
    SIM900.println("AT+CGATT?"); //Attach or Detach from GPRS Support 
    delay(100); 
ShowSerialData(); 
SIM900.println("AT+SAPBR=3,1,\"CONTYPE\",\"GPRS\"");//setting the SAPBR,  the connection type is using gprs 
delay(1000); 
ShowSerialData(); 
SIM900.println("AT+SAPBR=3,1,\"APN\",\"etisalat\"");//setting the APN, Access point name string 
delay(4000) 
    ShowSerialData(); 
SIM900.println("AT+SAPBR=1,1");//setting the SAPBR 
delay(2000); 
ShowSerialData(); 
SIM900.println("AT+HTTPINIT"); //init the HTTP request 
delay(2000); 
ShowSerialData();   SIM900.println("AT+CIPSTART=\"TCP\",\"http://http://www.google.com\",\"80\""); 
    delay(1000); 
ShowSerialData(); 
SIM900.println("AT+CIPSHUT"); //init the HTTP request 
delay(2000); 
ShowSerialData(); 
SIM900.println("AT+HTTPACTION=0");//submit the request 
delay(10000);//the delay is very important, the delay time is base on the return from the website, if the return datas are very large, the time required longer. 
    while(!SIM900.available()); 
ShowSerialData(); 
SIM900.println("AT+HTTPREAD");// read the data from the website you access 
delay(300); 
    ShowSerialData(); 
SIM900.println(""); 
delay(100); 
    } 
void SIM900power() 
    // software equivalent of pressing the GSM shield "power" button 
    { 
digitalWrite(9, HIGH); 
    delay(1000); 
    } 
    void loop() 
    { 
    // Serial.println("SubmitHttpRequest - started"); 
    // SubmitHttpRequest(); 
    // Serial.println("SubmitHttpRequest - finished"); 
    } 
void SubmitHttpRequest() 
    { 
    } 
    void ShowSerialData() 
{ 
    while(SIM900.available()!=0) 
    Serial.write(char (SIM900.read())); 
    } 

回答

0

您可以發佈您從此通信中獲得的SERIAL日誌嗎?

這是正常的建立通過HTTP查詢:

檢查是否有註冊網絡

AT+CREG? 

檢查中,如果你連接到網絡

AT+CGATT? 

設置承載配置文件1(看看它是否設置了有效的IP)

AT+SAPBR=3,1,"Contype","GPRS" 
AT+SAPBR=3,1,"APN","APNdirection" 
AT+SAPBR=3,1,"USER","APNuser" 
AT+SAPBR=3,1,"PWD","APNpassword" 
AT+SAPBR=2,1 
AT+SAPBR=1,1 

開始HTTP

AT+HTTPINIT 

選擇承載1

AT+HTTPPARA="CID",1 

設置要申請

AT+HTTPPARA="URL","google.com" 

啓動GET動作的URL

AT+HTTPACTION=0 

讀一旦完成

AT+HTTPREAD 

終止HTTP

AT+HTTPTERM