Learning the Basics of Morse Code
Morse code was invented to turn text into sounds.
1
In principle, it works like
a character set encoding, such as ASCII. But while ASCII encodes characters
as numbers, in Morse code they’re sequences of dots and dashes (also called
dits and dahs). Dits are shorter in length than dahs. An A is encoded as · –
and – – · · is Z.
Morse code also specifies a timing scheme that defines the length of the dits
and dahs. It specifies how long the pauses between symbols and words have
to be. The base unit of Morse code is the length of a dit, and a dah is as long
as three dits. You insert a pause of one dit between two symbols, and you
separate two letters by three dits. You insert a pause of seven dits between
two words.
To transmit a message encoded in Morse code, you need a way to emit signals
of different lengths. The classic approach is to use sounds, but we will use
an LED that is turned on and off for varying periods of time. Sailors still
transmit Morse code using blinking lights.
Let’s implement a Morse code generator!
Building a Morse Code Generator
The main part of our library will be a C++ class named
Telegraph
. In this section,
we’ll define its interface, but we will start with a new sketch that looks as
follows:
TelegraphLibrary/TelegraphLibrary.ino
void setup() {
}
void loop() {
}
This is the most minimalistic Arduino program possible. It doesn’t do anything
except define all mandatory functions, even if they are empty. We do this so
we can compile our work in progress from time to time and check whether
there are any syntactical errors. Save the sketch as
TelegraphLibrary
, and the
IDE will create a folder named
TelegraphLibrary
and a file named
TelegraphLibrary.ino
in it. All the files and directories we need for our library will be stored in the
TelegraphLibrary
folder.
1.
http://en.wikipedia.org/wiki/Morse_Code
Chapter 4. Building a Morse Code Generator Library • 62
report erratum • discuss
www.it-ebooks.info