Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
tiny:erweiterungen:tastatur [2010/07/11 14:20] – Page moved and renamed from intern:converted:tiny_tastatur.htm to tiny:erweiterungen:tastatur volkerp | tiny:erweiterungen:tastatur [2018/05/31 08:50] (aktuell) – volkerp | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== | + | ====== |
- | ===== Laptop-Tastatur | + | Laptop-Tastatur |
- | [[intern: | + | ===== Download ===== |
- | Bei Pollin gab es für 1 eine geeignete Laptoptastatur mit 8 Zeilen und 16 Spalten, die ich für meinen TINY nutzen wollte. Damit man das auch mit einer anderen Tastatur nachnutzen kann, gibt es hier ausführlichere Hinweise, wie ich die Tastatur angeschlossen habe. | + | {{: |
- | | [[intern: | + | ===== Beschreibung ===== |
- | | Die Tastatur ist ein 99Cent-Laptop-Tastatur von Pollin (Bestellnummer 710 010). Angesteuert wird eine 8x7-Matrix mittels 74x257 und 74x138. | + | |
- | Die Tastatur | + | Bei Pollin gab es für 1€ eine geeignete Laptoptastatur mit 8 Zeilen und 16 Spalten, die ich für meinen TINY nutzen wollte. Damit man das auch mit einer anderen |
- | | **Tastatur** | + | {{: |
- | | S0+ | **A** | | | | | B | | | | N | Space | - | | Alt Gr | Cu Down | Cu Right | Cu Left | | + | |
- | | S1+ | **B** | | ESC | F4 | F5 | G | | F6 | | H | | Ãe | | | | | Cu Up | | + | Die Tastatur ist eine 99 Cent-Laptop-Tastatur von Pollin (Bestellnummer 710 010). Angesteuert wird eine 8x7-Matrix mittels 74x257 und 74x138. |
- | | S2+ | **C** | | TAB | F3 | Bksp | T | Caps lock | ! | | Z | Shift Left | Ue | F7 | | | | | | + | |
- | | S3+ | **D** | Pg Up | § | F2 | F9 | 5 | F1 | ` | Ctrl | 6 | | | F8 | | | Ins | Home | | + | Die Schaltkreise stecken auf einer Lochrasterplatte, |
- | | S1 | **E** | Fn | A | D | $ | F | S | K | | J | | Ãe | L | Alt | | | | | + | |
- | | S0 | **F** | & | + | Die Tastatur hat folgende Tastenbelegung in ihrer 8x16-Matrix (Zeilen A-H, Spalten 1..16): |
- | | S3 | **G** | Pg Down | 1 | 3 | F10 | 4 | 2 | 8 | | 7 | | 0 | 9 | PrtScr | F11 | F12 | END | | + | |
- | | S2 | **H** | | Q | E | | R | W | I | | U | | P | O | Scroll Lock | | | | | + | ^ **Tastatur** |
- | | **TINY** ||| - | A2 | A4 | A1 | A5 | A3 | A7 | - | A6 | A1 | A4 | A1 | - | A2 | A7 | A3 | | + | ^ **A** | | | | | B | | | | N | Space | - | | Alt Gr | Cu Down | Cu Right | Cu Left | |
+ | ^ **B** | | ESC | F4 | F5 | G | | F6 | | H | | Äe | | | | | Cu Up | | ||
+ | ^ **C** | | TAB | F3 | Bksp | T | Caps lock | ! | | Z | Shift Left | Ue | F7 | | | | | | ||
+ | ^ **D** | Pg Up | § | F2 | F9 | 5 | F1 | ` | Ctrl | 6 | | | F8 | | | Ins | Home | | ||
+ | ^ **E** | Fn | A | D | $ | F | S | K | | J | | Öe | L | Alt | | | | | ||
+ | ^ **F** | < | Y | C | RET | V | X | , | | M | Shift Right | | . | | Num Lock | | Pause | | ||
+ | ^ **G** | Pg Down | 1 | 3 | F10 | 4 | 2 | 8 | | 7 | | 0 | 9 | PrtScr | F11 | F12 | END | | ||
+ | ^ **H** | | Q | E | | R | W | I | | U | | P | O | Scroll Lock | | | | | ||
Normalerweise arbeitet der TINY mit einer 4x16(15)-Tastaturmatrix. Und laut Schaltungskonzept des TINY muss auch noch A0 frei bleiben. | Normalerweise arbeitet der TINY mit einer 4x16(15)-Tastaturmatrix. Und laut Schaltungskonzept des TINY muss auch noch A0 frei bleiben. | ||
- | Meine erste Idee war nun, einfach je zwei der Zeilen A-H parallel zu schalten und so eine 4x16-Matrix zu erhalten. Leider gab es dabei stets Probleme. Mit einer 8x8-Matrix | + | Meine erste Idee war nun, einfach je zwei der Zeilen A-H parallel zu schalten und so eine 4x16-Matrix zu erhalten. Leider gab es dabei stets Probleme. Mit einer 8x8-Matrix |
==== Die Schaltung ==== | ==== Die Schaltung ==== | ||
- | Man kann die Hardware zur Tastaturansteuerung jedoch ohne Ãnderung | + | Man kann die Hardware zur Tastaturansteuerung jedoch ohne Änderung |
An den TINY kann damit mit folgender minimaler Schaltung eine 8x7-Matrix-Tastatur angeschlossen werden: | An den TINY kann damit mit folgender minimaler Schaltung eine 8x7-Matrix-Tastatur angeschlossen werden: | ||
- | {{tastatur_8x7_1.png? | + | {{:tiny:tastatur_8x7_1.png? |
- | + | ||
- | + | ||
==== Wie bekommt man nun eine 8x16-Matrix in eine 8x7-Matrix gewandelt? ==== | ==== Wie bekommt man nun eine 8x16-Matrix in eine 8x7-Matrix gewandelt? ==== | ||
- | Die Lösung ist einfach: Mehrere | + | Für den TINY muss nun eine sinnvolle Zuordnung zu den Zeilen und Spalten |
- | | | A1 | A2 | A3 | A4 | A5 | A6 | A7 | | + | Links und unten: die sinnvollen Zeilen- und Spaltenleitungen beim TINY: |
- | | S3 | 9 / F10 | 1 / F11 | 2 / End | 3 / 0 | 4 | 7 | 8 / F12 | | + | |
- | | S2 | O | Q | W | E / P | R | U | I | | + | |
- | | S1 | L / $ (E-4) | A | S | D / Oe | F | J | K | | + | |
- | | S0 | Shift Right / RET / . | Y / Num Lock | X / Pause | C | V | M | , (F-7) | | + | |
- | | S3+ | F8 / F9 | $ (D-4) | F1 / Home | F2, | 5 | 6 | `(D-7) / Ins | | + | |
- | | S2+ | Shift Left / F7 / Bksp. | TAB | Caps Lock | F3, Ue | T | Z | ! | | + | |
- | | S1+ | F5 | ESC | Cu Up | F4 / Ae | G | H | F6 | | + | |
- | | S0+ | Space | Cu Down | Cu Left | - => / | B | N | Cu Right | | + | |
- | Nun muss man sich für ein paar Tastenumbelegungen entscheiden und die Tabelle auf die benötigten Zeichen beschränken. Wir brauchen am TINY die Tasten | + | | **Tastatur** || **1** | **2** | **3** | **4** | **5** | **6** | **7** | **8** | **9** | **10** | **11** | **12** | **13** | **14** | **15** | **16** | |
+ | ^ S0+ | **A** | | | | | B | | | | N | Space | - | | Alt Gr | Cu Down | Cu Right | Cu Left | | ||
+ | ^ S1+ | **B** | | ESC | F4 | F5 | G | | F6 | | H | | Äe | | | | | Cu Up | | ||
+ | ^ S2+ | **C** | | TAB | F3 | Bksp | T | Caps lock | ! | | Z | Shift Left | Ue | F7 | | | | | | ||
+ | ^ S3+ | **D** | Pg Up | § | F2 | F9 | 5 | F1 | ` | Ctrl | 6 | | | F8 | | | Ins | Home | | ||
+ | ^ S1 | **E** | Fn | A | D | $ | F | S | K | | J | | Öe | L | Alt | | | | | ||
+ | ^ S0 | **F** | < | Y | C | RET | V | X | , | | M | Shift Right | | . | | Num Lock | | Pause | | ||
+ | ^ S3 | **G** | Pg Down | 1 | 3 | F10 | 4 | 2 | 8 | | 7 | | 0 | 9 | PrtScr | F11 | F12 | END | | ||
+ | ^ S2 | **H** | | Q | E | | R | W | I | | U | | P | O | Scroll Lock | | | | | ||
+ | ^ **TINY** ^^ - ^ A2 ^ A4 ^ A1 ^ A5 ^ A3 ^ A7 ^ - ^ A6 ^ A1 ^ A4 ^ A1 ^ - ^ A2 ^ A7 ^ A3 ^ | ||
- | | | A1 | A2 | A3 | A4 | A5 | A6 | A7 | | + | Die Lösung für das 8x7-Problem ist einfach: Mehrere Spalten werden deshalb parallel geschaltet (welche, steht in der untersten Reihe in obiger Tabelle: z.B. Tastatur Spalte 2 und 14 wurden parallel geschaltet zu neuer Spalte A2). Das führ leider zu einer Doppelbelegung einiger Tasten, stört aber im praktischen Betrieb nicht. |
- | | S3 | 9 | 1 | 2 | 3 | 4 | 7 | 8 | | + | |
- | | S2 | O | Q | W | E | R | U | I | | + | Umsortiert sieht die Tastaturbelegung also wie folgt aus (Komprimierte Tabelle): |
- | | S1 | L | A | S | D | F | J | K | | + | |
- | | S0 | Enter | Y | X | C | V | M | , | | + | ^ ^ A1 ^ A2 ^ A3 ^ A4 ^ A5 ^ A6 ^ A7 ^ |
- | | S3+ | | =& | + | ^ S3 | 9 / F10 | 1 / F11 | 2 / End | 3 / 0 | 4 | 7 | 8 / F12 | |
- | | S2+ | Shift | TAB =& | + | ^ S2 | O | Q | W | E / P | R | U | I | |
- | | S1+ | | ESC | Cu Up | (b-11) | + | ^ S1 | L / $ (E-4) | A | S | D / Oe | F | J | K | |
- | | S0+ | Space | Cu Down | Cu Left | - =& | + | ^ S0 | Shift Right / RET / . | Y / Num Lock | X / Pause | C | V | M | , (F-7) | |
+ | ^ S3+ | F8 / F9 | $ (D-4) | F1 / Home | F2, | 5 | 6 | `(D-7) / Ins | | ||
+ | ^ S2+ | Shift Left / F7 / Bksp. | TAB | Caps Lock | F3, Ue | T | Z | ! | | ||
+ | ^ S1+ | F5 | ESC | Cu Up | F4 / Ae | G | H | F6 | | ||
+ | ^ S0+ | Space | Cu Down | Cu Left | - -> / | B | N | Cu Right | | ||
+ | |||
+ | Nun muss man sich für ein paar Tastenumbelegungen entscheiden und die Tabelle auf die benötigten Zeichen beschränken. Wir brauchen am TINY die Tasten A-Z, 1-9, Shift, Space, Komma, Punkt, /, *, - , +, Enter, CLR, Cursortasten. | ||
+ | |||
+ | Von obiger Tabelle bleibt übrig (Tastenumbelegungen mit ->): | ||
+ | |||
+ | ^ ^ A1 ^ A2 ^ A3 ^ A4 ^ A5 ^ A6 ^ A7 ^ | ||
+ | ^ S3 | 9 | 1 | 2 | 3 | 4 | 7 | 8 | | ||
+ | ^ S2 | O | Q | W | E | R | U | I | | ||
+ | ^ S1 | L | A | S | D | F | J | K | | ||
+ | ^ S0 | Enter | Y | X | C | V | M | , | | ||
+ | ^ S3+ | ? | -> / | ? | -> * | 5 | 6 | ` -> 0 | | ||
+ | ^ S2+ | Shift | TAB -> CLR | ? | Ue -> P | T | Z | (c-7) -> + | | ||
+ | ^ S1+ | ? | ESC | Cu Up | (b-11) | ||
+ | ^ S0+ | Space | Cu Down | Cu Left | - -> . | B | N | Cu Right | | ||
So sieht meine Tastatur jetzt aus: | So sieht meine Tastatur jetzt aus: | ||
- | (bild) | + | {{bild}} FIXME |
+ | |||
+ | ==== Änderungen im EPROM ==== | ||
+ | |||
+ | Leider stimmt die Belegungstabelle nicht mehr mit der im 2K-Monitor überein. Aber das ist kein Problem und im Konzept des TINY sogar schon so vorbereitet, | ||
- | ==== Ãnderungen im EPROM ==== | + | Zum einen muss die 8x7-Matric umsortiert werden auf ein 4x16-Feld (wir haben ja Zeilenleitung 4 als MUXer-Signal für die Spalten genutzt, dass muss jetzt umgekehrt werden). Das erfolgt einfach durch Umsortieren von Feld (x,y) obiger Tabelle: Die " |
- | Leider stimmt die Belegungstabelle nicht mehr mit der im 2K-Monitor überein. Aber das ist kein Problem und im Konzept des TINY sogar schon so vorbereitet, | + | Damit ergibt sich folgender Code für den EPROM: |
- | Zum einen muss die 8x7-Matric umsortiert werden auf ein 4x16-Feld (wir haben ja Zeilenleitung 4 als MUXer-Signal für die Spalten genutzt, dass muss jetzt umgekehrt werden). Das erfolgt einfach durch Umsorterien von Feld (x,y) obiger Tabelle: Die " | + | S0: <00>, Enter, Y, X, C, V, M, ',', |
+ | S1: <00>, L, A, S, D, F, J, K, <00>, <00>, CLR, <00>, Cu Up, -, G, H, < | ||
+ | S2: <00>, O, Q, W, E, R, U, I, <00>, Shift, CLR, <00>, P, T, Z, + | ||
+ | S3: <00>, 9, 1, 2, 3, 4, 7, 8, <00>, <00>, /, <00>, *, 5, 6, 0 | ||
- | Damit ergibt sich folgender | + | Als Hex-Code: |
- | S0: & | + | {{:tiny: |
- | S1: & | + | |
- | S2: & | + | |
- | S3: & | + | |
- | Als Hex-Code: {{tastatur_8x7_2.png? | + | Zum Vergleich: Original 2K-System: von oben nach unten S0 bis S3, von links nach rechts A0 bis A15: |
- | Zum Vergleich: Original 2K-System: von oben nach unten S0 bis S3, von links nach rechts A0 bis A15: {{tastatur_8x7_3.png? | + | {{:tiny: |
- | Der Anschluss der Tastatur an den TINY erfolgt bei mir über | + | Der Anschluss der Tastatur an den TINY erfolgt bei mir über ein 9pol. serielles Kabel (altes Mauskabel). Eine Buchse ist im TINY-Gehäuse? |
V. Pohlers, 2007 | V. Pohlers, 2007 | ||