PS/2 Verbindung Pinout ?

Gast #3253301
Lesenswert?

Guten tag,
ich versuche gerade eine PS/2 Tastatur zum laufen zu bringen. Ich habe 
ein PS/2 Verlängerungskabel. Von diesem Kabel kommen 6 weitere Kabel 
heraus.
Nun mein Problem ist, ich habe keine Ahnung was der Pinout ist ?
1
schwarz -> GND
2
rot -> Vcc

Diese sind sicher, aber ich weiß nicht welches Data und Clock ist. Ich 
habe ein Programm geschrieben, das bei einer fallenden Flanke eine LED 
an macht, das heißt wenn ich eine Taste drücke, beim Startbit die LED 
angeht. Doch das tut sie bei keinem Pin. ? Hat jemand eine Lösung ?

Hier mein Code der bei einer fallenden Flanke eine LED an macht:
1
#define F_CPU 3686400UL
2

3
#include <avr/io.h>
4
#include <avr/interrupt.h>
5
#include <util/delay.h>
6

7
ISR(INT0_vect)
8
{
9
  PORTD |= (1<<PD4);
10
}
11

12
int main(void)
13
{
14
  DDRD &= ~((1<<PD2) | (1<<PD3));   //Clock & Data
15
  PORTD |= ((1<<PD2) | (1<<PD3));   //Pull-Up
16
  
17
  DDRD |= (1<<PD4);  //LED
18
  PORTD &= ~(1<<PD4);
19
  
20
  MCUCR |= (1<<ISC01);   //fallende Flanke bei INT0
21
  GICR |= (1<<INT0);   //INT0 aktivieren
22
  sei();
23
  
24
    while(1)
25
    {
26
        //TODO:: Please write your application code 
27
    }
28
}
Angehängte Dateien:
Gast #3253402
Lesenswert?

Wenn du mit dem Ohmmeter zwischen dem roten und nacheinander den 4 
andern misst, dann haben 2 davon einen Wert von 1...10k und das sind 
Data und Clock(Pullup-Widerstände).
Und jetzt noch herausfinden welcher was ist, sollte bei 2 Möglichkeiten 
nicht mehr so schwer sein.
Gast #3253901
Lesenswert?

Okay das mit dem Verbinden habe ich soweit hinbekommen.
Wenn ich jetzt jedoch die Bits per UART an den PC sende kommen
nicht 8 Zahlen, sondern 16 Zahlen.
Hat es das vielleicht mit den BreakCodes zu tun ?
Also wenn ich zum Beispiel die Taste 'a' drücke
kommt dieses Ergebnis heraus:
1
0001110000000111
 Wobei der ersten 8 Zahlen die Taste repräsentieren. Wahrscheinlich wird 
der letzt Teil (00000111) der BreakCode sein, oder ?
Wie kann ich diesen BreakCode unterdrücken bzw. Ignorieren ?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren