MSCOMM adalah kontrol komunikasi serial yang kuat untuk Microsoft. Kode -kode berikut diproses dalam heksadesimal untuk dikirim dan diterima.
var
senddata: array [1..10] dari char;
redata: array varian;
Sendstr: String;
restr: string;
I: Longint;
Mulai
MSCOMM1.Commport: = 1; // Tentukan port
MSCOMM1.Settings: = '9600, n, 8,1';
MSCOMM1.InbufferSize: = 1024; // menerima buffer
MSCOMM1.OUTBUFFERSIZE: = 1024; // Kirim buffer
MSCOMM1.InputMode: = ComInputModebinary;
MSCOMM1.Inputlen: = 0; // Baca semua data sekaligus
MSCOMM1.STHRESHOLD: = 0; // Kirim semua data sekaligus
mscomm1.inbuffercount: = 0; // Bersihkan buffer baca
MSCOMM1.OUTBUFFERCOUNT: = 0; // Bersihkan buffer Kirim
mscomm1.portopen: = true; // buka port
Mscomm1.rthreshold: = 16; // Tetapkan berapa banyak byte yang akan diterima untuk menghasilkan acara Oncomm
SendData [1]: = CHR ($ 06);
sendData [2]: = chr ($ 03);
SendData [3]: = CHR ($ 00);
SendData [4]: = CHR ($ 03);
SendData [5]: = CHR ($ 10);
sendstr: = '';
untuk i: = 1 sampai 5 lakukan
sendstr: = sendstr + sendData [i];
MSCOMM1.Output: = SendStr; // Kirim Data
I: = 0;
BZW: = false;
mengulang
tidur (10);
Application.ProcessMessages;
I: = i + 1;
Jika saya> 30000 maka
Mulai
Showmessage ('Kirim Timeout!');
merusak;
akhir;
Sampai BZW = Benar;
redata: = mscomm1.input;
restr: = '';
untuk i: = 0 ke vararrayhighbound (redata, 1) do
restr: = restr + inttHoHex (redata [i], 2) + '';
mscomm1.portopen: = false;
flatMemo1.text: = restr;
akhir;
// Acara Oncomm
Prosedur TFORM1.MSCOMM1COMM (pengirim: TOBJEKS);
Mulai
case mScomm1.Comment of
comevreceive: bzw: = true;
akhir;
akhir;
Akhirnya, saat merilis perangkat lunak, Anda harus membawa file MSCOMM32.OCX.