Câu hỏi

26/04/2013 21:01
Cách thức viết chương trình Visual Basic sử dụng ngắt?
Tôi đã làm được card thu thập số liệu qua cổng song song EPP, dùng thư viện inpout.dll để nhập hoặc xuất một byte thông tin. Nay do yêu cầu phải dùng ngắt (interrupt) để thực hiện, xin hỏi cách thức viết chương trình Visual Basic sử dụng ngắt
Bluestar
26/04/2013 21:01
Danh sách câu trả lời (1)

Trong Windows, thủ tục xử lý ngắt không thể nằm trong chương trình ứng dụng bình thường mà phải nằm trong các module đặc biệt được gọi là device driver. Để viết được 1 device driver cho 1 thiết bị nào đó (có sẵn hay tự lắp lấy), bạn cần phải biết 2 thông tin thiết yếu: thông tin về phần cứng của card (địa chỉ các thanh ghi - port I/O - của card, các đường ngắt và các kênh DMA) và thông tin về giao tiếp (inteface) của device driver được qui định bởi Windows. Thông tin đầu thì phụ thuộc vào từng card phần cứng cụ thể, còn thông tin thứ hai đã được chuẩn hóa và được trình bày trong tài liệu thuộc bộ DDK (Device Development Kit) của Microsoft. Bạn nên tìm bộ đĩa DDK để đọc các tài liệu chi tiết này cũng như các device mẫu đã được viết sẵn, từ đó hiệu chỉnh và nâng cấp thành device driver riêng cho mình.
Sau khi có device driver ứng dụng có thể truy xuất card I/O thông qua giao tiếp chuẩn (hoặc của device driver hoặc của Windows), do đó bạn có thể dùng ngôn ngữ lập trình nào cũng được. Lưu ý trên WinNT/2000/XP, ứng dụng không thể dùng lệnh inport/outport để truy xuất trực tiếp port phần cứng của thiết bị vì HĐH sẽ kiểm soát và chặn lại ngay.
Sau khi có device driver ứng dụng có thể truy xuất card I/O thông qua giao tiếp chuẩn (hoặc của device driver hoặc của Windows), do đó bạn có thể dùng ngôn ngữ lập trình nào cũng được. Lưu ý trên WinNT/2000/XP, ứng dụng không thể dùng lệnh inport/outport để truy xuất trực tiếp port phần cứng của thiết bị vì HĐH sẽ kiểm soát và chặn lại ngay.
Trả lời câu hỏi
Câu hỏi lĩnh vực Lập trình
Rao vặt Siêu Vip