Luận văn Giao tiếp máy tính với kit vi xử lý 8085

MỤC LỤC

Trang

Lời cảm tạ

Lời nói đầu

PHẦN GIỚI THIỆU CHUNG

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

Chương I: CẤU TRÚC VI XỬ LÝ 8085

I. Cấu Trúc Bên Trong Của Vi Xử Lý 8085

II. Sơ Đồ Cấu Trúc Bên Ngoài Và Chứ Năng Các Chân Của

Vi Xử Lý 8085

III. Bộ Nhớ

IV. Kết Nối Bộ Nhớ Với Vi Xử Lý

V. Vấn Đề Giải Mã Cho Bộ Nhớ

Chương II: GIỚI THIỆU TẬP LỆNH CỦA VI XỬ LÝ 8085

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

2. Giao Tiếp Qua Cổng Slot Card

II. Giao Tiếp Nối Tiếp Qua Cổng COM RS232

1. Vài Nét Cơ Bản Về Cổng nối Tiếp

2. Sự Trao Đổi Của Các Đường Tín Hiệu

Chương IV: GIỚI THIỆU HỆ THỐNG KIT 8085

1. Tần Số Làm Tần Số Làm Việc

2. Tổ Chức Bộ Nhớ

3. Các IC Ngoại Vi

4. Khối Giải Mã Hiển Thị Sử Dụng IC 8279

5. Khối Giài Mã Bàn Phím

PHẦN GIAO TIẾP

Chương V: Giao Tiếp Nối Tiếp Dùng Vi Mạch 8251

I. Truyền Thông Tin Nối Tiếp

II. Vi Mạch Usart 8251

1. Sơ Đồ Chân Và Sơ Đồ Khối

2. Các Thanh Ghi

III. Ưng Dụng Của 8251 Để Truyền Thông Tin Nối Tiếp

1. Truyền Thông Tin Nối Tiếp Giữa Hai Kit Vi Xử Lý

2. Truyền Thông Tin Nối Tiếp Giữa Vi Xử Lý Và Máy Tính

Chương VI: Giao Tiếp Song Song Dùng Vi Mạch 8255

I. Giơi Thiệu Về Vi Mạch 8255

II. Sơ Đồ Chân, Sơ Đồ Logic, Chức Năng Các Chân Của Vi Mạch 8255

III. Cấu Trúc Bên Trong và Hoạt Động Của Vi Mạch 8255

1. Sơ Đồ Khối, Cấu Trúc Bên Trong Của Vi Mạch 8255

2.Hoạt Động Của Vi Mạch 8255

3. Từ Điều Khiển

IV. Giao Tiếp Giữa Vi Xử Lý Với 8255

1. Giao Tiếp Kiểu I/O

2. Giao Tiếp Kiểu Bộ Nhớ

Chương VII. Phần Cứng Và Phần Mềm Giao Tiếp

I. Lưu Đồ Và Chương Trình Truyền- Nhận Dữ Liệu

1. Lưu Đồ Truyền Dữ Liệu

2. Lưu Đồ Nhận Dữ Liệu

3. Chương Trình Truyền Dữ Liệu

4. Lưu Đồ Nhận Dữ Liệu

II. Thiết Kế Và Thi Công Phần Giao Tiếp

1. Giới Thiệu Về Vi Mạch Max 232

2. Sơ Đồ Mạch Kết Nối

3. Sơ Đồ Mạch In

 

PHẦN TỔNG KẾT

Phụ Lục

Hướng Phát Triển Đề Tài

Kết Luận

Tài Liệu Tham Khảo

Mục Lục

 

 

doc140 trang | Chia sẻ: maiphuongdc | Lượt xem: 1684 | Lượt tải: 4download
Bạn đang xem trước 20 trang tài liệu Luận văn Giao tiếp máy tính với kit vi xử lý 8085, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
tại địa chỉ (SP-1), thanh ghi C được cất vào ngăn xếp tại địa chỉ (SP-2), nội dung thanh ghi SP giảm đi 2. + Lệnh này chiếm 1 byte, số chu kì xung clock =12. +Lệnh này không ảnh hưởng đến thanh ghi trạng thái. (Tương tự cho các lệnh khác) Lệnh cất cặp thanh ghi DE: Cú pháp: PUSH D Lệnh cất cặp thanh ghi HL: Cú pháp: PUSH H Lệnh cất cặp thanh ghi AF: Cú pháp: PUSH PSW VIII. NHÓM LỆNH POP: Lệnh chuyển nội dung ngăn xếp vào cặp thanh ghi: + Cú pháp: POP B 1 1 0 0 0 0 0 1 + Mã đối tượng: + Ý nghĩa: chuyển nội dung từ ngăn xếp vào cặp thanh ghi BC. Nội dung ngăn xếp có địa chỉ chứa trong SP được chuyển cho thanh ghi C, nội dung của ngăn xếp có địa chỉ (SP+1) được chuyển cho thanh ghi B, sau lệnh POP nội dung của SP tăng lên 2. + Lệnh này chiếm một byte, số chu kì clock =12. + Lệnh này không ảnh hưởng đến thanh ghi teạng thái. (Tương tự cho các lệnh khác cùng nhóm). Lệnh chuyển nội dung ngăn xếp vào cặp thanh ghi DE: + Cú pháp: POP D Lệnh chuyển nội dung ngăn xếp vào cặp thanh ghi HL: + Cú pháp: POP H Lệnh chuyển nội dung ngăn xếp vào cặp thanh ghi AF: + Cú pháp: POP PSW IX. NHÓM LỆNH CỘNG CẶP THANH GHI VỚI CẶP THANH GHI: Lệnh cộng cặp thanh ghi BC: + Cú pháp: DAD B 0 0 0 0 1 0 0 1 + Mã đối tượng: + Ý nghĩa: nội dung cặp thanh ghi BC được cộng với cặp thanh ghi HL, kết quả cất trong cặp thanh ghi HL. Thanh ghi L được cộng với C, thanh ghi H được cộng với B. + Lệnh này chiếm 1 byte, số chu kỳ clock =10. + Lệnh này chỉ làm ảnh hưởng đến bit trạng thái Cy. Tương tự cho các lệnh cùng nhóm này như sau: Lệnh cộng cặp thanh ghi DE: + Cú pháp: DAD D Lệnh cộng cặp thanh ghi HL: + Cú pháp: DAD H Lệnh cộng cặp thanh ghi SP: + Cú pháp: DAD SP X. NHÓM LỆNH TĂNG CẶP THANH GHI: 1.Lệnh tăng cặp thanh ghi BC: + Cú pháp: INX B 0 0 0 0 0 0 0 1 + Mã đối tượng: +Ý nghĩa: nội dung cặp thah ghi BC tăng thêm một đơn vị. + Lệnh này chiếm 1 byte, số chu kỳ clock =6. + Lệnh này không làm ảnh hưởng đến thanh ghi trạng thái. (Tương tự cho các lệnh khác) Lệnh tăng cặp thanh ghi DE: + Cú pháp: INX D Lệnh tăng cặp thanh ghi HL: + Cú pháp: INX H Lệnh tăng cặp thanh ghi SP: + Cú pháp: INX SP XI. LỆNH GIẢM CẶP THANH GHI: Lệnh giảm cặp thanh ghi BC: + Cú pháp: DCX D 0 0 0 0 1 0 1 1 + Mã đối tượng: + Ý nghĩa: nội dung cặp thanh ghi BC giảm thêm 1 đơn vị. + Lệnh này chiếm 1 byte, số chu kỳ clock=6. + Lệnh này không làm ảnh hưởng đến thanh ghi trạng thái. (Tương tự cho các lênh khác) Lệnh giảm cặp thanh ghi DE: + Cú pháp: DCX D Lệnh giảm cặp thanh ghi HL: + Cú pháp: DCX H Lệnh giảm cặp thanh ghi SP: + Cú pháp: DCX SP XII. NHÓM LỆNH GIÁN TIẾP DÙNG CẶP THANH GHI: Lệnh lưu trữ gián tiếp dùng cặp thanh ghi BC: + Cú pháp: STAX B 0 0 0 0 0 0 1 0 + Mã đối tượng: + Ý nghĩa: nội dung thanh gi được lưu trữ gián tiếp vào ô nhớ có địa chỉ chứa trong cặp thanh ghi BC. + Lệnh này không ảnh hưỏng đến thanh ghi trạng thái. (Tương tự cho các lênh khác cùng nhóm) Lệnh lưu trữ gián tiếp dùng cặp thanh ghi DE: + Cú pháp: STAX D Lệnh nạp gián tiếp dùng cặp thanh ghi BC: + Cú pháp: LDAX B 0 0 0 0 1 0 1 0 + Mã đối tượng: + Ý nghĩa: nội dung ô nhớ có địa chỉ chứa trong cặp thanh ghi BC được chuyển vào thanh ghi A. (Tương tự cho các lệnh khác) Lệnh lưu trữ gián tiếp dùng cặp thanh ghi DE: + Cú pháp: LDAX D XIII. NHÓM LỆNH TRỰC TIẾP: Lệnh lưu trữ trực tiếp: + Cú pháp: STA ADDR 0 0 1 1 0 0 1 0 8 bit thấp 8 bit cao + Mã đối tượng: + Ý nghĩa: nội dung thanh ghi A được lưu trữ vào ô nhớ có địa chỉ ADDR. + Lệnh này chiếm 3 byte, số chu kỳ clock=13. + Lệnh này không ảnh hưởng đến thanh ghi trạng thái. Lệnh nạp trực tiếp: + Cú pháp: LDA ADDR 0 0 1 1 1 0 1 0 8 bit thấp 8 bit cao + Mã đối tượng: + Ý nghĩa: nội dung ô nhớ có địa chỉ là ADDR được chuyển vào thanh ghi A. + Lệnh này chiếm 3 byte, số chu kỳ xung clock =13. + Lệnh nầøy không ảnh hưởng đến thanh ghi trạng thái. Lệnh lưu trữ trực iếp cặp thanh ghi: + Cú pháp: SHLD ADDR 0 0 1 0 0 0 1 0 8 bit thấp 8 bit cao + Mã đối tượng: + Ý nghĩa: nội dung cặp thanh ghi HL đựoc lưu vào 2 ô nhớ liên tiếp là ADDR và (ADDR+1). Nội dung thanh ghi L được lưu trữ vào ô nhớ có địa chỉ là ADDR, nội dung của thanh ghi H được lưu trữ vào ô nhớ có địa chỉ là (ADDR+1). + Lệnh nầy chiếm 3 byte, số chu kỳ xung clock = 16. + Lệnh nầy không ảnh hưởng đến thanh ghi trạng thái. Lệnh nạp trực tiếp cặp thanh ghi: + Cú pháp: LHLD ADDR 0 0 1 0 1 0 1 0 8 bit thấp 8 bit cao + Mã đối tượng: + Ý nghĩa: nội dung của 2 ô nhớ có địa chỉ liên tiếp là ADDR và (ADDR+1) được lưu trữ vào cặp thanh ghi HL. Nội dung của ô nhớ có địa chỉ ADDR được nạp vào thanh ghi L, nội dung của ô nhớ có địa chỉ (ADDR+1) được nạp vào thanh ghi H. + Lệnh này chiếm 3 byte, số chu kỳ xung clock =13. + Lệnh này không ảnh hưởng đến thanh ghi trạng thái. XIV. NHÓM LỆNH XOAY THANH GHI A: Lệnh dịch thanh ghi A sang trái: + Cú pháp: RLC 0 0 0 0 0 1 1 1 + Mã đối tượng: + Ý nghĩa: nội dung thanh ghi A dịch từ phải sang trái, bit MSB được chuyển sang bit Cy và bit LSB. + Lệnh này chiếm 1byte, số chu kỳ lock =4. + Lệnh này chỉ ảnh hưởng đến bit trạng thái Cy. Lệnh dịch thanh ghi A sang phải: + Cú pháp: RRC 0 0 0 0 1 1 1 1 + Mã đối tượng: + Ý nghĩa: nội dung thanh ghi A dịch từ trái sang phải, bit LSB được chuyển sang bit Cy và bit MSB. + Lệnh này chiếm 1byte, số chu kỳ lock =4. + Lệnh này chỉ ảnh hưởng đến bit trạng thái Cy. ( Tương tự cho các lệnh khác). Lệnh dịch thanh ghi A sang trái thông qua bit Cy: + Cú pháp: RAL Lệnh dịch thanh ghi A sang phải thông qua bit Cy: + Cú pháp: RAR XV. NHÓM LỆNH NHẢY: Lệnh nhảy không điều kiện: + Cú pháp: JMP ADDR 1 1 0 0 0 0 1 1 8 bit thấp 8 bit cao + Mã đối tượng: + ý nghĩa: vi xử lí sẽ nhảy đến địa chỉ ADDR để tiếp tục thực hiện chương trình. + Lệnh này chiếm 3 byte, số chu kỳ clock =10. + Lệnh này không ảnh hưởng đến thanh ghi trạng thái. Lệnh nhảy khi bit Z=0: +Cú pháp: JNZ ADDR 1 1 0 0 0 0 1 0 8 bit thấp 8 bit cao + Mã đối tượng: + Ý nghĩa: vi xử lí sẽ nhảy đến địa chỉ ADDR để tiếp tục chương trình khi bit Z=0, ngay sau khi thực hiện lệnh ảnh hưởng đến bit z của thanh ghi trạng thái. + Lệnh này chiếm 3 byte, số chu kỳ clock là 7/10. + Lệnh này không ảnh hưởng đến thanh ghi trạng thái. ( Tương tự cho các lệnh khác). Lệnh nhảy khi bit Z=1: + Cú pháp: JZ ADDR Lệnh nhảy khi bit C=0: + Cú pháp: JNC ADDR Lệnh nhảy khi bit C=1: + Cú pháp: JC ADDR Lệnh nhảy khi bit P=0: + Cú pháp: JPO ADDR Lệnh nhảy khi bit P=1: + Cú pháp: JPE ADDR Lệnh nhảy khi bit S=0: + Cú pháp: JP ADDR Lệnh nhảy khi bit S=1: + Cú pháp: JM ADDR XVI. NHÓM LỆNH GỌI: Lệnh gọi không điều kiện: + Cú pháp: CAAL ADDR 1 1 0 0 1 1 0 1 8 bit thấp 8 bit cao + Mã đối tượng: + Ý nghĩa: vi xử lý sẽ thực hiện chương trình tại địa chỉ ADDR sau đó sẽ trở về chương trình chính khi gặp lệnh trở về. + Lệnh này chiếm 3 byte, số chu kỳ clock =18. + Lệnh này không ảnh hưởng đến thanh ghi trạng thái. Lệnh gọi khi Z=0: + Cú pháp: CNZ ADDR 1 1 0 0 1 1 0 1 8 bit thấp 8 bit cao + Mã đối tượng: + Ý nghĩa: vi xử lý sẽ thực hiện chương trình tại ADDR khi bit Z=0, ngay sau khi thực hiện lệnh ảnh hưởng đến bit Z của thanh ghi trạng thái. Sau đó sẽ trở về chương trình chính khi gặp lệnh trở về. + Lệnh này chiếm 3 byte, số chu kỳ clock =9/18. + Lệnh này không ảnh hưởng đến thanh ghi trạng thái. ( Tương tự cho các lệnh khác). Lệnh gọi khi bit Z=1: + Cú pháp: CZ ADDR Lệnh gọi khi bit C=0: + Cú pháp: CNC ADDR Lệnh gọi khi bit C=1: + Cú pháp: CC ADDR Lệnh gọi khi bit P=0: + Cú pháp: CPO ADDR Lệnh gọi khi bit P=1: + Cú pháp: CPE ADDR Lệnh gọi khi bit S=0: + Cú pháp: CP ADDR Lệnh gọi khi bit S=1: + Cú pháp: CM ADDR NHÓM LỆNH TRỞ VỀ TỪ CHƯƠNG TRÌNH CON: Lệnh RET không điều kiện: + Cú pháp: RET 1 1 0 0 1 0 0 1 1 + Mã đối tượng: + Ý nghĩa: lệnh này sẻ kết thúc chương trình con, vi xử lý sẽ trở lại chương trình chính tiếp tục phần chương trình còn lại. + Lệnh này chiếm 1 byte, số chu kỳ xung clock=10. + Thanh ghi trạng thái không đổi. Lệnh trở về khi Z=0: + Cú pháp: RNZ 1 1 0 0 0 0 0 0 0 + Mã đối tượng: + Ý nghĩa: lệnh này sẽ kết thúc chương trình con khi bit Z=0, vi xử lý sẽ trở lại chương trình chính tiếp tục phần chương trình còn lại, nếu không thỏa điều kiên chương trình con sẽ thực hiện các lệnh tiếp theo. + Lệnh này chiếm 1 byte, số chu kỳ clock=6/12. + Thanh ghi trạng thái không thay đổi. ( Tương tự cho các lệnh khác). Lệnh trở về khi Z=1: + Cú pháp: RZ Lệnh trở về khi C=0: + Cú pháp: RNC Lệnh trở về khi C=1: + Cú pháp: RC Lệnh trở về khi P=0: + Cú pháp: RPO Lệnh trở về khi P=1: + Cú pháp: RPE Lệnh trở về khi S=0: + Cú pháp: RP Lệnh trở về khi S=1: + Cú pháp: RM NHÓM LỆNH DI CHUYỂN CẶP THANH GHI Lệnh trao đổi nội dung 2 cặp thanh ghi: + Cú pháp : XCHG 1 1 1 0 1 0 1 1 + Mã đối tượng: + Ý nghĩa: nội dung cặp thanh ghi HL và DE được trao đổi cho nhau. Thanh ghi H trao đổi với D thanh ghi L trao đổi với E. + Lệnh này chiếm 1 byte, số chu kỳ xung clock = 4. + Thanh ghi trạng thái không thay đổi. ( Tương tự cho các lệnh khác ). Lệnh trao đổi nội dung cặp thanh ghi với ô nhớ: + Cú pháp : XTHG Lệnh di chuyển nội dung cặp thanh ghi: + Cú pháp : SPHL Lệnh nạp cặp thanh ghi PC : + Cú pháp : PCHL NHÓM LỆNH XUẤT NHẬP Lệnh nhập dữ liệu từ port: + Cú pháp: IN port-addr 1 1 0 1 1 0 1 1 port-addr + Mã đối tượng: + Ý nghĩa: nhập nội dung của có địa chỉ port-addr vào thanh ghi A. Địa chỉ port-addr có độ dài 1 byte. + Lệnh này chiếm 2 byte, số chu kỳ xung clock = 10. + Thanh ghi trang thái không thay đổi. (Tương tự cho các lệnh khác). Lệnh xuất dữ liệu ra port: + Cú pháp: OUT port-addr Lệnh cho phép ngắt: + Cú pháp: EI Lệnh không cho phép ngắt: + Cú pháp: DI Lệnh read interrupt mask: + Cú pháp: RIM Lệnh set interrupt mask: Bảng tra các thanh ghi: Register ddd or sss B 000 C 001 D 010 E 011 H 100 L 101 M 110 A 111 Bảng 2.1 + Cú pháp: SIM NHÓM LỆNH ĐẶC BIỆT: Lệnh nghịch đảo nội dung thanh ghi A: + Cú pháp: CMA Lệnh đặt bit carry: + Cú pháp: STC Lệnh nghịch đảo bit carry: + Cú pháp: CMC Lệnh điều chỉnh thập phân: + Cú pháp: DAA Lệnh nop: + Cú pháp: NOP Lệnh dừng: + Cú pháp: HLT VÍ DỤ MINH HỌA TẬP LỆNH: Chương trình nhấp nháy chuỗi "-HÀ-NỘI-" trên 8 led: Org 7108h ;địa chỉ bắt đầu nhập mã chuổi Db, 40h, 76h, 77h, 40h, 37h, 3fh, 30h, 40, ;khai báo mã của chuỗi Org 6200h Vd1: lxi h, 7108h ;nạp địa chỉ quản lý dữ liệu vào thanh ghiHL Mvi c, 08h ;làm biến đếm cho chương trình hiển thị Vd2: mov a, m ;lấy dữ liệu Sta 0a000h ;gởi ra led hiển thị Inr l ;tăng lên 1 để lấy byte tiếp theo Dcr c ;giảm biến đếm Jnz vd2 ;nhảy về vd2 khi chưa gởi đủ 8 byte Mvi a, 01h ;nạp thời hằng delay1 giây Call 0310h ;gọi chương trình con delay Mvi c, 08h ;làm biến điếm cho chương trình xóa Mvi a, 00h ;nạp 00 vào A Vd3 sta 0a000h ;gởi ra led để xóa Dcr c ;giảm biến đếm Jnz vd3 ;quay lại vd3 nếu chưa xóa đủ 8 led Mvi 0, 01h ;nạp thời hằng delay Call 0310h ;gọi chương trình delay Jmp vd1 ;quay lại làm lại chu kỳ kế. CHƯƠNG III: GIAO TIẾP VỚI MÁY TÍNH GIAO TIẾP SONG SONG: 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à khi sử 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 được ghé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 được gọi là 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ần 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 được mô tả như sau: 1 25 14 O O O O O O O O O O O O O O O O O O O O O O O O O HÌNH 3.1 Chức năng các chân Chân Ký hiệu Out/in Chức năng 1 2 .. 9 10 11 12 13 14 15 16 17 18 ..25 Strobe D0 .. D7 ACK Busy PE SLCT AF ERROR INIT SLCTN GND Out Out In In In In Out In Out Out Byte được in Cá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ấy Báo chọn máy in Máy tính báo ra máy in tự nạp giấy Báo các lỗi của máy in Reset máy in Chọn máy in Nố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. Thanh ghi dữ liệu: gồm có 8 bit dữ liệu, có địa chỉ là 378h. HÌNH 3.2 CHÂN SỐ : 9 8 7 6 5 4 3 2 D7 D6 D5 D4 D3 D2 D1 D0 Thanh ghi trang thái: có địa chỉ là 379h. ERROR SLCT PE ACK BUSY D7 D6 D5 D4 D3 D2 D1 D0 Thanh ghi điều khiển có địa chỉ: 37AH Strobe AF INIT SLCTIN ( Ngắt 8259 ) D7 D6 D5 D4 D3 D2 D1 D0 1.4. Hoạt động của việc trao đổi dữ liệu: 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 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 BUSY = 1 BEGIN GỞI DỮ LIỆU STROBE = 1 ACK = 1 STROBE = 0 HẾT FILE THOÁT RA CHUẨN BỊ DỮ LIỆU TIẾP THEO HÌNH 3.3 LƯU ĐỒ PHÁT BEGIN STROBE =1 BUSY =1 , ACK =0 ĐỌC DỮ LIỆU XỬ LÝ DỮ LIỆU ACK = 1 BUSY = 1 LƯU ĐỒ THU HÌNH 3.4 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ụng tí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 tính 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áy tí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 theo tiê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ác nhau có thể kiểm tra như sau: + Rãnh cắm 16 bit theo tiêu chuẩn ISA (Industry standard Architecture) + Rãnh cắm PS/2 với 16 bit theo tiêu chuẩn MCA (Micro Channel Architecture) + 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 Channel Architecture) + 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 đo lường và điều khiển đều được chế tạo để đặt vào rãnh cắm theo tiêu chuẩn ISA. GIAO TIẾP NỐI TIẾP QUA CỔNG COM RS232 VÀI NÉT CƠ BẢN VỀ CỔNG NỐI TIẾP: Cổng nối tiếp RS232 là một loại giao diện phổ biến rộng rãi nhất, ta còn gọi là cổng COM1, COM2 để tự do cho các ứng dụng khác nhau. Giống như cổng máy in, cổng nối tiếp RS232 cũng được sử dụng rất thuận tiện trong việc ghép nối máy tính với các thiết bị ngoại vi. Việc truyền dữ liệu qua cổng RS232 được tiến hành theo cách nối tiếp, nghĩa là các bit dữ liệu được gởi đi nối tiếp với nhau trên một đường dẫn. Trước hết loại truyền này có khả năng dùng cho những khoảng cách lớn hơn, bởi vì khả năng gây nhiễu là nhỏ đáng kể hơn là khi dùng một cổng song song. Việc dùng cổng song song có một nhược điểm đáng kể là cáp truyền nhiều sợi và vì vậy rất đắt tiền, hơn nữa mức tín hiệu nằm trong khoảng 0..5V đã tỏ ra không thích ứng với khoảng cách lớn . Trên hình 3.5 là sự bố trí chân của phích cắm RS232 của máy tính PC: 1 2 3 4 5 6 7 8 9 O O O O O O O O O HÌNH 3.5 13 14 25 O O O O O O O O O O O O O O O O O O O O O O O O O CHÂN (loại 9 chân ) CHÂN ( loại 25 chân ) KÝ HIỆU Ý NGHĨA 1 2 3 4 5 6 7 8 9 8 3 2 20 7 6 4 5 22 DCD RxD TxR DTR GND DSR RTS CTS RI Data carrier detect Nhận dữ liệu Phát dữ liệu Dữ liệu đầu cuối sẵn sàng Nối đất Thiết bị thông tin sẵn sàng Yêu cầu gửi Thiết bị thông tin sẵn sàng truyền Ring in dicator Việc truyền dữ liệu xẩy ra trên 2 đường dẫn qua chân cắm ra TxD, gửi dữ liệu của nó đến thiết bị khác. trong khi đó dữ liệu mà máy tính nhận được dẫn đến chân RxD. các tín hiệu khác đóng vai trò như tín hiệu hỗ trợ khi trao đổi thông tin và vì thế không phải trong mọi ứng dụng đều dùng đến. Mức tín hiệu trên chân ra RxD tùy thuộc vào đường dẫn TxD và thông tin thường nằm trong khoảng – 12V.. + 12V các bit dữ liệu được đảo ngược lại. Mức điện áp ở mức cao nằm trong khoảng – 3V và – 12V và mức thấp nằm trong khoảng từ + 3Vvà +12V . Trạng thái tĩnh trên đường dẫn có mức điện áp – 12V. Bằng tốc độ baud ta thiết lập tốc độ truyền dữ liệu các giá trị thông thường là 300, 600, 1200, 2400, 4800, 9600, và 19200 baud, Ký hiệu baud là số lượng bit truyền trong 1s. Còn một vấn đề nữa là khuôn mẫu (Format) truyền dữ liệu cần phải được thiết lập như nhau cả bên gửi cũng như bên nhận các thông số truyền có thể được thiết lập trên máy tính PC bằng các câu lệnh trên DOS. Ngày nay Windows cũng có các chương trình riêng để sử dụng, khi đó các thông số truyền dữ liệu như: tốc độ baud, số bit dữ liệu, số bit dừng, bit chẵn lẻ (parity) có thể được thiết lập một cách rất đơn giản. SỰ TRAO ĐỔI CỦA CÁC ĐƯỜNG TÍN HIỆU: Cũng như ở cổng máy in, các đường dẫn tín hiệu riêng biệt cũng cho phép trao đổi qua lại các địa chỉ trong máy tính PC. trong trường hợp này người ta thường sử dụng những vi mạch có độ tích hợp cao để có thể hợp nhất nhiều chức năng trên 1 chip. Ở máy tính PC thường có một bộ phát/nhận không đồng bộ vạn năng gọi tắt là UART: Universal Asynchronous Receiver/Transmister. Để điều khiển sự trao đổi thông tin giữa máy tính và các thiết bị ngoại vi. phổ biến nhất là vi mạch 8250 của hãng NSC hoặc các thiết bị tiếp theo, chẳng hạn như 16C550. Bộ AURT này có 10 thanh ghi để điều khiển tất cả chức năng của việc nhập vào, xuất ra dữ liệu theo cách nối tiếp liên quan đến nội dung của phần này chỉ đề cập đến hai điều đáng quan tâm đó là: thanh ghi điều khiển modem và thanh ghi trạng thái modem. a. Thanh ghi điều khiển modem: D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 LOOP OUT2 UOT1 RTS DTR D0 =1 đưa /DTR =0 D0 =0 đưa /DTR =1 D1 =1 đưa /RTS =0 D1 =0 đưa /RTS =1 OUT1 và OUT2 điều khiển đầu ra phụ b)Thanh ghi trạng thái modem: (địa chỉ cơ bản +6) 1 nếu RI có biến đổi 1: nếu có sự thay đổ các tín hiệu tương ứng Có các giá trị của các bít out 2 out 1 , DTR, RTS, trong MCR khi bit LOOP = 1 RLSD RI DSR CTS DRLSD DRI DDSR DCTR Lại cũng giống như ở cổng ghép nối với máy in, các Thanh ghi được trao đổi qua ô nhớ trong vùng vào/ra (input/output). Địa chỉ đầu tiên có thể tới được của cổng nối tiếp gọi là địa chỉ cơ bản (basic Address) các địa chỉ của các thanh ghi tiếp theo được đạt tới bằng việc cộng thêm số thanh ghi đã gặp của bộ UART vào địa chỉ cơ bản. Địa chỉ cơ bản của cổng nối tiếp của máy tính PC được tóm tắt trong bảng sau: CỔNG ĐỊA CHỈ CƠ BẢN COM 1 COM 2 COM 3 COM 4 3F8H 2F8H 3E8H 2E8H CHƯƠNG IV: GIỚI THIỆU HỆ THỐNG KIT VI XỬ LÝ 8085 GIỚI THIỆU CẤU TRÚC PHẦN CỨNG KIT VI XỬ LÝ 8085: Tần số làm việc: + Vi xử lý 8085 của Intel với tần số hoạt động 6MHz. + Các chương trình về thời gian được viết tương ứng tại địa chỉ này. Tổ chức bộ nhớ: Bộ nhớ EPROM: Có dung lượng 16kbyte sử dụng 2 EPROM 2764, chương trình hệ thống chứa ở EPROM thứ nhất, EPROM thứ 2 chưa sử dụng được thiết kế ở dạng socket. Socket của EPROM thứ 2 có thể sử dụng được cho EPROM có dung lượng 2 kbyte, 4kbyte, 8kbyte và có thể sử dụng cho bộ nhớ RAM có dung lượng 8kbyte bằng cách chuyển đổi các Jump trên mainboard. + EPROM 1 có địa chỉ từ 0000h – 1FFFh. + EPROM 2 có địa chỉ từ 2000h – 3FFFh. Cách sử dụng các Jump trên main: + Khi sử dụng EPROM có dung lượng 2kbyte (IC 2716): hãy kết nối chân số 2 và chân số 3 của Jump 1. Vùng địa chỉ của EPROM là 2000h – 27FFh. + Khi sử dụng EPROM có dung lượng 4kbyte (IC 2732): hãy kết nối chân số 2 và chân số 1 của Jump 1. Vùng địa chỉ của EPROM là 2000h – 2FFFh. + Khi sử dụng EPROM có dung 8kbyte ( IC 2764): hãy kết nối chân số 2 và chân số 1 của Jump 1, kết nối chân số 2 và chân số 3 của Jump 2. Vùng địa chỉ của EPROM là 2000h – 3FFFh. + Khi sử dụng RAM có dung lượng 8kbyte (IC 6264): hãy kết nối chân số 2 và chân số 1 của Jump 1, kết nối chân số 2 và chân số 1 của Jump 2. Vùng địa chỉ của RAM là 2000h –3FFFh. Bộ nhớ RAM: Bộ nhớ RAM có dung lượng 16kbyte sử dụng 2 IC 6264. + RAM 1 có địa chỉ từ 6000h – 7FFFh. +ø RAM 2 có địa chỉ từ 8000h – 9FFFh. + Các vùng nhớ RAM đã sử dụng có địa chỉ là 87F8h đến 87FFh. Chương trình có thể sữ dụng toàn bộ các vùng nhớ RAM còn lại. Các IC ngoại vi: Trong hệ thống có sử dụng 3 IC 8255A dùng để giao tiếp với thiết bị ngoại vi Địa chỉ của các port 8255-1 8255-2 8255-3 Port A 00H 10H 20H Port B 01H 11H 21H Port C 02H 12H 22H Thanh ghi điều khiển 03H 13H 23H Bảng đồ ô nhớ của 3 IC 8255: + IC 8255 –3 dùng để quét bàn phím cho hệ thống máy. + Các ngõ ra của IC 8255 –1, 8255-2 được đưa ra bên ngoài bằng connect 64 chân có sơ đồ chân tra ở bảng tra. Mỗi IC 8255 có 3 port, mỗi port có 8 chân điều khiển nên số chân đưa ra bên ngoài để điều khiển là 48. Khối giải mã hiển thị sử dụng IC 8279: Gồm có 8 led với thứ tự led 1 tới led 8 theo hướng từ phải sang trái như hình 4.2. LED8 LED7 LED6 LED5 LED4 LED3 LED2 LED1 Hình 4.2 a p g f e d b c Vùng địa chỉ sử dụng của IC 8279 là A000H-A001H, trong đó: + Địa chỉ A000H là đại chỉ dùng để gửi dữ liệu cần hiển thị. + Địa chỉ A001H là địa chỉ dùng để gởi từ điều khiển ra IC 8279. Cấu trúc byte dữ liệu của led: dp g f e d c b a Hệ thống sử dụng led loại Anode chung nên muốn đoạn nào sáng thì bit dữ liệu tương ứng với đoạn đó bằng 1. Đoạn nào tắt thì bit

Các file đính kèm theo tài liệu này:

  • docGIAO_TIEP_MAY_TINH_VOI_KIT_.DOC
Tài liệu liên quan