DTMF Test

(last updated: 2003-08-15)

Purpose: Experiment with the Consumer Microcircuits Limited CMX860 Telephone Signaling Transceiver to send data via its DTMF and modem features.

Overview

The CMX860 integrated circuit has the ability to generate and decode DTMF, and it can send and receive V.23 and Bell 202 FSK. This project creates drivers to interface with this chip and it includes a program which tests the drivers and the DTMF and modem features of the CMX860.

The system is presented in the following diagram:

The Motorola HC908SR12 acts as an interface between the CMX860 and the PC. The PC sends data down which is then placed on the SPI bus interface to the CMX860. The PC runs two instances of a Java application called “jdmf”. Once instance uses COM1 and the other uses COM2. Here is what the GUI looks like:

"General Reset" causes the CMX860 to perform its general reset. "Set Control Regist.. - Tx Data" are registers in the CMX860 that are set by the contents of the edit boxes when the button to the left is pressed. Pressing "Rx Data" or "Status" causes a read of the associated CMX860 register. "DTMF Tx File" opens a file-open dialog box to open. Choose the file to send. On the other instance of jdtmf, the "DTMF Rx Log" should be selected to capture the bytes sent to it. The "Modem Tx File" and "Modem Rx Log" work the same.

Specification

- Transmit and receive data via DTMF

- Transmit and receive data via Bell 202 FSK at 1200bps

My Setup:

- Two printed circuit boards, each including the CMX860, Motorola HC908SR12, and serial port transceiver circuitry

- PC running JBuilder6 – JBuilder8 w/ Communications API, PC must have two available RS232 ports

- Two DB9 cables modified with appropriate connector for circuit board

Download (see Attachments)

jdtmf - project files for jdtmf (JBuilder project).

dtmf_test - project files for the HC908SR12 (Metrowerks CodeWarrior C for HC08 project)

Terms of Use

Home

Copyright Steven R. Nickels, 2008. All rights reserved.