I write code for embedded systems that have hard real-time deadlines. Flashing an LED is an inexpensive number of operations compared to most other diagnostic techniques. I can connect an oscilloscope to them to get meaningful accurate time measurements. I am not blinking out Morse code status messages (although I have considered it for some particularly squirrelly problems).
Take to another level by attaching a speaker to a PWM peripheral, now you can debug by ear, whilst driving your colleagues barmy with the beeps. The only tricky bit is working out if it was three beeps and a boop, or two beeps then a beep-boop.
I write code for embedded systems that have hard real-time deadlines. Flashing an LED is an inexpensive number of operations compared to most other diagnostic techniques. I can connect an oscilloscope to them to get meaningful accurate time measurements. I am not blinking out Morse code status messages (although I have considered it for some particularly squirrelly problems).
Take to another level by attaching a speaker to a PWM peripheral, now you can debug by ear, whilst driving your colleagues barmy with the beeps. The only tricky bit is working out if it was three beeps and a boop, or two beeps then a beep-boop.
More fun to vary the pitch and length of the beep rather than the number of beeps.