I first use the host computer to send data to the microcontroller. After the MCU receives the data, it sends it to the host computer and displays it. q: Why can't the upper computer receive the data sent by the single-chip microcomputer? How can I know that the upper computer has sent data to the single-chip computer. my SCM Program I have used the serial port assistant for debugging. Thank you.
Unit unit1;
Interface
Uses
Windows, messages, sysutils, variants, classes, graphics, controls, forms,
Dialogs, stdctrls, Spcomm;
Type
Tform1 = Class (tform)
Memo1: tmemo;
Button1: tbutton;
Button2: tbutton;
Button3: tbutton;
Button4: tbutton;
Button5: tbutton;
Combox1: tcombobox;
Label1: tlabel;
Button6: tbutton;
Comm1: tcomm;
Edit1: tedit;
Procedure button3click (Sender: tobject );
Procedure button2click (Sender: tobject );
Procedure button1click (Sender: tobject );
Procedure button4click (Sender: tobject );
Procedure comm1receivedata (Sender: tobject; Buffer: pointer; bufferlength: Word );
Private
{Private Declarations}
Public
{Public declarations}
End;
VaR
Form1: tform1;
Implementation
{$ R *. DFM}
Procedure tform1.comm1receivedata (Sender: tobject; Buffer: pointer; bufferlength: Word );
VaR
Data: string;
Begin // receives data
Setlength (data, bufferlength );
Move (buffer ^, pchar (data) ^, bufferlength );
Memo1.lines. Add (data );
Memo1.invalidate;
End;
Procedure tform1.button3click (Sender: tobject );
Begin
Form1.close;
End;
Procedure tform1.button2click (Sender: tobject );
Begin
Comm1.stopcomm;
Button1.enabled: = true;
End;
Procedure tform1.button1click (Sender: tobject );
Begin
Try
// Comm1.commname: = 'com' + inttostr (combobox1.itemindex); // select the port number
Comm1.commname = COM1;
Comm1.bau drate: = 9600;
Comm1.startcomm;
Button1.enabled: = false;
Button2.enabled: = true;
Button3.enabled: = true;
Button4.enabled: = true;
Button5.enabled: = true;
Except
Showmessage ('Open serial port error! ');
End;
End;
Procedure tform1.button4click (Sender: tobject );
VaR
STR: string;
Begin // send data
STR: = edit1.text;
Form1.comm1. writecommdata (pchar (STR), length (STR ));
End;
End.
Continue to read the full text of "PC program written with control Spcomm...