當資料量比較大時,為什麼虛擬串列埠能一次接收到整段資料,而實際

2021-04-21 04:01:40 字數 1544 閱讀 7064

1樓:匿名使用者

看你設定的緩衝區大小了,虛擬串列埠預設給你設定乙個適中的緩衝區,而實際串列埠要看你上位機軟體怎麼設定了

虛擬串列埠和真實串列埠有什麼區別嗎?如果我有乙個vc程式可以收發真實串列埠的資料,是不是對虛擬串列埠也適用呢

2樓:匿名使用者

對你的程式從bai

表述來說是沒有區別du的。但是如果使用

zhi真實串dao口,一般是需要在物理串列埠上鏈版接裝置或者其他權計算機來接收傳送資料;而虛擬串列埠應該是成對出現的,有另外乙個程式需要鏈結另外乙個虛擬串列埠來進行接收傳送資料。

在使用的時候確實是只需要在你的程式中修改串口號就可以實現。

特別需要注意的是如果是com1到com9的時候,使用的是_t("comx"),而如果超過了10,則需要使用_t(\\\\.\\com***)方式。

3樓:做而論道

樓主所說的虛擬串列埠,是你自己設計製作的嗎?

c# 串列埠如何一次性接收完資料?

4樓:匿名使用者

對串列埠而言,不存在完整資料長度,都是以byte為單位;一般來說,通常是回透過時間跟固定數量來進行答接收動作。(可能要看各pc的os或driver的設定情況)

通常在串列埠處理上,要確認接收資料完整,是在pc軟體上進行接收、儲存跟判斷的動作,在完整收到後,才進行顯示或處理。

5樓:匿名使用者

c#是使用流來bai處理串列埠

的,所以不du是存在準確zhi

的間隔時間dao的。串列埠驅動並不內

一定能及時引發datareceived事件。容而且串列埠的不確定性也不能用時間間隔作為資料的分隔。下位機應使用特定的通訊協議來傳送資料。

電腦則使用預設的每來乙個位元組觸發一次datareceived,但這個觸發時機也是不准的,不可能真的每來乙個位元組就會觸發一次datareceived。當收來下位機發來的起始字元就說明收數開始,可一直收到結束字元。使用串列埠一定要對資料進行crc校驗。

通常來這樣設計通訊協議:起始字元 資料 結束字元 crc校驗碼。校驗正確後就可對資料進行處理。

6樓:匿名使用者

com1.datareceived += new system.io.

ports.serialdatareceivedeventhandler(com1_datareceived1);(新增event handler)

微控制器copy一次發過來有多少你收多少

private delegate void settextdeleg(string text);

然後通過mutlithread來進行資料處理我的建議是 你也可以用乙個arraylist儲存起來建立乙個timer來檢查arraylist的count 當count不變後進行處理也行

最好是有明顯的結束訊號。

7樓:如此·虛偽

這個只能通過軟體對你串列埠資料報進行擷取分析。然後進行軟體除錯才能知道問題。可能是串列埠訊號問題。也可能是你截獲的時候沒有對訊號波段設定吧

為什麼黃昏時的太陽比較大個,太陽為什麼在黃昏的時候比平時大

糾正copy上面的說法。其實無論早上 傍晚 還是中午,太陽的大小都是一樣的這已經用照相機,點腦測試過了,看上去大一點只不過是參照物有沒有的問題罷了。早上 傍晚 我們是拿太陽和地平線上面的房屋 小山 樹木對比,而太陽公升起以後,我們是拿太陽和天空對比,因為天空比房屋 樹木要大得多,所以看起來太陽就顯得...

為什麼當氫離子的量濃度為1mol L時,溶液的pH

wex體驗設計 水的ph值是表示水中氫離子活度的負對數值,表示為 ph lg h 即溶液中氫離子濃度的負對數,當 h 1mol l時,lg1 0如果還沒學到對數的概念的話我大致給你講一下。lg是常用對數,也就是以10為底數的對數。我們已知10 100,10 1000,那麼lg100 2,lg1000...

新手駕駛員開車為什麼油耗會比較大

新手駕駛員開車油耗大可能是和駕駛習慣有一定的關係。如果你勻速行駛,對前方路況有很好的預判,盡量少踩剎車,用檔位和發動機的轉速來控制車速,那麼油耗也就高不了 去了。車輛油耗高還可能有以下幾個原因 胎壓不足。胎壓不足或者過低,會使輪胎與地面的磨擦增加,阻力變大,油耗就會上公升了。行駛路況。行駛路況很擁擠...