1. Trang chủ
  2. » Công Nghệ Thông Tin

Cấu trúc máy tính pptx

17 425 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 509,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

CẤU TRÚC MÁY TÍNH Các thiết bị xuất nhập  Bàn phím  Màn hình  Chuột  Các giao tiếp ngoại vi  Giao tiếp song song  Giao tiếp nối tiếp... yêu cầu từ bàn phím, chip này gửi tín hiệu

Trang 1

CẤU TRÚC MÁY TÍNH

 Các thiết bị xuất nhập

 Bàn phím

 Màn hình

 Chuột

 Các giao tiếp ngoại vi

 Giao tiếp song song

 Giao tiếp nối tiếp

Trang 2

BÀN PHÍM _ KEYBOARD

 Các kiểu bàn phím: các máy tính IBM và tương thích sử dụng các kiểu bàn phím sau:

Bàn phím XT chuẩn

83 phím:

 5 đầu nối DIN

 truyền nối tiếp 1 chiều

 không hỗ trợ từ host đến bàn phím

 sử dụng scan code set 1

Bàn phím AT chuẩn 84-101 phím:

 6 đầu nối DIN

 truyền nối tiếp 2 chiều

 sử dụng scan code set 2

Trang 3

Các kiểu bàn phím

Bàn phím tăng cường 101 hoặc 102 phím

Bàn phím PS/2:

 84-102 phím

 6 đầu nối mini DIN

 truyền nối tiếp 2 chiều

 hỗ trợ sử dụng scan code set 3

 có 17 lệnh host to keyboard

Trang 4

Cấu trúc và giao tiếp bàn phím

switch, tạo ra một tiếp xúc điện khi ấn phím

 Pure mechanical

 Foam element

 Rubber dome

 Membrane

ngoại vi 8255A

là chip 8042, 8048, 8049, 8741,

8742, 6868, 6805.

yêu cầu từ bàn phím, chip này gửi tín hiệu ngắt IRQ1 và truyền

dữ liệu vào CPU

Trang 5

Kết nối bàn phím

DIN 5 pin

1 Clock

2 Data

3 N/C

4 GND

5 +5V (VCC)

PS/2

1 Clock

2 GND

3 Data

4 N/C

5 +5V (VCC)

6 N/C

Trang 6

Mã quét bàn phím (Scan code)

 Khi nhấn 1 phím, bộ xử lý bàn phím gửi đến

PC mã quét (scan-code) của phím được nhấn

Khi phím được nhấn, mã này gọi là

make-code

Khi phím được nhả, mã này gọi là

break-code

 Break-code gồm 2 byte: byte đầu là F0 (đối với bàn phím mở rộng), byte kế là mã make-code

 Scan code có 3 tiêu chuẩn: set 1, set 2, set 3 Bàn phím hiện nay mặc nhiên sử dụng set 2

 Ví dụ:

 nhấn SHIFT: make-code = 12

 Nhấn A: make-code = 1C

 Nhả A: break-code = F0, 1C

 Nhả SHIFT: break-code = F0, 12

 Mã được truyền nối tiếp từng byte, với khung truyền 11bit

Trang 7

Bảng scan-code

Scan code bàn phím loại 83 phím

Scan-code bàn phím loại 102 phím

Trang 8

Giao tiếp bàn phím

 Bàn phím PS2 giao tiếp bằng giao thức nối tiếp bất đồng bộ 2 chiều

 Xung clock được phát bởi bàn phím, tần số khoảng 10-16.7kHz

 Các trạng thái hoạt động:

 Data=high, clock=high: trạng thái rảnh

 Data=high, clock=low: trạng thái cấm giao tiếp

 Data=low, clock=high: trạng thái máy chủ được yêu cầu truyền dữ liệu

 Nếu máy chủ muốn truyền dữ liệu, nó phải cấm giao tiếp từ bàn phím bằng cách kéo clock xuống thấp, sau đó kéo Data xuống mức thấp và giải phóng cho clock

 Data được truyền theo khung dữ liệu gồm 11-12bit như sau:

 1 start bit = 0

 8 data bit (LSB truyền trước)

 1 parity bit

 1 stop bit = 1

 1 acknowledge bit (host only)

Trang 9

Giao tiếp bàn phím (tt)

1 Truyền dữ liệu từ bàn phím về máy

chủ:

 Các bước thực hiện:

 Kiểm tra bus đang ở trạng thái rảnh

 Clock ở mức cao ít nhất 50us trước khi bàn phím gửi data

 Bàn phím gửi data từng khung dữ liệu

11bit

 Dữ liệu được đọc tại cạnh xuống của clock

 Máy chủ có thể cấm giao tiếp bằng cách kéo clock xuống thấp

 Khi clock được giải phóng, bàn phím lại

truyền tiếp dữ liệu chưa hoàn chỉnh

Dữ liệu từ keyboard đến PC

Trang 10

2 Truyền dữ liệu từ máy chủ đến bàn phím:

 Các bước thực hiện:

 máy chủ cấm truyền từ bàn phím đến

bằng cách kéo clock xuống thấp

 máy chủ kéo data xuống thấp và giải

phóng clock báo hiệu bàn phím phát xung clock bắt đầu truyền dữ liệu

 Dữ liệu được đọc tại cạnh lên của clock

 Sau khi bàn phím nhận stop bit nó sẽ

truyền tín hiệu ACK đến máy chủ kết thúc quá trình truyền dữ liệu

Dữ liệu từ PC đến keyboard

Trang 11

Chức năng Typematic

 Khi một phím được nhấn liên tục, nó trở thành typematic

 Bàn phím gửi mã nhấn phím đến PC lặp đi lặp lại

 Tốc độ typematic có thể điều chỉnh

bằng cách gửi lệnh đến bộ điều khiển bàn phím

 Lệnh điều khiển bàn phím trong DOS

 MODE CON: RATE=r DELAY=d

 RATE: tốc độ typematic, r = ký tự trên giây (cps)

 DELAY: khoảng thời gian trước khi

typematic xảy ra Số DELAY:

 1 -> 0.25s

 2 -> 0.50s

 3 -> 0.75s

 4 -> 1.00s

 Ví dụ: lệnh sau được đặt trong

Trang 12

Truy xuất bàn phím qua DOS

 Có thể truy xuất bàn phím qua một số hàm của DOS với ngắt INT 21h: 01h, 06h, 07h, 08h, 0ah, 0bh, 3fh.

 Chương trình ví dụ: đọc 80 ký tự vào buffer

char *ch_input(void)

{ char *buffer, *string;

union REGS inregs, outregs;

buffer = (char*) malloc(82);/* tạo buffer */

*buffer = 80; /* byte đầu chỉ số lượng ký tự */

Inregs.h.ah = 0x0ah;

inregs.x.dx = FP_OFF(buffer);

int86(0x21,&inregs,&outregs);

string = buffer+2;

return(string) }

Trang 13

Lập trình bàn phím trực tiếp

qua Port

 Các thanh ghi:

 Port 60h: output buffer (R)

 Port 60h: input buffer (W)

 Port 64h: control register (W)

 Port 64h: status register (R)

 Status register:

Bit 7 (PARE): 1- last byte with parity error;

0- last byte without parity error

Bit 6 (TIM): 1-error; 0-no time-out error

Bit 5 (AUXP): 1-holds data for auxiliary

device

Bit 4 (KEYL): 1-keyboard free; 0-keyboard

locked

Bit 3 (C/D): 1-command byte written via

port 64h; 0-command byte written via port 60h

Bit 2 (SYSF): 1-self test successful; 0-power

on reset

Bit 1 (INPB): 1-CPU data in input

buffer;0-input buffer empty

Bit 0 (OUTB): 1-keyboard controller data in

output buffer; 0-output buffer empty

Trang 14

Lập trình bàn phím trực tiếp qua Port (tt)

 Control register (8 bit): gồm 17 lệnh theo bảng lệnh sau

Code Command

a7h

a8h

a9h

aah

abh

adh

aeh

c0h

c1h

c2h

d0h

d1h

d2h

d3h

d4h

e0h

disable auxiliary device enable auxiliary device check interface to auxiliary device self-test

check keyboard interface disable keyboard

enable keyboard read input port read out input port (low) read out input port (high) read output port

write output port write keyboard output buffer write output buffer of auxiliary device write auxiliary device

read test input port

Trang 15

Lập trình bàn phím trực tiếp qua Port (tt)

 Ví dụ: disable keyboard

start:

IN al, 64h ;read status byte

TEST al, 02h ;check whether input buffer is full

JNZ start ;some byte still in input buffer

OUT 64h, adh ;disable keyboard

 Ví dụ: ghi byte 01h vào output port

OUT 64h, d1h ;pass code for the controller command

;write output port wait:

IN al, 64h ;read status register

TEST al, 02h ;check whether input buffer is full

JNZ wait ;input buffer full thus wait

OUT 60h,01h ;pass data byte 01h for the controller

;command

Trang 16

Thiết kế giao tiếp bàn phím

L C D - H D 4 4 7 8 0

D B 0

D B 1

D B 2

D B 3

D B 4

D B 5

D B 6

E N

R S

R / W

V E E

D B 7

1 2 M H z

V C C

5 V

1 0 u F

3 0 p F

5 V

K e y b o a r d

6 4

2 1

3 5

3 0 p F

R 3

1 0 k

A T 8 9 C 5 1

9

1 8

1 9

2 9

3 0

3 1

1 2 3 4 5 6 7 8

2 1

2 2

2 3

2 4

2 5

2 6

2 7

2 8

1 3

1 1

1 2

1 0

1 4

3 6

3 5

3 4

3 9

3 8

3 7

1 7

1 6

1 5

3 3

3 2

R S T

X T A L 2

X T A L 1

P S E N

A L E / P R O G

E A / V P P

P 1 0

P 1 1

P 1 2

P 1 3

P 1 4

P 1 5

P 1 6

P 1 7

P 2 0 / A 8

P 2 1 / A 9

P 2 2 / A 1 0

P 2 3 / A 1 1

P 2 4 / A 1 2

P 2 5 / A 1 3

P 2 6 / A 1 4

P 2 7 / A 1 5

P 3 3

P 3 1 / T X D

P 3 2 / I N T O

P 3 0

P 3 4 / T O

P 0 3

P 0 4

P 0 5

P 0 0 / A D 0

P 0 1 / A D 1

P 0 2 / A D 2

P 3 7

P 3 6

P 3 5

P 0 6 / A D 6

P 0 7 / A D 7

5 V

1 N/C

2 Data

3 +5V (VCC)

4 GND

Thiết kế minh hoạ: giao tiếp bàn phím với AT89C51

• Chân Data nối P3.4

• Chân Clock nối P3.2

• Dữ liệu thu được từ bàn phím sẽ hiển thị trên LCD điều khiển ở P1

Trang 17

Câu hỏi ôn tập

1. Nêu đặc điểm các thế hệ bàn phím

2. Trình bày giao thức truyền giữa bàn

phím và PC

3. Mã scan-code là gì? Nếu bấm phím sau

thì bàn phím sẽ truyền mã gì đến PC:

1 Nhấn và nhả Delete

2 Nhấn Ctrl + z, sau đó nhả phím

3 Nhấn và nhả phím ->

4. Có bao nhiêu lệnh hỗ trợ từ host đến

keyboard Kể tên

5. Trình bày hoạt động của chế độ typmatic

6. Hãy cài đặt để chế độ typematic có thời

gian trễ là 0.5s và tốc độ là 20 ký

tự/giây

7. Viết chương trình điều khiển keyboard

thực hiện selftest

8. Viết chương trình ghi giá trị 0fh ra

output port của keyboard

9. Viết chương trình ASM cho AT89C51 để

nhận mã scan-code từ bàn phím

10. Tìm hiểu các bộ mã scan-code của bàn

phím

Ngày đăng: 31/07/2014, 18:20

HÌNH ẢNH LIÊN QUAN

Bảng scan-code - Cấu trúc máy tính pptx
Bảng scan code (Trang 7)

TỪ KHÓA LIÊN QUAN

w