GIỚI THIỆU NGẮT INT 14H CỦA BIOS:

Một phần của tài liệu 20101005031458_lvcnpm22 (Trang 92 - 94)

Trong hệ thống PC mọi truy cập đến các thiết bị vào ra chuẩn như : Bàn phím,màn hình,máy in,các cổng nối tiếp … bằng BIOS chúng ta phải gọi các ngắt trong của BIOS.

Phần mềm điều khiển việc truy cập đến giao diện nối tiếp được cung cấp dưới dạng các hàm được gọi thông qua ngắt 14H.

III.1 Các hàm của ngắt Int 14H:

Vì hệ thống máy tính PC hiện giờ là hệ thống AT nên trong phần này chúng tôi chỉ xin giới thiệu đến các bạn các hàm của ngắt 14H của máy PC/AT.

Int 14 [PC][AT][PS/2]

III.1.1 Function 00H ( Initialize communications port)

Hàm này dùng để xác định các thông số hoạt động của cổng COM,ta sử dụng hàm này để đưa ra các yêu cầu như : Tốc độ truyền(tính bằng Baud),kiểm tra chẵn lẻ (Parity),chiều dài của mã kí tự và số bit Stop.

Khi hàm này được gọi thì ý nghĩa của các các thanh ghi như sau: AH = 00H ( Hàm để khởi động cổng COM )

AL = Chọn các tham số cho hoạt động của cổng COM DX = Chọn cổng COM được truy cập

Thanh ghi AH sẽ chứa trạng thaí của cổng COM với ý nghĩa các bit như sau:

Bit Ý nghĩa (Nếu bit được Set)

1 Lỗi tràn

2 Lỗi chẵn lẻ

3 Lỗi khung

4 Gián đoạn đường truyền

5 Thanh ghi đợi phát rỗng

6 Thanh ghi dịch rỗng

7 Lỗi Time_Out

AL = Trạng thaí của Modem

Ý nghĩa các Bit của thanh ghi AH trong hàm này liên quan việc truyền nhận thông qua Modem sẽ không được giới thiệu (Vì trong phạm vi của bài tập này việc truyền dữ liệu không sử dụng Modem các bạn có thể tham khảo trong giáo trình Advancad MS Dos Programming) mà chúng tôi chỉ đề cập đến việc Set các tham số để thực hiện việc khởi tạo cổng COM. Byte dùng để xác định các tham số cho cổng COM sẽ được định nghĩa như sau:

Bit(7_6_5) Bit(4_3) Bit(2) Bit(1_0)

Tốc độ truyền(Baud) Kiểm tra Parity Số Bit Stop Chiều daì mã

000 = 110 X0 = None 0 = 1 Bit 10 = 7 Bits

001 = 150 01 = lẻ 1 = 2 Bit 11 = 8 Bits 010 = 300 11 = chẵn 011 = 600 100 = 1200 101 = 2400 110 = 4800 111 = 9600 III.1.2 Function 01H:

Hàm này thực hiện việc viết kí tự ra cổng COM .Khi gọi hàm này thì các thanh ghi sẽ được khai báo như sau:

AH = 01 (Hàm viết kí tự ra cổng COM) AL : Chứa mã của kí tự cần truyền

DX : Dùng để khai báo cổng COM được viết ra ( 0 = COM1 ; 0 = COM2)

Nếu việc gởi kí tự này được thực hiện thành công thì trạng thái của các thanh ghi sẽ được trả lại như sau:

AH bit 7 = 0;

Trạng thái còn lại của thanh ghi AH như sau:

Bit Ý nghĩa (Nếu bit được Set)

8 Sẵn sàng nhận Data

9 Lỗi tràn

10 Lỗi chẵn lẻ

11 Lỗi khung

12 Gián đoạn đường truyền

13 Thanh ghi rỗng

14 Chuyển đổi thanh rỗng

AL = Mã của kí tự truyền ( Không thay đổi) Nếu việc truyền dữ liệu không thành công:

AH bit 7 = 1(Time_Out)

AL = Mã của kí tự truyền ( Không thay đồi)

III.1.3 Function 02H (Read character from communications port):

Hàm này có chức năng nhận kí tự từ cổng COM,Vì trong phạm vi đề tài chúng tôi không sử dụng chức năng của hàm này nên hàm này sẽ không không được giới thiệu,các bạn có thể tham khảo giáo trình Advancad MS Dos Programming.

Function 03H (Get communications port status)

Hàm này có chức năng lấy trạng thái của cổng COM.

Khi gọi hàm này các thanh ghi sẽ được khai báo và có ý nghĩa như sau: AH = 03H

DX = Cổng COM được kiểm tra trạng thái ( 0 = COM1; 1 = COM2)

Lúc đó trạng thái của cổng COM được kiểm tra thông qua các thanh ghi mà ý nghĩa như sau:

AH = Trạng thái của cổng COM ( Xem lại ý nghĩa các bit của thanh ghi thanh ghi AH trong hàm 00H của ngắt 14H)

AL = Trạng thái của Modem (Xem hàm 00H của ngắt 14H)

Một phần của tài liệu 20101005031458_lvcnpm22 (Trang 92 - 94)

Tải bản đầy đủ (DOC)

(153 trang)
w