Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Urządzenia PS2. Klawiatura PC na PS2 2/22 Klawiatura PC: klawiszom przyporządkowane są kody nie będące kodami ASCII zestaw kodowy #1.

Podobne prezentacje


Prezentacja na temat: "Urządzenia PS2. Klawiatura PC na PS2 2/22 Klawiatura PC: klawiszom przyporządkowane są kody nie będące kodami ASCII zestaw kodowy #1."— Zapis prezentacji:

1 Urządzenia PS2

2 Klawiatura PC na PS2 2/22 Klawiatura PC: klawiszom przyporządkowane są kody nie będące kodami ASCII zestaw kodowy #1

3 Klawiatura PC na PS2 3/22 zestaw kodowy #2 kod czerwony jest poprzedzony przez 224 (0xE0), dla PrintScrn wciśnięcie: 224,18,224,124 zwolnienie: 224,240,124,224,240,18 * = 0xE1,0x14,0x77,0xE1,0xF0.0x14,0xF0,0x77

4 Klawiatura PC na PS2 4/22 transmisja na złączu PS2 jest synchroniczna dwukierunkowa; złącze PS2 (widok gniazda od przodu): obciążalność zasilania do 275mA; częstotliwość sygnału zegarowego ,7kHz; wyjścia układów nadających na linie zegara i danych są typu OC z rezystorami podciągającymi: 5 Clock 3 masa 1 Data 6 +5V 4 2 ODB NAD +5V Data Clock

5 Klawiatura PC na PS2 5/22 sterownik matrycy klawiszy sygnalizuje każde wciśnięcie klawisza - wysyłając bajt z przypisanym mu kodem; oraz każde zwolnienie klawisza - wysyłając bajt F0h a następnie przypisany mu kod. transmisja klawiatura - PC: klawiatura steruje liniami Data i Clock dane są odczytywane przez PC na opadającym zboczu Clock (dane powinny być stabilne przy niskim poziomie Clock) transmisja kodu 26h (wciśnięcie klawisza 3) od sterownika klawiatury do PC: transmisja z klawiatury może być zahamowana poprzez wymuszenie przez PC niskiego stanu na linii Clock przez min. 100μs S=0D0D1D2D3D4D5D6D7NE=1 KB-Clock KB-Data >50μs Sugerowane czasy: >5μs 5-25μs

6 Klawiatura PC na PS2 6/22 transmisja z klawiatury może być zahamowana poprzez wymuszenie przez PC niskiego stanu na linii Clock przez min. 100μs, np: po zaniku sygnału wstrzymania (Clock=0) transmisja z klawiatury może być wznowiona – powtórzona; przez czas wstrzymania transmisji klawiatura buforuje kody wciśniętych i zwolnionych znaków w zaledwie 16-bajtowym buforze (w przypadku myszki bufor przechowuje dane tylko o ostatnim ruchu); >50μs S=0D0D1D2D3D4D5D6 KB-Clock KB-Data >100μs

7 Klawiatura PC na PS2 7/22 rzeczywiste przebiegi:

8 Klawiatura PC na PS2 8/22 transmisja kodów: F0h i 26h (zwolnienie klawisza 3) od sterownika klawiatury do PC:

9 Klawiatura PC na PS2 9/22 rzeczywiste przebiegi:

10 Klawiatura PC na PS2 10/22 Stan klawiatury po włączeniu zasilania lub po komendzie RESET: - opóźnienie autopowtarzania - 500ms; - częstotliwość autopowtarzania - 10,9Hz; - zestaw kodowy matrycy - #2; - włączenie autopowtarzania dla wszystkich klawiszy; - przeprowadzenie autotestu (błyskają kontrolne LEDy); - wysłanie do komputera nadrzędnego kodu wyniku autotestu: 0AAh gdy OK, 0FCh gdy błąd; Transmisja PC - klawiatura: transmisja bajtu 26h od PC do sterownika klawiatury: S=0D0D1D2D3D4D5D6D7NE=1 KB-Clock KB-Data wywołanie=0 z PC >100μs ACK=0 z klawiatury

11 Klawiatura PC na PS2 11/22 Reguły obsługi komend sterujących (przesyłanych z PC) przez klawiaturę: - po otrzymaniu dowolnej komendy klawiatura czyści swój bufor wyjściowy; - po otrzymaniu błędnej komendy lub błędnego argumentu komendy, klawiatura odpowiada kodem 0FEh; - klawiatura nie przesyła żadnych kodów wciśniętych klawiszy podczas przetwarzania otrzymanej komendy; - jeżeli oczekując na argument komendy klawiatura otrzyma kod nowej komendy, to porzuca przetwarzanie starej i rozpoczyna obróbkę nowego polecenia.

12 Klawiatura PC na PS2 12/22 Komendy klawiatury: - 0FFh - RESET, klawiatura potwierdza kodem 0FAh; - 0FEh - RESEND, klawiatura powtarza ostatnio wysłany bajt; - 0FDh - wyłącza sygnalizację zwolnienia i autopowtarzanie dla wybranych klawiszy, klawiatura potwierdza kodem 0FAh, następnie wyłącza skanowanie i odczytuje z PC listę klawiszy, potwierdzając każdy odebrany kod bajtem 0FAh, po czym włącza ponownie skanowanie matrycy klawiszy; - 0FCh - jak 0FDh ale tylko wyłącza autopowtarzanie wskazanych klawiszy; - 0FBh - jak 0FDh ale tylko wyłącza sygnalizację zwolnienia wskazanych klawiszy; - 0FAh - przywraca pierwotny stan pełnej obsługi wszystkich klawiszy, tzn. z sygnalizacją wciśnięcia i zwolnienia oraz autopowtarzaniem, klawiatura potwierdza kodem 0FAh; *dostępne tylko w klawiaturach PS2

13 Klawiatura PC na PS2 13/22 Komendy klawiatury: - 0F9h - działa jak 0FDh w stosunku do wszystkich klawiszy, klawiatura potwierdza kodem 0FAh; - 0F8h - działa jak 0FCh w stosunku do wszystkich klawiszy, klawiatura potwierdza kodem 0FAh; - 0F7h - działa jak 0FBh w stosunku do wszystkich klawiszy, klawiatura potwierdza kodem 0FAh; - 0F6h - przywrócenie ustawień domyślnych (jak po resecie), klawiatura potwierdza kodem 0FAh; - 0F5h - zatrzymanie skanowania i przywrócenie ustawień domyślnych (jak po resecie), klawiatura oczekuje na następne rozkazy; - 0F4h - włączenie skanowania po zatrzymaniu komendą 0F5h; *dostępne tylko w klawiaturach PS2

14 Klawiatura PC na PS2 14/22 - 0F3h - ustawienie częstotliwości i opóźnienia autopowtarzania, po komendzie PC przesyła bajt konfiguracyjny: 0 DEL 1 DEL 0 RATE 4 RATE 3 RATE 2 RATE 1 RATE 0 wartość opóźnienia: DEL 1 DEL 0 = ,25s ,5s ,75s ,0s wartość częstotliwości autopowtarzania [Hz]: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,0

15 Klawiatura PC na PS2 15/22 - 0F2h - podaj kod ID, klawiatura odpowiada 2 bajtami kodu albo parą bajtów: 0ABh, 83h; - 0F0h - ustawienie zestawu kodowego matrycy klawiszy, klawiatura potwierdza kodem 0FAh i oczekuje na bajt z numerem zestawu (00h, 01h, 02h albo 03h), który także potwierdza kodem 0FAh, jeżeli numer był 00h to klawiatura dodatkowo odsyła do PC aktualnie ustawiony numer zestawu kodowego; - 0EEh - odpowiedz echem, klawiatura odsyła kod 0EEh; - 0EDh - sterowanie LEDami: bajt argumentu zawiera na pozycjach 2..0 stan LEDów: odpowiednio Caps Lock, Num Lock, Scroll Lock *dostępne tylko w klawiaturach PS2

16 Mysz PC na PS2 16/22 Podstawowy pakiet danych przesyłany przez mysz bez kółka do PC: nadmiar w osi Y nadmiar w osi X ΔY 8 ΔX 8 1 stan śr. przycisku stan pr. przycisku stan lew. przycisku ΔX 7..0 ΔY 7..0 bajt #1: bajt #2: bajt #3: Przesunięcia ΔX oraz ΔY są podawane w 9-bitowym kodzie U2 Jeżeli aktualna (chwilowa) zmiana położenia przekracza wartość ustawiane są bity nadmiaru w danej osi.

17 Mysz PC na PS2 17/22 Podstawowy pakiet danych przesyłany przez mysz z kółkiem do PC: Przesunięcia ΔX oraz ΔY i bity nadmiaru są podawane jak w myszy bez kółka. ΔZ - ruch kółka, zwykle: 00h - brak obrotu, 01h - obrót w przód, 0Fh - obrót w tył, w ogólnym przypadku wartość z przedziału nadmiar w osi Y nadmiar w osi X ΔY 8 ΔX 8 1 stan śr. przycisku stan pr. przycisku stan lew. przycisku ΔX 7..0 ΔY 7..0 bajt #1: bajt #2: bajt #3: bajt #4: ΔZ 3..0

18 Mysz PC na PS2 18/22 Tryby pracy myszy: 1. RESET - po włączeniu zasilania albo po przesłaniu do myszy rozkazu resetu (0FFh), mysz odpowiada bajtem potwierdzenia 0FAh, przeprowadza autotest, ustawia się na domyślne parametry pracy: 100 próbek na sekundę rozdzielczość 4 impulsy/mm współczynnik skali 1:1 wyłączone raportowanie danych po czym wysyła odpowiedź: 0AAh gdy autotest pomyślny 0FCh gdy autotest błędny oraz kolejny bajt będący kodem ID albo 00h po czym mysz przełącza się w tryb strumieniowy.

19 Mysz PC na PS2 19/22 Reakcja myszy po resecie:

20 Mysz PC na PS2 20/22 2. Tryb strumieniowy - mysz wysyła 3-bajtowe pakiety danych o wykrytych zmianach położenia lub stanu jej przycisków. UWAGA: warunkiem rozpoczęcia tej transmisji jest: włączenie raportowania danych kodem 0F4h, potwierdzanym przez mysz bajtem 0FAh. 3. Tryb zdalny - mysz rejestruje przesunięcia i stany klawiszy, ale nie wysyła automatycznie informacji o zmianach. Urządzenie nadrzędne musi odpytywać mysz poleceniem 0EBh. W odpowiedzi na nie mysz wysyła bajt potwierdzenia 0FAh oraz jeden 3-bajtowy pakiet stanu. Tryb zdalny włącza się rozkazem 0F0h z potwierdzeniem 0FAh od myszy. 4. Tryb z echem odbieranych komend - każde odebrane polecenie jest najpierw odsyłane jako echo do PC, a potem wysyłana jest właściwa odpowiedź. Tryb włącza się komendą 0EEh, a wyłącza - komendą 0ECh. Tu także obowiązują potwierdzenia 0FAh.

21 Mysz PC na PS2 21/22 Inne komendy myszy: 0FEh - powtórz ostatnią transmisję, nie potwierdzana przez mysz 0F6h - wybranie ustawień domyślnych, potwierdzana przez mysz bajtem 0FAh 0F5h - wyłącz raportowanie danych (w trybie strumieniowym), potwierdzana przez mysz bajtem 0FAh 0F3h - ustawienie częstotliwości próbkowania: 10, 20, 40, 60, 80, 100 albo 200 próbek na sekundę mysz odpowiada kodem 0FAh, po nim należy wysłać bajt z liczbą próbek na sek., który także jest potwierdzany bajtem 0FAh 0F2h - podaj kod ID - mysz odpowiada bajtem potwierdzenia 0FAh, a następnie bajtem kodu ID albo 00h

22 Mysz PC na PS2 22/22 0EAh - włączenie trybu strumieniowego, potwierdzana przez mysz bajtem 0FAh 0E9h - podaj status, mysz potwierdza bajtem 0FAh, a następnie wysyła 3-bajtową informację: 0MODEDRSCL0 stan lew. przycisku stan śr. przycisku stan pr. przycisku rozdzielczość próbkowanie bajt #1: bajt #2: bajt #3: MODE = 0 - tryb strumieniowy, =1 - tryb zdalny DR = 0 - wyłączone raportowanie danych, =1 - włączone raportowanie danych SCL = 0 - skalowanie 1:1, =1 - skalowanie 2:1 rozdzielczość: 00h - 1imp/mm, 01h - 2imp/mm, 02h - 4imp/mm, 03h - 8imp/mm próbkowanie: 10, 20, 40, 60, 80, 100 albo 200 razy/sek.

23 Mysz PC na PS2 23/22 0E8h - ustawienie rozdzielczości, potwierdzana przez mysz bajtem 0FAh, po którym należy przesłać do myszy bajt rozdzielczości (00h, 01h, 02h albo 03h), także potwierdzany przez mysz bajtem 0FAh 0E7h - ustaw skalowanie 2:1, potwierdzana przez mysz bajtem 0FAh 0E6h - ustaw skalowanie 1:1, potwierdzana przez mysz bajtem 0FAh Standardowa mysz PS2 może wysłać do PC tylko dwa polecenia: 0FEh - powtórz transmisję 0FCh - błąd.


Pobierz ppt "Urządzenia PS2. Klawiatura PC na PS2 2/22 Klawiatura PC: klawiszom przyporządkowane są kody nie będące kodami ASCII zestaw kodowy #1."

Podobne prezentacje


Reklamy Google