Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

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 volkerptiny:erweiterungen:tastatur [2018/05/31 08:50] (aktuell) volkerp
Zeile 1: Zeile 1:
-====== tiny_tastatur.htm ======+====== Tastatur ======
  
-===== Laptop-Tastatur Â– Anschluss an den TINY =====+Laptop-Tastatur Anschluss an den TINY
  
-[[intern:converted:tastatur_12x4.zip|Downloadpaket]] (Anleitung, Stromlaufplan, ROM-Binary)+===== Download =====
  
-Bei Pollin gab es für 1€ eine geeignete Laptoptastatur mit 8 Zeilen und 16 Spalten, die ich für meinen TINY nutzen wollteDamit man das auch mit einer anderen Tastatur nachnutzen kanngibt es hier ausführlichere Hinweisewie ich die Tastatur angeschlossen habe.+{{:tiny:jute_tastatur.zip|}} Downloadpaket (AnleitungStromlaufplanROM-Binary)
  
-| [[intern:converted:tiny4.jpg| {{tiny4_small.jpg}}]] | [[intern:converted:tiny4b.jpg| {{tiny4b_small.jpg?250x254}}]] | +===== Beschreibung =====
-| Die Tastatur ist ein 99Cent-Laptop-Tastatur von Pollin (Bestellnummer 710 010). Angesteuert wird eine 8x7-Matrix mittels 74x257 und 74x138.   [[intern:converted:jute_tastatur.zip|Stromlaufplan u.a.]] | Die Schaltkreise stecken auf einer Lochrasterplatte, diese ist mit Sekundenkleber an die Tastatur geklebt. Fliegende Verdrahtung. Als Anschlusskabel dient ein altes serielles Kabel. |+
  
-Die Tastatur hat folgende Tastenbelegung in ihrer 8x16-Matrix (grüner BereichSpalten A-HZeilen 1..16):+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 kanngibt es hier ausführlichere Hinweisewie ich die Tastatur angeschlossen habe.
  
-**Tastatur** ||| **1** **2** **3** **4** **5** **6** **7** **8** **9** **10** **11** **12** **13** **14** **15** **16** | +{{:tiny:vp_tiny4.jpg?0x300}} {{:tiny:vp_tiny4b.jpg?0x300}} 
-| 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, diese ist mit Sekundenkleber an die Tastatur geklebt. Fliegende Verdrahtung. Als Anschlusskabel dient ein altes serielles Kabel.  
-| 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 | +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** **1** **2** **3** **4** **5** **6** **7** **8** **9** **10** **11** **12** **13** **14** **15** **16** ^ 
-| **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 sähe es einfacher aus...+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 sähe es einfacher aus...
  
 ==== Die Schaltung ==== ==== Die Schaltung ====
  
-Man kann die Hardware zur Tastaturansteuerung jedoch ohne Ã„nderung der Software zur Tastaturabfrage auf eine 8x8(7)-Matrix Ã¤ndern: Anstelle der 4. Zeile wird ein Multiplexer für 8:4 Spalten angesteuert.+Man kann die Hardware zur Tastaturansteuerung jedoch ohne Änderung der Software zur Tastaturabfrage auf eine 8x8(7)-Matrix ändern: Anstelle der 4. Zeile wird ein Multiplexer für 8:4 Spalten angesteuert.
  
 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?600x409}} +{{:tiny:tastatur_8x7_1.png?600x409}}
- +
- +
  
 ==== 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 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 nichtUmsortiert sieht die Tastaturbelegung also wie folgt aus (Komprimierte Tabelle):+Für den TINY muss nun eine sinnvolle Zuordnung zu den Zeilen und Spalten her.
  
-|   | A1 | A2 | A3 | A4 | A5 | A6 | A7 | +Links und unten: die sinnvollen Zeilenund 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 A-Z, 1-9, Shift, Space, Komma, Punkt, /, *, +, Enter, CLR, Cursortasten+| **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 | ! |  | | 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 | | 3 | F10 | 4 | 2 | 8 |  | 7 |  | 0 | | 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+ |   =&gt; / |   =&gt; * | 5 | 6 | ` =&gt; 0 | +^ S3 9 / F10 1 / F11 2 / End 3 / 0 8 / F12 | 
-S2+ | Shift | TAB =&gt; CLR |   | Ue =&gt; P | T | Z | (c-7) =&gt; + | +^ S2 | O | Q | W | E / P | R | U | I 
-S1+ |   | ESC | Cu Up | (b-11) =&gt; - | G | H |   +^ S1 L / $ (E-4) | A | S | D / Oe | F | J | K | 
-S0+ | Space | Cu Down | Cu Left | - =&gt; . | B | N | Cu Right |+^ 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) -> - | G | H | 
 +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, dass eine beliebige andere Tastenanordnung genutzt werden kann.
  
-==== Ä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 "+"-Zeilen werden zu ihrem einfachen Pendant, zu den Spalten in "+"-Zeilen wird 8 addiert (Sx+ -> Sx, Ay -> Ay + 8). Praktisch heißt das, dass and die 4 Spalten einfach die "+"-Spalten angehängt werden.
  
-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, dass eine beliebige andere Tastenanordnung genutzt werden kann.+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 genutztdass muss jetzt umgekehrt werden)Das erfolgt einfach durch Umsorterien von Feld (x,y) obiger TabelleDie "+"-Zeilen werden zu ihrem einfachen Pendantzu den Spalten in "+"-Zeilen wird 8 addiert (Sx+ =&gt; SxAy =&gt; Ay 8). Praktisch heißt dasdass and die Spalten einfach die "+"-Spalten angehängt werden.+  S0: <00>, Enter, Y, X, C, V, M, ',', <00>, Space, Cu Down, Cu Left, ., B, N, Cu Right 
 +  S1<00>, L, A, S, D, F, J, K, <00>, <00>, CLR, <00>, Cu Up, -, G, H, <00> 
 +  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 Code für den EPROM:+Als Hex-Code: 
  
-  S0&amp;#61450;, Enter, Y, X, C, V, M, “,“, &amp;#61450;, Space, Cu Down, Cu Left, ., B, N, Cu Right +{{:tiny:tastatur_8x7_2.png?649x145}}
-  S1: &amp;#61450;, L, A, S, D, F, J, K, &amp;#61450;, &amp;#61450;, CLR, &amp;#61450;, Cu Up, -, G, H, &amp;#61450; +
-  S2: &amp;#61450;, O, Q, W, E, R, U, I, &amp;#61450;, Shift, CLR, &amp;#61450;, P, T, Z, + +
-  S3: &amp;#61450;, 9, 1, 2, 3, 4, 7, 8, &amp;#61450;, &amp;#61450;, /, &amp;#61450;, *, 5, 6, 0+
  
-Als Hex-Code{{tastatur_8x7_2.png?649x145}}+Zum Vergleich: Original 2K-System: von oben nach unten S0 bis S3, von links nach rechts A0 bis A15
  
-Zum VergleichOriginal 2K-Systemvon oben nach unten S0 bis S3, von links nach rechts A0 bis A15: {{tastatur_8x7_3.png?657x145}}+{{:tiny:tastatur_8x7_3.png?657x145}}
  
-Der Anschluss der Tastatur an den TINY erfolgt bei mir Ã¼ber ein 9pol. serielles Kabel (altes Mauskabel). Eine Buchse ist im TINY-Gehäuse  befestigt. Die 9 Leitungen + Abschirmleitung reichen genau aus :-)+Der Anschluss der Tastatur an den TINY erfolgt bei mir über ein 9pol. serielles Kabel (altes Mauskabel). Eine Buchse ist im TINY-Gehäuse? befestigt. Die 9 Leitungen + Abschirmleitung reichen genau aus :-)
  
 V. Pohlers, 2007 V. Pohlers, 2007
  
  • tiny/erweiterungen/tastatur.1278858024.txt.gz
  • Zuletzt geändert: 2010/07/10 22:00
  • (Externe Bearbeitung)