Skip to main content
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
Format the code
Source Link
Code Gorilla
  • 5.6k
  • 1
  • 16
  • 31
#include <SoftwareSerial.h>
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>
//I2C pins declaration
LiquidCrystal_I2C lcd (0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
SoftwareSerial SIM808 (10, 11);
char inchar;
const int LED = 2;

void setup ()  
{

    Serial.begin (9600);
    SIM808.begin (9600);
    delay (10000);
    SIM808.print ("AT+CMGF=1\r");
    delay (100);
    SIM808.print ("AT+CNMI = 2,2,0,0,0\r");
    delay (100);

    lcd.begin (16, 2);
    lcd.backlight ();

    delay (1000);

    pinMode (LED, OUTPUT);
    digitalWrite (LED, HIGH);
}

void loop ()  
{
    if (SIM808.available () > 0)
    {
        inchar = SIM808.read ();
        if (inchar == '#')
        {
            lcdShow (inchar);
            delay (10);
            inchar = SIM808.read ();
            if (inchar=='a'inchar == 'a')
            {
                lcdShow (inchar);
                delay (10);
            inchar=SIM808    inchar = SIM808.read ();
                if (inchar=='0'inchar == '0')
                {
                    lcdShow (inchar);
                    digitalWrite (LED, LOW);
                }
                else if (inchar=='1'inchar == '1')
                {
                    lcdShow (inchar);
                    digitalWrite (LED, HIGH);
                }
            }
        }
        SIM808.println ("AT+CMGD = 1,4");
    }

}

void lcdShow (char i)
{
    lcd.setCursor (0, 0);
    lcd.print (i);
    delay (5000);

}
#include <SoftwareSerial.h>
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>
//I2C pins declaration
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
SoftwareSerial SIM808(10,11);
char inchar;
const int LED = 2;

void setup() {

Serial.begin(9600);
SIM808.begin(9600);
delay(10000);
SIM808.print("AT+CMGF=1\r");
delay(100);
SIM808.print("AT+CNMI = 2,2,0,0,0\r");
delay(100);

lcd.begin(16,2);
lcd.backlight();

delay(1000);

pinMode(LED, OUTPUT);
digitalWrite(LED, HIGH);
}

void loop() {
if(SIM808.available() > 0) {
    inchar = SIM808.read();
    if(inchar == '#') {
        lcdShow(inchar);
        delay(10);
        inchar = SIM808.read();
        if(inchar=='a') {
            lcdShow(inchar);
            delay(10);
            inchar=SIM808.read();
            if(inchar=='0') {
                lcdShow(inchar);
                digitalWrite(LED, LOW);
            }
            else if(inchar=='1')  {
                lcdShow(inchar);
                digitalWrite(LED, HIGH);
            }
        }
    }
    SIM808.println("AT+CMGD = 1,4");
}

}

void lcdShow(char i)
{
lcd.setCursor(0,0);
lcd.print(i);
delay(5000);

}
#include <SoftwareSerial.h>
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>
//I2C pins declaration
LiquidCrystal_I2C lcd (0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
SoftwareSerial SIM808 (10, 11);
char inchar;
const int LED = 2;

void setup () 
{

    Serial.begin (9600);
    SIM808.begin (9600);
    delay (10000);
    SIM808.print ("AT+CMGF=1\r");
    delay (100);
    SIM808.print ("AT+CNMI = 2,2,0,0,0\r");
    delay (100);

    lcd.begin (16, 2);
    lcd.backlight ();

    delay (1000);

    pinMode (LED, OUTPUT);
    digitalWrite (LED, HIGH);
}

void loop () 
{
    if (SIM808.available () > 0)
    {
        inchar = SIM808.read ();
        if (inchar == '#')
        {
            lcdShow (inchar);
            delay (10);
            inchar = SIM808.read ();
            if (inchar == 'a')
            {
                lcdShow (inchar);
                delay (10);
                inchar = SIM808.read ();
                if (inchar == '0')
                {
                    lcdShow (inchar);
                    digitalWrite (LED, LOW);
                }
                else if (inchar == '1')
                {
                    lcdShow (inchar);
                    digitalWrite (LED, HIGH);
                }
            }
        }
        SIM808.println ("AT+CMGD = 1,4");
    }

}

void lcdShow (char i)
{
    lcd.setCursor (0, 0);
    lcd.print (i);
    delay (5000);

}
Source Link
opu 웃
  • 123
  • 1
  • 2
  • 6

Turning LED On/Off by using SIM808 with Arduino Mega

I am trying to turn an LED on/off by using GSM 808 module. Here #a0 = LED off and #a1 = LED on. I have used lcdShow function to display characters in LCD display. But nothing appears on display. What is wrong in this code?

#include <SoftwareSerial.h>
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>
//I2C pins declaration
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
SoftwareSerial SIM808(10,11);
char inchar;
const int LED = 2;

void setup() {

Serial.begin(9600);
SIM808.begin(9600);
delay(10000);
SIM808.print("AT+CMGF=1\r");
delay(100);
SIM808.print("AT+CNMI = 2,2,0,0,0\r");
delay(100);

lcd.begin(16,2);
lcd.backlight();

delay(1000);

pinMode(LED, OUTPUT);
digitalWrite(LED, HIGH);
}

void loop() {
if(SIM808.available() > 0) {
    inchar = SIM808.read();
    if(inchar == '#') {
        lcdShow(inchar);
        delay(10);
        inchar = SIM808.read();
        if(inchar=='a') {
            lcdShow(inchar);
            delay(10);
            inchar=SIM808.read();
            if(inchar=='0') {
                lcdShow(inchar);
                digitalWrite(LED, LOW);
            }
            else if(inchar=='1')  {
                lcdShow(inchar);
                digitalWrite(LED, HIGH);
            }
        }
    }
    SIM808.println("AT+CMGD = 1,4");
}

}

void lcdShow(char i)
{
lcd.setCursor(0,0);
lcd.print(i);
delay(5000);

}