線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2312
推到 Plurk!
推到 Facebook!

TCP/IP與RS232同時送出資料時,rs232資料LOSE

尚未結案
wu-eric
中階會員


發表:14
回覆:82
積分:64
註冊:2004-03-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-01 17:26:21 IP:210.66.xxx.xxx 未訂閱
請教各位大大: 不知各位大大是否曾經試過TCP/IP與RS232同時送出資料時 rs232資料LOSE,是否有可決解之道
ray24
中階會員


發表:18
回覆:88
積分:56
註冊:2002-07-24

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-01 18:06:12 IP:220.135.xxx.xxx 未訂閱
TCP/IP與RS232同時送出資料<----不太懂你的意思耶 ..真不好意思 > ---------------------- 台上一分鐘,台下十年功
------
台上一分鐘,台下十年功
wu-eric
中階會員


發表:14
回覆:82
積分:64
註冊:2004-03-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-10-02 18:32:14 IP:210.66.xxx.xxx 未訂閱
不好意思,重新描述此主題 當RS-232連續送出0001-1000 若在送出100的同時,從硬碟送出一個大檔案至Server 此時RS-232送出的資料會有Lose的現象,如 100,101,102,104,105,107.... RS-232甚至中斷無法送出
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-10-02 21:17:13 IP:221.169.xxx.xxx 未訂閱
引言: 不好意思,重新描述此主題 當RS-232連續送出0001-1000 若在送出100的同時,從硬碟送出一個大檔案至Server 此時RS-232送出的資料會有Lose的現象,如 100,101,102,104,105,107.... RS-232甚至中斷無法送出
wu-eric:有用Thread多執行緒處理RS-232及硬碟送出一個大檔案至Server (不知你使用何種方式?)?建議你走這方式。 請參考! Andy Chang
------
Andy Chang
wu-eric
中階會員


發表:14
回覆:82
積分:64
註冊:2004-03-17

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-10-02 22:33:38 IP:210.66.xxx.xxx 未訂閱
wu-eric:有用Thread多執行緒處理RS-232及硬碟送出一個大檔案至Server (不知你使用何種方式?)?建議你走這方式。 請參考! ------------------------------------------------------------------- rs232是我的程式送出的, 檔案是用檔案總管送出的
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-10-02 23:13:06 IP:221.169.xxx.xxx 未訂閱
引言: rs232是我的程式送出的, 檔案是用檔案總管送出的
wu-eric: rs232是我的程式送出的, 我的意思是不是走Thread多執行緒方式。 檔案是用檔案總管送出的 不懂這意思!檔案總管可以送出檔案,你的意思是指移至,複製還是其他? Andy Chang
------
Andy Chang
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-10-03 22:45:34 IP:61.64.xxx.xxx 未訂閱
此 問題應該類似LED圖形送RS232至8051單晶片    http://delphi.ktop.com.tw/topic.php?topic_id=51510 http://www.dainau.com/phpBB2/viewtopic.php?t=1286&sid=0b2b760c579fbcdda19452a780dba66f     這樣不就ok了 問的有點奇怪 rs232是我的程式送出的, 檔案是用檔案總管送出的 如果檔案總管可以 那何必使用RS232 這種老掉牙的裝置 使用RS232是因為很多嵌入式設備 99% 的單晶片只發展這不成文的通用協定 RS232 穩定方便卻有距離問題 在單晶片上這樣的接收 已十分成熟 除了各家的協定不同 造成困擾 了解原理就不困擾 但就得憑經驗記錄比對 上述是沒原廠協定才如何解之
wu-eric
中階會員


發表:14
回覆:82
積分:64
註冊:2004-03-17

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-10-04 12:17:48 IP:210.66.xxx.xxx 未訂閱
對不起,可能我還是把問題描述的不夠清楚 EX: 我的程式透過rs-232傳送資料到印表機的同時 若有用檔案總管從網路SERVER上下傳大量資料, 則印表機所列印出的資料會有lose,甚至無法繼續列印 我是希望是否可讓網路傳送大量資料的同時,也可以正常印出資料
shpeng
初階會員


發表:6
回覆:67
積分:49
註冊:2002-12-21

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-10-04 12:44:56 IP:220.130.xxx.xxx 未訂閱
試試看 將 RS-232 的 流量控制 改為 硬體控制 一般有 無. Xon/Xoff .硬體 三種 RS-232 的定義 1 CD 2 RXD 接收外部資料 3 TXD 傳送資料出去 4 DTR DTE Ready 5 GND 信號地 6 DSR DCE Ready 7 RTS Request to Send 8 CTS Clear to Send 9 RI Ring Indicator 希望有幫助... ==取之於斯,用之於斯==
------
==取之於斯,用之於斯==
wu-eric
中階會員


發表:14
回覆:82
積分:64
註冊:2004-03-17

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-10-05 11:57:10 IP:210.66.xxx.xxx 未訂閱
試試看 將 RS-232 的 流量控制 改為 硬體控制 一般有 無. Xon/Xoff .硬體 三種 RS-232 的定義 1 CD 2 RXD 接收外部資料 3 TXD 傳送資料出去 4 DTR DTE Ready 5 GND 信號地 6 DSR DCE Ready 7 RTS Request to Send 8 CTS Clear to Send 9 RI Ring Indicator ---------------------------------- Xon / Xoff 是否也需要週邊硬體的支援 例如印表機也有 Xon / Xoff 還有若有支援,程式要如何寫,有沒有範例
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-10-05 12:49:41 IP:221.169.xxx.xxx 未訂閱
wu-eric:即然使用RS-232列表機,那你可以將列表機設定->進階 改為直接列印到列表機試試! 請參考! Andy Chang
------
Andy Chang
shpeng
初階會員


發表:6
回覆:67
積分:49
註冊:2002-12-21

發送簡訊給我
#12 引用回覆 回覆 發表時間:2004-10-05 13:14:54 IP:220.130.xxx.xxx 未訂閱
我是用MSCOMM32.OCX 物件 屬性 Handshaking 選 [2 - comRTS] 即採 電路訊號交握模式 一般傳送資料若無 CRC或CheckSum檢查 會採用 RTS電路交握 模式 例如 工業控制用PLC 或 人機介面 ==取之於斯,用之於斯==
------
==取之於斯,用之於斯==
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#13 引用回覆 回覆 發表時間:2004-10-05 17:27:35 IP:221.169.xxx.xxx 未訂閱
你用的rs232有沒有做硬體或軟體流量控制?這是一個方向。 另外,你用的232是電腦實體的232還是USB轉232那種東東的232呢? 如果是這種232,建議你換一家的試看看。也許是它的Bug. ^_^
jimmy_and_you
初階會員


發表:20
回覆:74
積分:33
註冊:2003-05-12

發送簡訊給我
#14 引用回覆 回覆 發表時間:2004-10-05 17:33:39 IP:61.70.xxx.xxx 未訂閱
在這裡給個建議...我猜想會不會當你從SERVER COPY大量資料的同時,系統處於非常忙碌的狀態,使得你程式使用到的CPU資源相對少粉多,導致前一筆資料還沒送完(還在BUFFER內),你又送了一筆資料把他蓋掉,解決方法我有想到2個 1.每次送之前,CHECK錢一比是正確送出(或是檢查BUFFER是否上有資料未送出) 2.提高程式的執行優先權 以上是小地的想法及建議,若有錯誤請指正..謝謝
wu-eric
中階會員


發表:14
回覆:82
積分:64
註冊:2004-03-17

發送簡訊給我
#15 引用回覆 回覆 發表時間:2004-10-05 18:46:12 IP:210.66.xxx.xxx 未訂閱
我是用MSCOMM32.OCX 物件 屬性 Handshaking 選 [2 - comRTS] 即採 電路訊號交握模式 一般傳送資料若無 CRC或CheckSum檢查 會採用 RTS電路交握 模式 例如 工業控制用PLC 或 人機介面 ----------------------------- 在這裡給個建議...我猜想會不會當你從SERVER COPY大量資料的同時,系統處於非常忙碌的狀態,使得你程式使用到的CPU資源相對少粉多,導致前一筆資料還沒送完(還在BUFFER內),你又送了一筆資料把他蓋掉,解決方法我有想到2個 1.每次送之前,CHECK錢一比是正確送出(或是檢查BUFFER是否上有資料未送出) 2.提高程式的執行優先權 ------------------------------------------- 演生問題 1. 為何我的 Handshaking 屬性只能設為 0 or 1 2. 如何檢查前一筆資料是否有正確送出 3. 如何提高程式的執行優先權
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#16 引用回覆 回覆 發表時間:2004-10-05 19:15:00 IP:221.169.xxx.xxx 未訂閱
你還沒回我是用那一種 232 勒。 如果你的問題是發生在硬體的232上。你在軟體找死也找不到答案。 最近就在處理一個韌體跟驅動程式不合的案子。
系統時間:2024-04-20 5:30:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!