I'm using a Mega 2560 and Uno and want to input text to the serial monitor which can be stored in character array char in[]; I want array specifically as I'll be breaking each character to trigger different code for making a morse code.
#include<Arduino.h>
//#include<Softwareserial.h>
int Speaker1 = 4;
int Speaker2 = 6;
int LED = 2;
int Relay = 12;
char n = '0';
char in[];
//int outPins[] = { 2, 4, 6, 8 };
void high() {
digitalWrite(Speaker1, HIGH);
tone(Speaker2, 800);
digitalWrite(LED, HIGH);
digitalWrite(Relay, HIGH);
}
void low() {
digitalWrite(Speaker1, LOW);
tone(Speaker2, 800);
digitalWrite(LED, LOW);
digitalWrite(Relay, LOW);
}
void setup() {
Serial.begin(9600);
pinMode(Speaker1, OUTPUT);
pinMode(Speaker2, OUTPUT);
pinMode(LED, OUTPUT);
pinMode(Relay, OUTPUT);
Serial.print("Enter your desired text: ");
//in = Serial.readString(); /*<-------------HELP NEEDED HERE */
for (int i = 0; i < strlen(in); i++) {
n = in[i];
switch (n) {
case 'A':
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'B':
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'C':
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'D':
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'E':
high();
delay(100);
low();
delay(300);
break;
case 'F':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'G':
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'H':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'I':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'J':
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'K':
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'L':
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'M':
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'N':
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'O':
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'P':
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'Q':
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'R':
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'S':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case 'T':
high();
delay(300);
low();
delay(300);
break;
case 'U':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'V':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'W':
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'X':
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'Y':
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case 'Z':
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case ' ':
delay(700);
break;
case '1':
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case '2':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case '3':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case '4':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
case '5':
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case '6':
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case '7':
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case '8':
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case '9':
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(100);
low();
delay(300);
break;
case '10':
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(100);
high();
delay(300);
low();
delay(300);
break;
}
}
}
void loop() {
}