Audio Scrambler and Sub-Audio Signalling Processor
CMX138A
7.5.1 Receiving and Decoding CTCSS Tones
The CMX138A is able to accurately detect valid CTCSS tones quickly, to avoid losing the beginning of
audio or data transmissions, and is able to continuously monitor the detected tone with minimal probability
of falsely dropping out. The received signal is filtered in accordance with the template shown in Figure
13, to prevent signals outside the sub-audio range from interfering with the sub-audio tone detection.
10
0
-10
-20
-30
-40
-50
-60
-70
0
200
400
600
800
1000
Frequency (Hz)
Figure 13 Low Pass Sub-audio Band Filter for CTCSS and DCS
Once a valid CTCSS tone has been detected, Status register ($C6) b11 will be set and the host µC can
then route the audio band signal to the audio output. The audio band signal is extracted from the received
signal by bandpass filtering as shown in Figure 6.
To optimise the CTCSS tone decoder, adjustable decoder bandwidths and threshold levels allow the user
to trade-off decode certainty against signal-to-noise performance when congestion or range restrict the
system performance. The tone decoder bandwidth and threshold level are set in P2.1 of the Programming
register ($C8) and the desired tone is programmed in the Audio Control register ($C2). In systems which
make use of tones 41 to 51 or other “split” tones (tones in between the frequencies of tones 1 to 40), the
CTCSS decoder bandwidth should be reduced to avoid false detection of adjacent tones.
When enabled, an interrupt will be issued when an input signal matching a CTCSS tone in Table 3
changes state (ie: on, off or to or from a different tone). If a sub-audio tone is present, but it is not one of
the valid CTCSS tones (as shown in Table 3), then it will be reported as an unrecognised tone. If a tone
other than the programmed tone is detected, it will be reported as an Invalid tone, unless Tone Cloning is
enabled, in which case it will report the detected tone number. Note that CTCSS phase changes are not
detected. If enabled, an IRQ will be generated under the following conditions:
State change from:
No Tone
Own Tone
No Tone
Unrecognised Tone
No Tone
To:
Own Tone
No Tone
Unrecognised Tone
No Tone
Invalid Tone
No Tone
IRQ
yes
yes
yes
yes
yes
yes
Tone Status value b7-0
Own Tone
$00
$FF
$00
$FF or detected Tone
$00
Invalid Tone
Tone Cloning™
Tone Cloning™ facilitates the detection of CTCSS tones 1 to 39 in receive mode which allows the device
to non-predictively detect any tone in this range. This mode is activated by programming CTCSS Tone
Number 00 (b0-7 of Audio Control register = 200 decimal). The received tone number will be reported in
the Tone Status register ($CC) and can then be programmed into the Audio Control register by the host
µC. The cloned tone will only be active when CTCSS is enabled in the Mode Control register ($C1). This
setting has no effect in Tx mode and the CTCSS generator will output no signal.
T
Tone Cloning™ is a trademark of CML Microsystems Plc.
© 2010 CML Microsystems Plc
Page 27
D/138A/2