This Arduino project is a Morse Code station. Morse Code is a communication method that encodes characters as a series of dots and dashes. My circuit uses a Piezo buzzer to make the dots and dashes audible, an ATMega328P to decode the button presses and an OLED to display the entered characters.
Using the button, you tap in the Morse code, the buzzer sounds with each press of the button and the OLED display shows the decoded message.
Give one short tap for a dot and a longer tap (at least twice as long) for a dash. As soon as you enter a recognized code, the letter, or number it represents is displayed. If you pause for approximately 1.5 seconds between taps, then the display will insert a space thus allowing you to enter words. If a code is unrecognized a '?' character is displayed.