Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Flohmarkt » Suche Tastatur für MC80.30 » Themenansicht

Autor Thread - Seiten: -1-
000
26.01.2024, 18:56 Uhr
knotti



wie der Titel schon sagt suche ich eine Tastatur für den MC80.30

oder eine Möglichkeit eine andere Tastatur anzuschlissen, oder Nachbau, oder ...

Hauptsache ich kann das Teil irgendwie mal benutzen und nicht nur im Regal versauern lassen.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
22.03.2024, 15:32 Uhr
DL



Hatte heute mal etwas Zeit und so fix mit einem Arduino einen Tastaturadapter PS/2<->MC80.3x zusammengestrickt,
da ist eigentlich nicht viel dazu...



Die mc803x_PS2.ino dazu

Quellcode:

//-------------------------------------------------------------------------------------------------------
//Emulation Tastatur MC80.3x mit PS/2 Tastatur + Arduino Nano und Paul Carpenter's PS2KeyAdvanced library
//-------------------------------------------------------------------------------------------------------
#include <PS2KeyAdvanced.h>
#include <PS2KeyMap.h>
#define DATAPIN 4 //PS/2 DATA
#define IRQPIN  3 //PS/2 CLK
#define TONEPIN 5 //Beeper
uint16_t c,d;
uint8_t x,y,idx;
//von KeyMap library nicht erzeugte Codes
uint8_t codes[] = {PS2_KEY_F1, PS2_KEY_F2, PS2_KEY_F3, PS2_KEY_F4,PS2_KEY_F5, PS2_KEY_F6,PS2_KEY_F7, PS2_KEY_F8,
                   PS2_KEY_L_ARROW, PS2_KEY_R_ARROW, PS2_KEY_UP_ARROW,PS2_KEY_DN_ARROW,
                   PS2_KEY_HOME,PS2_KEY_L_GUI,PS2_KEY_END,PS2_KEY_R_GUI};//OFF/ENTER auf Home/Ende bzw. links/rechts Win gelegt
const char *const keys[]  =  {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x08,0x0c,0x0b,0x0a,
                              0x13,0x13,0x11,0x11};

PS2KeyAdvanced keyboard;
PS2KeyMap keymap;

void setup( )
{
keyboard.begin( DATAPIN, IRQPIN );
keyboard.typematic( 11, 1);
keyboard.setNoRepeat(1);
keyboard.setNoBreak(1);
keymap.selectMap( (char *)"DE" );
Serial.begin( 9600,SERIAL_7O1 );
tone(TONEPIN, 1000, 100); //beep
}

void loop( )
{
if(Serial.available() >0)
   {
    y=Serial.read();
    if(y==0x07)tone(TONEPIN, 1000, 100); //beep kurz
    if(y==0x10)tone(TONEPIN, 1000); //beep dauer
   }
if( keyboard.available( ) )
  {
  c = keyboard.read( );
  if( c > 0 )
    {
    if(c >=PS2_KEY_KP0 && c <=PS2_KEY_KP_DIV)x=0x1d; //Status für Keypad
    else if ((c & 0xff) >=PS2_KEY_F1 && (c & 0xff)<=PS2_KEY_F8)x=0x1e;  //Status für Funktionstasten
    else if (c & PS2_CTRL)x=0x1f; //Status für CTRL
    else x=0x1c; //Status default
    d=keymap.remapKey(c );
    if(d==0)     //die aus dem remap fehlenden Tasten (s.0. codes) einfügen
          {  
          for( idx = 0; idx < sizeof( codes ); idx++ )
            if((c & 0xff) == codes[ idx ] )
              {      
              d=( keys[ idx ] );
              break;
              }
          }
    if((d>0)&&((d & 0xff)<=0x80))
     {
      Serial.write( x); //Statusbyte
      Serial.write( d & 0xff); //Tastencode
     }    
    }
  }
}



Nicht schön, aber läuft

Dieser Beitrag wurde am 24.03.2024 um 16:51 Uhr von Rüdiger editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
22.03.2024, 19:38 Uhr
knotti



das schaut doch gut aus, danke vielmals.

dann werd ich mich wohl mal bei Gelegenheit mit dem Arduino beschäftigen müssen.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
23.03.2024, 00:00 Uhr
Kenny-f-Powers



Sehr cool @DL, magst du noch verraten, welche Transistoren du benützt hast? Also den genauen Typ (auch wenn genau der gleiche nen Euro mehr kostet ist mir das immernoch lieber als "da geht jeder" ;-) )
Dann könnte man auch mal ein Shield für den Uno R3 machen
Ach und die beiden Kondensatoren, das wäre auch wichtig für mich

Dieser Beitrag wurde am 23.03.2024 um 00:36 Uhr von Kenny-f-Powers editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
23.03.2024, 09:03 Uhr
felge1966



Beim Transistor würde ich mal locker auf den BC547 tippen....
Sind ja nur als Schalter drin.

Gruß Jörg
--
http://felgentreu.spdns.org/bilder/jacob120.gif
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
23.03.2024, 09:33 Uhr
DL



Eigentlich hatte ich nur die Bastelkiste umgestülpt und genommen, was mir gerade entgegen rollte.
Hab das Bild oben noch mal korrigiert, war ja eigentlich nur als Prinzip gedacht, für die Werte der Kondensatoren schaut man am besten ins Datenblatt vom verwendeten Spannungsregler, was dem Hersteller da so vorschwebt.

Das gleiche Schaltungsprinzip hab ich z.B. auch beim A5120/K8924 verwendet, aber in SMD, dort passt das sogar ins Gehäuse vom EFS Stecker, da sind also wieder ganz andere Bauteile drin...

Aber vielleicht hat noch jemand eine Idee für die OFF und ENTER Tasten rechts und links der Leertaste, da wusste ich bei der PS2 nicht so richtig wohin damit. Oben im Quelltext sind die erst mal auf die linke und rechte Windoof Taste gelegt, kommt dem ja von der Lage erst mal am nächsten.

Noch ein Hinweis zu den 12V am Port, die scheinen nirgendwo abgesichert zu sein, also etwas Vorsicht walten lassen !

Dieser Beitrag wurde am 23.03.2024 um 14:07 Uhr von DL editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
23.03.2024, 10:54 Uhr
Kenny-f-Powers



Wie gesagt, wenn ich Vorgaben der Bauteile bekomme konstruieren und bestelle ich gerne die Platinen (ich versteh halt nur nix von der Auslegung und Berechnung von Elektro Kram)
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
23.03.2024, 13:21 Uhr
ambrosius



C1 = 100nF, C2=47nF würde ich vorschlagen.
--
Viele Grüße
Holger
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
23.03.2024, 13:53 Uhr
andy62



Parallel zu C1 noch einen Elko 47µF/25V, C1 100nF.
Am Ausgang C2 22µF/16V und auf alle Fälle noch ein 100nF parallel.
Alle so nah wie möglich am Festspannungsregler.
Grüße,
Andy
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
24.03.2024, 01:07 Uhr
Kenny-f-Powers



Ich habe den Beitrag von Andy nicht verstanden, da mir die Kondensator Rune aus dem Originaldatenblatt bei Google zugleich als polarisierter und unpolarisierter Kondensator verkauft wird...das malt wohl jeder wie er mag und je nach Epoche...

Das hätte ich jetzt bislang erstellt:
(Ja die Kondensatoren sehen Dumm aus...)



Ich habe mich dazu entschieden den Arduino mit unseren 5V zu betreiben direkt...Entsprechend der Arduino Dokumentation darf man das.
Der VIN benötigt mehr als 5V beim Uno, die 12V sind da noch Okay aber das macht nur unnötig Warm

Dieser Beitrag wurde am 24.03.2024 um 01:10 Uhr von Kenny-f-Powers editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
24.03.2024, 07:33 Uhr
DL



Ja, mit den Kondensatoren das ist so ein Glaubenskrieg zwischen theoretischer und praktischer Notwendigkeit
Ich würde da Keramikkondensatoren nehmen, steht glaub auch irgendwo im Datenblatt.
Z.b. Reichelt C3X7R 330NA50 und C3X7R 100NA50
Die beiden 4,7Ohm sollten aber 4,7kohm werden.


Zitat:
Kenny-f-Powers schrieb
(Ja die Kondensatoren sehen Dumm aus...)


Meine Schaltungen sehen auch immer etwas schräg aus, war mir schon immer ein Graus so etwas zu tun

Bevor hier auch noch ein Klugscheißer wegen dem Quelltext rumnölt: das ist nur ein Entwurf, darf jeder besser machen !

Dieser Beitrag wurde am 24.03.2024 um 10:32 Uhr von DL editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
24.03.2024, 11:24 Uhr
andy62



Die Keramischen Kondensatoren von 100nF sind lt Datenblatt der Festspannungsregler Pflicht. Zumindest der am Ausgang.
Weiterhin spendiere ich den Festspannungsreglern am Ein und Ausgang jeweils einen Elko, wobei der Am Ausgang kleiner sein sollte um beim Abschalten der Betriebsspannung einen Rückfluss des Ladestromes in den Regler zu vermeiden.
Wenn man es richtig machen will, schaltet man eine Diode in Sperrrichtung vom Eingang zum Ausgang des Festspannungsregler.
Grüße,
Andy
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
24.03.2024, 13:11 Uhr
Kenny-f-Powers




Zitat:
andy62 schrieb
Die Keramischen Kondensatoren von 100nF sind lt Datenblatt der Festspannungsregler Pflicht. Zumindest der am Ausgang.
Weiterhin spendiere ich den Festspannungsreglern am Ein und Ausgang jeweils einen Elko, wobei der Am Ausgang kleiner sein sollte um beim Abschalten der Betriebsspannung einen Rückfluss des Ladestromes in den Regler zu vermeiden.
Wenn man es richtig machen will, schaltet man eine Diode in Sperrrichtung vom Eingang zum Ausgang des Festspannungsregler.
Grüße,
Andy



nur eine Verständnisfrage in unserem Fall ist ja am Ausgang ein Arduino der neben seinen beiden ICs und Tastatur ja auch einen gewissen Bedarf hat. Kann dann etwas zurück fließen?
Die Elkos parallel zu den keramik kondensatoren?
Diode an Eingang und Ausgang des Regler?

Beste Grüße,
Johannes

Dieser Beitrag wurde am 24.03.2024 um 13:12 Uhr von Kenny-f-Powers editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
24.03.2024, 14:45 Uhr
andy62



Hallo Johannes,
Das hängt von den Kapazitäten auf dem Arduino ab.
Wenn die in Summe mit den Kondensatoren am Ausgang des Reglers größer als der Am Eingang des Reglers ist, kann das passieren. Du kannst den Elko am Eingang des Reglers auch größer machen. 100uF z.B.
Nur eine Diode. Die Kathode am Eingang und die Anode am Ausgang des Reglers.
Grüße Andy
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
014
24.03.2024, 17:35 Uhr
DL



So, ich hoffe nun ist die Schaltung zur allgemeinen Zufriedenheit...
(Danke @Rüdiger )

Dieser Beitrag wurde am 24.03.2024 um 17:36 Uhr von DL editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
015
24.03.2024, 18:24 Uhr
Kenny-f-Powers



Soderle,

Wir haben nun eine Diode
Da mir der Abstand für die Kondensatoren lächerlich weit erschienen ist hab ich ein 3. Loch hinzugefügt um die Kondensatoren etwas vom Regler weg zu bringen. Die beiden Löcher sind verbunden was ich durch die dicke Linie dargestellt hab



Die Platine entspricht in Design und Beschriftung natürlich keinen gängigen Standards aber die Chinesen stört das zum Glück wenig
Im Nachhinein war es nicht die beste Entscheidung einen vorgefertigten Umriss zu nehmen aber bei über +999 Arduino Uno Shields ist die Auswahl schwer. Ich hoffe ich habe aber alle Probleme beheben können

Was mir gerade beim Kuchen essen noch eingefallen ist, die Platine macht ja eigentlich in jedem Fall Sinn, man könnte doch auf dem Arduino ein paar Spiele/Eprom Inhalte zum brennen etc. hinterlegen die bei einer Tastenkombination auf der PS2 Tastatur automatisch eingetippt werden...Das erst mal "unsichtbare" Menü könnte der Arduino doch eigentlich wie ein bei einem Terminal auf den MC80 darstellen?!

(Also ob das realistisch ist weiß ich ja auch nicht, schließlich habe ich aktuell noch keinen MC80 der "lebt")

Dieser Beitrag wurde am 24.03.2024 um 18:35 Uhr von Kenny-f-Powers editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
016
25.03.2024, 10:01 Uhr
DL



Du hast ja noch viel Platz auf der Platine, da kannst du ja noch zwei Pull-Up-Widerstände für die PS/2 Daten- und Clocksignale vorsehen.
Irgendwo gab es hier mal eine Diskussion, dass es wohl Tastaturen gibt, die das benötigen (mir ist davon allerdings noch keine begegnet). Es sind zwar die internen Pull-Ups seitens des Atmega aktiviert, aber manchmal scheint das nicht auszureichen. Also vorsehen für den Fall der Fälle...

Staune eh, dass dies noch keiner bemängelt hat...

Zitat:
Kenny-f-Powers schrieb
... man könnte doch auf dem Arduino ein paar Spiele/Eprom Inhalte zum brennen etc. hinterlegen die bei einer Tastenkombination auf der PS2 Tastatur automatisch eingetippt werden...


Bei der umfangreichen Software, die es für den MC80 gibt ,wäre da schon ein Massenspeicher nötig

Dieser Beitrag wurde am 25.03.2024 um 10:01 Uhr von DL editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
017
25.03.2024, 11:57 Uhr
Kenny-f-Powers



Hmmm... Die beiden Widerstände müssen jetzt auf die Revision 2 warten (ich musste gestern Abend noch bestellen, da ich schon wegen anderen Sachen im Warenkorb für nen Kumpel gedrängt wurde und diese Woche zeitlich nicht mehr dazu kommen werde.. ).

Dann schau ich auch mal ob ich ne SD Karte unter bekomme :-D
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
018
25.03.2024, 14:13 Uhr
DL




Zitat:
Kenny-f-Powers schrieb
Hmmm... Die beiden Widerstände müssen jetzt auf die Revision 2 warten



Na ja, die Anzahl der MC80.3x ist gering, mit ohne Tastatur noch geringer und die Wahrscheinlichkeit, da einen Treffer mit so einer Mimose von Tastatur zu erwischen gaanz gering

Dieser Beitrag wurde am 25.03.2024 um 14:14 Uhr von DL editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
019
25.03.2024, 23:43 Uhr
Kenny-f-Powers




Zitat:
DL schrieb
Na ja, die Anzahl der MC80.3x ist gering, mit ohne Tastatur noch geringer und die Wahrscheinlichkeit, da einen Treffer mit so einer Mimose von Tastatur zu erwischen gaanz gering



Da sich meine Außendienstätigkeit nun doch verschiebt habe ich noch ein bisschen was gemacht..
Auch wenn wir mal nicht davon ausgehen, dass es viele MC80 gibt die die Pull-Up´s brauchen(Bei meinem Glück sind beide MC80 die hier stehen aber ganz versessen auf die Pull-Up Widerstände...)so sind diese jetzt dabei

Für den Fall der Fälle habe ich aber neben den Widerständen noch ein bisschen Speicher eingebaut in einer ausreichenden Größe für eine Tastatur:


Die IC´s habe ich hier gemopst:
https://www.reichelt.de/dk/de/entwicklerboards-512-mb-sd-nand-flash-speicher-debo-sd-nand-512-p334934.html?PROVID=2788&gad_source=1&gclid=EAIaIQobChMIv8LAnKuQhQMVcERBAh1dSw9mEAQYASABEgIPH_D_BwE&&r=1

Das Bild ist natürlich nicht ganz ernst gemeint. Ich wollte aber mal schauen was die Chips auf dem Ding von dem Reichelt Board so tun weshalb ich mir die mal heraus gesucht hab.
Aber da hin kommt eine Reihe Pin´s die zu dem Speicher von Reichelt und SD-Kartenhaltern im allgemeinem passen sollten. (Braucht natürlich kein Mensch)

Dieser Beitrag wurde am 25.03.2024 um 23:58 Uhr von Kenny-f-Powers editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
020
26.03.2024, 10:39 Uhr
DL



Gibt ja außer Kassette noch andere Wege der Bits und Bytes nach drinnen und draußen ...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
021
26.03.2024, 14:09 Uhr
jennergruhle

Avatar von jennergruhle

Die Pull-Up-Widerstände am PS/2-Port brauchen meist die Tastaturen, die USB und PS/2 unterstützen. Diese Kombi-Geräte erkennen an den Pegeln, welches der Protokolle sie nun nutzen sollen.
Alte Nur-PS/2-Geräte interessiert das nicht.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
022
26.03.2024, 14:58 Uhr
DL



Hattest du deine Originaltastatur nicht zum laufen gebracht, dass du hier so viel Zeit investierst ?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
023
26.03.2024, 15:11 Uhr
Kenny-f-Powers




Zitat:
DL schrieb
Hattest du deine Originaltastatur nicht zum laufen gebracht, dass du hier so viel Zeit investierst ?


Ich gehe mal davon aus, dass sie funktioniert aber zugleich hab ich noch einen 2. der keine hat.

Aber um Fehler nach dem Ausschluss Prinzip zu entdecken sind Ersatz- und austauschbare Komponenten für mich immer wichtig.

Die Tastatur ist aber wie ich denke immer ein interessantes Mittel zum Austausch
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
024
26.03.2024, 15:25 Uhr
DL



Die Tastaturen mit den Hall-Tasten bedienen sich eigentlich angenehmer als der moderne Kram.
Mit der Anordnung der OFF- und ENTER - Tasten bin ich noch nicht ganz zufrieden, hab aber momentan nur so eine MINI-USB-Tastatur zur Verfügung, das inspiriert auch nicht gerade...

Bei dem Adapter mit Arduino kommt bei Start übrigens nur 1x Beep, durch den Bootlader ist der zu langsam und verpasst damit die Ton-Ausgabe am EGOS Prompt zum Start, ohne Bootlader funzt es mit 2x Beep.

Dieser Beitrag wurde am 26.03.2024 um 15:42 Uhr von DL editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
025
26.03.2024, 15:55 Uhr
Kenny-f-Powers




Zitat:
DL schrieb
Die Tastaturen mit den Hall-Tasten bedienen sich eigentlich angenehmer als der moderne Kram.
Mit der Anordnung der OFF- und ENTER - Tasten bin ich noch nicht ganz zufrieden, hab aber momentan nur so eine MINI-USB-Tastatur zur Verfügung, das inspiriert auch nicht gerade...

Bei dem Adapter mit Arduino kommt bei Start übrigens nur 1x Beep, durch den Bootlader ist der zu langsam und verpasst damit die Ton-Ausgabe am EGOS Prompt zum Start, ohne Bootlader funzt es mit 2x Beep.



Ich denke mal, da wir an die 5V gehen, könnte ich auf der Jagd nach dem 2x Beep den Arduino mit USB vorab "hochfahren"
https://www.arduinoforum.de/arduino-Thread-Arduino-USB-und-5V-Stromversorgung

Eine eigene Tastatur zu erfinden ist nun auch kein Hexenwerk, hier hatte ich mal eine für einen ZX81 gemacht:


Aber bis man dann ein Gehäuse und co. hat....
Das ist dann doch deutlich mehr Arbeit und vor allem auch Geld als ein Arduino Schild

Dieser Beitrag wurde am 26.03.2024 um 16:01 Uhr von Kenny-f-Powers editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
026
26.03.2024, 16:16 Uhr
DL




Zitat:
Kenny-f-Powers schrieb
Ich denke mal, da wir an die 5V gehen, könnte ich auf der Jagd nach dem 2x Beep den Arduino mit USB vorab "hochfahren"
https://www.arduinoforum.de/arduino-Thread-Arduino-USB-und-5V-Stromversorgung



Das würde ich nicht tun, damit jagst du die 5V rückwärts in den MC80 rein und da werden sicher etwas mehr als die zur Verfügung stehenden 500mA fließen. Dazu hätte man alles entkoppeln müssen, Optokoppler für die IFSS und eine Diode vor die 12V. Pfff, hier muss man wirklich mit allen rechnen... **kopfkratz**
Zwei verschiedene Spannungsquellen, das ist immer mit Vorsicht zu genießen.

Drücke einfach Reset und der zweite Beep wir wiederholt

Dieser Beitrag wurde am 26.03.2024 um 16:36 Uhr von DL editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
027
26.03.2024, 16:19 Uhr
Kenny-f-Powers




Zitat:
DL schrieb
Das würde ich nicht tun, damit jagst du die 5V rückwärts in den MC80 rein und da werden sicher etwas mehr als die zur Verfügung stehenden 500mA fließen. Dazu hätte man alles entkoppeln müssen, Optokoppler für die IFSS und eine Diode vor die 12V. Pfff, hier muss man wirklich mit allen rechnen... **kopfkratz**
Zwei verschiedene Spannungsquellen, das ist immer mit Vorsicht zu genießen.



Gut, dass wir mal darüber gesprochen haben, das wäre nicht so praktisch
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Flohmarkt ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek