9. Serielle Kommunikation RS-232
Borland C + + Builder enthält keine Aufgabe oder Steuerung für RS232-Kommunikation, so dass Sie auf fremde Ressourcen, um diese Funktion ausführen zu finden. Serielle RS232-Kommunikation kann der Generator implementiert werden in vielen verschiedenen und Zugänge können Sie die Windows-APIs (hart arbeiten Komplex), Basic können Sie den Visual ActiveX Mscomm32.ocx oder für Sie entwickelt einen Controller C + +. In unserem Fall verwenden wir eine kleine Kontrolle Chen Victor Freeware entwickelt von.
Borland C + + Builder-Komponenten Serial Port
Methoden:
Leere Open (); Offene Kommunikation Hafen
void close (); schließen Kommunikationsanschluss
bool Enabled (); Staat Communications Port
int Write (char buf [], DWORD Graf); Write Output Buffer
int Read (char buf [], DWORD Graf); Lesen Sie den Eingangspuffer
InQueCount int (); Zahl oder Bytes im Eingangspuffer, -1 = Port geschlossen
OutQueCount int (); Zahl oder Bytes im Ausgabepuffer, -1 = Port geschlossen
PurgeIn void (); Sauberkeit Input Buffer
PurgeOut void (); Sauberkeit Ausgangspuffer
/ / Funktionen} {Comm Flucht
SetDTRState void (bool Staates);
SetRTSState void (bool Staates);
SetBREAKState void (bool Staates);
SetXONState void (bool Staates);
UpdateDataControlBlock void ();
TComm Eigenschaften
Baudrate (Baudrate)
br110, BR300, br600, BR1200, br2400, br4800, br9600, br14400, br19200, br38400, br56000, br57600, br115200, br128000, br256000
Datenbits (Datenbits)
da4, Da5, DA6, Da7, DA8,
DeviceName (Kommunikations-Port Name)
COM1, COM2 ...
EventChars
FlowControl (Flow Control)
fcNone, fcCTS, fcDTR, fcSoftware, fcDefault
MonitorEvents (Monitoring Ereignisse)
Optionen
coParityCheck, coDsrSensitivity, coIgnoreXOff, coErrorChar, coNullStrip
Parität (Parity)
Panon, paOdd, paEven, paMark, PASPAC
ReadBufSize (lesen Puffergröße)
4096
ReadTimeout
1000
StopBits (Stop Bits)
SB10, SB 15, SB20
SuspendTime
5
WriteBufSize (Schreib-Puffer-Größe)
2048
WriteTimeout (Timeout im Skript)
1000

TComm Kontrolle Eigenschaften der RS-232
Veranstaltungen
/ / OnBreak
void __fastcall TForm1:: Comm1Break (TObject * Sender) {
}
/ / OnComStatEvent
void __fastcall TForm1:: Comm1ComStatEvent (TObject * Sender, DWORD Status, Comstat Comstat) {
}
/ / OnCts
void __fastcall TForm1:: Comm1Cts (TObject * Sender) {
}
/ / OnDsr
void __fastcall TForm1:: Comm1Dsr (TObject * Sender) {
}
/ / OnRing
void __fastcall TForm1:: Comm1Ring (TObject * Sender) {
}
/ / OnRlsd
void __fastcall TForm1:: Comm1Rlsd (TObject * Sender) {
}
/ / OnError
void __fastcall TForm1:: Comm1Error (TObject * Sender, int Fehler) {
}
/ / OnRxChar
void __fastcall TForm1:: Comm1RxChar (TObject * Sender, DWORD Graf) {
}
/ / OnRxFlag;
void __fastcall TForm1:: Comm1RxFlag (TObject * Sender) {
}
/ / OnTxEmpty;
void __fastcall TForm1:: Comm1TxEmpty (TObject * Sender) {
}
Indikatoren:
bool Connected = {read = FConnected};
/ / Status-Flags} {Comm
CTS bool = {index = 1, lesen = GetModemState};
bool DSR = {index = 2, read = GetModemState};
RING bool = {index = 3, read = GetModemState};
RLSD bool = {index = 4, read = GetModemState};
CtsHold bool = {index = 1, lesen = GetComState};
DsrHold bool = {index = 2, read = GetComState};
RlsdHold bool = {index = 3, read = GetComState};
XOffHold bool = {index = 4, read = GetComState};
XOffSent bool = {index = 5, read = GetComState};
__property HANDLE Handle = {read = fhandle};

Veranstaltungen TComm Steuerung RS-232