I hope someone with the expertise to answer the following and the authority to edit...
http://arduino.cc/en/Reference/Tone
... will improve one thing, and address another there...
a) The page currently says...
"If you want to play different pitches on multiple pins, you need to call noTone() on one pin before calling tone() on the next pin"...
Does this mean you can, say, produce a middle C on pin 4 AT THE SAME TIME as, say, an F on pin 5?
If not, why introduce all the stuff about multiple pins. If so.. what does calling noTone() do? To someone who isn't used to the Tone library, it would seem than "noTone()" would stop the generation of the square wave.
b) I assume that the library is non-blocking... but it would be nice to have an explicit reassurance on the reference page. By "non-blocking", I mean, for a simple example, that I could, with a speaker on pin 3, a momentary switch on pin 4, and an LED on pin 5 set up a program tp....
Start a tone sounding when the program starts... it should run continually...
.... and in loop(), pseudo code here...
if pin 4 low, switch LED on, else switch it off.
Thanks, Tone experts!