Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <LiquidCrystal_I2C.h>
- #include <Wire.h>
- int _GSM_TXPIN_ = 10;
- int _GSM_RXPIN_ = 11;
- #include "SIM900.h"
- #include <SoftwareSerial.h>
- #include "inetGSM.h"
- LiquidCrystal_I2C lcd(0x27, 20, 4);
- InetGSM inet;
- int sensor = 52;
- int count = 0;
- int lastSensorState = 0;
- boolean started = false;
- void setup() {
- pinMode(sensor, INPUT);
- Serial.begin(9600);
- delay(2000);
- Serial.println("Start LCD");
- lcd.init();
- lcd.backlight();
- lcd.clear();
- lcd.print("Starting...");
- //
- if (gsm.begin(4800)) {
- Serial.println("\nstatus=READY");
- started = true;
- } else Serial.println("\nstatus=IDLE");
- lcd.clear();
- lcd.print("status=READY");
- if (started) {
- //viettel v-internet / mobi m-wap
- if (inet.attachGPRS("m-wap", "mms", "mms")) {
- Serial.println("status=ATTACHED");
- lcd.clear();
- lcd.print("status=ATTACHED");
- }
- else Serial.println("status=ERROR");
- delay(1000);
- //Read IP address.
- gsm.SimpleWriteln("AT+CIFSR");
- count = updateServer();
- }
- updateLCD(count);
- }
- void loop() {
- int sensorState = digitalRead(sensor);
- if (sensorState != lastSensorState) {
- if (sensorState == HIGH) {
- Serial.println("Sensor on");
- count++;
- updateLCD(count);
- updateServer();
- } else {
- Serial.println("Sensor off");
- }
- }
- lastSensorState = sensorState;
- delay(50);
- }
- void updateLCD(int count) {
- lcd.clear();
- lcd.print("so nguoi");
- lcd.setCursor(0, 1);
- lcd.print(count);
- }
- int updateServer() {
- char res[250];
- int numdata = 0;
- numdata = inet.httpPOST("mayruatay.ga", 80, "/update", "", res, 255);
- Serial.println("SENT");
- delay(500);
- //Print the results.
- // Serial.print("Respond length: ");
- // Serial.print(numdata);
- // Serial.print(" | Data received: ");
- // Serial.println(res);
- return atoi(res);
- }
Add Comment
Please, Sign In to add comment