i have written the following code there are no errors but will it be possible to store each customers data in eeprom memory
will message sending take place for each customer
here is my code
#include <EEPROM.h>
#include "SoftwareSerial.h"
SoftwareSerial rfidSerial(3, 2);
SoftwareSerial SIM900( 7 , 8 );
int aBAL=1000;
int bBAL=1500;
int cBAL=2000;
const int amount1=50;
const int amount2=100;
const int amount3=150;
String a;
const int ledPin = 13;
void setup() {
pinMode (6, OUTPUT);
pinMode (A0, OUTPUT);
pinMode (A1, OUTPUT);
pinMode (A2, OUTPUT);
pinMode (4, OUTPUT);
pinMode (5, OUTPUT);
digitalWrite (4, HIGH);
digitalWrite (5, HIGH);
digitalWrite (6, LOW);
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
SIM900. begin (19200 );
SIM900. print ("AT+CMGF=1\r" );
rfidSerial.begin(9600);
digitalWrite (A2, HIGH);
delay(1000);
digitalWrite (A2, LOW);
Serial.println("WAITNG FOR A customers tag ......");
}
void loop() {
digitalWrite (A2, HIGH);
delay(1000);
digitalWrite (A2, LOW);
digitalWrite(A0, HIGH);
while(rfidSerial.available()) {
a= rfidSerial.readString();// read the incoming data as string
rfidSerial.print("customer RFID read ");
rfidSerial.print(a);
delay(1000);
digitalWrite(ledPin, HIGH);
delay(1000);
SIM900. println ( "AT + CMGS = "8433xxxxx1""); // CHANGE NUMBER TO BE MESSAGED HERE
delay(1000);
//--------------------------------------------______________________________________________
if(a=="03908807\r\n"){
Serial.println("THIS IS A");
aBAL=aBAL-amount1;
if(aBAL>=amount1){
digitalWrite(A0, LOW);
digitalWrite(A1, HIGH);
digitalWrite (6, HIGH);
delay(1000);
digitalWrite(4, LOW);
delay(750);
digitalWrite(4, HIGH);
delay(2000);
//}
SIM900. print ( "Hello, THANK YOU a, FOR USING OUR PRODUCTS YOUR BALANCE IS Rs.");
SIM900.print(aBAL);
}
else{
//void closeGATE();
digitalWrite(A1, LOW);
digitalWrite (6, LOW);
digitalWrite(A0, HIGH);
delay(1000);
digitalWrite(5, LOW);
delay(750);
digitalWrite(5, HIGH);
delay(2000);
//-----------
SIM900. print ( "Hello, THANK YOU a, FOR USING OUR GOODS BUT YOUR BALANCE IS TOO LOW PLEASE RECHARGE! ");
}
delay ( 1000);
SIM900. println (( char ) 26 );
delay ( 1000);
SIM900. println ();
digitalWrite(ledPin, LOW);
}
//--------------------------------------------____________________________________________________________________________________________
else if(a=="13703425\r\n"){
Serial.println("THIS IS B");
bBAL=bBAL-amount3;
if(bBAL>=amount3){
//void openGATE();
digitalWrite(A0, LOW);
digitalWrite(A1, HIGH);digitalWrite (6, HIGH);
delay(1000);
digitalWrite(4, LOW);
delay(750);
digitalWrite(4, HIGH);
delay(1000);
digitalWrite(ledPin, HIGH);
delay(1000);
SIM900. println ( "AT + CMGS = "8433xxxxx5""); // CHANGE NUMBER TO BE MESSAGED HERE
delay(1000);
delay(2000);
//--------------------
SIM900. print ( "Hello, THANK YOU b, FOR USING OUR GOODS YOUR BALANCE IS Rs.");
SIM900.print(bBAL);
}
else{//void closeGATE();
digitalWrite(A1, LOW);
digitalWrite(A0, HIGH);
digitalWrite (6, LOW);
delay(1000);
digitalWrite(5, LOW);
delay(750);
digitalWrite(5, HIGH);
delay(2000);
//-------------------
SIM900. print ( "Hello, THANK YOU b, FOR USING OUR GOODS BUT YOUR BALANCE IS TOO LOW PLEASE RECHARGE! ");
}
delay ( 1000);
SIM900. println (( char ) 26 );
delay ( 1000);
SIM900. println ();
digitalWrite(ledPin, LOW);
}
//-------------------------------------------________________________________________________________________________
else if(a=="03908806\r\n"){
Serial.println("THIS IS C");
cBAL=cBAL-amount2;
if(cBAL>=50){
//void openGATE();
digitalWrite(A0, LOW);
digitalWrite(A1, HIGH); digitalWrite (6, HIGH);
delay(1000);
digitalWrite(4, LOW);
delay(750);
digitalWrite(4, HIGH);
delay(1000);
digitalWrite(ledPin, HIGH);
delay(1000);
SIM900. println ( "AT + CMGS = "8433xxxxx3""); // CHANGE NUMBER TO BE MESSAGED HERE
delay(1000);
delay(2000);
//---------------
SIM900. print ( "Hello, THANK YOU c, FOR USING OUR GOODS YOUR BALANCE IS Rs.");
SIM900.print(cBAL);
}
else{
//void closeGATE();
digitalWrite(A1, LOW);
digitalWrite(A0, HIGH);
digitalWrite (6, LOW);
delay(1000);
digitalWrite(5, LOW);
delay(750);
digitalWrite(5, HIGH);
delay(2000);
//---------------
SIM900. print ( "Hello, THANK YOU c, FOR USING OUR GOODS YOUR BALANCE IS TOO LOW PLEASE RECHARGE! ");
}
//-------------------
}
//-------------------------------------------
else{ // WRONG CARD OR NO CARD
digitalWrite(A0, HIGH);
delay(1000);
digitalWrite(A0, LOW);
delay(2000);
}
delay ( 1000);
SIM900. println (( char ) 26 );
delay ( 1000);
SIM900. println ();
digitalWrite(ledPin, LOW);
delay(5000);
// void closeGATE();
digitalWrite(A1, LOW);
digitalWrite(A0, HIGH); digitalWrite (6, LOW);
delay(1000);
digitalWrite(5, LOW);
delay(750);
digitalWrite(5, HIGH);
delay(2000);
}
}