Technik |  Romanhefte |  Fotografie |  Wer? |  Wo? |  Humor |  Webcam |  Gästebuch |  Sitemap | 
 
Linke obere Ecke Rechte obere Ecke
Morsezeichen-Uhr

Steffen Barth (DG0MG) 23.12.2007

Geschichte

Testaufbau Morseuhr aus dem Jahr 2000
Die Idee für das nachfolgend beschriebene Projekt ist schon ein klein wenig älter. Im Jahr 2000 fragte mich Michael, DG1CMZ (damals Schüler der 9. Klasse!) was für ein Bastelprojekt mit einem Mirocontroller er mal in Angriff nehmen könnte.

Für den Einstieg in die Mikrocontrollertechnik eignen sich Uhren immer recht gut, schön wäre noch ein Zusammenhang mit dem Hobby Amateurfunk und in Richtung des "Jugend-forscht"-Wettbewerbs geschielt macht sich etwas für Behinderte immer gut.

Ich hatte also die Idee, er solle eine Uhr bauen, die sämtliche Bedienung nur mit Tasten und die Ausgabe über Morsezeichen realisiert. Ich gab ihm ein Assembler-Grundgerüst mit einem Interrupt und eine Beschreibung, wie ich mir die Bedienung ungefähr vorstelle. In recht kurzer Zeit kam auch ein funktionierendes Produkt heraus - ich spielte immer nur Tester und meckerte die noch nicht ganz perfekten Sachen an. Er baute dann noch einige Sonderwünsche mit ein - wie z.B. den abschaltbaren Stundenschlag und den Wecker.
Mein Prototyp mit Michaels Programm lag nun einige Jahre in der Bastelkiste und morste immer zur vollen Stunde die Zeit - erstaunlich, wie ergiebig so eine Lithium-Zelle doch sein kann.

Wieder ans Licht geriet die Uhr im Februar 2007 (vorerst nur gedanklich), als ich mit den Geraer Funkfreunden eine Studiotour beim MDR absolvierte. Hier waren zwei Schüler aus Hermsdorf dabei (Stefan, DO4STI und Tom, DO4TOM), die mir erzählten, sie wollten eine "Berliner Uhr" bauen, und die nötigen Leuchtdioden wären schon bei Reichelt (oder so) bestellt. Nun - grundsätzlich finde ich solche Bastelvorhaben von Schülern äußerst lobenswert, erwähnte aber trotzdem, sie sollten doch lieber etwas bauen, das noch kein anderer hat und das man vor allem irgendwohin mitnehmen kann (Die Berliner Uhr ist auf Grund des Strombedarfs der Leuchtdioden für die Hosentasche eher ungeeignet). Ich beschrieb den beiden also auf dem Weg durch das MDR-Gebäude die Funktion der CW-Uhr.

Stefan, DO4STI mit seiner CW-Uhr
Stefan, DO4STI.

Tom, DO4TOM mit seiner CW-Uhr
Tom, DO4TOM.

Peter, DJ2AX mit seiner CW-Uhr
Peter, DJ2AX.

Andreas, DL5CN mit seiner CW-Uhr
Andreas, DL5CN.

Am 1. März 2007 bekam ich dann eine Mail von Stefan, DO4STI:
[...]
Du hattest gesagt, du könnest uns (Tom, DO4TOM und mir) die Pläne und den Quellcode der CW-Uhr zukommen lassen.
[...]

Ich suchte dann also die zwischenzeitlich gezeichneten Unterlagen her und schickte den beiden die Scans und den Hexcode samt einer kurzen Beschreibung.

Nun zog das aber ein wenig größere Kreise: Rolf, DL2ARH plante, die Uhr zum Freiluftbasteltag des Ortverbandes Hermsdorf auf dem Käseberg bei Gera in etwas größerer Stückzahl zu bauen. Hierzu war eine Art Bausatz nötig. Winfried, DL2AWT fertigte in gewohnt hoher Qualität einige Platinen an und besorgte Bauteile, so dass an diesem Freiluftbasteltag am 10. Juni 2007 mehr als 10 Exemplare der Uhr auf einmal entstanden. Ein Exemplar befindet sich mittlerweile in Essentuki (im südlichsten Zipfel Russlands) bei Andy, RN6HI, der es als Geschenk von seinem Deutschlandbesuch im August 2007 mit nach Hause nehmen durfte.

Aufbau Variante 1&2 mit PIC16F84

Wie üblich ist zur Schaltung nicht allzuviel dazu. Der PIC16F84 wird im Low-Power-Oszillator-Mode bei 32,768 kHz betrieben, was einen äußerst geringen Stromverbrauch zur Folge hat. Die 3 Taster sind an IO-Pins angeschlossen und brauchen keinen Pull-up-Widerstand, da im 16F84 welche integriert sind, diese werden von der Software zugeschalten. An Pin 18 ist über einen Treibertransistor der Schallwandler (Lautsprecher o.ä.) angeschlossen, der Vorwiderstand dient zur Steuerung der Lautstärke bzw. zur Begrenzung des maximalen Stromes durch den Transistor.

Download:
Hexfiles für den PIC16F84:
CWUHR_V1.zip (Urversion von DG1CMZ)
CWUHR_V2.zip (überarbeitet, mit Sleep-Funktion)

Die Stellung der Fuses (LP, WDT off, PWRUP on)
sind im Hexfile hinterlegt.

Schaltplan der CW-Uhr mit PIC16F84

Features

  • Ausgabe der Uhrzeit 4stellig mit Stunden und Minuten beim Drücken einer Taste
  • abschaltbarer Stundenschlag (zur vollen Stunde wird selbständig zweistellig die Stunde gegeben)
  • stell- und abstellbarer Wecker
  • Schlummerfunktion ("Sleep", Nachwecken nach 5 Minuten) - nur in der überarbeiteten Firmware
  • Setup-Menü zum Stellen

Bedienung

Wie bedient man diese Uhr nun, wird sich ein Laie fragen. Wenn man das System durchschaut hat, ist es (wie immer) ganz einfach. Natürlich ist die Kenntnis von Morsezeichen ("CW") von unschlagbarem Vorteil dabei. Für alle überhaupt nicht der Morsezeichen mächtigen, hier trotzdem erstmal eine kleine Hilfe, die Zahlen sind einfach aufgebaut und auch durch abzählen zu ermitteln, weiterhin sind noch die Buchstaben A,E,H,K,M,O,S,T und W "verbaut":

0  CW 0
1  CW 1
2  CW 2
3  CW 3
4  CW 4
5  CW 5
6  CW 6
7  CW 7
8  CW 8
9  CW 9
A  CW A
E  CW E
H  CW H
K  CW K
M  CW M
O  CW O
S  CW S
T  CW T
W  CW W

Nach dem Anlegen der Betriebsspannung meldet sich die Uhr mit OK (dah-dah-dah dah-dit-dah). Dabei steht die Uhrzeit auf 00:00 Uhr, der Stundenschlag ist eingeschalten, die Weckzeit steht auf 00:00 Uhr und die Weckfunktion ist ausgeschalten. Drückt man jetzt MIN oder STD wird die Uhrzeit in 4 Ziffern ausgegeben. Durch Drücken von SET (Taster möglichst etwas versenkt angebracht) gelangt man ins Setup-Menü, bestehend aus 4 Punkten - jeweils durch Drücken von SET gelangt man zum nächsten:
  1. Uhrzeit stellen
    Ausgabe: "T hh mm", mit STD lassen sich die Stunden und mit MIN die Minuten stellen, jede Betätigung zählt den Wert um eins hoch. Hält man den betreffenden Taster gedrückt, wird selbsttätig hochgezählt, dabei werden nur kurze Dits ausgegeben, die man mitzählen kann. Zur besseren Orientierung ist das jeweils bei vollen Zehnern ein Dit-Dit. Läßt man den Taster los, wird der erreichte Wert wieder zweistellig ausgegeben.
  2. Stundenschlag Ein/Aus
    Ausgabe: "H" "E" oder "A"
    "E" bedeutet Stundenschlag ein, "A" aus. Durch Betätigen der Tasten MIN oder STD kann zwischen "Ein" und "Aus" gewechselt werden.
  3. Weckzeit einstellen
    Ausgabe: "W hh mm", Stellen wie die Uhrzeit (1).
  4. Weckfunktion Ein/Aus
    Ausgabe: "M" "E" oder "A"
    "E" bedeutet Weckfunktion ein, "A" aus. Durch Betätigen der Tasten MIN oder STD kann zwischen "Ein" und "Aus" gewechselt werden.
Letztmaliges Drücken von SET verläßt das Menü mit "Dit-Dit" als Quittung.

Ist die unter (3) eingestellte Weckzeit erreicht und der Wecker eingeschalten (4), dann beginnt der Alarm. Dieser kann durch drücken von STD oder MIN temporär beendet werden, der Wecker ist dann 5 Minuten ruhig (Schlummerfunktion) zur Quittung wird "S" ausgegeben. Nach den 5 Minuten beginnt der Alarm von neuem. Er kann durch gleichzeitiges Drücken von STD und MIN abgestellt werden oder hört nach eineinhalb Minuten Weckzeit von selbst auf.

Das alles liest sich jetzt sicher viel komplizierter, als es wirklich ist - soll man die Bedienung einer durchschnittlichen digitalen Armbanduhr in Worte fassen, kommt auch ganz schnell ein langer Text zustande.Smiley

Deshalb hier nochmal eine grafische Kurzanleitung:

grafische Kurzanleitung der CW-Uhr

Variante 3 mit PIC12F683

Nun wollte doch Andreas, DL5CN eine besonders kleine Version dieser Uhr bauen, quasi eine CW-Taschenuhr. Erstes zu verkleinerndes Bauteil ist der Mikroprozessor, es reicht ein 8beiniger PIC12F683, der auch noch billiger als der 16F84 ist, aus. Weitere Verkleinerung bringt die Verwendung von SMD-Bauteilen. Also habe ich das Programm auf den moderneren PIC portiert. Der 12F683 besitzt ja zwei interne Oszillatoren, einen bei 8MHz und einen bei "ungefähr 31kHz". Der Grund, warum ich dann doch wieder den externen Quarz genommen habe: Der 8MHz-Oszillator verbraucht zuviel Strom (Knopfzellenbetrieb!) und der bei 31khz ist als Uhr nicht zu gebrauchen, wie schon die Angabe "approximately 31kHz" im Datenblatt erahnen läßt, von Temperaturdrift ganz zu schweigen. Die Stromaufnahme dieses Aufbaus liegt bei 20µA, wenn es nicht gerade piept.

Download:
Hexfile für den PIC12F683: CWUHR_V3.zip

Die Stellung der Fuses (LP, WDT off, PWRUP on)
sind im Hexfile hinterlegt.

Schaltplan der CW-Uhr V3 mit PIC12F683
Ich habe nun meine CW-Taschenuhr erstmal auf Lochrasterplatine und ohne SMD-Bauteile aufgebaut, und das ist schon ganz schön klein geworden, wie ich finde. Drei der verwendeten Bauteile lassen sich übrigens durch Ausschlachten eines alten PC-Mainboards gewinnen: Der Knopfzellenbatteriehalter samt Knopfzelle CR2032, der magnetische Schallwandler (Piepser, ca. 40 Ohm Gleichstromwiderstand) und der Quarz 32,768 kHz. Das Ganze kommt in ein streichholzschachtelgroßes Modulgehäuse "STRAPU 2044".

CW-Uhr mit PIC12F683: Bearbeitetes Gehäuse und Lochrasterplatine
Bearbeitetes Gehäuse und Lochrasterplatine.

CW-Uhr mit PIC12F683: Nahaufnahme Platine
Platine in Nahaufnahme.

CW-Uhr mit PIC12F683: die Leiterseite mit lackisoliertem Draht
Leiterseite.

CW-Uhr mit PIC12F683
Der mittlere ist der SET-Taster.

CW-Uhr mit PIC12F683: das fertige Gerätchen
Zusammengebaut.


Siehe auch:

Externe Links:
  • Begriffserklärung Morsecode bei Wikipedia.
  • Datenblatt des Modulgehäuses STRAPU 2044
  • Für PIC-Grundlagen und Brennerschaltungen schaue man unbedingt auf die Seite von Sprut.



Startseite Seitenanfang Mail an Steffen schreiben Seitenstatistik Valid HTML 4.0 Transitional 859352   seit 22.9.2002  

Seite vom: 05.04.2008, 08:59 Uhr (Seite #28)

Linke untere Ecke Rechte untere Ecke