Note: Descriptions are shown in the official language in which they were submitted.
~;~5~
INDIVIDllAL SIMULCAST STATION CONTROL SYSTEM
Back~round of the Invention
This invention rela~es to the field of paging
simulcast transmission systems and specifically to a
simulcast transmission system in which each individual
simulcast transmitter in the system can be individually
activated or "knocked down" in response to a signal from
a paging terminal or central controller.
In the past simulcast transmission systems have
incorporated transmitting stations which remained
activated while the simulcast system was in use.
Individual remote station control systems have not been
developed with efficient signalling schemes.
Wide area coverage systems employing multiple
transmitters on the same RF channel are gaining wider
acceptance due in part to the growth of personal paging
activity. Simulcast tran~mission systems require that
each transmitter in the system produce a signal of
substantially identical frequency and modulation. This
requires that the transmitting stations in a simulcast
system be periodically adjusted 80 that critical system
parameters are satisfied. One method of calibrating a
simulcast transmission system is to selectively
deactivate certain transmitters in the system while
active transmitters are adjuRted. In a typical prior art
simulcast transmission system, service personnel would be
~, 0
- 2 -
stationed at each individual transmitter location, and
would communicate through a separate telephone line or RF
channel while manually activating and deactivating remote
simulcast transmitters to effect the calibration
procedure. Prior art simulcast systems have not included
any means for individually, efficiently and remotely
controlling simulcast transmitters through a conventional
simulcast system link.
In addition, individual simulcast transmitter
control is useful in a simulcas~ system which is designed
to generate multiple signalling schemes. A simulcast
transmitter which can generate both binary and analog
signalling formats, can be configured for individual
station control and provide a truly universal paging
system with controllable area coverage. For instance,
simulcast system would typically be configured to provide
wide area coverage in a certain area. However, paging
subscriber may desire service in only a portion of the
total available area, for instance at a large
construction site in a certain sector of a city. A
simulcast transmission system with individual station
control can provide service to the limited area
subscriber without requiring the subscriber to pay a fee
based on broad area coverage. In other words, another
benefit of individual station control is the ability to
sector paging coverage based on different tariff
8 tructures.
Summary of the Invention
Briefly described, the present invention contemplates
a paging remote control system which comprises an encoder
and decoder which interface with a paging terminal and
transmitter, respectively. The system encoder generates
a series of tones and timed pauses in response to si~nals
generated by a paging terminal and by a series of
l~S~
-- 3 --
programmable switches located within the system encoder.
The programmable switches within the system provide
sector information utilized in generating the signalling
scheme.
The paging system encoder then generates signals in
accordance with the signalling scheme. The signals are
formatted to instruct specific paging stations within the
paging simulcast system to transmit or not transmit as
instructed by the paging system encoder.
According to the signalling scheme of the present
invention, the paging system encoder will generate a high
level guard tone signal which instructs the remote
simulcast transmitters that paging signal is imminent.
The paging system encoder then generates a group of up to
10 function tones to instruct individual simulcast
transmitter station th`at they should not transmit the
subsequent paging signal. The function tone sequence is
terminated by the transmission of a keying sequence
tone.
~0 The signalling scheme is formatted to be capable of
addressing a total of thirty individual simulcast
transmitter sites through repeated use of the function
tone sequence. Addressing more than ten simulcast
transmitters requires that each function tone sequence
be delineated by a unique keying sequence tone. Any
number of stations up to 30 can be addressed by sending
the sequence of high level guard tones followed by
function tones delineated keying sequence tones.
Each of the remote paging transmitter sites is
equipped with a paging system decoder which has been
programmed by user accessible switches to respond to a
unique function and keying sequence tone, by selectively
actuating or deactuating the paging transmitter. Every
paging system decoder will actuate the paging transmitter
if its function tone/group tone signal has not been
received and the end of sequence tone is received.
~zs~z;~
It is, therefore, an object of this invention to
provide a paging simulcast remote control system and
apparatus capable of selectively deactivating any
simulcast remote transmitter used in the simulcast
system.
It is a further object of the present invention to
providing a collapsing signalling scheme where only the
specific transmitter disable tones are transmitted.
It is yet another object of the present invention to
provide a paging simulcast remote control system which
can be interlaced with conventional paging information
thereby eliminating the need for additional control lines.
It is still another object of the present invention
to provide a paging simulcast remote control system which
can be programmed to provide variable sector coverage.
Detailed Description of the Drawings
Figure 1 is a block diagram of a paging of the type
which embody the signalling scheme of the present
invention.
Figure 2 shows the signalling scheme which unifies
the operation of the encoder and decoder of the present
invention.
Figure 3 is an electrical schematic of the encoder
which generates the required signalling scheme of the
present invention.
Figures 4 through 14 are flow diagrams which define
the operation of the microcomputer used in the encoder of
Figure 3.
Figure 15 is an electrical schematic of the decoder
which decodes the required signalling scheme of the
present invention.
Figure 16 is a detailed electrical schematic of the
function tone decoder of the individual station
controller of Figure 3.
~æ~ z3
-- 5 --
Figure 17 through 28 are flow diagrams which define
the operation of the microcomputer used in the encoder of
Figure 3.
Detailed Description of the Preferred Embodiment
Figure 1 shows a block diagram of a paging system of
the type which embodies the signalling scheme utilized in
the present invention. The illustrated paging system
includes a paging terminal (10) adapted to provide analog
or binary paging signals. The paging terminal interfaces
with a modem 12 and a paging system encoder 14, The
~.odem 12 is a conventional device which converts a binary
signal from the paging terminal 10 to a frequency-shift
keying (FSK) signal used by the station encoder 14. The
paging terminal 10 cooperates with the paging system
encoder 14 by providing signals to the encoder 14 which
indicate that the paging terminal 10 is about to transmit
binary or analog signals. The encoder 14 then signals
the paging terminal 10 when the encoder is ready to
receive either type of signalling. An exact description
of the paging terminal and the interface signals required
20 by the paginy system encoder are described in Motorola
document 68P81063E15 (1982) entitled "Simulcast System
Controller and PURC Station Controller" available from
the Service Publication Department of Motorola, Inc.,
1301 East Algonquin Road, Schaumburg, Illinois, or from
Motrorola C & E Parts, 1313 East Algonquin Road,
Schaumburg, Illinois.
The encoder 14 then generates a series of tones and
timed pauses which are especially formatted and communi-
cated to a paging base station which includes station
decoder 16. The paging decoder is described in copending
patent assignee of the present invention. The decoder 16
converts the formattred signals from the encoder 14 and
selectively activates modem 18 and transmitter 20 in
-- 6 --
predetermined timed sequences as determined by the
signals from the encoder 14. The paging transmitter 20
can then be selectively switched off or turned on in
response to the signals received from the encoder 14.
The signalling scheme shown in Figure 2 has been
developed to unify the base station control functions
required in paging systems utilizing the individual
station control control feature. m e signalling scheme
shown in Figure 2 shows a control tone sequence
comprising a matrix of function tones inserted between a
high level guard tone and one or more keying sequence
tones. The matrix of function tones is used to disable
undesired stations. The control tones which are sent are
determined by sector select programming or individual
station control switches connected to the paging system
encoder.
Each simulcast transmitter station is assigned a
group and disable function tone. The signalling scheme
is designed to produce a total of 10 individual function
tones and three group or keying sequence tones. The
simulcast transmitter decoder is designed to respond to
the appropriate keying sequence and func~ion tones. If
the appropriate combination of tones is received, the
station remains disabled until the system is dekeyed,
then any disabled simulcast control modules are reset.
The individual station control scheme is designed to
be inserted into a second signalling scheme which allows
a paging simulcast transmitter to key in an analog or
binary mode. m e individual station control scheme
begins with the transmission of a high level guard tone
signal and terminates with a keying sequence tone. The
mode keying control sequence begins with the next control
tone. The exact operation of the mode keying signalling
scheme is described later in this application and a
detailed description is shown in pending Canadian patent
application serial number 451,718 entitled Paging
6Z3
-- 7 --
Universal Remote Control Syseem by Stephen Dunkerton et
al filed April 22, 1983 and assigned to the assignee of
the present invention.
The table below shows the function tones associated
5 with each station. Stations 1 through 10 are always
associated with group 1, stations 1t through 20 in group
2 and stations 21 through 30 in group 3.
Station Number Disable FT Frequency
11 21 1750 ~z
2 12 22 165û
3 13 23 1550
4 14 24 1450
15 25 1350
6 16 26 1250
7 17 27 1150
-: 15 8 18 28 1050
9 19 29 g50
20 30 750
Final Keying Sequence Tone - 1950 Hz
Group II Enable = 1850 ~z
Group III Enable = 2050 Hz
Referring now to Figure 2A, a typical single
transmitter control sequence is shown. Accordin~s to
Figure 2A, a binary paging signal is sent by first
sending a first binary pattern of 1's and O's at a 75 Hz
rate for a 100 milliseconds. This pattern is immediately
followed by the binary paging signal. An analog signal
is transmitted by sending a high level guardtone signal
immediately followed by a low level guardtone and voice
signal. To terminate the paging sequence, a turn-off
code is sent or another binary or analog paging signal
could be sent. The signalling scheme of the present
invention is inserted prior to the signalling scheme of
Figure 2A for stations equipped for individual station
control.
Figure 2B shows the required signalling of the
present invention for a simulcast transmission system
utilizing two to thirty transmitters where it is desired
that every transmitter in the system transmits the subse-
~;~5~ 3
-- 8
quent paging signal. As mentioned earlier, each station is
equipped to decode one of ten disabling function tones, as
well as one of the three keying sequence tones. ~ach
transmitter is also equipped to decode final keying sequence
tone one or 1950 H~. Therefore, according to Figure 2B, the
individual station control sequence is initiated by sending a
high level guardtone signal. Since every station is to
transmit, no function tones are sent and the high level
guardtone signal is immediately followed by the keying
sequence tone which signals the end of the function tone's
sequence~ After a pause of 120 ms, a single transmission
control sequence could be sent.
Figure 2C shows a tone sequence which will instruct a
ten-transmitter system to disable every transmitter, except
a single transmitter. The control sequence is initiated by
sending a high level guardtone signal followed by a series of
function tones with each function code corresponding to a
transmitter station to be disabled. The function tone
sequence is terminated by a keying sequence tone which is
followed by a pau,se and then a typical single transmission
control sequence.
Figure 2D shows the control sequence required for
controlling as many as ten simulcast transmitters when an
analog paging signal is the first paging signal to be
transmitted.
Figures2A, 2B and 2C have assumed that a single
transmitter control sequence begins with a binary page.
According to the paging universal remote control scheme
described in Canadian patent applicàtion seria] number
451,718, a bi~nary page is initiated by a period of pause
followed by a 75 Hz signal of binary l's and O's as described
above. However, if an analog paging signal is to be the first
signal transmitted after the simulcast transmitter control
sequence, the paging system encoder must follow the last
keying sequence tone with a period of high level guard-
~f~
tone which is immediately followed by a low level guard-
tone and analog modulation signal as shown in Figure 2D.
Figure 2E shows the individual station control
sequence required when as many as twenty transmitters are
to be individually controlled. According to Figure 2E,
the transmitter control sequence is ini~iated by sending
a period of high level guardtone followed by a group of 1
to 10 function tone signals corresponding to group one.
The group one function tone sequence is then terminated
by the transmission of a group two enable tone. As many
as ten function tones can then be sent which are
associated with the ~ransmitters configured in group two.
The group two function tone sequence i8 then terminated
by the keying sequence tone two which can then be
followed by a pause immediately followed by a single
transmitter control sequence. If an analog paging mode
was desired, keying sequence tone two (KT2) could then be
followed by a second high level guardtone signal, and
then a low level guardtone accompanied by an analo~
modulation signal.
Figure 2F shows the control tone sequence which
would be required to control as many as thirty
transmitters~ According to Figure 2F, the control tone
sequence is initiated by the transmission of a high level
guardtone signal immediately followed by the first
grouping of function tone signals. The first group of
function tone signals is then terminated by the
transmission of a first keying sequence tone KT2, which
is also a group two enable ~one. The next grouping of
function tone signals are then sent terminated by a
second keying sequence tone KT3. The third grouping of
function tone signals can then be sent terminated by a
final keying sequence tone (KT1) l950 Hz which signals
the end of the entire keying sequence. The final keying
sequence tone can then be followed by a pause and a
single transmission control sequence whereby a period of
~5~23
- 10 -
high level guardtone and a subsequent analog paging
signal.
Figure 2G shows the relationship between the time
interval required between the last binary paging signal
and the first change of transmitter control information.
According to Figure 2G, after the last binary paging
signal has been transmitted~ the paging encoder must
pause for at least 500 ms before retransmitting a high
level guard tone signal to allow the paging system
decoder to begin searching for the high level guardtone
signal.
Figure 2H shows a relationship between additional
- transmitter link stations located in the distribution
paths of the paging control sequence signal. In order to
expand the range of a paging simulcast system,
occasionally link transmitters are employed. For every
additional link transmitter employed in the paging
system, an additional 300 ms period of high level
guardtone must be added to the paging transmitter control
tone sequence.
Figure 3 is an electrical schematic of an encoder
which can generate the required signalling s~heme of the
present invention. A more de~ailed electrical schematic
of the encoder circuit of the present invention is
illustrated in Motorola document 68P81063E15 entitled
"Simulcast System Controller and PURC Station
Controller," available from the Service Publication
Department of ~otorola, Inc., 1301 East Algonquin Road,
Schaumburg, Illinois, or from Motorola C & E Parts, 1313
East Algonquin Road, Schaumburg, Illinois. In accordance
with the present invention the various paging output
terminals are provided to the respective binary, audio
and voice input terminals of the paging system encoder.
The signals are interfaced through transformers 102, 104
and 106 respectively, which provide impedance matching
end isolation between the paging terminal and the paging
system encoder. The transformers 102, 104 and 106 are
then connected to buffer amplifiers 108, 110 and 112
which compensate for gain losses in the binary modem
tones, paging tone and voice audio signals. The
amplifiers 108 and 110 are connected to variable
resistors 114 and 116 which provide further compensation
between the various paging signals. It is desirable to
adjust the binary modem tone, audio paging tones and
voice audio tones so they are substantially equal in
amplitude when they are connected to summing amplifier
126. The amplifier 112 is connected to a premphasis
network 122 which conditions the voice audio signal and
provides a standard frequency shaping used to transmit
paging voice audio to remote paging transmitters. The
premphasis network is then coupled to an amplifier 128
and a variable resistor 130 to compensate for gain
variations in this signal path. The amplifier 128 also
includes a notch filter to remove the guard tone
frequency. The variable resistors 114, 116 and 130 are
then coupled to electronic mute switches 118, 120 and
124. Mute switches 118, 120 and 124 can be any type
electronic switch adapted to pass an electrical signal in
response to an electrical control signal. The mute
switches 118, 120 and 124 are coupled to a peripheral
interface adaptor circuit (PIA) 132A.
The outputs of mute switches 118, 120 and 124 are
coupled to a summing amplifier 126 which combines the
various signals in equal proportions. The summing
amplifier is then coupled to an output amplifier 134
which is coupled to a transformer 136. The amplifier 134
and transformer 136 convert the output signal of summing
126 to a signal of amplitude and impedance required by
the wire-line hookup or transmitter link used to couple
the paging system encoder 14 to the paging system decoder
16.
~5~6Z3
- 12 -
The summing amplifier 126 also receives an input
from the variable resistor 138 which is coupled to a
programmable attenuater 140. The programmable attenuator
140 is coupled to two control signals from the peripheral
interface adaptor 132 and a tone input from the low pass
filter 142. The low pass filter 142 is coupled to a
microcomputer 144. The microcomputer 144 generates the
various control tone sequences of the paging system
encoder and provides signals to the programmable
attenuator 140 through PIA 132 to control the amplitude
of the control tones coupled to the summing amplifier
126. m e microcomputer 144 and the PIA 132 also control
the operation of the mute switches in response to several
input signals in accordance with the signalling scheme of
the present invention~ rhe present invention utilizes a
widely used microcomputer integrated circuit designated
MC6803 and available from Motorola, Inc. The companion
peripheral interface adapter integrated circuit is
designated MC6821 and is also available from Motorola,
Inc.
The paging system encoder 14 is configured to
provide direct user control via several switches, 146
through 162, which are disposed on a panel which is
accessable to the user of the encoder. The switches 146,
148, 150, and 152 are connected to input ports of the PIA
132. Switch 146 when closed will cause the paging system
encoder to enable the tone, modem and voice paths to be
enabled simultaneously to the output terminal transformer
for audio level set. Likewise switch 148 when closed
will cause a series of audio test tones, generated by
microcomputer 144 to be placed at the output terminals of
the encoder. Switches 152 and 150 are included with the
paging encoder circuit to allow the paging system to
accommodate additional RF link transmitters to be used in
a simulcast system. For example, if a paging transmitter
site is located a large distance from the paging terminal
4tj23
- 13 -
site, a repeater site will be included in the system.
Each repeater site will require a certain amount of time
to allow the repeater transmitter to key and therefore
the high level guard tone must appear for an extended
time to allow retransmission to the paging transmitter
site. Each link site requires approximately 250 ms to
retransmit the high level guard tone. Switches 150, 152
are configured to provide a binary encoded input to the
encoder circuit which activates an additional guard tone
period to be generated by the paging encoder. The high
level guard tone signal can be increased in 300 ms
increments, and a maximum of 1200 ms can be effected by
switches 150, 152. If both switches 150 and 152 are
open, no high level guard tone will be added to the
normal tone sequence. If switch 150 is open and switch
152 is closed, 300 ms of high level guard tone will be
added to the initial tone sequence. Likewise, increments
of 300 ms can be added to the high level guard tone
sequences by providing the various combinations of
switches 150 and 152.
The paging system encoder 14 is also configured to
accept group and function tone select information through
the keying mode select logic 30. The keying mode select
logic accepts switch input from several sector select
switches as well as a local key switch 154 and a three
position mode switch 56. The keying mode and select
circuit is shown in more detail in Figure 3b. The keying
and mode select switches are user programmable and are
located within the paging system encoder. The various
combinations of input switches are encoded in the keying
and mode select logic which produces a plurality of
station disable bits. The output of the keying and mode
select logic circuit 30 is coupled to 3 PIA circuits 132B
which coupled the keying and mode station disable bits
into microprocessor 144. The microprocessor 144 then
generates the appropriate sequence of function tone
l~S~6;23
-- 14 --
disable tones based on the station disable bits. This
will be described Ln more detail later. Referring now to
Figure 3b, a detailed electrical schematic for a portion
of the keying and mode select logic circuit 30. The
actual keying and mode select logic circuit consist of an
array of the circuit shown in Figure 3b and i~ described
in detail in Motorola instruction manual 68P81063E15-0
entitles "Simulcast System Controller and Paging System
Encoder" dated 1982 and available from ~otorola
Communications Electronics, 1309 E. Algonquin Road,
Schaumburg, Illinoi~.
The keying and mode select logic shown in ~igure 3b
comprises a pair of inverters 38 and 40 coupled to a pair
of NAND gates 42 and 44 respectively. These logic gate
receive inputs through swi~ches 32, 34 and 36 located on
a front panel. NOR gate~ 42 and 44 are coupled to NOR
gates 46 and 48 respectively. NOR gate 48 and 50 receive
inputs from a switch 56 which cooperates with two
resistors 62 and 64. Each transmitter is instructed key
or dekey based on these inputs by using the signals
described in Figure 3b, each paging remote transmitter
can be assigned to a particular secter as well as a
particular group. Therefore the sector feature of the
individual station control scheme does not depend on the
particular group or function tone assignment of the
remote simulcaæt station which are coupled to a power
terminal 60. The outputs of NOR gates 48 and 50 are
combined by NOR gate 52 which produces station disable
bits. The truth table for the logic circuit shown in
Figure 3b is given below:
36 0 1 0 0 1 1 0 1 X 0=Logical Low
34 0 0 0 1 0 1 1 1 X 1=Logical High
52 0 0 0 0 0 0 0 0 X X=Don't Care
54 1 1 0 1 0 1 0 0 1
58 0 0 1 0 1 0 1 1 1
SOBIT 1 1 0 0 0 1 0 1 1 High-Disable)
lZ~'lti~3
- 15 -
In addition to the function described above the
keying and mode select logic interfaces with several
sector inputs 84, 86, 88, and 90 which cooperate with
switches 74, 76, 78 and 80. These inputs are combined by
a NAND gate B2 and by diodes 66, 68, 70 and 72. These
inputs indicate to the keying and mode select circuit
that as many as four sectors of paging transmitters
should transmit.
Referring again to Figure 3a the paging system
encoder circuit cooperates with the paging terminal 10 of
Figure 1, through the clear to page voice terminal 162,
the clear to page binary terminal 160, the key analog
- terminal 156 and the key binary terminal 158. In
operation, a paging subscriber will activate the paging
terminal 10 of Figure 1, through a telephone link by
signalling the telephone number assigned to the unique
pager address. The paging terminal 10 will then convert
the telephone number to a signal comprising the exact
pager address. The paging terminal 10 then signals the
paging system encoder that a paging signal is imminent by
activating either the key analog terminal 156 or the key
binary terminal 158 depending on the type of pager being
signalled. If the key binary terminal is activated, the
paging encoder will generate the series of timed tones
and pauses which instruct the remote transmitter to key
or not and place the paging remote transmit~er site in
the binary transmission mode. When the transmitter has
been properly set up and keyed, the paging system encoder
will activate the clear to page binary terminal, and
activate the binary modem tone mute switch 113 to pass
modem tones to summing amplifier 126 and output
transformer 136. Similarly, if the system is to be
placed in the analog audio transmission mode, the paging
terminal will activate the key analog terminal 156 and
the paging system encoder will generate the series of
- 16 -
timed tones and pauses which instruct the remote
transmitter to key or not and which place the paging
remote transmitter in the analog transmission mode.
Figures 4 through 16 are flow diagrams which define
the operation of the microcomputer 144 used in the
encoder of Figure 3. Figure 4 details the operation of
the initial program sequence when power is first applied
to the paging encoder. Since it is not possible to
predict a specific logic condition which will be present
at any particular input or output terminal of the
microprocessor or PIA, the power-up sequence of Figure 4
establishes known conditions on all critical input and
~ output terminals.
When power is first applied to the paging encoder
14, the program control of the microcomputer is
configured to execute an initialization program 200.
The program control then proceeds to item 202 and
immediately sets the microcomputer interrupt mask which
insures the program will not be interrupted during the
power-up sequence. The program then initializes all
random access memory variables.
The microcomputer 144 ports can be configured to
function as either inputs or outputs to the microcomputer
and must be configured according to program control. As
noted in Figure 3, the microcomputer 144 acts as the tone
sequence generator for the paging system encoder. Any
tones which may be present at microcomputer port P2 of
Figure 3 are shut off during the power-up sequence 200 by
designating port P2 as an input. This step insures no
tones are placed on the output of the encoder circuit
until necessary.
The microcomputer 144 provides an internal tone
generator which is controlled according to the state of
an internal register. By entering a numerical value in
the timer control and status register, a corresponding
tone period will be generated by the tone circuit.
12~Z;~
According to the next item 206, the timer control and
status register are initialized and subsequently, an
arbitrary number is loaded into the TCS register.
The power-up sequence next designates the PIA ports
as input or outputs.
Referring now to Fisure 3, signals KA, KB, HO1, HO2,
TT and OA a~e coupled to PIA port A. Likewise, signals
CTPA, CTPB, MO, M~, M2, M3, AT1, AT2 are coupled to PIA
port B. In accordance with the presen~ invention, Figure
4 shows the PIA port configuration. Consequently item
210 configures PIA port A as an input and PIA port B
- configures as an output. The power-up sequence next
: initializes the values associated with PIA port B by
placing the code on the PIA port B 218 which corresponds
to opening or inhibiting all mute switches 118, 12n, 124,
125 of Figure 3, inhibiting the clear to page signals
160, 162 of Figure 3 and by adjusting the programmable
attenuator 140 of Figure 3 for maximum attenuation.
The paging system encoder makes decisions as to what
subsequent actions to effect based on two integral system
status Bytes which are an indication of the system's past
and present activity. The system status bytes are
designated New Status (NSTAT) and Old Status (OSTAT).
Since the system operation will be affected by the old
system status, for instance an analog to binary
transition, this byte must be initialized during the
power-up sequence. Item 220 sets the system status byte
OSTAT to a code comprising all binary ones, which indi-
cate that the system is currently dekeyed.
The paging system encoder is now configured with
initial conditions in critical areas which will ensure
correct system operation. Subsequently, the interrupt
mask is cleared 222, thus allowing the microprocessor to
execute interrupt commands. Timeout period 224 is
provided to allow all initial conditions on the system to
iZ3
- 18 -
stabilize. The paging encoder now enters the SCAN mode
300.
Referring now to Figure 5, there is illustrated a
flowchart embodying the scan method of the present
invention. The flowchart in Figure 5 provides a detailed
description for the process steps necessary for
implementing the scan method of the present invention in
the paging system encoder 14 in Figure 3. The scan
routine forms the basic background operating scheme of
the present invention. The primary task for the scan
routine interprets key input commands from either
hardware front panel switches or from the paging terminal
and exits to one of five tasks depending on the condition
of the key switches.
When the scan routine is activated, item 302
retrieves the system status bits D6 from the system
status bytes NSTAT and OSTAT.
Referring now to decision 306, if both system status
bytes NSTAT and OSTAT show a binary 1 in D6, which is an
indication of the hardware panel key switch, then the
system is dekeyed, and program will enter item 304. If
either data bit D6 from NSTAT or OSTAT is a binary zero,
the hardware panel key switch has been changed and the
program will enter the panel key handler (PKHNDL) routine
308. Item 304 retrieves the system status bits D1 and D~
from the system status bytes NSTAT and OSTAT. Status
bits D0 and D1 of NSTAT indicate whether the paging
system encoder is being signalled, that is either an
analog or binary paging signal is imminent from the
paging terminal 10 or modem 12 of Figure 1. Decision 310
then compares system status bits D1 and D0 which indicate
if a key command has been received from the paging
terminal. If NSTAT has not changed from the previous
period OSTAT, the program returns to the initial item of
the scan routine and continues searching for a change.
lZS~3
-- 19 --
If NSTAT has changed the system will enter item 316,
which provides a ~ms time delay. This time delay
provides enough time to detect a key bounce or an
erroneous input. Decision 318 compares the key bit D0 or
D1 with the state of the key bit D~ or D1 5ms earlier.
If a key bounce is detected, decision 318 returns program
control to the first step of the scan routine.
If a key bounce was not detected, the program
proceeds to decision 320 which examines the D0 and D1
status bits in the OSTAT status byte. If the D0 and D1
status bits show 00 which is an impossible condition at
this point in the program, the program control will exit
decision 320 and proceed to error routine 334. If an
error is not detected the program proceeds to decision
322. If the system has been previously keyed in either
the analog or binary mode, the program will proceed to
decision 326. If the system was not previously keyed,
the program will exit the scan routine and proceed to the
select modulation (SELMOD) routine 370, which will be
discussaed in more detail later.
As noted previously, if the paging system has been
previously keyed the program will proceed to decision
326. At this point, the paging system will either dekey
or change transmission modes.
If the system status bits DlD0 of NSTAT and OSTAT
indicate the sytem was previously keyed and is now
required to dekey the program will proceed to the dekey
routine 330. Alternatively, if the system status bits
D1D0 of NSTAT and OSTAT indicate the system should remain
keyed, but in another mode, the system will enter the
modulation change routine 328.
The modulation change routine 328 occurs in mixed
paging systems when binary pages are sent immediately
after a tone-signalled page or visa versa. As previously
discussed, mode information is carried on the system
status bits D1D0. Item 352 retrieves the NSTAT status
- 20 -
bits D1D0. Item 352 compares the NSTAT status bits with
the OSTAT status bits. If the NSTAT status bits D1D0 are
both equal to binary zeros, a race condition or
overlapped key request is indicated. Decision 354 will
then pass program control to item 356 which will then
update the NSTAT status byte to the current valve of
OSTAT and æubsequently select the status update routine
(REPOLL) 346.
If either NSTAT or OSTAT contains a binary one in
D1DO, the program will proceed to decision 360. If the
OSTAT status bits D1D0 show 10 and the ~STAT status bits
show 01, an analog to binary transition is indicated, and
decision 360 will select the AUDBIN routine 362, which
will be discu~æed in more detail later. If AUDBIN i3 not
selected, the Program will proceed to decision 364. If
the OSTAT status bits D1D0 show 01 and the NSTAT status
bits show 10, decision 364 will select the binary to
analog transition routine (BINA~D) 368. If BINAUD is not
selected, an error has occurred and decision 364 will
select the error routine 334.
If the error routine 334 is selected, item 332 will
reset the NSTAT status byte value to the normal value
(D1D0 = 11) indicating the system ~hould be dekeyed. The
Item 332 then selects the dekey routine 330.
When invoked, dekey routine 330 will execute the
tasks required to dekey or turn off the paging
transmitter stations and reset the paging encoder 14 for
the next key-up sequence. The dekey routine begins with
item 338 which designates microcomputer port P2 of Figure
3 as an input, thus turning off any tone appearing on the
port. The program proceeds to items 340 and 342 which
updates the PIA port B bit status instruction 80 that the
audio mute switches 118, 120, 124 and 125 of Figure 3 are
set to mute the signal paths, and so that the
programmable attenuator is set for maximum attenuation.
The program proceeds to item 344 which provides a waiting
- 21 ~ ~.%~j~tiz3
pariod required by the paging syste~ to de)cey. Tte~ 3~4
t ~en p~ocee~ s to ~e R~:POLL ro ut i ne 3 ~ 6 . ~ ro ut i r e i s
l:he end of tbe background loop. It Llpdates t~e ~urrent
s~atuc of the paging syste~l enc~der1 Ite~ 34~ replaces
5 ~he c!on~ent~ of the ~TAT regi~ter ffitb the hS'r~T stat~
values, ~nd then return~ the prc~gra~2 eo the be~i~ning of
be SC~3 routi~e 300.
~ ferring no~l to decision 32~ the sy~te~ status
bits indicate ~ key-up condition, the progra~ ~ill
10 proceed to the Qodulation ~election routine, SE~,
routine 3~0. Figure 5b 6bows the proqr~ sequence for
S~OD. ~ne SE~IOD rolltine 370 selects one o~ t~D
se~uen~ a~)~8 to be perfc~ y the paging sy~te~
encoder, depending on the sy~te~ status bits ~lD0 which
indicate the key analog ~nd key binary signals of ~he
paging ter~inal, Ite~ 37~ reads the ~STA~ status bit f~r
any ~eying acti~ity. If both status bit~ DlD0 are bina~y
zeros, a r~ce condition is indieated, and decision 376
will select Ite~ 378 giving binary priorit~ if both
2~ analog ~nd binary key ~e~uests are si~ltaneou~. Ite~
378 ~ill up~ate the RSTA~ variab~es ~ to ~ 01
condition ~nd select the key bin ro~tine 38~.
If ~he ~rA~ variables D1D0 sbo~ a n~n-~ero
condition, a decision 376 ~ill select deci~ion 380. If
the ~y~tem status bits ~0 indicate an analog p~ge,
deci~ion 380 will 6elect the ~EY~D ~outine 382. If
~EYA~D ifi ~ot seleeted, the progr~ ~ill select decision
384. If the system status bits indicate a binary page,
decision 38~ ~ill selec~ the R~rBI~ routinQ 386. If
K~Y~IN is not selected, decision ~a4 ~ select er~or
routine 33~.
~ eferring now eO Figure 6, there is illustrated a
flowchart embodyin~ the panel key handler rou~ine
(PRENDL) of the present invention, ~e PI~L routine
35 308 is use~ ~nyti~e the h~rd~are panel key s~itch is
a~tivated. PK~DL 308 begin~ ~ith decision ~02 ~hic~
-- 22 --
~ z5~ 3
e~ines the ~T ar~ O~AT D6 status bits for any
~hange . If no chanye is detected O d~ci~ion ~02 select~
the ~poll routine 3~6. If a charge is indicated,
~ecision 402 will ~elect ite~ ~06 lirhich generates o 5 ~s
ti~e pause in the progra~. ~ecision 4tO exi~ines the D~
data bit for a ~cey bo~e. If a ~ey hounce i~ detected,
progra~ control ~rill be returne~ to t~e SC.~LN r4u~ine 300.
If a key ~unce i8 not detected, ~be pro~ra~ pr~eeds to
decision ~12 ~rbic~ selects ite~ ~116, i~ a dekey co~and
tO h~s been detec'ced. Item ~t6 t~er, clears t~e
clear-to-p~ge inhibit flag, and the p~ogra~ pr~ceed~ to
the ~ OR routine~ ~ real error tlas occurre~l here, b~
the ERROE~ ~outine provides ~ proper status reset for
panel key operat ion ~
If a de~cey co~and is not detectedr decision ~112
till Pelect ite-~ 4t 4, set~ the clear-~page inhibit fla~
anl3 8et5 the test tone se~uen~e to step 1). Ite~ J,1 B then
se~s the progra~able atter~uatoe 140 and a~dio switches
118, 1201 t24 to the ~ute corsdition. Ite~ 42~ then
20 provides a 500 ~illiseeond ti~e delay before selecting
the ll~EYA~D routine 3~2, sin~e a hardware panel l;ey can
only a~ti~ate the an~log ~ode.
~igure 7 sho~,rs a ~lowchart ~dying tbe ~naloq
key-up ro~ltirle (lOEYAD9) 3~2 o~ the present invention.
25 ItEYA~D 382 is ~elected when the paging sy~te~ enc~der is
to Icey up in the ~nal~g ~e . RE~ seq~ences the tone
attenuator, calls the tone se~uencer and opens the tone
and audio siynal path~. It tl~en signal~ the pagiTq
ter~inal ~hen the pag ing ~yste~ is clear to page ~
3G When selected, ~A~rD procee~ to itel~ ~50 ~rhich
selects the high level guard tone subroutine ~ 50.
~t.<;T cause~ the hiqh-level guard tone sequen~e to ~e
placed ~t the output of the paging encoder. ~bi~ ~ill be
discussed in ~ore detail later. ~hen completed, f~LGT
35 returns progra~ c~ntrol to ite~ ~152 ~bic~ adjusts the
p~ogra~ma~le attenuator 1~0 o~ Figure 3 for ~id-level
.
~Z~
~ttenuation. The pr~gr~ proceeds to ite~ 392 which call~
the group I routin~ de~cribed in Figure 1 la . Ite~ 394
then sele~ts the group 2 routine described in Figllre 11~.
Iten 396 tber ~ele~ts the group 3 routine descrit~ed in
S Figure 11~. Ite~ ~54 then sets the ~NCI2~C or tone
gene~ato~ register to pro~duce the function tone ~requency.
Iten 456 and deciRion ~5~ ~a~e tbe function tOne tO be
produced by tbe ~i~roprocessor for ~40 Ios. When the
function tone perlod has elapsed, the progra~ ~ill prcK~eed
10 to ite~ ~160 to generate a ~uaed tone ~ignal. P~ogra~
control pr~ceefl~ to ite~ 480 w~icb read~ the PI~ ~itch
byte for ~un~ti~n tone and trans~it inhibit info~nation.
me station requires that the 1 ine YJ~r ~tay keyed in the
- arullog ~de. 4uring long function tone serings ~he line.
15 Prr s~nal bec~es inacti~e since ~LGT is not present for
~ore than 1 se~ond. S)eci~ion 482 and Itens J.~4 a 90
produce an additional period of ~L~T. If a transnit
inhibit wa~ t detected, progra~ control will proceed to
ite~ ~,88 ~hich increoents the P~A address and select~
20 decision ~6. If the last address is not indicated ite~o
480 ~ill be selecte~3 otherwise, the progr~ ~uld then
selece iter~ 4~2 ~hich adjusts t}le pro~ra~oable attenuator
1~0 of Fi~llre 3 tO d lo~ level cs~rrespondin~ to the level
required by the low le~el guard tone. Sub~equently, ite~
25 464 opens ~ute s~itch 1~0 ~orresponding to the audio
paging tones, and ite~ ~66 opens ~he re-aining t~ mute
~titcheR, Decision 468 esalines ~he clear to page
inhibit flag~ If the clear to page ~nhibit flag i~ set,
because of a hard~re panel key, the decision ~,68 will
30 ~elect the REPOLL routine 344. If the clear to page
inhibit flag i8 not ~et, deci6ion ~,68 ~ill select ite~
~l70 which enables the clear to page analog line and
inhibits the clear tC~ page binary line.
Referring no~ ~o Figure 8, there i~ illu~trated a
35 flc)wchart e~o4yin~ the binary key routine ~EYBIN~ of
the present in~ention~ When activate~, ~IN proceed~
- 24 - ~ Z ~ ~ Z 3
to item 500 which calls the HLGT routine 450.
When executed, HL~T will return pro~ram control to item
502 which adjusts the progra~mable attenuator 140 of
Figure 3 for mid-level attenuation. The program proceeds
to item 392 which calls the group 1 routine described in
Figure 11a. Item 394 then selects the group 2 routine
described in Figure 11b. Item 396 then selects the group
3 routine described in Figure 11b. The program then
proceeds to item 504 which adjusts the ENCINC register to
produce the function tone frequency. Decision 50~ causes
this tone to be placed at the output of the paging
encoder for 40 ms. The program then executes item 510
- which sets the programmable attenuator 140 of Figure 3
and mutes attenuator mute switch 125.
Item, 520 then designates microcomputer port P2 as
an input, thus inhibiting any ~one output from the micro-
processor. Item 522 and decision 524 then cause the
microprocessor to pause for a time period so that a 150
ms. pause will appear at the output of the paging
encoder. When 150 ms. has elapsed, item 526 sets the
"comma" counter for the desired number of comma cycles,
and Item 528 calls the comma routine 528. This will be
discussed in more detail later. The program then
proceeds to item 530 which enables the clear to page
binary line, inhibits the clear to page analog line and
opens the binary modem tone signal path. The program
then selects the REPOLL routine 346.
Referring now to Figure 9, there is illustrated a
flowchart embodying the high-level guard tone ~HLGT)
routine of the present invention. The high-level guard
tone signal signals a paging transmitter site that a
paging signal is imminent and the transmitter should turn
on. In a system which uses link stations to connect the
remote stations, additional periods of high-level guard
tone are required to allow each station along the link to
receive the high-level guard tone frequency.
lZ~ Z~
- 25 ~
The HLGT routine begins with item 550, which reads
the NSTAT Hop select data bits ~2D3 which reflect the
user selectable internal hardware condition of switches
which provide information as to how many link
transmitters are in use and subsequently, what time
period of high-level guard tone is required. The program
then proceeds to item 552 which adjusts the ENCINC
register to ~enerate a guard tone frequency. Item 554
then adjusts the programmable attenuator 140 of Figure 3
for high level or minimum attenuation and then opens the
microcomputer tone mute switch 125. Item 556 then
designates microprocessor port P21 of Figure 3 as an
output, thus enabling the tone output of the
- microprocessor. The program then proceeds to decisions
558, 560, 562 which examine the NSTAT status bits D2D3 to
determine the number of HLGT periods required. If no
additional guard tone is required, decision 558 will
select item 570 which will cause ~LGT to be generated for
120 ms. Similarly, if one transmitter hop is required,
decision 560 will select item 572, which will cause ~LGT
to be generated for 420 ms. If two hop periods are
required, decision 562 will select item 566 which will
cause HLGT to be generated for 720 m6. Otherwise, item
564 will be selected~ and HLGT will be generated for 1020
ms. Decision 568 examines items 570, 572, 566 or 564 and
evaluates the elapsed time depending on which item was
selected. When the HLGT sequence has elapsed, decision
568 will return the program control to the subroutine
which selected the HLGT routine.
Referring now to Figure 10, a detailed flow diagram
for the function tone generator and sequencer (SEQ)
utility module is shown. S~Q 850 begins with item 852
which establishes a pointer index value of zero. The
program proceeds to decision 854 which progressively
checks each PIA bit, that has been set by the circuitry
shown in Figure 3b, to determine if the corresponding
~'~ S~iz 3
- ~6 -
tran~mitter should be disabled. If the transmitter is
disabled, program control proceeds to item 862, Item 862
and subsequent items form the function tone generator.
Item 862 begins to generate a function tone and program
control passes to item 864. Item 864 examines an inter-
nal microprocessor timer and in cooperation with decision
866 causes the function tone to be generated for approxi-
mately 40 milliseconds. Program control then proceeds to
i~em 856. Returning now to decision 854, if the trams-
mitter was not disabled, program control proceeds direct-
ly to item 856 which increments the index. Decision 858
then examines the index. If less then ten PIA bits have
- been checked, program control returns to decision 854 to
: determine if subsequent transmitters should be disabled.
If all ten bits for the particular group have been
checked, program control returns to the subroutine which
activated the SEQ routine.
Referring now to Figure 1lA, the group 1 subroutine
described in Figure 5 is shown. Group 1 392 begins with
item 890 which reads the PIA 132B inputs as shown in
Figure 3. Item 890 searches this PIA information for
transmitter disabled status. Item 892 is then selected
which follows the sequence subroutine as described in
Figure 10. Program control then returns to the
subroutine which activated group 1 either KEYAUD 382 as
shown in Figure 7 or KEYBIN 386 as shown in Figure 8.
Figure 1lB shows group 2 subroutine 396 described in
Figure 7. Group 2 begins with item 898 which reads the
second section of PIA 132B as shown in Figure 3 for
transmitter disable status. The program then proceeds to
decision 898. If all transmitters are to be keyed, pro-
gram control returns to the subroutine which activated
the group 2 routine. If certain transmitters are to be
disabled, program control proceeds to item 900 which
generates keying sequence tone two. Item 902 and decis-
ion 904 cause the keying sequence tone to be generated
for 40 milliseconds. When the 40 milliseconds time has
GZ;3
- ~7 -
elapsed, item 906 selects the sequence routine of Figure
10. Program control then returns to the subroutine which
activated the group 2 routine.
Referring now to Figure 11C, there is shown a
detailed flow diagram for the group 3 routine 394 as
described in Figure 7. Group 3, 394 begins with item
910. This module determines which transmitters in group
3 of the simulcast sytem are to be keyed by reading the
select inputs from a section of PIA 132B as shown in
Figure 3. It then generates a keying sequence tone and
then calls the function tone sequence routine (SEQ) to
generate the required tone sequence. Also, if no
~ function tones were sent in group 2, keying sequence tone
~ 2 iQ also sent~ Item 910 reads PIA transmitter select
inputs for group 2 informa~ion. If the group 2
information indicates that no transmitters in group 2
transmitted during the last cycle, decision 912 selects
item 914 which generates keying sequence tone 2. If the
group 2 information indicated that a transmitter has been
keyed in group 2, program control proceeds directly to
item 916 which reads PIA 132B for group 3 information.
Program control proceeds to decision 918. If all
transmitters are to be keyed in group 3, program control
proceeds directly to the subroutine which selected the
group 3 routine. If every transmitter is not to transmit
within the group 3 group, program control proceeds to
item 920 which generates keying sequence tone 2. Item
922 in decision 924 cause the keying sequence tone to be
generated for approximately 40 milliseconds. Item 926
then selects the sequence subroutine described in Figure
10. Program control then passes to the subroutine which
accessed the group 3 routine.
Referring now to Figure 12, there is illustrated a
flowchart embodying the binary comma generator routine
(COMGEN) of the present invention. COMGEN generates a
burst of (N) mark-space modem tone sequences of standard
z ~;~
-- 28 --
tone frequencies at 1200 Hz or 2200 Hz for asynchronous
modems.
COMGEN begins with item 700 whlch disables all
clear-to-page signals, opens the modem tone mute switch
5 118 of Figure 3 and adjusts the programmable attenuator
140 of Figure 3 for mid-level attenuation. The program
then proceeds to item 704 which instructs the
microprocessor to generate a 1200 Hz signal by loading
the ENCINC register and designating microcomputer port
t0 P2 as an output. Item 706 then generates a time period
- which causes the 1200 Hz signal to be generated or 1.6667
- ms. This signal comprises a FSK binary one. The program
then proceeds to item 708 which instructs the
microprocessor to generate a 2200 Hz signal by addressing
the ENCINC register item 710 and then causes the 2200 Hz
signal to be generated for 1.818 ms. This signal
comprises a FSK binary zero. When this time has elapsed,
item 712 will decrement the comma counter which was
initialized by the routine utilizing the COMGEN routine.
Decision 714 examines the comma counter register. If the
comma counter is currently a non-zero value, decision 714
will return program control to item 704. If the comma
counter contains a zero value, the program will proceed
to item 716 which designates microcomputer port P~ as an
input, thus inhibiting the microprocessor tone generator.
Item 716 also closes the attenuator mute switch, disables
all clear-to-page signals and sets the programmable
attenuator or maimum attenuation. Item 71B then returns
program control to the routine which activated COMGEN.
Referring now to Figure 13, there is illustrated a
group of flowcharts embodying the time delay generator
routines of the present invention. These routines are
utilized whenever the microprocessor is required to
generate tones or pauses for a specific period of time,
as well as any other task which requires a timekeeping
function.
lZ5~Z3
- 29 -
Figure 13a shows a flowchart illustrating the timer
set routine TSET which is called by background routines
anytime an elapsed time timer is to be set up. The
microprocessor 144 of Figure 3 utilizes a 16-bit
free-running counter register (FRR) to 8enerate time
information. In addition, a second ~-bit register (TIME)
is utilized. Whenever the free-running register contains
all binary one's, an overflow will aetivate the TOFI~
interrupt routine which will increment the value stored
in TIME. Therefore, subsequent overflows will be
accumulated in TIME via the TOFIN interrupt routine.
The TSET routine 750 be8ins with item 752 which
- saves the values stored in FRR and the index register.
The program proceeds to item 754, and captures the
present time as indicated by the value of FRR. Item 756
then retrieves the required time delay value and adds
this value to the value stored in FRR. This target value
will be an indication of the value of FRR when the
desired time has elapsed. Item 758 then restores the
registers and stores the computed time in a target
register, (TARGET), and program con~rol returns to the
routine which activated TSET.
Figure 13c illustrates a flowchart showing the timer
interrupt overflow routine (TOFIN) of the present
invention. This routine is entered every time the
value stored in FRR increments to a value represented by
a binary one in every bit of the register.
TOFIN begins with item 770 which clears the timer
overflow interrupt flag allowing the timer to genera~e an
interrupt during the subsequent timeout. Item 772 then
increments the value stored in TIME. Item 774 then
services the watchdog timer. The watchdog timer is a
hardware device whieh prevents runaway conditions in the
microcomputer 144. If the watchdog timer is not
addressed within a predetermined period, the timer will
reset the microprocessor. The watchdog timer prevents
- 30 -
runaway conditions in the microcomputer. I~em 774 will
then return program control to the routine being executed
when the interrupt occurs.
Figure 13b shows the timer compare interrupt handler
routine (TONOUT) which generates a square-wave signal,
and is used for tone encoding. TONOUT generates a tone
frequency ba~ed on the value stored in the ENCINC
register. TONOUT can generate frequencies which range
from 3U0 to 3000 Hz.
TONOUT is activated anytime the value of an internal
register (TCOMPR), related to the value of ENCINC, is
equal to the value of the free-running register. When
- the TCOM~R value is equal to the value of the
: free-running register, an interrupt will activate TONUUT
15 760. Item 762 will then toggle the microprocessor port
P21. Item 764 then updates the TCOMPR register to
generate an interrupt a half period later. Item 764
subsequently returns the program control to wherever the
program was when it was interrupted.
Referring now to Figure 14, there is illustrated a
flowchart embodying the timer check routine TC~K of the
present invention. The TCHK routine decides whether the
timer interval, previously established by the TSET
routine, has elapsed. It is called by the background
routines which utilize the target parameter of Fi~ure
13. TCHK captures the present time from TIME and the
MS byte of FRR in Items 804 and 812. Item 802 saves the
TARGET time value.
Items ~16 through 856 test present time compared to
TARGET time. If present time equals or exceeds TAKGET,
TCHK returns control to the calling routine with carry
bit set. Otherwise control is returned with Carry
Clear.
The mathematics of checking for "greater than" or
"less than" is complicated by the fact that the
incremented TI~IE value will eventually set the most
i;Z3
- 31 -
significant bit. Once set, TI~IE is considered a negative
number for math functions and would test as "less than"
the TIME value just before the MSB was set. ~uch of the
logic discussed below deals with reconciling this
anomaly.
TCHK 800 begins with item 802 which saves the values
contained in the index and target registers and sets the
interrupt mask 804. Item 804 retrieves the value stored
in the TCSR register and also retrieves the value of the
TIME register most significant bit. If these values
indicate that an interrupt which would activate TOFIN is
pending, decision 806 wlll selec~ i~em 808 which
increments the value stored in TIME and resets the
- watchdog timer. The program will then proceed to item
812. If an interrupt is not pending, decision 806 will
select item 812 directly~ Item 812 retrieves the value
stored in TIME, and item 814 clears the interrupt mask.
Decision 816 compares the values of the previously
stored TARGET and TIME registers. If the values stored
in TIME have the same sign the program will proceed
through decision 818. If the target value is also
positive decision 818 will direct program control to
TSAME by selecting item 836, which calculates the
differnce between the TIME and TAXG~T registers. If TIME
minus TARGET i~ greater than zero, decision 838 will
return program control to the subroutine which selected
TC~K. If the value of TARGET minus TIME is less than
zero, the program proceeds to the NOTYET routine 842 by
selecting item 844. Item 844 clears the carry bit of the
free running register FRR. The program then proceeds to
item 848 which resetR the watchdog timer and restores the
TARGET and index registers and returns program control to
the subroutine which selected TAKGET.
Referring back to decision 818, if the value stored
in time is positivet and the value stored in target is
negative, decision 818 selects item 822 which calculates
i ~ i;Z3
- 32 -
a new value for TIME based on an estimate of the maximum
amount of time which could have elapsed since the routine
was activated. This new value is known as the latency
period. If the new value of TIME is still positive, the
routine will select NOTYET 826. If this new value of
time is now negative, the program will proceed to COMMON
828. Referring now to decision 816, if TIME is negative,
the program selects decision 830. If the value stored in
TARGET is negative, the program proceeds to TSAME 832.
If the value stored in TARGET is positive, decision 830
- will select item 834, which calculates a latency period
-: in eactly the same manner as item 822. Item 834 then
proceeds to decision 840 which evaluates the new value of
time.
If the new value of TIME shows a negative value, the
program will proceed to NOTYET 842. If the new value of
TIME is positive, decision 840 will select COMMON 828.
COMMON 828 begins with item 850 which calculates a
value equivalent to TIME-TARGET. The program then
proceeds to decision 852. If the new calcula~ed value is
negative, decision ]52 selects item 856 which sets the
carry bit and then selects the RET routine 846. If the
new calculated value is positive, decision 852 selects
the NOTYET routine 826.
Figure 15 shows a block and circuit diagram for the
paging remote station system decoder that is responsive
to the signalling scheme described in Figure 2. A more
detailed electrical schematic for the remote station
decoder is illustrated in Motorola document 68P8106E70,
published May, (1982) entitled "PURC Paging Stations"
available from the Service Publication Department of
Motorola, Inc., 1301 East Algonquin Road, Schaumburg,
Illinois, or from Motorola C & E Parts, 1313 East
Algonquin Road, Schaumburg, Illinois. The decoder
receives the page information from a local or remote
terminal at line drive 101. The station is first keyed
~ Z~4~Z3
- ~3 -
up when the decoder receives the guard tone-function
toner signal from the terminal. The line driver 101
receives the guard tone-function tone and directs it to
guard tone decoder 103. The guard tone decoder 103
detects the guard tone frequency and sends a signal A to
relay 107 and the station controller 105 which in turn
outputs a signal B to a digital modulator 109. Upon
detection of a high level guard tone by the guard tone
decoder 103, the guard tone decoder enables function tone
window tO3a which allows the function tone to pass to the
function tone decoder 201. Upon detection of the
function tone, the function tone decoder 201 generates an
output signal C which is delivered to channel element 203
which activates the channel element in preparation for
transmission of a signal. A second output from the
function tone decoder provides a signal D to the station
controller 105. Signal D tells the station controller to
key the exciter in the transmitter and thereby fully
enable the base station trar.smitter. Therefore, upon
receipt of signal D, the station controller 105 sends a
signal E to turn on exciter 205.
Signal A from the guard tone decoder 103 causes
relay 107 to open and thus place modem 207 offline.
Signal A will be removed from relay 107 and signal B is
removed from digital modulator lO9 at approximately
130-150 milliseconds after loss of guard tone. Since all
analog data is su~ned with a control tone that
corresponds to the guard tone frequency, signal A from
guard tone decoder 103 will continue to be applied to the
station controller 105 as long as analog data and its
guard tone carrier are detected. Therefore, signal A
will continue to hold open relay 107 for the duration of
guard tone plus an additional time period of
approximately 130-150 milliseconds. The function tone
decoder 201 immediately thereafter disables the function
tone window 103a with signal F.
2~
- 34 -
After the guard tone decoder 103 ceases to detect a
guard tone, signal A will be removed from the delay
enable of station controller 105 within appro~imately 70
ms. Any further signals received by the line driver from
the remote or local terminal will now be seen by the
modem 207. The modem 207 will convert the audio FSK
received from the terminal to a shifting DC voltage which
serves as an input to the transmitter site interface
209.
When the remote transmitter site interface 209
detects active data (active since the modem will consider
guard tone as a static data) it will generate a data
detect signal G which opens or disables the transmit
audio path by way of FET 301. The transmit audio path is
defined by amplifier 303, notch filter 305. The notch
filter 305 serves to notch out the guard tone frequency.
The data detect signal G will remain as long as the
transmitter site interface continues to receive binary
data from modem 207. Signal G also disables or inhibits
the guard tone decoder 103 in order to prevent the
falsing of signal A and in addition causes signal B to be
applied to digital modulator 109. The transmitter site
interface 209 passes the binary data to the digital
modulator 109 which modulates the binary data to produce
a frequency shift keying-non-return to zero output
tFSK-NRZ). The FSK output is applied to the input of
element 203 to be transmitted by the base station.
If a voice message is to follow the binary infor-
mation, another time period pause of approximately 50
milliseconds is introduced into the signalling scheme as
described in connection with Figure 2. This 50
millisecond time pause allows the transmitter site
interface 209 sufficient time to remove the signal G from
the FET 31 and station controller 105 and guard tone
decoder 103. Therefore, after binary data is no longer
detected by the transmitter site interface 209, the data
- 35 -
detect signal G is removed over approximate 50
millisecond time period. Immedia~ely thereafter, a high
level guard tone is again sent to the decoder and
detected by the guard tone decoder 103. This causes
5 signal A to be applied to the relay 107 and station
controller 15 which in turn causes signal B to be applied
to digital modulator 109.
Immediately after the high level guard tone is
received, the analog signal on the guard tone carrier is
received. The guard tone carrier keeps signal A from
guard tone decoder 103 present at the delay input of
station controller 105. The presence of low level guard
tone keeps signal A applied to relay 107 for the duration
of the voice plus the 130-150 millisecond time delay.
15 The voice message is transmitted through the audio path
and stripped of the guard tone carrier at notch filter
305. At the completion of the voice message, the guard
tone decoder 103 no lon~ser receives and detects a guard
tone and therefore signal A to the station controller 105
and relay 107 is removed.
After the loss of signal A relay 107 is closed and
the modem 207 is on line to receive any binary data from
line driver 101. Removing signal B from digital
modulator 109, the digital modulator begins a count of
25 between 275-325 milliseconds at the end of which signal
twhich appears immediately upon the appearance of signal
B) is removed from the station controller 105 which
causes signal E: to be taken away from exciter 205. Thus,
the station is dekeyed since it has not received any
additional binary or analog information for a delay in
signal H for 300 ms.
As long as any of the signals ~ and ~l appear at the
station controller 105, the output signal E will keep the
exciter 205 enabled and thus the base station transmitter
35 keyed up. By the appropriate delay in deactivating
signal B, the station controller 105 provides the decoder
5~ 3
- 36 -
ability of interactively handling binary pages and analog
pages with analog voice.
Figure 16 shows a detailed electrical schematic of
the function tone detector module 201 of Figure 15. The
function tone detector consists of a buffer register 111
which interfaces between a microprocessor 113 and the
various transmitter keying control inputs. A second
buffer register 123 connects between the microprocessor
113 and the paging transmitter control unit of Figure 15.
As noted in Figure 15, the function tone detector
controls the simulcast transmitter output through the
buffer 123 outputs. The microprocessor 113 also
interfaces with a bank of user programmable switches
which are used to select group and function tone identity
for a particular simulcast remote site. The
microprocessor 113 cooperates with an address decoder 115
and the user programmable dip switches through the buffer
117. The microprocessor 113 also cooperates with a watch
dog timer 121 which monitors the microprocessor for
abnormal program conditions.
The detailed operation of the microprocessor 113 is
defined by the flow diagrams shown in Figures 5 through
16. In general however the function tone detector 201
receives incoming function tone signals through buffer
127. These function tone signals are analyzed to
determine if a valid function tone sequence has been
received. If no valid function tones have been received
the microprocessor will examine the various PT control
signals and if instructed to do so, will key the
transmitter with the appropriate control signals.
If a valid function tone sequence has been received,
the function tone detector will prevent the simulcast
remote station from transmitting.
Referring now to Figure 17, there is shown a
structure diagram defining the hierarchical relationships
between the various program routines used in the function
- 37 -
tone detector shown in Figure 16. Upon initial
activation, the decoder of Figure 15 will first activate
the reset module which initializes the simulcast control
module at power-up time. It sets the signalling state to
search for a line push-to-talk (A) and passes control to
the background loop EXEC module 303. The EXEC module 303
is the underlying simulcast control module and background
routing module. This module schedules and calls the
background task subroutines that make up the background
subroutines that make up the background loop. It also
calls the signalling state handler modules which are
determined by the value of several of the bits in the
state variable byte. If a new state is being entered,
the set-up routine for the particular state is called
first. After this, other utility background routines are
called, and then the whole process repeats indefinitely.
Program control passes from the exec module to any of the
other six handler modules. Program control can pass from
the EXEC module 303 to PTT module 305, to the function
tone decode handle module 307, to the function tone
executor module 309, to the key-up handler 311, to the
line push-to-talk lock-~p delay handler 313, or to the
simulcast control wait de-key handler module 315. These
modules will be discussed in more detail later.
Referring now to Figure 18, there is shown the reset
module 301 of Figure 17. The reset module 306
initializes the simulcast control module at power-up
time. It sets the signalling state to search for line
push-to-talk and passes program control to the background
30 EXEC module. The reset module 301 begins with item 353
which sets the microcomputer interrupt mask to prevent
interrupt from occurring during the reset power-up
sequence. Program control then passes to item 357 which
initializes the stack pointer. Item 35g then initializes
all the RAM variables in conjunction with decision 361
which continuously clears all RAM locations until every
ti~:3
-- 38 --
memory location has been cleared. After the RAM
variables have been initialized, program control passes
to item 357 which defines PIA ports as outputs.
Figure 19 is a detailed flowchart of the background
5 EXEC module which examines the current state of the
individual station control decoder and makes a
determination which of the six utility modules should be
invoked during the next cycle. EXEC 303 begins with
item 375 which examines a memory location which indicates
10 whether EXEC has been previously invoked. Program
control proceeds to item 327 which recalls the state
- variable which defines the current status of the
individual station control decoder. Item 379 then
calculates which version of the six utility modules
15 should be invoked based on whether the utility module has
been previously invoked or not. Decision 381 examines
the state variable. If the state variable indicates that
the utility has not previously been invoked~ program
control proceeds to item 383 which updates the state
20 variable to indicate that the utility has been invoked
and then proceeds to item 385 which calls initialization
subroutine for each of the six utility modules. If the
the utility module has been previously invoked, program
control will proceed to item 387 which will pass program
25 control to whichever utility subroutine was indicated by
the state variable. Item 389 then resets the watchdog
timer bit as program control passes to EXEC.
Figure 20 shows a detailed flow diagram for the PTT
utility subroutine 305 shown in Figure 19. The PTT
30 subroutine module scans the decoder port inputs for a
line push-to-talk signal, a local push-to-talk signal or
a remote push-to-talk signal as shown in Figure 16 and
sets the CPU state variable to key up the transmitter or
to prepare to receive a function tone, i.e., enable the
35 function detector according to the inputs received. The
PTT subroutine is a two-pass routine. That is, on the
1~ZS4~;23
~ 39
first pass, PTT 305 be~ins with item 395 which utilizes
the ports P14 and P17 as outputs. Then program control
returns to the EXEC routine shown in Figure 19. On the
second and subsequent passes, program control will
proceed directly to PTT plus 3 (401) in Figure 9.
Figure 21 shows a detailed flow diagram for the ~TT
+ 3 routine. PTT + 3 begins with item 403 which reads
the appropriate PTT inputs from the PIA port, and item
405 stores this information in a RAM location. If no
activity has been indicated, pro~ram control will return
to the EXEC subroutine of Figure 19 through item 409. If
activity has been indicated, item 411 generates a 5 ms
time delay for the purposes of detecting a switch bounce.
~ Item 413 then reloads the PIA inputs and compares with
the values received before the S ms delay. If these
values do not agree, i.e., if a switch bounce has been
detected, decision 415 will pass program control to item
419 which resets the state variable to zero and clears
the state flag. Item 419 then passes program control to
the background exec module of Figure 19. If the switch
bounce was not detected, decision 417 examines the ~IA
inputs and decides if the local PTT signal or PTT control
signal has been detected. If so, item 421 sets the state
variable equal to three, clears the flags and returns
program control to the background exec module. If a PTT
has not been indicated a line PTT is indicated and,
decision 417 passes program control to item 423 which
sets the state variable equal to one, clears the flags
and returns program control to the background EXEC module
303 of Figure 19.
Figure 22 shows a detailed flow diagram for the
function tone detect program module (FTD) 307. This
module handles background tests for the function tone
decode state which is associated with state one of the
state variable. This state is entered into after a high
level guardtone has been detected. It enables the
23
- 40 -
function tone decode foreground task and locks down the
line push-to-talk signal. The system will stay in this
state until a function tone is received. If an invalid
tone or a time-out condition occurs, the system will
return to the PTT decode state. If a valid tone is
received, the system will move on to the function tone
execute state which is associated with a value of two for
the state variable. The FTD module is also a two-pass
subroute. If FTD has not been accessed by the EXEC
module earlier t the system will access the firs~ entry
point to FTD 307 which begins with item 427 which sets an
interrupt mask to prevent an interrupt while FTD is
- active. Item 429 then enables an internal microprocessor
: input associated with an internal timer and stores the
value of the current timer state. Item 431 then clears
the function tone buffer of any existing information
while item 433 initializes a tone status word (DSTAT~ to
zero indicating that guardtone has been received and
clears function tone foreground variables which are used
to detect the presence of a function tone. Item 435
activates the line push-to-talk control and enables the
function tone window control (F) of Figure 15. Item 437
stores the value of a counter in a RAM location, and the
program control proceeds to item 439 which initiali7es an
internal activity timer and passes program control to
item 441 which sets the function tone detect window
timer. All of the function tone detect variables have
been initialized at this point, and item 443 clears the
interrupt masks and passes program control back to the
background exec module 303 shown in Figure 19. DSTAI' is
generated and updated by a tone decoding foreground
routlne. This routine places a binary representation of
the tone that has been detected in four bits of DSTAT.
The routine also sets a valid tone bit and an activity
3~ bit based upon preset limit values for detected tones.
~ 41 -
Figure 23 shows a detailed flow diagram of the FTD+3
utility module which is accessed anytime FTD is indicated
by the state variable and FTD has been accessed
previously to initialize the FTD variables. FTD+3 447
begins with item 449 which recalls the tone detect status
word DSTAT. The tone detect status word DSTAT provides
an indication of whether a tone has been detected, as
well as containing a binary representation of the tone
which has been detected. In other words, every simulcast
station decoder is equipped to decode as many as sixteen
tones. If one of these tones has been detected, its
binary representation will be stored in DSTAT. Once the
DSTAT status word has been accessed, program control
~ passes to decision 451 which examines the DSTAT status
word. If DSTAT indicates that a tone has been detected,
program control proceeds to 455 which refreshes the
activity timer and clears the activity and detect flags.
Program control then proceeds to decision 457 which
examines the DSTAT status. If DSTAT indicates it is
guardtone that has been detected, program control returns
to the EXEC subroutine. If guardtone has not been
detected, item 461 searches for an empty buffer location
in the function tone buffer. Decision 463 determines
that the function tone buffer has been found. Decision
465 examines the tone stored in the particular F'T
location. If the tone in the function tone buffer
indicates this is the first tone, item 477 stores the
tone into a selective function tone buffer location. If
the tone is not the first tone decision 465 proceeds to
decision 469. Decision 469 examines the tone in the
function tone buffer. If a duplication of the previous
tone is indicated, then decision 469 passes program
control to the background EXEC subroutine shown in Figure
19. If decision 469 indicates that this is not a
duplication with previous tones, then the tone is stored
by item 477. Decision 475 examines the tone stored in
r.~ 9~ 6~ 3
- 42 -
the function tone buffer location. If a final keying
sequence tone is indicated, then program control proceeds
to item 479 which updates the state variable, adjusts it
for a value of two and clears the state flag. If a
keying sequence tone was not indicated, decision 475
returns program control to the EXEC subroutine.
Returning to item 479, once the state variable has been
updated and the state flag cleared, program control
proceeds to the exit subroutine 493.
Returning now to decision 451, if the DSTAT status
byte indicates ~hat a tone has not been detected, program
control proceeds to decision 453 which exa~ines the
function tone time window interval to see if the time for
detecting a function tone has elapsed. If the time has
not elapsed, program control proceeas to item 459 which
checks the DSTAT status word for any new activity. If
activity has been detected, decision 4~1 passes program
function tone time window interval to see if the time for
detecting a function tone has elapsed~ If the time has
not elapsed, program control proceeds to item 459 which
checks the DSTAT status word for any new activity. If
activity has been detected, decision 481 passes program
control to item 483 which refreshes the activity timer
and clears the activity flag. Program control then
returns to the EXEC background subroutine. If activity
timer time has elapsed, program control proceeds to item
491 which re-initializes the state variable and clears
the state flags and enters the exit subroutine 493. Exit
subroutine 493 begins with item 495 which disables the
capture interrupt and shuts off the function tone window
controls. Program control subsequently reverts to the
EXEC background subroutine. Returning now to decision
463, if an appropriate function tone buffer location
cannot be folmd, program control passes to decision 467
which examines the function tone buffer for an overflow
indication. If a function tone buffer overflow is
43 -
indicated, program control passes to the abort subroutine
491 as discussed earlier. If a function tone buffer
overflow is not indicated, program control returns to
item 461 to continue searching for an empty buffer
S location in the function tone buffer.
Figures 24A and B show the function tone executor
module (FTX) 309. The FT~ module is invoked by the E~.EC
background subroutine when the state variable has been
set to 2. The function tone detector module causes the
state variable to be set to 2 when a valid sequence of
function tones is received. Its purpose is to search
this stack of function tone numbers and decide whether a
- valid transmitter knock down tone was decoded in the
stack. If so, the transmitter is inhibited, if not, the
transmitter is set up for key-up. This module contains a
first pass to decide which of the functions tones to look
for, and a second pass to find the proper tone numbers.
According ~o Figure 24A the first time the FTX
module is activated, FTX 309 begins with item 501 which
reads the simulcast station con~rol decoder programming
switches for function tone group information. This
information is derived from switches within the simulcast
decoder. Item 503 then accesses the group information
from the function tone group switches. The program
proceeds to decision 505 which examines the group
information to determine if the particular simulcast
station has been programmed for group 0. If group 0
information has been detected, the group 0 subroutine 507
is invoked. The group 0 subroutine begins with item 549
as shown in Figure 24B. If group 0 is not detected the
program continues to decision 509 which examines the
group information to determine whether group 3
information has been programmed into the station control
switches. If group 3 information has been detected, the
program proceeds to item 511 which resets the group flag
information and then selects item 515. Item 515 sets the
~ ~4~jZ3
- 44 _
KT3 keying sequence tone as a start of group tone and
sets KT1 as an end of group tone. The program then
proceeds to the function tone programmer routine (FINDFT)
which begins at 519. Returning now to decision 509, if
group 3 information was not detected, the program will
proceed to decision 513. If group 2 information is
detected, the group 2 subroutine 512 will be invoked and
item 531 will set the group flag to zero and proceed to
item 533 which will set keying sequence tone 2 (KT2) as a
start of group tone and set keying sequence tone 3 (KT3)
as an end of group ~one. The program will then proceed
to the FINDFT routine 519. Returning to decision 513, if
- group 2 information was not detected, group one is
indicated and item 517 will set the group flag byte to
$FF and establish keying sequence tone 2 as an end of
group tone. The program will then proceed to FINDFT 519.
The function tone programmer subroutine FINDFT
begins with item 521. Item 521 loads the function tones
information from the paging system decoder switches.
Item 523 then sets the function tone frequency index
equal to the values indicated in the function tone switch
information. Rrogram control proceeds to item 525 which
examines the simulcast programming switches for any
activity and compares this activity with the indicated
frequency. Item 525 examines the first function tone
switch that is activated. If an active switch is
detected, decision 527 selects the found subroutine 529.
If an active switch was not detected, decision 527 will
select item 535 which will increment the frequency index
for the next function tone frequency. Pro~ram then
proceeds to item 537. If an index overflow is not
indicated, the program will again select item 525. If an
index overflow is indicated item 539 will be selected and
the group flag will be set to $ M . Item 539 will then
select subroutine SETTX 543. SETTX begins with item 545
which will set the transmit flag to ~$E'F indicating a
- 45 -
keyed-up condition which is the normal state for a remote
simulcast transmitter unless instructed to de-key. Item
547 will then return to the EXEC background routine shown
in Figure 19. Returning now to decision 527, if switch
activity was detected, the found subroutine 529 will be
selected which begins with item 541. Item 541 is invoked
when an active switch is found. This item will store the
tone which has been found in a R~l location E~ATCH for
matchup with decoded tones which are fetched in the
second pass of the FTX module. Item 541 then selects the
SETTX routine 543.
Figures 25A and B show a detailed flow diagram for
- the FTX+3 subroutine which is invoked after the FTX
: routine has been invoked previously. FTX13 matches the
function tone selected in pass one with one of the tones
in the stack received from the FTD module. FTX+3 begins
with item 549 which reads the current group flag
information. Decision 551 examines the group flag
infor~ation. If ~he ~roup fla~ status byte indicates
group zero information, then a transmitter key-up is in-
dicated, and the key-up subroutine 553 will be selected.
If group zero information is not indicated in the group
flag status plate, decision 551 will select item 555
which loads the current's function tone buffer pointer to
the start of the function tone stack to search for the
proper group and knock-down tones. The program then
enters the function tone loop 557 which begins with item
559 which begins by selecting the first function tone.
The program proceeds to item 561 which examines the first
function tone to determine i~ start of group tone has
been detected. If a group start tone has been detected,
the program will select item 563 which will reset the
group flag status byte to $FF and select the keyin~
sequence tone one check routine 567. If a start of group
tone has not been detected, item 561 will directly select
the keying sequence tone one check routine 567. Keying
6~3
- 46 -
sequence tone check routine 567 shown in Figure 13B be-
gins with decision 5977 Decision 597 examines the group
flag to determine if the keying sequence tone detected is
in ~he desired programming group. If the group tone
detected is equal to $AA, the program will proceed to the
ABORT subroutine 599 or return program control to item
565 based on the condition of the group flag. If the
group tone detected was in the desired group, decision
603 examines the tone to see if the final keying sequence
tone has been detected. If keying sequence tone one has
been detected, decision 603 will select subroutine check-
transmit 605 which begins with decision 621. If keying
~ sequence tone one was not detected, the program will
proceed to decision 607 which examineæ the group tone to
determine if an end-of-group tone has been detected~ If
an end-of-group tGne has been detected, decision 607 will
select item 609 which resets the group flag $00 and
selects the check function tone subroutine S11. If an
end-of-group tone has not been detected, decision 607
will directly select the CHKFT subroutine 611. The check
function tone subroutine begins with decision 613 which
examines the detected function tone to determine if a
function tone match exists. If a function tone match has
not been detected, decision 613 will select the get next
(GETNXT) subroutine 617 which returns program control to
item 565 in Figure 25A. If a function tone match has
been detected, item 615 will be selected and the transmit
flag will be reset to $00. Returning now to the check
transmit subroutine 605, decision 621 examines the trans-
mit flag to determine if a $FF' condition exists. If thiscondition does not exist, item ~23 will instruct the
simulcast transmitter that a knock-down condition exists
and sets the DC line disable for 90 ms. Item 625 will
then set the state variable for a wait condition and item
627 will reset the state flag D6. State flag D6 is used
in the wait 3 subroutine (315A) of Figure 27b to indicate
- 47 -
the origin of entry as FTX for service of PTTDLY on DC
line disable. Program ~ontrol will then return to the
background EXEC subroutine shown in Figure 1g. Returning
to decision 621, if a transmit flag equal to $FF
condition does exist, the key-up routine 629 will be
selected. The Key-up 629 begins with item 631 which
adjusts the system state variable to indicate the PTTDLY
routine should be selected. Item 633 then clears the
state flag and returns program control to the background
EXEC subroutine of Figure 19. Returning now to decision
597, depending on the condition of the group flag
variable decision 597 could alterna~ely select decision
601 if the beginning of group tone (KFLAG = $00) has not
been detected. Decision 601 would then check to see if
the final keying sequence tone was detected. If not,
GETNXT routine 617 will be selected. If the final keying
sequence tone one was detected, the check-transmit
subroutine 605 will be selected.
Figures 26A and 26B show a detailed flow diagram for
the line PTT lockup delay handler module 313 and 313A.
This module is activated when the state variable has been
set to 4 and provides delay between the receipt of a
keying sequence one tone by the simulcast paging system
control decoder in the event of unlocking line PTT. This
delay is 90 milliseconds and is needed to prevent the
loss of line PTT during the silent period between keying
sequence tone 1 and the binary transitions in a binary
paging keying sequence. It invoked by the FTX module if
the keying sequence tone 1 is received and the
transmitter is not disabled. If PTT has not been
selected during a prior intervale the EXEC routine will
select PTT delay 313 since the PTT delay routine does not
require the initialization of any variables PTT delay 313
immediately returns program control to the EXEC
subroutine. If PTT has been selected earlier when the
state variable has been set to 4 the EXEC routine will
;3
- 48 -
select PTT DLY3 313A which begins with item 569 which
immediately sets the state variable equal to 3 and sets
the state flag. The program proceeds to item 571 which
sets the timer to generate a 90 millisecond time interval
and than subsequently returns program control to the EXEC
background subroutine shown in Figure 19.
Figures 27A and 27B show detailed flow diagrams for
the paging system decoder key-up handler routine (KEY).
This module keys the simulcast station provided the keyed
A+ delay is active. Once keyed, the module exits to the
wait state for as long as A+ delay is present. The key
state is invoked if local PTT or remote PTT or a valid
keyin~ tone is detected by other modules. If the key
module has not been previously invoked, the EXEC routine
will select KEY routine 311 since the KEY routine does
not require initialization of variables key routing 311
immediately returns program control the EXEC routine. If
the key routine has been previously addressed, the EXEC
routine will select the KEY 3 subroutine 31lA which
begins with item 575. Item 575 reads the value of the
delayed keyed A+ flag P13 from port 1. Program control
proceeds to decision 577 which examines the delayed keyed
A+ flag. If the flag is active, program control proceeds
to the GO subroutine 581. If the flag is not active,
program control proceeds to item 579 which generates a 5
millisecond time delay. Program control proceeds to item
589 which selects delayed key A+ flag. Decision 591
examines the flag if the flag is active it will pass to
the GO routine 581. If the flag ls still not active,
decision 591 will select item 593 which sets the state
variable to 0, clears the state flag and, resets the
function tone window control and the DC line disable.
Item 593 then passes program control to the EXEC
subroutine 303 shown in Figure 19. Referring now to the
go routine 581, item 583 activates the transmitter
oscillator ground by grounding output P16. The program
623
- 49 -
then proceeds to item 585 which sets the state variable
equal to 5 to access the weight utility module. Item 587
then resets system D6 status flag, and returns program
control to the background EXEC routine 303.
Figure 28A and 28B are detailed flow diagrams of the
paging system decoder wait de-key handler utility module.
This module provides the paging system decoder de-key
function when the appropriate signal is received from
hardware. While waiting for the de-key signal it also
unlocks the line push-to-talk after an appropriate time.
This module is invoked by a valid transmitter key-up.
Figure Z8A shows the wait routine which is accessed by
the EXEC module, if the wait routine ha~ not been pre-
- viously accessed. Since this routine does not require
the initialization of variables, WAIT routine 315 returns
program control to the EXEC background routine 303. If
wait has been previously addressed, the EXEC module will
select WAIT 3 routine 315A as shown in Figure 28B. Wait
3 begins with item 641 which checks the state flag vari-
able D6 for a valid indication of a keying sequence tone.If a valid keying sequence tone has been detected decis-
ion 643 will select item 645. If the keying sequence
tone status bit D6 has not been set, program control will
pass to item 649 which checks port 1 pin 13 for delayed
keyed A+ activity~ If delayed keyed A+ signal has been
inactive, decision 651 passes program control to items
653 and 655 which reset all outputs and returns rogram
control to the EXEC subroutine. If activity was detected
at P13 program control immediately passes from decision
651 to the EXEC subroutine 303 of Figure 19. Returning
now to decision 643. If D6 flag of the status byte was
set item 645 will be selected which checks the PTT
delayed timer for current value. Decision 659 then
passes program control to item 649 if the time has not
elapsed, program control is passed to item 661 which
resets DC line disable outputs clears the state flag D6
- 50 -
and then returns program control to item 649. The state
flag D6 is set by the PTT delay module which sets the ~C
line disable timer that indicates to this module that a
key up was indicated by a valid keying tone 1 tone
detect. The flag is cleared after a ~TT delayed time
out.
In summary a paging simulcast remote control system
capable of controlling a paging base station in response
to a predetermined signalling scheme has been described.
Although the invention has been described in terms of a
preferred embodiment it will be obvious to those skilled
in the a~t that many modifications and alterations may be
made departing from the invention. Accordingly, it is
intended ~hat all such modifications and alterations be
considered as within the spirit and scope of the
invention as defined by the appended claims.
What is claimed is: