MScomm có nhiều đặc tính quan trọng, tuy nhiên để có thể làm việc với MScomm trước hết ta cần tìm hiểu các đặc tính chính của nó được liệt kê trong bảng dưới đây: Các đặc tính CommPort Input Output PortOpen Settings Mô tả
Đặt số của cổng nối tiếp, ví dụ 2 cho COM2. Trả lại và bỏ các ký tự khỏi bộ đệm nhận. Viết một xâu ký tự tới bộ đệm truyền. Mở/Đóng cổng tuỳ thuộc vào thông số.
Đặt và trả lại các tham số truyền như tốc độ, bit chẵn lẻ, số các bit dữ liệu ...
Ví dụ dưới đây cho minh hoạ cách sử dụng các đặc tính trên:
Private Sub Form_Load() „ sử dụng COM1
MSComm1.CommPort = 1
„ Đặt tốc độ 9600bps, không chẵn lẻ, 8 bit dữ liệu, một bit dừng
MSComm1.Settings = "9600,N,8,1" „ Mở cổng COM
MSComm1.PortOpen = True
MSComm1.Output = "AT" + Chr$(13) „ Gửi lệnh AT ra môđem „ Đợi tín hiệu trả lời
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
DoEvents
Loop Until MSComm1.InBufferCount >= 2 „Đọc dữ liệu trả lời Instring=MSComm1.input „ Đóng cổng COM MSComm1.PortOpen = False End Sub Đặc tính Settings
Dùng để đặt và trả lại các thông số truyền thông cho cổng RS-232 như tốc độ baud, tính chẵn lẻ, số bit dữ liệu và số các bit dừng. Cú pháp của câu lệnh như sau:
MSComm.Settings = “BBBB, P, D, S” Trong đó:
BBBB: Qui định tốc độ baud có thể nhận các giá trị 110, 300, 600, 1200, 2400, 9600, 14400, 19200, 38400, 56000, 188000, 256000. Trong đo 9600 là giá trị mặc định.
P: xác định tính chẵn lẻ, nhận các giá tri cho trong bảng dưới đây:
Giá trị E M N O S Mô tả Chẵn lẻ chẵn Dấu
Không kiểm tra chẵn lẻ (mặc định) Chẵn lẻ lẻ
Trống
D: số bít hợp lệ trong một khung truyền, có thể nhận các giá trị 4,5,6,7,8 trong đó 8 là mặc định.
S: số bít dừng, có thể nhận các giá trị 1, 1.5, 2.
Đặc tính PortOpen
Dùng để đặt và trả lại trạng thái của cổng truyền thông, cú pháp như sau: MSComm.PortOpen = {True|False}
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
Trong đó true để mở cổng, false để đóng cổng và xoá nội dung bộ đệm nhận và truyền.
Đặc tính CommEvent
Đặc tính CommEvent là một đặc tính quan trọng bậc nhất trong MSCommm và có lẽ là một trong những đặc tính đắc dụng nhất đối với việc lập trình giao tiếp qua cổng nối tiếp sử dụng MSComm cua Visual Basic.
Đặc tính CommEvent trả lại hầu hết sự kiện hoặc lỗi truyền thông gần nhất, cú pháp như sau:
MSComm.CommEvent
Mặc dù sự kiện OnComm phát sinh cả lỗi truyền thông và các sự kiện nhưng đặc tính CommEvent lại chứa mã số của các lỗi và sự kiện đó.
Các lỗi truyền thông bao gồm:
Xác lập Giá trị Mô tả
ComBreak 1001 Tín hiệu break đã được nhận. ComCDTO 1007 Carrier Detect Timeout. ComCTSTO 1002 Clear to Send Timeout.
ComFrame 1004 Phần cứng phát hiện một lỗi sai số khung truyền. ComOverrun 1006 Phần cứng không đọc được ký tự trước khi ký tự
tiếp theo được gửi đến. ComRxOver 1008 Tràn bộ đệm nhận.
ComRxParity 1009 Phần cứng phát hiện một lỗi chẵn lẻ. ComTxFull 1010 Đầy bộ đệm truyền.
Các sự kiện truyền thông bao gồm:
Xác lập Giá trị Mô tả
ComEvCD 5 Sự thay đổi trên đường CD. ComEvCTS 3 Sự thay đổi trên đường CTS. ComEvDSR 4 Sự thay đổi trên đường DSR. ComEvRing 6 Tiếng chuông được phát hiện.
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS ComEvEOF 7 Ký tự kết thúc file được nhận.
ComEvReceive 2 Sự kiện này liên tục phát sinh cho đến khi đặc tính Input được dùng để chuyển dữ liệu từ bộ đệm nhận. ComEvSend 1 Ký tự đã được truyền.