>I was wondering if anyone has used a PIC to detect dtmf. A method that comes >to mind would be to generate all the individual tones with timers based on >the RTCC/TMR0, and then compare the unknown DTMF squarewave input using an >XOR instruction to the individual tones. Any other idea's or methods? Your XOR method may work on paper; even in the simulator, but there are far too many variables to get it to work with any real reliability. There are two workable ways to solve your problem; either with a DTMF decoder chip, or use a PIC with A/D converter and use a Fast Fourier Transform (details are available in most college communications texts.