Hexadezimale Tastatur fuer PC

background image

Die Hex-Tastatur wird zwischen den PC
und die PC-Tastatur geschaltet und bil-
det gleichzeitig eine mitunter benötig-
te Verlängerung des Tastaturkabels.
Mit der Hex-Tastatur sind folgende
Funktionen möglich:

➧ Ausgabe der kleinen Buchstaben a

bis f

➧ Ausgabe der großen Buchstaben A

bis F bei aktiver Shift- oder Caps-
Lock-Taste der PC-Tastatur. Möchte
man vermeiden, daß die Ziffernta-
sten mit der Zweitbelegung der
alphanumerischen Tastatur ausge-
geben wird, sollte man die #-Taste
der Hex-Tastatur aktivieren.

➧ Ausgabe der Ziffern 0 bis 9 entspre-

chend der alphanumerischen Zif-
ferntasten

➧ Ausgabe der Ziffern 0 bis 9 entspre-

chend der numerischen Ziffernta-
sten bei aktiver #-Taste der Hex-
Tastatur und aktiver NUM-Taste der
PC-Tastatur

➧ Ausgabe der Cursorsteuerung ent-

sprechend den numerischen Zif-
ferntasten bei aktiver #-Taste der
Hex-Tastatur und deaktivierter NUM-
Taste der PC-Tastatur

X-2 - 9/99 Elektor

EXTRA

———————————————————— PC-P

LUS

Viele Computer und Mikrocontroller werden im
Hexadezimalkode programmiert, die Werte also mit den
Ziffern 0 bis 9 und den Buchstaben A bis F dargestellt.
Die Eingabe der Ziffern ist mit dem numerischen Block
der PC-Tastatur recht einfach, die Buchstaben sind aber
über den ganzen alphanumerischen Teil der Tastatur
verstreut. Der folgende Artikel beschreibt den Aufbau
eines aus zwanzig Tasten bestehenden Keyboards, das
alle benötigten Ziffern und Buchstaben sowie einige
Steuertasten zusammenfaßt.

Entwurf von Uwe Reiser

Hexadezimale Tastatur
für PC

Programmierung ohne Probleme

background image

➧ Space, Backspace und Enter (in

allen Varianten möglich).

➧ Weiterhin ist es möglich, die Steuer-

funktionen des Ziffernblocks zu nut-
zen. Dazu muß zusätzlich die NUM-
Taste der PC-Tastatur ausgeschaltet
werden, was durch die erloschene
NUM-LOCK-LED der PC-Tastatur
ersichtlich ist.

Neben den Tasten weist die Schaltung
der Hex-Tastatur in Bild 1 nur wenige
Bauteile auf, so daß die
Hardwarebeschreibung auch recht
knapp ausfallen kann. Der PIC-
Controller 16F84 fragt ständig die
zwanzig Tasten ab und sendet bei einer
Tastenbetätigung deren Kode zum PC.
Der zweite Schaltkreis, ein bidirektiona-
ler Multiplexer, schaltet immer nur eine
der beiden Tastaturen zum PC durch.
Im Ruhezustand ist die PC-Tastatur mit
dem PC verbunden. Erst wenn der
Controller eine Tastenbetätigung
erkennt, schaltet der 4053 auf die Hex-
Tastatur um. Nach dem Absenden des
Tastenkodes wird sofort wieder auf die
PC-Tastatur zurückgeschaltet. Es besteht
zumindest theoretisch die Möglichkeit,
das Signal der PC-Tastatur mit der Hex-
Tastatur zu unterbrechen. Die 5-V-
Betriebsspannung für die Hex-Tastatur
(und gleichzeitig für die PC-Tastatur) lie-
fert der PC.

Die Software

Den Programmablauf kann man Bild 2
sowie dem Assemblerlisting (auf der
Diskette EPS 996021) entnehmen. Im
ersten Programmteil INITIALISATION wer-
den die Ein- und Ausgänge der Ports A
und B festgelegt sowie die internen
Pull-up-Widerstände für das Port B akti-
viert. Der folgende Power-on-self-Test
steuert die LED des Hex-Keyboards
zweimal kurz an. Die Hell- als auch die
Dunkelzeit ist mit TIME4 auf 109 ms fest-
gelegt. Mit dieser Funktion wird dem
Anwender die grundlegende
Funktionsfähigkeit des PIC-Prozessors
angezeigt. Mit der Abfrage der
Tastaturmatrix (S1 bis S20) beginnt das
Hauptprogramm des Controllers.
Hierzu wird eine der fünf Spalten
(COL??) von High auf Low gesetzt.
Nach einer Wartezeit vom 5 ms (BOUN-
CHE) werden alle vier Zeilen auf das
durch einen Schalter eventuell weiter-
gegebene Low abgefragt. Auf Grund
der Spalten- und Zeilenzuordnung
kann die Schalternummer selektiert
und zum entsprechenden
Unterprogramm (SW??) verzweigt wer-
den. Dies wartet erneut mit CALL
BOUNCHE 5 ms, um danach die
Abfrage des bereits erkannten
Schalters zu wiederholen. Ist das
Ergebnis negativ, muß man von einem
Fehler (etwa Schalterprellen) ausge-

PC-P

LUS

———————————————————

Elektor

EXTRA

X-3 - 9/99

X1

4MHz

K4

K3

C2

100n

C1

100n

C3

10µ 16V

2

3

1

5

4

2

3

1

5

4

PC

keyboard

D1

R1

2k2

0

1

4

7

#

SPC

2

5

8

A

BSP

3

6

9

B

ENTER

F

E

D

C

990058 - 11

S1

S5

S9

S13

S17

S2

S6

S10

S14

S18

S3

S7

S11

S15

S19

S4

S8

S12

S16

S20

PIC16F84

- 04/P

OSC2

IC1

OSC1

MCLR

RA4

RA0

RA1

RA2

RA3

RB0

RB1

RB2

RB3

RB4

RB5

RB6

RB7

18

17

13

12

11

10

16

15

14

1

3

9

8

7

6

2

4

5

IC2

4053

INH

12

13

15

14

X0

X1

Y0

Y1

Z0

Z1

11

10

16

2

3

6

4

1

5

X

Y

Z

A

B

9

C

8

7

LED

GND

ROW0

ROW1

ROW2

ROW3

COL0

COL1

COL2

COL3

COL4

1

1

1 =

=

=

=

=

2

3

4

5

CLOCK

DATA

RESET

GND

+5V

+5V

GND

K2

K1

Bild 1. Schaltplan der Hex-Tastatur

Bild 2. Flußdiagramm

INITIALISATION

KEYS

ON

?

KEYS

OFF

?

SELECT

KEY-CODE

RELAIS

ON

TRANSMIT

KEY-CODE

RELAIS

OFF

N

Y

N

Y

990058 - 12

background image

hen. GOTO COLUMN? wiederholt die
Abfrage derselben Spalte. Bestätigt
sich hingegen die zweite
Schalterabfrage, erfolgt bei den
Zifferntasten eine Abfrage der #-LED;
es werden mit CALL RELAISON die
Steuereingänge B und C des 4053 auf
Low gesetzt und damit das Daten- und
Taktsignal der Hex-Tastatur mit dem PC
verbunden. Um ein sicheres
Umschalten von IC2 zu ermöglichen,
verzögert sich der weitere
Programmablauf mit dem Aufruf der
bereits vorhandenen Zeitschleife
BOUNCHE erneut um 5 ms. Der Aufruf
von zwölf Unterprogrammen erzeugt
die Bitfolge für den Tastenkode.
Danach erfolgt mit dem Befehl BSF
PORTA,REL die Rückschaltung des
4053. Um die Mehrfachausgabe eines
Zeichens zu vermeiden, wartet GOTO
KEYSOFF auf die Freigabe aller Tasten.
Dazu werden alle fünf Spalten auf Low
gesetzt und danach die vier Zeilen
nacheinander abgefragt. Erst wenn
kein Low empfangen wird, beginnt die
erneute Abfrage der Tastatur mit dem
Befehl GOTO COLUMN4.

X-4 - 9/99 Elektor

EXTRA

———————————————————— PC-P

LUS

# 4

CLK

DATA

Oszillogramm der Taste 4 des numerischen Blocks des PCs

83,5

µ

s

60

µ

s bis 380

µ

s

je nach PC-Typ

# 4

CLK

DATA

Oszillogramm der Taste 4 der hexadezimalen Tastatur

TIME 1 20

µ

s

STARTBIT 122

µ

s

HHHLLLLL 81

µ

s

HHLLLLLL 82

µ

s

STOPBIT 377

µ

s

990058 - 13

TIME 2 41

µ

s

TIME 3 336

µ

s

# F

CLK

DATA

Oszillogramm der Taste F des PCs

# F

CLK

DATA

Oszillogramm der Taste F der haxadezimalen Tastatur

STARTBIT

1

st

2

nd

3

th

4

th

5

th

6

th

7

th

8

th

9

th

10

th

STOPBIT

Bild 3. Impulsfolge der Tastaturkodes

Bild 4. Platinenlayout und Bestückungs-
plan der Platine

990058-1

(C) ELEKTOR

C1

C2

C3

D1

IC1

IC2

K1

K2

K3

K4

R1

S1

S2

S3

S4

S5

S6

S7

S8

S9

S10

S11

S12

S13

S14

S15

S16

S17

S18

S19

S20

X1

990058-1

0

1

2

3

4

5

6

7

8

9

*

A

B

C

D

E

F

SPC

BSP

ENTER

990058-1

(C) ELEKTOR

background image

Tastenkode

In Bild 3 sind zwei Impulsfolgen wie-
dergegeben, die die Signale auf der
Daten- und der Taktleitung des PC-
Keyboards für die Tasten 4 und F
repräsentieren. Die Taktfrequenz
beträgt etwa 12 kHz. Nach der Hälfte
der High-Zeit des Taktes erfolgt, wenn
erforderlich, der Pegelwechsel auf der
Datenleitung. Da der Anfang und das
Ende der Impulsfolgen immer gleich
sind, wurden sie als STARTBIT und STOP-
BIT zusammengefaßt und in je einer
Subroutine abgelegt. Die Erzeugung
des Daten- und Taktsignals erfolgt
durch das Setzen beziehungsweise
Löschen von RA2 und RA3. Die
Impulsdauer wird durch die beiden
Zeitschleifen TIME1 und TIME2
bestimmt. Erfolgt ein Pegelwechsel des
Datensignals, wird mit TIME1 ein
Vierteltakt von 20 µs erzeugt (HHHL und
HHLH). Danach erfolgt der
Datenwechsel und ein weiterer
Vierteltakt beendet der High-Teil des
Taktsignals. Erfolgt kein Datenwechsel
(HHLL und HHHH) wird der High-Anteil
mit TIME2 (half clock) vollständig mit 41
µs realisiert. Da im folgenden Low-
Anteil des Taktsignals nie ein
Datenwechsel erfolgt, wird dieser

immer mit TIME2 erzeugt. Es ergibt sich
somit eine Impulsdauer von 81...82 µs.
Dies entspricht einer Frequenz von
12,345 kHz bis 12,195 kHz. Da die
Impulsfolgen der einzelnen Tasten aus
mehreren zum Teil gleichen
Informationen bestehen, sind diese als
Unterprogramme zusammengefaßt
(HHLLLLLL, HHHLLLHH, und so weiter).
Die Anordnung der Buchstaben H und
L im Namen der Subroutinen hat fol-
gende Bedeutung:

Tasten auf Platine

Die Abmessungen der Platine (Bild 4)
und die Plazierung der Bauteile sind
den Platzverhältnissen des in der
Stückliste angegebenen Pultgehäuses
angepaßt. Um die Schaltung optimal
einbauen zu können, sind Tastaturteil
(mit LED und Vorwiderstand) und
Prozessorteil (mit PIC und Multiplexer)
auf getrennten Platinenabschnitten
untergebracht. Sie werden mit einem
elfpoligen Flachbandkabel miteinan-
der verbunden (K1, K2). Verwenden
Sie möglichst die in der Stückliste
genannten Taster, da diese intern
bestimmte Leiterbahnen verbinden.
Bei anderen Tastertypen kann es not-
wendig sein, Drahtbrücken so zu pla-
zieren, daß bei jedem Taster immer
zwei Kontakte miteinander verbunden
sind, wie dies bei S9, S13 und S17
schon der Fall ist.
Beide Platinen werden mit zwei 10 mm
langen Abstandsbolzen übereinander
montiert. Die Verbindung zum PC
beziehungsweise zur PC-Tastatur ver-
läuft über K3/K4 und zwei DIN- oder
Mini-DIN-Buchsen/Stecker. Eine
Zugentlastungsschelle fixiert die bei-
den fünfpoligen Kabel auf der
Prozessorplatine.
Das Pultgehäuse wird mit 21 Löchern
für die Taster und die Leuchtdiode ver-
sehen, anschließend kann man das
Platinensandwich einbauen. In die
Führungsnuten des Gehäuses wird ein
65 mm breiter und 9...10 mm hoher
Platinenstreifen (je nach Tastertyp)
ohne Kupferbeschichtung in Höhe der
Taster S1 bis S4 und ein weiterer über
der Prozessorplatine als Quersteg ein-

gesetzt. Sie füllen den Raum von der
jeweiligen Platinenfläche bis zum Ende
der Nut aus. Die Querstege verhindern,
daß die Taster bei Betätigung in das
Gehäuse gedrückt werden. An der
Stirnseite des Gehäuses wird ein offe-
nes Langloch eingearbeitet, um die
beiden Kabel nach außen zu führen.
Bei ordnungsgemäßer Bestückung der
beiden Platinen sind keinerlei Prüf-
oder Abgleicharbeiten erforderlich.
Da die Betriebsspannung dem PC ent-

nommen wird, sollte man die
Schaltung vor Inbetriebnahme sicher-
heitshalber an einer anderen
Spannungsquelle erproben. Nach
dem Anlegen der Betriebsspannung
von 5 V wird durch zweimaliges kurzes
Aufleuchten der LED die
Funktionsfähigkeit des PICs angezeigt.
Das Ein- und Ausschalten der LED mit
dem #-Schalter S17 kann als einfache
Prüfmöglichkeit des Tastenfeldes
genutzt werden. Ist ein Schalter stän-
dig geschlossen, weil er beispielsweise
im Gehäuse klemmt oder falsch ein-
gebaut wurde, ist außer dem zweima-
ligen Blinken keine weitere Reaktion
der Schaltung möglich! Mit einem
Oszilloskop oder einem Logikprüfstift
können Sie die Signale der Daten- und
Steuerausgänge testen. Ausgelöst
durch eine Tastaturbetätigung ist am
Takt- und Datenausgang eine
Impulsfolge ähnlich wie die gezeigte
und am Steuerausgang (RA1) ein
Einzelimpuls nachweisbar.

(990058)rg

PC-P

LUS

———————————————————

Elektor

EXTRA

X-5 - 9/99

Stückliste

Widerstand:

R1 = 390

Kondensator:
C1 = 100 nF

Halbleiter:
IC1 = PIC 16F84 (programmiert mit EPS
996516-1)
IC2 = 4053
D1 = LED, rot

Außerdem:
S1...S20 = Taster D6-R-RD (Conrad 70
84 88)

K1,K2 = 1

⋅11poliger Pfostenverbinder,

male

K3,K4 = 1

⋅10poliger Pfostenverbinder,

male
1 DIN-Stecker 5-polig (oder Mini-DIN)
für Chassismontage
1 DIN-Kupplung 5-polig (oder Mini-DIN)
für Chassismontage

1 Gehäuse Pult-Box 25 x 109

⋅70⋅50

(Conrad 52 24 49)
1 Zugentlastungsschelle (Conrad 52 46
20)
2 Abstandsbolzen M3x10 mm
Flachbandleitung 11polig ca. 10 cm
Platine EPS 990058-1
Programmierter PIC EPS 996516-1
Diskette (Quellkode) EPS 996021
(siehe Service-Seiten in der Heftmitte)

1/4 Data High + 1/4 Data Low

2 • 1/4 Data High

2 • 1/4 CLK High

2 • 1/4 CLK Low

HH

HL

LL

HH


Wyszukiwarka

Podobne podstrony:
Keyboard Umschalter Eine Tastatur fuer viele Computer
CAN Bus Interface fuer PC
Fernsteuerung fuer PC Flugsimulator
PC gesteuerter 32 Kanal Dimmer Luxus Regler fuer ohmsche und induktive Lasten
Laufschrift mit PC Tastatur
PC Tastatur Kodierung
Lueftersteuerung fuer den PC
BUDOWA KOMPUTERA PC
pc 01s084 085
pc 07s084 087
pc 08s020 027
Czę¶ć ogólna PC wykład 2 podmioty
Instrukcja programu PC Suite SonyEricsson
Anatomia PC Wydanie VIII
pc 04s044 049
pc 02s076 079

więcej podobnych podstron