For this tutorial, you’ll need:
Watch this full video:
First Version of Code:
void setup() { Serial.begin(9600); for (int thisPin = 2; thisPin < 7; thisPin++) { pinMode(thisPin, OUTPUT); } } void loop() { if (Serial.available() > 0) { int inByte = Serial.read(); switch (inByte) { case 97: //a = 97 Serial.println("You've entered a"); digitalWrite(2, HIGH); delay(2000); break; case 98: digitalWrite(3, HIGH); Serial.println("You've entered b"); break; case 99: digitalWrite(4, HIGH); Serial.println("You've entered c"); break; case 100: digitalWrite(5, HIGH); Serial.println("You've entered d"); break; case 101: digitalWrite(6, HIGH); Serial.println("You've entered e"); break; default: for (int thisPin = 2; thisPin < 7; thisPin++) { digitalWrite(thisPin, LOW); } break; } } }
Second Version of Code:
int i = 0; int enter =0; int done = 0; char wordFromUser[100]; void setup() { // initialize serial communication: Serial.begin(9600); // initialize the LED pins: } // A = 65 Z = 90 a = 97 z = 122 ? = 63 end of the line (enter) = 10 void loop() { if(done ==0) { memset(wordFromUser, 0, sizeof(wordFromUser)); //Clear the table } while(enter ==0) { if (Serial.available() > 0) { int inByte = Serial.read(); if(inByte ==10) { enter =1; done=1; } else { wordFromUser[i]=inByte; i=i+1; } } } if(enter==1) { String stringUser = String(wordFromUser); if(stringUser.equals("Hello")) //case sensitive hello doesn't work { Serial.println("Ahlan"); i=0; enter =0; done =0; } if(stringUser.equals("Kifik?")) { Serial.println("Mniha w inta?"); i=0; enter =0; done =0; } if(stringUser.equals("Hamdellah")) { Serial.println("Good!"); i=0; enter =0; done =0; } if(stringUser.equals("Chou fike Ta3mle?")) { Serial.println("Natretak t2ele..."); i=0; enter =0; done =0; } if(stringUser.equals("Bye")) { Serial.println("Allah ma3ak, ntebih 3al tari2 inta w rayi7, Iza lta2et bel 3askar l 3esmene ma tghayir tari2ak, 3am bi la2to s3edin"); i=0; enter =0; done =0; } } }