Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Web client
- This sketch connects to a website through a GSM shield. Specifically,
- this example downloads the URL "http://arduino.cc/asciilogo.txt" and
- prints it to the Serial monitor.
- Circuit:
- * GSM shield attached to an Arduino
- * SIM card with a data plan
- created 8 Mar 2012
- by Tom Igoe
- http://arduino.cc/en/Tutorial/GSMExamplesWebClient
- */
- // libraries
- #include <GSM.h>
- // PIN Number
- #define PINNUMBER ""
- // APN data
- #define GPRS_APN "GPRS_APN" // replace your GPRS APN
- #define GPRS_LOGIN "login" // replace with your GPRS login
- #define GPRS_PASSWORD "password" // replace with your GPRS password
- // initialize the library instance
- GSMClient client;
- GPRS gprs;
- GSM gsmAccess;
- // URL, path & port (for example: arduino.cc)
- char server[] = "arduino.cc";
- char path[] = "/asciilogo.txt";
- int port = 80; // port 80 is the default for HTTP
- void setup()
- {
- // initialize serial communications and wait for port to open:
- Serial.begin(115200);
- while (!Serial) {
- ; // wait for serial port to connect. Needed for Leonardo only
- }
- Serial.println("Starting Arduino web client.");
- // connection state
- boolean notConnected = true;
- // After starting the modem with GSM.begin()
- // attach the shield to the GPRS network with the APN, login and password
- while(notConnected)
- {
- if((gsmAccess.begin(PINNUMBER)==GSM_READY) &
- (gprs.attachGPRS(GPRS_APN, GPRS_LOGIN, GPRS_PASSWORD)==GPRS_READY))
- notConnected = false;
- else
- {
- Serial.println("Not connected");
- delay(1000);
- }
- }
- Serial.println("connecting...");
- // if you get a connection, report back via serial:
- if (client.connect(server, port))
- {
- Serial.println("connected");
- // Make a HTTP request:
- client.print("GET ");
- client.print(path);
- client.println(" HTTP/1.1");
- client.print("Host: ");
- client.println(server);
- client.println("Connection: close");
- client.println();
- }
- else
- {
- // if you didn't get a connection to the server:
- Serial.println("connection failed");
- }
- }
- void loop()
- {
- // if there are incoming bytes available
- // from the server, read them and print them:
- if (client.available())
- {
- char c = client.read();
- Serial.print(c);
- }
- // if the server's disconnected, stop the client:
- if (!client.available() && !client.connected())
- {
- Serial.println();
- Serial.println("disconnecting.");
- client.stop();
- // do nothing forevermore:
- for(;;)
- ;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement