2015-08-19 179 views
0

我想與醫療分析儀通信併發送一些消息給它。但分析器在消息末尾請求控制字符或校驗和以驗證它。visual basic中的校驗和計算

你會原諒我有限的英語知識,但根據手冊,這裏是如何計算校驗和:

控制字符是排斥邏輯和(異或),以字符爲單位,從文本的開始到文本的結尾,由1個字節的二進制組成。而且,由於該控制字符以十六進制變爲00〜7F的值,因此請不要誤認爲用於傳輸的控制代碼。

那麼請你能告訴我如何根據這些信息得到這個控制字符。由於英文水平有限,我不太清楚寫什麼。

我使用的Visual Basic編程

感謝

回答

0

該手冊是不是很好的英語兩種。我的理解:

您將發送到設備的消息可以表示爲一個字節數組。你想把每一個字節XOR在一起,這會給你留下一個字節的校驗和,並添加到消息的最後。 (字節1異或字節2異或字節3異或....)

「更多」後面的所有內容都會顯示「如果您正在讀取設備,最終字符是校驗和,而不是命令,所以不要把它當作一個命令,即使它看起來像一個。「您正在寫入設備,因此您可以忽略該部分。

要XOR(記住我不知道VB):

有一個校驗和變量,在消息的每個字節設置爲0環,並與字節XOR校驗和變量。將結果存回校驗和。

+0

我們是否需要在一個命令行中對所有字節數組進行異或運算?如果是這樣,你有一個想法如何做到這一點?因爲我們事先不知道字符串的確切長度。 – Rachid

+0

增加了該位的更多細節。 – user3757614

+0

你的建議很好。它的作品非常好:) – Rachid