2016-10-11 16 views
1

這是我在StackOverflow上的第一個問題,我仍在學習英語。所以我懇求你的寬容。我應該使用Pyserial實現通過串口傳輸的數據的校驗和過程嗎?

我正在開發一個項目,我需要從使用Python(Pyserial庫)的USB串行端口接收數據。一個arduino通過串行電纜向我發送數據,然後從COM端口接收數據。

我目前正在實施一個基本的校驗和過程來驗證傳輸的數據到達完成。從arduino我添加我傳輸的數據的值,並設置爲校驗和字段,這也將傳輸。然後,在計算機上,我對數據執行相同的操作,並驗證總和等於校驗和字段的值。

我的問題是。我應該擔心這個還是那個任務已經由USB協議執行?

如果有人能給我一些參考,這將是對我很有幫助。

這是我當前如何計算校驗:

{ 
    s1: 425.2, 
    s2: 426.4, 
    s3: 78.2, 
    s4: 785.2, 
    chksum: 1715 
} 

回答

0

的USB不能解決串行數據。它只是一個bus,CPU用來與串口通訊。你想在Arduino和PC之間使用的協議添加一些校驗和是個好主意。

串行端口使用的一種非常常見的硬件協議是RS232。它包含一些對使用parity位進行錯誤檢測的支持。如果奇偶校驗位不正確,則接收到的字節將被丟棄。所以我認爲這對你來說不會有太大的幫助。

+0

非常感謝您的回答。我會牢記這一點。我不能投票,因爲我還沒有名譽。 –

相關問題