全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:4057
推到 Plurk!
推到 Facebook!

SPComm問題,Mask: RLSD ERR RING + Purge: TXABORT RXABORT TXCLEAR RXCLEAR

缺席
jackiemi2_seed
中階會員


發表:37
回覆:97
積分:76
註冊:2006-09-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2013-08-06 17:20:43 IP:203.69.xxx.xxx 訂閱
要改寫原廠程式(無原廠source code)
用原廠傳輸線去作測試
用AccessPort軟體,監控rs232的通訊協定和傳輸內容
原廠程式通訊協定如下:
InSize: 4096, OutSize: 4096
ReadIntervalTimeout: 200, ReadTotalTimeoutMultiplier: 100, ReadTotalTimeoutConstant: 500, WriteTotalTimeoutMultiplier: 100, WriteTotalTimeoutConstant: 1000
Baud Rate: 9600
StopBits: 1, Parity: No, DataBits: 8
EofChar: 0x0, ErrorChar: 0x0, BreakChar: 0x0, EventChar: 0x0, XonChar: 0x11, XoffChar: 0x13
ControlHandShake: 0x1, FlowReplace: 0x80000040, XonLimit: 0, XoffLimit: 8192

自己寫的程式通訊協定如下:
InSize: 4096, OutSize: 4096
Mask: RLSD ERR RING

請問一下,如何把 Mask: RLSD ERR RING 和 Purge: TXABORT RXABORT TXCLEAR RXCLEAR 弄不見???
3Q
------
OS : Win 7 pro
Program : Delphi 7
DataBase : Ms Sql 2008
jackiemi2_seed
中階會員


發表:37
回覆:97
積分:76
註冊:2006-09-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2013-08-19 14:14:10 IP:203.69.xxx.xxx 訂閱
再一次自問自答
Purge: TXABORT RXABORT TXCLEAR RXCLEAR

在元件程式spcomm.pas裡的TComm.StartComm;
有加上
PurgeComm( hCommFile, PURGE_TXABORT or PURGE_RXABORT or PURGE_TXCLEAR or PURGE_RXCLEAR ) ;
這只是作清除的動作,不影響程式

Mask: RLSD ERR RING

在元件程式spcomm.pas裡的TReadThread.Execute
if not SetCommMask(hCommFile, EV_ERR or EV_RLSD or EV_RING ) then
begin
PostHangupCall;
goto EndReadThread
end;
把EV_ERR or EV_RLSD or EV_RING拿掉,Mask就不見了
------
OS : Win 7 pro
Program : Delphi 7
DataBase : Ms Sql 2008
系統時間:2024-04-25 16:03:00
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!