Hallo NG, ist es m=F6glich aus einer seriellen Schnittstelle einen Takt und Daten so auszugeben, dass sie eine Tastatur simulieren? Sch=F6n w=E4re wenn es nicht zu unterscheiden w=E4re, aber f=FCr den Anfang reichts wenns ann=E4hernd geht.
RS232 auf PS/2-Tastatur
Oct 02, 2006
33 Replies
André Hentschel schrieb:
Da muss schon bissel Elektronik dazwischen.
MFG Falk
=C3=BCr den
=C3=9Cber die Datenleitung sicher nicht, aber mit den Handshake-Leitungen sollte das machbar sein, allerdings wird das mit den Timings ein wenig kitzlig, da hei=C3=9Ft es: Maximale Priorit=C3=A4t f=C3=BCr den ausf=C3=BChrenden Prozess und CPU Frequency= Scaling (SpeedStep) abschalten.
Wolfgang Draxinger
--=20 E-Mail address works, Jabber: snipped-for-privacy@jabber.org, ICQ: 134682867 GPG key FP: 2FC8 319E C7D7 1ADC 0408 65C6 05F5 A645 1FD3 BD3E
Das Tastaturinterface ist synchron, da ist das Timing nicht ganz so eng zu sehen.
Nicht vergessen, das Interface fuer die typische PC-Tastatur ist bidrektional!
Gerrit
Kommt drauf an wer an der "Tastatur" h=E4ng, also sie ausliest
in wie fern???
ich DANKE euch alle schonmal f=FCr die konstruktiven Beitr=E4ge!
Was glaubst Du, wie die Num-/Caps-/Scroll-Lock LEDs angeschaltet werden?
Gruß Henning
mmh, aber das kann doch nicht so schwer sein, ich meine die rs232 hat ja auch einen Tx. Den Takt kann man ja scheinbar =FCber CTR oder sowas machen.
Warum nicht gleich den Parallelport nehmen? Nach dem Vorbild I2C-Adapter.
Gruß Henning
Eben, die werden vom Rechner kontrolliert. Ausserdem kann man der Tastatur noch andere Kleinigkeiten sagen, z.B. welche der verschiedenen Scancode-Tabellen sie benutzen soll. Die normale MF2-Tastatur (bzw. kompatible) hat meines Wissens 3 verschiedene Tabellen eingebaut.
Wenn man also mit einem PC eine Tastatur emulieren will, dann sollte man das Protokoll auf dem Kabel genau verstanden haben.
Gerrit
Klingt auch recht interessant, was hat eine Standarttastatur eigentlich f=FCr einen Takt am Stecker?
Sehr stark unterschiedlich, je nachdem welcher Controller verwendet wurde und welcher Quarz letzte Woche billig zu haben war.
Hier ist eine URL die das ganze recht detailliert erklaert:
formatting link
Die Frequenz auf CLK scheint meist zwischen 20 und
30 KHz zu liegen. Sollte kein Problem sein, ich hab hier irgendwo noch einen Bauplan zum Anschluss einer PC-Tastatur an einen Amiga und der benutzt einen Standard 8031 mit 11.0592 MHz Quarz als Uebersetzer, obige URL baut einen Umsetzer mit einem 68HC705.Gerrit
Der Takt wird von der Tastatur vorgegeben und liegt im Bereich
10-16kHz. Mit einem Microcontroller trivial, auf dem PC dürfte es mit den gängigen (nicht-Echtzeit) Betriebssystemen schwierig werden.Was spricht dagegen, in den Adapter einen kleinen uC einzubauen?
Hergen
mmh, man k=F6nnte h=F6chstens in VB6 ein paar ASM-Zeilen mit einbauen
Des wird mir zu viel Aufwand
Was soll das bringen? Dein Programm unterliegt damit immernoch dem Scheduler. Damit wird alles quasi-nichtdeterministisch. Und auch in Assembler kannst du Interrupts nicht komplett sperren, weil du dazu nicht die Privilegien hast (zumindest ist das in jedem auch nur annähernd sinnvoll implementertem Betriebssystem so, ich denke mal das ist auch in Windows der Fall).
Gruß, Johannes
durch dei Verdunstung kült das sogar ziemlich gut
das ist wie schweiß. Hünde müssen da hecheln so wie Lüfter.
Markus Gronotte in de.sci.electronics
Hilft auch nix, wenn Dir das preemptive Multitasking im unpassenden Moment dazwischenfunkt. ZUVERLÄSSIG wird das so nicht funktionieren.
'Nen ATTINY2313 kostet nur einen guten Euro, und ist damit billiger als die Stecker... ^_-
Hergen
Dann vergiß es. Du wird diverse Timeouts im ms-Bereich einhalten müssen. Zudem sind beide Leitungen DATA und CLOCK open-collector mit Pullup gegen
5v, und sowohl Tastatur als auch PC können (und werden) die Leitungen gegen Ground ziehen und den aktuellen Zustand zurücklesen. Du wirst sofort alles vollständig implementieren müssen, weil sonst bereits die Initialisierungssequenz fehlschägt.Siehe
formatting link
Mit freundlichen Grüßen
Frank-Christian Krügel
André Hentschel schrieb:
Vielleicht hilft dir das weiter
formatting link
Gruß Rolf
"Hergen Lehmann" schrieb
Nur wenn die Tastatur sendet. Der Sender gibt immer den Takt an.
Da ist doch schon ein 8042 dazwischen ;-)
Zu den Taktsignalen und dem Timing kommt noch seit PS2 ein Softwareprotokoll zwischen PC und Tastatur dazu und das ist AFAIK im ROM vom 8042 realisiert. Den kannst du aber nicht mehr austauschen, der ist im Chipsatz versteckt.
Hier gibts was zu lesen:
formatting link
formatting link
Gruß
Hans Georg
Die beiden Tastaturleitungen sind Bidirektional (Eingang, Pull UP Widerstand und Ausgang OC) die RS232 Handshake Leitungen nicht.
Daran ändert die tollste Software nix.
Gruß
Hans-Georg
Nein. Nicht beim Tastaturinterface. Dort gibt _immer_ die Tastatur den Takt an.
Gerrit
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required