CHƯƠNG III cơ sở lý THUYẾT lập TRÌNH GIAO DIỆN GIAO TIẾP VB

3 169 0
CHƯƠNG III  cơ sở lý THUYẾT lập TRÌNH GIAO DIỆN GIAO TIẾP VB

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

Thông tin tài liệu

CHƯƠNG III SỞ THUYẾT LẬP TRÌNH GIAO DIỆN GIAO TIẾP VB III.1 Truyền thông nối tiếp dùng ActiveX Việc truyền thông nối tiếp Windows thực thông qua ActiveX sẵn Microsoft Comm Control ActiveX dược lưu trữ file MSCOMM32.OCX Quá trình hai khả thực điều khiển trao đổi thông tin: - Điều khiển kiện: Truyền thông điều khiển kiện phương pháp tốt trình điều khiển việc trao đổi thông tin Quá trình điều khiển thực thông qua kiện OnComm - Hỏi vòng: Quá trinh điều khiển phương pháp hỏi vòng thực thông qua kiểm tra giá trị thuộc tính CommEvent sau chu kỳ để xác định xem kiện xảy hay không Thông thường phương pháp sử dụng cho chương trình nhỏ ActiveX MsComm bổ sung vào Visual Basic Project thông qua menu Project > Components: III.2 Các thuộc tính Settings: Xác định tham số cho cổng nối tiếp Cú pháp: MSComm1.Settings = ParamString MSComm1: tên đối tượng ParamString: chuỗi dạng sau: "BBBB,P,D,S" BBBB: tốc độ truyền liệu (bps) giá trị hợp lệ là: 110, 2400, 38400, 300, 9600 (măc định), 56000, 600, 14400, 188000, 1200, 19200, 256000 P: kiểm tra chẵn lẻ, với giá trị: Giá trị Mô tả O Odd (kiểm tra lẻ) E Even (kiểm tra chẵn) M Mark (luôn 1) S Space (luôn 0) N Không kiểm tra D: số bit liệu (4, 5, 6, hay 8), mặc định bit S: số bit stop (1, 1.5, 2) VD: MSComm1.Settings = "9600,O,8,1" xác định tốc độ truyền 9600bps, kiểm tra parity chẵn với bit stop bit liệu � CommPort: Xác định số thứ tự cổng truyền thông, cú pháp: MSComm1.CommPort = PortNumber PortNumber giá trị nằm khoảng từ � 99, mặc định VD: MSComm1.CommPort = xác định sử dụng COM1 � PortOpen: Đặt trạng thái hay kiểm tra trạng thái đóng / mở cổng nối tiếp Nếu dùng thuộc tính để mở cổng nối tiếp phải sử dụng trước thuộc tính Settings CommPort Cú pháp: MSComm1.PortOpen = True | False Giá trị xác định True thực mở cổng False để đóng cổng đồng thời xoá nội dung đệm truyền, nhận VD: Mở cổng COM1 với tốc độ truyền 9600 bps MSComm1.Settings = "9600,N,8,1" MSComm1.CommPort = MSComm1.PortOpen = True � Các thuộc tính nhận liệu: Input: nhận chuỗi ký tự xoá khỏi đệm Cú pháp: InputString = MSComm1.Input Thuộc tính kết hợp với InputLen để xác định số ký tự đọc vào Nếu InputLen = đọc toàn liệu đệm InBufferCount: số ký tự đệm nhận Cú pháp: Count = MSComm1.InBufferCount Thuộc tính dược dùng để xoá đệm nhận bắng cách gán giá trị MSComm1.InBufferCount = InBufferSize: đặt xác định kích thước đệm nhận (tính byte) Cú pháp: MSComm1.InBufferCount = NumByte Giá trị măc định 1024 byte Kích thước đệm phải đủ lớn để tránh tình trạng liệu VD: Đọc toàn nội dung đệm nhận liệu MSComm1.InputLen = If MSComm1.InBufferCount Then InputString = MSComm1.Input End If � Các thuộc tính xuất liệu: Bao gồm thuộc tính Output, OutBufferCount OutBufferSize, chức thuộc tính giống thuộc tính nhập � CDTimeout: Đặt xác định khoảng thời gian lớn (tính ms) từ lúc phát sóng mang lúc liệu Nếu khoảng thời gian mà chưa liệu gán thuộc tính CommEvent CDTO (Carrier Detect Timeout Error) tạo kiện OnComm Cú pháp: MSComm1.CDTimeout = NumTime � DSRTimeout: Xác định thời gian chờ tín hiệu DSR trước xảy kiện OnComm � CTSTimeout: Đặt xác định khoảng thời gian lớn (tính ms) đợi tín hiệu CTS trước đặt thuộc tính CommEvent CTSTO tạo kiện OnComm Cú pháp: MSComm1.CTSTimeout = NumTime � CTSHolding: Xác định tín hiệu CTS hay chưa, tín hiệu dùng cho trình bắt tay phần cứng (cho biết DCE sẵn sàng nhận liệu), trả giá trị True hay False � DSRHolding: Xác định trạng thái DSR (báo hiệu tồn DCE), trả giá trị True hay False � CDHolding: Xác định trạng thái CD, trả giá trị True hay False � DTREnable: Đặt hay xoá tín hiệu DTR để báo tồn DTE Cú pháp: MSComm1.DTREnable = True | False � RTSEnable: Đặt hay xoá tín hiệu RTS để yêu cầu truyền liệu đến DTE Cú pháp: MSComm1.RTSEnable = True | False � NullDiscard: Cho phép nhận ký tự NULL (rỗng) hay không (= True: cấm) Cú pháp: MSComm1.NullDiscard = True | False ... COM1 � PortOpen: Đặt trạng thái hay kiểm tra trạng thái đóng / mở cổng nối tiếp Nếu dùng thuộc tính để mở cổng nối tiếp phải sử dụng trước thuộc tính Settings CommPort Cú pháp: MSComm1.PortOpen... MSComm1.CTSTimeout = NumTime � CTSHolding: Xác định có tín hiệu CTS hay chưa, tín hiệu dùng cho trình bắt tay phần cứng (cho biết DCE sẵn sàng nhận liệu), trả giá trị True hay False � DSRHolding:

Ngày đăng: 07/09/2017, 08:48

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan