Projecte SOS

L'objectiu és crear un aparell capaç de demanar ajuda utilitzant codi Morse, i un microcontrolador o placa electrònica programable anomenada Arduino. Que progrmarem, primer amb un simulador anomenat Tinkercad i després copiarem aquest codi que funciona a un programa que és capaç d'enviar informació de codi per un cable USB des de l'ordinador fins l'arduino. Aquet programari o software s'anomena Arduino IDE i el hardware anomenat en català "maquinari" és un Arduino UNO Rev3 unit a un LED

El nostre primer codi és molt senzill perquè només utilitza instruccions simples:


    // C++ code
//SOS per demanar ajuda
void setup()//Configuració de l'Arduino és un bolc de codi obligarori i aquest bloc d codi es una funció i es una funció que configura l'Arduino i només s'executa una vegada (al principi). Els parèntesi estan buits perquè no tenen cap argument dintre que els faci canviar. Les funcion o blocs de codi sempre es posen entre claus {} i a l'interior sempre es poden instruccion simples.
{
  pinMode(13, OUTPUT);//Pin mode es una instrucció simple, indica el Mode en que en connectaré a un pin. Els pins són forats en els que connecto cables en l'Arduino. En el cas pinMode els parèntesis no estn buits sinó que tenen dos parámetres. El primer paràmetre o argument sempre és un número que correspon al número que correspon al número de foraat de l'Arduino que, en aquest cas, és el numero 13. El número 13 és especial perque t´una resisténcia interna que no veig i em permet connectar directament un led (és  l'unc pin que permet). El seguent paràmetreo l'argument s'anomena OUTPUT que significa "sortida", vol dir, que surt corrent elèctrica des de l'Arduino fis a l'exterior, perquè sinó surt corrent no s'encendrá el Led. Si poses INPUT, vol dir, "entrada de corrent", i ho fariem si tinguessim un sensor de llum perquè estaria esperant una entrada de corrent d'entre  de l'Arduino.
}

void loop()//És una unció que es repeteix de manera infinita, la única forma d'aturat serà desconnectar l'Arduino
{
  //Això és una S
  digitalWrite(13, HIGH);//S'encen el Led número 13
  //DigitalWrite significa escriure en digital, 0 o 1 el 0 es LOW o apagat el Led i el 1 es HIGH son argumens de la funció DigitalWrite de l'Arduino, i el 13 es el pin o forat e l'Arduino i HIGH és que encngui l'Arduino
  delay(200); // Manté encés 200 milisegons(s)
  digitalWrite(13, LOW);//S'apaga el Led número 13
  delay(200); // Manté apagat 200 milisegons(s)
  
  digitalWrite(13, HIGH);//S'encen el Led número 13
  delay(200); // Manté encés 200 milisegons(s)
  digitalWrite(13, LOW);//S'apaga el Led Número 13
  delay(200); // Manté apagat 200 milisegons(s)
  
  digitalWrite(13, HIGH);//S'encen el Led número 13
  delay(200); // Manté encés 200 milisegons(s)
  digitalWrite(13, LOW);//S'apaga el Led Número 13
  delay(200); // Manté apagat 200 milisegons(s)
  //Això és una O
  digitalWrite(13, HIGH);//S'encen el Led número 13
  delay(600); // Wait for 600 millisecond(s)
  digitalWrite(13, LOW);//S'apaga el Led número 13
  delay(200); // Manté apagat 200 milisegons(s)
  
  digitalWrite(13, HIGH);//S'encen el Led número 13
  delay(600); // Wait for 600 millisecond(s)
  digitalWrite(13, LOW);//S'apaga el Led número 13
  delay(200); // Manté apagat 200 milisegons(s)
  
  digitalWrite(13, HIGH);//S'encen el Led número 13
  delay(600); // Wait for 600 millisecond(s)
  digitalWrite(13, LOW);//S'apaga el Led número 13
  delay(200); // Manté apagat 200 milisegons(s)
  //Aixó és una S
  digitalWrite(13, HIGH);//S'encen el Led número 13
  delay(200); // Manté encés 200 milisegons(s)
  digitalWrite(13, LOW);//S'apaga el Led número 13
  delay(200); // Manté apagat 200 milisegons(s)
  
  digitalWrite(13, HIGH);//S'encen el Led número 13
  delay(200); // Manté encés 200 milisegons(s)
  digitalWrite(13, LOW);//S'apaga el Led Número 13
  delay(200); // Manté apagat 200 milisegons(s)
  
  digitalWrite(13, HIGH);//S'encen el Led número 13
  delay(200); // Manté encés 200 milisegons(s)
  digitalWrite(13, LOW);//S'apaga el Led Número 13
  delay(200); // Manté apagat 200 milisegons(s)
}
      

Aquest és el circuit:

Aquest és el enllaç de la meva animació Arduino SOS en Tinkercad