zoukankan      html  css  js  c++  java
  • s​p​c​o​m​m​属​性​详​解


    使用该组件一旦安装:
    {使用该组件的基本步骤:}
    1)将一到'OnReceiveData'事件处理程序。
    {1)添加'' OnReceiveData'事件。}
    2)呼叫'StartComm'来打开端口。
    {2)调用'StartComm'方法打开串口。}
    3)使用'WriteCommData'方法写入通讯端口。
    {3)使用'WriteCommData'方法向串口写入(发送)数据。}
    4)呼叫'StopComm'关闭该端口。
    {4)调用'StopComm'方法关闭串口}


    物业
    ========

    CommName:字符串

    该通讯端口的名称。 该通信端口被命名为'的COM1','COM2 ',...
    这个通讯端口必须打开它时存在。

    波特率:DWORD的

    此通讯端口波特率。 它必须是一个法律价值为您的
    串行端口可以接受。
    您可以更改此值时,通讯是开放的,
    真正的波特率是立即改变。

    ParityCheck:布尔

    指定是否启用奇偶校验。 如果这个成员是TRUE,
    奇偶校验和错误执行报告
    (对OnReceiveError处理)。
    您可以更改此值时,商业是开放的。

    Outx_CtsFlow:布尔

    是否CTS(清除到发送)指定的信号进行监控
    输出流量控制。 如果这个成员是TRUE和CTS是关闭的,
    输出被挂起,直到CTS是再次发送。
    CTS是输入引脚。 你可以阅读它从MSR寄存器的状态。 这
    通常连接到RTS管脚在另一端。
    它通常用于硬件流控制,指示其他
    如果最终被等待数据。
    您可以更改此值时,商业是开放的。

    CTS输入的|的另一端等待数据
    ------------+------------------------------------- ---
    输入OFF |另一端将不会收到任何资料

    Outx_DsrFlow:布尔

    是否指定的DSR(数据设置就绪)信号监控
    输出流量控制。 如果这个成员是TRUE和DSR是关闭的,
    输出被挂起,直到DSR是再次发送。
    DSR是一个输入引脚。 你可以阅读它从MSR寄存器的状态。 这
    通常连接到DTR引脚的另一端。
    它通常用于硬件流控制,指示其他
    到底是工作(活动,做好准备,等待数据...)
    您可以更改此值时,商业是开放的。

    DSR输入的|的另一端准备就绪,等待你的数据
    ------------+------------------------------------- ---------------
    输入OFF |另一端是没有准备好,我们不能发送数据输出

    DtrControl:(DtrEnable,DtrDiable,DtrHandshake)

    指定的DTR(数据终端就绪)流控制。 这个成员
    可以是以下值之一:

    值含义
    ------------- ------------------------------------- -----------------
    DtrDiable DTR线禁用该设备时
    开了,留下它禁用。
    DtrEnable DTR线启用该设备时
    开了,树叶它。
    DtrHandshake启用DTR握手。 当我们的通信端口被打开
    和接收数据就绪,DTR为启用。 当
    我们的通讯端口是暂停,关闭或有错误
    (而不是清除),DTR为禁用。
    如果握手启用,它是一个错误
    应用程序使用Win32调整行
    EscapeCommFunction功能。

    DTR是一个输出引脚。 您可以设置它在MCR寄存器状态。
    它通常连接到DSR路由针在另一端。
    您可以更改此值时,商业是开放的。

    DsrSensitivity:布尔;

    指定通讯驱动程序是否是敏感的
    国家对DSR信号。 如果这个成员是TRUE,则驱动程序忽略
    收到的字节,除非调制解调器的DSR输入线为高。
    您可以更改此值时,商业是开放的。

    真|忽略任何接收到的字节
    -------+------------------------------
    假|无

    TxContinueOnXoff:布尔;

    指定是否传输时停止输入缓冲区已满
    和司机已经转发了XoffChar字符。 如果这个成员
    为TRUE,传输后继续输入缓冲区内已经到来
    XoffLim字节被充分和驱动程序已经转发了
    XoffChar字符停止接收字节。 如果这个成员为FALSE,
    传输不继续下去,直到输入缓冲区内XonLim是
    被空和司机已经转发了XonChar字节
    人物恢复接待。
    您可以更改此值时,商业是开放的。

    真|启用或禁用transmisstion没有任何关系与
    |输入缓冲区
    -------+------------------------------------------ -------------------
    假|当XOFF是发送(输入缓冲区将满),停止传输。
    |和停止继续下去,直到被发送的Xon(输入缓冲区为空)。

    Outx_XonXoffFlow:布尔

    指定是否XON / XOFF流控制传输过程中使用。
    如果这个成员是TRUE,传输字符时停止XoffChar
    并开始接收时再XonChar字符接收。
    您可以更改此值时,商业是开放的。

    行动|收到的Xoff |收到的Xon
    --------+--------------------+-------------------- -------
    真|停止传输|恢复发送
    |丢弃的Xoff字符|丢弃的Xon字符
    --------+--------------------+-------------------- ----------
    假|阅读的Xoff字符|阅读中的Xon字符

    Inx_XonXoffFlow:布尔

    指定是否XON / XOFF流控制过程中使用的接待。
    如果这个成员是TRUE,则XoffChar字符发送时
    输入缓冲区内XoffLim字节来被充分,以及
    XonChar字符输入后,将发送缓冲区内XonLim来
    字节为空。
    您可以更改此值时,商业是开放的。

    |输入缓冲区内出现
    +-----------------------------+------------------- -----------
    动作| XoffLim字节被全部|被空XonLim字节
    --------+-----------------------------+----------- -------------------
    真|的Xoff字符发送|发送的Xon字符
    --------+-----------------------------+----------- -------------------
    假|做什么|什么也不做

    ReplaceWhenParityError:布尔

    是否与指定奇偶错误接收的字节被替换
    所指定的字符ReplacedChar成员。 如果这个成员是
    TRUE,而ParityCheck成员为TRUE,更换发生。
    您可以更改此值时,商业是开放的。

    IgnoreNullChar:布尔

    空字节指定是否被丢弃。 如果这个成员是TRUE,
    空字节被丢弃时收到。
    您可以更改此值时,商业是开放的。

    RtsControl:(RtsEnable,RtsDiable,RtsHandshake,TransmissionAvailableControl);

    指定的RTS(请求发送)流控制。 如果此值为零,则默认为RTS_CONTROL_HANDSHAKE。 这个成员可以是下列值之一:

    值含义
    ------------------ -------------------------------- -----------------
    RtsDiable禁用RTS线路时,该设备
    打开,就让它禁用。
    RtsEnable启用RTS线路时,该设备
    打开和树叶它。
    RtsHandshake启用转运站握手。 司机提高
    RTS信号线时,“预输入”(输入)缓冲区
    不到一个半满,降低了RTS线路
    当缓冲区超过四分之三满。
    如果握手启用,它是一个错误
    申请调整使用的行
    Win32的EscapeCommFunction功能。

    输入缓冲区|小于1 / 2全|超过3 / 4满
    --------------+--------------------+-------------- ------
    转运站|输出设置|输出清晰

    TransmissionAvailable
    该RTS线路将启用指定
    如果字节的传输可用。 后
    所有缓冲的字节被发送后,RTS线路
    将被禁用。

    输出缓冲器|有可用字节|没有任何数据
    ---------------+---------------------+------------ -----
    转运站|输出设置|输出清晰

    转运站是一个输出引脚。 您可以设置它在MCR寄存器状态。
    它通常连接到CTS管脚在另一端。
    您可以更改此值时,商业是开放的。

    XonLimit:字

    指定允许的最小字节数在输入缓冲区
    前XON字符发送。
    您可以更改此值时,商业是开放的。

    例如:
    的输入缓冲区的大小是1000字节,XonLimit是100。
    和XOFF字符已发送之前。
    当在输入缓冲区中的字节从101到100,是XON字符
    发送。

    XoffLimit:字

    指定允许的最大字节数在输入缓冲区
    前XOFF字符发送。 最大字节数
    这是减去允许的大小值计算,
    以字节为单位输入缓冲区。
    您可以更改此值时,商业是开放的。

    例如:
    的输入缓冲区的大小是1000字节,XonLimit是100。
    当在输入缓冲区字节从899到900人的Xoff字符
    发送。

    ByteSize:(_5,_6,_7,_8)

    在指定的字节数位传输和接收。
    您可以更改此值时,商业是开放的。

    奇偶:(无,奇,偶,马克,空间)

    指定要使用同等方案。 这个成员可以是一
    以下值:

    值含义
    ------- ---------------------
    无无校验
    奇怪的逻辑琛'1'位(数据位和校验位)为奇数
    即使是逻辑'1'位(数据位和校验位)之和是偶数
    面膜校验位总是逻辑'1'
    空间校验位总是逻辑0

    您可以更改此值时,商业是开放的。


    StopBits:(_1,_1_5,_2)

    指定的停止位数使用。
    您可以更改此值时,商业是开放的。

    XonChar:属于ANSIChar

    指定XON字符为传播价值和
    接待。
    您可以更改此值时,商业是开放的。

    XoffChar:属于ANSIChar

    指定为传送XOFF字符值和
    接待。
    您可以更改此值时,商业是开放的。

    ReplacedChar:属于ANSIChar

    指定的字符的值,用来代替接收字节
    有奇偶校验错误,当ReplaceWhenParityError成员是TRUE,并且
    ParityCheck成员为TRUE。
    您可以更改此值时,商业是开放的。

    手柄:THandle <read-only>

    在Comm文件句柄。 从'的CreateFile'函数获得在'StartComm'。
    你可以使用另一个API操作它的Win32商科

    SendDataEmpty:布尔<run-time&read-only>

    真当发送缓冲区是空的,没有任何悬而未决需要在发送邮件
    队列。 假如果发送缓冲区不为空或有需要在发送邮件
    队列。

    方法
    ======

    程序StartComm

    开始为这个通讯端口的通信。
    如果失败,提高ECommsError例外,ECommsError.Message包含
    下面的字符串:
    '这个串行端口已经打开,
    '错误打开串口:
    '文件句柄不是一个通讯句柄'
    '无法安装通讯缓冲器
    '无法创建事件'
    '无法创建读线程
    '无法创建写线程

    程序StopComm

    停止并结束这个通讯端口的所有通信线程。
    没有任何回报。

    功能WriteCommData(pDataToWrite:PChar类型;
    dwSizeofDataToWrite:字):布尔

    发送一个字符串到写线程写入通讯。
    这个子程序将立即返回。 发送操作将
    做背景。
    参数:
    pszStringToWrite - 字符串写入通讯端口。
    nSizeofStringToWrite - 对pszStringToWrite长度。
    回报:
    TRUE:如果写线程的PostMessage是成功的。
    FALSE:如果PostMessage失败或写线程不存在。

    功能GetModemState:DWORD的;

    获取并返回现在的现代国家。 它们是现代国家
    输入引脚从海洋科学研究。
    返回值可以是一个或更多的以下代码:

    值含义
    ---------- ---------------------------------------- -------------------
    MS_CTS_ON的CTS(明确的发送)信号上。
    MS_DSR_ON的DSR(数据设置就绪)信号上。
    MS_RING_ON环信号指示灯亮。
    MS_RLSD_ON的资料摘要(接收线路信号检测)信号亮起。

    该函数失败,如果硬件不支持
    控制寄存器的值。

    事件处理程序
    =============

    OnReceiveData:程序(发件人:TObject;
    缓冲区:指针;
    进行缓冲:字)物体


    1。 输入缓冲区中包含接收到的数据和
    2。 超过限额的大小或
    3。 读取超时
    事件处理程序被调用
    发件人:指向TComm对象提出这个要求
    缓冲区:缓冲区,包含收到的数据
    进行缓冲:接收数据缓冲区的大小

    OnReceiveError:程序(发件人:TObject; EventMask:DWORD的)物体

    当错误happend在接收,事件处理程序被调用。
    发件人:指向TComm对象提出这个要求
    EventMask:从ClearCommError获得的价值在'HandleCommEvent'
    一个32位变量,充满了说明面具
    类型的错误。 这个参数可以是一个或多个
    以下错误代码:

    值含义
    ---------- ---------------------------------------- -------------------
    CE_BREAK硬件检测到一个中断条件。 (现在不支持)
    CE_DNS视窗95只:并行设备没有被选中。
    CE_FRAME硬件检测到帧错误。
    CE_IOE一个I / O错误发生在与设备通信。
    CE_MODE所请求的模式是不支持,或hFile参数
    是无效的。 如果这个值被指定,它是唯一
    有效的错误。
    CE_OOP视窗95只:并行设备出来的信号,这是
    纸。
    CE_OVERRUN一个字符缓冲区溢出发生。 下一个字符
    丢失。
    CE_PTO视窗95只:甲超时发生在一个平行的设备。
    CE_RXOVER输入缓冲区溢出。 有或者没有
    房间在输入缓冲区,或字符后收到
    结尾的文件(EOF)字符。
    (第二个条件是不可能发生的Win32下)
    CE_RXPARITY硬件检测到奇偶错误。 (不支持)
    CE_TXFULL的应用程序试图发送一个字符,但
    输出缓冲区已满。 (不支持)


    OnRequestHangup:程序(发件人:TObject)物体;

    当程序异常终止,该事件处理程序
    调用。

    OnModemStateChange:程序(发件人:TObject; ModemEvent:DWORD的)物体

    当调制解调器的资料摘要(CD)的变化状态(高“ - ”低)或环指标
    信号检测,此事件处理程序
    调用。
    发件人:指向TComm对象提出这个要求
    ModemEvent:一个32位变量,充满了一种指示面具
    是什么使这一呼吁。 这个参数可以是一个或多个
    下面的代码:

    值含义
    ---------- ---------------------------------------- -------------------
    ME_CTS的CTS(明确的发送)信号改变状态。
    (支持在未来,不支持现在)
    ME_DSR的DSR(数据设置就绪)信号改变状态。
    (支持在未来,不支持现在)
    ME_RING环指示信号检测。
    ME_RLSD的资料摘要(接收线路信号检测)信号改变
    状态。

    呼叫GetModemState方法获取现代国家的真实情况。

    合法性
    ==========

    此组件是完全免费的(连同源代码)。

  • 相关阅读:
    图片展示和上传需要注意的问题
    大数据技能学习
    C#100万条数据导入SQL SERVER数据库仅用4秒 (附源码)
    领导力
    .NetCore 三种生命周期注入方式
    Redis常见面试题
    .NET Core开发日志——Middleware
    编程的灵魂
    递推算法
    分治算法
  • 原文地址:https://www.cnblogs.com/Values/p/3668276.html
Copyright © 2011-2022 走看看