Dmitry Kiryashov wrote: > > > Good morning\day\evening Scott ;) > > Would you be so kind to send me MATLAB program talking above ? > I'm still trying to go throw enormous difficulties with detecting DTMF > and another like DTMF signals from one bit comparator's output ;) > I think you program example will be so helpful. > The recent discussion of DTMF has rekindled my interest. In my spare time, I've been working on a MATLAB program that does: 1) Plots all 16 DTMF signals 2) Superimposes the "digitized wave form" (A square wave that is high if the dtmf signal is positive and low when its negative). 3) Measure the time between zero-crossings. I plan to add to this program: 1) The ability to vary the phase of the DTMF signals 2) The ability to vary the relative amplitude of the DTMF signals 3) The ability to add noise 4) And the biggy, decode the DTMF signal Perhaps Monday (notice I didn't specify which Monday) I'll have the results. and also, Chuck McManis wrote: > > There is an interesting twist to the DTMF decoding puzzle that makes my > original idea unsound. Basically I hadn't included the phase of the waves in > my analysis. > > In a nutshell, my idea was to sample the zero crossings of the combined > sine waves to extract a relatively unique bit pattern sequence for each tone. > This appeared clever at first but in doing the analysis it became clear that > if the phases of the two waves were allowed to move relative to one another, > there are infact quite a few bit pattern combinations that appear legally. > > To make the zero crossing detector solution somewhat easier, the system > needs to first split the tones using a highpass and a lowpass filter, then the > low tones and high tones are sampled independently through a zero crossing > detector, and then *those* bit patterns are unique, caveat noise in the > system. Actually Chuck, I think this is problem that can be solved without resorting to analog filters. It is true that the phase between the sine waves will vary and this will likewise cause the zero crossing points to wiggle around. However IMO I think you can look at say 10 or 20 milliseconds worth of zero crossing information and still extract the high and low tones. Stay tuned. Scott PS. PIC.