1. Trang chủ
  2. » Luận Văn - Báo Cáo

Giao tiếp máy tính với Kit vi xử lý 8086

99 1,1K 5
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

Tiêu đề Giao tiếp máy tính với kit vi xử lý 8086
Tác giả Phạm Xuân Hưng
Người hướng dẫn Thầy Nguyễn Đình Phú
Trường học Đại Học Quốc Gia TP. Hồ Chí Minh
Chuyên ngành Kỹ thuật Điện – Điện tử
Thể loại Luận văn tốt nghiệp
Năm xuất bản 2000
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 99
Dung lượng 621 KB

Nội dung

Giao tiếp máy tính với Kit vi xử lý 8086

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH ĐẠI HỌC SƯ PHẠM KỸ THUẬT KHOA ĐIỆN – ĐIỆN TỬ

LUẬN VĂN TỐT NGHIỆP Đề tài:

GIAO TIẾP MÁY TÍNH VỚI KIT

Trang 2

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

ĐẠI HỌC SƯ PHẠM KỸ THUẬT KHOA ĐIỆN - ĐIỆN TỬ

LUẬN VĂN TỐT NGHIỆP

Đề tài:

GIAO TIẾP MÁY TÍNH VỚI

KIT VI XỬ LÝ 8086

PHẦN 1: GIỚI THIỆU CHUNG

CHƯƠNG DẨN NHẬP

CHƯƠNG CƠ SỞ LÝ LUẬN

CHƯƠNG I: CẤU TRÚC VI XỬ LÝ 8086

CHƯƠNG II: KHẢO SÁT TỔNG QUÁT TẬP LỆNH 8086

CHƯƠNG III: GIAO TIẾP VỚI MÁY TÍNH

PHẦN 2 : PHẦN CỨNG VÀ PHẦN MỀM CỦA Û MẠCH GIAO TIẾP

CHƯƠNG IV: GIỚI THIỆU KIT VXL 8086

CHƯƠNG V: GIAO TIẾP NỐI TIẾP DÙNG VI MẠCH 8251A

CHƯƠNG VI: CHƯƠNG TRÌNH GIAO TIẾP ( CHƯƠNG TRÌNH

TRUYỀN, NHẬN DỮ LIỆU)

HƯỚNG PHÁT TRIỂN ĐỀ TÀI

KẾT LUẬN ĐÁNH GIÁ

PHỤ LỤC

TÀI LIỆU THAM KHẢO

Giáo viên hướng dẫn: NGUYỄN ĐÌNH PHÚ Sinh viên thực hiện: PHẠM XUÂN HƯNG

Trang 3

BỘ GIÁO DỤC& ĐÀO TẠO CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH _

KHOA ĐIỆN BỘ MÔN ĐIỆN – ĐIỆN TỬ

NHIỆM VỤ LUẬN VĂN TỐT NGHIỆP

Họ và tên sinh viên : PHẠM XUÂN HƯNG

1 Tên đề tài: GIAO TIẾP MÁY TÍNH VỚI KIT VI XỬ LÝ 8086

2 Các số liệu ban đầu:

………

………

………

………

3 Nội dung các phần thuyết minh tính toán: ………

………

………

………

4 Các bản vẽ: ………

………

………

5 Giáo viên hướng dẫn : NGUYỄN ĐÌNH PHÚ

6 Ngày giao nhiệm vụ :

7 Ngày hoàn thành nhiệm vụ: 25/2/2000

Giáo viên hướng dẫn: Thông qua Bộ môn

Ngày tháng năm 1999

Trang 4

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN



………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Trang 5

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Giáo viên hướng dẫn

Trang 6

NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN



………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Trang 7

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Giáo viên phản biện

Trang 8

Lời cảm tạ

Sinh viên thực hiện cũng xin chân thành cảm ơn các thầy, các cô trong khoa cùng các bạn đã đóng góp ý kiến và kinh ngiệm qúy báu trong qúa trình thực hiện đề tài này.

TP.HỒ CHÍ MINH Ngày 25 tháng 2 năm 2000

Sinh viên thực hiện Phạm Xuân Hưng

Trang 9

MỤC LỤC

Phần 1: Phần giới thiệu

Chương dẫn nhập

Chương cơ sở lý luận

Chương I: Cấu trúc bên trong của VXL 8086

1 khối thực hiện

2 khối phối phối ghép bus

3 sơ đồ khối bên trong

1 sơ đồ chân của VXL 8086

2 chức năng các chân

Chương II: Khảo sát tổng quát tập lệnh của VXL 8086

Chương III: Giao tiếp với máy tính

1 Giao tiếp qua cổng máy in

2 Giao tiếp qua Slot card

1 Vài nét cơ bản về cổng nối tiếp

2 Sự trao đổi của các đường dẫn tín hiệu

Phần 2: Phần cứng của mạch giao tiếp

Chương IV: Giới thiệu kit VXL 8086

1 vi mạch MAX 232

2 IC đệm 74LS244

3 Mạch tạo xung nhịp 8284

4 Tổng quát về bộ nhớ

Chương V: Giao tiếp nối tiếp dùng 8251A.

1 Truyền thông tin nối tiếp giữa 2 kit VXL

2 Truyền thông tin nối tiếp giữa kit VXL và máy tính

Phần 3 : Phần mềm của mạch giao tiếp

Trang 10

Chương VI: Các chương trình truyền dữ liệu

1 Giải thuật

2 Chương trình

Phần 4: Tổng kết, đánh giá

Hướng phát triển đề tài

Kết luận đánh giá

Tài liệu tham khảo

Trang 11

LỜI NÓI ĐẦU

Đất nước ta đang trên con đương tiến lên một đất nước công ngiệp hóahiện đại hóa Để đạt được mục tiêu đó thì ngành công ngiệp máy tính là mộtngành then chốt để tiến lên con đường công ngiệp hoá và hiện đại hóa đấtnước

Ngày nay trong các nhà máy xí nghiệp hay công xưởng đều sử dụng máy

vi tính vào việc đo lường điều khiển, tính toán và trong quản lý hành chính,nhờ có đặc tính gọn nhẹ, độ tin cậy cao linh hoạt và đơn giản trong sử dụng.Đặc biệt trong các ngành công nghiệp hiện đại, máy tính điện tử khôngnhững góp phần vào việc nâng cao năng suất lao động mà còn góp phần vàoviệc bảo vệ sức khoẻ và an toàn lao động cho con người

Đễ hoàn thành những công việc kể trên chúng ta cần phải kết nối cácmáy vi tính với nhau, hoặc kết nối chúng với các thiết bị ngoại vi nhận dữliệu để xử lý hay gửi dữ liệu đi cho các thiết bị khác xử lý Để thực hiệnđược công việc này thì điều đầu tiên chúng ta phải làm đó là chúng ta phảikết nối phần cứng cho phù hợp và viết các chương trình truyền dữ liệu

Trước yêu cầu đó sinh viên thực hiện đề tài quyết định thực hiện đề tài

“Giao tiếp máy tính với kit VXL 8086” nhằm mục đích tìm hiểu, học hỏithêm và ứng dụng các kiến thức đã học ra thực tế

Sinh viên thực hiện xin chân thành cảm ơn thầy Nguyễn Đình Phú cùng

các thầy cô trong khoa đã tận tình hướng dẫn em hoàn thành tốt đề tài này

Vì thời gian và kiến thức có hạn nên tập luận văn này chắc chắn khôngtránh khỏi sai sót, rất mong những ý kiến đóng góp của qúy thầy cô và cácbạn

TP.Hồ Chí Minh, ngày 25 tháng 2 năm 2000

Sinh viên thực hiện Phạm Xuân Hưng

Trang 12

Phần 1

GIỚI THIỆU CHUNG

Trang 13

CHƯƠNG DẪN NHẬP

oOo

Cùng với sự phát triển của khoa học kỹ thuật thì ngành công nghiệp máytính cũng được phát triển rất mạnh mẽ và ngày càng được ứng dụng rộng rãitrong mọi công việc như các công việc trong công nghiệp cũng như trongthông tin liên lạc

Để thực hiện được những công việc nhận dữ liệu từ các thiết bị khác đểxử lý hoặc gửi dữ liệu đi để điều khiển các thiết bị khác thì công việc giaotiếp giữa hai hệ vi xử lý với nhau hay giữa vi xử lý với máy tính là một côngviệc chủ yếu trong việc truyền dữ liệu vì thế sinh viên quyết định thực hiệnđề tài “Giao tiếp máy tính với kit VXL 8086” Mục đích để học hỏi và tìmhiểu thêm các ứng dụng của VXL và các IC giao tiếp ngoại vi trong thực tế,làm quen với các chương trình truyền dữ liệu để hoàn thành tốt luận văn tốtnghiệp này

Trong phạm vi chuyên ngành thì đề tài đã hoàn thành tốt phần cứng vàphần mềm giao tiếp Riêng trong lĩnh vực giao tiếp thì đó cũng là tài liệutham khảo ban đầu cho những người muốn đi sâu vào lĩnh vực giao tiếp

Đề tài này không chỉ giúp cho sinh viên hòan thành luận văn tốtnghiệp mà còn hình thành trong mỗi sinh viên những kinh nghiệm, sáng tạovà năng động Sau này đề tài sẽ kết hợp với các ngành chuyên môn khác đểphát triển mô hình này được hoàn thiện hơn

Trang 14

CHƯƠNG CƠ SỞ LÝ LUẬN

_ oOo _

I XÂY DỰNG ĐỀ CƯƠNG LUẬN VĂN:

1) Xác định nhiệm vụ nghiên cứu :

Việc chọn đề tài xuất phát từ hai lý do:

- Khách quan: hiện nay các nền công nghiệp có nhu cầu hiện đại hóa

các thiết bị theo xu hướng cải tiến hóa các thiết bị bằng cơ khí sangthiết bị điều khiển tự động ứng dụng kỹ thuật điện tử

- Chủ quan: do nhu cầu học tập, nghiên cứu, rèn luyện kỹ năng thực

hành, ứng dụng vốn kiến thức khoa học kỹ thuật tiên tiến trực tiếpvào lĩnh vực sản xuất

Nhiệm vụ nghiên cứu nhằm đạt được các mục đích chủ yếu:

+ Mục đích trước mắt: thỏa mãn về cơ bản các yêu cầu đề ra theo

phương châm “Học đi đôi với hành“

+ Mục đích sau cùng: Tích lũy kinh nghiệm, rèn luyện và nâng cao

năng lực, tạo bản lĩnh để sẵn sàng tham gia lao động sản xuất, hòa nhập vàobước tiến của thế hệ

2) Phân tích tài liệu liên hệ:

Trong thời gian nghiên cứu đề tài, sinh viên thực hiện đã thống nhấttham khảo một số tài liệu có liên quan trong khoảng thời gian cho phép

thức của một đề tài nghiên cứu khoa học và phương pháp tư duy đểgiải quyết vấn đề

của vi xử lý 8086

chân và bảng trạng thái họat động của các IC và các linh kiện bándẫn

bản về cấu trúc máy tính, tổ chức CPU, hợp ngữ và cách lập trình

John Uffenbeck: tài liệu cung cấp những kỹ thuật kết nối vi xử lývà những phần mềm ứng dụng

tiếp với các thiết bị ngoại vi

Trang 15

II KẾ HOẠCH NGHIÊN CỨU:

1) Dàn ý nghiên cứu:

Phần I: Giới thiệu chung

Phần II: Phần cứng và phần mềm cuả mạch giao tiếp

Phần III : Tổng kết và đánh giá

2) Đối tượng nghiên cứu:

Vi xử lý là trung tâm điều khiển các đối tượng, điều khiển hệ thốngnhư máy tự động, dây chuyền sản xuất… Để hệ thống xử lý thi hành cácchức năng điều khiển như mong muốn, chúng ta phải lập trình bằng ngônngữ tương ứng và trao đổi dữ liệu giữa các hệ vi xử lý Vì thế đối tượngnghiên cứu chính là thiết kế mạch giao tiếp để truyền dữ liệu đi xa

Trang 16

CHƯƠNG ICẤU TRÚC BÊN TRONG CỦA VI XỬ LÝ 8086

I CẤU TẠO BÊN TRONG:

Bên trong gồm hai khối chính:

1 Khối thực hiện EU

Ở hình 1.1 ta thấy trong khối EU ta thấy có một khối điều khiền(Control Unit, CU) chính tại bền trong khối điều khiển này có mạch giải mãlệnh Mã lệnh đọc vào từ bộ nhớ đưa đến đầu của bộ giải mã, các thông tinthu được từ đầu ra củc nó sẽ được đưa đến mạch tạo xung điều khiển, kếtquả là thu được các dãy xung khác nhau (tùy theo mã lệnh) để điều khiểnhoạt động của các bộ phận bên trong và bên ngoài CPU Trong khối EU còncó khối số học và logic (Arithmetic and Logic Unit ALU) dùng để thực hiệncác thao tác khác nhau với các toán hạng cuả lệnh Tóm lại khi CPU hoạtđộng EU sẽ cung cấp thông tin về điạ chỉ cho BIU để khối này đọc lệnh vàdữ liệu, còn bản thân nó thì giải mã lệnh và thực hiện lệnh

2 Khối phối ghép bus (Bus Interface Unit BIU)

Khối BIU có nhiệm vụ đưa ra điạ chỉ, đọc mã lệnh từ bộ nhớ Nóicách khác BIU chiu trách nhiệm đưa điạ chỉ ra bus và trao đổi dữ liệu vớibus

Trong BIU còn có bộ nhớ đệm lệnh với dung lượng 4 byte dùng đểđưa các mã lệnh đọc được nằm sẵn sàng chờ EU xử lý (trong tài liệu cuảIntel bộ lệnh này còn được gọi là hàng đợi lệnh Đây là một cấu trúc mớiđược đưa vào bộ VXL 8086/8088 cho việc Intel đưa chế độ xử lý xen kẽ liêntục dùng mã lệnh vào ứng dụng vào trong các bộ VXL thế hệ mới

Trang 17

3 Sơ đồ khối bền trongvà chức năng các khối cuả VXL 8086:

Hàng đợi lệnh

Arithmetic logic

unit (ALU)

Bus dữ liệu nội

Các bus hệ thống

Trang 18

Bộ vi xử lý thực hiện các lệnh theo các bước sau:

Các thanh ghi dữ liệu (Data Register):

Các thanh ghi chỉ số và con trỏ (Index & Pointer Register):

Các thanh ghi đoạn (Segment Register):

Các thanh ghi trạng thái và điều khiển (Status & Control

SPBPSIDI Con trỏ Stack (Stack Pointer)

Con trỏ nền (Base Pointer)Chỉ số nguồn (Source Index)Chỉ số đích (Destnation Index)

CSDSSSESĐoạn mã (Code Segment)Đoạn dữ liệu (Data Segment)Đoạn Stack (Stack Segment)Đoạn thêm (Extra Segment)

IPFlagCon trỏ lệnh (Intruction Pointer)

Cờ

Trang 19

Các thanh ghi dữ liệu:

Có bốn thanh ghi dữ liệu ký hiệu lần lượt là: AX, BX, CX, DX, đượcngười lập trình sử dụng cho các thao tác với dữ liệu Mặc dù vi xử lý có thểthao tác với dữ liệu trong bộ nhớ, nhưng một lệnh như vậy sẽ được thực hiệnnhanh hơn trong thanh ghi (cần ít chu kỳ đồng hồ hơn) Đó cũng là nguyênnhân tại sao các bộ vi xử lý hiện đại có xu hướng nhiều thanh ghi

Các byte cao và byte thấp trong thanh ghi được truy cập độc lập: Bytecao của thanh ghi AX được gọi là AH và byte thấp được gọi là AL Tương tựnhư vậy cho các byte cao và byte thấp của các thanh ghi BX, CX, DX lầnlượt là BH & BL, CH & CL, DH & DL Nhờ điều này mà ta có nhiều thanhghi hơn khi làm việc với các số liệu có kích thước byte dài Trong đa số lệnhcác thanh ghi dữ liệu được chọn tùy ý nhưng các thanh ghi này lại có chứcnăng riêng cố định trong một số ít lệnh

Thanh ghi tích lũy AX (Accumulator):

Là thanh ghi được sử dụng nhiều nhất trong các lệnh số học – logic vàtruyền dữ liệu bởi vì việc sử dụng thanh ghi này tạo ra mã máy ngắn nhất.Trong các thao tác nhân hoặc chia một trong các số hạn tham gia phảichứa trong AH hoặc AL, các thao tác vào ra cũng sử dụng thanh ghi AHhoặc AL

Thanh ghi cơ sở BX (Base):

Thanh ghi BX được dùng cho tính toán địa chỉ trong phương pháp địnhđịa chỉ gián tiếp

Thanh ghi đếm CX (Count):

Việc thực hiện các chương trình lập được thực hiện dễ dàng nhờ thanhghi CX, trong đó CX đóng vai trò là bộ đếm vòng lập Một thí dụ khác củaviệc sử dụng thanh ghi CX đó là lệnh REP (Repeat) lệnh này điều khiểnmột lớp các lệnh chuyên về các thao tác chuỗi CL cũng được sử dụng làmột biến đếm trong các lệnh dịch hay quay các bit

Thanh ghi dữ liệu DX (Data):

DX dùng để định địa chỉ gián tiếp trong các thao tác vào ra, nó cũngcòn được sử dụng chứa toán hạn, kết quả trong phép nhân và chia

Thanh ghi con trỏ và chỉ số:

Các thanh ghi SP, BP, SI, DI thường trỏ tới các ô nhớ (tức là chứa cácđịa chỉ offset của các ô nhớ đó) Khác với thanh ghi đoạn, các thanh ghi contrỏ và ngăn xếp được sử dụng trong các thao tác số học và một số thao táckhác nhau

Thanh ghi con trỏ – ngăn xếp SP (Stack Pointer):

Di chuyển từ địa chỉ cao đến địa chỉ thấp, dùng để kết hợp với thanhghi đoạn Stack SS (Stack Segment)để lưu trử địa chỉ trở về hoặc dữ liệu vàotrong ngăn xếp

Trang 20

Thanh ghi con trỏ cơ sở BP (Base Pointer):

Thanh ghi này được dùng để truy cập dữ liệu trong ngăn xếp mà khônglàm thay đổi SP Tuy nhiên, khác với SP thanh ghi BP cũng còn được sửdụng đễ truy cập dữ liệu ở các đoạn khác

Thanh ghi chỉ số nguồn SI (Source Index):

Thanh ghi SI được sử dụng để trỏ tới các ô nhớ trong đoạn dữ liệu đượcđịnh bởi thanh ghi đoạn dữ liệu DS (Data Segment), có thể truy cập dễ dàngcác ô nhớ liên tiếp bằng cách tăng SI

Thanh ghi chỉ số đích DI (Destination Index):

Thanh ghi DI có chức năng tương tự như thanh ghi SI và được dùng kếthợp với thanh ghi đoạn thêm ES (Extra Segment) Cả hai DI và SI thích hợptrong các thao tác sao chép, di chuyển hoặc so sánh các khối dữ liệu códung lượng đến 64kB

Thanh ghi con trỏ lệnh IP (Intruction Pointer):

8086 không thực hiện lệnh trực tiếp trong bộ nhớ mà lệnh được lấy ởhàng đợi lệnh có cấu tạo giống như một thanh ghi dịch (FIFO: First In FirstOut: vào trước ra trước) chứa các mã lệnh cung cấp bởi khối BIU Thanh ghi

IP chỉ đến lệnh tiếp theo chưa được nhập vào hàng đợi lệnh và được dùngkết hợp với thanh ghi CS Thanh ghi IP được cập nhật mỗi khi có một lệnhđược thực hiện xong, khác với các thanh ghi khác, IP không bị tác động trựctiếp bởi các lệnh

Thanh ghi cờ (Flag Register):

Thanh ghi cờ của 8086 có độ dài 16bit (2byte) byte thấp chứa các bittrạng thái giống như trong 8085 phản ánh trạng thái của vi xử lý, byte caochứa 1 bit trạng thái đó là bit 11 và 3 bit điều khiển dùng để điều khiển hoạtđộng của vi xử lý Sau đây là cấu tạo của thanh ghi cờ trong 8086:

Trang 21

Cờ nhớ CF được thiết lập khi có số nhớ từ bit MSB Trong phép cộnghoặc số thiếu trong phép trừ (MSB trong các lệnh byte là bit 7 và trong cáclệnh word là bit 15) cờ CF cũng bị ảnh hưởng bởi các lệnh quay và dịch.

+ Cờ chẵn lẻ PF :

Sau các lệnh số học hoặc logic đối với các lệnh byte nếu số lượng số

‘1’ trong byte kết quả là chẵn thì cờ PF được thiết lập là ‘1’ ngược lại là ‘0’nếu là lẻ, đối với các lệnh word chỉ xét các byte thấp

+ Cờ nhớ phụ AF:

Cờ nhớ phụ được thiết lập nếu có nhớ (cộng) hoặc có thiếu (trừ) từphân nửa dưới đến phân nửa trên của toán hạn (đối với lệnh byte đó là bit 3và đối với lệnh word là bit 7) cờ AF được sử dụng trong các thao tác với sốBCD

Tạo khả năng thực hiện chương trình theo từng bước, khi TF bằng ‘1’

8086 phát sinh ngắt loại 1 (ngắt cứng) Chương trình DEBUG sử dụng khi thihành lệnh T (trace) để chạy từng bước một lệnh Đầu tiên DEBUG thiết lậpcờ TF rồi mới chuyển điều khiển cho lệnh đó Sau khi lệnh được thi hành vixử lý sẽ phát sinh một ngắt do TF được lập DEBUG sử dụng chính phục vụngắt này để lấy quyền điều khiển từ vi xử lý

+ Cờ ngắt IF:

Cờ ngắt được sử dụng để điều khiển các ngắt phần cứng bên ngoài,nếu cờ này được thiết lập các ngắt phần cứng có thể ngắt 8086 Khi xóa IF,các ngắt bên ngoài không còn tác dụng nửa (bị che) Thực ra vẫn còn mộtngắt cứng không che được NMI (Non Maskable Interrupt)

Trước khi vi xử lý trao quyền điều khiển cho một phục ngắt nó xóa cả

IF và TF, như vậy phục ngắt đó sẽ không bị ngắt Tất nhiên một phục vụngắt có thể đổi cờ để cho phép ngắt khi nó đang thi hành

+ Cờ tràn OF:

Cờ tràn là ‘1’ khi có hiện tượng tràn và ngược lại nó bằng ‘0’ Hiệntượng tràn cho thấy một sự thật là phạm vi biểu diễn các số trong máy tínhlà có giới hạn

Phạm vi biểu diển các số có dấu trong một word từ –32768 đến+32767 và trong một byte từ –126 đến +127

Đối với các số không dấu từ 0 đến 65535 cho một word và từ 0 đến 255cho một byte Nếu kết quả của một phép tính vượt ra ngoài phạm vi này thì

Trang 22

hiện tượng tràn sẽ xảy ra và kết quả nhận được bị cắt bớt sẽ không phải làkết quả đúng

+ Cờ điều khiển DF:

Là một trong ba cờ điều khiển dùng điều khiển các thao tác của vi xửlý công dụng của DF là dịch hướng cho các thao tác chuỗi, các thao tác nàyđược thực hiện bởi hai thanh ghi chỉ số SI & DI, nội dung của hai thanh ghinày sẽ tự động tăng lên khi DF = 0 và giảm xuống khi DF =1

3.2) Khối giao tiếp (BIU):

Khối giao tiếp làm đơn giản việc liên lạc giữa EU và bộ nhớ hoặc các

vi mạch vào ra Nó có nhiệm vụ gởi các địa chỉ, số liệu và tín hiệu điềukhiển vào các bus, BUI & EU liên hệ với nhau bằng các bus nội bộ, khi EUđang thi hành một lệnh, BIU nạp 6 byte mã lệnh tiếp theo vào và đặt chúngvào hàng đợi lệnh, mục đích của việc này là làm tăng tốc độ của vi xử lý.Nếu EU cần liên lạc với bộ nhớ hay thiết bị ngoại vi, BIU sẽ treo các lệnhnhận trước và thực hiện thực hiện các thao tác cần thiết BIU cấu tạo gồmcác thanh ghi đoạn và con trỏ lệnh dùng để chứa địa chỉ các ô nhớ

a) Các thanh ghi đoạn:

Được dùng để lưu trử địa chỉ của các lệnh và dữ liệu trong bộ nhớ, vixử lý dựa trên các giá trị này để truy cập bộ nhớ

Bộ nhớ là tập hợp các byte ô nhớ, mỗi byte có một địa chỉ xác định bắtđầu từ 0 8086 gán cho mỗi ô nhớ một địa chỉ vật lý 20 bit Như vậy, nó cóthể định địa chỉ đến byte (tương đương 1MB) ô nhớ, các byte đầu tiên củabộ nhớ có địa chỉ như sau:

………… Hvà cứ tiếp tục cho đến giá trị lớn nhất là FFFFFH

Do các địa chỉ quá lớn (20 bit) không thể chứa trong một thanh ghi của

8086 (16 bit) nên 8086 chia bộ nhớ thành các đoạn bộ nhớ (MemorySegment)

đoạn được xác định bằng một địa chỉ đoạn bắt đầu từ địa chỉ 0, địa chỉ đoạnlà một số 16 bit nên địa chỉ đoạn lớn nhất là FFFF Bên trong mỗi đoạn số ô

Trang 23

nhớ được xác định bằng địa chỉ tương đối (offset), đó là số byte tính từ đầuđoạn, với một đoạn 64K thì offset cũng là một số 16 bit, byte đầu tiên trongđoạn có offset bằng 0 và byte cuối cùng bằng FFFF.

Một ô nhớ có thể được xác định bằng địa chỉ đoạn:địa chỉ tương đốitrong đoạn (segment:offset) và được gọi là địa chỉ logic

Thí dụ: ô nhớ A4FB: 4872 có địa chỉ đoạn là A4FB và địa chỉ offset là

4872 Để tìm địa chỉ vật lý của ô nhớ trước tiên ta dịch địa chỉ đoạn về bêntrái 4 bit và sau đó cộng với địa chỉ offset, như vậy địa chỉ vật lý của ô nhớA4FB:4872 được tính như sau: A4FB0

4872A9822

b) Sắp xếp đoạn:

Trong bộ nhớ đoạn 0 bắt đầu từ địa chỉ 0000:0000 = 00000 và kết thúc

ở 0000:FFFF = 0FFFF, đoạn 1 bắt đầu từ địa chỉ 0001:0000 = 00010 và kếtthúc ở địa chỉ 0001:FFFF = 1000F Như vậy, có rất nhiều sự chồng nhaugiữa các đoạn Các đoạn bắt đầu từ các địa chỉ cách nhau 16byte và địa chỉđầu của mỗi đoạn luôn kết thúc bằng các số 0 16byte được gọi là một khúc(Paragraph), các địa chỉ chia hết cho 16 ( các địa chỉ kết thúc bằng 0) là cácbiên giới khúc (Paragraph Boundary)

c) Các đoạn của chương trình:

Mỗi đoạn chương trình ngôn ngữ máy bao gồm các lệnh và dữ liệu,còn một vùng đặc biệt trong RAM gọi là ngăn xếp (stack) Mã lệnh, dữ liệuvà ngăn xếp của chương trình được nạp vào các đoạn bộ nhớ khác nhau đólà đoạn mã (code segment), đoạn dữ liệu (data segment), đoạn ngăn xếp(stack segment)

Để theo dõi các đoạn khác nhau của chương trình 8086 được cung cấp

4 thanh ghi đoạn để chứa các địa chỉ đoạn, các thanh ghi CS, DS, SS lầnlược chứa các địa chỉ đoạn mã, đoạn dữ liệu, và đoạn ngăn xếp Nếu chươngtrình muốn truy cập đến một dữ liệu thứ hai nó có thể sử dụng thanh ghiđoạn thêm ES (extra segment)

Một chương trình không phải bao giờ cũng cần chiếm hết một đoạn64KB, do đặc điểm chồng nhau giữa các đoạn cho phép các đoạn của mộtchương trình nhỏ hơn 64KB có thể đặt gần lại với nhau Tại một thời điểm,chỉ có các ô nhớ được định địa chỉ bởi 4 thanh ghi đoạn mới có thể truy cập,nghĩa là chỉ có 4 đoạn bộ nhớ là tác động Tuy nhiên nội dung của các thanhghi đoạn có thể thay đổi bởi chương trình để truy cập đến các đoạn khácnhau

Như ta đã biết, để tăng tốc độ vi xử lý khối BIU tiếp nhận các lệnhvà đưa vào hàng đợi lệnh (Queue) trong khi đó khối EU đang thi hành lệnh.Hàng đợi lệnh có thể nhận 6 byte mã lệnh, các lệnh của 8086 có độ dài từ 1

Trang 24

đến 6 byte, nếu lệnh chưa vào đầy đủ trong hàng đợi lệnh thì khối EU sẽchờ cho đến khi lệnh nạp hết vào hàng đợi lệnh.

II CẤU TRÚC BÊN NGOÀI VÀ CHỨC NĂNG CỦA VXL 8086

8086 là vi xử lý 16 bit nó gồm 16 đường dữ liệu và 20 đường địa chỉ,các đường dữ liệu từ D0 đến D15 và các đường địa chỉ từ A0 đến A15 hoạtđộng theo phương pháp đa lộ thời gian

8086 có thể làm việc ở hai chế độ:

Trong chế độ minimum, 8086 điều khiển các thiết bị bằng các tín hiệuđiều khiển của chính nó, trong chế độ này hỗ trợ bộ xử lý toán học 8087Trong chế độ maximum cần thiết phải kết hợp với vi mạch điều khiểnbus 8288 để tạo ra các tín hiệu đọc – ghi cho bộ nhớ và các thiết bị ngoại vivà chế độ này cho phép làm việc với 8087

Sau đây là sơ đồ chân của 8086 ở cả hai chế độ minimum vàmaximum:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21

8086 CPU

Hình 1.2: Sơ đồ chân 8086

Trang 25

2) Chức năng của các chân của 8086:

Mức cao ở ngõ này báo cho 8086 biết có một yêu cầu ngắt (thuờngđược gởi tới từ vi mạch xử lý ngắt 8259), tín hiệu ngắt tại chân này có thể bịche bằng phần mềm Khi vi xử lý chấp nhận yêu cầu ngắt, nó sẽ đưa ra mộtchu kỳ chấp nhận ngắt và vi mạch xử lý ngắt phải gởi địa chỉ của ngắt lênbus dữ liệu tương ứng với chu kỳ thứ hai

Đây là ngắt không che được, tác động ở mức cao vi xử lý nhảy đến địachỉ ngắt số 2 trong bảng vector ngắt và không tạo ra chu kỳ chấp nhận ngắt

Ngõ vào mức cao đặt vi xử lý về trạng thái ban đầu sau ít nhất 4 chukỳ đồng hồ Thanh ghi CS được đặt giá trị FFFF và thanh ghi IP được đặt giátrị 0000 Như vậy chỉ thị được thực hiện đầu tiên chứa ở ô nhớ FFFF0 quátrình chuyển tiếp từ mức cao xuống mức thấp được đồng bộ bởi chu kỳ đồngbộ từ vi mạch tạo xung đồng hồ 8284

Tín hiệu báo đã hoàn tất thao tác truyền dữ liệu của bộ nhớ hoặc thiết

bị vào – ra, tác động ở mức cao, vi xử lý sẽ đợi nếu tín hiệu này ở mức thấp

Giống như trong 8085, các đường địa chỉ - dữ liệu này làm việc theo

kỳ T2, T3, Tw, T4, tác động ở mức cao, có cấu tạo ba trạng thái và ở trạngthái tổng trở cao trong lúc vi xử lý ‘Interrupt acknowlegde’ và ‘Holdacknowledge’

thao tác với thiết bị vào - ra chân này có gía trị thấp Trong cả hai thao tác

thông tin này cần thiết cho Co-processor xác định vị trí của toán hạng Cócấu tạo ba trạng thái và trạng thái tổng trở cao khi vi xử lý ‘Holdacknowledge’

Trang 26

S3 S4 Thanh ghi đoạn được chọn0

011

0101

Thanh ghi đoạn thêm

Thanh ghi đoạn ngăn xếp

Thanh ghi đoạn lệnh

Thanh ghi đoạn dữ liệu Hai bit S3 & S4 để chọn các thanh ghi đoạn

các chu kỳ T2, T3 & T4, cấu tạo ba trạng thái và trạng thái tổng trở cao khi vixử lý ở chế độ ‘Hold’

0011

0101

Truy xuất 16 bit Truy xuất byte cao từ địa chỉ lẻTruy xuất byte thấp địa chỉ chẳn

Tín hiệu vào được kiễm tra bởi lệnh ‘wait’ vi xử lý sẽ không làm gì cảkhi điện áp chân này có giá trị thấp, đồng bộ tại cạnh lên của mỗi xungđồng hồ

Chân chọn chế độ làm việc của 8086, chế độ làm việc là minimumtương ứng với mức cao và chế độ làm việc là maximum ứng với mức thấp.Bus điều khiển ở hai chế độ có chức năng khác nhau

trí đang truy xuất dữ liệu Mức cao là bộ nhớ và mức thấp là khối vào-ra.Cấu tạo ba trạng thái, tổng trở cao khi vi xử lý ở chế độ ‘Holdacknowledge’

Tín hiệu ra điều khiển thao tác ghi vào bộ nhớ hoặc khối vào-ra tùy

Trang 27

ghi, cấu tạo ba trạng thái và trạng thái tổng trở cao khi vi xử lý ở chế độ

‘Hold acknowledge’

đưa địa chỉ của ngắt lên bus dữ liệu

Tín hiệu điều khiển chốt địa chỉ 74LS373 hoặc 8282/8283 tác động

Tín hiệu vào cho biết một linh kiện đòi quyền sử dụng bus, tác động ởmức cao

Tín hiệu ra ở mức cao cho biết yêu cầu Hold được chấp thuận, vi xử lýsẽ treo bus nội bộ và các đường điều khiển của nó ở trạng thái tổng trở cao

Tín hiệu ra dùng để điều khiển hướng truyền dữ liệu của vi mạch phát Cấu tạo ba trạng thái và trạng thái tổng trở cao khi vi xử lý ở chế độ

thu-‘Hold acknowledge’

Tín hiệu ra ở mức thấp cho mỗi chu kỳ thao tác bộ nhớ và I/O và cảINTRA điều khiển ngỏ ra cho phép của 8286/8287 trong hoạt động thu –phát dữ liệu Cấu tạo ba trạng thái, trạng thái tổng trở cao khi vi xử lý ở chếđộ ‘Hold acknowledge’

• S0, S1, S2 (thông tin trạng thái) :

Vi mạch 8288 dựa trên các thông tin này để thực hiện các thao tác điềukhiển Cấu tạo ba trạng thái, trạng thái tổng trở cao khi ‘Hold

0101010

Chấp nhận ngắt

Đọc từ cổng

Viết ra cổngDừng

Nhập mã lệnh

Đọc từ bộ nhớ

Viết ra bộ nhớ

Trang 28

1 1 1 Thụ động.

Hai tín hiệu yêu cầu vi xử lý nhường quyền sử dụng bus, tín hiệu

+ Một xung có bề rộng một chu kỳ đồng hồ cho biết một linh kiện cầnsử dụng bus

có bề rộng chu kỳ đồng hồ cho biết vi xử lý chấp nhận nhường quyền sửdụng bus và nó sẽ tiến vào trạng thái ‘Hold acknowledge’ sau xung đồng hồkế tiếp để treo bus của chính nó

+ Xung bề rộng chu kỳ đồng hồ được gởi đến 8086 cho biết quá trình

‘Hold’ kết thúc và vi xử lý trở lại quản lý bus xau khi chấm dứt chu kỳ đồnghồ kế tiếp Nếu yêu cầu này xảy ra trong khi vi xử lý đang truy xuất bộ nhớ,

lẻ)

Nếu bus không bận khi có yêu cầu thì có hai trường hợp sẽ xảy ra

Mức cao báo cho các linh kiện ngoài biết (Co-processor) rằng chu kỳbus tiếp theo không được phép gián đoạn, điều này xảy ra khi trong chươngtrình có chỉ thị ‘Clock’ Cấu tạo ngõ ra ba trạng thái, trạng thái tổng trở caokhi vi xử lý ở chế độ ‘Hold acknowledge’

Ngõ ra cho biết trạng thái của hàng đợi lệnh, những thông tin này cầnthiết cho Co-processor

0011

0101

Không hoạt động Xóa nội dung hàng đợi kệnh

Nạp byte mã lệnh đầu tiên vào thanh ghi lệnh.Nạp byte mã lệnh tiếp theo của lệnh nhiều byte

Trang 29

III CÁC PHƯƠNG PHÁP ĐỊNH ĐỊA CHỈ CỦA VI XỬ LÝ 8086:

Phương pháp định địa chỉ (Addressing Mode) là cách để CPU tìm thấytoán hạng cho các lệnh của nó khi hoạt động Một bộ vi xử lý có thể cónhiều chế độ định địa chỉ

Các chế độ định địa chỉ này được xác định ngay từ khi chế tạo ra bộ vixử lý và sau này người ta lấy đó để làm chuẩn mà không thay đổi

Ngoài các phương pháp định địa chỉ: tức thời, trực tiếp, gián tiếp giốngnhư của 8085, vi xử lý 8086 còn có thêm các cách định địa chỉ khác và đượcphân loại như sau:

Bằng cách kết hợp các phương pháp định địa chỉ khác nhau trong mộtchỉ thị, có thể tạo ra nhiều khả năng phức tạp để truy xuất toán hạng(operand) các thiết bị vào – ra chỉ được truy cập bằng các phương pháp trựctiếp và gián tiếp Thứ tự mô tả byte của một word được lưu trong bộ nhớgiống như qui định của 8085, có nghĩa là các byte thấp (LSB) ở địa chỉ thấpvà các byte cao (MSB) được đặt ở địa chỉ cao hơn kế cận

Trong các trình bày sau đây, bộ đếm chương trình PC (ProgramCounter) chứa địa chỉ offset của chỉ thị kế tiếp sẽ thực hiện, chỉ thị này đảsẳn sàng trong hàng đợi lệnh Con trỏ lệnh IP trỏ đến địa chỉ cao hơn, đó làbyte tiếp theo sẽ được BIU nhập vào hàng đợi lệnh

1) Các phương pháp định địa chỉ thông dụng:

1.1) Định địa chỉ tức thời:

Trong phương pháp này toán hạng nguồn chính là dữ liệu cần xử lý củachỉ thị

Trang 30

Thí dụ: Mov ax, 1200

1.2) Phương pháp định địa chỉ trực tiếp:

Trong chỉ thị bao gồm địa chỉ offset của toán hạng, địa chỉ đoạn được quy định

là nội dung của thanh ghi DS

Thí dụ: Mov ax [0230]

SP BP SI DI

DS SS ES

SP BP SI DI

CS DS SS ES

1C

260I/O

AX BX CX DX

SP BP SI DI

0100

PC

O D I T S Z A P C FI

B8 00 12

CS DS SS ES

2300

B8 00 12

O D I T S Z A P C FI

AX BX CX DX

SP BP SI DI

CS DS SS ES

0103

Hình1.3 :Phương pháp định địa chỉ tức thời

Mov Ax, 1200

Trang 31

1.3) Định địa chỉ gián tiếp:

Trong phương pháp truy xuất gián tiếp các cổng luôn luôn tác độngđến thanh ghi DX, nội dung của DX là địa chỉ 16 bit của cổng Số lượngcổng là 64k

Thí dụ: IN AL, DX

Hình 2.4: Phương pháp định địa chỉ tương đối

AX BX CX DX

SP BP SI DI

CS DS SS ES

2300

8B 07

O D I T S Z A P C

FI

AX BX CX DX

SP BP SI DI

CS DS SS ES

0103

2780

2780

00 12

00 12

2080

2080

0280

0280

Trang 32

CHƯƠNG II KHẢO SÁT TỔNG QUÁT TẬP LỆNH CỦA VI XỬ LÝ

8086

Vi xử lý 8086 có nhiều phương pháp định địa chỉ và cũng có nhiều khảnăng kết hợp các phương pháp đó lại với nhau Tuy nhiên, một lệnh chỉ cần

6 byte để mã hóa, và byte bắt đầu là mã công tác (Operations code), bytetiếp theo chứa kiểu địa chỉ và tiếp theo đó có thể là một hoặc hai byte dùngđể chứa địa chỉ Các byte cuối cùng gồm một hoặc hai chứa toán hạng 8hoặc 16 bit

Thực tế để biểu diển dạng thức các byte dùng để mã hóa lệnh Mov Tattấy rằng để mã hóa lệnh Mov ta phải cần ít nhất là hai byte, trong đó 6 bitcủa byte đầu dùng để chứa mã lệnh Đối với lệnh Mov để chuyển dữ liệukiểu:

Thì bit đầu (opcode) này luôn là ‘100010’ (đối với thanh ghi đoạn thìkhác)

Đối với bit ‘D’ dùng để chỉ hướng đi của dữ liệu

D = 0 thì dữ liệu đi từ thanh ghi cho bởi 3 bit của REG

D = 1 dữ liệu đi đến thanh ghi cho bởi 3 bit REG

Đối với bit W dùng để chỉ rằng một byte (W = 0) hoặc một từ (W = 1)sẽ được chuyển

Tập lệnh của 8086 gồm 9 nhóm lệnh:

Trừ thanh ghi đoạn

D W Mod

Địa chỉ trực tiếp phần

phần caohoặc

Trang 33

- Nhóm lệnh xử lý bit.

Qua những nhóm lệnh giới thiệu trên nhóm thực hiện đề tài chỉ khảosát những nhóm lệnh thông dụng nhằm phục vụ cho việc lập trình bằngngôn ngữ máy

2.1) Nhóm lệnh truyền số liệu:

Các lệnh truyền dữ liệu sẽ sao chép dữ liệu giữa thanh ghi với thanhghi, với bộ nhớ hoặc với khối vào-ra Chúng có thể sử dụng nhiều cách địnhđịa chỉ khác nhau Trong cách viết lệnh dưới dạng gợi nhớ: toán hạng đầutiên là thanh ghi đích hoặc địa chỉ đích và tiếp sau dấu phẩy là thanh ghinguồn hoặc địa chỉ nguồn Khác với 8085, trong 8086 tất cả các lệnh truyềndữ liệu đều dùng lệnh “Mov”

Truyền từ thanh ghi vào thanh ghi:

Mov (Reg1), (Reg2)

Nội dung (Reg2) được sao chép vào (Reg1)

Thí dụ: Mov AL, BL

Sao chép nội dung BL vào thanh ghi AL

Truyền từ thanh ghi vào bộ nhớ:

Mov (Mem), (Reg)

Đối với lệnh byte, nội dung của thanh ghi được đưa vào địa chỉ của ônhớ Đối với lệnh word thì nội dung của thanh ghi được đưa vào hai ô nhớ cóđịa chỉ lần lược là (Mem) và (Mem + 1)

Thí dụ: Mov [1200], BL

Sao chép nội dung của thanh ghi BL vào ô nhớ có địa chỉ tương đối là1200

Truyền từ ô nhớ vào thanh ghi:

Mov (Reg), (Mem)

Đối với lệnh byte, nội dung ô nhớ được chép vào thanh ghi Đối vớilệnh word, nội dung của 2 ô nhớ (Mem) và (Mem + 1) được chép vào thanhghi

Trang 34

Chú ý: nếu sử dụng AL hoặc AX trong các lệnh truyền từ thanh ghi

vào ô nhớ và ngược lại sẽ nhận được mã công tác ngắn hơn khi sử dụng cácthanh ghi khác

Truyền tức thời vào thanh ghi:

Mov (Reg), (Data)

Trong lệnh này, dữ liệu được truyền tức thời vào thanh ghi

Thí dụ: Mov BL, 20

Giá trị 20 được đưa vào thanh ghi BL

Truyền tức thời vào bộ nhớ:

Mov (Mem), (Data)

Trong lệnh byte dữ liệu được truyền tức thời vào ô nhớ có địa chỉ(Mem) Trong lệnh word dữ liệu được truyền tức thời vào 2 ô nhớ có địa chỉ(Mem) và (Mem + 1)

Thí dụ: Mov [1200], 50

Giá trị 50 được đưa vào ô nhớ có địa chỉ 1200

Mov Word PTR [1200], 50Giá trị Word 0050 được đưa vào 2 ô nhớ bắt dầu tại địa chỉ 1200:50(LSB) vào địa chỉ 1200:00 (MSB) vào địa chỉ 1201

IN (Reg), (Port)Đọc nội dung của cổng vào thanh ghi thanh ghi sử dụng l2 AL (dạngbyte) và AX (dạng Word), địa chỉ cổng là một số 8 bit

OUT (Reg), (Port)Xuất nội dung của thanh ghi ra cổng

IN (Reg), DXĐọc nội dung của cổng có địa chỉ chứa trong DX vào thanh ghi Thanhghi sử dụng là AL hoặc AX, địa chỉ cổng là số 16 bit

OUT DX, (Reg)Gởi nội dung thanh ghi ra cổng có địa chỉ chứa trong DX

2.2) Nhóm lệnh số học:

Bao gồm các phép tính cơ bản (cộng, trừ, nhân và chia) và phép sosánh, toán hạng có thể là dữ liệu 8 bit hoặc 16 bit, kết quả có thể là 8 bit, 16bit hoặc 32 bit Các toán hạng được chứa trong thanh ghi bộ nhớ tức thời.Tùy theo thao tác, kết quả có thể được chứa trong 1 hoặc 2 thanh ghi trongbộ nhớ

Vi xử lý 8086 thực hiện phép cộng có lưu ý số nhớ hoặc không lưu ý sốnhớ 8 bit hoặc 16 bit

+ Số hạng đầu tiên được chứa trong các thanh ghi dữ liệu (AX,

BX, CX, DX, AH, AL, BH …), trog một thanh ghi chỉ số hoặc một ô nhớ Số

Trang 35

hạng thứ hai có thể là tức thời trong thanh ghi hoặc trong bộ nhớ Hai sốhạng không thể cùng ở trong bộ nhớ, kết quả phép cộng được chứa trongtoán hạng thứ nhất Sau đây là bảng liệt kê lệnh cộng dưới dạng gợi nhớ:

ADD (accu), (data)

ADD (mem), (data)

ADD (reg), (data)

ADD (reg1), (reg2)

ADD (reg), (mem)

ADD (mem), (reg)

ADC (accu), (data)ADC (mem), (data)ADC (reg), (data)ADC (reg1), (reg2)ADC (reg), (mem)ADC (mem), (reg)

ADD AX, 1250ADD Byte PTR[0900],50

ADD BL, 50ADC AL, AHADD CX, [0800]

ADC [0600], DL

Phép trừ:

8086 có thể thực hiện phép trừ với 8 bit hoặc 16 bit, lệnh SBB có lưu ýsố thiếu và lệnh SUB không lưu ý số thiếu Sau đây là bảng liệt kê lệnh trừdưới dạng gợi nhớ:

SUB (accu), (data)

SUB (mem), (data)

SUB (reg), (data)

SUB (reg1), (reg2)

SUB (reg), (mem)

SUB (mem), (reg)

SBB (accu), (data)SBB (mem), (data)SBB (reg), (data)SBB (reg1), (reg2)SBB (reg), (mem)SBB (mem), (reg)

SUB AX, 1230SBB Byte PTR [5000],90

SUB BL, 50SBB AL, DLSUB CX, [1230]

SBB [0300], DL

Trang 36

Chương III

GIAO TIẾP VỚI MÁY TÍNH

I GIAO TIẾP SONG SONG

1 GIAO TIẾP QUA CỔNG MÁY IN:

1.1 Vài nét cơ bản về cổng máy in:

Việc nối máy in với máy tính được thực hiên qua ổ cắm 15 chân ởphía sau máy tính Nhưng đây không phải chỉ là chỗ nối với máy in mà khisử dụng máy tính vào việc khác, như truyền dữ liệu từ máy tính tới một thiết

bị khác, hay điều khiển thiết bị bằng máy tính thì việc ghép nối cũng đượcghép nối qua cổng máy in

Qua cổng này dữ liệu được truyền đi song song, nên đôi khi còn đượcgọi la cổng ghép nối song song và tốc độ truyền cũng đạt đến mức đáng kể.Tất cả các đường dẫn của cổng máy in đều tương thích với TTL Nghĩa làchúng đều cung cấp mức điện áp nằm giữa 0V đến 5V Do đó ta cầ lưu ý làcác đường dẫn vào cổng này không được đặt mức điện áp quá lớn

Sự sắp xếp các chân của cổng máy in với tất cả các đường dẫn đượcmô tả như sau:

Trang 37

Chức năng các chân

InInOutInOutOut

Byte được inCác đường dữ liệu D0 D7

Phần thu báo cho phần phát biết đã thu xong một kí tự

Phần tín hiệu do phần thu báo cho phần phát biết là phần thu đang bận

Báo hết giâiBáo l75a chọn máy inMáy tính báo ra máy in tự nạp giấBáo các lỗi của máy in

Reset máy inChon máy inNối đất

1.3 Trao đổi với các đường dẫn tín hiệu:

LPT1: Gồm có 3 thanh ghi: thanh ghi dữ liệu, thanh ghi trạng thái và thanh

ghi điều khiển

a Thanh ghi dữ liệu: gồm có 8 bit dữ liệu, có địa chỉ là 378h.

PEACKBUSYHÌNH 3.1

CHÂN SỐ : 9 8 7 6 5 4 3 2

Trang 38

1.4 Hoạt động của việc trao đổi dữ liệu

a hoạt động của phần phát

+ đọc Busy cho đến khi Busy\ = 1.+ gửi dữ liệu ra bus dữ liệu

+ cho Strobe = 0

+ chuổn bị dữ liệu tiếp theo

+ quay về bước 1

b Hoạt đông của phần thu

+ đọc Strobe cho đến khi Strobe = 1.+ Busy = 0 , ACK = 0

+ đọc dữ liệu vào

+ đưa ACK = 1

+ xử lý dữ liệu

+ cho Busy = 1 để phát ký tự tiếp theo+ quay về bước 1

Trang 39

BUSY = 1

LƯU ĐỒ THU

HÌNH 5.2

BUSY = 1BEGIN

THOÁT RA

CHUÂN BỊ DỮ LIỆU TIẾP THEO

HÌNH 5.1

LƯU ĐỒ PHÁT

Trang 40

2 GIAO TIẾP QUA SLOT CARD (có địa chỉ từ 300 31FH):

Trong máy tính người ta chế tạo sẵn các slot cho phép người sử dụngtính năng của máy vi tính bằng cách gắn thêm các thiết bị vào nó

Mỗi slot đều có các đường dữ liệu (data), địa chỉ (address), các đường+5V , – 5V , + 12V , -12V và các đường điều khiển như CLK, IRQ,RESET, /IOW, IOR … vì vậy nếu thiết kế mạch giao tiếp qua slot sẽ giảmđược rất nhiều linh kiện, giảm được bộ nguồn bên ngoài, dễ điều khiển, giáthành thấp nên đồng thời tốc độ truyền dữ liệu cũng nhanh

Tuy nhiên bên cạnh những ưu điểm nó cũng có những nhược điểm như:

do slot card giao tiếp được gắn bên trong máy nên cách giao tiếp này khónhận được dữ liệu từ bên ngoài Nó bị hạn chế về khoảng cách làm việcđồng thời mỗi lần sử dụng phải mở ráp máy gây bất tiện cho người sử dụng

* Các rãnh cắm trong máy tinh PC:

Ở máy tính PC/XT rãnh cắm trong máy tính chỉ có 1 loại với độ rộng là

8 bit và tuân theo tiêu chuẩn ISA (Industry Standard Architecture) Từ máytính AT trở đi việc bố trí chân trên rãnh cắm trở lên phức tạp hơn, tùy theotiêu chuẩn khi lựa chọn máy tính, các loại rãnh cắm theo tiêu chuẩn khácnhau có thể kiểm tra như sau:

+ Rãnh cắm 16 bit theo tiêu chuẩn ISA (Industry standardArchitecture)

+ Rãnh cắm PS/2 với 16 bit theo tiêu chuẩn MCA (Micro ChannelArchitecture)

+ Rãnh cắm PC/2 với 32 bit theo tiêu chuẩn MCA

+ Rãnh cắm 32 bit theo tiêu chuận EISA (Extended Micro ChannelArchitecture)

+ Rãnh cắm 32 bit theo tiêu chuẩn VESA

+ Rãnh cắm 32 bit theo tiêu chuẩn PCI

Cho đến nay phần lớn các card ghép nối dùng trong kỹ thuật do lườngvà điều khiển đều được chế tạo để đặt vào rãnh cắm theo tiêu chuẩn ISA

Ngày đăng: 24/04/2013, 10:27

HÌNH ẢNH LIÊN QUAN

3. Sơ đồ khối bền trongvà chức năng các khối cuả VXL 8086: - Giao tiếp máy tính với Kit vi xử lý 8086
3. Sơ đồ khối bền trongvà chức năng các khối cuả VXL 8086: (Trang 17)
Hình 1.2: Sơ đồ chân 8086 - Giao tiếp máy tính với Kit vi xử lý 8086
Hình 1.2 Sơ đồ chân 8086 (Trang 24)
Hình 2.4: Phương pháp định địa chỉ tương đối - Giao tiếp máy tính với Kit vi xử lý 8086
Hình 2.4 Phương pháp định địa chỉ tương đối (Trang 31)
Sơ đồ chân 74LS244: - Giao tiếp máy tính với Kit vi xử lý 8086
Sơ đồ ch ân 74LS244: (Trang 47)
Hình 4.3: Sơ đồ chân 8284 - Giao tiếp máy tính với Kit vi xử lý 8086
Hình 4.3 Sơ đồ chân 8284 (Trang 48)
Hình trên biểu diển các đường nối tín hiệu chính của 8284. Mạch 8284 nhận xung khởi động từ bên ngoài thông qua mạch RC, khi bắt dầu bật điện hoặc xung khởi động lại khi bấm công tắc K từ xung này 8284 có nhiệm vụ đưa ra xung khởi động đồng bộ cho CPU cùn - Giao tiếp máy tính với Kit vi xử lý 8086
Hình tr ên biểu diển các đường nối tín hiệu chính của 8284. Mạch 8284 nhận xung khởi động từ bên ngoài thông qua mạch RC, khi bắt dầu bật điện hoặc xung khởi động lại khi bấm công tắc K từ xung này 8284 có nhiệm vụ đưa ra xung khởi động đồng bộ cho CPU cùn (Trang 49)
Hình 4.5: Sơ đồ một vi mạch nhớ - Giao tiếp máy tính với Kit vi xử lý 8086
Hình 4.5 Sơ đồ một vi mạch nhớ (Trang 50)
Hình 4.6: Sơ đồ chân 2764 - Giao tiếp máy tính với Kit vi xử lý 8086
Hình 4.6 Sơ đồ chân 2764 (Trang 51)
Hình 4.8: Sơ đồ chân 62256D8 ÷ D 15 - Giao tiếp máy tính với Kit vi xử lý 8086
Hình 4.8 Sơ đồ chân 62256D8 ÷ D 15 (Trang 52)
Sơ đồ chân: 1 - Giao tiếp máy tính với Kit vi xử lý 8086
Sơ đồ ch ân: 1 (Trang 52)
Hình 5.3 : Sơ đồ  chân (a) và các  tnh ghi (b) cuûa  8251A - Giao tiếp máy tính với Kit vi xử lý 8086
Hình 5.3 Sơ đồ chân (a) và các tnh ghi (b) cuûa 8251A (Trang 58)

TỪ KHÓA LIÊN QUAN

w