In the decoder designed for the DTMF Link project, a Holtek HT9170B does the main job. The natural counterpart of the HT9200B used in the associated encoder (described elsewhere in this publication), the HT9170B is a Dual Tone Multi-Frequency (DTMF) receiver with an integrated digital decoder and band split filter functions. Then IC uses digital counting techniques by means of a 3.58 MHz crystal to detect and decode all the 16 DTMF tone pairs into 4-bit words. Highly accurate switched capacitor filters are employed to divide DTMF signals into low and high group signals. A built-in dial tone rejection circuit is provided to eliminate the need for prefiltering. The HT9170B is pin to pin equivalent to the famous (and dearer) MT8870 from Mitel. Both DTMF decoder chips can be ordered from Futulec (www.futurlec.com). The table shows the correspondence between the frequency pairs and the 4-bits words obtained from the decoder output.
In the circuit, a CD4099 acts as an 8-bit addressable latch. Data is held on the D input, and the address of the latch into which the data is to be entered is held on the A0, A1, and A2 inputs. When the Enable input is taken Low, the data is copied through to the addressed output. The data is stored when the Enable input transitions from logic Low to High. All unaddressed latches will remain unaffected. With Enable logic High, the device is deselected, and all latches remain in their previous state, unaffected by changes on the data or address inputs. To eliminate the possibility of entering erroneous data into the latches, Enable should be held High (i.e. inactive) while the address lines are changing. When the DTMF decoder receives a valid tone pair, its STD output goes High; otherwise it remains Low. Since the Enable input of latch IC2 needs a negative-going pulse for ‘strobing’ an output, the logic condition has to be reversed by means of transistor T1.
The state of the individual Q0–Q7 outputs (brought out to pins on K1) represents the active/inactive active state of pushbuttons S1–S9. Only one of the Q0–Q7 outputs switches its logical state. Actually the correspondence is in reverse order, i.e. by pressing S1 on the encoder output Q7 will be affected, S2 will affect Q6, S3, Q5 and so on until S8 which will control the Q0 output.
The output signals on K1 have CMOS swing and the maximum output sink/source current specification of the CD4099 must be observed — the specification will differ between manufacturers so find that datasheet in case of doubt. As examples that will work safely in most cases, low-current LEDs with commoned cathodes may be connected up to K1 via 2.2 kΩ resistors. The same value for the LEDs in type TIL199 optocouplers, while 470 Ω is recommended for a MOC3020M. Whatever you connect up to K1, make sure the CD4099 outputs are not overloaded.
Like the encoder, the decoder can be built on prototyping board, but feel free to design your own PCB.
The encoder/decoder combination may communicate either via a 2-wire line (of considerable length), wirelessly using an approved audio transmitter and a receiver, or over AC powerlines using suitable interfaces.