SOS with variables

In the previous code, we have a SOS with simple instructions. We are going to convert simple instructions into intructions with variables. Variables are declared at the begining of the code. Remember that are many types of variables (int,byte,float,bool,double,char,...), those variables can be signed or unsigned, global variables are used all along the code and local variables are used only inside a function and do not exist outside that specific function. In this case the global variable is t=200; sometimes a variable can be constant in all the code so I can declare const int t =200;. When I declare a variable the computer keeps a space in the memory for that variable and keeps that name.

Whats the advantatge of creating a variable? You don't need to repeat all the time the same value, it's more effective because I write once and the value changes many times.

Time variable is t and sometimes is 3*t or 7*t, because the rules of the Morse code:

Another possibility is to create three variables: one is dot, another is dash and the last is space; the code will be: const int dot =200; const int dash =3*dot; const int space =7*dot;

The structure of the code is always the same:

  1. Comment about the objective and author of the code.
  2. Importing libraries needed for my code, for example, if I am using computer vision I need to import the computer vision library in order to use the computer vision instructions.
  3. Setup function contains the settings of my code: OUTPUT or INPUT, screen size,...
  4. My own functions created by myself to be used in the main code.
  5. The main code is the loop function and, in this case, contain only simple instructions with variables and do not call any functions created by me.


   const int t =200; //global variable
  
  void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {

 // const int t =200; local variable
  
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(t);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(t);                       // wait for a second

   digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(t);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(t);        

   digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(t);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(t);        

    delay(3*t);        

digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(3*t);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(t);                       // wait for a second

   digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(3*t);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(t);        

   digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(3*t);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(3*t); 

      delay(3*t);        

 digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(t);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(t);                       // wait for a second

   digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(t);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(t);        

   digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(t);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(t);        

    delay(7*t); 
}