DTMF
Transmitter TMS320C5000 DSP Code
Description:
generates digit signals to standard Dual Tone Multi-Frequency (DTMF) telephone
format. With DTMF, the 16 possible digits are each signified by pairs
of tones, one from a "low" group - 697Hz, 770Hz, 852Hz, 941Hz
- and the other from a "high" group - 1209Hz, 1336Hz, 1477Hz,
1633Hz.
To suit applications, the following
parameters are made user-programmable: low- and high-tone transmit powers,
digit-on timing, digit-off timing. For test purposes, continuous transmission
can be set. Sample rates of 8.0kHz or 9.6kHz can be operated.
The software is in the form of
four callable subroutines: one sets common-channel default parameters,
one initialises per-channel memory, one is for loading each new digit
into each digit queue, and one is for per-sample generation. The user
is responsible for supplying the codes of digits to be dialled and for
accepting each transmit sample. Digits to be dialled can be placed in
a queue whose maximum length is programmable.
In the assembler interface, the
software can be operated in a multi-channel mode: a pointer is set to
each per-channel block of memory at each sub-routine call. By making multiple
sub-routine calls, the code can also generate blocks of samples. A C-callable
wrapper can also be provided, wherein individual channels can be called
from C to generate multiple sample blocks. A user's guide is supplied.
Specification:
The values PL, PH and Ton, Toff are user-programmable.
| Per-tone
power: |
PL
& PH where PL,PH -3dBm (+6dBm is total peak power) |
| Tone
accuracy: |
0.06Hz
error |
| Digit
on-timing: |
Ton
\ with granularity in sample-rate periods - max. is 3.5secs. |
| Digit
off-timing: |
Toff
/ |
Processor
Load:
| MIPS# |
Data
memory (words) |
Prog
memory (words)# |
| 0.23 |
4(common)+12*(per
channel) |
0.15k |
-
#figures are for TMS320C54x operation with the assembler interface at
8.0kHz sampling
- *for 16-digit queue
Availability:
NOW, sale is under licence - integration support offered
|
|