COMM32.PAS
==========
Version 1.00
Comm32.pas is a simple Communications VC for Borland Delphi 2.0 which
demonstrates the Win32 Communications functions and the new Delphi
'TThread' class. It is implemented using two threads: one for reading
from, and one for writing to a Comm Port.
It probably needs to be implemented as a single thread for read/write
operations if it is needed for any synchronisation functions (such as
file-transfer algorithms).
I started to create a 'TAPI' component to use in conjunction with this
component (hence the 'OnRequestHangup' property) but as of this version
it is incomplete.
Version 1.02 - by small-pig team
1. Add Read/Write timing control
2. Add Data bits, Parity, Stop bits properties
3. Support software and hardware flow control: DTR/DSR, CTS/CTS, XON/XOFF
4. Add 'Sender' parameter in OnReceiveData
Version 2.0 - - by small-pig team
1. Support separatly DTR/DSR and RTS/CTS hardware flow control setting
2. Support separatly OutX and InX software flow control setting
3. Log file(for debug) may used by many comms at the same time
4. Add DSR sensitivity property
5. You can set the error char. replacement when parity error
6. Let XonLim/XoffLim and XonChar/XoffChar setting by yourself
7. You may change flow-control when comm is still opened
8. Change TComm32 to TComm
9. Add OnReceiveError event handler when overrun, framing error,
parity error
10. Fix some bug
Version 2.01 - - by small-pig team
1. Support some property about modem.
2. Add OnModemStateChange event hander when RLSD(CD) change state
Version 2.02 - - by small-pig team
1. Bug fix: When receive XOFF character, the system FAULT!!!!
2. Remove CommFileLog property
SPCOMM.PAS
==========
Version 2.5
1. Add OnSendDataEmpty event handler when all data in buffer
are sent(send-buffer become empty) this handler is called.
You may call send data here.
2. Change the ModemState parameters in OnModemStateChange
to ModemEvent to indicate what modem event make this call
3. Add RING signal detect. When RLSD changed state or
RING signal was detected, OnModemStateChange handler is called
4. Change XonLim and XoffLim from 100 to 500
5. Remove TWriteThread.WriteData member
6. PostHangupCall is re-design for debuging function
7. Add a boolean property SendDataEmpty, True when send buffer
is empty
USAGE
=====
To use the component once it is installed:
1) Attach an event handler to 'OnReceiveData'.
2) Call 'StartComm' to open the port.
3) Use the 'WriteCommData' method to write to the Comm port.
4) Call 'StopComm' to close the port.
PROPERTY
========
CommName : String
The name of comm port. The comm port is named 'COM1', 'COM2',...
This comm port must exist when you open it.
BaudRate : DWORD
The baud rate for this comm port. It must be a legal value for your
serial port can accept it.
You can change this value when the comm is open and
the real baud rate is changed immediately.
ParityCheck : Boolean
Specifies whether parity checking is enabled. If this member is TRUE,
parity checking is performed and errors are reported
(to OnReceiveError handler).
You can change this value when the comm is open.
Outx_CtsFlow : Boolean
Specifies whether the CTS (clear-to-send) signal is monitored
for output flow control. If this member is TRUE and CTS is turned off,
output is suspended until CTS is sent again.
CTS is a input pin. You can read its state from MSR register. It
usually connect to RTS pin in the other end.
It is often used for hardware flow control to indicate that the other
end if being waiting for data.
You can change this value when the comm is open.
CTS Input on | the other end is waiting for data
------------+----------------------------------------
Input off | the other end will NOT receive any data
Outx_DsrFlow : Boolean
Specifies whether the DSR (data-set-ready) signal is monitored for
output flow control. If this member is TRUE and DSR is turned off,
output is suspended until DSR is sent again.
DSR is a input pin. You can read its state from MSR register. It
usually connect to DTR pin in the other end.
It is often used for hardware flow control to indicate that the other
end is working(active, ready, wait for data...)
You can change this value when the comm is open.
DSR Input on | the other end is ready, and wait for your data
------------+----------------------------------------------------
Input off | the other end is not ready, we cannot send data out
DtrControl : ( DtrEnable, DtrDiable, DtrHandshake )
Specifies the DTR (data-terminal-ready) flow control. This member
can be one of the following values:
Value Meaning
------------- ------------------------------------------------------
DtrDiable Disables the DTR line when the device is
opened and leaves it disabled.
DtrEnable Enables the DTR line when the device is
opened and leaves it on.
DtrHandshake Enables DTR handshaking. When our comm port is opened
and ready for receiving data, DTR is enabled. When
our comm port is suspend, closed or has error
(and not cleared), DTR is disable.
If handshaking is enabled, it is an error for the
application to adjust the line by using the Win32
EscapeCommFunction function.
DTR is a output pin. You can set its state in MCR register.
It usually connect to DSR pin in the other end.
You can change this value when the comm is open.
DsrSensitivity : Boolean;
Specifies whether the communications driver is sensitive to the
state of the DSR signal. If this member is TRUE, the driver ignores
any bytes received, unless the DSR modem input line is high.
You can change this value when the comm is open.
TRUE | ignore any received byte
-------+------------------------------
FALSE | nothing
TxContinueOnXoff : Boolean;
Specifies whether transmission stops when the input buffer is full
and the driver has transmitted the XoffChar character. If this member
is TRUE, transmission continues after the input buffer has come within
XoffLim bytes of being full and the driver has transmitted the
XoffChar character to stop receiving bytes. If this member is FALSE,
transmission does not continue until the input buffer is within XonLim
bytes of being empty and the driver has transmitted the XonChar
character to resume reception.
You can change this value when the comm is open.
TRUE | enable or disable transmisstion has no any relation with
| input buffer
-------+-------------------------------------------------------------
FALSE | When Xoff is send(input buffer will be full),stop transmission.
| And stop continue until Xon is send(input buffer will empty).
Outx_XonXoffFlow : Boolean
Specifies whether XON/XOFF flow control is used during transmission.
If this member is TRUE, transmission stops when the XoffChar character
is received and starts again when the XonChar character is received.
You can change this value when the comm is open.
Action | Xoff received | Xon received
--------+--------------------+---------------------------
TRUE | stop transmission | resume t
没有合适的资源?快使用搜索试试~ 我知道了~
Delphi学习经典例程80例
共788个文件
jpg:99个
pas:97个
dfm:90个
5星 · 超过95%的资源 需积分: 10 22 下载量 159 浏览量
2012-10-17
12:43:12
上传
评论 1
收藏 33.9MB RAR 举报
温馨提示
Delphi学习经典例程80例,初学者最好的资料。
资源推荐
资源详情
资源评论
收起资源包目录
Delphi学习经典例程80例 (788个子文件)
world.apr 112KB
country.avl 96KB
cntry92.avl 55KB
latlong.avl 1KB
drainage.avl 1KB
rivers.avl 1KB
geogrid.avl 1KB
cities.avl 1KB
world30.avl 841B
lakes.avl 813B
1.bmp 786KB
Video.bmp 759KB
bmp6.bmp 588KB
bmp5.bmp 587KB
bmp4.bmp 587KB
bmp2.bmp 586KB
bmp3.bmp 586KB
bmp1.bmp 585KB
1.bmp 556KB
2.bmp 479KB
1.bmp 475KB
base.bmp 401KB
1.bmp 392KB
2.bmp 283KB
girl.bmp 273KB
3.bmp 244KB
3.bmp 223KB
1.bmp 223KB
background.bmp 192KB
2.bmp 157KB
4.bmp 154KB
4.bmp 146KB
3.bmp 136KB
2.bmp 136KB
1.bmp 124KB
2.bmp 119KB
3.bmp 108KB
1.BMP 99KB
2.bmp 90KB
3.bmp 59KB
2.bmp 27KB
StopButton.bmp 3KB
PlayButton.bmp 3KB
VCRSTOP.BMP 374B
VCRPLAY.BMP 374B
ProjectGroup1.bpg 811B
Project1.cfg 742B
Server.cfg 742B
Client.cfg 742B
Update.cfg 646B
Project1.cfg 646B
Project1.cfg 646B
demo.cfg 646B
Project1.cfg 646B
NtMsg.cfg 598B
basicElectric.cfg 482B
Project1.cfg 434B
Project1.cfg 434B
Project1.cfg 434B
Project1.cfg 434B
Project1.cfg 434B
Project1.cfg 434B
Project1.cfg 434B
Project1.cfg 434B
Project1.cfg 434B
Project1.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
Project2.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
Project2.cfg 406B
IWProject.cfg 406B
Project2.cfg 406B
Project1.cfg 406B
Project2.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
Project2.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
Saolei.cfg 406B
Hitrat.cfg 406B
Project2.cfg 406B
Project1.cfg 406B
Project2.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
Project2.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
IWProject.cfg 406B
Project1.cfg 406B
Project2.cfg 406B
Project1.cfg 406B
Project1.cfg 406B
Project1.cfg 386B
共 788 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8
smrynet
- 粉丝: 2
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页