如何用MSCOMM控制元件檢測串口服務器緩沖區內的位元組已成功發送串口服務器,緩沖區滿后繼續寫入,緩沖區內之前寫入的位元組是否有效?
uj5u.com熱心網友回復:
OutBufferCount 屬性
回傳在傳輸緩沖區中等待的字符數。也可以用它來清除傳輸緩沖區。該屬性在設計時無效。
語法
object.OutBufferCount[ = value ]
OutBufferCount 屬性語法包括下列部分:
部分 描述
object 物件運算式,其值是“應用于”串列中的物件。
value 整型運算式,說明在傳輸緩沖區中等待的字符數。
說明
設定 OutBufferCount 屬性為 0 可以清除傳輸緩沖區。
注意 不要把 OutBufferCount 屬性與 OutBufferSize 屬性混淆,OutBufferSize 屬性回傳整個傳輸緩沖區的大小。
資料型別
Integer
OutBufferSize 屬性
以位元組的形式設定并回傳傳輸緩沖區的大小。
語法
object.OutBufferSize [ = value ]
OutBufferSize 屬性語法包括下列部分:
部分 描述
object 物件運算式,其值是“應用于”串列中的物件。
value 整型運算式,說明傳輸緩沖區的大小。
說明
OutBufferSize 指整個傳輸緩沖區的大小:預設值是 512 位元組。不要把該屬性與 OutBufferCount 屬性混淆,OutBufferCount 屬性回傳當前在傳輸緩沖區等待的位元組數。
注意 傳輸緩沖區設定的越大則應用程式可用記憶體越小。但若緩沖區太小,若不使用握手協議,就可能有溢位的危險。一般的規律是,首先設定一個 512 位元組的緩沖區。如果出現溢位錯誤,則通過增加緩沖區的大小來控制應用程式的傳輸速率。
資料型別
Integer
uj5u.com熱心網友回復:
只要發送端串口打開著,使用了MsComm控制元件的Output屬性,就會往傳輸緩沖區寫資料流,接收端是否打開著與發送端無關。
判斷串口服務器是否接收到需要通信雙方通信才能確定。接收方接收后回傳一個已接收的指令,這指令需通信雙方協議規約。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/55824.html
標籤:控件
