Voorbeeld morse

/*
Morse Code
by baz https://nanobaz.blogspot.com

Uses blink circuit with an LED on pin 13

A    • −     
B    − • • •     
C    − • − •     
D    − • •     
E    •     
F    • • − •     
G    − − •     
H    • • • •     
I    • •     
J    • − − −     
K    − • −     
L    • − • •     
M    − −     
N    − •     
O    − − −     
P    • − − •     
Q    − − • −     
R    • − •     
S    • • •     
T    −     
U    • • −     
V    • • • −     
W    • − −     
X    − • • −     
Y    − • − −     
Z    − − • •
*/
int ledPin = 13, t=100;   // LED on pin 13
                          // time constant t=100ms

void setup()
{
  pinMode(ledPin, OUTPUT);
}

void loop()  
{
  H();E();L();L();O();SPACE();W();O();R();L();D();

  delay(8*t);   // End of line pause
}

void dot()
{
  digitalWrite(ledPin, HIGH);
  delay(t);
  digitalWrite(ledPin, LOW);
  delay(1*t);
}

void dash()
{
  digitalWrite(ledPin, HIGH);
  delay(5*t);
  digitalWrite(ledPin, LOW);
  delay(1*t);
}

void A(){ dot(); dash();                 delay(2*t); }
void B(){ dash(); dot(); dot(); dot();   delay(2*t); } 
void C(){ dash(); dot(); dash(); dot();  delay(2*t); } 
void D(){ dash(); dot(); dot();          delay(2*t); }
void E(){ dot();                         delay(2*t); }
void F(){ dot(); dot(); dash(); dot();   delay(2*t); } 
void G(){ dash(); dash(); dot();         delay(2*t); }
void H(){ dot(); dot(); dot(); dot()     delay(2*t); }
void I(){ dot(); dot();                  delay(2*t); }
void J(){ dot(); dash(); dash(); dash(); delay(2*t); }   
void K(){ dash(); dot(); dash();         delay(2*t); }
void L(){ dot(); dash(); dot(); dot();   delay(2*t); } 
void M(){ dash(); dash();                delay(2*t); }
void N(){ dash(); dot();                 delay(2*t); }
void O(){ dash(); dash(); dash();        delay(2*t); }
void P(){ dot(); dash(); dash(); dot();  delay(2*t); } 
void Q(){ dash(); dash(); dot(); dash(); delay(2*t); }   
void R(){ dot(); dash(); dot();          delay(2*t); }
void S(){ dot(); dot(); dot();           delay(2*t); }
void T(){ dash();                        delay(2*t); }
void U(){ dot(); dot(); dash();          delay(2*t); }
void V(){ dot(); dot(); dot(); dash();   delay(2*t); } 
void W(){ dot(); dash(); dash();         delay(2*t); }
void X(){ dash(); dot(); dot(); dash();  delay(2*t); } 
void Y(){ dash(); dot(); dash(); dash(); delay(2*t); }   
void Z(){ dash(); dash(); dot(); dot();  delay(2*t); }
void SPACE(){ delay(4*t); }