Description
of the morse generator “Zufall-8”
8 components:
PIC 16F84A-20 (up to 20 MHz)
crystal 16 MHz
2x C 30 pF
R 15 kOhm
piezospeaker
matrix-keyboard3 x 4
battery
This device is
constructed for learnig and improvement of reception of morse code without PC
or tape-recorder. For sending practice a handkey or a paddle is connectable.
With paddles it works as a simple Iambic-keyer without dot/dash-memory.
A circuit
breaker is not necessary since the processor automatically always switches into
the sleep-mode.
Groups of 5
characters are sent in a pseudo-random way. Plain text, callsigns or Q-groups
are not sent. The spent texts can be changed in rate and pitch. Also during
hearing a step-by-step change of speed is possible. In the same way an
unchangeable increase of the speed around 1 WpM all 4 groups is possible.
The
Farnsworth-Modus can be activated to help learning higher speeds. The normal
letterspace is extended in this case. In Addition one can turn on the
Farnsworth-II-Modus, the interword spaces are extended in this case
correspondingly. The interword space is 7 + F + W element lengths at which F
and W are the parameters of Farnsworth and Farnsworth II.
The texts are
"thrown" through a pseudocoincidence selection. A control onto 3 or
more same signs following on each other does not occur. At the "dice"
an initial value is modified according to a specific algorithm and the current
RTCC value was associated with then initially. This Random-function comes from
the Basic-compiler with which I programmed. Since the device runs
RTCC-interrupt-controlled it resulted in the effect that the dicing took over
always similar RTCC-values and produced homogeneous character strings. Anyway
that was very clear at one of the first check programmes with few signs. With
increase the character count's and the other tasks' that the program still has
to carry out between the signs this effect moderated already. I added however,
one separate menu-point, in which now in fact coincidental, dependent indeed on
the time of pressing the button 1, the actual RTCC value is written into the
EEPROM. In total all 64 bytes EEPROM for that are used. The program goes
through now again and again the 64 bytes EEPROM around the signs to
"dice". Now no repetition of passages more happens. In addition one
can identify the text unambiguously through information of the initial value of
the text. One can listen therefore to all approximately 65000 possibilities to
any later times in order to compare for example the written down text again. If
one has loaded new values into the EEPROM, that does not work of course
anymore.
Service:
* Only edition of the K, you
are in the main menu
# text
1 loading of the
stored initial value 1 into the current storeroom
2 loading of the
stored initial value 2 into the current storeroom
3 loading of the
stored initial value 3 into the current storeroom
4 dies of an
initial value
5 sending of the
current initial value (2 bytes as decimals)
6 sending of the
current text speed in WpM
7 S input of the new text
speed in Wpm expected
8 decrease of the
text speed around 1 WpM
9 increase of the
text speed around 1 WpM
0 setting menu M:
0 back
1 selection of the
character set:
0
numerals, literals and special signs
1
numerals
2
literals
3
numerals and literals
4
numerals, literals, special signs, extra signs
5
numerals, literals, special signs, extra signs,
german Umlaute
6
special signs, extra signs, german Umlaute
Nothing
changes after input of 7,8 or 9
2 F input Farnsworth 0-9
3 W input Farnsworth II 0-9
4 B input command speed 0-9,
speed is then (n+1)x4
5 G input of the group number
of the texts: (n+1)x20
6 H pitch input 0-9 (488 -
1116 Hz)
7 Z to every pressure on the 1
a new value is written into the EEPROM
you start
always at register 00, but you can break out with *
8 A input of a new initial
value as 2 bytes decimal
9 changeover
switch:
U automatic
speed increase ON
K automatic
speed increase OUT
* back
# back
After every
input you are again in the main menu.
The special
signs are
, . = ? /
Following are
the extrasigns:
" - : ( ) ar sk of sn as
In the case of
speed inputs under 04 and about 63 the device itself patches. The input of 00
does not change anything. The leading zeros must be entered.
During the text
output the speed can be varied through pressing of 8 or 9 (not, however, if the
automatic speed increase is turned on). In addition people can break off with
*. The press buttons are scanned only between the signs, therefore one must
press long enough.
The speed is
computed severely to PARIS. Due to the limited solution the miscalculation with
increasing speed ascends maximally to about. 0,3 percent at speed 63 WpM.
The factors of
Farnsworth and Farnsworth II remain the case of the bill without consideration,
therefore only the sign speed is indicated. The text speed TT computes then as
follows
TT = S. x 50 / (
50 + 5 F x W + )
One can practice
therefore well for the code-examination with the attitudes F=8, W=9 and S=10.
You can connect
a handkey at RB,0. During the menu inputs or the text output the handkey is
spaced.
When you
connects a Paddle, the dash contact is connected with the same pin like the
handkey. If dots are given after dashes the “Zufall8” switches to the
Elbug-mode. This remains until approx. 10 min after the last dot input or until
a text with # is started.
Construction:
The rough draft
shows the possible Minimal variant. If one refuses on the Elbug, one can
putRA,3 onto +Ub. To the protection in front of electrostatic discharges the
manufacturer recommends R=100 ohm into the incoming lines to the portpins, one
should do it calmly in the case of the key connections.
The operating
voltage becomes from the manufacturer with 4,5 - 5,5 V indicated. 3-4 battery
or accumulator-cells are therefore the correct choice.
I read an item
just in the ARRL-manual 2002 about PICS. There they write, that 6 V absolute
O.K. would be. One could even refuse on the two Cs too. I did not try that out,
however
The power consumption
is about 6 mA. The exits RA,0 and RA,2 are maximally chargeable with 25
milliamperes. They are usually on zero and are switched if required to +Ub. The
manufacturer recommends a resistance of 270 ohms between OSC2 and the resonator
at specific crystals to avoid an overload of the crystal. This would be
dependent on the crystal dates. I refused on that.
One can connect
also a transistor with loudspeaker / headphones onto the exit instead of the piezospeaker,
the sound becomes much better. Very noble it would be to control a good sine
tone generator via RA,2.
After the
connection of the operating voltage the PIC makes a few bills and sleeps then.
Before key pressing nothing happens. The command speed on 4 WpM, the remaining
selection menu values on 0 and the text speed on 16 WpM are preset.
A lot of fun
during telegraphy practice !
Mike, DJ9BX